source: main/waeup.fceokene/trunk/src/waeup/fceokene/applicants/browser.py @ 8933

Last change on this file since 8933 was 8933, checked in by Henrik Bettermann, 12 years ago

Merged with waeup.aaue 8930:8931.

  • Property svn:keywords set to Id
File size: 2.1 KB
Line 
1## $Id: browser.py 8933 2012-07-07 10:48:47Z henrik $
2##
3## Copyright (C) 2011 Uli Fouquet & Henrik Bettermann
4## This program is free software; you can redistribute it and/or modify
5## it under the terms of the GNU General Public License as published by
6## the Free Software Foundation; either version 2 of the License, or
7## (at your option) any later version.
8##
9## This program is distributed in the hope that it will be useful,
10## but WITHOUT ANY WARRANTY; without even the implied warranty of
11## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12## GNU General Public License for more details.
13##
14## You should have received a copy of the GNU General Public License
15## along with this program; if not, write to the Free Software
16## Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17##
18"""UI components for basic applicants and related components.
19"""
20import grok
21from kofacustom.nigeria.applicants.browser import  NigeriaApplicantEditFormPage
22from waeup.fceokene.applicants.interfaces import (
23    ICustomPGApplicantEdit, ICustomUGApplicantEdit,
24    IPUTMEApplicantEdit,
25    UG_OMIT_EDIT_FIELDS, PG_OMIT_EDIT_FIELDS, PUTME_OMIT_EDIT_FIELDS,
26    )
27
28
29class CustomApplicantEditFormPage(NigeriaApplicantEditFormPage):
30    """An applicant-centered edit view for applicant data.
31    """
32
33    @property
34    def form_fields(self):
35        target = getattr(self.context.__parent__, 'prefix', None)
36        if target is not None and target.startswith('pg'):
37            form_fields = grok.AutoFields(ICustomPGApplicantEdit)
38            for field in PG_OMIT_EDIT_FIELDS:
39                form_fields = form_fields.omit(field)
40        elif target is not None and target.startswith('putme'):
41            form_fields = grok.AutoFields(IPUTMEApplicantEdit)
42            for field in PUTME_OMIT_EDIT_FIELDS:
43                form_fields = form_fields.omit(field)
44        else:
45            form_fields = grok.AutoFields(ICustomUGApplicantEdit)
46            for field in UG_OMIT_EDIT_FIELDS:
47                form_fields = form_fields.omit(field)
48        form_fields['applicant_id'].for_display = True
49        form_fields['reg_number'].for_display = True
50        return form_fields
Note: See TracBrowser for help on using the repository browser.