logo

eoCMS Developer
eoCMS Developer
Offline Offline
avatar
Posts: 1528
Theme System

Done the theme system. It works similar to that of the call() function but instead uses theme().

Also changed all the preg_match for the visible checks into a function using strpos, this should increase the speed of eoCMS quite a bit

Please do not PM me requesting support or anything, use the forums, thats what they are here for
eoCMS Designer
eoCMS Designer
Offline Offline
avatar
Posts: 1290
tbarkass_willamson@hotmail.com
Re: Theme System

Good Grin

Seen a bug? Report it!
eoCMS Developer
eoCMS Developer
Offline Offline
avatar
Posts: 1528
Re: Theme System

TGPEG or Jake, need you to make Preview thumbnails for the themes to go in the admin panel, 140 x 140, Jake I also need an Admin Icon for the Themes

Please do not PM me requesting support or anything, use the forums, thats what they are here for
eoCMS Designer
eoCMS Designer
Offline Offline
avatar
Posts: 1290
tbarkass_willamson@hotmail.com
Re: Theme System

OK I will do the preview thumbnails. What has happened to the footer btw?

Seen a bug? Report it!
eoCMS Developer
eoCMS Developer
Offline Offline
avatar
Posts: 909
Re: Theme System

this is good work, preview will be use for users, admins and themes url.

however Smile ..

this has taken the "complexity" of creating a Theme UP a level, especially for a TC (theme Total Conversion), which requires heaps of direct includes to begin with..

What ever is done for themes tho, we should be able to supply a "skeleton" of a theme (functions, but no html output, may contain menu ordering examples, etc)

I know some people did not like the way the "old" theme_functions page worked, but from what I can gather, it was more of a layout and readability issue

The other issue here is that eoCMS is almost up to 2500 pages (for an SVN install, which is about 1250 real pages). I know a lot of them are  new stuff I have added, and are yet unused (the db functions), and each new language will bloat it further (may want to offer language packs).

From what I can tell, see, and know from doing "fixes", each of the current themes actually is one themes with custom css and layout, so ideally the EGI and ENERGY_BLUE themes should only need to contain the differences, the is, css and new images. ATM each one contains a copy of ALL of the image, and now a whole heap of other pages..

Arwym has already said that "creating a theme was hard too understand, and complex". cleaning up the code output, using php <<< HTML instead of regular quoted strings, would make that cleaner, and the use of bracets ({ & }) would make visualizing the output much easier

I've mentioned the difference between theme and skin elsewhere, and I've seen it referred to with different wording, but basically they both say, "default" should contain structure, panel allocations, etc (the "default skeleton" with content output) AND the CSS and "default" images (including the admin ones).

Whereas the EGI and ENERGY_BLUE just need their own CSS and images (not including the adimin ones). The "defaut" theme should be flexible enuf for those "little extras" to be done with CSS (eg: the left bullet header image in "default" and "energy_blue", but not in "egi" )

OK, I've already shown confuser a new theme (TC) that I want do, and the "application style" (TC) theme I've mentioned before, both of these have there own skeletal structure that is significantly different from the current ones, and that might make the difference between themes and skins more recognisable

each theme-info should contain as little programming info as possible (ie, no need to all the current ones to contain panel excludes, bad idea), but can include "pointer" to default admin

The db side of things with the themes is a lot better off, lots of options, etc, except that it now requires the theme to supply more info, and there are no "defaults in php" if they dont.

unfortunately the admin stuff is part of this, and I have not been able to show how that was (fully) meant to integrate, but it is directly related to the above as well..

appologies for the epic-ness of the post..
Last Edit: 1st June, 2009, 02:53:21 AM by paulwratt

eoCMS Developer
eoCMS Developer
Offline Offline
avatar
Posts: 242
banancanardbanancanard@live.com
Re: Theme System

After reading that extra long post I would like to add a few things and maybe give a summary of some of what paul said. (Hopefully a accurate one)

I think now themes can kind of be treated like layouts.  We provide a default set of theme functions as well as images.  Each theme after either uses these default functions, provides their own functions with the same name which will be used instead of the defaults, or they can use none of the defaults and only use their own functions. (All of this applies to images as well) 
I dont really know if this is a good or bad idea, but none the less it is an idea.

I know I had something else but I got a little distracted when I was writing this so if I remember ill bring it up.

"Control yourself. Take only what you need from it"
http://mrrsm.com
eoCMS Developer
eoCMS Developer
Offline Offline
avatar
Posts: 909
Re: Theme System

