~replaceafill/schooltool/cando

« back to all changes in this revision

Viewing changes to src/schooltool/cando/browser/cando.py

  • Committer: Douglas Cerna
  • Date: 2012-04-06 18:04:20 UTC
  • Revision ID: douglascerna@yahoo.com-20120406180420-mja2r3fntbgdpj6p
Set custom longTitle for skills and css for optional ones. Also added edit view for skills

Show diffs side-by-side

added added

removed removed

Lines of Context:
128
128
        self.due_date_hide = True
129
129
        self.average_scoresystem = None
130
130
 
 
131
    def getActivityAttrs(self, activity):
 
132
        shortTitle, longTitle, bestScore = super(
 
133
            ProjectsGradebookOverview, self).getActivityAttrs(activity)
 
134
        longTitle = activity.label + ': ' + longTitle
 
135
        return shortTitle, longTitle, bestScore
 
136
 
131
137
 
132
138
class ProjectBreadcrumbs(flourish.breadcrumbs.Breadcrumbs):
133
139
 
245
251
 
246
252
class SkillPopupMenuView(FlourishActivityPopupMenuView):
247
253
 
248
 
    def update(self):
249
 
        super(SkillPopupMenuView, self).update()
250
 
        self.activity['canDelete'] = False
251
 
        self.activity['moveLeft'] = False
252
 
        self.activity['moveRight'] = False
 
254
    def getActivityAttrs(self, activity):
 
255
        shortTitle, longTitle, bestScore = super(
 
256
            SkillPopupMenuView, self).getActivityAttrs(activity)
 
257
        longTitle = activity.label + ': ' + longTitle
 
258
        return shortTitle, longTitle, bestScore
 
259
 
 
260
 
 
261
class SkillEditView(flourish.form.Form, form.EditForm):
 
262
 
 
263
    template = InheritTemplate(flourish.page.Page.template)
 
264
    label = None
 
265
    legend = _('Skill Details')
 
266
 
 
267
    fields = field.Fields(ISkill).select('title',
 
268
                                         'label',
 
269
                                         'description',
 
270
                                         'required',
 
271
                                         'external_id')
 
272
 
 
273
    def updateActions(self):
 
274
        super(SkillEditView, self).updateActions()
 
275
        self.actions['add'].addClass('button-ok')
 
276
        self.actions['cancel'].addClass('button-cancel')
 
277
 
 
278
    @button.buttonAndHandler(_('Submit'), name='add')
 
279
    def handleApply(self, action):
 
280
        super(SkillEditView, self).handleApply.func(self, action)
 
281
        # XXX: hacky sucessful submit check
 
282
        if (self.status == self.successMessage or
 
283
            self.status == self.noChangesMessage):
 
284
            self.request.response.redirect(self.nextURL())
 
285
 
 
286
    @button.buttonAndHandler(_("Cancel"))
 
287
    def handle_cancel_action(self, action):
 
288
        self.request.response.redirect(self.nextURL())
 
289
 
 
290
    def nextURL(self):
 
291
        next = self.request.get('nexturl')
 
292
        if next:
 
293
            return next
 
294
        worksheet = self.context.__parent__
 
295
        return absoluteURL(worksheet, self.request) + '/gradebook'