Index: WAeUP_SRP/trunk/Academics.py
===================================================================
--- WAeUP_SRP/trunk/Academics.py	(revision 318)
+++ WAeUP_SRP/trunk/Academics.py	(revision 319)
@@ -6,9 +6,9 @@
 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 
-#from Products.CPSCore.CPSBase import CPSBaseBTreeDocument as BaseBTreeDocument 
+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
+#from Products.CPSCore.CPSBase import CPSBaseBTreeDocument as BaseBTreeDocument
 #from Products.CMFCore.DirectoryView import registerDirectory
 
@@ -25,5 +25,5 @@
 class AcademicsFolder(CPSDocument): ###(
     """
-    WAeUP AcademicsFolder containing StudyCourses 
+    WAeUP AcademicsFolder containing StudyCourses
     """
     meta_type = 'AcademicsFolder'
@@ -37,5 +37,5 @@
 
     security.declareProtected(View,"loadFacultiesFromCSV")###(
-    def loadFacultiesFromCSV(self): 
+    def loadFacultiesFromCSV(self):
         """install Universityspecific Faculies from CSV values"""
         #return
@@ -75,5 +75,5 @@
 
     security.declareProtected(ModifyPortalContent,"yamlDumpFaculties")###(
-    def yamlDumpFaculties(self): 
+    def yamlDumpFaculties(self):
         """dump Faculies to Yaml"""
         #return
@@ -92,5 +92,5 @@
         return self.academics.temporary_view_all()
         return self.temporary_view_all()
-            
+
     ###)
 
@@ -131,9 +131,9 @@
                     dict = {'Title': dep['Description']}
                     d.getContent().edit(mapping=dict)
-                    d.invokeFactory('CoursesFolder','Courses')
+                    d.invokeFactory('CoursesFolder','courses')
                     courses = getattr(d,'Courses')
                     dict = {'Title': 'Courses'}
                     courses.getContent().edit(mapping=dict)
-                    d.invokeFactory('CertificatesFolder','Certificates')
+                    d.invokeFactory('CertificatesFolder','certificates')
                     certificates = getattr(d,'Certificates')
                     dict = {'Title': 'Certificates'}
@@ -141,5 +141,5 @@
         return self.academics.academics_contents()
     ###)
-    
+
     security.declareProtected(ModifyPortalContent,"loadCoursesFromCSV")###(
     def loadCoursesFromCSV(self):
@@ -212,5 +212,5 @@
             dict = {'Title': course['Description']}
             dict['code'] = course_id
-            dict['org_code'] = course.get('CourseCode') 
+            dict['org_code'] = course.get('CourseCode')
             dict['credits'] = course.get('Credits')
             dict['semester'] = course.get('Semester')
@@ -288,6 +288,6 @@
             dict = {'Title': certificate['Description']}
             dict['code'] = code
-            dict['faculty'] = certificate.get('Faculty') 
-            dict['department'] = certificate.get('Dept') 
+            dict['faculty'] = certificate.get('Faculty')
+            dict['department'] = certificate.get('Dept')
             dict['max_pass'] = certificate.get('MaxPass')
             dict['max_load'] = certificate.get('MaxLoad')
@@ -297,5 +297,5 @@
             dict['nr_years'] = int(certificate.get('Nyears'))
             nc = certificate.get('Ncore','1')
-            try: 
+            try:
                 dict['n_core'] = int(nc)
             except:
@@ -402,6 +402,6 @@
             dict['code'] = cert_course.get('CosCode')
             dict['certificate_code'] = code
-            dict['certificate_code_org'] = cert_course.get('CertCode') 
-            dict['department'] = cert_course.get('Dept') 
+            dict['certificate_code_org'] = cert_course.get('CertCode')
+            dict['department'] = cert_course.get('Dept')
             dict['admin_status'] = cert_course.get('Admstatus')
             dict['session'] = cert_course.get('Session')
@@ -426,10 +426,10 @@
 class Certificate(CPSDocument): ###(
     """
-    WAeUP Certificate 
+    WAeUP Certificate
     """
     meta_type = 'Certificate'
     portal_type = meta_type
     security = ClassSecurityInfo()
-    
+
     def __init__(self, id, **kw):
         CPSDocument.__init__(self, id, **kw)
@@ -451,18 +451,18 @@
 class CertificateCourse(CPSDocument): ###(
     """
-    WAeUP CertificateCourse  
+    WAeUP CertificateCourse
     """
     meta_type = 'CertificateCourse'
     portal_type = meta_type
     security = ClassSecurityInfo()