yeah, thats about it Smile

so "default" constists of  (1)"default" layout, "default" admin menu layout, and (2) "default" css/images, and "default" admin menus images

"egi" contains only "egi" css/images, and the theme-info says use "default" admin layout and "default" admin menus images

"whirlpool" contains "whirlpool" layout, "whirlpool" layout functions, "whirlpool" css/images, and the theme-info says use "default" admin layout and "default" admin menus images

that admin menu "Xaphire Clean" can then be used as an option for any other theme, unlike the "default" admin layouts (top, left, text-top, text-left) is has only one layout option, and admin-sub-page menu layout.. and does not come as the default menu for any (current) themes

eoCMS Developer
eoCMS Developer
Offline Offline
avatar
Posts: 1528
Re: Theme System

So what your saying is, change the theme system so there is no need to have repeat images? I did the functions like they are to make it easier to read etc, all that has changed is there is no theme-functions.php but rather separate functions exactly like call() except use theme(). Thats the only major change, well except for needing to install the themes but I cant really see why it would be a problem. If we want to cut down on the size (last time i checked it was 2.04mb zipped up) then we can remove the energy_blue and add it into the themes db. A TC theme would be still possible, the complexity hasnt really gone up in my view, all you need to do for your TC is change the output() function and some others.

Please do not PM me requesting support or anything, use the forums, thats what they are here for
eoCMS Developer
eoCMS Developer
Offline Offline
avatar
Posts: 242
banancanardbanancanard@live.com
Re: Theme System

Well I think what is trying to be conveyed as well is that if everything has a default, kind of like the Layouts, only the files and/or images that need changing will have to be included in a theme.  This would make themes a bit easier to make if they are using a default template and just changing some colours and images.   This will cut down on a lot of extra files needed as well for both the themes included as well as other themes people make. (possibly)

"Control yourself. Take only what you need from it"
http://mrrsm.com
eoCMS Designer
eoCMS Designer
Offline Offline
avatar
Posts: 1290
tbarkass_willamson@hotmail.com
Re: Theme System

That's true. One thing you notice when making themes is that there are a lot of images cluttering the images folder that aren't needed (such as button images which are as far as I know the same in every theme)

Seen a bug? Report it!
eoCMS Developer
eoCMS Developer
Offline Offline
avatar
Posts: 909
Re: Theme System

OK, good discussion.. (confuser and I covered the follow last night)..

remember that "we" know what needs to be done to get a theme to work, and thats that main issue I have with the "new" system, if your are just a designer, or a noob wanting to customize one of the (current) default  themes, the more files there are to work with the more daunting and complex it seems..

OK, as far as coding goes its a good move, and inline with the rest of eoCMS, so technically the themes have just been "standardized", helping anyone else who wants to do plugins and more advanced eoCMS specific addons..

ATM, I propose 2 types of theme, the new one, with "default" layout, "default", "egi" and "energy_blue" CSS/images, and a modified version of the "old" one, that works with the new system

yes they can co-exist. There are 2 reasons for having the old "one-page-all-functions", (1) so that themes can call there own customised functions (KillerText uses GZ + DEFLATE functions by default, cos its fat in the HTML output department), and (2) what if someone wants to Zend their theme (for whatever reason)

as proof of concept I "might" try Zend on XaphireClean Admin Menu, just to see how it goes..

I have spent most of today working on the Admin->Theme page, there is now a link to the mods site in the top panel (the Layouts category need at least one content, even if it can't be downloaded, I suggest that Theme Jake has now put on hold, and upload the user db from eocms too, so it can be used)

there should no longer be a need for the installer to run any theme functions, I have tried to set up an initial layout which telles you what needs to be done, and presents you with "Set as default SiteTheme" if none are set (as the dropdown now says)

the new "speed" installer can have a "set default theme" dropdown to help speed that part of the process up too.. and there is no rason it cant have an option to install a "Site Theme" (which includes a lot of default db content, panel, plugin and forum setup)

OK, shesh, I'll try to end another epic post.. Smile

I am about to got hit the XaphireClean admin menu, so expect to see it in the svn within the next 12 hours (from this post of coarse).. but I'll try and get at least one other layout running with the new system (even if its the old style, KillerText one) and get the whirlpool one out within the next week (its similar to what Brad wanted from the admin section, so it will also have a custom Admin as well)


Jump to:


0.11 seconds Queries: 13