Ignore:
Timestamp:
30 Jan 2014, 18:10:06 (11 years ago)
Author:
Henrik Bettermann
Message:

Remove trash and set flash types.

Location:
main/waeup.kofa/branches/uli-diazo-themed/src/waeup/kofa/students
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • main/waeup.kofa/branches/uli-diazo-themed/src/waeup/kofa/students/browser.py

    r11013 r11014  
    107107    """Flash a lock message.
    108108    """
    109     view.flash(_('The requested form is locked (read-only).'))
     109    view.flash(_('The requested form is locked (read-only).'), type="warning")
    110110    view.redirect(view.url(view.context))
    111111    return
     
    155155        view.flash(_(
    156156            'Total credits exceed ${a}.',
    157             mapping = {'a': max_credits}))
     157            mapping = {'a': max_credits}), type="warning")
    158158        return False
    159159    try:
    160160        view.context.addCourseTicket(ticket, course)
    161161    except KeyError:
    162         view.flash(_('The ticket exists.'))
     162        view.flash(_('The ticket exists.'), type="warning")
    163163        return False
    164164    view.flash(_('Successfully added ${a}.',
     
    279279        else:
    280280            if 'search' in form:
    281                 self.flash(_('Empty search string'))
     281                self.flash(_('Empty search string'), type="warning")
    282282            return
    283283        if self.searchtype == 'current_session':
     
    285285                self.searchterm = int(self.searchterm)
    286286            except ValueError:
    287                 self.flash(_('Only year dates allowed (e.g. 2011).'))
     287                self.flash(_('Only year dates allowed (e.g. 2011).'),
     288                           type="danger")
    288289                return
    289290        self.hitlist = search(query=self.searchterm,
    290291            searchtype=self.searchtype, view=self)
    291292        if not self.hitlist:
    292             self.flash(_('No student found.'))
     293            self.flash(_('No student found.'), type="warning")
    293294        return
    294295
     
    321322        else:
    322323            if 'search' in form:
    323                 self.flash(_('Empty search string'))
     324                self.flash(_('Empty search string'), type="warning")
    324325            return
    325326        if self.searchtype == 'current_session':
     
    327328                self.searchterm = int(self.searchterm)
    328329            except ValueError:
    329                 self.flash('Only year dates allowed (e.g. 2011).')
     330                self.flash(_('Only year dates allowed (e.g. 2011).'),
     331                           type="danger")
    330332                return
    331333        if not 'entries' in form:
     
    333335                searchtype=self.searchtype, view=self)
    334336            if not self.hitlist:
    335                 self.flash(_('No student found.'))
     337                self.flash(_('No student found.'), type="warning")
    336338            if 'remove' in form:
    337                 self.flash(_('No item selected.'))
     339                self.flash(_('No item selected.'), type="warning")
    338340            return
    339341        entries = form['entries']
     
    493495            self.flash(_('Your message has been sent.'))
    494496        else:
    495             self.flash(_('An smtp server error occurred.'))
     497            self.flash(_('An smtp server error occurred.'), type="danger")
    496498        return
    497499
     
    534536    def update(self):
    535537        datepicker.need() # Enable jQuery datepicker in date fields.
    536         self.tab1 = self.tab2 = ''
    537         qs = self.request.get('QUERY_STRING', '')
    538         if not qs:
    539             qs = 'tab1'
    540         setattr(self, qs, 'active')
    541538        super(StudentBaseManageFormPage, self).update()
    542539        self.wf_info = IWorkflowInfo(self.context)
     
    552549            errors = validator.validate_password(password, password_ctl)
    553550            if errors:
    554                 self.flash( ' '.join(errors))
     551                self.flash( ' '.join(errors), type="danger")
    555552                return
    556553        changed_fields = self.applyData(self.context, **data)
     
    763760    def update(self):
    764761        datepicker.need() # Enable jQuery datepicker in date fields.
    765         self.tab1 = self.tab2 = ''
    766         qs = self.request.get('QUERY_STRING', '')
    767         if not qs:
    768             qs = 'tab1'
    769         setattr(self, qs, 'active')
    770762        return super(StudentClearanceManageFormPage, self).update()
    771763
     
    791783            self.flash(_('Student has been cleared.'))
    792784        else:
    793             self.flash(_('Student is in wrong state.'))
     785            self.flash(_('Student is in wrong state.'), type="warning")
    794786        self.redirect(self.url(self.context,'view_clearance'))
    795787        return
     
    810802    def update(self):
    811803        if clearance_disabled_message(self.context):
    812             self.flash(clearance_disabled_message(self.context))
     804            self.flash(clearance_disabled_message(self.context), type="warning")
    813805            self.redirect(self.url(self.context,'view_clearance'))
    814806            return
     
    820812            IWorkflowInfo(self.context).fireTransition('reset4')
    821813            message = _('Clearance has been annulled.')
    822             self.flash(message)
     814            self.flash(message, type="warning")
    823815        elif self.context.state == REQUESTED:
    824816            IWorkflowInfo(self.context).fireTransition('reset3')
    825817            message = _('Clearance request has been rejected.')
    826             self.flash(message)
    827         else:
    828             self.flash(_('Student is in wrong state.'))
     818            self.flash(message, type="warning")
     819        else:
     820            self.flash(_('Student is in wrong state.'), type="warning")
    829821            self.redirect(self.url(self.context,'view_clearance'))
    830822            return
     
    983975            return
    984976        super(StudyCourseManageFormPage, self).update()
    985         self.tab1 = self.tab2 = ''
    986         qs = self.request.get('QUERY_STRING', '')
    987         if not qs:
    988             qs = 'tab1'
    989         setattr(self, qs, 'active')
    990977        warning.need()
    991978        return
     
    997984        except ConstraintNotSatisfied:
    998985            # The selected level might not exist in certificate
    999             self.flash(_('Current level not available for certificate.'))
     986            self.flash(_('Current level not available for certificate.'),
     987                       type="warning")
    1000988            return
    1001989        notify(grok.ObjectModifiedEvent(self.context.__parent__))
     
    10221010        level_session = self.request.form.get('level_session', None)
    10231011        if not level_session:
    1024             self.flash(_('You must select a session for the level.'))
    1025             self.redirect(self.url(self.context, u'@@manage')+'?tab2')
     1012            self.flash(_('You must select a session for the level.'),
     1013                       type="warning")
     1014            self.redirect(self.url(self.context, u'@@manage')+'#tab2')
    10261015            return
    10271016        studylevel = createObject(u'waeup.StudentStudyLevel')
     
    10331022            self.flash(_('Study level has been added.'))
    10341023        except KeyError:
    1035             self.flash(_('This level exists.'))
    1036         self.redirect(self.url(self.context, u'@@manage')+'?tab2')
     1024            self.flash(_('This level exists.'), type="warning")
     1025        self.redirect(self.url(self.context, u'@@manage')+'#tab2')
    10371026        return
    10381027
     
    10431032            child_id = form['val_id']
    10441033        else:
    1045             self.flash(_('No study level selected.'))
    1046             self.redirect(self.url(self.context, '@@manage')+'?tab2')
     1034            self.flash(_('No study level selected.'), type="warning")
     1035            self.redirect(self.url(self.context, '@@manage')+'#tab2')
    10471036            return
    10481037        if not isinstance(child_id, list):
     
    10571046            self.context.writeLogMessage(
    10581047                self,'removed: %s' % ', '.join(deleted))
    1059         self.redirect(self.url(self.context, u'@@manage')+'?tab2')
     1048        self.redirect(self.url(self.context, u'@@manage')+'#tab2')
    10601049        return
    10611050
     
    10761065    def update(self, SUBMIT=None):
    10771066        super(StudentTranscriptRequestPage, self).update()
    1078         self.tab1 = self.tab2 = ''
    1079         qs = self.request.get('QUERY_STRING', '')
    1080         if not qs:
    1081             qs = 'tab1'
    1082         setattr(self, qs, 'active')
    10831067        if not self.context.state == GRADUATED:
    1084             self.flash(_("Wrong state"))
     1068            self.flash(_("Wrong state"), type="danger")
    10851069            self.redirect(self.url(self.context))
    10861070            return
     
    10991083            code = get_access_code(pin)
    11001084            if not code:
    1101                 self.flash(_('Activation code is invalid.'))
     1085                self.flash(_('Activation code is invalid.'), type="warning")
    11021086                return
    11031087            if code.state == USED:
    1104                 self.flash(_('Activation code has already been used.'))
     1088                self.flash(_('Activation code has already been used.'),
     1089                           type="warning")
    11051090                return
    11061091            # Mark pin as used (this also fires a pin related transition)
     
    11101095            # expect an exception, but the owner might be different
    11111096            if not invalidate_accesscode(pin, comment, self.context.student_id):
    1112                 self.flash(_('You are not the owner of this access code.'))
     1097                self.flash(_('You are not the owner of this access code.'),
     1098                           type="warning")
    11131099                return
    11141100            self.context.clr_code = pin
     
    11501136    def update(self, SUBMIT=None):
    11511137        super(StudentTranscriptRequestProcessFormPage, self).update()
    1152         self.tab1 = self.tab2 = ''
    1153         qs = self.request.get('QUERY_STRING', '')
    1154         if not qs:
    1155             qs = 'tab1'
    1156         setattr(self, qs, 'active')
    11571138        if self.context.state != TRANSCRIPT:
    1158             self.flash(_('Student is in wrong state.'))
     1139            self.flash(_('Student is in wrong state.'), type="warning")
    11591140            self.redirect(self.url(self.context))
    11601141            return
     
    12141195    def update(self):
    12151196        if not self.context.student.transcript_enabled:
    1216             self.flash(_('You are not allowed to view the transcript.'))
     1197            self.flash(_('You are not allowed to view the transcript.'),
     1198                       type="warning")
    12171199            self.redirect(self.url(self.context))
    12181200            return
     
    12471229    def update(self):
    12481230        if not self.context.student.transcript_enabled:
    1249             self.flash(_('You are not allowed to download the transcript.'))
     1231            self.flash(_('You are not allowed to download the transcript.'),
     1232                       type="warning")
    12501233            self.redirect(self.url(self.context))
    12511234            return
     
    13201303        error = self.context.transfer(**data)
    13211304        if error == -1:
    1322             self.flash(_('Current level does not match certificate levels.'))
     1305            self.flash(_('Current level does not match certificate levels.'),
     1306                       type="warning")
    13231307        elif error == -2:
    1324             self.flash(_('Former study course record incomplete.'))
     1308            self.flash(_('Former study course record incomplete.'),
     1309                       type="warning")
    13251310        elif error == -3:
    1326             self.flash(_('Maximum number of transfers exceeded.'))
     1311            self.flash(_('Maximum number of transfers exceeded.'),
     1312                       type="warning")
    13271313        else:
    13281314            self.flash(_('Successfully transferred.'))
     
    13411327        warning.need()
    13421328        if not self.context.has_key('studycourse_1'):
    1343             self.flash(_('No previous transfer.'))
     1329            self.flash(_('No previous transfer.'), type="warning")
    13441330            self.redirect(self.url(self.context))
    13451331            return
     
    14841470            return
    14851471        super(StudyLevelManageFormPage, self).update()
    1486         self.tab1 = self.tab2 = ''
    1487         qs = self.request.get('QUERY_STRING', '')
    1488         if not qs:
    1489             qs = 'tab1'
    1490         setattr(self, qs, 'active')
    14911472        warning.need()
    14921473        if ADD is not None:
    14931474            if not course:
    1494                 self.flash(_('No valid course code entered.'))
    1495                 self.redirect(self.url(self.context, u'@@manage')+'?tab2')
     1475                self.flash(_('No valid course code entered.'), type="warning")
     1476                self.redirect(self.url(self.context, u'@@manage')+'#tab2')
    14961477                return
    14971478            cat = queryUtility(ICatalog, name='courses_catalog')
    14981479            result = cat.searchResults(code=(course, course))
    14991480            if len(result) != 1:
    1500                 self.flash(_('Course not found.'))
     1481                self.flash(_('Course not found.'), type="warning")
    15011482            else:
    15021483                course = list(result)[0]
    15031484                addCourseTicket(self, course)
    1504             self.redirect(self.url(self.context, u'@@manage')+'?tab2')
     1485            self.redirect(self.url(self.context, u'@@manage')+'#tab2')
    15051486        return
    15061487
     
    15291510            child_id = form['val_id']
    15301511        else:
    1531             self.flash(_('No ticket selected.'))
    1532             self.redirect(self.url(self.context, '@@manage')+'?tab2')
     1512            self.flash(_('No ticket selected.'), type="warning")
     1513            self.redirect(self.url(self.context, '@@manage')+'#tab2')
    15331514            return
    15341515        if not isinstance(child_id, list):
     
    15441525                self,'removed: %s at %s' %
    15451526                (', '.join(deleted), self.context.level))
    1546         self.redirect(self.url(self.context, u'@@manage')+'?tab2')
     1527        self.redirect(self.url(self.context, u'@@manage')+'#tab2')
    15471528        return
    15481529
     
    15591540            return
    15601541        if str(self.context.__parent__.current_level) != self.context.__name__:
    1561             self.flash(_('This level does not correspond current level.'))
     1542            self.flash(_('This level does not correspond current level.'),
     1543                       type="danger")
    15621544        elif self.context.student.state == REGISTERED:
    15631545            IWorkflowInfo(self.context.student).fireTransition(
     
    15651547            self.flash(_('Course list has been validated.'))
    15661548        else:
    1567             self.flash(_('Student is in the wrong state.'))
     1549            self.flash(_('Student is in the wrong state.'), type="warning")
    15681550        self.redirect(self.url(self.context))
    15691551        return
     
    15841566            return
    15851567        if str(self.context.__parent__.current_level) != self.context.__name__:
    1586             self.flash(_('This level does not correspond current level.'))
     1568            self.flash(_('This level does not correspond current level.'),
     1569                       type="danger")
    15871570            self.redirect(self.url(self.context))
    15881571            return
     
    15961579            self.flash(message)
    15971580        else:
    1598             self.flash(_('Student is in the wrong state.'))
     1581            self.flash(_('Student is in the wrong state.'), type="warning")
    15991582            self.redirect(self.url(self.context))
    16001583            return
     
    16241607        return
    16251608
    1626     @action(_('Add course ticket'))
     1609    @action(_('Add course ticket'), style='primary')
    16271610    def addCourseTicket(self, **data):
    16281611        course = data['course']
    16291612        success = addCourseTicket(self, course)
    16301613        if success:
    1631             self.redirect(self.url(self.context, u'@@manage')+'?tab2')
     1614            self.redirect(self.url(self.context, u'@@manage')+'#tab2')
    16321615        return
    16331616
     
    17201703            child_id = form['val_id']
    17211704        else:
    1722             self.flash(_('No payment selected.'))
     1705            self.flash(_('No payment selected.'), type="warning")
    17231706            self.redirect(self.url(self.context))
    17241707            return
     
    17721755                self.flash(
    17731756                    _('Your current session does not match ' + \
    1774                     'accommodation session.'))
     1757                    'accommodation session.'), type="danger")
    17751758                return
    17761759        if 'maintenance' in p_category:
    17771760            current_session = str(student['studycourse'].current_session)
    17781761            if not current_session in student['accommodation']:
    1779                 self.flash(_('You have not yet booked accommodation.'))
     1762                self.flash(_('You have not yet booked accommodation.'),
     1763                           type="warning")
    17801764                return
    17811765        students_utils = getUtility(IStudentsUtils)
     
    17831767            p_category, student, previous_session, previous_level)
    17841768        if error is not None:
    1785             self.flash(error)
     1769            self.flash(error, type="danger")
    17861770            return
    17871771        self.context[payment.p_id] = payment
     
    18061790    def update(self):
    18071791        if self.context.student.before_payment:
    1808             self.flash(_("No previous payment to be made."))
     1792            self.flash(_("No previous payment to be made."), type="warning")
    18091793            self.redirect(self.url(self.context))
    18101794        super(PreviousPaymentAddFormPage, self).update()
     
    18211805            p_category, student, previous_session, previous_level)
    18221806        if error is not None:
    1823             self.flash(error)
     1807            self.flash(error, type="danger")
    18241808            return
    18251809        self.context[payment.p_id] = payment
     
    18541838            balance_level, balance_amount)
    18551839        if error is not None:
    1856             self.flash(error)
     1840            self.flash(error, type="danger")
    18571841            return
    18581842        self.context[payment.p_id] = payment
     
    19861970    def delBedTickets(self, **data):
    19871971        if getattr(self.request.principal, 'user_type', None) == 'student':
    1988             self.flash(_('You are not allowed to remove bed tickets.'))
     1972            self.flash(_('You are not allowed to remove bed tickets.'),
     1973                       type="warning")
    19891974            self.redirect(self.url(self.context))
    19901975            return
     
    19931978            child_id = form['val_id']
    19941979        else:
    1995             self.flash(_('No bed ticket selected.'))
     1980            self.flash(_('No bed ticket selected.'), type="warning")
    19961981            self.redirect(self.url(self.context))
    19971982            return
     
    20452030                    enddate, tz).strftime("%d/%m/%Y %H:%M:%S")
    20462031                self.flash(_("Outside booking period: ${a} - ${b}",
    2047                     mapping = {'a': startdate, 'b': enddate}))
     2032                    mapping = {'a': startdate, 'b': enddate}), type="warning")
    20482033            else:
    2049                 self.flash(_("Outside booking period."))
     2034                self.flash(_("Outside booking period."), type="warning")
    20502035            self.redirect(self.url(self.context))
    20512036            return
    20522037        if not acc_details:
    2053             self.flash(_("Your data are incomplete."))
     2038            self.flash(_("Your data are incomplete."), type="warning")
    20542039            self.redirect(self.url(self.context))
    20552040            return
    20562041        if not student.state in acc_details['allowed_states']:
    2057             self.flash(_("You are in the wrong registration state."))
     2042            self.flash(_("You are in the wrong registration state."),
     2043                       type="warning")
    20582044            self.redirect(self.url(self.context))
    20592045            return
     
    20612047            'booking_session']:
    20622048            self.flash(
    2063                 _('Your current session does not match accommodation session.'))
     2049                _('Your current session does not match accommodation session.'),
     2050                type="warning")
    20642051            self.redirect(self.url(self.context))
    20652052            return
     
    20672054            self.flash(
    20682055                _('You already booked a bed space in current ' \
    2069                     + 'accommodation session.'))
     2056                    + 'accommodation session.'), type="warning")
    20702057            self.redirect(self.url(self.context))
    20712058            return
     
    20792066            code = get_access_code(pin)
    20802067            if not code:
    2081                 self.flash(_('Activation code is invalid.'))
     2068                self.flash(_('Activation code is invalid.'), type="warning")
    20822069                return
    20832070        # Search and book bed
     
    20912078            # XXX: Can be remove if nobody complains.
    20922079            if bed.__parent__.__parent__ is None:
    2093                 self.flash(_('System error: Please contact the adminsitrator.'))
     2080                self.flash(_('System error: Please contact the adminsitrator.'),
     2081                           type="danger")
    20942082                self.context.writeLogMessage(self, 'fatal error: %s' % bed.bed_id)
    20952083                return
     
    21062094                # XXX: Can be remove if nobody complains.
    21072095                if bed.__parent__.__parent__ is None:
    2108                     self.flash(_('System error: Please contact the adminsitrator.'))
     2096                    self.flash(_('System error: Please contact the adminsitrator.'),
     2097                               type="warning")
    21092098                    self.context.writeLogMessage(self, 'fatal error: %s' % bed.bed_id)
    21102099                    return
     
    21122101            else:
    21132102                self.flash(_('There is no free bed in your category ${a}.',
    2114                     mapping = {'a':acc_details['bt']}))
     2103                    mapping = {'a':acc_details['bt']}), type="warning")
    21152104                return
    21162105        if self.with_ac:
    21172106            # Mark pin as used (this also fires a pin related transition)
    21182107            if code.state == USED:
    2119                 self.flash(_('Activation code has already been used.'))
     2108                self.flash(_('Activation code has already been used.'),
     2109                           type="warning")
    21202110                return
    21212111            else:
     
    21252115                if not invalidate_accesscode(
    21262116                    pin,comment,self.context.student.student_id):
    2127                     self.flash(_('You are not the owner of this access code.'))
     2117                    self.flash(_('You are not the owner of this access code.'),
     2118                               type="warning")
    21282119                    return
    21292120        # Create bed ticket
     
    22192210        if self.context.bed != None and \
    22202211              'reserved' in self.context.bed.bed_type:
    2221             self.flash(_("Students in reserved beds can't be relocated."))
     2212            self.flash(_("Students in reserved beds can't be relocated."),
     2213                       type="warning")
    22222214            self.redirect(self.url(self.context))
    22232215            return
     
    22252217                self.context.bed != None and \
    22262218                self.context.bed.bed_type == self.context.bed_type:
    2227             self.flash(_("Student can't be relocated."))
     2219            self.flash(_("Student can't be relocated."), type="warning")
    22282220            self.redirect(self.url(self.context))
    22292221            return
     
    22482240            else:
    22492241                self.flash(_('There is no free bed in your category ${a}.',
    2250                     mapping = {'a':acc_details['bt']}))
     2242                    mapping = {'a':acc_details['bt']}), type="warning")
    22512243                self.redirect(self.url(self.context))
    22522244                return
     
    23312323                self.flash(_('Password changed.'))
    23322324            else:
    2333                 self.flash( ' '.join(errors))
     2325                self.flash( ' '.join(errors), type="warning")
    23342326        return
    23352327
     
    23792371    def update(self, SUBMIT=None):
    23802372        if not self.context.state == ADMITTED:
    2381             self.flash(_("Wrong state"))
     2373            self.flash(_("Wrong state"), type="warning")
    23822374            self.redirect(self.url(self.context))
    23832375            return
    23842376        if not self.portrait_uploaded:
    2385             self.flash(_("No portrait uploaded."))
     2377            self.flash(_("No portrait uploaded."), type="warning")
    23862378            self.redirect(self.url(self.context, 'change_portrait'))
    23872379            return
    23882380        if not self.all_required_fields_filled:
    2389             self.flash(_("Not all required fields filled."))
     2381            self.flash(_("Not all required fields filled."), type="warning")
    23902382            self.redirect(self.url(self.context, 'edit_base'))
    23912383            return
     
    23992391            code = get_access_code(pin)
    24002392            if not code:
    2401                 self.flash(_('Activation code is invalid.'))
     2393                self.flash(_('Activation code is invalid.'), type="warning")
    24022394                return
    24032395            if code.state == USED:
    2404                 self.flash(_('Activation code has already been used.'))
     2396                self.flash(_('Activation code has already been used.'),
     2397                           type="warning")
    24052398                return
    24062399            # Mark pin as used (this also fires a pin related transition)
     
    24102403            # expect an exception, but the owner might be different
    24112404            if not invalidate_accesscode(pin, comment, self.context.student_id):
    2412                 self.flash(_('You are not the owner of this access code.'))
     2405                self.flash(_('You are not the owner of this access code.'),
     2406                           type="warning")
    24132407                return
    24142408            self.context.clr_code = pin
     
    24572451        self.applyData(self.context, **data)
    24582452        if self.dataNotComplete():
    2459             self.flash(self.dataNotComplete())
     2453            self.flash(self.dataNotComplete(), type="warning")
    24602454            return
    24612455        self.flash(_('Clearance form has been saved.'))
     
    24702464                # This shouldn't happen, but the application officer
    24712465                # might have forgotten to lock the form after changing the state
    2472                 self.flash(_('This form cannot be submitted. Wrong state!'))
     2466                self.flash(_('This form cannot be submitted. Wrong state!'),
     2467                           type="danger")
    24732468                return
    24742469            IWorkflowInfo(self.context).fireTransition('request_clearance')
     
    24982493            pin = '%s-%s-%s' % (self.ac_prefix, self.ac_series, self.ac_number)
    24992494            if self.context.clr_code and self.context.clr_code != pin:
    2500                 self.flash(_("This isn't your CLR access code."))
     2495                self.flash(_("This isn't your CLR access code."), type="danger")
    25012496                return
    25022497        state = IWorkflowState(self.context).getState()
     
    25042499            # This shouldn't happen, but the application officer
    25052500            # might have forgotten to lock the form after changing the state
    2506             self.flash(_('This form cannot be submitted. Wrong state!'))
     2501            self.flash(_('This form cannot be submitted. Wrong state!'),
     2502                       type="danger")
    25072503            return
    25082504        IWorkflowInfo(self.context).fireTransition('request_clearance')
     
    25292525        super(StartSessionPage, self).update()
    25302526        if not self.context.next_session_allowed:
    2531             self.flash(_("You are not entitled to start session."))
     2527            self.flash(_("You are not entitled to start session."),
     2528                       type="warning")
    25322529            self.redirect(self.url(self.context))
    25332530            return
     
    25412538            code = get_access_code(pin)
    25422539            if not code:
    2543                 self.flash(_('Activation code is invalid.'))
     2540                self.flash(_('Activation code is invalid.'), type="warning")
    25442541                return
    25452542            # Mark pin as used (this also fires a pin related transition)
    25462543            if code.state == USED:
    2547                 self.flash(_('Activation code has already been used.'))
     2544                self.flash(_('Activation code has already been used.'),
     2545                           type="warning")
    25482546                return
    25492547            else:
     
    25532551                if not invalidate_accesscode(
    25542552                    pin,comment,self.context.student.student_id):
    2555                     self.flash(_('You are not the owner of this access code.'))
     2553                    self.flash(_('You are not the owner of this access code.'),
     2554                               type="warning")
    25562555                    return
    25572556        try:
     
    25662565                    'pay_pg_fee')
    25672566        except ConstraintNotSatisfied:
    2568             self.flash(_('An error occurred, please contact the system administrator.'))
     2567            self.flash(_('An error occurred, please contact the system administrator.'),
     2568                       type="danger")
    25692569            return
    25702570        self.flash(_('Session started.'))
     
    26082608                self.context.certificate,studylevel)
    26092609        except KeyError:
    2610             self.flash(_('This level exists.'))
     2610            self.flash(_('This level exists.'), type="warning")
    26112611        except RequiredMissing:
    2612             self.flash(_('Your data are incomplete'))
     2612            self.flash(_('Your data are incomplete'), type="warning")
    26132613        self.redirect(self.url(self.context))
    26142614        return
     
    26372637        if ADD is not None:
    26382638            if not course:
    2639                 self.flash(_('No valid course code entered.'))
     2639                self.flash(_('No valid course code entered.'), type="warning")
    26402640                return
    26412641            cat = queryUtility(ICatalog, name='courses_catalog')
    26422642            result = cat.searchResults(code=(course, course))
    26432643            if len(result) != 1:
    2644                 self.flash(_('Course not found.'))
     2644                self.flash(_('Course not found.'), type="warning")
    26452645                return
    26462646            course = list(result)[0]
     
    26662666            child_id = form['val_id']
    26672667        else:
    2668             self.flash(_('No ticket selected.'))
     2668            self.flash(_('No ticket selected.'), type="warning")
    26692669            self.redirect(self.url(self.context, '@@edit'))
    26702670            return
     
    26972697            self.flash(_(
    26982698                "You are a postgraduate student, "
    2699                 "your course list can't bee registered."))
     2699                "your course list can't bee registered."), type="warning")
    27002700            self.redirect(self.url(self.context))
    27012701            return
     
    27042704        if self.context.total_credits > max_credits:
    27052705            self.flash(_('Maximum credits of ${a} exceeded.',
    2706                 mapping = {'a':max_credits}))
     2706                mapping = {'a':max_credits}), type="warning")
    27072707            return
    27082708        IWorkflowInfo(self.context.student).fireTransition(
     
    27632763            searchtype='reg_number', view=self)
    27642764        if not hitlist:
    2765             self.flash(_('No student found.'))
     2765            self.flash(_('No student found.'), type="warning")
    27662766            return
    27672767        if len(hitlist) != 1:   # Cannot happen but anyway
    2768             self.flash(_('More than one student found.'))
     2768            self.flash(_('More than one student found.'), type="warning")
    27692769            return
    27702770        student = hitlist[0].context
     
    27742774        code = get_access_code(pin)
    27752775        if not code:
    2776             self.flash(_('Access code is invalid.'))
     2776            self.flash(_('Access code is invalid.'), type="warning")
    27772777            return
    27782778        if student_pw and pin == student.adm_code:
     
    27842784            self.flash(
    27852785                _('Password has already been set. You are using the ' +
    2786                 'wrong Access Code.'))
     2786                'wrong Access Code.'), type="warning")
    27872787            return
    27882788        # Mark pin as used (this also fires a pin related transition)
    27892789        # and set student password
    27902790        if code.state == USED:
    2791             self.flash(_('Access code has already been used.'))
     2791            self.flash(_('Access code has already been used.'), type="warning")
    27922792            return
    27932793        else:
     
    28472847            student = results[0]
    28482848            if getattr(student,'firstname',None) is None:
    2849                 self.flash(_('An error occurred.'))
     2849                self.flash(_('An error occurred.'), type="danger")
    28502850                return
    28512851            elif student.firstname.lower() != firstname.lower():
     
    28532853                # know that a record was found and only the firstname
    28542854                # verification failed.
    2855                 self.flash(_('No student record found.'))
     2855                self.flash(_('No student record found.'), type="warning")
    28562856                return
    28572857            elif student.password is not None and self._pw_used:
    28582858                self.flash(_('Your password has already been set and used. '
    2859                              'Please proceed to the login page.'))
     2859                             'Please proceed to the login page.'),
     2860                           type="warning")
    28602861                return
    28612862            # Store email address but nothing else.
     
    28642865        else:
    28652866            # No record found, this is the truth.
    2866             self.flash(_('No student record found.'))
     2867            self.flash(_('No student record found.'), type="warning")
    28672868            return
    28682869
     
    29742975            self.hitlist = self._searchCatalog(self.session, self.level)
    29752976            if not self.hitlist:
    2976                 self.flash(_('No student found.'))
     2977                self.flash(_('No student found.'), type="warning")
    29772978        return
    29782979
     
    30593060            'configuration'].current_academic_session
    30603061        if self.context.__parent__.__parent__.score_editing_disabled:
    3061             self.flash(_('Score editing disabled.'))
     3062            self.flash(_('Score editing disabled.'), type="warning")
    30623063            self.redirect(self.url(self.context))
    30633064            return
    30643065        if not self.current_academic_session:
    3065             self.flash(_('Current academic session not set.'))
     3066            self.flash(_('Current academic session not set.'), type="warning")
    30663067            self.redirect(self.url(self.context))
    30673068            return
     
    30703071            ticket for ticket in self.tickets if ticket.editable_by_lecturer]
    30713072        if not self.tickets:
    3072             self.flash(_('No student found.'))
     3073            self.flash(_('No student found.'), type="warning")
    30733074            self.redirect(self.url(self.context))
    30743075            return
     
    31003101            if error:
    31013102                self.flash(_('Error: Score(s) of %s have not be updated. '
    3102                   'Only integers are allowed.' % error.strip(', ')))
     3103                  'Only integers are allowed.' % error.strip(', ')),
     3104                  type="danger")
    31033105        return
    31043106
  • main/waeup.kofa/branches/uli-diazo-themed/src/waeup/kofa/students/browser_templates/transcriptprocess.pt

    r10459 r11014  
    11<form method="POST" i18n:domain="waeup.kofa">
    22
    3   <ul class="tabs" data-tabs="tabs">
    4     <li tal:attributes="class view/tab1"><a href="#tab-1">
    5     <span i18n:translate="">Process request</span></a></li>
    6     <li tal:attributes="class view/tab2"><a href="#tab-2">
    7     <span i18n:translate="">View correspondence</span></a></li>
     3  <ul class="tabs nav nav-tabs" data-tabs="tabs">
     4    <li class="active">
     5      <a href="#tab1" data-toggle="tab">
     6        <span i18n:translate="">Process request</span>
     7      </a>
     8    </li>
     9    <li>
     10      <a href="#tab2" data-toggle="tab">
     11        <span i18n:translate="">View correspondence</span>
     12      </a>
     13    </li>
    814  </ul>
    915
    1016  <div class="tab-content">
    11     <div id="tab-1" tal:attributes="class view/tab1">
     17    <div id="tab1" class="active tab-pane">
    1218
    1319      <table class="form-table">
     
    3238    </div>
    3339
    34     <div id="tab-2" tal:attributes="class view/tab2">
     40    <div id="tab2" class="tab-pane">
    3541      <p tal:content="structure view/correspondence"></p>
    3642    </div>
  • main/waeup.kofa/branches/uli-diazo-themed/src/waeup/kofa/students/browser_templates/transcriptrequest.pt

    r10472 r11014  
    11<form method="POST" i18n:domain="waeup.kofa">
    22
    3   <ul class="tabs" data-tabs="tabs">
    4     <li tal:attributes="class view/tab1"><a href="#tab-1">
    5     <span i18n:translate="">Send new request</span></a></li>
    6     <li tal:attributes="class view/tab2"><a href="#tab-2">
    7     <span i18n:translate="">View correspondence</span></a></li>
     3  <ul class="tabs nav nav-tabs" data-tabs="tabs">
     4    <li class="active">
     5      <a href="#tab1" data-toggle="tab">
     6        <span i18n:translate="">Send new request</span>
     7      </a></li>
     8    <li>
     9      <a href="#tab2" data-toggle="tab">
     10        <span i18n:translate="">View correspondence</span>
     11      </a>
     12    </li>
    813  </ul>
    914
    1015  <div class="tab-content">
    11     <div id="tab-1" tal:attributes="class view/tab1">
     16    <div id="tab1" class="active tab-pane">
    1217
    1318      <p i18n:translate="transcript_request"></p>
     
    6570    </div>
    6671
    67     <div id="tab-2"  tal:attributes="class view/tab2">
     72    <div id="tab2" class="tab-pane">
    6873      <p tal:content="structure view/correspondence"></p>
    6974    </div>
Note: See TracChangeset for help on using the changeset viewer.