-    
+
     def getCourseEntry(self,cid):
         res = self.portal_catalog({'meta_type': "Course",
                                            'id': cid})
         if res:
-            return res[-1]  
+            return res[-1]
         else:
             return None
-        
+
     security.declareProtected(View,"Title")
     def Title(self):
@@ -480,5 +480,5 @@
             return "%s" % ce.credits
         return "0"
-    
+
     security.declareProtected(View,"passmark")
     def passmark(self):
@@ -487,6 +487,6 @@
         if ce is not None and hasattr(ce,"passmark"):
             return ce.passmark
-        
-    
+
+
     security.declareProtected(View,"coursepath")
     def coursepath(self):
@@ -496,5 +496,5 @@
             return ce.getPath()
         return "?"
-    
+
 
 InitializeClass(CertificateCourse)
@@ -508,10 +508,10 @@
 class Faculty(CPSDocument): ###(
     """
-    WAeUP Faculty containing Departments 
+    WAeUP Faculty containing Departments
     """
     meta_type = 'Faculty'
     portal_type = meta_type
     security = ClassSecurityInfo()
-    
+
 ##    def __init__(self, id, **kw):
 ##        CPSDocument.__init__(self, id, **kw)
@@ -521,10 +521,10 @@
         """compose title"""
         return "%s" % (self.title)
-    
+
     security.declareProtected(View,"LongTitle")
     def LongTitle(self):
         """compose long_title"""
         itype = self.portal_vocabularies.institution_types_voc.get(self.institution_type,default="Faculty of")
-        
+
         return "%s %s" % (itype,self.title)
 
@@ -558,5 +558,5 @@
             self.institution_type = "department"
         itype = self.portal_vocabularies.institution_types_voc.get(self.institution_type,default="Department of")
-        
+
         return "%s %s" % (itype,self.title)
 
@@ -567,5 +567,5 @@
     object = Department(id, **kw)
     id = object.getId()
-    container._setObject(id, object)    
+    container._setObject(id, object)
 ##    dep = getattr(container,id).getEditableContent()   #getContent()
 ##    dep.invokeFactory('CoursesFolder','Courses')
@@ -585,5 +585,5 @@
 class Course(CPSDocument): ###(
     """
-    WAeUP Course  
+    WAeUP Course
     """
     meta_type = 'Course'
@@ -595,5 +595,5 @@
         """compose title"""
         return self.title
-    
+
 InitializeClass(Course)
 
@@ -606,10 +606,10 @@
 class CourseTicket(CPSDocument): ###(
     """
-    WAeUP CourseTicket  
+    WAeUP CourseTicket
     """
     meta_type = 'CourseTicket'
     portal_type = meta_type
     security = ClassSecurityInfo()
-    
+
 InitializeClass(CourseTicket)
 
Index: WAeUP_SRP/trunk/profiles/default/cps_portlets/portlet_778397196.xml
===================================================================
--- WAeUP_SRP/trunk/profiles/default/cps_portlets/portlet_778397196.xml	(revision 318)
+++ WAeUP_SRP/trunk/profiles/default/cps_portlets/portlet_778397196.xml	(revision 319)
@@ -24,5 +24,5 @@
   <e v="view"/>
   <e v="edit"/>
-  <e v="delegate"/>
+  <e v="localroles"/>
   <e v="new_entry"/>
   <e v="approve"/>
Index: WAeUP_SRP/trunk/profiles/default/layouts/course.xml
===================================================================
--- WAeUP_SRP/trunk/profiles/default/layouts/course.xml	(revision 318)
+++ WAeUP_SRP/trunk/profiles/default/layouts/course.xml	(revision 319)
@@ -63,10 +63,10 @@
  </widget>
  <widget name="semester" meta_type="Int Widget">
-  <property name="title">Nr of semesters</property>
+  <property name="title">Nr of Semester</property>
   <property name="fields">
    <element value="semester"/>
   </property>
   <property name="label">Nr of semesters</property>
-  <property name="label_edit">Nr of semesters</property>
+  <property name="label_edit">Nr of Semester</property>
   <property name="readonly_layout_modes"/>
   <property name="hidden_layout_modes"/>
Index: WAeUP_SRP/trunk/profiles/default/types/AccoFolder.xml
===================================================================
--- WAeUP_SRP/trunk/profiles/default/types/AccoFolder.xml	(revision 318)
+++ WAeUP_SRP/trunk/profiles/default/types/AccoFolder.xml	(revision 319)
@@ -54,5 +54,5 @@
   <permission value="University Manage"/>
  </action>
