Ignore:
Timestamp:
12 Jan 2012, 16:19:57 (13 years ago)
Author:
Henrik Bettermann
Message:

Merge Bootstrap branch into trunk.

Location:
main/waeup.sirp/trunk/src/waeup/sirp/browser
Files:
5 deleted
45 edited
3 copied

Legend:

Unmodified
Added
Removed
  • main/waeup.sirp/trunk/src/waeup/sirp/browser/batchprocessing.txt

    r7262 r7459  
    561561    True
    562562    >>> browser.getControl('Show', index=0).click()
    563     >>> '<input type="submit" name="back" value="Back" />' in browser.contents
     563    >>> '<input class="btn primary" type="submit" name="back" value="Back" />' in browser.contents
    564564    True
    565565    >>> browser.getControl('Back', index=0).click()
  • main/waeup.sirp/trunk/src/waeup/sirp/browser/browser.txt

    r7401 r7459  
    5454  >>> print browser.contents
    5555  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"...
    56   ...<li class="message">Your message has been sent.</li>
     56  ...Your message has been sent...
    5757  ...
    5858
     
    7777The edit form contains the default value for the portal skin::
    7878
    79   >>> 'waeuptheme-gray1.css' in browser.contents
     79  >>> 'waeup-base.css' in browser.contents
    8080  True
    8181
     
    8585  >>> print browser.contents
    8686  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"...
    87   ...<li class="message">Settings have been saved.</li>
     87  ...Settings have been saved...
    8888  ...
    8989
     
    9292  >>> print browser.contents
    9393  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"...
    94   ...<li class="message">Plugins were updated. See log file for details.</li>
     94  ...Plugins were updated. See log file for details...
    9595  ...
    9696
     
    118118  >>> print browser.contents
    119119  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"...
    120   ...manage portal users...
     120  ...Portal Users...
    121121  ...
    122122
     
    195195  >>> print browser.contents
    196196  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"...
    197   ...<li class="message">Your message has been sent.</li>
     197  ...Your message has been sent...
    198198  ...
    199199
     
    214214  >>> print browser.contents
    215215  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"...
    216   ...<span class="required">*</span>
     216  ...*...
    217217  ...<span>Name of faculty</span>:
    218218  ...
     
    371371  >>> print browser.contents
    372372  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"...
    373   ...<span class="required">*</span>
     373  ...*</span>
    374374  ...<span>Name of department</span>:
    375375  ...
     
    400400  >>> print browser.contents
    401401  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"...
    402   ...<li class="message">The code chosen already exists in this faculty.</li>
     402  ...The code chosen already exists in this faculty...
    403403  ...
    404404
     
    535535  >>> print browser.contents
    536536  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"...
    537   ...<span class="required">*</span>
     537  ...*</span>
    538538  ...<span>Title of course</span>:
    539539  ...
     
    574574  >>> print browser.contents
    575575  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"...
    576   ...<li class="message">A course with same code already exists:...</li>
     576  ...A course with same code already exists:...
    577577  ...
    578578
     
    746746  >>> print browser.contents
    747747  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"...
    748   ...<span class="required">*</span>
     748  ...*</span>
    749749  ...<span>Title</span>:
    750750  ...
     
    785785  >>> print browser.contents
    786786  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"...
    787   ...<li class="message">A certificate with same code already exists:...</li>
     787  ...A certificate with same code already exists:...
    788788  ...
    789789
     
    950950  >>> print browser.contents
    951951  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"...
    952   ...<span class="required">*</span>
     952  ...*</span>
    953953  ...<span>Level</span>:
    954954  ...
  • main/waeup.sirp/trunk/src/waeup/sirp/browser/layout.py

    r7364 r7459  
    3434from waeup.sirp.interfaces import ISIRPObject, IUserAccount
    3535from waeup.sirp.browser.interfaces import ITheme
    36 from waeup.sirp.browser.theming import get_all_themes, SIRPThemeGray1
     36from waeup.sirp.browser.theming import get_all_themes, SIRPThemeBase
    3737from waeup.sirp.students.interfaces import IStudentNavigation
    3838from waeup.sirp.applicants.interfaces import IApplicant
     
    5252default_primary_nav_template.__grok_name__ = 'default_primary_nav'
    5353
    54 class jsaction(grok.action):
     54class action(grok.action):
    5555
    5656    def __call__(self, success):
    57         action = JSAction(self.label, success=success, **self.options)
     57        action = SIRPAction(self.label, success=success, **self.options)
    5858        self.actions.append(action)
    5959        return action
    6060
    61 class JSAction(Action):
    62 
    63     msg = '\'Are you sure?\''
     61class SIRPAction(Action):
     62
     63    def __init__(self, label, style='', **options):
     64        super(SIRPAction, self).__init__(label, **options)
     65        self.style = style
    6466
    6567    def render(self):
     
    7072            label = zope.i18n.translate(self.label, context=self.form.request)
    7173        return ('<input type="submit" id="%s" name="%s" value="%s"'
    72                 ' class="button" onclick="return confirmPost(%s)" />' %
     74                ' class="btn %s"/>' %
     75                (self.__name__, self.__name__, escape(label, quote=True),
     76                self.style))
     77
     78class jsaction(grok.action):
     79
     80    def __call__(self, success):
     81        action = JSAction(self.label, success=success, **self.options)
     82        self.actions.append(action)
     83        return action
     84
     85class JSAction(Action):
     86
     87    msg = '\'Are you sure?\''
     88
     89    def render(self):
     90        if not self.available():
     91            return ''
     92        label = self.label
     93        if isinstance(label, Message):
     94            label = zope.i18n.translate(self.label, context=self.form.request)
     95        return ('<input type="submit" id="%s" name="%s" value="%s"'
     96                ' class="btn" onclick="return confirmPost(%s)" />' %
    7397                (self.__name__, self.__name__, escape(label, quote=True), self.msg)
    7498                )
     
    116140        return self.url(site, name)
    117141
    118     def flash(self, message, type='message'):
     142    def flash(self, message, type='alert-message warning'):
    119143        """Send a short message to the user.
    120144        """
     
    125149        return True
    126150
    127 class SIRPLayout(Layout, UtilityView):
     151class SIRPLayout(UtilityView,Layout):
    128152    """A megrok.layout.Layout with additional methods.
    129153    """
    130154    grok.baseclass()
    131155
    132 class SIRPForm(Form, UtilityView):
     156class SIRPForm(UtilityView,Form):
    133157    """A megrok.layout.Form with additional methods.
    134158    """
     
    137161    def setUpWidgets(self,ignore_request=False):
    138162        super(SIRPForm,self).setUpWidgets(ignore_request)
     163        # Width parameters will be overridden by Bootstrap
     164        # so we have to set the css class
    139165        if self.widgets.get('subject'):
    140             self.widgets['subject'].displayWidth = 45
     166            self.widgets['subject'].cssClass = 'span9'
    141167        if self.widgets.get('body'):
    142168            self.widgets['body'].height = 10
    143169        if self.widgets.get('body'):
    144             self.widgets['body'].width = 35
    145 
    146 class SIRPPage(Page):
     170            self.widgets['body'].cssClass = 'span9'
     171
     172class SIRPPage(UtilityView,Page):
    147173    """A megrok.layout page with additional methods.
    148174    """
    149175    grok.baseclass()
    150176
    151 class SIRPDisplayFormPage(DisplayForm, UtilityView):
     177class SIRPDisplayFormPage(UtilityView,DisplayForm):
    152178    """A megrok.layout.DisplayForm with additional methods.
    153179    """
     
    155181    template = default_waeup_display_template
    156182
    157 class SIRPEditFormPage(EditForm, UtilityView):
     183class SIRPEditFormPage(UtilityView,EditForm):
    158184    """A megrok.layout.EditForm with additional methods.
    159185    """
     
    163189    def setUpWidgets(self,ignore_request=False):
    164190        super(SIRPEditFormPage,self).setUpWidgets(ignore_request)
     191        for widget in self.widgets:
     192            if widget.__class__.__name__ == 'TextWidget':
     193                widget.cssClass = 'span8'
     194            elif widget.__class__.__name__ == 'IntWidget':
     195                widget.cssClass = 'span2'
     196        #import pdb; pdb.set_trace()
    165197        if self.widgets.get('title'):
    166             self.widgets['title'].displayWidth = 80
     198            self.widgets['title'].cssClass = 'span12'
    167199        if self.widgets.get('frontpage'):
    168             self.widgets['frontpage'].width = 70
     200            self.widgets['frontpage'].cssClass = 'span12'
    169201        if self.widgets.get('phone'):
    170             self.widgets['phone'].displayWidth = 13
     202            self.widgets['phone'].cssClass = 'span4'
    171203        if self.widgets.get('notice'):
    172204            self.widgets['notice'].height = 3
    173 
    174 class SIRPAddFormPage(AddForm,  UtilityView):
     205        if self.widgets.get('perm_address'):
     206            self.widgets['perm_address'].cssClass = 'span8'
     207            self.widgets['perm_address'].height = 10
     208
     209class SIRPAddFormPage(UtilityView,AddForm):
    175210    """A megrok.layout.AddForm with additional methods.
    176211    """
     
    184219
    185220    #: An instance of the default theme to use for the site layout
    186     default_theme = SIRPThemeGray1()
     221    default_theme = SIRPThemeBase()
    187222    stafftemp = grok.PageTemplateFile('templates/staffsitelayout.pt')
    188223    studenttemp = grok.PageTemplateFile('templates/studentsitelayout.pt')
     
    194229    def getAppTitle(self):
    195230        return getattr(grok.getSite()['configuration'], 'name', u'Sample University')
     231
     232    def getAppAcronym(self):
     233        return getattr(grok.getSite()['configuration'], 'acronym', u'Acronym')
    196234
    197235    def isAuthenticated(self):
  • main/waeup.sirp/trunk/src/waeup/sirp/browser/pages.py

    r7404 r7459  
    5959from waeup.sirp.authentication import get_principal_role_manager
    6060from waeup.sirp.utils.helpers import get_user_account
    61 from waeup.sirp.browser.layout import jsaction, JSAction
     61from waeup.sirp.browser.layout import jsaction, action
    6262
    6363grok.context(ISIRPObject)
     
    215215        return get_user_account(self.request)
    216216
    217     @grok.action('Send message now')
     217    @action('Send message now', style='primary')
    218218    def send(self, *args, **data):
    219219        fullname = self.request.principal.title
     
    244244                          'fullname', 'email_from', 'body')
    245245
    246     @grok.action('Send now')
     246    @action('Send now', style='primary')
    247247    def send(self, *args, **data):
    248248        sirp_utils = getUtility(ISIRPUtils)
     
    378378    title = 'Portal Users'
    379379
    380     @grok.action('Add user')
     380    @action('Add user', style='primary')
    381381    def addUser(self, **data):
    382382        name = data['name']
     
    426426        self.widgets['description'].height = 3
    427427
    428     @grok.action('Save')
     428    @action('Save', style='primary')
    429429    def save(self, **data):
    430430        form = self.request.form
     
    444444        return
    445445
    446     @grok.action('Cancel', validator=NullValidator)
     446    @action('Cancel', validator=NullValidator)
    447447    def cancel(self, **data):
    448448        self.redirect(self.url(self.context.__parent__))
     
    461461        return u'Send message to %s' % self.context.title
    462462
    463     @grok.action('Send message now')
     463    @action('Send message now', style='primary')
    464464    def send(self, *args, **data):
    465465        try:
     
    596596        return super(ConfigurationContainerManageFormPage, self).update()
    597597
    598     @grok.action('Save')
     598    @action('Save', style='primary')
    599599    def save(self, **data):
    600600        self.applyData(self.context, **data)
     
    602602        return
    603603
    604     @grok.action('Add session configuration', validator=NullValidator)
     604    @action('Add session configuration', validator=NullValidator, style='primary')
    605605    def addSubunit(self, **data):
    606606        self.redirect(self.url(self.context, '@@add'))
     
    621621        return
    622622
    623     @grok.action('Update plugins', validator=NullValidator)
     623    @action('Update plugins', validator=NullValidator)
    624624    def updatePlugins(self, **data):
    625625        grok.getSite().updatePlugins()
     
    638638    pnav = 0
    639639
    640     @grok.action('Add Session Configuration')
     640    @action('Add Session Configuration', style='primary')
    641641    def addSessionConfiguration(self, **data):
    642642        sessionconfiguration = createObject(u'waeup.SessionConfiguration')
     
    650650        return
    651651
    652     @grok.action('Cancel', validator=NullValidator)
     652    @action('Cancel', validator=NullValidator)
    653653    def cancel(self):
    654654        self.redirect(self.url(self.context, '@@index')+'#tab-2')
     
    674674        return 'Edit academic session %s configuration' % session_string
    675675
    676     @grok.action('Save')
     676    @action('Save', style='primary')
    677677    def save(self, **data):
    678678        self.applyData(self.context, **data)
     
    681681        return
    682682
    683     @grok.action('Cancel', validator=NullValidator)
     683    @action('Cancel', validator=NullValidator)
    684684    def cancel(self):
    685685        self.redirect(self.url(self.context.__parent__, '@@index')+'#tab-2')
     
    12101210        return
    12111211
    1212     @grok.action('Add faculty', validator=NullValidator)
     1212    @action('Add faculty', validator=NullValidator)
    12131213    def addFaculty(self, **data):
    12141214        self.redirect(self.url(self.context, '@@add'))
    12151215        return
    12161216
    1217     @grok.action('Cancel', validator=NullValidator)
     1217    @action('Cancel', validator=NullValidator)
    12181218    def cancel(self, **data):
    12191219        self.redirect(self.url(self.context))
     
    12321232    pnav = 1
    12331233
    1234     @grok.action('Add faculty')
     1234    @action('Add faculty', style='primary')
    12351235    def addFaculty(self, **data):
    12361236        faculty = createObject(u'waeup.Faculty')
     
    12431243        self.redirect(self.url(self.context, u'@@manage')+'#tab-1')
    12441244
    1245     @grok.action('Cancel')
     1245    @action('Cancel')
    12461246    def cancel(self, **data):
    12471247        self.redirect(self.url(self.context))
     
    13151315        return
    13161316
    1317     @grok.action('Save')
     1317    @action('Save', style='primary')
    13181318    def save(self, **data):
    13191319        self.applyData(self.context, **data)
    13201320        return
    13211321
    1322     @grok.action('Cancel', validator=NullValidator)
     1322    @action('Cancel', validator=NullValidator)
    13231323    def cancel(self, **data):
    13241324        self.redirect(self.url(self.context))
    13251325        return
    13261326
    1327     @grok.action('Add department', validator=NullValidator)
     1327    @action('Add department', validator=NullValidator)
    13281328    def addSubunit(self, **data):
    13291329        self.redirect(self.url(self.context, '@@add'))
    13301330        return
    13311331
    1332     @grok.action('Add local role', validator=NullValidator)
     1332    @action('Add local role', validator=NullValidator)
    13331333    def addLocalRole(self, **data):
    13341334        return add_local_role(self, '3', **data)
    13351335
    1336     @grok.action('Remove selected local roles')
     1336    @action('Remove selected local roles')
    13371337    def delLocalRoles(self, **data):
    13381338        return del_local_roles(self,3,**data)
     
    13521352        return self.context.longtitle()
    13531353
    1354     @grok.action('Add department')
     1354    @action('Add department', style='primary')
    13551355    def addDepartment(self, **data):
    13561356        department = createObject(u'waeup.Department')
     
    13641364        self.redirect(self.url(self.context, u'@@manage')+'#tab-2')
    13651365
    1366     @grok.action('Cancel')
     1366    @action('Cancel')
    13671367    def cancel(self, **data):
    13681368        self.redirect(self.url(self.context))
     
    15031503        return get_users_with_local_roles(self.context)
    15041504
    1505     @grok.action('Save')
     1505    @action('Save', style='primary')
    15061506    def save(self, **data):
    15071507        self.applyData(self.context, **data)
     
    15201520        return
    15211521
    1522     @grok.action('Add course', validator=NullValidator)
     1522    @action('Add course', validator=NullValidator)
    15231523    def addCourse(self, **data):
    15241524        self.redirect(self.url(self.context, 'addcourse'))
    15251525        return
    15261526
    1527     @grok.action('Add certificate', validator=NullValidator)
     1527    @action('Add certificate', validator=NullValidator)
    15281528    def addCertificate(self, **data):
    15291529        self.redirect(self.url(self.context, 'addcertificate'))
    15301530        return
    15311531
    1532     @grok.action('Cancel', validator=NullValidator)
     1532    @action('Cancel', validator=NullValidator)
    15331533    def cancel(self, **data):
    15341534        self.redirect(self.url(self.context))
    15351535        return
    15361536
    1537     @grok.action('Add local role', validator=NullValidator)
     1537    @action('Add local role', validator=NullValidator)
    15381538    def addLocalRole(self, **data):
    15391539        return add_local_role(self, 4, **data)
    15401540
    1541     @grok.action('Remove selected local roles')
     1541    @action('Remove selected local roles')
    15421542    def delLocalRoles(self, **data):
    15431543        return del_local_roles(self,4,**data)
     
    15571557        return self.context.longtitle()
    15581558
    1559     @grok.action('Add course')
     1559    @action('Add course')
    15601560    def addCourse(self, **data):
    15611561        course = createObject(u'waeup.Course')
     
    15791579        self.redirect(self.url(self.context, u'@@manage')+'#tab-2')
    15801580
    1581     @grok.action('Cancel', validator=NullValidator)
     1581    @action('Cancel', validator=NullValidator)
    15821582    def cancel(self, **data):
    15831583        self.redirect(self.url(self.context))
     
    15981598        return self.context.longtitle()
    15991599
    1600     @grok.action('Add certificate')
     1600    @action('Add certificate')
    16011601    def addCertificate(self, **data):
    16021602        certificate = createObject(u'waeup.Certificate')
     
    16211621        return
    16221622
    1623     @grok.action('Cancel', validator=NullValidator)
     1623    @action('Cancel', validator=NullValidator)
    16241624    def cancel(self): #, **data):
    16251625        self.redirect(self.url(self.context))
     
    16571657        return 'Course: %s (%s)' % (self.context.title, self.context.code)
    16581658
    1659     @grok.action('Save')
     1659    @action('Save', style='primary')
    16601660    def save(self, **data):
    16611661        self.applyData(self.context, **data)
    16621662        return
    16631663
    1664     @grok.action('Save and return')
     1664    @action('Save and return')
    16651665    def saveAndReturn(self, **data):
    16661666        self.applyData(self.context, **data)
     
    16681668        return
    16691669
    1670     @grok.action('Cancel', validator=NullValidator)
     1670    @action('Cancel', validator=NullValidator)
    16711671    def cancel(self, **data):
    16721672        self.redirect(self.url(self.context))
     
    17311731    form_fields = grok.AutoFields(ICertificate)
    17321732
    1733     @grok.action('Save')
     1733    @action('Save', style='primary')
    17341734    def save(self, **data):
    17351735        self.applyData(self.context, **data)
     
    17411741        return
    17421742
    1743     @grok.action('Add course referrer', validator=NullValidator)
     1743    @action('Add course referrer', validator=NullValidator)
    17441744    def addCertificateCourse(self, **data):
    17451745        self.redirect(self.url(self.context, 'addcertificatecourse'))
    17461746        return
    17471747
    1748     @grok.action('Cancel', validator=NullValidator)
     1748    @action('Cancel', validator=NullValidator)
    17491749    def cancel(self, **data):
    17501750        self.redirect(self.url(self.context))
     
    17651765        return get_users_with_local_roles(self.context)
    17661766
    1767     @grok.action('Add local role', validator=NullValidator)
     1767    @action('Add local role', validator=NullValidator)
    17681768    def addLocalRole(self, **data):
    17691769        return add_local_role(self, 3, **data)
    17701770
    1771     @grok.action('Remove selected local roles')
     1771    @action('Remove selected local roles')
    17721772    def delLocalRoles(self, **data):
    17731773        return del_local_roles(self,3,**data)
     
    17881788        return "Certificate: %s (%s)" % (self.context.title, self.context.code)
    17891789
    1790     @grok.action('Add course referrer')
     1790    @action('Add course referrer')
    17911791    def addCertcourse(self, **data):
    17921792        try:
     
    17981798        self.redirect(self.url(self.context, u'@@manage')+'#tab-2')
    17991799
    1800     @grok.action('Cancel', validator=NullValidator)
     1800    @action('Cancel', validator=NullValidator)
    18011801    def cancel(self, **data):
    18021802        self.redirect(self.url(self.context))
     
    18381838        return 'Course Referrer: %s' % (self.context.__name__)
    18391839
    1840     @grok.action('Save and return')
     1840    @action('Save and return')
    18411841    def saveAndReturn(self, **data):
    18421842        parent = self.context.__parent__
     
    18531853        return
    18541854
    1855     @grok.action('Cancel', validator=NullValidator)
     1855    @action('Cancel', validator=NullValidator)
    18561856    def cancel(self, **data):
    18571857        self.redirect(self.url(self.context))
  • main/waeup.sirp/trunk/src/waeup/sirp/browser/resources.py

    r7328 r7459  
    140140toggleall = ResourceInclusion(waeup_sirp, 'toggleall.js')
    141141
    142 #: A resource that binds jQueryUI tabs to <div> tags with class
     142#: A resource that binds Bootstrap tabs to <div> tags with class
    143143#: ``tabs``.
    144144#:
    145 #: If you want jQuery tabs for some <div>s in your page then you
     145#: If you want Bootstrap tabs in your page then you
    146146#: have to perform two steps:
    147147#:
     
    159159#:   into the HTML page generated.
    160160#:
    161 #: * In your HTML code add some ``<div>`` tag with ``class`` set to
    162 #:   ``tabs``, like this:
     161#: * In your HTML code add some tags with like this:
    163162#:
    164163#:    .. code-block:: html
    165 #:
    166 #:      <div id="tabs">
    167 #:        <ul>
    168 #:          <li><a href="#tab-1"><span>Tab 1 Heading</span></a></li>
    169 #:          <li><a href="#tab-2"><span>Tab 2 Heading</span></a></li>
    170 #:        </ul>
    171 #:        <div id="tab-1">
    172 #:          Content of tab 1
    173 #:        </div>
    174 #:        <div id="tab-2">
    175 #:          Content of tab 2
    176 #:        </div>
    177 #:      </div>
     164
     165#:     <ul class="tabs" data-tabs="tabs" >
     166#:       <li class="active"><a href="#tab-1">Tab 1 Heading</a></li>
     167#:       <li><a href="#tab-2">Tab 2 Heading</a></li>
     168#:       <li><a href="#tab-3">Tab 3 Heading</a></li>
     169#:     </ul>
     170
     171#:     <div class="tab-content">
     172#:       <div id="tab-1" class="active">...</div>
     173#:       <div id="tab-2">...</div>
     174#:       <div id="tab-3">...</div>
     175#:     </div>
    178176#:
    179177#: When the HTML is rendered, clicking into one of the tabs will make
    180178#: other <div>s disappear. See
    181179#:
    182 #:   http://jqueryui.com/demos/tabs/
     180#:   http://twitter.github.com/bootstrap/javascript.html#tabs
    183181#:
    184182#: for details.
    185183#:
    186 tabs = ResourceInclusion(waeup_sirp, 'tabs.js',
    187                          depends=[jquery, jqueryui])
     184tabs = ResourceInclusion(waeup_sirp, 'bootstrap-tabs-1.4.0.js',
     185                          depends=[jquery])
     186
    188187
    189188#: Resource that makes datatables for jQuery UI available.
     
    249248                              depends=[datatables, datatables_css])
    250249
    251 #: Register basic YUI based CSS as a resource.
    252 reset_fonts_grids = ResourceInclusion(
    253     waeup_sirp, 'yuirfg.css')
    254 
    255 yuiapp_css = ResourceInclusion(
    256     waeup_sirp, 'yuiapp.css',
    257     depends=[reset_fonts_grids])
    258 
    259 #: Register basic SIRP base CSS (which is based on ``yuiapp.css`` as a
    260 #: resource.
     250#: Register Twitter's Bootsrap css including dropdown js as a resource.
     251bootstrap_min = ResourceInclusion(
     252    waeup_sirp, 'bootstrap.min-1.4.0.css')
     253
     254dropdown = ResourceInclusion(
     255    waeup_sirp, 'bootstrap-dropdown-1.4.0.js',
     256    depends=[jquery])
     257
     258#: Register basic SIRP CSS (which is based on ``bootstrap.min-1.4.0.css``
     259#: and ``base`` as a resource.
    261260waeup_base_css = ResourceInclusion(
    262261    waeup_sirp, 'waeup-base.css',
    263     depends=[yuiapp_css, base])
    264 
    265 #: The red SIRP theme registered as a resource.
    266 waeuptheme_red1 = ResourceInclusion(
    267     waeup_sirp, 'waeuptheme-red1.css',
    268     depends=[waeup_base_css])
    269 
    270 #: The gray SIRP theme registered as a resource.
    271 waeuptheme_gray1 = ResourceInclusion(
    272     waeup_sirp, 'waeuptheme-gray1.css',
    273     depends=[waeup_base_css])
     262    depends=[dropdown,bootstrap_min, base])
    274263
    275264#: A basic theme based on jQuery only (crappy yet).
  • main/waeup.sirp/trunk/src/waeup/sirp/browser/static/mobile.css

    r6690 r7459  
    1 #primary-navigation li a {
    2   font-size:100%;
    3   padding-bottom: 0.5em;
    4   padding-left: 0.5em;
    5   padding-right: 0.5em;
    6   padding-top: 0.5em;
     1.container {
     2  width: 480px;
    73}
    84
    9 #user-navigation li a {
    10   font-size: 86%;
    11   padding-bottom: 0.5em;
    12   padding-left: 0.5em;
    13   padding-right: 0.5em;
    14   padding-top: 0.8em;
     5body {
     6  padding-top: 60px;
    157}
    168
    17 #hd {
    18   padding-left:0.3em;
    19   padding-right:0.3em;
     9select {
     10  width: 60px;
    2011}
    2112
    22 #bd {
    23   padding:0.6em;
     13.dataTables_length {
     14    float: left;
     15    width: 40%;
    2416}
     17
     18.dataTables_filter {
     19    float: right;
     20    text-align: right;
     21    width: 60%;
     22}
  • main/waeup.sirp/trunk/src/waeup/sirp/browser/static/waeup-base.css

    r7321 r7459  
    11/* This is the base stylesheet for SIRP. It defines base styles
    2 additionally or modifying yuiapp.css styles and yuirfg.css. For themes, please create
     2additionally or modifying Bootstrap styles. For themes, please create
    33a stylesheet overriding values set here in a file named
    44'waeuptheme-<SOME-NAME>.css' and include a utility and a resource in theming.py
    55and resources.py respectively. */
    66
    7 #hd { background-color:#003366; }
    8 .block .hd { background-color:#003366; color:#fff; border-bottom:10px solid #262626; }
    9 .block .bd h1 { font-size:153.9%; color:green; margin-bottom:0.5em;}
    10 .block .bd h2 { font-size:153.9%; color:#003366; margin-bottom:0.5em;}
    11 .block .bd h3 { font-size:130%; color:#003366; margin-bottom:0.5em;}
    12 .spaces .hd { background-color:transparent; }
    13 .spaces .hd ul li { background-color:#003366; }
    14 a { color:#003366; }
    15 .tabs .hd ul li a:hover { background-color:#8d0399; }
     7/* bootstrap.min customizations */
    168
    17 /***** Henrik Stuff *****/
    18 
    19 .breadcrumbs {
    20   background-color: #fff;
    21   padding: 3px;
    22   margin-bottom: 1.3em
     9body {
     10  padding-top: 56px;
     11  background-color: #EEEEEE;
    2312}
    2413
    25 a, table td a {
    26   text-decoration: none;
     14.container-fluid>.sidebar {
     15  width: 165px;
    2716}
    2817
    29 a:hover {
    30   text-decoration: underline;
     18.container-fluid > .content {
     19  margin-left: 180px;
     20}
     21
     22.well {
     23  border: 0px;
     24  background-color: #FFFFFF;
     25  padding-bottom: 12px;
     26  padding-left: 12px;
     27  padding-right: 12px;
     28  padding-top: 12px;
     29}
     30
     31.content {
     32  background-color: #FFFFFF;
     33  margin-left: -20px;
     34  margin-right: -20px;
     35  padding-bottom: 16px;
     36  padding-left: 20px;
     37  padding-right: 20px;
     38  padding-top: 16px;
     39  border-top-left-radius: 3px;
     40  border-top-right-radius: 3px;
     41}
     42
     43.container {
     44  width: 700px;
     45}
     46
     47h2 {
     48  margin-bottom: 12px;
     49}
     50
     51.breadcrumb {
     52  margin-left: 20px;
     53  margin-right: 20px;
     54  margin-bottom: 14px;
     55  padding-left: 20px;
     56  padding-right: 20px;
     57  width: 940px;
     58  background-color: #FFFFFF;
     59  background-image: None;
     60  border: 0px;
     61  border-top-left-radius: 3px;
     62  border-top-right-radius: 3px;
     63  border-bottom-left-radius: 3px;
     64  border-bottom-right-radius: 3px;
     65}
     66
     67
     68select {
     69  width: 180px;
     70}
     71
     72 /* IE doesn't like the footer tag*/
     73.footer {
     74  padding-top: 17px;
     75  border-top: 1px solid #eee;
     76  margin-top: 50px;
     77}
     78
     79 /* dataTables stuff */
     80
     81.dataTables_wrapper {
     82  min-height: 50px;
     83  margin-bottom: 50px;
     84}
     85
     86.dataTables_filter {
     87  margin-bottom: 20px;
     88}
     89
     90 /* SIRP stuff */
     91
     92.actionbar {
     93  margin-bottom: 16px;
     94}
     95
     96.error {
     97  color: red;
     98}
     99
     100.form-table {
     101  width: 100%;
     102}
     103
     104.form-table td {
     105  padding: 5px 5px 4px;
     106  border-top: none;
     107}
     108
     109.fieldname {
     110  width: 25%;
    31111}
    32112
     
    38118  padding: 4px;
    39119  margin-bottom: 8px;
     120  line-height: 16px;
    40121}
    41122
    42 .form-status {
    43     border:1px solid #fbb;
    44     background-color:#fdd;
    45     text-align:center;
    46     padding: 2px;
     123.student-info-bar{
     124  padding: 7px 14px;
     125  margin-left: -20px;
     126  margin-right: -20px;
     127  margin-bottom: 14px;
     128  padding-left: 20px;
     129  padding-right: 20px;
     130  width: 700px;
     131  background-color: #FFFFFF;
     132  background-image: None;
     133  border: 0px;
     134  border-top-left-radius: 3px;
     135  border-top-right-radius: 3px;
     136  border-bottom-left-radius: 3px;
     137  border-bottom-right-radius: 3px;
    47138}
    48139
    49 .hint {
    50     color: #CD0A0A;
    51     padding-left: 4px;
     140.student-info-bar li {
     141  display: inline;
     142  text-shadow: 0 1px 0 #ffffff;
    52143}
    53 
    54 
    55 .block {
    56     margin-bottom: 0.5em;
     144.student-info-bar .divider {
     145  padding: 0 5px;
     146  color: #bfbfbf;
    57147}
    58 
    59 .block .bd {
    60     padding-bottom: 1em;
     148.student-info-bar .active a {
     149  color: #404040;
    61150}
    62 
    63 .actionButtons {
    64     padding-top: 1em;
    65 }
    66 
    67151.wfstatus {
    68152  float: right;
     153  line-height: 18px;
    69154}
    70 
    71 .studentmenu {
    72   text-align: left;
    73   line-height: 2;
    74 }
    75 
    76 .error {
    77   border:0px
    78 }
    79 
    80 /* Define different styles for headlines in rendered restructured text */
    81 
    82 #rest h1 {
    83   font-size:130%;
    84 }
    85 
    86 #rest h2 {
    87   font-size:100%;
    88 }
    89 
    90 #rest h3 {
    91   font-size:100%;
    92 }
    93 
    94 
    95 #rest h4 {
    96   font-size:100%;
    97 }
    98 
    99 /* jquery-ui customizations */
    100 
    101 .ui-corner-all, .ui-corner-top {
    102   -moz-border-radius-bottomleft: 0px;
    103   -moz-border-radius-bottomright: 0px;
    104   -moz-border-radius-topleft: 7px;
    105   -moz-border-radius-topright: 7px;
    106 }
    107 
    108 .ui-widget {
    109   font-family: Verdana,Arial,sans-serif;
    110   font-size: 100%;
    111 }
    112 
    113 .ui-tabs .ui-tabs-nav li a:hover {
    114   text-decoration: underline;
    115 }
    116 
    117 .dataTables_wrapper {
    118   min-height: 100px;
    119 }
    120 
    121 .dataTables_info {
    122   padding-top: 15px;
    123   float: None;
    124 }
    125 
    126 .dataTables_paginate {
    127   padding-top: 15px;
    128 }
    129 
    130 
    131 /***** Uli Stuff *****/
    132 
    133 /* Make YUI button icons appear vertically centered... */
    134 .yui-skin-sam .yui-button a img {
    135   vertical-align: middle;
    136   margin-right: 3px;
    137   margin-top: -1px;
    138   margin-left: -2px;
    139 }
    140 
    141 /* Fix logo image height: as image is taller than h1 text, header area
    142    explodes otherwise */
    143 #logo img {
    144   margin-top: -45px;
    145   position: relative;
    146   top: 12px;
    147 }
    148 
    149 .actionbar {
    150   margin-top: -18px;
    151   margin-bottom: 18px;
    152 }
    153 
    154 /* Form labels */
    155 form label, form label span {
    156   color: #333;
    157   font-weight: bold;
    158   font-size: 100%;
    159 }
    160 
    161 /* Fixes to let tables appear correctly... */
    162 table, tr, th, td {font-family: arial,sans-serif;}
    163 
    164 /* Odd and even table rows */
    165 tr.even,
    166 .yui-skin-sam tr.yui-dt-even {
    167   background-color: #fff;
    168 }
    169 tr.odd,
    170 .yui-skin-sam tr.yui-dt-odd {
    171   background-color: #eee;
    172 }
    173 
    174 /* unselected paginator page numbers */
    175 .yui-skin-sam .yui-pg-pages a.yui-pg-page {
    176   background-color: #fff;
    177   color: #000;
    178   text-decoration: none;
    179   border: 1px solid #000;
    180   padding-left: 5px;
    181 }
    182 
    183 /* selected paginator page, hover for unselected pages */
    184 .yui-skin-sam .yui-pg-pages a.yui-pg-page:hover,
    185 .yui-skin-sam span.yui-pg-page {
    186   background-color: #000;
    187   color: #fff;
    188 }
    189 
    190 /* paginator prev, next, etc. links */
    191 .yui-skin-sam .yui-dt .yui-dt-paginator a.yui-pg-first,
    192 .yui-skin-sam .yui-dt .yui-dt-paginator a.yui-pg-previous,
    193 .yui-skin-sam .yui-dt .yui-dt-paginator a.yui-pg-last,
    194 .yui-skin-sam .yui-dt .yui-dt-paginator a.yui-pg-next {
    195   color: #000;
    196   text-decoration: none;
    197   background-color: #fff;
    198 }
    199 
    200 /* Header row */
    201 th .yui-dt-liner {
    202   color: #fff;
    203   background: #000 url();
    204 }
    205 
    206 /* Header cells text, when not selected */
    207 .yui-skin-sam .yui-dt th, .yui-skin-sam .yui-dt th a {
    208   font-weight: bold;
    209   color: #fff;
    210 }
    211 
    212 /* Sortable header cells, when selected */
    213 .yui-skin-sam th.yui-dt-desc .yui-dt-liner .yui-dt-sortable,
    214 .yui-skin-sam th.yui-dt-asc .yui-dt-liner .yui-dt-sortable {
    215   color: #000;
    216 }
    217 
    218 /* Action buttons */
    219 
    220 .yui-button {
    221         display: -moz-inline-box;
    222         display: inline-block;
    223         vertical-align: text-bottom;
    224 }
    225 .yui-button .first-child {
    226         display: block;
    227         *display: inline-block;
    228 }
    229 .yui-button button, .yui-button a {
    230         display: block;
    231         *display: inline-block;
    232         border: none;
    233         margin: 0;
    234 }
    235 .yui-button button {
    236         background-color: transparent;
    237         *overflow: visible;
    238         cursor: pointer;
    239 }
    240 .yui-button a {
    241         text-decoration: none;
    242 }
    243 .yui-skin-sam .yui-button {
    244         border-width: 1px 0;
    245         border-style: solid;
    246         border-color: #808080;
    247         background: url(sprite.png) repeat-x 0 0;
    248         margin: auto .25em;
    249 }
    250 .yui-skin-sam .yui-button .first-child {
    251         border-width: 0 1px;
    252         border-style: solid;
    253         border-color: #808080;
    254         margin: 0 -1px;
    255         _margin: 0;
    256 }
    257 .yui-skin-sam .yui-button button, .yui-skin-sam .yui-button a {
    258         padding: 0 10px;
    259         font-size: 93%;
    260         line-height: 2;
    261         *line-height: 1.7;
    262         min-height: 2em;
    263         *min-height: auto;
    264         color: #000;
    265 }
    266 .yui-skin-sam .yui-button a {
    267         *line-height: 1.875;
    268         *padding-bottom: 1px;
    269 }
    270 
    271 
    272 /* The follwing is stolen from jquery... */
    273 
    274 /* Interaction Cues
    275 ----------------------------------*/
    276 .ui-state-disabled { cursor: default !important; }
    277 
    278 
    279 /* Icons
    280 ----------------------------------*/
    281 
    282 /* states and images */
    283 .ui-icon { display: block;
    284            text-indent: -99999px; overflow: hidden;
    285            background-repeat: no-repeat; }
    286 
    287 /* states and images */
    288 .ui-icon { width: 16px; height: 16px; background-image: url(ui-icons_222222_256x240.png); }
    289 .ui-widget-content .ui-icon {background-image: url(ui-icons_222222_256x240.png); }
    290 .ui-widget-header .ui-icon {background-image: url(ui-icons_ffffff_256x240.png); }
    291 .ui-state-default .ui-icon { background-image: url(ui-icons_ef8c08_256x240.png); }
    292 .ui-state-hover .ui-icon, .ui-state-focus .ui-icon {background-image: url(ui-icons_ef8c08_256x240.png); }
    293 .ui-state-active .ui-icon {background-image: url(ui-icons_ef8c08_256x240.png); }
    294 .ui-state-highlight .ui-icon {background-image: url(ui-icons_228ef1_256x240.png); }
    295 .ui-state-error .ui-icon, .ui-state-error-text .ui-icon {background-image: url(ui-icons_e73434_256x240.png); }
    296 
    297 /* positioning */
    298 .ui-icon-carat-1-n { background-position: 0 0; }
    299 .ui-icon-carat-1-ne { background-position: -16px 0; }
    300 .ui-icon-carat-1-e { background-position: -32px 0; }
    301 .ui-icon-carat-1-se { background-position: -48px 0; }
    302 .ui-icon-carat-1-s { background-position: -64px 0; }
    303 .ui-icon-carat-1-sw { background-position: -80px 0; }
    304 .ui-icon-carat-1-w { background-position: -96px 0; }
    305 .ui-icon-carat-1-nw { background-position: -112px 0; }
    306 .ui-icon-carat-2-n-s { background-position: -128px 0; }
    307 .ui-icon-carat-2-e-w { background-position: -144px 0; }
    308 .ui-icon-triangle-1-n { background-position: 0 -16px; }
    309 .ui-icon-triangle-1-ne { background-position: -16px -16px; }
    310 .ui-icon-triangle-1-e { background-position: -32px -16px; }
    311 .ui-icon-triangle-1-se { background-position: -48px -16px; }
    312 .ui-icon-triangle-1-s { background-position: -64px -16px; }
    313 .ui-icon-triangle-1-sw { background-position: -80px -16px; }
    314 .ui-icon-triangle-1-w { background-position: -96px -16px; }
    315 .ui-icon-triangle-1-nw { background-position: -112px -16px; }
    316 .ui-icon-triangle-2-n-s { background-position: -128px -16px; }
    317 .ui-icon-triangle-2-e-w { background-position: -144px -16px; }
    318 .ui-icon-arrow-1-n { background-position: 0 -32px; }
    319 .ui-icon-arrow-1-ne { background-position: -16px -32px; }
    320 .ui-icon-arrow-1-e { background-position: -32px -32px; }
    321 .ui-icon-arrow-1-se { background-position: -48px -32px; }
    322 .ui-icon-arrow-1-s { background-position: -64px -32px; }
    323 .ui-icon-arrow-1-sw { background-position: -80px -32px; }
    324 .ui-icon-arrow-1-w { background-position: -96px -32px; }
    325 .ui-icon-arrow-1-nw { background-position: -112px -32px; }
    326 .ui-icon-arrow-2-n-s { background-position: -128px -32px; }
    327 .ui-icon-arrow-2-ne-sw { background-position: -144px -32px; }
    328 .ui-icon-arrow-2-e-w { background-position: -160px -32px; }
    329 .ui-icon-arrow-2-se-nw { background-position: -176px -32px; }
    330 .ui-icon-arrowstop-1-n { background-position: -192px -32px; }
    331 .ui-icon-arrowstop-1-e { background-position: -208px -32px; }
    332 .ui-icon-arrowstop-1-s { background-position: -224px -32px; }
    333 .ui-icon-arrowstop-1-w { background-position: -240px -32px; }
    334 .ui-icon-arrowthick-1-n { background-position: 0 -48px; }
    335 .ui-icon-arrowthick-1-ne { background-position: -16px -48px; }
    336 .ui-icon-arrowthick-1-e { background-position: -32px -48px; }
    337 .ui-icon-arrowthick-1-se { background-position: -48px -48px; }
    338 .ui-icon-arrowthick-1-s { background-position: -64px -48px; }
    339 .ui-icon-arrowthick-1-sw { background-position: -80px -48px; }
    340 .ui-icon-arrowthick-1-w { background-position: -96px -48px; }
    341 .ui-icon-arrowthick-1-nw { background-position: -112px -48px; }
    342 .ui-icon-arrowthick-2-n-s { background-position: -128px -48px; }
    343 .ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; }
    344 .ui-icon-arrowthick-2-e-w { background-position: -160px -48px; }
    345 .ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; }
    346 .ui-icon-arrowthickstop-1-n { background-position: -192px -48px; }
    347 .ui-icon-arrowthickstop-1-e { background-position: -208px -48px; }
    348 .ui-icon-arrowthickstop-1-s { background-position: -224px -48px; }
    349 .ui-icon-arrowthickstop-1-w { background-position: -240px -48px; }
    350 .ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; }
    351 .ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; }
    352 .ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; }
    353 .ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; }
    354 .ui-icon-arrowreturn-1-w { background-position: -64px -64px; }
    355 .ui-icon-arrowreturn-1-n { background-position: -80px -64px; }
    356 .ui-icon-arrowreturn-1-e { background-position: -96px -64px; }
    357 .ui-icon-arrowreturn-1-s { background-position: -112px -64px; }
    358 .ui-icon-arrowrefresh-1-w { background-position: -128px -64px; }
    359 .ui-icon-arrowrefresh-1-n { background-position: -144px -64px; }
    360 .ui-icon-arrowrefresh-1-e { background-position: -160px -64px; }
    361 .ui-icon-arrowrefresh-1-s { background-position: -176px -64px; }
    362 .ui-icon-arrow-4 { background-position: 0 -80px; }
    363 .ui-icon-arrow-4-diag { background-position: -16px -80px; }
    364 .ui-icon-extlink { background-position: -32px -80px; }
    365 .ui-icon-newwin { background-position: -48px -80px; }
    366 .ui-icon-refresh { background-position: -64px -80px; }
    367 .ui-icon-shuffle { background-position: -80px -80px; }
    368 .ui-icon-transfer-e-w { background-position: -96px -80px; }
    369 .ui-icon-transferthick-e-w { background-position: -112px -80px; }
    370 .ui-icon-folder-collapsed { background-position: 0 -96px; }
    371 .ui-icon-folder-open { background-position: -16px -96px; }
    372 .ui-icon-document { background-position: -32px -96px; }
    373 .ui-icon-document-b { background-position: -48px -96px; }
    374 .ui-icon-note { background-position: -64px -96px; }
    375 .ui-icon-mail-closed { background-position: -80px -96px; }
    376 .ui-icon-mail-open { background-position: -96px -96px; }
    377 .ui-icon-suitcase { background-position: -112px -96px; }
    378 .ui-icon-comment { background-position: -128px -96px; }
    379 .ui-icon-person { background-position: -144px -96px; }
    380 .ui-icon-print { background-position: -160px -96px; }
    381 .ui-icon-trash { background-position: -176px -96px; }
    382 .ui-icon-locked { background-position: -192px -96px; }
    383 .ui-icon-unlocked { background-position: -208px -96px; }
    384 .ui-icon-bookmark { background-position: -224px -96px; }
    385 .ui-icon-tag { background-position: -240px -96px; }
    386 .ui-icon-home { background-position: 0 -112px; }
    387 .ui-icon-flag { background-position: -16px -112px; }
    388 .ui-icon-calendar { background-position: -32px -112px; }
    389 .ui-icon-cart { background-position: -48px -112px; }
    390 .ui-icon-pencil { background-position: -64px -112px; }
    391 .ui-icon-clock { background-position: -80px -112px; }
    392 .ui-icon-disk { background-position: -96px -112px; }
    393 .ui-icon-calculator { background-position: -112px -112px; }
    394 .ui-icon-zoomin { background-position: -128px -112px; }
    395 .ui-icon-zoomout { background-position: -144px -112px; }
    396 .ui-icon-search { background-position: -160px -112px; }
    397 .ui-icon-wrench { background-position: -176px -112px; }
    398 .ui-icon-gear { background-position: -192px -112px; }
    399 .ui-icon-heart { background-position: -208px -112px; }
    400 .ui-icon-star { background-position: -224px -112px; }
    401 .ui-icon-link { background-position: -240px -112px; }
    402 .ui-icon-cancel { background-position: 0 -128px; }
    403 .ui-icon-plus { background-position: -16px -128px; }
    404 .ui-icon-plusthick { background-position: -32px -128px; }
    405 .ui-icon-minus { background-position: -48px -128px; }
    406 .ui-icon-minusthick { background-position: -64px -128px; }
    407 .ui-icon-close { background-position: -80px -128px; }
    408 .ui-icon-closethick { background-position: -96px -128px; }
    409 .ui-icon-key { background-position: -112px -128px; }
    410 .ui-icon-lightbulb { background-position: -128px -128px; }
    411 .ui-icon-scissors { background-position: -144px -128px; }
    412 .ui-icon-clipboard { background-position: -160px -128px; }
    413 .ui-icon-copy { background-position: -176px -128px; }
    414 .ui-icon-contact { background-position: -192px -128px; }
    415 .ui-icon-image { background-position: -208px -128px; }
    416 .ui-icon-video { background-position: -224px -128px; }
    417 .ui-icon-script { background-position: -240px -128px; }
    418 .ui-icon-alert { background-position: 0 -144px; }
    419 .ui-icon-info { background-position: -16px -144px; }
    420 .ui-icon-notice { background-position: -32px -144px; }
    421 .ui-icon-help { background-position: -48px -144px; }
    422 .ui-icon-check { background-position: -64px -144px; }
    423 .ui-icon-bullet { background-position: -80px -144px; }
    424 .ui-icon-radio-off { background-position: -96px -144px; }
    425 .ui-icon-radio-on { background-position: -112px -144px; }
    426 .ui-icon-pin-w { background-position: -128px -144px; }
    427 .ui-icon-pin-s { background-position: -144px -144px; }
    428 .ui-icon-play { background-position: 0 -160px; }
    429 .ui-icon-pause { background-position: -16px -160px; }
    430 .ui-icon-seek-next { background-position: -32px -160px; }
    431 .ui-icon-seek-prev { background-position: -48px -160px; }
    432 .ui-icon-seek-end { background-position: -64px -160px; }
    433 .ui-icon-seek-first { background-position: -80px -160px; }
    434 .ui-icon-stop { background-position: -96px -160px; }
    435 .ui-icon-eject { background-position: -112px -160px; }
    436 .ui-icon-volume-off { background-position: -128px -160px; }
    437 .ui-icon-volume-on { background-position: -144px -160px; }
    438 .ui-icon-power { background-position: 0 -176px; }
    439 .ui-icon-signal-diag { background-position: -16px -176px; }
    440 .ui-icon-signal { background-position: -32px -176px; }
    441 .ui-icon-battery-0 { background-position: -48px -176px; }
    442 .ui-icon-battery-1 { background-position: -64px -176px; }
    443 .ui-icon-battery-2 { background-position: -80px -176px; }
    444 .ui-icon-battery-3 { background-position: -96px -176px; }
    445 .ui-icon-circle-plus { background-position: 0 -192px; }
    446 .ui-icon-circle-minus { background-position: -16px -192px; }
    447 .ui-icon-circle-close { background-position: -32px -192px; }
    448 .ui-icon-circle-triangle-e { background-position: -48px -192px; }
    449 .ui-icon-circle-triangle-s { background-position: -64px -192px; }
    450 .ui-icon-circle-triangle-w { background-position: -80px -192px; }
    451 .ui-icon-circle-triangle-n { background-position: -96px -192px; }
    452 .ui-icon-circle-arrow-e { background-position: -112px -192px; }
    453 .ui-icon-circle-arrow-s { background-position: -128px -192px; }
    454 .ui-icon-circle-arrow-w { background-position: -144px -192px; }
    455 .ui-icon-circle-arrow-n { background-position: -160px -192px; }
    456 .ui-icon-circle-zoomin { background-position: -176px -192px; }
    457 .ui-icon-circle-zoomout { background-position: -192px -192px; }
    458 .ui-icon-circle-check { background-position: -208px -192px; }
    459 .ui-icon-circlesmall-plus { background-position: 0 -208px; }
    460 .ui-icon-circlesmall-minus { background-position: -16px -208px; }
    461 .ui-icon-circlesmall-close { background-position: -32px -208px; }
    462 .ui-icon-squaresmall-plus { background-position: -48px -208px; }
    463 .ui-icon-squaresmall-minus { background-position: -64px -208px; }
    464 .ui-icon-squaresmall-close { background-position: -80px -208px; }
    465 .ui-icon-grip-dotted-vertical { background-position: 0 -224px; }
    466 .ui-icon-grip-dotted-horizontal { background-position: -16px -224px; }
    467 .ui-icon-grip-solid-vertical { background-position: -32px -224px; }
    468 .ui-icon-grip-solid-horizontal { background-position: -48px -224px; }
    469 .ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; }
    470 .ui-icon-grip-diagonal-se { background-position: -80px -224px; }
    471 
    472 span.ui-icon {
    473                position: relative;
    474                float: left;
    475                margin-right: 4px;
    476                margin-bottom: 0pt;
    477                margin-left: -0pt;
    478                left: 0.2em;
    479 }
    480 a span.ui-icon {
    481                  margin-top: 4px;
    482                  }
  • main/waeup.sirp/trunk/src/waeup/sirp/browser/templates/actionbutton.pt

    r6717 r7459  
    1 <span class="yui-button" tal:condition="viewlet/target_url">
    2   <span class="first-child">
    3     <a href=""
    4        tal:attributes="href viewlet/target_url">
    5       <img src="" alt="edit"
    6            tal:attributes="src viewlet/icon_url;
    7                            alt viewlet/alt"/>
    8     <span tal:content="viewlet/text">TEXT</span></a>
    9   </span>
    10 </span>
     1<a class="btn actionbar" tal:condition="viewlet/target_url"
     2   tal:attributes="href viewlet/target_url">
     3  <img src="" alt="edit"
     4   tal:attributes="src viewlet/icon_url;
     5           alt viewlet/alt"/>
     6  <span tal:replace="viewlet/text">TEXT</span>
     7</a>
  • main/waeup.sirp/trunk/src/waeup/sirp/browser/templates/breadcrumbs.pt

    r5389 r7459  
    1 <div class="breadcrumbs">
    2   <span tal:repeat="item viewlet/getEntries">
    3     <a href="#"
    4        tal:attributes="href item/url">
    5       <span tal:content="item/title">
    6         Entry
    7       </span>
     1<span tal:repeat="item viewlet/getEntries">
     2  <li>
     3    <a href="#" tal:attributes="href item/url">
     4      <span tal:content="item/title">Entry</span>
    85    </a>
    9     <span tal:condition="not: repeat/item/end">
    10       >
    11     </span>
    12   </span>
    13 </div>
     6    <span tal:condition="not: repeat/item/end" class="divider">/</span>
     7  </li>
     8</span>
  • main/waeup.sirp/trunk/src/waeup/sirp/browser/templates/certificatecoursepage.pt

    r6008 r7459  
    11<h2 tal:content="context/longtitle">TITLE</h2>
    22
    3 <table class="zebra">
     3<table class="form-table">
    44  <thead>
    55  </thead>
  • main/waeup.sirp/trunk/src/waeup/sirp/browser/templates/certificatemanagepage.pt

    r7335 r7459  
    33tal:content="view/label">Label</h2>
    44
    5 <div class="form-status"
     5<div class="alert-message error"
    66    tal:define="status view/status"
    77    tal:condition="status">
     
    1313
    1414<form action="." tal:attributes="action request/URL" method="POST"
    15       class="edit-form" enctype="multipart/form-data">
     15      enctype="multipart/form-data">
    1616
    17 <div id="tabs">
    18   <ul>
    19     <li><a href="#tab-1"><span>Settings</span></a></li>
     17  <ul class="tabs" data-tabs="tabs">
     18    <li class="active"><a href="#tab-1"><span>Settings</span></a></li>
    2019    <li><a href="#tab-2"><span>Course Referrers</span></a></li>
    2120    <li><a href="#tab-3"><span>Local Roles</span></a></li>
    2221  </ul>
    2322   
    24   <div id="tab-1">
    25         <table class="zebra">
     23  <div class="tab-content">
     24    <div id="tab-1" class="active">
     25          <table class="form-table">
     26          <tbody>
     27          <tal:block repeat="widget view/widgets">
     28            <tr>
     29              <td class="fieldname">
     30                <span tal:condition="widget/required">*</span>
     31                <span i18n:translate="" tal:content="widget/label">label</span>:
     32              </td>
     33              <td>
     34                <span tal:content="structure widget">
     35                  <input type="text" />
     36                </span>
     37                <tal:error tal:condition="widget/error">
     38                  <span tal:replace="structure widget/error">error</span>
     39                </tal:error>
     40                <tal:hint tal:condition="widget/hint">
     41                  <span tal:content="structure widget/hint">hint</span>
     42                </tal:hint>
     43              </td>
     44            </tr>
     45          </tal:block>
     46          </tbody>
     47          </table>
     48          <div tal:condition="view/availableActions">
     49            <span tal:repeat="action view/actions"
     50                  tal:omit-tag="">
     51              <input tal:condition="python:action.label in view.taboneactions"
     52                     tal:replace="structure action/render"/>
     53            </span>
     54          </div>
     55    </div>
     56    <div id="tab-2">
     57      <h3>Course Referrers</h3>
     58      <table class="display dataTableManage">
     59        <thead>
     60          <tr>
     61            <th>&nbsp;</th><th>Level</th><th>Semester</th><th>Referrer</th><th>Course</th><th>Title</th>
     62            <th>Mandatory</th>
     63          </tr>
     64        </thead>
    2665        <tbody>
    27         <tal:block repeat="widget view/widgets">
    28           <tr>
    29             <td class="label">
    30               <label tal:attributes="for widget/name">
    31                 <span class="required" tal:condition="widget/required">*</span>
    32                 <span i18n:translate="" tal:content="widget/label">label</span>:
    33               </label>
     66          <tr tal:repeat="cc context/values" class="gradeC">
     67             <td>
     68              <input type="checkbox"
     69                         name="val_id"
     70                         tal:attributes="value cc/__name__" />
    3471            </td>
    35             <td class="field">
    36               <span class="widget" tal:content="structure widget">
    37                 <input type="text" />
     72             <td>
     73              <span tal:content="cc/level">
     74                   LEVEL
    3875              </span>
    39               <tal:error tal:condition="widget/error">
    40                 <span tal:replace="structure widget/error">error</span>
    41               </tal:error>
    42               <tal:hint tal:condition="widget/hint">
    43                 <span class="hint" tal:content="structure widget/hint">hint</span>
    44               </tal:hint>
     76            </td>
     77            <td tal:content="cc/course/semester">SEMESTER</td>
     78            <td>
     79              <a tal:attributes="href python: view.url(cc)"
     80                     tal:content="cc/__name__">
     81                REFERRER CODE
     82              </a>
     83            </td>
     84            <td>
     85              <a tal:attributes="href python:view.url(cc.course)"
     86                     tal:content="cc/course/code">
     87                COURSE CODE
     88              </a>
     89            </td>
     90            <td>
     91              <span tal:content="cc/course/title">
     92                   COURSE TITLE
     93              </span>
     94            </td>
     95            <td>
     96              <span tal:content="cc/core_or_elective">
     97                   MANDATORY
     98              </span>
    4599            </td>
    46100          </tr>
    47         </tal:block>
    48101        </tbody>
    49         </table>
    50         <div class="actionButtons" tal:condition="view/availableActions">
    51           <span tal:repeat="action view/actions"
    52                 tal:omit-tag="">
    53             <input tal:condition="python:action.label in view.taboneactions"
    54                    tal:replace="structure action/render"/>
    55           </span>
    56         </div>
    57   </div>
    58   <div id="tab-2">
    59     <h3>Course Referrers</h3>
    60     <table class="display dataTableManage">
    61       <thead>
    62         <tr>
    63           <th>&nbsp;</th><th>Level</th><th>Semester</th><th>Referrer</th><th>Course</th><th>Title</th>
    64           <th>Mandatory</th>
     102      </table>
     103      <div tal:condition="view/availableActions">
     104        <span tal:repeat="action view/actions"
     105              tal:omit-tag="">
     106          <input tal:condition="python:action.label in view.tabtwoactions"
     107                 tal:replace="structure action/render"/>
     108        </span>
     109      </div>
     110    </div>
     111    <div id="tab-3"> <br />
     112      <table class="display dataTableManage">
     113        <thead>
     114          <tr>
     115            <th>&nbsp;
     116            </th>
     117            <th>User Id
     118            </th>
     119            <th>Name
     120            </th>
     121            <th>Local Role
     122            </th>
     123          </tr>
     124        </thead>
     125        <tbody>
     126          <tr tal:repeat="entry view/getUsersWithLocalRoles" class="gradeC"> <td>
     127              <input type="checkbox" name="role_id" tal:attributes="value python: entry['user_name']+'|'+entry['local_role']" /> </td>
     128            <td tal:content="entry/user_name"> USERNAME </td>
     129            <td tal:content="entry/user_title"> USERTITLE </td>
     130            <td tal:content="entry/local_role_title"> LOCAL ROLE </td>
     131          </tr>
     132        </tbody>
     133      </table>
     134      <div tal:condition="view/availableActions">
     135        <span tal:repeat="action view/actions" tal:omit-tag="">
     136          <input tal:condition="python:action.label in view.tabthreeactions1" tal:replace="structure action/render"/>
     137        </span>
     138      </div><br /><br />
     139      <table class="form-table">
     140        <tr> <td>
     141            <select id="user" name="user">
     142              <option tal:repeat="user view/getUsers" tal:attributes="value user/name">
     143              <span tal:replace="user/val/title">USERTITLE
     144              </span>
     145              </option>
     146            </select> </td> <td>
     147            <select id="local_role" name="local_role">
     148              <option tal:repeat="localrole view/getLocalRoles" tal:attributes="value localrole/name">
     149              <span tal:replace="localrole/title">LOCALROLETITLE
     150              </span>
     151              </option>
     152            </select> </td> <td>
     153            <div tal:condition="view/availableActions">
     154              <span tal:repeat="action view/actions" tal:omit-tag="">
     155                <input tal:condition="python:action.label in view.tabthreeactions2" tal:replace="structure action/render"/>
     156              </span>
     157            </div> </td>
    65158        </tr>
    66       </thead>
    67       <tbody>
    68         <tr tal:repeat="cc context/values">
    69            <td>
    70             <input type="checkbox"
    71                  name="val_id"
    72                  tal:attributes="value cc/__name__" />
    73           </td>
    74            <td>
    75             <span tal:content="cc/level">
    76            LEVEL
    77             </span>
    78           </td>
    79           <td tal:content="cc/course/semester">SEMESTER</td>
    80           <td>
    81             <a tal:attributes="href python: view.url(cc)"
    82              tal:content="cc/__name__">
    83                 REFERRER CODE
    84             </a>
    85           </td>
    86           <td>
    87             <a tal:attributes="href python:view.url(cc.course)"
    88              tal:content="cc/course/code">
    89                 COURSE CODE
    90             </a>
    91           </td>
    92           <td>
    93             <span tal:content="cc/course/title">
    94            COURSE TITLE
    95             </span>
    96           </td>
    97           <td>
    98             <span tal:content="cc/core_or_elective">
    99            MANDATORY
    100             </span>
    101           </td>
    102         </tr>
    103       </tbody>
    104     </table>
    105     <div class="actionButtons" tal:condition="view/availableActions">
    106       <span tal:repeat="action view/actions"
    107             tal:omit-tag="">
    108         <input tal:condition="python:action.label in view.tabtwoactions"
    109                tal:replace="structure action/render"/>
    110       </span>
     159      </table>
    111160    </div>
    112161  </div>
    113   <div id="tab-3"> <br />
    114     <table class="display dataTableManage">
    115       <thead>
    116         <tr>
    117           <th>&nbsp;
    118           </th>
    119           <th>User Id
    120           </th>
    121           <th>Name
    122           </th>
    123           <th>Local Role
    124           </th>
    125         </tr>
    126       </thead>
    127       <tbody>
    128         <tr tal:repeat="entry view/getUsersWithLocalRoles" class="gradeB"> <td>
    129             <input type="checkbox" name="role_id" tal:attributes="value python: entry['user_name']+'|'+entry['local_role']" /> </td>
    130           <td tal:content="entry/user_name"> USERNAME </td>
    131           <td tal:content="entry/user_title"> USERTITLE </td>
    132           <td tal:content="entry/local_role_title"> LOCAL ROLE </td>
    133         </tr>
    134       </tbody>
    135     </table>
    136     <div class="actionButtons" tal:condition="view/availableActions">
    137       <span tal:repeat="action view/actions" tal:omit-tag="">
    138         <input tal:condition="python:action.label in view.tabthreeactions1" tal:replace="structure action/render"/>
    139       </span>
    140     </div><br /><br />
    141     <table class="zebra">
    142       <tr> <td>
    143           <select id="user" name="user">
    144             <option tal:repeat="user view/getUsers" tal:attributes="value user/name">
    145             <span tal:replace="user/val/title">USERTITLE
    146             </span>
    147             </option>
    148           </select> </td> <td>
    149           <select id="local_role" name="local_role">
    150             <option tal:repeat="localrole view/getLocalRoles" tal:attributes="value localrole/name">
    151             <span tal:replace="localrole/title">LOCALROLETITLE
    152             </span>
    153             </option>
    154           </select> </td> <td>
    155           <div tal:condition="view/availableActions">
    156             <span tal:repeat="action view/actions" tal:omit-tag="">
    157               <input tal:condition="python:action.label in view.tabthreeactions2" tal:replace="structure action/render"/>
    158             </span>
    159           </div> </td>
    160       </tr>
    161     </table>
    162   </div>
    163 </div>
    164162</form> 
    165163
  • main/waeup.sirp/trunk/src/waeup/sirp/browser/templates/certificatepage.pt

    r6344 r7459  
    11<h2 tal:content="context/longtitle">TITLE</h2>
    22
    3 <table class="zebra">
     3<table class="form-table">
    44<thead>
    55</thead> 
     
    77  <tal:block repeat="widget view/widgets">
    88    <tr>
    9       <td>
    10         <label tal:attributes="for widget/name">
    11           <span i18n:translate=""
     9      <td class="fieldname">
     10        <span i18n:translate=""
    1211                         tal:content="widget/label">label</span>:
    13         </label>
    1412      </td>
    15       <td class="field" tal:on-error="default">
    16         <div class="widget" tal:content="structure widget">
     13      <td tal:on-error="default">
     14        <div tal:content="structure widget">
    1715          <input type="text" />
    1816        </div>
     
    3331</thead>
    3432<tbody>
    35   <tr tal:repeat="cc context/values">
     33  <tr tal:repeat="cc context/values" class="gradeC">
    3634     <td>
    3735      <span tal:content="cc/level">
  • main/waeup.sirp/trunk/src/waeup/sirp/browser/templates/configurationmanagepage.pt

    r6916 r7459  
    11<h2 i18n:translate="" tal:condition="view/label" tal:content="view/label">Label</h2>
    2 <div class="form-status"  tal:define="status view/status"  tal:condition="status"> Form Status:
     2<div class="alert-message error"  tal:define="status view/status"  tal:condition="status"> Form Status:
    33  <span i18n:translate="" tal:content="view/status"> Form status summary
    44  </span>
    55</div>
    6 <form action="." tal:attributes="action request/URL" method="POST" class="edit-form" enctype="multipart/form-data">
    7   <div id="tabs">
    8     <ul>
    9       <li>
     6<form action="." tal:attributes="action request/URL" method="POST" enctype="multipart/form-data">
     7    <ul class="tabs" data-tabs="tabs">
     8      <li class="active">
    109      <a href="#tab-1">
    1110        <span>Site Settings
     
    1615      </li>
    1716    </ul>
    18     <div id="tab-1">
    19       <table class="zebra">
     17    <div class="tab-content">
     18    <div id="tab-1" class="active">
     19      <table class="form-table">
    2020        <tbody>
    2121          <tal:block repeat="widget view/widgets">
    2222            <tr>
    23               <td class="label">
    24                 <label tal:attributes="for widget/name">
    25                   <span class="required" tal:condition="widget/required">*
     23              <td class="fieldname">
     24                  <span tal:condition="widget/required">*
    2625                  </span>
    2726                  <span i18n:translate="" tal:content="widget/label">label
    2827                  </span>:
    29                 </label> </td>
    30               <td class="field">
    31                 <span class="widget" tal:content="structure widget">
     28              </td>
     29              <td>
     30                <span tal:content="structure widget">
    3231                  <input type="text" />
    3332                </span>
     
    3736                </tal:error>
    3837                <tal:hint tal:condition="widget/hint">
    39                   <span class="hint" tal:content="structure widget/hint">hint
     38                  <span tal:content="structure widget/hint">hint
    4039                  </span>
    4140                </tal:hint> </td>
     
    4443        </tbody>
    4544      </table>
    46       <div class="actionButtons" tal:condition="view/availableActions">
     45      <div tal:condition="view/availableActions">
    4746        <span tal:repeat="action view/actions" tal:omit-tag="">
    48           <input tal:condition="python:action.label in view.taboneactions" tal:replace="structure action/render"/>
     47          <input tal:condition="python:action.label in view.taboneactions"
     48                 tal:replace="structure action/render"/>
    4949        </span>
    5050      </div>
     
    6161        </thead>
    6262        <tbody>
    63           <tr tal:repeat="entry view/getSessionConfigurations" class="gradeB"> <td>
     63          <tr tal:repeat="entry view/getSessionConfigurations" class="gradeC"> <td>
    6464              <input type="checkbox" name="val_id" tal:attributes="value entry/name" /> </td> <td>
    6565              <a href="" tal:attributes="href entry/url" tal:content="entry/title">Name</a> </td>
     
    6767        </tbody>
    6868      </table>
    69       <div class="actionButtons" tal:condition="view/availableActions">
     69      <div tal:condition="view/availableActions">
    7070        <span tal:repeat="action view/actions" tal:omit-tag="">
    7171          <input tal:condition="python:action.label in view.tabtwoactions" tal:replace="structure action/render"/>
  • main/waeup.sirp/trunk/src/waeup/sirp/browser/templates/contactform.pt

    r7227 r7459  
    11<form action="." tal:attributes="action request/URL" method="post"
    2       class="edit-form" enctype="multipart/form-data">
     2      enctype="multipart/form-data">
    33
    44  <h2 i18n:translate=""
     
    66    tal:content="view/label">Label</h2>
    77
    8   <div class="form-status"
     8  <div class="alert-message error"
    99      tal:define="status view/status"
    1010      tal:condition="status">
     
    2121         tal:content="widget/label">Label
    2222    </div>
    23     <div class="widget" tal:content="structure widget">
     23    <div tal:content="structure widget">
    2424      Textbody
    2525    </div>
     
    2727  </tal:block>
    2828
    29   <div class="actionButtons" tal:condition="view/availableActions">
     29  <div tal:condition="view/availableActions">
    3030    <input tal:repeat="action view/actions"
    3131           tal:replace="structure action/render"
  • main/waeup.sirp/trunk/src/waeup/sirp/browser/templates/coursepage.pt

    r5946 r7459  
    11<h2 tal:content="context/title">TITLE</h2>
    22
    3 <table class="listing">
     3<table class="form-table">
    44  <thead>
    55  </thead>
    66  <tbody>
    7     <tr class="odd">
     7    <tr>
    88      <td>Code:</td>
    99      <td tal:content="context/__name__">CODE</td>
    1010    </tr> 
    11     <tr class="even">
     11    <tr>
    1212      <td>Title:</td>
    1313      <td tal:content="context/title">THE TITLE</td>
    1414    </tr>
    15     <tr class="odd">
     15    <tr>
    1616      <td>Credits:</td>
    1717      <td tal:content="context/credits">CREDITS</td>
    1818    </tr>
    19     <tr class="even">
     19    <tr>
    2020      <td>Passmark:</td>
    2121      <td tal:content="context/passmark">PASSMARK</td>
    2222    </tr>
    23     <tr class="odd">
     23    <tr>
    2424      <td>Semester/Term:</td>
    2525      <td tal:content="context/semester">SEMESTER</td>
  • main/waeup.sirp/trunk/src/waeup/sirp/browser/templates/datacenterimport1page.pt

    r6908 r7459  
    1616    </thead>
    1717    <tbody>
    18       <tr tal:repeat="file view/getFiles"
    19       tal:attributes="class python: repeat['file'].odd() and 'odd' or ''">
     18      <tr tal:repeat="file view/getFiles">
    2019        <td>
    21           <button type="submit" name="select"
     20          <button type="submit" name="select" class="btn primary"
    2221            tal:attributes="value file/name">Select</button>
    2322        </td>
     
    2928    </tbody>
    3029  </table>
    31   <input type="submit" name="cancel" value="Cancel" />
     30  <input type="submit" name="cancel" class="btn" value="Cancel" />
    3231</form>
  • main/waeup.sirp/trunk/src/waeup/sirp/browser/templates/datacenterimport2page.pt

    r6908 r7459  
    1313  </p>
    1414  <div>
    15     <table class = "zebra"
     15    <table
    1616           tal:define="body view/getPreviewBody;
    1717                        headers view/getPreviewHeader;
     
    1919      <thead>
    2020        <tr>
    21           <th style="border: 1px solid #888;"
    22               tal:repeat="headerfield headers"
     21          <th tal:repeat="headerfield headers"
    2322              tal:content="headerfield"> headerfield
    2423          </th>
     
    2827        <tr tal:repeat="row body">
    2928          <td tal:repeat="value row"
    30               tal:content="value"
    31               style="border: 1px solid #000;"> value
     29              tal:content="value"> value
    3230          </td>
    3331        </tr>
     
    6260    </p>
    6361  </div>
    64   <input type="submit" name="cancel" value="Cancel" />
    65   <input type="submit" name="back1" value="Back to step 1" />
    66   <input tal:attributes="disabled python: view.getWarnings() and 'disabled' or ''"
     62  <input class="btn" type="submit" name="cancel" value="Cancel" />
     63  <input class="btn danger" type="submit" name="back1" value="Back to step 1" />
     64  <input class="btn primary" tal:attributes="disabled python: view.getWarnings() and 'disabled' or ''"
    6765    type="submit" name="proceed" value="Proceed to step 3..." />
    6866</form>
  • main/waeup.sirp/trunk/src/waeup/sirp/browser/templates/datacenterimport3page.pt

    r6908 r7459  
     1<div class="alert-message success" tal:condition="not: view/getWarnings">
     2  Header fields OK
     3</div>
     4
    15<h2 i18n:translate=""
    26tal:condition="view/label"
     
    2529     tal:attributes="value view/mode" />
    2630  </p>
    27   <div class="alert notice ui-state-info" tal:condition="not: view/getWarnings">
    28     <span class="ui-icon ui-icon-info">A</span>
    29     Header fields OK
    30   </div>
     31
    3132  <div>
    32     <table class = "zebra"
     33    <table class="condensed-table"
    3334     tal:define="body view/getPreviewBody;
    3435           headers view/headerfields;
     
    3637      <thead>
    3738        <tr>
    38           <th style="border: 1px solid #888;"
    39               tal:repeat="headerfield headers"
     39          <th tal:repeat="headerfield headers"
    4040              tal:content="headerfield">
    4141            headerfield
     
    4343        </tr>
    4444        <tr>
    45           <th style="border: 1px solid #888; text-align=center;"
    46               tal:repeat="headerfield headers">
     45          <th tal:repeat="headerfield headers">
    4746            <i>change to:</i>
    4847          </th>
    4948        </tr>
    5049        <tr>
    51           <th style="border: 1px solid #888;"
    52               tal:repeat="headerfield headers">
     50          <th tal:repeat="headerfield headers">
    5351            <select name="headerfield">
    5452              <option tal:repeat="opt view/getPossibleHeaders"
     
    6563        <tr tal:repeat="row body">
    6664          <td tal:repeat="value row"
    67               tal:content="value"
    68               style="border: 1px solid #000;">
     65              tal:content="value">
    6966            value
    7067          </td>
     
    7471  </div>
    7572
    76   <input type="submit" name="cancel" value="Cancel" />
    77   <input type="reset" name="reset" value="Reset" />
    78   <input type="submit" name="update" value="Set headerfields" />
    79   <br />
    80   <input type="submit" name="back2" value="Back to step 2" />
    81   <input tal:attributes="disabled python: view.getWarnings() and 'disabled' or ''"
     73  <input class="btn" type="submit" name="cancel" value="Cancel" />
     74  <input class="btn" type="reset" name="reset" value="Reset" />
     75  <input class="btn" type="submit" name="update" value="Set headerfields" />
     76  <br /><br />
     77  <input class="btn danger" type="submit" name="back2" value="Back to step 2" />
     78  <input class="btn primary" tal:attributes="disabled python: view.getWarnings() and 'disabled' or ''"
    8279   type="submit" name="proceed" value="Perform import..." />
    8380</form>
  • main/waeup.sirp/trunk/src/waeup/sirp/browser/templates/datacenterimport4page.pt

    r6908 r7459  
    1818</p>
    1919<form method="POST">
    20   <input type="submit" name="finish" value="Back to data center" />
    21   <input type="submit" name="showlog" value="View processing log" />
     20  <input class="btn primary" type="submit" name="finish" value="Back to data center" />
     21  <input class="btn" type="submit" name="showlog" value="View processing log" />
    2222</form>
  • main/waeup.sirp/trunk/src/waeup/sirp/browser/templates/datacenterlogspage.pt

    r6909 r7459  
    1 <h2 i18n:translate=""
    2 tal:condition="view/label"
    3 tal:content="view/label">Label</h2>
    4 
     1<h2 i18n:translate="" tal:condition="view/label" tal:content="view/label">Label</h2>
    52<div tal:define="files view/files">
    6   <p tal:condition="not: files">
    7     Currently no log files are available.
     3  <p tal:condition="not: files">Currently no log files are available.
    84  </p>
    9   <table tal:condition="files">
     5  <table tal:condition="files" class="condensed-table">
    106    <thead>
    117      <tr>
    12   <th></th><th>File</th><th>Date</th><th>Size</th>
     8        <th>
     9        </th>
     10        <th>File
     11        </th>
     12        <th>Date
     13        </th>
     14        <th>Size
     15        </th>
    1316      </tr>
    1417    </thead>
    1518    <tbody>
    16       <tr tal:repeat="file files"
    17     tal:attributes="class python: repeat['file'].odd() and 'odd' or 'even'">
    18   <td class="text-center">
    19     <form method="POST">
    20       <input type="submit" name="show" value="Show" />
    21       <input type="hidden" name="logname"
    22        tal:attributes="value file/name" />
    23     </form>
    24   </td>
    25   <td tal:content="file/name">file.name</td>
    26   <td tal:content="file/uploaddate">Fri Jan 15 17:44:25 2010</td>
    27   <td tal:content="file/getSize">12 bytes</td>
     19      <tr tal:repeat="file files" tal:attributes="class python: repeat['file'].odd() and 'odd' or 'even'">
     20        <td class="text-center">
     21          <form method="POST">
     22            <input type="submit" class="btn primary" name="show" value="Show" />
     23            <input type="hidden" name="logname" tal:attributes="value file/name" />
     24          </form></td>
     25        <td tal:content="file/name">file.name</td>
     26        <td tal:content="file/uploaddate">Fri Jan 15 17:44:25 2010</td>
     27        <td tal:content="file/getSize">12 bytes</td>
    2828      </tr>
    2929    </tbody>
    3030  </table>
    31 
    3231  <form method="POST">
    33     <input type="submit" name="back" value="Back to Data Center" />
     32    <input type="submit" class="btn" name="back" value="Back to Data Center" />
    3433  </form>
    35 
    3634</div>
  • main/waeup.sirp/trunk/src/waeup/sirp/browser/templates/datacenterlogsshowfilepage.pt

    r4858 r7459  
    44
    55<form method="POST">
    6   <input type="submit" name="back" value="Back" />
     6  <input class="btn primary" type="submit" name="back" value="Back" />
    77</form>
    88
    9 <div class="bd">
     9<div>
    1010  <pre tal:content="view/filecontents">
    1111    blah, blah
     
    1414
    1515<form method="POST">
    16   <input type="submit" name="back" value="Back" />
     16  <input class="btn primary" type="submit" name="back" value="Back" />
    1717</form>
  • main/waeup.sirp/trunk/src/waeup/sirp/browser/templates/datacentermanagepage.pt

    r6909 r7459  
    55<form method="POST">
    66  <div>
    7     <label for="newpath">Storage path:</label>
     7    Storage path:
    88    <input type="text" name="newpath"
    99     tal:attributes="value context/storage" />
    1010    <br /><br />
    11     <div>
    12       <input type="checkbox" name="move" checked="checked" />
    13       <label for="move">Copy existing data to new storage?</label>
    14     </div>
    15     <div>
    16       <input type="checkbox" name="overwrite" checked="no" />
    17       <label for="overwrite">Overwrite contents in new location?</label>
    18     </div>
    19     <br />
    20     <input type="submit" name="save" value="Save" />
    21     <input type="reset" name="reset" value="Reset" />
    22     <input type="submit" name="cancel" value="Cancel" />
     11    Copy existing data to new storage? &nbsp;&nbsp;
     12    <input type="checkbox" name="move" checked="checked" />
     13    <br /><br />
     14    Overwrite contents in new location? &nbsp;&nbsp;
     15    <input type="checkbox" name="overwrite" checked="no" />
     16    <br /><br />
     17    <input class="btn primary" type="submit" name="save" value="Save" />
     18    <input class="btn" type="reset" name="reset" value="Reset" />
     19    <input class="btn" type="submit" name="cancel" value="Cancel" />
    2320  </div>
    2421</form>
  • main/waeup.sirp/trunk/src/waeup/sirp/browser/templates/datacenterpage.pt

    r4958 r7459  
    1919  </thead>
    2020  <tbody>
    21     <tr tal:repeat="file context/getFiles"
    22         tal:attributes="class python: repeat['file'].odd() and 'odd' or 'even'">
     21    <tr tal:repeat="file context/getFiles">
    2322      <td tal:content="file/name">thefilename</td>
    2423      <td tal:content="file/size">12 k</td>
  • main/waeup.sirp/trunk/src/waeup/sirp/browser/templates/datacenteruploadpage.pt

    r6908 r7459  
    55<form method="post" enctype="multipart/form-data">
    66  <input type="file" name="uploadfile:file" />
     7  <br /><br />
    78  <div>
    8     <input type="submit" name="SUBMIT" value="Upload" />
    9     <input type="submit" name="CANCEL" value="Cancel" />
     9    <input class="btn primary" type="submit" name="SUBMIT" value="Upload" />
     10    <input class="btn" type="submit" name="CANCEL" value="Cancel" />
    1011  </div>
    1112</form>
  • main/waeup.sirp/trunk/src/waeup/sirp/browser/templates/default_waeup_display_form.pt

    r7384 r7459  
    33    tal:content="view/label">Label</h2>
    44
    5 <table class="zebra">
     5<table class="form-table">
    66  <tbody>
    77    <tal:block repeat="widget view/widgets">
    88      <tr>
    9         <td class="fieldname" width="33%">
     9        <td class="fieldname">
    1010          <tal:block content="widget/label"/>:
    1111        </td>
     
    1818  </tbody>
    1919  <tfoot>
    20     <tr class="controls">
     20    <tr>
    2121      <td colspan="2" class="align-right">
    2222        <input tal:repeat="action view/actions"
  • main/waeup.sirp/trunk/src/waeup/sirp/browser/templates/default_waeup_edit_form.pt

    r7112 r7459  
    11<form action="." tal:attributes="action request/URL" method="post"
    2       class="edit-form" enctype="multipart/form-data">
     2      enctype="multipart/form-data">
    33
    44  <h2 i18n:translate=""
     
    66    tal:content="view/label">Label</h2>
    77
    8   <div class="form-status"
     8  <div class="alert-message error"
    99      tal:define="status view/status"
    1010      tal:condition="status">
     
    1313        Form status summary
    1414      </span>
    15       <ul tal:condition="view/errors">
    16         <li tal:repeat="error view/error_views">
    17            <span tal:replace="structure error">Error Type</span>
    18         </li>
    19       </ul>
    2015  </div>
    2116
    22   <table class="zebra">
     17  <table class="form-table">
    2318    <tbody>
    2419      <tal:block repeat="widget view/widgets">
    2520        <tr>
    26           <td class="label">
    27             <label tal:attributes="for widget/name">
    28               <span class="required" tal:condition="widget/required">*</span>
    29               <span i18n:translate="" tal:content="widget/label">label</span>:
    30             </label>
     21          <td class="fieldname">
     22            <span tal:condition="widget/required">*</span>
     23            <span i18n:translate="" tal:content="widget/label">label</span>:
    3124          </td>
    32           <td class="field">
    33             <span class="widget" tal:content="structure widget">
     25          <td>
     26            <span tal:content="structure widget">
    3427              <input type="text" />
    3528            </span>
     
    3831            </tal:error>
    3932            <tal:hint tal:condition="widget/hint">
    40               <span class="hint" tal:content="structure widget/hint">hint</span>
     33              <span tal:content="structure widget/hint">hint</span>
    4134            </tal:hint>
    4235          </td>
     
    4639    </tbody>
    4740  </table>
    48   <div class="actionButtons" tal:condition="view/availableActions">
     41  <div tal:condition="view/availableActions">
    4942    <input tal:repeat="action view/actions"
    5043           tal:replace="structure action/render"
  • main/waeup.sirp/trunk/src/waeup/sirp/browser/templates/departmentmanagepage.pt

    r7213 r7459  
    11<h2 i18n:translate="" tal:condition="view/label" tal:content="view/label">Label</h2>
    2 <div class="form-status"  tal:define="status view/status"  tal:condition="status"> Form Status:
     2<div class="alert-message error"  tal:define="status view/status"  tal:condition="status"> Form Status:
    33  <span i18n:translate="" tal:content="view/status"> Form status summary
    44  </span>
    55</div>
    6 <form action="." tal:attributes="action request/URL" method="POST" class="edit-form" enctype="multipart/form-data">
    7   <div id="tabs">
    8     <ul>
    9       <li>
    10       <a href="#tab-1">
    11         <span>Settings
    12         </span></a>
    13       </li>
    14       <li>
    15       <a href="#tab-2">Courses</a>
    16       </li>
    17       <li>
    18       <a href="#tab-3">Certificates</a>
    19       </li>
    20       <li>
    21       <a href="#tab-4">Local Roles</a>
    22       </li>
    23     </ul>
    24     <div id="tab-1">
    25       <table class="zebra">
     6<form action="." tal:attributes="action request/URL" method="POST" enctype="multipart/form-data">
     7  <ul class="tabs" data-tabs="tabs">
     8    <li class="active">
     9    <a href="#tab-1">
     10      <span>Settings
     11      </span></a>
     12    </li>
     13    <li>
     14    <a href="#tab-2">Courses</a>
     15    </li>
     16    <li>
     17    <a href="#tab-3">Certificates</a>
     18    </li>
     19    <li>
     20    <a href="#tab-4">Local Roles</a>
     21    </li>
     22  </ul>
     23  <div class="tab-content">
     24    <div id="tab-1" class="active">
     25      <table class="form-table">
    2626        <tbody>
    2727          <tal:block repeat="widget view/widgets">
    2828            <tr>
    29               <td class="label">
    30                 <label tal:attributes="for widget/name">
    31                   <span class="required" tal:condition="widget/required">*
     29              <td class="fieldname">
     30                  <span tal:condition="widget/required">*
    3231                  </span>
    3332                  <span i18n:translate="" tal:content="widget/label">label
    3433                  </span>:
    35                 </label> </td>
    36               <td class="field">
    37                 <span class="widget" tal:content="structure widget">
     34              </td>
     35              <td>
     36                <span tal:content="structure widget">
    3837                  <input type="text" />
    3938                </span>
     
    4342                </tal:error>
    4443                <tal:hint tal:condition="widget/hint">
    45                   <span class="hint" tal:content="structure widget/hint">hint
     44                  <span tal:content="structure widget/hint">hint
    4645                  </span>
    4746                </tal:hint> </td>
     
    5049        </tbody>
    5150      </table>
    52       <div class="actionButtons" tal:condition="view/availableActions">
     51      <div tal:condition="view/availableActions">
    5352        <span tal:repeat="action view/actions" tal:omit-tag="">
    5453          <input tal:condition="python:action.label in view.taboneactions" tal:replace="structure action/render"/>
     
    6968        </thead>
    7069        <tbody>
    71           <tr tal:repeat="entry view/getCourses" class="gradeB"> <td>
     70          <tr tal:repeat="entry view/getCourses" class="gradeC"> <td>
    7271              <input type="checkbox" name="val_id" tal:attributes="value entry/name" /> </td> <td>
    7372              <a href="" tal:attributes="href entry/url" tal:content="entry/name">Name</a> </td>
     
    7675        </tbody>
    7776      </table>
    78       <div class="actionButtons" tal:condition="view/availableActions">
     77      <div tal:condition="view/availableActions">
    7978        <span tal:repeat="action view/actions" tal:omit-tag="">
    8079          <input tal:condition="python:action.label in view.tabtwoactions" tal:replace="structure action/render"/>
     
    9594        </thead>
    9695        <tbody>
    97           <tr tal:repeat="entry view/getCertificates" class="gradeB"> <td>
     96          <tr tal:repeat="entry view/getCertificates" class="gradeC"> <td>
    9897              <input type="checkbox" name="val_id" tal:attributes="value entry/name" /> </td> <td>
    9998              <a href="" tal:attributes="href entry/url" tal:content="entry/name">Name</a> </td>
     
    102101        </tbody>
    103102      </table>
    104       <div class="actionButtons" tal:condition="view/availableActions">
     103      <div tal:condition="view/availableActions">
    105104        <span tal:repeat="action view/actions" tal:omit-tag="">
    106105          <input tal:condition="python:action.label in view.tabthreeactions" tal:replace="structure action/render"/>
     
    123122        </thead>
    124123        <tbody>
    125           <tr tal:repeat="entry view/getUsersWithLocalRoles" class="gradeB"> <td>
     124          <tr tal:repeat="entry view/getUsersWithLocalRoles" class="gradeC"> <td>
    126125              <input type="checkbox" name="role_id" tal:attributes="value python: entry['user_name']+'|'+entry['local_role']" /> </td>
    127126            <td tal:content="entry/user_name"> USERNAME </td>
     
    131130        </tbody>
    132131      </table>
    133       <div class="actionButtons" tal:condition="view/availableActions">
     132      <div tal:condition="view/availableActions">
    134133        <span tal:repeat="action view/actions" tal:omit-tag="">
    135134          <input tal:condition="python:action.label in view.tabfouractions1" tal:replace="structure action/render"/>
    136135        </span>
    137136      </div> <br /><br />
    138       <table class="zebra">
     137      <table class="form-table">
    139138        <tr> <td>
    140139            <select id="user" name="user">
  • main/waeup.sirp/trunk/src/waeup/sirp/browser/templates/departmentpage.pt

    r6461 r7459  
    33tal:content="view/label">Label</h2>
    44
    5 <div id="tabs">
    6     <ul>
    7       <li><a href="#tab-1"><span>Courses</span></a></li>
    8       <li><a href="#tab-2"><span>Certificates</span></a></li>
    9     </ul>
    10    
    11     <div id="tab-1">
     5<ul class="tabs" data-tabs="tabs">
     6  <li class="active"><a href="#tab-1"><span>Courses</span></a></li>
     7  <li><a href="#tab-2"><span>Certificates</span></a></li>
     8</ul>
     9<div class="tab-content">
     10    <div id="tab-1" class="active">
    1211    <br />
    1312    <table class="display dataTable">
     
    1817      </thead>
    1918      <tbody>
    20         <tr tal:repeat="entry view/getCourses"
    21         class="gradeB">
     19        <tr tal:repeat="entry view/getCourses" class="gradeC">
    2220          <td>
    2321                <a href=""
     
    4240      </thead>
    4341      <tbody>
    44         <tr tal:repeat="entry view/getCertificates"
    45         class="gradeB">
     42        <tr tal:repeat="entry view/getCertificates" class="gradeC">
    4643          <td>
    4744                <a href=""
     
    5552      </tbody>
    5653    </table>
    57     <br /><br />
    5854    </div>
    5955</div>
  • main/waeup.sirp/trunk/src/waeup/sirp/browser/templates/facultiescontainermanagepage.pt

    r7333 r7459  
    33    tal:content="view/label">Label</h2>
    44
    5 <div class="form-status"
     5<div class="alert-message error"
    66    tal:define="status view/status"
    77    tal:condition="status">
     
    1313
    1414<form action="." tal:attributes="action request/URL" method="POST"
    15       class="edit-form" enctype="multipart/form-data">
     15      enctype="multipart/form-data">
    1616
    17   <div id="tabs">
    18     <ul>
    19       <li><a href="#tab-1">
    20         <span tal:content="view/subunits">Contents</span>
    21       </a></li>
    22     </ul>
    23 
    24     <div id="tab-1">
    25       <h3 tal:content="view/subunits">Faculties</h3>
    26       <table class="zebra">
    27         <thead>
    28           <tr>
    29             <th>&nbsp;</th><th>Code</th><th>Title</th>
    30           </tr>
    31         </thead>
    32         <tbody>
    33           <tr tal:repeat="dep context/values">
    34             <td>
    35               <input type="checkbox"
    36                      name="val_id"
    37                      tal:attributes="value dep/code" />
    38             </td>
    39             <td>
    40               <a tal:attributes="href python: view.url(dep)"
    41                  tal:content="dep/__name__">
    42                 ID
    43               </a>
    44             </td>
    45             <td>
    46               <span tal:content="dep/title">
    47                 ID
    48               </span>
    49             </td>
    50           </tr>
    51         </tbody>
    52       </table>
    53       <div class="actionButtons" tal:condition="view/availableActions">
    54         <span tal:repeat="action view/actions"
    55               tal:omit-tag="">
    56           <input tal:condition="python:action.label in view.taboneactions"
    57                  tal:replace="structure action/render"/>
    58         </span>
    59       </div>
    60 
    61     </div>
     17  <table>
     18    <thead>
     19      <tr>
     20        <th>&nbsp;</th><th>Code</th><th>Title</th>
     21      </tr>
     22    </thead>
     23    <tbody>
     24      <tr tal:repeat="dep context/values">
     25        <td>
     26          <input type="checkbox"
     27                 name="val_id"
     28                 tal:attributes="value dep/code" />
     29        </td>
     30        <td>
     31          <a tal:attributes="href python: view.url(dep)"
     32             tal:content="dep/__name__">
     33            ID
     34          </a>
     35        </td>
     36        <td>
     37          <span tal:content="dep/title">
     38            ID
     39          </span>
     40        </td>
     41      </tr>
     42    </tbody>
     43  </table>
     44  <div tal:condition="view/availableActions">
     45    <span tal:repeat="action view/actions"
     46          tal:omit-tag="">
     47      <input tal:condition="python:action.label in view.taboneactions"
     48             tal:replace="structure action/render"/>
     49    </span>
    6250  </div>
    6351</form>
  • main/waeup.sirp/trunk/src/waeup/sirp/browser/templates/facultymanagepage.pt

    r7213 r7459  
    11<h2 i18n:translate="" tal:condition="view/label" tal:content="view/label">Label</h2>
    2 <div class="form-status" tal:define="status view/status" tal:condition="status"> Form Status:
     2<div class="alert-message error" tal:define="status view/status"
     3     tal:condition="status"> Form Status:
    34  <span i18n:translate="" tal:content="view/status"> Form status summary
    45  </span>
    56</div>
    6 <form action="." tal:attributes="action request/URL" method="POST" class="edit-form" enctype="multipart/form-data">
    7   <div id="tabs">
    8     <ul>
    9       <li>
    10       <a href="#tab-1">
    11         <span>Settings
    12         </span></a>
    13       </li>
    14       <li>
    15       <a href="#tab-2">
    16         <span tal:content="view/subunits">Contents
    17         </span> </a>
    18       </li>
    19       <li>
    20       <a href="#tab-3">
    21         <span>Local Roles
    22         </span></a>
    23       </li>
    24     </ul>
    25     <div id="tab-1">
    26       <table class="zebra">
     7<form action="." tal:attributes="action request/URL" method="POST" enctype="multipart/form-data">
     8  <ul class="tabs" data-tabs="tabs">
     9    <li class="active">
     10    <a href="#tab-1">
     11      <span>Settings
     12      </span></a>
     13    </li>
     14    <li>
     15    <a href="#tab-2">
     16      <span tal:content="view/subunits">Contents
     17      </span> </a>
     18    </li>
     19    <li>
     20    <a href="#tab-3">
     21      <span>Local Roles
     22      </span></a>
     23    </li>
     24  </ul>
     25  <div class="tab-content">
     26    <div id="tab-1" class="active">
     27      <table class="form-table">
    2728        <tbody>
    2829          <tal:block repeat="widget view/widgets">
    2930            <tr>
    30               <td class="label">
    31                 <label tal:attributes="for widget/name">
    32                   <span class="required" tal:condition="widget/required">*
    33                   </span>
    34                   <span i18n:translate="" tal:content="widget/label">label
    35                   </span>:
    36                 </label> </td>
    37               <td class="field">
    38                 <span class="widget" tal:content="structure widget">
     31              <td class="fieldname">
     32                <span tal:condition="widget/required">*
     33                </span>
     34                <span i18n:translate="" tal:content="widget/label">label
     35                </span>:
     36              </td>
     37              <td>
     38                <span tal:content="structure widget">
    3939                  <input type="text" />
    4040                </span>
     
    4444                </tal:error>
    4545                <tal:hint tal:condition="widget/hint">
    46                   <span class="hint" tal:content="structure widget/hint">hint
     46                  <span tal:content="structure widget/hint">hint
    4747                  </span>
    4848                </tal:hint> </td>
     
    5151        </tbody>
    5252      </table>
    53       <div class="actionButtons" tal:condition="view/availableActions">
     53      <div tal:condition="view/availableActions">
    5454        <span tal:repeat="action view/actions" tal:omit-tag="">
    55           <input tal:condition="python:action.label in view.taboneactions" tal:replace="structure action/render"/>
     55          <input tal:condition="python:action.label in view.taboneactions"
     56                 tal:replace="structure action/render"/>
    5657        </span>
    5758      </div>
     
    5960    <div id="tab-2">
    6061      <h3 tal:content="view/subunits">Departments</h3>
    61       <table class="zebra">
     62      <table>
    6263        <thead>
    6364          <tr>
     
    7273        <tbody>
    7374          <tr tal:repeat="dep context/values"> <td>
    74               <input type="checkbox" name="val_id" tal:attributes="value dep/code" /> </td> <td>
    75               <a tal:attributes="href python: view.url(dep)" tal:content="dep/__name__"> ID</a> </td> <td>
     75              <input type="checkbox" name="val_id"
     76                     tal:attributes="value dep/code" /> </td> <td>
     77              <a tal:attributes="href python: view.url(dep)"
     78                 tal:content="dep/__name__"> ID</a> </td> <td>
    7679              <span tal:content="dep/title">ID
    7780              </span> </td>
     
    7982        </tbody>
    8083      </table>
    81       <div class="actionButtons" tal:condition="view/availableActions">
     84      <div tal:condition="view/availableActions">
    8285        <span tal:repeat="action view/actions" tal:omit-tag="">
    83           <input tal:condition="python:action.label in view.tabtwoactions" tal:replace="structure action/render"/>
     86          <input tal:condition="python:action.label in view.tabtwoactions"
     87                 tal:replace="structure action/render"/>
    8488        </span>
    8589      </div>
     
    100104        </thead>
    101105        <tbody>
    102           <tr tal:repeat="entry view/getUsersWithLocalRoles" class="gradeB"> <td>
    103               <input type="checkbox" name="role_id" tal:attributes="value python: entry['user_name']+'|'+entry['local_role']" /> </td>
     106          <tr tal:repeat="entry view/getUsersWithLocalRoles" class="gradeC"> <td>
     107              <input type="checkbox" name="role_id"
     108              tal:attributes="value python: entry['user_name']+'|'+entry['local_role']" /> </td>
    104109            <td tal:content="entry/user_name"> USERNAME </td>
    105110            <td tal:content="entry/user_title"> USERTITLE </td>
     
    108113        </tbody>
    109114      </table>
    110       <div class="actionButtons" tal:condition="view/availableActions">
     115      <div tal:condition="view/availableActions">
    111116        <span tal:repeat="action view/actions" tal:omit-tag="">
    112           <input tal:condition="python:action.label in view.tabthreeactions1" tal:replace="structure action/render"/>
     117          <input tal:condition="python:action.label in view.tabthreeactions1"
     118                 tal:replace="structure action/render"/>
    113119        </span>
    114120      </div><br /><br />
    115       <table class="zebra">
     121      <table class="form-table">
    116122        <tr> <td>
    117123            <select id="user" name="user">
     
    122128            </select> </td> <td>
    123129            <select id="local_role" name="local_role">
    124               <option tal:repeat="localrole view/getLocalRoles" tal:attributes="value localrole/name">
     130              <option tal:repeat="localrole view/getLocalRoles"
     131                      tal:attributes="value localrole/name">
    125132              <span tal:replace="localrole/title">LOCALROLETITLE
    126133              </span>
     
    129136            <div tal:condition="view/availableActions">
    130137              <span tal:repeat="action view/actions" tal:omit-tag="">
    131                 <input tal:condition="python:action.label in view.tabthreeactions2" tal:replace="structure action/render"/>
     138                <input tal:condition="python:action.label in view.tabthreeactions2"
     139                       tal:replace="structure action/render"/>
    132140              </span>
    133141            </div> </td>
  • main/waeup.sirp/trunk/src/waeup/sirp/browser/templates/facultypage.pt

    r5993 r7459  
    55</div>
    66
    7 <table class="zebra">
     7<table>
    88  <thead>
    99    <tr>
     
    1414  <tbody>
    1515    <tr tal:repeat="value context/values">
    16       <td> <a tal:attributes="href value/__name__"> <span tal:content="value/code">Name</span></a></td>
     16      <td> <a tal:attributes="href value/__name__">
     17          <span tal:content="value/code">Name</span></a></td>
    1718      <td tal:content="value/longtitle">Title</td>
    1819    </tr>
  • main/waeup.sirp/trunk/src/waeup/sirp/browser/templates/loginpage.pt

    r7369 r7459  
    11<h2 i18n:translate=""  tal:condition="view/label"  tal:content="view/label">Label</h2>
    22<form method="post">
    3   <table id="login" class="form summary="Table for entering login information">
     3  <table id="login" class="form-table" summary="Table for entering login information">
    44    <tbody>
    55      <tr>
    6         <th>
    7           <label for="form.login">User Name or Student Id
    8           </label>
    9         </th> <td>
    10           <input type="text" id="login" name="form.login" size="20" /> </td>
     6        <td class="fieldname">
     7          User Name or Student Id:
     8        </td>
     9        <td>
     10          <input type="text" id="login" name="form.login" size="20" />
     11        </td>
    1112      </tr>
    1213      <tr>
    13         <th>
    14           <label for="form.password">Password
    15           </label>
    16         </th><td>
     14        <td class="fieldname">
     15          Password:
     16        </td>
     17        <td>
    1718          <input type="password" id="password" name="form.password"  size="20" value="" />
    1819          &nbsp;&nbsp;
     
    2324  </table>
    2425  <input type="hidden" name="camefrom"   tal:attributes="value view/camefrom" />
    25   <input type="submit" name="SUBMIT" value="Login" /><br /><br />
     26  <input class="btn primary" type="submit" name="SUBMIT" value="Login" /><br /><br />
    2627  <p>Don't forget to logout or exit your browser when you're done.
    2728  If you are having trouble logging in, make sure to enable  cookies in your web browser.
  • main/waeup.sirp/trunk/src/waeup/sirp/browser/templates/messages.pt

    r6225 r7459  
    1 <ul>
    2   <li
    3     tal:repeat="message view/messages"
    4     tal:attributes="class message/type"
    5     tal:content="structure message/message">Sauron will arrive soon!
    6   </li>
    7 </ul>
     1<div
     2  tal:repeat="message view/messages"
     3  tal:attributes="class message/type"
     4  tal:content="structure message/message">Sauron will arrive soon!
     5</div>
     6
  • main/waeup.sirp/trunk/src/waeup/sirp/browser/templates/myrolespage.pt

    r7179 r7459  
    11<h3 i18n:translate="">My Portal Roles:</h3>
    2 <span tal:repeat="role view/getSiteRoles">
    3   <div tal:content="role" >ROLE</div>
    4 </span>
    5 <br /><br />
     2<table class="form-table">
     3<tr tal:repeat="role view/getSiteRoles">
     4    <td>
     5      <div tal:content="role" >ROLE</div>
     6    </td>
     7  </tr>
     8</table>
     9
    610<h3 i18n:translate="">My Local Roles:</h3>
    7 <table>
     11<table class="form-table">
    812  <tr tal:repeat="role view/getLocalRoles">
    913    <td valign="top" ><span tal:content="role" >ROLE</span>:</td>
  • main/waeup.sirp/trunk/src/waeup/sirp/browser/templates/notfound.pt

    r6190 r7459  
    33</h2>
    44
    5 <div class="error"><b>Please note the following:</b></div>
     5<div><b>Please note the following:</b></div>
    66<div>
    77  <ol class="list">
  • main/waeup.sirp/trunk/src/waeup/sirp/browser/templates/plainactionbutton.pt

    r7367 r7459  
    1 <span class="yui-button" tal:condition="viewlet/target_url">
    2   <span class="first-child">
     1<span tal:condition="viewlet/target_url">
     2  <span>
    33    <a href=""
    44       tal:attributes="href viewlet/target_url">
  • main/waeup.sirp/trunk/src/waeup/sirp/browser/templates/searchpage.pt

    r6460 r7459  
    33  <input type="text" name="query"
    44         tal:attributes="value view/query" />
    5     <input type="submit" name="SUBMIT" value="Search" />
     5    <input class="btn primary" type="submit" name="SUBMIT" value="Search" />
    66</form>
    77<br />
     
    3131        </tbody>
    3232    </table>
    33     <div class="actionButtons">
    34     </div>
    3533</span>
  • main/waeup.sirp/trunk/src/waeup/sirp/browser/templates/staffsitelayout.pt

    r6723 r7459  
    1313        tal:attributes="title string:RSS feed of ${layout/getAppTitle};
    1414            href python: view.url(layout.site, 'feed.rss')" />
     15  </head>
     16  <body>
     17    <div class="topbar" data-scrollspy="scrollspy" >
     18      <div class="topbar-inner">
     19        <div class="container-fluid">
     20          <a class="brand" href="#" tal:content="layout/getAppAcronym">Acronym</a>
     21          <ul class="nav">
     22            <tal:primary_nav content="structure provider:primary_nav" />
     23          </ul>
     24          <ul class="nav secondary-nav">
     25            <li tal:condition="not: layout/isAuthenticated">
     26            <a href="#" tal:attributes="href python: view.url(layout.site, 'login')">
     27                Login
     28            </a>
     29            </li>
     30            <li tal:condition="layout/isAuthenticated">
     31            <a href="#" tal:attributes="href python: view.url(layout.site, '@@contactadmin')">
     32                Contact
     33            </a>
     34            </li>
     35            <li tal:condition="layout/isAuthenticated">
     36            <a href="#" tal:attributes="href python: view.url(context, '@@logout')">Logout</a>
     37            </li>
     38          </ul>
     39        </div>
     40      </div>
     41    </div>
    1542
    16   </head>
    17   <body class="rounded yui-skin-sam">
    18     <div id="doc3" class="yui-t1">
    19       <div id="hd" role="banner">
    20         <div id="hd">
    21           <h1 id="logo">
    22             <a href="" tal:attributes="href view/application_url">
    23               <span class="uni-logo">
    24               </span> </a>
    25             <span id="uni-title" tal:content="layout/getAppTitle"> Sample University
    26             </span> </h1>
    27           <div id="navigation" class="yui-navset" style="text-align:right;">
    28             <ul id="primary-navigation">
    29               <tal:primary_nav content="structure provider:primary_nav" />
     43    <ul class="breadcrumb">
     44      <tal:breadcrumbs
     45            tal:condition="python: layout.isAuthenticated()"
     46            tal:content="structure provider:breadcrumbs" />
     47      <span tal:condition="layout/getStudentName" class="wfstatus">
     48            Student Id:
     49          <span tal:replace="python:context.getStudent().student_id">Id
     50          </span>&nbsp;&nbsp;
     51          State:
     52          <span tal:replace="python:context.getStudent().state">State
     53          </span>
     54      </span>
     55    </ul>
     56
     57    <div class="container-fluid">
     58      <div class="sidebar">
     59        <div class="well">
     60          <div tal:condition="layout/getStudentName">
     61            <h5 tal:content="layout/getStudentName">Student name</h5>
     62            <ul>
     63              <tal:left content="structure provider:left_studentmanage" />
    3064            </ul>
    31             <ul id="user-navigation">
    32               <li tal:condition="not: layout/isAuthenticated">
    33               <a href="#" tal:attributes="href python: view.url(layout.site, 'login')">
    34                   Login
    35               </a>
    36               </li>
    37               <li tal:condition="layout/isAuthenticated">
    38               <a href="#" tal:attributes="href python: view.url(layout.site, '@@contactadmin')">
    39                   Contact
    40               </a>
    41               </li>
    42               <li tal:condition="layout/isAuthenticated">
    43               <a href="#" tal:attributes="href python: view.url(context, '@@logout')">Logout</a>
    44               </li>
     65          </div>
     66          <div tal:condition="layout/isAuthenticated">
     67            <h5 tal:content="layout/getUserTitle">Username</h5>
     68            <ul>
     69              <tal:left content="structure provider:left" />
    4570            </ul>
    46             <div class="clear">
    47             </div>
    4871          </div>
    4972        </div>
    5073      </div>
    51       <div id="bd" role="main">
    52         <span tal:condition="python: layout.isAuthenticated()"
    53               tal:content="structure provider:breadcrumbs" />
    54 
    55         <div class="yui-b">
    56           <div class="block" tal:condition="layout/getStudentName">
    57             <div class="hd">
    58               <h2 tal:content="layout/getStudentName">Student name</h2>
    59             </div>
    60             <div class="bd">
    61               <tal:left content="structure provider:left_studentmanage" />
    62             </div>
    63           </div>
    64           <div class="block" tal:condition="layout/isAuthenticated">
    65             <div class="hd">
    66               <h2 tal:content="layout/getUserTitle">Username</h2>
    67             </div>
    68             <div class="bd">
    69               <tal:left content="structure provider:left" />
    70             </div>
     74      <div class="span13 content">
     75        <div
     76            tal:define="message context/@@messages"
     77            tal:condition="python: len(message)>11">
     78          <div tal:content="structure message">
    7179          </div>
    7280        </div>
    73 
    74         <div id="yui-main">
    75           <div class="yui-b">
    76             <div class="yui-g">
    77               <div class="block">
    78                 <div class="hd" tal:condition="python: layout.isAuthenticated()">
    79                   <span tal:content="view/title"> THE CONTENT TITLE </span>
    80                   <span tal:condition="layout/getStudentName" class="wfstatus">
    81                   Sudent Id: <span tal:content="python:context.getStudent().student_id">Student Id</span>
    82                   &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
    83                   State: <span tal:content="python:context.getStudent().state">State</span>
    84                   </span>
    85                 </div>
    86                 <div class="bd">
    87                   <div class="actionbar">
    88                     <tal:actionbar content="structure provider:actionbar" />
    89                   </div>
    90                   <div class="alert warning ui-state-error"
    91                       tal:define="message context/@@messages"
    92                       tal:condition="python: len(message)>11">
    93                     <span class="ui-icon ui-icon-alert">A
    94                     </span>
    95                     <span tal:content="structure message">
    96                     </span>
    97                   </div>
    98                   <div tal:replace="structure view/content"> THE CONTENT
    99                   </div>
    100                 </div>
    101               </div>
    102             </div>
    103           </div>
     81        <span tal:replace="structure provider:actionbar" />
     82        <div tal:content="structure view/content"> THE CONTENT
    10483        </div>
    105 
    106       </div>
    107       <div id="ft" role="contentinfo">
    108         <p>Student Information and Registration Portal<br />
    109             Copyright &copy; WAeUP Group, 2008-2011
    110         </p>
     84        <div class="footer">
     85          <p class="pull-right"><a href="#">Back to top</a></p>
     86          <p>
     87            Student Information and Registration Portal<br />
     88            Copyright &copy; WAeUP Group, 2008-2012
     89          </p>
     90        </div>
    11191      </div>
    11292    </div>
  • main/waeup.sirp/trunk/src/waeup/sirp/browser/templates/studentsitelayout.pt

    r7240 r7459  
    1010    <meta name="viewport" content="width=320, initial-scale=1, maximum-scale=1"/>
    1111    <link rel="stylesheet" media="only screen and (max-device-width: 480px)"
    12         tal:attributes="href python: view.url(layout.site, '@@/waeup.sirp.browser/mobile.css')" type="text/css" />
     12        tal:attributes="href python: view.url(layout.site, '@@/waeup.sirp.browser/mobile.css')"
     13        type="text/css" />
    1314    <link rel="shortcut icon" tal:attributes="href static/favicon.ico" type="image/x-icon" />
    1415    <link rel="alternate" type="application/rss+xml" title="RSS"
     
    1617        tal:attributes="title string:RSS feed of ${layout/getAppTitle};
    1718            href python: view.url(layout.site, 'feed.rss')" />
    18 
    1919  </head>
    20   <body class="rounded yui-skin-sam">
    21     <div id="doc3" class="yui-t7">
    22       <div id="hd" role="banner">
    23         <div id="hd">
    24           <h1 id="logo">
    25             <a href="" tal:attributes="href view/application_url">
    26               <span class="uni-logo">
    27               </span> </a>
    28             <span id="uni-title" tal:content="layout/getAppTitle"> Sample University
    29             </span> </h1>
    30           <div id="navigation" class="yui-navset" style="text-align:right;">
    31             <ul id="primary-navigation">
     20  <body>
     21    <div class="topbar" data-scrollspy="scrollspy" >
     22      <div class="topbar-inner">
     23        <div  class="container">
     24          <a class="brand" href="#" tal:content="layout/getAppAcronym">Acronym</a>
     25          <ul class="nav">
    3226              <tal:primary_nav content="structure provider:primary_nav" />
    3327              <tal:primary_nav content="structure provider:primary_nav_student" />
    34             </ul>
    35             <ul id="user-navigation">
    36               <li tal:condition="not: layout/isAuthenticated">
    37               <a href="#" tal:attributes="href python: view.url(layout.site, 'login')">
    38                   Login
    39               </a>
    40               </li>
    41               <li tal:condition="layout/isAuthenticated">
    42               <a href="#" tal:attributes="href python: view.url(layout.site, '@@contactadmin')">
    43                   Contact
    44               </a>
    45               </li>
    46               <li tal:condition="layout/isAuthenticated">
    47               <a href="#" tal:attributes="href python: view.url(context, '@@logout')">Logout</a>
    48               </li>
    49             </ul>
    50             <div class="clear">
    51             </div>
     28          </ul>
     29          <ul class="nav secondary-nav">
     30            <li tal:condition="not: layout/isAuthenticated">
     31            <a href="#" tal:attributes="href python: view.url(layout.site, 'login')">
     32                Login
     33            </a>
     34            </li>
     35            <li tal:condition="layout/isAuthenticated">
     36            <a href="#" tal:attributes="href python: view.url(layout.site, '@@contactadmin')">
     37                Contact
     38            </a>
     39            </li>
     40            <li tal:condition="layout/isAuthenticated">
     41            <a href="#" tal:attributes="href python: view.url(context, '@@logout')">Logout</a>
     42            </li>
     43          </ul>
     44        </div>
     45      </div>
     46    </div>
     47    <div class="container">
     48      <ul class="student-info-bar" tal:condition="layout/isAuthenticated">
     49        <tal:breadcrumbs
     50              tal:condition="python: layout.isAuthenticated()"
     51              tal:content="structure provider:breadcrumbs" />
     52        <span tal:condition="layout/getStudentName" class="wfstatus">
     53              Student Id:
     54            <span tal:replace="python:context.getStudent().student_id">Id
     55            </span>&nbsp;&nbsp;
     56            State:
     57            <span tal:replace="python:context.getStudent().state">State
     58            </span>
     59        </span>
     60      </ul>
     61      <div class="content">
     62        <div tal:define="message context/@@messages"
     63             tal:condition="python: len(message)>11">
     64          <div tal:content="structure message">
    5265          </div>
    5366        </div>
    54       </div>
    55       <div id="bd" role="main">
    56 
    57         <div class="yui-b">
    58           <div class="block" >
    59             <div class="studentmenu">
    60               <div tal:condition="layout/getStudentName"
    61                    tal:replace="structure provider:top_student">
    62                 Student Links
    63               </div>
    64               <div tal:content="structure provider:actionbar">
    65                 Student Actions
    66               </div>
    67             </div>
    68           </div>
     67        <span tal:replace="structure provider:actionbar" />
     68        <div tal:content="structure view/content"> THE CONTENT
    6969        </div>
    70 
    71         <div id="yui-main">
    72           <div class="yui-b">
    73             <div class="yui-g">
    74               <div class="block">
    75                 <div class="bd">
    76                   <div class="actionbar">
    77                     <span tal:condition="layout/getStudentName" class="wfstatus">
    78                     Id:
    79                     <span tal:replace="python:context.getStudent().student_id"
    80                         class="wfstatus">Id</span>
    81                     &nbsp;&nbsp;
    82                     State:
    83                     <span tal:replace="python:context.getStudent().state"
    84                         class="wfstatus">State</span>
    85                     </span>
    86                   </div>
    87                   <div class="alert warning ui-state-error"
    88                       tal:define="message context/@@messages"
    89                       tal:condition="python: len(message)>11">
    90                     <span class="ui-icon ui-icon-alert">A
    91                     </span>
    92                     <span tal:content="structure message">
    93                     </span>
    94                   </div>
    95                   <div tal:replace="structure view/content"> THE CONTENT
    96                   </div>
    97                 </div>
    98               </div>
    99             </div>
    100           </div>
     70        <div class="footer">
     71          <p class="pull-right"><a href="#">Back to top</a></p>
     72          <p>
     73            Student Information and Registration Portal<br />
     74            Copyright &copy; WAeUP Group, 2008-2012
     75          </p>
    10176        </div>
    102 
    103       </div>
    104       <div id="ft" role="contentinfo">
    105         <p>Student Information and Registration Portal<br />
    106             Copyright &copy; WAeUP Group, 2008-2011
    107         </p>
    10877      </div>
    10978    </div>
  • main/waeup.sirp/trunk/src/waeup/sirp/browser/templates/subobjectlist.pt

    r5936 r7459  
    88  </thead>
    99  <tbody>
    10     <tr tal:repeat="row viewletmanager/rows"
    11         tal:attributes="class python: repeat['row'].odd() and 'odd' or 'even'">
     10    <tr tal:repeat="row viewletmanager/rows">
    1211      <td tal:repeat="viewlet row">
    1312        <div tal:replace="structure viewlet/render">
  • main/waeup.sirp/trunk/src/waeup/sirp/browser/templates/universitypage.pt

    r6907 r7459  
    1 <h2 tal:content="view/label">Title</h2>
     1<h1 tal:content="view/label">Title</h1>
    22
    33<span tal:replace="structure view/frontpage">Frontpage</span>
  • main/waeup.sirp/trunk/src/waeup/sirp/browser/templates/usereditformpage.pt

    r7149 r7459  
    11<form action="." tal:attributes="action request/URL" method="post"
    2       class="edit-form" enctype="multipart/form-data">
     2      enctype="multipart/form-data">
    33
    44  <h2 i18n:translate=""
     
    66    tal:content="view/label">Label</h2>
    77
    8   <div class="form-status"
     8  <div class="alert-message error"
    99      tal:define="status view/status"
    1010      tal:condition="status">
     
    2020  </div>
    2121
    22   <table class="zebra">
     22  <table class="form-table">
    2323    <tbody>
    2424      <tal:block repeat="widget view/widgets">
    2525        <tr>
    26           <td class="label">
    27             <label tal:attributes="for widget/name">
    28               <span class="required" tal:condition="widget/required">*</span>
    29               <span i18n:translate="" tal:content="widget/label">label</span>:
    30             </label>
     26          <td class="fieldname">
     27            <span tal:condition="widget/required">*</span>
     28            <span i18n:translate="" tal:content="widget/label">label</span>:
    3129          </td>
    32           <td class="field">
    33             <span class="widget" tal:content="structure widget">
     30          <td>
     31            <span tal:content="structure widget">
    3432              <input type="text" />
    3533            </span>
     
    3836            </tal:error>
    3937            <tal:hint tal:condition="widget/hint">
    40               <span class="hint" tal:content="structure widget/hint">hint</span>
     38              <span tal:content="structure widget/hint">hint</span>
    4139            </tal:hint>
    4240          </td>
     
    4442      </tal:block>
    4543      <tr>
    46         <td class="label"><label>Password:</label></td>
     44        <td class="fieldname">Password:</td>
    4745        <td>
    4846          <input name="password" type="password"  />
     
    5048      </tr>
    5149      <tr>
    52         <td class="label"><label>Retype password:</label></td>
     50        <td class="fieldname">Retype password:</td>
    5351        <td>
    5452          <input name="control_password" type="password" />
     
    5856    </tbody>
    5957  </table>
    60   <div class="actionButtons" tal:condition="view/availableActions">
     58  <div tal:condition="view/availableActions">
    6159    <input tal:repeat="action view/actions"
    6260           tal:replace="structure action/render"
  • main/waeup.sirp/trunk/src/waeup/sirp/browser/templates/userscontainerpage.pt

    r7178 r7459  
    11<h2>Portal Users</h2>
    22
    3 <p>
    4   Here you can manage portal users. 
    5 </p>
    6 
    7 <table class="zebra">
     3<table>
    84  <thead>
    95    <tr>
    106      <th>User ID</th>
    117      <th>Name</th>
    12       <th>Description</th>
    138      <th>Portal Roles</th>
    149      <th>Local Roles</th>
     
    2015      <td tal:content="account/name">User name</td>
    2116      <td tal:content="account/title">Title</td>
    22       <td tal:content="account/description">Description</td>
    2317      <td tal:content="structure python:view.getSiteRoles(account)">SITE ROLES</td>
    2418      <td tal:content="structure python:view.getLocalRoles(account)">LOCAL ROLES</td>
     
    2721          <input type="hidden" name="userid"
    2822           tal:attributes="value account/name"/>
    29             <input type="submit" name="manage" value="manage" />
    30             <input type="submit" name="delete" value="delete" />
     23            <input class="btn" type="submit" name="manage" value="manage" />
     24            <input class="btn" type="submit" name="delete" value="delete" />
    3125        </form>
    3226      </td>
  • main/waeup.sirp/trunk/src/waeup/sirp/browser/theming.py

    r7321 r7459  
    2626from waeup.sirp.browser.interfaces import ITheme
    2727from waeup.sirp.browser.resources import (
    28     waeuptheme_red1, waeuptheme_gray1, waeuptheme_empty,
    29     waeup_base_css,
     28    waeuptheme_empty, waeup_base_css,
    3029    )
    3130
     
    3938        return [waeup_base_css]
    4039
    41 class SIRPThemeRed1(grok.GlobalUtility):
    42     grok.implements(ITheme)
    43     grok.name('red waeup theme')
     40#class SIRPThemeRed1(grok.GlobalUtility):
     41#    grok.implements(ITheme)
     42#    grok.name('red waeup theme')
    4443
    45     description = u"Uli's Red Theme"
     44#    description = u"Uli's Red Theme"
    4645
    47     def getResources(self):
    48         return [waeuptheme_red1]
     46#    def getResources(self):
     47#        return [waeuptheme_red1]
    4948
    50 class SIRPThemeGray1(grok.GlobalUtility):
    51     grok.implements(ITheme)
    52     grok.name('gray waeup theme')
     49#class SIRPThemeGray1(grok.GlobalUtility):
     50#    grok.implements(ITheme)
     51#    grok.name('gray waeup theme')
    5352
    54     description = u"Henrik's Gray Theme"
     53#    description = u"Henrik's Gray Theme"
    5554
    56     def getResources(self):
    57         return [waeuptheme_gray1]
     55#    def getResources(self):
     56#        return [waeuptheme_gray1]
    5857
    5958class SIRPThemeEmpty(grok.GlobalUtility):
  • main/waeup.sirp/trunk/src/waeup/sirp/browser/viewlets.py

    r7334 r7459  
    195195        breadcrumbs = IBreadcrumbContainer(self.view)
    196196        for breadcrumb in breadcrumbs:
    197             yield dict(
    198                 title = breadcrumb.title,
    199                 url = self.view.url(breadcrumb.context, breadcrumb.target)
    200                 )
     197            if breadcrumb.target:
     198                yield dict(
     199                    title = breadcrumb.title,
     200                    url = self.view.url(breadcrumb.context, breadcrumb.target)
     201                    )
    201202
    202203
     
    264265        if self.url:
    265266            if self.icon_url:
    266                 return u'<div class="portlet"><a href="%s"><img src="%s" /> %s </a></div>' % (
     267                return u'<li><a href="%s"><img src="%s" /> %s </a></li>' % (
    267268                    self.url, self.icon_url, self.title)
    268269            else:
    269                 return u'<div class="portlet"><a href="%s">%s </a></div>' % (
     270                return u'<li><a href="%s">%s </a></li>' % (
    270271                    self.url, self.title)
    271272        else:
     
    290291            return ''
    291292        url = self.view.url(grok.getSite(), self.link)
    292         return u'<div class="portlet"><a href="%s">%s</a></div>' % (
     293        return u'<li"><a href="%s">%s</a></li>' % (
    293294                url, self.text)
    294295
     
    325326    def render(self):
    326327        url = self.view.url(grok.getSite(), self.link)
    327         return u'<div class="portlet"><a href="%s">%s</a></div>' % (
     328        return u'<li><a href="%s">%s</a></li>' % (
    328329                url, self.text)
    329330
Note: See TracChangeset for help on using the changeset viewer.