Forum .LRN Q&A: RFC: things to improve themes package (theme-selva)

Hi

There is a possibility to get some funding for improving theme-selva and I would like to get people's wish-list.

I have fixed most of the bugs in the bug tracker and the remaining one would be partof the to-do list.

What other things would people like to have so its useful to your organization. Remember the goal is to make it easier to change the look and feel of a dotlrn install by changing a CSS only.

Two themes come withthe package. The Selva CSS (in different shades) is working well. SelvaFlex (a theme without graphics, very similar to Plone's) needs a bit of work.

So what would you like?
I'm thinking in a list of things that would take an experienced developer about 2 weeks.

cheers

Rafael

Collapse
Posted by Ben Koot on
Maybe a stupid question... and sorry for beeing off topic.

Is theme Selva operational outside dotLRN? If not what would it need to make it work.

Thanks

Collapse
Posted by Dave Bauer on
Ben, That is a great question. The answer is no. The system that these theme packages work with only exists in .LRN.

I think it makes sense to get th CSS classes for OpenACS and .LRN in line and work so themes are available for OpenACS and .LRN.

Collapse
Posted by Rafael Calvo on
I completely agree that is important.

I have split the templating pages to make this easy from the theme side, but there are still some dependencies in the installation scripts.

I have been troubled about the best way to do it becuase it requires changing HTML across all openacs packages. This is something we need to do to make it easier to customize the looks. The idea of having lots of TCL variables to change colors and so on is sometning that does not go well with graphic designers.

Also, we have tried to make the classes we use somewhat similar to plone so we could resuse some of their skins.

cheers

Rafael

Collapse
Posted by Gustaf Neumann on
A few random wishes from my side concerning css management:
  • definition of css classes for more or less
    all oacs elements
    (including lists, actions, forms, calendar etc.);
    this means analysis of css usage, design of class
    names, ids etc., providing skins for the classes/ids.

  • reduction the number of different style files while
    keeping modularization: some pages use 6 or more
    different css files, each file is a separate request,
    in most cases returning 304. For a user, this site
    appears more sluggish than with e.g. on large style
    file. There could be a tcl function "make" that checks dates
    of style-files and composes a common style file out of
    these when parts are modified. These requests could be
    reduced to a few requests (maybe one)

  • selva does currently not show the title of the
    resource, but instead something like Main Site.
    For many packages the title is important (see e.g.
    xowiki pages), i have made a local change to allow this)

  • As noted earlier, selva support for plain oacs.
    In the best of all possible worlds, skin management
    support for subsites similar to dotlrn.
Collapse
Posted by Caroline Meeks on
I am basically going to repeat Gustaf's first point.

My request is good documentation and guidance on a standard set of CSS we can use as we create new pages. Also usefull would be a How To developer guidance document on making old pages compatiable with Selva. I would also like documentation aimed at graphic artists to make it easier for them to create a custom design using this CSS.

Thanks!
Caroline

Collapse
Posted by Victor Guerra on
In Galileo we have some functionality for changing the visualization for users and communities with just one click.

I just commited this functionality for .lrn in the CVS Repository ( branch oacs-5-2 ). Feel free to test a fresh install or update your dotlrn 2.1.3 install.

Basically i introduced the concept of dotlrn site template. A dotlrn site template defines wich master template and portal theme to use for a given user or community.

The default installation includes the Default .LRN Theme and the Kelp one ( There have to be
some modifications in the install process for selva theme
to be included automatically as a site template, but
you can add it by hand if you want to).

Basically you will find a new link in .LRN Administration regarding the Site Templates. What you will find there?

- Adding / Editing Site Templates
- Parameters administration:
- Can users change their own site template?
- Can communities administrators change the site template for communities?
- Default site template used for users not allowed to change their site template ( This site template is used for new dotlrn users as well ).
- Default site template used for communities when the administrators are not allowed to change their site template (This site template is used for new communities as well).
- Which master needs to be used for not registered users.

Feel free to test this new feature and if you find a bug or something report it back :).

Notes: This functionality works for .lrn only.

Collapse
Posted by Emmanuelle Raffenne on
Hi Victor,

I'm testing site templates with .lrn 2.2 and having some problems. My installation is from the repository (acs-core 5.2.2 final and .lrn from oacs-5-2 branch), aolserver4, postgresql 7.4.7 on Debian sarge.