- <action title="delegate" action_id="localroles" category="object"
+ <action title="Delegate" action_id="localroles" category="object"
     condition_expr="" url_expr="string:${object_url}/folder_localrole_form"
     visible="False">
Index: WAeUP_SRP/trunk/profiles/default/types/Accommodation.xml
===================================================================
--- WAeUP_SRP/trunk/profiles/default/types/Accommodation.xml	(revision 318)
+++ WAeUP_SRP/trunk/profiles/default/types/Accommodation.xml	(revision 319)
@@ -48,5 +48,5 @@
   <permission value="Modify portal content"/>
  </action>
- <action title="delegate" action_id="localroles" category="object"
+ <action title="Delegate" action_id="localroles" category="object"
     condition_expr="" url_expr="string:${object_url}/folder_localrole_form"
     visible="False">
Index: WAeUP_SRP/trunk/profiles/default/types/Certificate.xml
===================================================================
--- WAeUP_SRP/trunk/profiles/default/types/Certificate.xml	(revision 318)
+++ WAeUP_SRP/trunk/profiles/default/types/Certificate.xml	(revision 319)
@@ -49,5 +49,5 @@
   <permission value="Modify portal content"/>
  </action>
- <action title="delegate" action_id="localroles" category="object"
+ <action title="Delegate" action_id="localroles" category="object"
     condition_expr="" url_expr="string:${object_url}/folder_localrole_form"
     visible="True">
Index: WAeUP_SRP/trunk/profiles/default/types/CertificateCourse.xml
===================================================================
--- WAeUP_SRP/trunk/profiles/default/types/CertificateCourse.xml	(revision 318)
+++ WAeUP_SRP/trunk/profiles/default/types/CertificateCourse.xml	(revision 319)
@@ -44,5 +44,5 @@
     condition_expr="" url_expr="string:${object_url}/cpsdocument_metadata"
     visible="False"/>
- <action title="delegate" action_id="localroles" category="object"
+ <action title="Delegate" action_id="localroles" category="object"
     condition_expr="" url_expr="string:${object_url}/folder_localrole_form"
     visible="True"/>
Index: WAeUP_SRP/trunk/profiles/default/types/CertificatesFolder.xml
===================================================================
--- WAeUP_SRP/trunk/profiles/default/types/CertificatesFolder.xml	(revision 318)
+++ WAeUP_SRP/trunk/profiles/default/types/CertificatesFolder.xml	(revision 319)
@@ -39,5 +39,5 @@
   <permission value="View"/>
  </action>
- <action title="delegate" action_id="localroles" category="object"
+ <action title="Delegate" action_id="localroles" category="object"
     condition_expr="" url_expr="string:${object_url}/folder_localrole_form"
     visible="True">
Index: WAeUP_SRP/trunk/profiles/default/types/Course.xml
===================================================================
--- WAeUP_SRP/trunk/profiles/default/types/Course.xml	(revision 318)
+++ WAeUP_SRP/trunk/profiles/default/types/Course.xml	(revision 319)
@@ -48,5 +48,5 @@
   <permission value="Modify portal content"/>
  </action>
- <action title="delegate" action_id="localroles" category="object"
+ <action title="Delegate" action_id="localroles" category="object"
     condition_expr="" url_expr="string:${object_url}/folder_localrole_form"
     visible="False">
Index: WAeUP_SRP/trunk/profiles/default/types/CourseTicket.xml
===================================================================
--- WAeUP_SRP/trunk/profiles/default/types/CourseTicket.xml	(revision 318)
+++ WAeUP_SRP/trunk/profiles/default/types/CourseTicket.xml	(revision 319)
@@ -45,5 +45,5 @@
   <permission value="University Manage"/>
  </action>
- <action title="delegate" action_id="localroles" category="object"
+ <action title="Delegate" action_id="localroles" category="object"
     condition_expr="" url_expr="string:${object_url}/folder_localrole_form"
     visible="False">
Index: WAeUP_SRP/trunk/profiles/default/types/CoursesFolder.xml
===================================================================
--- WAeUP_SRP/trunk/profiles/default/types/CoursesFolder.xml	(revision 318)
+++ WAeUP_SRP/trunk/profiles/default/types/CoursesFolder.xml	(revision 319)
@@ -30,5 +30,5 @@
   <permission value="View archived revisions"/>
  </action>
- <action title="delegate" action_id="localroles" category="object"
+ <action title="Delegate" action_id="localroles" category="object"
     condition_expr="" url_expr="string:${object_url}/folder_localrole_form"
     visible="False"/>
