Yesterday morning, Dries informed me of the following plans for 4.8: (quote) 1. A new default theme that is more slick. We're done with Bluemarine. 2. A dashboard module to replace the current main administration page (?q=admin). 3. A reorganization of the administration pages. 4. An install system. I've been storming away at items 1,2 and 3 and didn't even know that there were already plans to put this in the next version. With this news, I'd like to offer my support to any current efforts, and to give an overview of what I've accomplished so far that could be of benefit to item one. I'd put my GPL work on the CVS, but I don't think I've been granted access yet. So, I'll just give a brief overview of where I'm at, and see who comes out of the woodwork (I know... 4.7's bugs... see bottom if you're pissed...). For now, I'll spare y'all and keep it to item one: 1.So I've been working on one theme, Curved_Slate, but a variety of factors (my stupid head, the experiemental nature, and the so far disorganized approach to version tracking have lead it to be bugtacular for the moment.) I'm currently in the process of going backwords, and modularizing it into a a lightweight configuration, which can be easily extened into the heavy weight configuration. If no work has been done thus far on the default theme for 4.8, a lightweight distro (no js, or experiemental scripts, just templates, art and CSS) might provide a good starting point. The theme is has largely solved a number of persistant drupal themeing problems -- namely: 1. all css 2. .main-content expands and contracts smoothly in response to various $layout configurations. 3. all columns grow and shrink perfectly to fit any page height 4. page.tpl.php ordered content, sidebars, footer. 5. min-max width support in both firefox and safari (albeit, by way of an ugly hack): [see: http://nicklewis.smartcampaigns.com/themes/curved_slate/default_styles/layou... ] 6.A page.tpl.php file that nevertheless looks an awful lot like good old box_grey 7. Only two wrapper divs 8. You can easily (especially with some PHP scripting) expand and contract the columns or #main div to fit whatever needs you have. The theme most likely doesn't support IE5 (IE5 -- the great ugly stick of websites...) -- but I don't really care, and my guess is it would be more to drupal's benefit to focus on the 95% of web users who use modern browsers, than to settle for tables and hacks so that grandma on the mac classic can keep up with her persistant reading of online content (though my grandma tells me she's enjoyed reading my blog -- and she uses IE 4!, so it might not be so bad... but grandmas lie sometimes....) And, we could always keep bluemarine around for her. It wouldn't be terribily difficult to setup something to detect browsers that won't support standards, and serve them a crappy-browser-safe theme. Anyways, I'd be happy to throw my efforts this direction, but don't want to step on any toes, so let me know if your working on the same thing. Otherwise, provided I can login to the CVS, I'd be happy to CVS-itize a bare bones version of my theme as a place to start. A sidenote: ---Curvy Corners, a dream that Rico's Apache Liscense prevents--- I know practically nothing about Javascript... but... this is what I've hacked together to generate curved corners. The curved corners script is now a 15 kilobyte dandy (down from Rico's 150kb library). sourcecode: http://nicklewis.smartcampaigns.com/modules/jstoolbox/rico.js However, practical considerations (such as making it dead simple to implement curved corners) have forced me to use a patched Prototype 1.5 beta library source code: http://nicklewis.smartcampaigns.com/modules/jstoolbox/prototype.js While this approach is still buggy, and their are other techniques like sliding doors (when considering how short life actually is, sliding doors looks like less and less of an ideal solution), with those two scripts included, I can generate a curved corner around any part of the site. Take a look at the code that actually creates those corners on my blog: <script type="text/javascript"> var roundCorners = Rico.Corner.round.bind(Rico.Corner); roundCorners('div#main'); roundCorners('div#top-nav', {corners:'bl br'}); roundCorners('div.downloads'); roundCorners('div#compose-options-right'); roundCorners('.sidebar div.block',{border:'#eeeeee'}); roundCorners('div#footer',{border:'#eeeeee'}); </script> I'd argue that the simplicity of the Javascript solution is beautiful (I realize that its lacking in a lot of areas that developers tend to focus on, but for mid-level users, this stuff is golden). Its not something that other CMS's offer, and I think its a subtle feature that could set drupal apart. If anyone has any insight into this it would be very appreciated. That's enough for one night (er... morning for y'all continentals). Onward, Nick Lewis http://nicklewis.smartcampaigns.com Reference: page.tpl.php <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" lang="<?php print $language ?>" xml:lang="<?php print $language ?>"> <head> <title><?php print $head_title ?></title> <?php print $head ?> <?php print $styles ?> </head> <body> <div id="main" class="<?php print $layout; /*THIS CLASS ALLOWS SIDEBARS TO DISAPPEAR SMOOTHLY */ ?>"> <?php if ($site_name) : ?> <div id="site-name"> <h1><a href="<?php print url() ?>" title="Index Page"><?php print($site_name) ?></a></h1> </div> <?php endif;?> <div id="header"> <?php if ($site_slogan) : ?> <span id="site-slogan"> <?php print($site_slogan) ?> </span> <?php endif;?> </div> <div id="primary-menu"> <?php print $primary_links; ?> <br class="clear" /> </div> <div id="columns" class="show-all" > <div class="cols-wrapper"> <div class="float-wrapper"> <div id="content"> <div class="main-content"> <?php if ($mission) { ?> <div id="mission"> <?php print $mission ?> </div> <?php } ?> <?php print $tabs; ?> <?php /*Supress content title if page is the front page */if (!$is_front) { ?> <h1 class="content-title"><?php print $title ?></h1> <?php } ?> <?php print $help ?> <?php if ($messages) { ?> <div id="message"> <?php print $messages ?> </div> <?php } ?> <?php print $content; ?> <?php print $breadcrumb ?> </div> </div> <?php /* remove all columns if $layout variable returns as "nosidebars" (see template.php file) */ if ($layout != "nosidebars") { ?> <?php if ($sidebar_left) { ?> <div id="sidebar-left" class="sidebar"> <?php print $sidebar_left ?> </div> <?php } ?> </div> <?php if ($layout != "left") { ?> <?php if ($sidebar_right) { ?> <div id="sidebar-right" class="sidebar"> <?php print $sidebar_right ?> </div> <?php } ?> <?php } ?> <?php } ?> <div class="clear" id="em"></div> <div id="footer"> <?php print $footer_message ?> <?php print $closure ?> </div> </div> </div> </div> <?php include "$onload_js"; ?> </body> </html> For uppity folk: I'm sorry, but I am swamped with work, and don't have time (or really the programming knowledge) to take on those bugs -- however, all of my "put a roof over your head" work is directly related to these goals of 4.8 -- I figure some contribution is better than no contribution. I'm very interested in having my efforts pay off for drupal as a whole. That's my excuse and I'm sticking to it.
Nick Lewis wrote:
I figure some contribution is better than no contribution. I'm very interested in having my efforts pay off for drupal as a whole. That's my excuse and I'm sticking to it.
Nick, just wanted to say that your blog alone is a great contribution to Drupal. Keep up the great work! You're likely in for a long ride with your goal of making the ultra 4.8 theme; I know of one guy in South Africa who has mega plans for changing the way themes are done altogether, so make sure and stay in touch with him (Adrian). Follow Bèr's work on the area, too. Robert
On 08 Mar 2006, at 11:08 AM, Robert Douglass wrote:
Nick, just wanted to say that your blog alone is a great contribution to Drupal. Keep up the great work! You're likely in for a long ride with your goal of making the ultra 4.8 theme; I know of one guy in South Africa who has mega plans for changing the way themes are done altogether, so make sure and stay in touch with him (Adrian). Follow Bèr's work on the area, too.
We've been talking =) -- Adrian Rossouw Drupal developer and Bryght Guy http://drupal.org | http://bryght.com
Nick Lewis wrote:
Yesterday morning, Dries informed me of the following plans for 4.8: (quote) 2. A dashboard module to replace the current main administration page (?q=admin). 3. A reorganization of the administration pages.
David Reed and I have done some work (with Kieran) on 2 & 3, though of course there are many, many issues related to this endeavor, mostly in terms of target audience -- what is a good administration setup for new users is not necessarily a good set up for maintaining a site. So there's been talk of re-organizing the effort to include multiple administrative dashboards, each with different targets, but nothing has yet been done on that. (the project underway is administration.module)
On Mar 7, 2006, at 10:49 PM, Nick Lewis wrote:
Yesterday morning, Dries informed me of the following plans for 4.8: (quote) 1. A new default theme that is more slick. We're done with Bluemarine.
Talk to Jeff Robins and Ted Serbinksi. They are leading an effort to build next generation themes called Vancouver and Amsterdam. Glad to see you are talking to Adrian too. Please have this discussion in public on the themes list.
2. A dashboard module to replace the current main administration page (?q=admin).
As Earl indicated CivicSpace Labs has been working with David Reed to modify the the administration module to provide a better user experience for Drupal administrators. The administration module is currently included in the latest 0.8.3 release candidates of CivicSpace.
3. A reorganization of the administration pages.
We conducted a series of interviews with Drupal administrators in english and spanish. We conducted a number of live usability experiments related to new users using Drupal. We surveyed 877 Drupal/CivicSpace users and got some surprising results about how Drupal is actually used. The results are available here: http:// civicspacelabs.org/home/files/adminsurvey.html. We need people to objectively look at the data and really listen to what users have told us in this work. I am currently working with Bill Fitzgerald and Gunnar Langemark to interpret the data and design an administration interface that matches what drupal administrators actually do and how they work. The administration module, available in 4.6 and 4.7, is configurable so just like the existing menu and block system you can use configure it to your hearts content and even theme it extensively as we are currently doing for CivicSpace.
4. An install system.
CivicSpace labs has already built an install system for Drupal core, to replace the existing CivicSpace installer we have using and extending for the last 15 months. We have a learned a lot about installation, environment checking, error messages, the state of cheap hosting, and the skills levels of new users who are trying to use an installer. We have also gone out studied other CMS installers such as Word Press, and Joomla's installers. Drupal development favors small patches so we are currently breaking up the installer into at least three pieces per Neil's request and Dries's agreement. But we need help with the installer. Following Steven Wittens review we have been working to improve the error messages for users here: http://drupal.org/node/51772 The installer is fully bundled for testing of Drupal core here: http://www.kerneltrap.org/jeremy/drupal/installer/. If you want to review the installer issue you can do so here: http://drupal.org/node/ 48732 The requirement API has been broken out here: http://drupal.org/node/ 52289 and needs some testing. Any help on these projects would be greatly appreciated. Cheers, Kieran
participants (5)
-
Adrian Rossouw -
Earl Miles -
Kieran Lal -
Nick Lewis -
Robert Douglass