I can change the default site-template in dotlrn admin with no problems (it's applied after server restart) but when I allow communities/courses to change their own, the server stop responding when I go to a course/club portal. I've tried to restart my server after allowing communities to change their template but it doesn't solve the problem. I don't see anything in the error log neither.

Collapse
Posted by Victor Guerra on
Ok Emma,
Ill check whats happenig there.

Thanks for your report.

Cheers,
Victor Guerra.

Collapse
Posted by Carl Robert Blesius on
Victor,

please comment on this addition to .LRN.

Your addition associated with the comment:

"Adding functionality to .LRN for changing *site templates*"

does not work on the oacs-5-2 branch.

http://xarg.net/tools/cvs/change-sets?days=all&user=victorg&show%5ffiles=1&module=dotlrn

We discussed your addition in the .LRN meeting today and unless you fix it so it works with oacs-5-2 for oracle and postgres (or someone else fixes it before next Tuesday's meeting) we are going to comment these changes out in the UI of what will become .LRN 2.2

Collapse
Posted by Victor Guerra on
Sure,
Emma commented too about it!.

I fix this before the next meeting.
Ill let you know when its fixed.

Cheers,
Victor Guerra.

Hi Victor,

Finally I found what caused the error and fixed it. In the case when communities admin are allowed to change their site template, there was a recursive call between dotlrn_community::get_site_template_id_not_cached and dotlrn_community::get_site_template_id.

Here is the change I comitted for get_site_template_id_not_cached:

Index: community-procs.tcl
===================================================================
RCS file: /cvsroot/openacs-4/packages/dotlrn/tcl/community-procs.tcl,v
retrieving revision 1.191.2.23
retrieving revision 1.191.2.24
diff -u -r1.191.2.23 -r1.191.2.24
--- community-procs.tcl 3 Feb 2006 18:00:38 -0000       1.191.2.23
+++ community-procs.tcl 4 Mar 2006 19:56:47 -0000       1.191.2.24
@@ -2377,7 +2377,7 @@
        set dotlrn_package_id [dotlrn::get_package_id]
        set comm_site_template_id [db_string select_site_template_id {} -default "0"]
        if {[parameter::get -package_id $dotlrn_package_id -parameter AdminChangeSiteTemplate_p]} {
-           set site_template_id [get_site_template_id -community_id $community_id]
+               set site_template_id $comm_site_template_id
        } else {
            set site_template_id [parameter::get -package_id $dotlrn_package_id -parameter CommDefaultSiteTemplate_p]
            if {$site_template_id != $comm_site_template_id} {
Thanks Emma.

There was a problem with flushing the dotlrn*::get_site_template_id_not_cached *. I commited this fixes
last night. Now changing the defautl site template
from the dotlrn admin section works great for users
and communities.

And then the problem you mention with the recursive call to
get_site_template_id from get_site_template_id_not_cached.

Another thing related to this.
When you install the theme-selva package, it modifies
the 'DefaultMaster' parameter in the Main Subsite.
This brakes the changing site templates functionality.
My sugestion is to modify the install process of
selva in order to add it as a site template ( just like
Kelp and Sloan site templates , but we can talk about this
in the dotlrn chat meeting :).

Cheers,
Victor Guerra.

Hi Victor:

Thank you for fixing this.

About Selva, I've got it on my todo. I was waiting for the fix of site template to do it ;).

See you tonight.

Hi,

Support for site-template has been added to Theme-selva package and comitted to the repository in the oacs-5-2 branch. I provided upgrade scripts also and support for both postgresql and oracle.

Collapse
Posted by Victor Guerra on
Cool!! ;).
Thanks Emma
Collapse
Posted by Ben Koot on
Great, thanks a lot...

Only 3 minor comments.

1. Selva obscures the url to to developer admin. Could that be added to the main admin display, maybe below site wide admin?

2. Can these references to dotLRN at the bottom of the page be removed
.LRN Home | .LRN Project Central |
Selva theme theme | XHTML, CSS, RSS, 508. (btw, Selva still shows 14 rss errors according to that info).

3. In firefox, weblog display is messed up, http://www.timedeskblog.com/etn/blog/ I.e. the first 2 or postings are overlapping to the right.

cheers
Ben

Ben, please put these bugs in the openacs bug tracker so we can work on them in a structured fashion.

Re: 1. Please include a screenshot or be more specific, not sure what you mean.

Re: 2. It is not to be expected that html validate as rss. That shouldn't be an option if it not related to an RSS feed.

We should keep links to OpenACS/.LRN in the templates (to promote the project in search engines). Site admins should be able to change the site css to hide them from end users.

Re: 3. I think that is an issue in the css in lars-blogger

Collapse
Posted by Ben Koot on
The wrapping issue is solved. It turns out if you don't limit the number of postings in parameters the page will eventually fold up.

Re 2. I only made a note, because people not familiar with the reason for the reference to the validation might think we've overseen some errors. Maybe it's an idea to simply delete "XHTML, CSS, RSS, 508." and leave the selva theme info for pr purposes.

Re 1.

Acces to the "development admin section" is no longer available if you install Selva. I can't provide a screenshot, as I don't like to risk messing up my site by deinstalling Selva. All I am asking is for the(sitewide) developers URL to be added to the default admin section. If you don't have Selva, the developer URL is located in the top righthand corner of your page. With Selva, that URL is no longer shown.!

Cheers
Ben