Index: WAeUP_SRP/trunk/profiles/default/types/Jamb.xml
===================================================================
--- WAeUP_SRP/trunk/profiles/default/types/Jamb.xml	(revision 318)
+++ WAeUP_SRP/trunk/profiles/default/types/Jamb.xml	(revision 319)
@@ -38,5 +38,5 @@
     condition_expr="" url_expr="string:${object_url}/waeup_edit_form"
     visible="True"/>
- <action title="delegate" action_id="localroles" category="object"
+ <action title="Delegate" action_id="localroles" category="object"
     condition_expr="" url_expr="string:${object_url}/folder_localrole_form"
     visible="False">
Index: WAeUP_SRP/trunk/profiles/default/types/SCFolder.xml
===================================================================
--- WAeUP_SRP/trunk/profiles/default/types/SCFolder.xml	(revision 318)
+++ 	(revision )
@@ -1,52 +1,0 @@
-<?xml version="1.0"?>
-<object name="SCFolder" meta_type="CPS Flexible Type Information"
-   xmlns:i18n="http://xml.zope.org/namespaces/i18n">
- <property name="title">WAeUP StudyCourse Folder</property>
- <property name="description">The WAeUP StudyCourses Folder</property>
- <property name="content_icon"></property>
- <property name="content_meta_type">SCFolder</property>
- <property name="product">CPSDefault</property>
- <property name="factory">addFolder</property>
- <property name="immediate_view">folder_view</property>
- <property name="global_allow">True</property>
- <property name="filter_content_types">True</property>
- <property name="allowed_content_types">
-  <element value="Certificate"/>
- </property>
- <property name="allow_discussion">False</property>
- <property name="cps_is_searchable">True</property>
- <property name="cps_proxy_type">folder</property>
- <property name="cps_display_as_document_in_listing">True</property>
- <property name="schemas">
-  <element value="metadata"/>
-  <element value="common"/>
-  <element value="folder"/>
- </property>
- <property name="layouts">
-  <element value="common"/>
-  <element value="folder"/>
- </property>
- <property name="layout_clusters">
-  <element value="metadata:metadata"/>
- </property>
- <property name="flexible_layouts"/>
- <property name="storage_methods"/>
- <property name="cps_is_portlet">False</property>
- <alias from="(Default)" to="temporary_view_all"/>
- <alias from="view" to="temporary_view_all"/>
- <action title="Standard View" action_id="view" category="object"
-    condition_expr="" url_expr="string:${object_url}/temporary_view_all"
-    visible="True">
-  <permission value="View"/>
- </action>
- <action title="Add Certificate" action_id="add_certificate" category="object"
-    condition_expr="python:True or member and 'UniversityManager'in member.getRoles()"
-    url_expr="string:${object/absolute_url}/create_certificate"
-    visible="True"/>
- <action title="action_folder_contents" action_id="contents" category="object"
-    condition_expr="" url_expr="string:${object/absolute_url}/folder_contents"
-    visible="True"/>
- <action title="delegate" action_id="localroles" category="object"
-    condition_expr="" url_expr="string:${object_url}/folder_localrole_form"
-    visible="False"/>
-</object>
Index: WAeUP_SRP/trunk/profiles/default/types/Semester.xml
===================================================================
--- WAeUP_SRP/trunk/profiles/default/types/Semester.xml	(revision 318)
+++ WAeUP_SRP/trunk/profiles/default/types/Semester.xml	(revision 319)
@@ -50,5 +50,5 @@
   <permission value="University Manage"/>
  </action>
- <action title="delegate" action_id="localroles" category="object"
+ <action title="Delegate" action_id="localroles" category="object"
     condition_expr="" url_expr="string:${object_url}/folder_localrole_form"
     visible="False">
Index: WAeUP_SRP/trunk/profiles/default/types/Student.xml
===================================================================
--- WAeUP_SRP/trunk/profiles/default/types/Student.xml	(revision 318)
+++ WAeUP_SRP/trunk/profiles/default/types/Student.xml	(revision 319)
@@ -48,5 +48,5 @@
   <permission value="University Manage"/>
  </action>
- <action title="delegate" action_id="localroles" category="object"
+ <action title="Delegate" action_id="localroles" category="object"
     condition_expr="" url_expr="string:${object_url}/folder_localrole_form"
     visible="False">
