Changeset 45


Ignore:
Timestamp:
11 Oct 2005, 12:10:17 (19 years ago)
Author:
joachim
Message:

major rewrite

Location:
waeup_product/trunk
Files:
4 added
1 deleted
6 edited
2 moved

Legend:

Unmodified
Added
Removed
  • waeup_product/trunk/Extensions/install.py

    r28 r45  
    2929        if CPSSubscriptions:
    3030            ptypes = "('Portal', 'CPSMailAccess Message', 'CPSMailAccess Box', 'CPSMailAccess Folder',"\
    31                      +  "'StudentFolder', 'Student', 'Jamb')"
     31                     +  "'University', 'StudentsFolder', 'Student', 'Jamb')"
    3232            condition = "object.portal_type not in %s" % ptypes
    3333   
     
    4242            self.verifyAction('portal_subscriptions', **action)
    4343        if CPSForum:
    44             ptypes = "('StudentFolder', 'Student', 'Jamb')"
     44            ptypes = "('University', 'StudentsFolder', 'Student', 'Jamb')"
    4545            condition = "object.portal_type not in %s" % ptypes
    4646   
     
    7070                        'id'        : 'new_student',
    7171                        'name'      : 'Add Student',
    72                         'action'    : 'string:${object/absolute_url}/create_student',
     72                        'action'    : 'string:${object/absolute_url}/create_student_form',
    7373                        'permission': (View),
    74                         'condition' : 'python: member and here.portal_type == "StudentFolder"',
     74                        'condition' : 'python: member and here.portal_type == "StudentsFolder"',
    7575                        'category'  : 'student',
    7676                        'visible'   : 1,
     
    8888                        'id'        : 'add_jamb',
    8989                        'name'      : 'Add Jamb Data',
    90                         'action'    : 'string:${object/absolute_url}/create_jamb',
     90                        'action'    : 'string:${object/absolute_url}/create_jamb_form',
    9191                        'permission': (),
    9292                        'condition' : 'python:here.portal_type != "Jamb" and len(object.contentItems()) == 0',
     
    119119        dtypes = portal.getWAeUPTypes()
    120120        self.verifyFlexibleTypes(dtypes)
    121         self.allowContentTypes('StudentFolder', ('Workspace','Section',))
     121        self.allowContentTypes('University', ('Workspace','Section',))
    122122        #self.allowContentTypes('Student', ('Workspace', 'Section'))
    123         ptypes = {
    124                   'StudentFolder' : {
    125                   'allowed_content_types': ('Student',),
    126                   'typeinfo_name': 'WAeUP: StudentFolder',
    127                   'add_meta_type': 'Factory-based Type Information',
    128                   },
    129                   'Student' : {
    130                   'allowed_content_types': ('Jamb',),
    131                   'typeinfo_name': 'WAeUP: Student',
    132                   'add_meta_type': 'Factory-based Type Information',
    133                   },
    134                  }
    135         self.verifyContentTypes(ptypes)
     123##        ptypes = {
     124##                  'University' : {
     125##                  'allowed_content_types': ('StudentsFolder',),
     126##                  'typeinfo_name': 'University',
     127##                  'add_meta_type': 'Factory-based Type Information',
     128##                  },
     129##                  'StudentsFolder' : {
     130##                  'allowed_content_types': ('Student',),
     131##                  'typeinfo_name': 'StudentFolder',
     132##                  'add_meta_type': 'Factory-based Type Information',
     133##                  },
     134##                  'Student' : {
     135##                  'allowed_content_types': ('Jamb',),
     136##                  'typeinfo_name': 'Student',
     137##                  'add_meta_type': 'Factory-based Type Information',
     138##                  },
     139##                 }
     140##        self.verifyContentTypes(ptypes)
    136141        ##########################################
    137142        # Schemas
     
    179184                      }
    180185
    181         se_chains = { 'StudentFolder': 'waeup_section_wf',
     186        se_chains = { 'University': 'waeup_section_wf',
     187                      'StudentsFolder': 'waeup_section_wf',
    182188                      'Student': 'waeup_section_wf',
    183189                      'Jamb': 'waeup_section_wf',
  • waeup_product/trunk/__init__.py

    r20 r45  
    55registerDirectory('skins', globals())
    66
    7 import Student
    8 import Widgets
     7import University
     8import Students
    99
    1010fti = ()
    11 fti += Student.factory_type_information
     11contentClasses = (University.University,
     12                  Students.StudentsFolder,
     13                  #Students.Student,
     14                 )
    1215
    13 contentClasses = (Student.Student,)
    14 
    15 contentConstructors = ()
    16 contentConstructors += Student.addStudent,
    17 
     16contentConstructors = (University.addUniversity,
     17                       Students.addStudentsFolder,
     18                       #Students.addStudent,
     19                       )
    1820
    1921def initialize(registrar):
    2022    cmfutils.ContentInit(
    21         'WAeUP Types',
     23        'WAeUP',
    2224        content_types=contentClasses,
    2325        permission=AddPortalContent,
  • waeup_product/trunk/skins/waeup_default/getWAeUPLayouts.py

    r29 r45  
    44layouts = {}
    55
     6# common header layout
     7common_layout = {
     8    'widgets': {
     9        'LanguageSelector': {
     10            'type': 'Document Language Select Widget',
     11            'data': {
     12                'fields': ['Language'],
     13            },
     14        },
     15        'Title': {
     16            'type': 'Heading Widget',
     17            'data': {
     18                'fields': ['Title'],
     19                'level': 1,
     20                'is_i18n': 1,
     21                'is_required': 1,
     22                'label_edit': 'Name',
     23                'display_width': 40,
     24                'size_max': 200,
     25            },
     26        },
     27        'Description': {
     28            'type': 'Text Widget',
     29            'data': {
     30                'fields': ['Description'],
     31                'is_i18n': 1,
     32                'label_edit': 'cpsdoc_description_label_edit',
     33                'label': '',
     34                'css_class': 'ddescription',
     35                'width': 72,
     36                'height': 5,
     37                'render_format': 'text',
     38                'hidden_layout_modes': ('create','edit', 'view'),
     39            },
     40        },
     41        'LanguageSelectorCreation': {
     42            'type': 'Select Widget',
     43            'data': {
     44                'title': 'Language',
     45                'fields': ('Language',),
     46                'is_required': 0,
     47                'label': 'label_language',
     48                'label_edit': 'label_language',
     49                'description': '',
     50                'help': '',
     51                'is_i18n': 0,
     52                'readonly_layout_modes': (),
     53                'hidden_layout_modes': ('create','edit', 'view'),
     54                'hidden_readonly_layout_modes': (),
     55                'hidden_empty': 0,
     56                'hidden_if_expr': '',
     57                'css_class': '',
     58                'vocabulary': 'language_voc',
     59            },
     60        },
     61    },
     62    'layout': {
     63        'style_prefix': 'layout_default_',
     64        'rows': [
     65            [{'widget_id': 'LanguageSelector'}],
     66            [{'widget_id': 'Title'},],
     67            [{'widget_id': 'Description'},],
     68            [{'widget_id': 'LanguageSelectorCreation'}],
     69            ],
     70        },
     71    }
     72layouts['waeup_common'] = common_layout
     73#
     74#
    675student_layout = {
    776    'widgets': {
     
    108177}
    109178layouts['student'] = student_layout
    110 
     179#
     180#
    111181scratch_card = {
    112182    'widgets': {
  • waeup_product/trunk/skins/waeup_default/getWAeUPSchemas.py

    r29 r45  
     1university_schema = {
     2   'allow_discussion': {
     3        'type': 'CPS Int Field',
     4        'data': {
     5            'default_expr': 'python:0',
     6            'is_searchabletext': 0,
     7        },
     8    },
     9}
     10
     11students_folder_schema = {
     12   'allow_discussion': {
     13        'type': 'CPS Int Field',
     14        'data': {
     15            'default_expr': 'python:0',
     16            'is_searchabletext': 0,
     17        },
     18    },
     19}
     20
    121student_schema = {
    222   'allow_discussion': {
     
    300320}
    301321schemas = {}
     322schemas['university'] = university_schema
     323schemas['students'] = students_folder_schema
    302324schemas['student'] = student_schema
    303325schemas['jamb'] = jamb_schema
  • waeup_product/trunk/skins/waeup_default/getWAeUPTypes.py

    r28 r45  
    88ChangePermissions = 'Change permissions'
    99
    10 student_folder_type = {
     10university_type = {
     11    'title': 'WAeUP Base Folder',
     12    'description': 'The WAeUP Container',
     13    'content_icon': 'students_folder.gif',
     14    'content_meta_type': 'University',
     15    'product': 'WAeUP',
     16    'factory': 'addUniversity',
     17    'immediate_view': 'folder_view',
     18    'global_allow': 1,
     19    'filter_content_types': 1,
     20    'allowed_content_types': ('StudentsFolder'),
     21    'allow_discussion': 0,
     22    'cps_is_searchable': 1,
     23    'cps_display_as_document_in_listing': 1,
     24    'cps_proxy_type': 'folder',
     25    'schemas': ['metadata', 'common', 'folder'],
     26    'layouts': ['waeup_common', 'folder'],
     27    'layout_clusters': ['metadata:metadata'],
     28    'cps_section_wf': 'waeup_section_wf',
     29    'actions': ({'id': 'view',
     30                 'name': 'action_view',
     31                 'action': 'folder_view',
     32                 'permissions': (View,)},
     33                {'id': 'new_content',
     34                 'name': 'action_new_content',
     35                 'action': 'folder_factories',
     36                 'permissions': (AddPortalContent,)},
     37                {'id': 'contents',
     38                 'name': 'action_folder_contents',
     39                 'action': 'folder_contents',
     40                 'permissions': (ModifyPortalContent,)},
     41                {'id': 'edit',
     42                 'name': 'action_edit',
     43                 'action': 'cpsdocument_edit_form',
     44                 'permissions': (ModifyPortalContent,)},
     45                {'id': 'metadata',
     46                 'name': 'action_metadata',
     47                 'action': 'cpsdocument_metadata',
     48                 'condition': 'not:portal/portal_membership/isAnonymousUser',
     49                 'permissions': (View,)},
     50                {'id': 'localroles',
     51                 'name': 'action_local_roles',
     52                 'action': 'folder_localrole_form',
     53                 'permissions': (ChangePermissions,)},
     54    )
     55}
     56
     57students_folder_type = {
    1158    'title': 'WAeUP Student Folder',
    1259    'description': 'The WAeUP Student Folder',
    1360    'content_icon': 'students_folder.gif',
    14     'content_meta_type': 'Folder',
    15     'product': 'CPSDefault',
    16     'factory': 'addFolder',
    17     'immediate_view': 'student_folder_view',
     61    'content_meta_type': 'StudentsFolder',
     62    'product': 'WAeUP',
     63    'factory': 'addStudentsFolder',
     64    'immediate_view': 'folder_view',
    1865    'global_allow': 1,
    1966    'filter_content_types': 1,
     
    2572    'cps_proxy_type': 'folder',
    2673    'schemas': ['metadata', 'common', 'folder'],
    27     'layouts': ['folder'],
     74    'layouts': ['waeup_common','folder'],
    2875    'layout_clusters': ['metadata:metadata'],
    2976    'cps_section_wf': 'waeup_section_wf',
     
    3683                 'action': 'folder_factories',
    3784                 'permissions': (AddPortalContent,)},
    38 ##                {'id': 'contents',
    39 ##                 'name': 'action_folder_contents',
    40 ##                 'action': 'folder_contents',
    41 ##                 'permissions': (ModifyPortalContent,)},
     85                {'id': 'contents',
     86                 'name': 'action_folder_contents',
     87                 'action': 'folder_contents',
     88                 'permissions': (ModifyPortalContent,)},
    4289                {'id': 'edit',
    4390                 'name': 'action_edit',
     
    55102    )
    56103}
     104
    57105student_type = {
    58106    'title': 'WAeUP Student',
    59107    'description': '',
    60108    'content_icon': 'student.gif',
    61     'content_meta_type': 'CPS Document',
     109    'content_meta_type': 'Student',
    62110    'product': 'CPSDocument',
    63111    'factory': 'addCPSDocument',
    64112    'immediate_view': 'cpsdocument_view',
     113    #'product': 'WAeUP',
     114    #'factory': 'addStudent',
     115    #'immediate_view': 'student_view',
    65116    'global_allow': True,
    66117    'filter_content_types': True,
     
    70121    'cps_proxy_type': 'document',
    71122    'cps_display_as_document_in_listing': True,
    72     'schemas': ['student'],
    73     'layouts': ['student'],
     123    'schemas': ['metadata','common','student'],
     124    'layouts': ['waeup_common','student'],
     125    'flexible_layouts': (),
     126    'layout_clusters': ['metadata:metadata'],
    74127    'cps_workspace_wf': 'waeup_workspace_wf',
    75128    'cps_section_wf': 'waeup_section_wf',
     
    77130         {'id': 'view',
    78131          'name': 'action_view',
    79           'action': 'string:${object_url}/student_view',
     132          #'action': 'string:${object_url}/student_view',
     133          'action': 'string:${object_url}/cpsdocument_view',
    80134          'condition': '',
    81135          'permission': ('View',),
     
    109163    'description': '',
    110164    'content_icon': 'student.gif',
    111     'content_meta_type': 'CPS Document',
     165    'content_meta_type': 'Scratch Card',
    112166    'product': 'CPSDocument',
    113167    'factory': 'addCPSDocument',
     
    183237
    184238types = {}
    185 types['StudentFolder'] = student_folder_type
     239types['University'] = university_type
     240types['StudentsFolder'] = students_folder_type
    186241types['Student'] = student_type
    187242types['ScratchCard'] = scratch_card
  • waeup_product/trunk/skins/waeup_student/create_student_form.pt

    r44 r45  
    1414               tal:define="items here/contentValues"
    1515               >
    16     <form action="content_create" tal:attributes="action string:${here_url}/content_create"
     16    <form action="content_create" tal:attributes="action string:${here_url}/create_student"
    1717          method="post" class="group">
    1818      <dt>
  • waeup_product/trunk/skins/waeup_student/student_view_main.pt

    r19 r45  
    1313<metal:block fill-slot="main"
    1414             tal:define="student here/getContent;
    15              items here/contentValues">
    16 <span tal:condition="python: 0" tal:content="items" />
    17 <table cellspacing="0" cellpadding="0">
    18     <tal:block condition="python: len(items)">
    19       <tr tal:repeat="item items">
    20         <td colspan="1">
    21           <a href="jamb"
    22              tal:attributes="href item/absolute_url"
    23              tal:content="item/title_or_id"></a>
    24       </td>
     15             items here/contentValues"
     16             >
     17    <span tal:condition="python: 0" tal:content="items" />
     18    <tal:block tal:content="structure student/jamb_where_admitted" />
     19    <table cellspacing="0" cellpadding="0">
     20      <tal:block condition="python: len(items)">
     21        <tr tal:repeat="item items">
     22          <td colspan="1">
     23            <a href="jamb"
     24               tal:attributes="href item/absolute_url"
     25               tal:content="item/title_or_id"></a>
     26          </td>
     27        </tr>
     28      </tal:block>
     29      <tr tal:condition="python:not len(items)">
     30        <td>
     31          no Items yet !
     32        </td>
    2533      </tr>
    26     </tal:block>
    27     <tr tal:condition="python:not len(items)">
    28       <td>
    29         no Items yet !
    30       </td>
    31     </tr>
    32   </table>
    33 </metal:block>
     34    </table>
     35  </metal:block>
    3436</html>
Note: See TracChangeset for help on using the changeset viewer.