I would like to create a custom theme and allow the administrator to select for each block on the page (in each block's configuration page) the way in which the block will be rendered (there will be 2 or more types of options for these) and also a color theme to use for rendering the look of the block.
I don't want the configure all the block at one, but each block in particular. Eg: on a page I will have 1 block displayed with (type1, color1), 1 with (type1, color2) and 1 with type2.
How would you suggest I implement this? Should I use hook_block_configure and hook_block_save? And also where should I save this information in block_save as it is block instance specific information, should I create another table in the DB or can I save it anywhere within the existing block tables?
Should I include this configuration in the theme directly or create a custom module that includes this functionality?