Index: WAeUP_SRP/trunk/profiles/default/types/StudentsFolder.xml
===================================================================
--- WAeUP_SRP/trunk/profiles/default/types/StudentsFolder.xml	(revision 318)
+++ WAeUP_SRP/trunk/profiles/default/types/StudentsFolder.xml	(revision 319)
@@ -61,5 +61,5 @@
   <permission value="Modify portal content"/>
  </action>
- <action title="delegate" action_id="localroles" category="object"
+ <action title="Delegate" action_id="localroles" category="object"
     condition_expr="" url_expr="string:${object_url}/folder_localrole_form"
     visible="True">
Index: WAeUP_SRP/trunk/profiles/default/types/StudyLevel.xml
===================================================================
--- WAeUP_SRP/trunk/profiles/default/types/StudyLevel.xml	(revision 318)
+++ WAeUP_SRP/trunk/profiles/default/types/StudyLevel.xml	(revision 319)
@@ -44,5 +44,5 @@
     condition_expr="python:member and 'Manager' in member.getRoles()"
     url_expr="string:${object_url}/cpsdocument_metadata" visible="False"/>
- <action title="delegate" action_id="localroles" category="object"
+ <action title="Delegate" action_id="localroles" category="object"
     condition_expr="" url_expr="string:${object_url}/folder_localrole_form"
     visible="False"/>
Index: WAeUP_SRP/trunk/profiles/default/types/University.xml
===================================================================
--- WAeUP_SRP/trunk/profiles/default/types/University.xml	(revision 318)
+++ WAeUP_SRP/trunk/profiles/default/types/University.xml	(revision 319)
@@ -64,5 +64,5 @@
   <permission value="Modify portal content"/>
  </action>
- <action title="delegate" action_id="localroles" category="object"
+ <action title="Delegate" action_id="localroles" category="object"
     condition_expr="" url_expr="string:${object_url}/folder_localrole_form"
     visible="True">
Index: WAeUP_SRP/trunk/skins/waeup_academics/department_created.py
===================================================================
--- WAeUP_SRP/trunk/skins/waeup_academics/department_created.py	(revision 318)
+++ WAeUP_SRP/trunk/skins/waeup_academics/department_created.py	(revision 319)
@@ -21,9 +21,9 @@
 else:
     dep = context.getContent()
-dep.invokeFactory('CoursesFolder','Courses')
+dep.invokeFactory('CoursesFolder','courses')
 o = getattr(dep,'Courses')
 dict = {'Title': 'Courses'}
 o.getContent().edit(mapping=dict)
-dep.invokeFactory('CertificatesFolder','Certificates')
+dep.invokeFactory('CertificatesFolder','certificates')
 o = getattr(dep,'Certificates')
 dict = {'Title': 'Certificates'}
