[web] Make default template customization for level 0 users simpler
-------------------------------------------------------------------

                 Key: LABS-395
                 URL: https://issues.apache.org/jira/browse/LABS-395
             Project: Labs
          Issue Type: New Feature
          Components: Magma
    Affects Versions: Current
            Reporter: Simone Gianni
             Fix For: Next


Currently Magma offers quite a large degree of template customization.

A template is composed of a java class that aggregates contents and an HTML 
file that styles it (eventually with its css files and other resources).

Moreover, the templates must be "pushed into play" by using an aspect. Either a 
simple one installing the new template as the default one, or a more complex 
one using the specified template only under specific circumstances (like a 
certain part of the site).

Writing a java class and an aspect is beyond the user 0 abilities, and is 
generally a pain when people first arrive to Magma.

It would be quite simple to make it easier to customize the default template, 
given that each fragment adds (or will add) stuff to it by default.

Following steps may take place :
- CSS only customization
... creating a custom.css file, perform customization of the default template 
CSS
... creating a template.css file, overwrite default template CSS completely
- HTML and CSS customization
... creating a template.html file, overwrite the default template completely, 
meaning also different CSS files might be picked up
- JAVA customization
... creating a Template.java class, override the default template aggregation

Apparently the only missing thing is the aspect, in reality the thing goes a 
bit beyond that and relies on resource precedence.
- The DefaultTemplate should by default use a custom.css file if present, that 
way if the user provides it on the classpath it will override template settings.
- The template.html and template.css files currently used should be moved 
(together with the newly created custom.css) to a simpler place on the 
classpath, instead of org/apache/magma/website/template
- The getDefaultTemplate method should look for a Template class, again in a 
simpler "package", and use that instead of the DefaultTemplate if found.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to