/[drupal]/contributions/modules/color_soc08/README.txt
ViewVC logotype

Contents of /contributions/modules/color_soc08/README.txt

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.25 - (show annotations) (download)
Fri Aug 22 10:21:56 2008 UTC (15 months, 1 week ago) by skiquel
Branch: MAIN
CVS Tags: HEAD
Changes since 1.24: +100 -42 lines
File MIME type: text/plain
head commit
1 /* $Id: README.txt,v 1.15.2.9 2008/08/22 09:57:31 skiquel Exp $ */
2
3 TOC -- Table of Contents
4 ========================
5 1.) Color.module '08
6 2.) Known issues / Todo
7 3.) Ideas / Possible features
8 4.) Documentation
9 4d.) Installation and usage
10 5.) Change log
11
12
13 1) Color.module '08
14 ========================
15 Improving color.module to empower theme developers and webmasters.
16
17 a. Mission
18 ==============================
19 For:
20 Drupal Theme developers, a better system for developing colorable themes.
21 Drupal Webmasters, a better system for customizing and choosing schemes.
22 Drupal Site users, a system to select their scheme.
23
24 Aims:
25 - More simple
26 - More powerful
27 - More possibilities
28
29 My original proposal: http://groups.drupal.org/node/10072
30
31 b. Goal
32 ==============================
33 I want to see this module appearing in some form in Drupal 7 because of its use to themers. I am using the demo of this module on two of my sites, I can't go back to the old one. I've grown accustomed to these features.
34
35 I really think good documentation is the golden ticket to make this project work.
36
37 A few months after Drupal 7 goes gold, I want to see an icon with themes that have color-compatibility. So people know they'll have color choice with the theme.
38
39 c. Realistic stuff
40 ==============================
41 - I find it rather presumptuous to assume that this project will be acceptable for a core commit immediately after SOC. I hope after code/theming documentation is done I can present a case to core team/drupal community to help it reach the high standards expected of a core module.
42 - Many current themes in the Drupal theme library, if modified, can support color.module.
43 - A select few themes are more time consuming/complex to support the module than others.
44 - Theming for color.module is *not* as hard as it looks. You'll see. :)
45
46 2) Known issues / Todos
47 ========================
48 a.) Caveats
49 ==============================
50 - This is still an experimental module, some interface stuff may not be polished yet.
51 - There is a well thought-out installation system in underway that's pretty user-friendly. :) Currently testers may have to install devel module to reinstall things.
52
53 Bug fixes/Patches:
54 http://drupal.org/project/issues/color_soc08?projects=257666&categories=bug
55
56 b.) To do
57 ==============================
58 - Spruce interface up
59 - Documentation
60 - Implement the "suggested colors" feature
61 - Installer (color.module will kind of act like a theme 'service')
62 - Work on the CSS for example themes. Lots of work to do on these.
63
64 3) Ideas
65 ========================
66 - Group/Role default color schemes
67 - Allow random default scheme
68 - Allow random scheme per pageview
69 - SVG Support (It's possible, however I don't know what person who designs with SVG's at this time.)
70 - Implement a * for default schemes. Allow to choose 'site-default' scheme in select. Have a field in color.inc for default scheme on install.
71 - Ability to enter static, hex value in fills.
72 - A color.inc validator -- to make sure your color file is compatible as possible.
73 - Per color-field "Previous colors"
74 - More developer extensions, perhaps a "popup" farbtastic picker for schemes. Currently theme devs have to pick colors manually with the default scheme being already selected if they want to see results.
75 - Enable/disable option for color.module on a per-theme basis.
76
77 Feature requests / Feature dev:
78 If you have any ideas for color module, feel free to open an issue at:
79 http://drupal.org/project/issues/color_soc08?projects=257666&categories=feature
80
81 4) Documentation
82 ========================
83 a. For theme developers
84 ==============================
85 What use is a module without documentation? What use is a color module without colorable themes?
86
87 I think it is in the best interest of every drupal themer to visualize a theme made to allow different schemes. The structure of your theme will maintain the same, you are only changing colors. In the most complex case, you are filling the background of transparent PNG's with with solid/gradient colors. Color.module will update the CSS files for the images automatically.
88
89 a. Quick-start (Installation and Usage)
90 ==============================
91 Switch back to Garland. Backup your current /themes and /modules/color folders. Move them elsewhere temporarily.
92
93 Then themes from the /examples folder to your /themes. Install the new color.module in /color or /color_soc08. The module currently is in dev so the installation process may involve you having to disable/uninstall/reinstall to regenerate schemes for a theme. You can also regen themes via the theme's settings. Be sure to give the users the permission to choose schemes and give them the 'Pick color scheme' block if you want.
94
95 5) Change log
96 ========================
97 August 22, 2008
98 - Demonstration theme are being tweaked to look more presentable as colorable themes :)
99 - Updated caching to include "Page compression"
100 - New feature for theme developers, when scheme editing there will be a textfield where devs can have the color.inc code for a scheme to copy and paste right in! Yay! It was simple to do and helpful :)
101 - Updated Nista theme. Updated its schemes. Very nice progress.
102 - Updated Spooner, Cleanstate for text-decoration: none on anchors
103 - Textarea resized for color.inc viewer
104 - Color admin re-factored to conserve space.
105
106 August 21, 2008
107 - Fixed bug with color.js and Spooner (a base-only scheme)
108 - Updated comments on engine/tag.inc
109 - Updated this README a bit!
110
111 August 20, 2008
112 Most of these updates are fixes for the demonstration and documentation.
113 The major exception is the stylesheet engine update.
114
115 - Under the hood: Fixed bug with currenttheme + edit scheme button on color block sending to incorrect theme.
116 - Under the hood: Removed superfluous data from edit_scheme form and submit
117 - Under the hood: Changed permissions around. Color scheme is now available to those with user_access("administer access control")
118 - Under the hood: color_edit_scheme_form() uses $palette instead of $reference to main hue and shift correctly. However, I left a not in the comments to document how $reference and $palette acted with the picker.
119 - Under the hood: color_validate() action to the color_get_theme_info section.
120 - Under the hood: Put spaces around dot's (.) which concatenate
121 - Interface: For intuitive purposes, switching the "select" and "edit" buttons in the color_block_form
122 - Demo Theme -- Simpla: removed extra breadcrumb
123 - Demo Theme -- Friends Electric: Added default logo
124 - Demo Themes -- Fixed font sizes cleanstate and simpla
125 - Demo Users: Including a code of theme's color.inc on theme settings pages so viewers can take a look.
126 - Documentation. On demo themes: Added comments and spruced up the color.inc on the examples more.
127 - Stylesheet changing has been modularized into extensible color replacement engines.
128 - engines/shift.inc - for shift themes, with a 'base' color (Garland)
129 - engines/tag.inc - for custom CSS replacement
130 - In your theme's color.inc, you can use both these engines at once in either order.
131 - Developers can also add custom color replacement algorithms by adding their engines which hook in automatically. Create a engines/yourengine.inc with the function _color_engine_yourengine($style, $info, $palette, $options = NULL). Return the modified $style markup. You can input options in theme schemes (color.inc file) by adding 'yourengine' => array(MYVARS/ARRAY/ETC) to the 'engine' settings. Go crazy. :)
132 - The color.module DON'T TOUCH statement now separates from all engines/modification as expected. The DON'T TOUCH comment is for CSS markup in your stylesheet's you do not want to have colors modified on.
133 - Of course, this means, no more mode-cruft. :)
134
135 August 18, 2008 (Firm pencil's down date)
136 Last minute touchups + Code documentation + Demonstration themes
137
138 - markup: fixed bug with extra </div> closing tag in scheme editing caused by preview
139 - block: fixed bug with block on anonymous user scheme block
140 - block: new "edit" button for super-administrator (UID 1), for quick access to scheme
141 - block: "select scheme" is now "select"
142 - block: blocks will no longer show up if scheme info not generated
143 - under the hood: color_find_scheme_by_UID() rewritten
144 - under the hood''fill' now supports unlimited of the same color. markup changed to array(x, y, width, height, color_name)
145 - under the hood: Uninstall and Regenerate will now remove color_theme_* rows in {variable}.
146 - under the hood: fixed bug with incorrect scheme stylesheets being applied to new theme
147 - under the hood: color_validate() check to see if color.inc markup is correct.
148 - under the hood: reworked color_check_themes()
149 - supports array of themes, single theme variable
150 - more efficient algorithm to check
151 - includes support for color_validate()
152 - under the hood: color_theme_scheme_generated() and color_theme_info_generated() return information on if a theme's color has been generated or not
153 - under the hood: functions moved
154 - color_get_theme_info() is now in color.database.inc
155 - color_find_scheme_by_UID() is now color.database.inc
156 - color_store_reset() is now color.database.inc
157 - color_get_ref() is now in color.database.inc. Renamed to color_get_reference()
158 - color_validate() is now in color.misc.inc
159 - Reordered functions in color.module
160 - under the hood: tweaking
161 - color_user() will not include module files if not needed
162 - under the hood: fix theme that show when block view
163 - under the hood: reworked the way logo replacement works. slice or copy a logo.png file for a logo, or mention no logo.png in color.inc and it will use your theme's default logo.png (so you can use it later).
164 - scheme editor: "Previous Colors" is now color history
165 - scheme editor: will now see scheme title. :)
166 - scheme editor: will now see breadcrumb including scheme
167 - scheme editor: "Previous colors" and "Suggested colors" are now in a fieldset with a legend
168 - scheme editor: if no scheme preview CSS or HTML is provided, no preview will be shown
169 - Code: Added doxygen reference to functions
170 - Demonstration themes: Completely redone themes: cleanstate, friendselectric*, nista, simpla, splender, spooner. Upgraded to new color module: Garland, Minnelli. All are featuring full color support and can be used as examples. :)
171
172 * Updated from old 4.7 version (with color support added) -- however this is still bug-prone. There is a width problem in IE7 and button background one in IE6. Just a proof of concept for now. :)
173
174 August 8, 2008
175 (#132571) to DRUPAL-6--1
176 - Webmasters can now rename schemes
177 - In theme settings, Edit scheme selectbox will have the default site scheme selected by default.
178 - removed stray console.log() in color.js (was preventing farbtastic from attaching)
179 - Updated the right branch. Apparently the -dev releases haven't updated for a whole month because I was only committing to the HEAD branch.
180 - The "previous colors" (which is our undo function) and suggested colors should be clickable now :)
181
182 August 5, 2008
183 (Including Commit #131347)
184 - Now using scheme_id instead of hex values across the module.
185 - Now using an "Official Site Scheme" in the selection.
186 - Base and hybrid schemes will now require a 'reference' scheme.
187 - color_get_palette() is now color_get_theme('ref')
188 - There is now a color_get_theme('fields') for retrieving fields
189 - New theme config option, 'default_scheme'
190 - Scheme settings completely renovated.
191 - Interface:
192 - Add scheme fieldset
193 - Default scheme fieldset selection
194 - Edit scheme fieldset selection
195 - Rebuild scheme button
196 - Edit scheme:
197 - Added initial support for last colors, suggested colors -- they are not attached to current focused fields yet.
198 - 'Make default' if scheme isn't site default
199 - Can delete scheme, and save.
200 - Preview is collapsible.
201 - Redoing scheme installation. We will install necessary scheme info to tables before generating them.
202 1.) Populate scheme table with information for generation.
203 2.) Generate schemes one by one
204 3.) For each generated scheme, update row in question
205 - Scheme fields are now placed in an array format.
206 - You can now add schemes -- Remember to press the 'Add scheme' button.
207 - Editing scheme now works
208 - Updated the example files.
209
210 July 30, 2008
211 More leaps
212
213 - (Bug) Fixed gradient preview
214 - (Bug) Color locking/hooking functionality.
215 - README updated. We have a documentation page over at
216 - (Improvement - Work in progress) Color scheme UI overhaul in progress
217 - Darken current color
218 - Lighten current color
219 - Select random color
220 - (Improvement - Work in progress) Add/Delete custom, named color schemes from theme configuration page. W/ AJAX
221 - (Improvement) - Schemes changed in theme configuration will now update images and values when submitted.
222 - (Improvement) Image overhaul
223 - Unlimited images
224 - Unlimited gradients
225 - Unlimited solid-color fills
226 - (Improvement) Stylesheet color replacement - We will now offer a Base-shift (garland-type) mode, a Custom mode for just tags, and a Hybrid which is a mix of the two. :) There is an option to automatically pick your mode.
227 - (Minor addition) In the Garland color.inc example, I added the "Majestic" scheme. Looks pretty nice.
228 - (Correcting ambiguity) In the blocks section, the block will be named 'Pick color scheme'.
229 - (Correcting ambiguity) 'Regenerate schemes' button. On the theme config, there will be a new button for this. Previously, you would have to click "Reset to defaults" -- which was confusing and also defaulted other settings.
230 - (Correcting ambiguity) table change
231 `color_picks` is now `color_users`
232 - (Correcting ambiguity) function color_store_theme() to color_add_theme()
233 - (Changed name, same function) color_set_scheme() is now color_set_user_scheme()
234 Function for setting user schemes selections (Table: `color_picks`)
235 - (New function) color_set_scheme()
236 Formerly, this was used for storing users' scheme selections. I am now changing this function to the setting of the schemes themselves (Table: `color_users`).
237
238 July 23rd, 2008
239
240 Allow BASE only color change! YES
241 Notes: If only base color is listed in a scheme, only commas will be listed.
242 - Fixed: Fix scheme reset not showing schemes on next pageview
243 - Fixed errors for themes without fields 'base', 'text', 'link'
244 - Fixed errors for themes without $info['copy']
245 - Fixed errors for theme without $info['preview_image'] on preview.inc
246 - Updated README.txt
247
248 Color.js
249 - is being fixed up for the custom preview.inc setup. The preview.css will change ID's matching your fields inside a div#preview. :)
250 - Is being set up to work with instances where certain schemes in a 'base' colorable layout doesn't have the rest/some of the fields setup.
251 - I have worked on reattaching the selectbox behavior for webmasters who want to add/remove custom schemes. (Has been driving me crazy!)
252
253 July 9, 2008
254 Performance tweaks!
255 - color_get_schemes(), color_get_theme_info(), color_compatible(), color_get_palette() all use static variables.
256 - removed the extra $themes = list_themes(); in _color_rewrite_styleshet()
257 - moved code around in color_form_alter() to only retrieve themes and include algorithms when needed. (~40-50ms performance fix)
258 - Only taking need columns (id, name, hex) from schemes in color_get_theme_info()
259 - fixed support for garland/minnelli screenshot on /user/{uid}/edit
260 - fixed admin/build/themes/settings/{theme} to correctly set theme name
261 - Cleanstate: fixed up cleanstate a bit.
262 - Fixed default variable_get('cache') variables to fit the "Disabled" mode in admin/settings/performance by default.
263 - Fixed notice with Undefined indexes by using isset()
264
265 Unfinished:
266 - Custom preview.inc option. Currently, if you provide a preview.inc in the theme's /color folder, the default will be overridden.
267
268 Bugs:
269 - Without user_access('select different theme')) and select color scheme users can pick schemes w/ block but not user profile.
270
271 June 26, 2008
272 - Bug fixes here and there. I had a list but laptop was left to sleep without saving... Doing best to keep tabs.
273 - make some functions for the _submit user scheme pick updates
274 - Fixed cleanstate theme to replace colors correctly
275 - Cleanstate scheme now has new custom fields + colors!
276 - "Reset to defaults" will now delete schemes for themes in files. It will also delete relevant user color picks. However it may change with:
277 - Fixed system up for clearing scheme_id's that don't exist.
278 - Removed color_legacy function. People will be able to change w/ proper documentation.
279 - Fixed bug On scheme change from Garland->Minelli, scheme won't change/update
280 - Fixed bug on scheme change to cleanstate scheme shows as aquamarine but "Your scheme does not match with your theme!" shows and color_pick row WHERE uid={uid} won't delete..
281 - Fixed bug with {{base}} color not switching!
282 - Fixed bug with switching back to default site theme (scheme will not del)
283
284 TODO: don't pull misc/file info unless necessary (not on page load alone)
285 TODO: Use some static functions to reduce loading the same data twice.
286 TODO: On moving to default theme, scheme select will not reset, unless after reload.
287
288 June 20, 2008
289 - admin/build/themes/settings/{theme} will now change default color scheme
290 - Fixed link color with CSS changing on Garland.
291 - Fixed color block would show up on non-color themes
292 - When cache is on, color.module will not change schemes for anonymous users.
293 - "Reset to defaults" on /admin/build/themes/settings/{theme} will now correctly reset color schemes for themes
294 - Updated cleanstate color.inc file
295
296 June 19, 2008
297 SQL Tweaking/New DB Functions
298
299 - (Done) INNER/LEFT JOIN more!
300 - (Done) allow color_get_theme_info and work on grabbing specific fields instead of all columns
301 - (Done) change 'default_set' to 'default_scheme'. TRY TO USE ID!
302 - (Done) in color_theme_select_submit() before hand use hidden field to include scheme_id
303 - (Todo) Store info on what themes are colorable in {color} table
304
305 June 18, 2008
306 Bug fix/Tweaking release
307
308 - (Added) On uninstall, whipe old schemes from dir
309 - (Added) Do a preg_replace('~[^a-z0-9._]+~, '-', drupal_strtolower($string)); to normalize file paths
310 - (Fixed) On block administration page, the theme now changes.
311 - (Fixed) Users can now change schemes w/o 'select different theme' perm.
312 - (Fixed) Bug on garland/minnelli with invalid stylesheet recoloring
313 - (Tweaked) Suppress repeat warnings in certain parts of scripts.
314 - (Updated) Update minnelli color.inc to new version.
315
316 Caching
317 I do not see this module as being very cache-friendly. There will have to be some thinking when it comes to this.
318
319 - Block cache: lags on select boxes on anonymous/registered users
320 - Caching modes 'normal': interrupts scheme changing for anonymous users. works OK w/ logged in ones
321
322 June 16, 2008
323 New color replacement methods!
324
325 Changes:
326 - Find and replace fields from color.inc inside stylesheets. /* {{base}} */ #ffffff /* {{/base}} */
327 - Include a 'base' field if you want to change colors of non-tagged color values. (I.e. Garland)
328 - You can keep the above stylesheets in the /color folder by doing: 'css' => array( 'color/style.css',),
329 - Fixed bug w/ blend_target storing in DB
330 - Added some more logic for falling back to default themes/color theme changing
331
332 Quirks:
333 - In listthemes(), must check if theme is enabled in system! This shows extra color-enabled themes in user/{uid}/edit
334 - When changing over a theme, the old scheme name may show in selectbox (the module will still correctly move to default scheme for newly selected theme, though)
335
336 June 11, 2008
337 We got a color scheme block + anonymous color scheme selection + perms.
338
339 Changes:
340 - Fixed up webmaster theme selection
341 - Users other the uid 1 can choose scheme.
342 - Color scheme changing block. (YES.)
343 - Anonymous users can now pick color schemes
344 - Started applying user permissions to scheme selection. If user is not granted permission they will not be able to see scheme selection and default to default_set scheme for the theme.
345
346 Need to know: You have to set the 'choose color scheme' permissions for the user type if they want to see the block/change schemes.
347
348 June 9, 2008
349 Changes:
350
351 - Legacy support code is now in the color_get_theme_info() function.
352 - Updated color.image.inc for some legacy support for gradients without the color field values. (supposed to be listed like x, y, width, height, color1, color2)
353 - Modularized code into color.database.inc, color.stylesheet.inc and color.misc.inc
354 - Now 3 tables: 'color' for theme info, 'color_schemes' for individual name/theme/hex info, and 'color_picks' for user scheme choices.
355 - In color.database.inc, there is now functions to find scheme based on UID, hex, and scheme/theme
356 - color_legacy($info) in color.misc.inc function for checking/changing old scheme .inc files to be compatible with this.
357
358 Known quirks:
359 - Minnelli is having very odd color effects. (http://img338.imageshack.us/img338/8634/picture8no4.png) (With current color.scheme using legacy support code to fix).
360
361
362 June 8, 2008
363 Users can now pick color schemes
364
365 Changes:
366 + Color schemes are now in 'color_schemes' table
367 + Instead of every theme having one scheme stored, all schemes are stored for user selection.
368 + Scheme file information stored in 'extra_attr' column
369 + In preparation for user custom schemes, the 'scheme' column will attempt to match with the 'name' column of a pre-made theme. If no match, in the future will assume it is a custom user theme. (Generate graphics/stylesheet)
370 + Users can now pick color schemes for themes on a user basis via user/{uid}/edit. (YES)
371
372 Known Quirks:
373 - Color schemes are installed when color.module is installed.
374 - New individual color themes are added when you go to admin/build/themes/settings/{theme}
375 - When schemes are first installed, esp. after the module installation w/ a few color themes, the set messages list is very long. Need to find a way to quiet that.
376
377
378 June 1, 2008
379 We are on our way to allowing users to select their color schemes.
380
381 Changes:
382 - For the moment the inline color scheme selection has been removed from /user/{uid}/edit. Can be placed back at a later time if wanted (it is in 1.6 of color.module)
383 - Fixed bug with color schemer showing on none Color.module themes.
384 - (Second commit today) Fixed bug where color schemes would change across themes. Every chosen theme w/ a scheme should have it's own row.
385 + Users can now store their theme selections (not creations yet) in the DB. It will insert and edit.
386 + New special 'user_scheme' name. Currently stores serialized hexed codes for color schemes. Built to support custom schemes for users.
387 + A form submit checking for when a theme and color scheme is chosen at the same time.
388 + (Second commit today): Used coder.module to brush up a bit.
389
390 May 30, 2008
391 This is a commit so my mentors (Konstantin and Dmitri) and anyone else who wants to can see what I've been working on. There is a lot of temporary code in this commit.
392
393 Changes:
394 + Inline color scheme select
395 + Fixed schemer to work with more themes!
396 + Schemer now has some (maybe temporary) support for legacy color.inc files. It will present a warning but still adds to the database all the same.
397 + Split functions up into color.image.inc and color.algorithms.inc
398 - Removed primary key for indexes atm. For now to change this please Uninstall/Reinstall module. It will suppress some duplicate errors from before.
399
400 Known Quirks: I cannot get the values of the select boxes for color schemes on color-enabled themes to all submit seperately on /user/{uid}/edit. It seems as if the last select box overwrites all the previous ones. And the ['colorselectbox'] hex shows up all around the form output with dprint_r($form);
401
402 May 28, 2008
403 Changes:
404 + Added the "uid" column. Index in scheme for 'theme', 'uid' for the moment.
405 + Added "Color-enabled" in description of themes with color support (color.inc files present)
406 + Added
407
408 Known quirks:
409 - I just found that current color.module in Drupal 6 may not be handling screenshot preview correctly.
410
411
412 May 26, 2008
413 Changes:
414 + Support for unlimited/custom amount of color fields. Fields atm must be declared in color.inc.
415 + Color scheme keys changed to scheme name (was value/hexes). Implemented storage of schemes/other color theme variables in SQL.
416 + Color.module install schema.
417 + "Reset to defaults" can be used to reset the SQL (incase you wanted to try adding new fields/colors).
418 + Gradient colors can now be chosen through field names of your choice.
419
420 Known Quirks:
421 - (Fixed) Blank page on module enable/disable, theme change submit/reset. Try reloading the URL w/o form POST.

  ViewVC Help
Powered by ViewVC 1.1.2