Index: WAeUP_SRP/trunk/skins/waeup_custom/getCPSCandidateLocalRoles.py
===================================================================
--- WAeUP_SRP/trunk/skins/waeup_custom/getCPSCandidateLocalRoles.py	(revision 319)
+++ WAeUP_SRP/trunk/skins/waeup_custom/getCPSCandidateLocalRoles.py	(revision 319)
@@ -0,0 +1,20 @@
+## Script (Python) "getCPSCandidateLocalRoles"
+##bind container=container
+##bind context=context
+##bind namespace=
+##bind script=script
+##bind subpath=traverse_subpath
+##parameters=
+##title=
+##
+# $Id: getCPSCandidateLocalRoles.py 28546 2005-10-23 01:46:45Z atchertchian $
+"""
+XXX content moved into portal_membership
+
+Override this template if you have new portal types or new roles with a
+specific mapping to register.
+"""
+from Products.CMFCore.utils import getToolByName
+mtool = getToolByName(context, 'portal_membership')
+return ['FacultyManager','DepartmentManager','SectionReader']
+return mtool.getCPSCandidateLocalRoles(context)
Index: WAeUP_SRP/trunk/skins/waeup_custom/getCreatableItems.py
===================================================================
--- WAeUP_SRP/trunk/skins/waeup_custom/getCreatableItems.py	(revision 319)
+++ WAeUP_SRP/trunk/skins/waeup_custom/getCreatableItems.py	(revision 319)
@@ -0,0 +1,29 @@
+## Script (Python) "getCreatableItems"
+##bind container=container
+##bind context=context
+##bind namespace=
+##bind script=script
+##bind subpath=traverse_subpath
+##parameters=
+##title=
+##
+items = []
+utool = context.portal_url
+base_url = utool.getBaseUrl()
+#return context.getPortalTypeName()
+
+if context.getPortalTypeName() == 'Portal':
+    return items
+
+content_types = context.getSortedContentTypes(allowed=1)
+renderIcon = context.portal_cpsportlets.renderIcon
+
+for ptype in content_types:
+    ptype_id = ptype.getId()
+    items.append({
+        'title': ptype.Title(),
+        'id': ptype_id,
+        'icon_tag': renderIcon(ptype_id, base_url, '')
+    })
+
+return items
Index: WAeUP_SRP/trunk/skins/waeup_custom/logged_in.pt
===================================================================
--- WAeUP_SRP/trunk/skins/waeup_custom/logged_in.pt	(revision 319)
+++ WAeUP_SRP/trunk/skins/waeup_custom/logged_in.pt	(revision 319)
@@ -0,0 +1,122 @@
+<metal:html>
+
+<metal:body use-macro="here/main_template/macros/master">
+    
+    <metal:main fill-slot="main"
+                tal:define="p_props here/portal_properties;">
+      <metal:skin tal:condition="exists: here/portal_skins | nothing">
+        <div tal:condition="here/portal_skins/updateSkinCookie | nothing"
+             tal:define="dummy here/setupCurrentSkin">
+        </div>
+      </metal:skin>
+      <tal:block condition="isAnon">
+        <tal:block define="dummy python:request.RESPONSE.expireCookie('__ac',path='/')" />
+          <h1 i18n:translate="heading_login_failure">Login failure</h1>
+          <p>
+            <span i18n:translate="description_login_failure">
+              You are not currently logged in. Your username and or password may be
+              incorrect. Your browser may also not be configured to accept HTTP
+              cookies. If you need help please contact
+            </span>
+            <a href="mailto:admin@here.com" title="Email Admin"
+               tal:attributes="href string:mailto:${p_props/email_from_address}"
+               tal:content="p_props/email_from_address">Email Admin</a>.
+          </p>
+          <p i18n:translate="">
+            help_password_forgotten
+            <tal:block i18n:name="link_password_forgotten"
+                       replace="string:${base_url}account_lost_password_form"/>
+          </p>
+          <p>
+            or <a href="" tal:attributes="href string:${base_url}check_admission">check your admission status</a>
+          </p>
+        </tal:block><!-- isAnon -->
+
+        <tal:block condition="not: isAnon"
+                   define="first_time python:(member.getProperty('login_time', None) ==
+                   here.ZopeTime('2000/01/01'));
+                   dum_home mtool/createMemberArea"
+                   >
+          <tal:block 
+              condition="python:1 or 'Student' in member.getRoles()"
+              tal:define="dummy python: context.process_waeup_login(member=member,sc_pin=request.get('sc_pin'))" />
+          <tal:block condition="first_time">
+            <div tal:define="now here/ZopeTime;
+            dum_reg python:member.setProperties(last_login_time=now,
+            login_time=now)" />
+            
+            <h1>Welcome!</h1>
+            <p>This is the first time that you've logged in to <span
+                                                                   replace="p_props/title">Here</span>. Before you start exploring you need
+              to change your original password. This will ensure that the password we
+            sent you via email cannot be used in a malicious manner.</p>
+            
+            <p>Please use the form below to change your password.</p>
+
+      <form action="change_password" method="post"
+            tal:attributes="action string:${base_url}change_password">
+        <input type="hidden" name="user" value=""
+               tal:attributes="value member" />
+        <input type="hidden" name="domains:tokens" value="" />
+        <input type="hidden" name="redirect" value=""
+               tal:attributes="value base_url" />
+
+      <table border="1" width="100%" cellspacing="1" cellpadding="1">
+
+       <tr valign="top" align="left">
+         <th>Username</th>
+         <td><span tal:replace="member">You</span></td>
+       </tr>
+
+       <tr valign="top" align="left">
+         <th>New password</th>
+         <td><input type="password" name="password" /></td>
+       </tr>
+
+       <tr valign="top" align="left">
+        <th>Confirm new password</th>
+        <td><input type="password" name="confirm" /></td>
+       </tr>
+
+       <tr>
+        <td></td>
+        <td>
+          <input type="submit" class="standalone" value="Change password" />
+        </td>
+       </tr>
+
+      </table>
+
+      </form>
+
+    </tal:block><!-- first_time -->
+
+    <tal:block condition="not: first_time">
+
+      <tal:block define="d_reg python:member.setProperties(
+                                      last_login_time=member.getProperty('login_time', None));
+                         ereg python:member.setProperties(
+                                     login_time=here.ZopeTime());
+                      "/>
+
+      <div tal:condition="request/came_from | nothing ">
+        <div tal:define="came_from python:request.get('came_from');
+                         response request/RESPONSE;
+                         dredirect python: response.redirect(came_from);
+                        " />
+      </div>
+
+      <h1 i18n:translate="heading_login_success">Login success</h1>
+      <p i18n:translate="description_login_success">
+         Welcome. You are currently logged in.
+      </p>
+
+   </tal:block><!-- not first_time -->
+
+  </tal:block><!-- not isAnon -->
+
+</metal:main>
+
+</metal:body>
+
+</metal:html>
Index: WAeUP_SRP/trunk/skins/waeup_custom/logged_out.pt
===================================================================
--- WAeUP_SRP/trunk/skins/waeup_custom/logged_out.pt	(revision 319)
+++ WAeUP_SRP/trunk/skins/waeup_custom/logged_out.pt	(revision 319)
@@ -0,0 +1,24 @@
+<metal:html>
+
+<metal:body use-macro="here/main_template/macros/master">
+
+<metal:main fill-slot="main">
+
+  <p tal:condition="isAnon"
+     i18n:translate="description_logout_success">
+    You have been logged out. <br />
+  </p>
+
+  <p tal:condition="not:isAnon">
+    <span i18n:translate="description_logout_zmi_warning">
+      You are logged in outside the portal.  You may need to
+    </span>
+    <a href="/manage_zmi_logout"
+       i18n:translate="link_logout_zmi">
+      log out of the Zope management interface
+    </a>.
+  </p>
+
+</metal:main>
+</metal:body>
+</metal:html>
Index: WAeUP_SRP/trunk/skins/waeup_default/getCPSCandidateLocalRoles.py
===================================================================
--- WAeUP_SRP/trunk/skins/waeup_default/getCPSCandidateLocalRoles.py	(revision 318)
+++ 	(revision )
@@ -1,20 +1,0 @@
-## Script (Python) "getCPSCandidateLocalRoles"
-##bind container=container
-##bind context=context
-##bind namespace=
-##bind script=script
-##bind subpath=traverse_subpath
-##parameters=
-##title=
-##
-# $Id: getCPSCandidateLocalRoles.py 28546 2005-10-23 01:46:45Z atchertchian $
-"""
-XXX content moved into portal_membership
-
-Override this template if you have new portal types or new roles with a
-specific mapping to register.
-"""
-from Products.CMFCore.utils import getToolByName
-mtool = getToolByName(context, 'portal_membership')
-return ['FacultyManager','DepartmentManager','SectionReader']
-return mtool.getCPSCandidateLocalRoles(context)
Index: WAeUP_SRP/trunk/skins/waeup_default/getCreatableItems.py
===================================================================
--- WAeUP_SRP/trunk/skins/waeup_default/getCreatableItems.py	(revision 318)
+++ 	(revision )
@@ -1,29 +1,0 @@
-## Script (Python) "getCreatableItems"
-##bind container=container
-##bind context=context
-##bind namespace=
-##bind script=script
-##bind subpath=traverse_subpath
-##parameters=
-##title=
-##
-items = []
-utool = context.portal_url
-base_url = utool.getBaseUrl()
-#return context.getPortalTypeName()
-
-if context.getPortalTypeName() == 'Portal':
-    return items
-
-content_types = context.getSortedContentTypes(allowed=1)
-renderIcon = context.portal_cpsportlets.renderIcon
-
-for ptype in content_types:
-    ptype_id = ptype.getId()
-    items.append({
-        'title': ptype.Title(),
-        'id': ptype_id,
-        'icon_tag': renderIcon(ptype_id, base_url, '')
-    })
-
-return items
Index: WAeUP_SRP/trunk/skins/waeup_default/logged_in.pt
===================================================================
--- WAeUP_SRP/trunk/skins/waeup_default/logged_in.pt	(revision 318)
+++ 	(revision )
@@ -1,122 +1,0 @@
-<metal:html>
-
-<metal:body use-macro="here/main_template/macros/master">
-    
-    <metal:main fill-slot="main"
-                tal:define="p_props here/portal_properties;">
-      <metal:skin tal:condition="exists: here/portal_skins | nothing">
-        <div tal:condition="here/portal_skins/updateSkinCookie | nothing"
-             tal:define="dummy here/setupCurrentSkin">
-        </div>
-      </metal:skin>
-      <tal:block condition="isAnon">
-        <tal:block define="dummy python:request.RESPONSE.expireCookie('__ac',path='/')" />
-          <h1 i18n:translate="heading_login_failure">Login failure</h1>
-          <p>
-            <span i18n:translate="description_login_failure">
-              You are not currently logged in. Your username and or password may be
-              incorrect. Your browser may also not be configured to accept HTTP
-              cookies. If you need help please contact
-            </span>
-            <a href="mailto:admin@here.com" title="Email Admin"
-               tal:attributes="href string:mailto:${p_props/email_from_address}"
-               tal:content="p_props/email_from_address">Email Admin</a>.
-          </p>
-          <p i18n:translate="">
-            help_password_forgotten
-            <tal:block i18n:name="link_password_forgotten"
-                       replace="string:${base_url}account_lost_password_form"/>
-          </p>
-          <p>
-            or <a href="" tal:attributes="href string:${base_url}check_admission">check your admission status</a>
-          </p>
-        </tal:block><!-- isAnon -->
-
-        <tal:block condition="not: isAnon"
-                   define="first_time python:(member.getProperty('login_time', None) ==
-                   here.ZopeTime('2000/01/01'));
-                   dum_home mtool/createMemberArea"
-                   >
-          <tal:block 
-              condition="python:1 or 'Student' in member.getRoles()"
-              tal:define="dummy python: context.process_waeup_login(member=member,sc_pin=request.get('sc_pin'))" />
-          <tal:block condition="first_time">
-            <div tal:define="now here/ZopeTime;
-            dum_reg python:member.setProperties(last_login_time=now,
-            login_time=now)" />
-            
-            <h1>Welcome!</h1>
-            <p>This is the first time that you've logged in to <span
-                                                                   replace="p_props/title">Here</span>. Before you start exploring you need
-              to change your original password. This will ensure that the password we
-            sent you via email cannot be used in a malicious manner.</p>
-            
-            <p>Please use the form below to change your password.</p>
-
-      <form action="change_password" method="post"
-            tal:attributes="action string:${base_url}change_password">
-        <input type="hidden" name="user" value=""
-               tal:attributes="value member" />
-        <input type="hidden" name="domains:tokens" value="" />
-        <input type="hidden" name="redirect" value=""
-               tal:attributes="value base_url" />
-
-      <table border="1" width="100%" cellspacing="1" cellpadding="1">
-
-       <tr valign="top" align="left">
-         <th>Username</th>
-         <td><span tal:replace="member">You</span></td>
-       </tr>
-
-       <tr valign="top" align="left">
-         <th>New password</th>
-         <td><input type="password" name="password" /></td>
-       </tr>
-
-       <tr valign="top" align="left">
-        <th>Confirm new password</th>
-        <td><input type="password" name="confirm" /></td>
-       </tr>
-
-       <tr>
-        <td></td>
-        <td>
-          <input type="submit" class="standalone" value="Change password" />
-        </td>
-       </tr>
-
-      </table>
-
-      </form>
-
-    </tal:block><!-- first_time -->
-
-    <tal:block condition="not: first_time">
-
-      <tal:block define="d_reg python:member.setProperties(
-                                      last_login_time=member.getProperty('login_time', None));
-                         ereg python:member.setProperties(
-                                     login_time=here.ZopeTime());
-                      "/>
-
-      <div tal:condition="request/came_from | nothing ">
-        <div tal:define="came_from python:request.get('came_from');
-                         response request/RESPONSE;
-                         dredirect python: response.redirect(came_from);
-                        " />
-      </div>
-
-      <h1 i18n:translate="heading_login_success">Login success</h1>
-      <p i18n:translate="description_login_success">
-         Welcome. You are currently logged in.
-      </p>
-
-   </tal:block><!-- not first_time -->
-
-  </tal:block><!-- not isAnon -->
-
-</metal:main>
-
-</metal:body>
-
-</metal:html>
Index: WAeUP_SRP/trunk/skins/waeup_default/logged_out.pt
===================================================================
--- WAeUP_SRP/trunk/skins/waeup_default/logged_out.pt	(revision 318)
+++ 	(revision )
@@ -1,24 +1,0 @@
-<metal:html>
-
-<metal:body use-macro="here/main_template/macros/master">
-
-<metal:main fill-slot="main">
-
-  <p tal:condition="isAnon"
-     i18n:translate="description_logout_success">
-    You have been logged out. <br />
-  </p>
-
-  <p tal:condition="not:isAnon">
-    <span i18n:translate="description_logout_zmi_warning">
-      You are logged in outside the portal.  You may need to
-    </span>
-    <a href="/manage_zmi_logout"
-       i18n:translate="link_logout_zmi">
-      log out of the Zope management interface
-    </a>.
-  </p>
-
-</metal:main>
-</metal:body>
-</metal:html>
