History of StylistPackage
Version 2
My Site Stylist
my site stylist is a configurable graphical user interface to modify (perhaps even create) new themes.
note: this package is still in developement and certain aspects are nowhere near completion :)
features and items available
- admin area allows users with permissions to add/remove elements and modify definable properties that can be set for these
- relatively simple to work with and allows basically full customisation of the site if you take the time to add all classes, tags and ids to the list of editable items.
- it's possible to customise a css file that is visible globally for all users using that particular theme
- in addition every user can have his/her own css file that is only applied when that user calls that theme
- ideally this file should be visible if the style is applied to the individual area
- basically:
- user selects his/her favorite theme for his/her user area
- user customises his/her favorite theme
- user applies modifications to his/her user area
- customisation is visible to every user accessing his/her user area
- it is possible to manage images in all these customisations making my site stylist quite flexible and powerful
form is collapsable at every element to save space
individual and unified settings for borders and margins available
admin area is now
- sortable
- searchable
- pagination
- for simplicity reasons, i think it's better if the original file isn't directly modified (or copied and modified) but custom settings are loaded later resulting in overwriting of original css settings
form submission results in easy to manage variables, similar to css syntax
individual form buttons work (still submit full form - should be fixed at some point)
final submit button for entire form is working as well
read css file and
- create array of classes
- pass all variables to form and populate it
- create css file from date generated in form
array structure
{CODE()}
$css_elements = array(
'tag' => array(
'body' => array( 'border','margin','font','background' ),
'table' => array( 'border','margin','font','background' )
);
'id' => array(
...
);
'class' => array(
...
);
);
{CODE}
on the admin page
class | features |
body | font |
border | |
margin | |
background | |
table | font |
border | |
margin | |
background |
permissions and preferences that are available
permissions | |
feature_stylist | obvious |
tiki_p_admin_stylist | obvious as well |
tiki_p_edit_global | user has rights to edit the global css |
upload_style_images | leads to the fact that 'background' can't be set by users without this perm |
copy_style_images | can't copy images from original image folder to custom folder |
apply_style_globally | allows user to apply his/her modifications globally for the given theme |
preferences | |
max_file_size | set MAX_FILE_SIZE for image upload |
ignore_max_file_size | ignore the above setting and set it to 100MB |
use_color_picker | should we use the color picker popup window? |
order of loading css files is
- base.css
- original.css
- browser.css
- custom.css that has been applied globally
- custom.css that has been created by user