source: WAeUP_SRP/base/__init__.py @ 3703

Last change on this file since 3703 was 3682, checked in by Henrik Bettermann, 16 years ago
  • Implement Student Pastoral Report for secondary schools
  • Property svn:keywords set to Id
File size: 3.4 KB
RevLine 
[199]1#-*- mode: python; mode: fold -*-
[204]2# $Id: __init__.py 3682 2008-09-21 06:01:55Z henrik $
[206]3from Products.CMFCore.utils import ContentInit, ToolInit
[19]4from Products.CMFCore.DirectoryView import registerDirectory
5from Products.CMFCore import utils as cmfutils
[452]6from Products.CMFCore.permissions import AddPortalContent
[19]7
[199]8from Products.GenericSetup import profile_registry
9from Products.GenericSetup import EXTENSION
[3682]10from Products.GenericSetup import BASE
[19]11
[199]12from Products.CPSCore.interfaces import ICPSSite
[2094]13from Products.CPSDirectory.DirectoryTool import DirectoryTypeRegistry
[199]14
[3673]15import patches
16
[274]17import Products.WAeUP_SRP.WAeUPPermissions
[828]18import WAeUPTool
[200]19
[59]20import Widgets
[828]21tools = (WAeUPTool.WAeUPTool,)
[19]22
[452]23waeup_types = (
[454]24    ("University",('University',)),
25    ("Academics",
26       ("AcademicsFolder",
27        "Certificate",
28        "CertificateCourse",
29        "Faculty",
30        "Department",
31        "Course",
32        "CertificateCourse",
[565]33        "StudyLevel",
[454]34        )
35     ),
36     ("Accommodation",
37        ("AccoFolder",
[622]38         "AccoHall",
[454]39         )
40     ),
[1226]41     ("Payment",
42        ("PaymentsFolder",
43         "Payment",
44         )
45     ),
[454]46     ("Students",
47        ("StudentsFolder",
48         "Student",
[639]49         "StudentAccommodation",
[454]50         "StudentStudyCourse",
[464]51         "StudentCourseResult",
[472]52         "StudentApplication",
[758]53         "StudentPume",
[454]54         "StudentClearance",
55         "StudentPersonal",
[464]56         "StudentStudyLevel",
[760]57         #"Semester",
[467]58         "StudentCourseResult",
[3682]59         "StudentPastoralReport",
[464]60         # move to Academics later
[565]61         #"Semester",
[454]62         )
63      ),
[488]64     ("ScratchCards",
65         ("ScratchCardBatch",
[2013]66          "ScratchCardBatchesFolder",
67         )
68     ),
69     ("Documents",
70        ("DocumentsFolder",
71         "WAeUPDocument",
72        )
[2914]73     ),
[3277]74     ("Upload",
75        ("UploadsFolder",
76         "Upload",
77         )
78     ),
[200]79    )
80
[452]81contentClasses = []
82cc = []
[454]83for modu,names in waeup_types:
84    mod = __import__('Products.WAeUP_SRP.%(modu)s' % vars(),
[452]85                globals(),
86                locals(),
[454]87                ['*',]
[452]88                )
[454]89    for name in names:
90        #print name
91        contentClasses.append(getattr(mod,name))
92        cc.append(getattr(mod,"add%(name)s" % vars()))
93contentConstructors = tuple(cc)
[200]94
[440]95fti = [{} for t in range(len(contentConstructors))]
[200]96
[199]97registerDirectory('skins', globals())
[197]98
[199]99def initialize(registrar):
[828]100    ToolInit('WAeUP Tool',
101              tools=tools,
102              icon='tool.gif',
103              ).initialize(registrar)
[200]104    ContentInit('WAeUP Types',
105                content_types = contentClasses,
106                permission = AddPortalContent,
107                extra_constructors = contentConstructors,
108                fti = fti,
109                ).initialize(registrar)
110
[199]111    # Extension profile registration
112    profile_registry.registerProfile(
113        'default',
[274]114        'WAeUP_SRP',
[199]115        "The WestAfrican e-University Project",
116        'profiles/default',
[274]117        'WAeUP_SRP',
[199]118        EXTENSION,
119        for_=ICPSSite)
[2094]120##    DirectoryTypeRegistry.register(WAeUPTables.Applicants)
[84]121
[3672]122    # Create a faster session container in temp_folder...
123    import Zope
124    from Products.faster.sessiondata import addSessionDataContainer
125    sess_container_name = "faster_session"
126    root = Zope.app()
127    temp = root.unrestrictedTraverse( "/temp_folder", None )
128    if temp is not None and not sess_container_name in temp.objectIds():
[3682]129        addSessionDataContainer( temp, sess_container_name, 9600, 4800,
[3672]130                  lazy=True, title='Faster session data container')
131
Note: See TracBrowser for help on using the repository browser.