#-*- mode: python; mode: fold -*- from Globals import InitializeClass from AccessControl import ClassSecurityInfo from Products.CMFCore.utils import UniqueObject, getToolByName from Products.CMFCore.permissions import View from Products.CMFCore.permissions import ModifyPortalContent from Products.CPSCore.CPSBase import CPSBase_adder, CPSBaseFolder #from Products.CPSCore.CPSBase import CPSBaseDocument as BaseDocument from Products.CPSDocument.CPSDocument import CPSDocument from Products.CPSCore.CPSBase import CPSBaseBTreeFolder as BaseBTreeFolder class StudentsFolder(BaseBTreeFolder): ###( """ WAeUP container for the various WAeUP containers data """ meta_type = 'Students Folder' portal_type = meta_type security = ClassSecurityInfo() InitializeClass(StudentsFolder) def addStudentsFolder(container, id, REQUEST=None, **kw): """Add a Student.""" ob = StudentsFolder(id, **kw) return CPSBase_adder(container, ob, REQUEST=REQUEST) ###) student_fti = { ###( 'title': 'WAeUP Student', 'description': '', 'content_icon': 'student.gif', 'content_meta_type': 'Student', 'factory': 'addStudent', 'immediate_view': 'cpsdocument_view', 'global_allow': True, 'filter_content_types': True, 'allowed_content_types': ('Jamb','StudentPersonal'), 'allow_discussion': False, ## 'actions': ( ## {'id': 'view', ## 'name': 'action_view', ## 'action': 'string:${object_url}/student_index_html', ## #'action': 'string:${object_url}/cpsdocument_view', ## 'condition': '', ## 'permission': ('View',), ## 'category': 'object', ## 'visible': True,}, ## {'id': 'new_content', ## 'name': 'Add Data', ## 'action': 'string:${object_url}/folder_factories', ## 'condition': "python:1 or len(object.contentItems()) == 0 ", ## 'permission': ('Modify portal content',), ## 'category': 'object', ## 'visible': True,}, ## {'id': 'contents', ## 'name': 'action_folder_contents', ## 'action': 'string:${object_url}/folder_contents', ## 'condition': "python:1 or object.getTypeInfo().cps_proxy_type != 'document'", ## 'permission': ('Modify portal content',), ## 'category': 'object', ## 'visible': True,}, ## {'id': 'edit', ## 'name': 'action_edit', ## 'action': 'string:${object_url}/cpsdocument_edit_form', ## 'condition': '', ## 'permission': ('Modify portal content',), ## 'category': 'object', ## 'visible': True,}, ## ) } ###) class Student(CPSDocument): ###( """ WAeUP Student container for the various student data """ meta_type = 'Student' portal_type = meta_type security = ClassSecurityInfo() InitializeClass(Student) def addStudent(container, id, REQUEST=None, **kw): """Add a Student.""" ob = Student(id, **kw) return CPSBase_adder(container, ob, REQUEST=REQUEST) ###) studentpersonal_fti = { ###( 'title': 'WAeUP StudentPersonal', 'description': '', 'content_icon': 'student.gif', 'content_meta_type': 'StudentPersonal', 'factory': 'addStudent', 'immediate_view': 'student_personal_index_html', 'global_allow': True, 'filter_content_types': True, 'allowed_content_types': (), 'allow_discussion': False, ## 'actions': ( ## {'id': 'view', ## 'name': 'action_view', ## 'action': 'string:${object_url}/student_index_html', ## #'action': 'string:${object_url}/cpsdocument_view', ## 'condition': '', ## 'permission': ('View',), ## 'category': 'object', ## 'visible': True,}, ## {'id': 'new_content', ## 'name': 'Add Data', ## 'action': 'string:${object_url}/folder_factories', ## 'condition': "python:1 or len(object.contentItems()) == 0 ", ## 'permission': ('Modify portal content',), ## 'category': 'object', ## 'visible': True,}, ## {'id': 'contents', ## 'name': 'action_folder_contents', ## 'action': 'string:${object_url}/folder_contents', ## 'condition': "python:1 or object.getTypeInfo().cps_proxy_type != 'document'", ## 'permission': ('Modify portal content',), ## 'category': 'object', ## 'visible': True,}, ## {'id': 'edit', ## 'name': 'action_edit', ## 'action': 'string:${object_url}/cpsdocument_edit_form', ## 'condition': '', ## 'permission': ('Modify portal content',), ## 'category': 'object', ## 'visible': True,}, ## ) } ###) class StudentPersonal(CPSDocument): ###( """ WAeUP Student container for the various student data """ meta_type = 'StudentPersonal' portal_type = meta_type security = ClassSecurityInfo() InitializeClass(StudentPersonal) def addStudentPersonal(container, id, REQUEST=None, **kw): """Add a Students personal data.""" ob = StudentPersonal(id, **kw) return CPSBase_adder(container, ob, REQUEST=REQUEST) ###) jamb_fti = { ###( 'title': 'WAeUP Jamb', 'description': '', 'content_icon': '', 'content_meta_type': 'Jamb', 'factory': 'addJamb', 'immediate_view': 'cpsdocument_view', 'global_allow': True, 'filter_content_types': True, 'allowed_content_types': ('Course',), 'allow_discussion': False, ## 'actions': ( ## {'id': 'view', ## 'name': 'action_view', ## 'action': 'string:${object_url}/jamb_index_html', ## 'condition': '', ## 'permission': ('View',), ## 'category': 'object', ## 'visible': True,}, ## {'id': 'new_content', ## 'name': 'Add Data', ## 'action': 'string:${object_url}/folder_factories', ## 'condition': "python:1 or len(object.contentItems()) == 0 ", ## 'permission': ('Modify portal content',), ## 'category': 'object', ## 'visible': True,}, ## {'id': 'contents', ## 'name': 'action_folder_contents', ## 'action': 'string:${object_url}/folder_contents', ## 'condition': "python:1 or object.getTypeInfo().cps_proxy_type != 'document'", ## 'permission': ('Modify portal content',), ## 'category': 'object', ## 'visible': True,}, ## {'id': 'edit', ## 'name': 'action_edit', ## 'action': 'string:${object_url}/cpsdocument_edit_form', ## 'condition': '', ## 'permission': ('Modify portal content',), ## 'category': 'object', ## 'visible': True,}, ## ) } ###) class Jamb(CPSDocument): ###( """ WAeUP Jamb containing the courses and students """ meta_type = 'Jamb' portal_type = meta_type security = ClassSecurityInfo() InitializeClass(Jamb) def addJamb(container, id, REQUEST=None, **kw): """Add a Jamb.""" ob = Jamb(id, **kw) return CPSBase_adder(container, ob, REQUEST=REQUEST) ###)