Changeset 1482 for WAeUP_SRP/trunk


Ignore:
Timestamp:
23 Feb 2007, 16:56:46 (18 years ago)
Author:
joachim
Message:

add course registration.
The Link to the study_level is disabled in study_course_view.pt,
but can be invoked manually. On first invocation the courses are created.

Location:
WAeUP_SRP/trunk
Files:
3 added
8 edited

Legend:

Unmodified
Added
Removed
  • WAeUP_SRP/trunk/doc/srp_documentation.mm

    r1462 r1482  
    5353<node CREATED="1171124926993" ID="Freemind_Link_1838352082" LINK="../profiles/default/schemas/student.xml" MODIFIED="1171353152905" TEXT="Schema: student"/>
    5454<node CREATED="1171124982312" ID="Freemind_Link_1037588671" LINK="../profiles/default/layouts/student.xml" MODIFIED="1171353165422" TEXT="Layout: student"/>
    55 <node CREATED="1171353188624" ID="Freemind_Link_1032185087" LINK="../profiles/default/workflows/waeup_student_wf/definition.xml" MODIFIED="1171353319663" TEXT="Workflow: waeup_student_wf"/>
     55<node CREATED="1171353188624" ID="Freemind_Link_1032185087" LINK="../profiles/default/workflows/waeup_student_wf/definition.xml" MODIFIED="1171353319663" TEXT="Workflow: waeup_student_wf">
     56<node CREATED="1172156481009" ID="Freemind_Link_615926152" LINK="waeup_student_wf.gif" MODIFIED="1172156562631" TEXT="Grafik"/>
     57</node>
    5658<node CREATED="1170082164451" ID="Freemind_Link_1627718074" MODIFIED="1171894825978" TEXT="Accommodation Data">
    5759<node CREATED="1170083733194" ID="Freemind_Link_1398132513" MODIFIED="1171894857194" TEXT="Id: accommodation06"/>
    5860<node CREATED="1170083603042" ID="Freemind_Link_4951906" LINK="../profiles/default/types/StudentAccommodation.xml" MODIFIED="1171894888465" TEXT="Type: StudentAccommodation"/>
    5961<node CREATED="1170083649773" ID="Freemind_Link_1139787187" LINK="../profiles/default/schemas/student_accommodation.xml" MODIFIED="1171895045243" TEXT="Schema: student_accommodation"/>
    60 <node CREATED="1170883343230" ID="Freemind_Link_158025710" MODIFIED="1170883350237" TEXT="Forms">
    61 <node CREATED="1170883352226" ID="Freemind_Link_847687960" MODIFIED="1170883352226" TEXT=""/>
     62<node CREATED="1171353188624" ID="Freemind_Link_1027526284" LINK="../profiles/default/workflows/waeup_student_accommodation_wf/definition.xml" MODIFIED="1172163355400" TEXT="Workflow: waeup_student_accommodation_wf"/>
     63<node CREATED="1170883343230" ID="Freemind_Link_158025710" MODIFIED="1172157052630" TEXT="UserInterface">
     64<node CREATED="1172157054665" ID="Freemind_Link_123552519" MODIFIED="1172157080893" TEXT="Students">
     65<node CREATED="1171362489012" ID="Freemind_Link_875925244" MODIFIED="1171376833636" TEXT="reserve_accommodation">
     66<node CREATED="1171362515581" ID="Freemind_Link_1380319587" LINK="../skins/waeup_accommodation/reserve_accommodation.py" MODIFIED="1171376963675" TEXT="Script: reserve_accommodation"/>
     67<node CREATED="1171362924343" ID="Freemind_Link_1031270994" LINK="../skins/waeup_accommodation/accommodation_pin_edit_form.pt" MODIFIED="1172163898958" TEXT="PT: accommodation_pin_edit_form"/>
     68<node CREATED="1171124926993" ID="Freemind_Link_59643823" LINK="../profiles/default/schemas/student_accommodation.xml" MODIFIED="1171377094450" TEXT="Schema: student_accommodation"/>
     69<node CREATED="1171124982312" ID="Freemind_Link_1633331359" LINK="../profiles/default/layouts/student_accommodation_fe.xml" MODIFIED="1171377120846" TEXT="Layout: student_accommodation_fe"/>
     70</node>
     71</node>
     72<node CREATED="1172160956421" ID="Freemind_Link_1200464160" MODIFIED="1172160963595" TEXT="Officers">
     73<node CREATED="1172160965772" ID="Freemind_Link_1519551515" LINK="../skins/waeup_accommodation/change_bed.py" MODIFIED="1172162566492" TEXT="change_bed"/>
     74<node CREATED="1172160986371" ID="Freemind_Link_193689339" LINK="../skins/waeup_accommodation/release_bed.py" MODIFIED="1172162574968" TEXT="release_bed"/>
     75</node>
    6276</node>
    6377</node>
     
    6680<node CREATED="1170083603042" ID="Freemind_Link_1501749959" LINK="../profiles/default/types/StudentApplication.xml" MODIFIED="1171009517689" TEXT="Type: StudentApplication"/>
    6781<node CREATED="1170083649773" ID="Freemind_Link_743980261" LINK="../profiles/default/schemas/student_application.xml" MODIFIED="1171009482163" TEXT="Schema: student_application"/>
    68 <node CREATED="1170883343230" ID="Freemind_Link_1992366565" MODIFIED="1170883350237" TEXT="Forms">
    69 <node CREATED="1170883352226" ID="Freemind_Link_1836030474" MODIFIED="1170883352226" TEXT=""/>
     82<node CREATED="1171353188624" ID="Freemind_Link_1002042622" LINK="../profiles/default/workflows/waeup_student_subobject_wf/definition.xml" MODIFIED="1172163415549" TEXT="Workflow: waeup_student_subobject_wf"/>
     83<node CREATED="1170883343230" ID="Freemind_Link_1992366565" MODIFIED="1172162754390" TEXT="Userinterface">
     84<node CREATED="1170883352226" ID="Freemind_Link_1836030474" MODIFIED="1172163796143" TEXT="Student">
     85<node CREATED="1172163797590" ID="Freemind_Link_1400026339" LINK="../skins/waeup_student/application_view.pt" MODIFIED="1172163941857" TEXT="application_view"/>
     86<node CREATED="1172163808013" ID="Freemind_Link_1401098992" LINK="../skins/waeup_student/application_slip.pt" MODIFIED="1172163957342" TEXT="application_slip"/>
     87<node CREATED="1172163996819" ID="Freemind_Link_831789893" MODIFIED="1172164000950" TEXT="edit">
     88<node CREATED="1172163808013" ID="Freemind_Link_1344729975" LINK="../skins/waeup_student/application_edit_form.pt" MODIFIED="1172164067504" TEXT="application_edit_form">
     89<node CREATED="1171124982312" ID="Freemind_Link_619763911" LINK="../profiles/default/layouts/student_accommodation_fe.xml" MODIFIED="1172164181673" TEXT="Layout: student_application_fe"/>
     90</node>
     91<node CREATED="1172164034257" ID="Freemind_Link_730244959" MODIFIED="1172164034257" TEXT=""/>
     92</node>
     93</node>
    7094</node>
    7195</node>
     
    82106<node CREATED="1170082392807" FOLDED="true" ID="Freemind_Link_1979443941" MODIFIED="1171711179966" TEXT="Study Course">
    83107<node CREATED="1170930140692" ID="Freemind_Link_607082969" MODIFIED="1171009488850" TEXT="Id: study_course"/>
    84 <node CREATED="1170930264337" ID="Freemind_Link_1384807180" LINK="../profiles/default/types/StudentStudyCourse.xml" MODIFIED="1171009934935" TEXT="Type: StudentStudyCourse"/>
     108<node CREATED="1170930264337" ID="Freemind_Link_1384807180" LINK="../profiles/default/types/StudentStudyCourse.xml" MODIFIED="1172159914623" TEXT="Type: StudentStudyCourse"/>
    85109<node CREATED="1170930285073" ID="Freemind_Link_1989199190" LINK="../profiles/default/schemas/student_study_course.xml" MODIFIED="1171016022394" TEXT="Schema: student_study_course"/>
    86 <node CREATED="1171015856280" ID="Freemind_Link_86536977" LINK="../profiles/default/layouts/student_study_course.xml" MODIFIED="1171016046195" TEXT="Layout: student_study_course"/>
    87 <node CREATED="1170082404788" ID="Freemind_Link_1932365066" MODIFIED="1171711217079" TEXT="{StudentStudyLevels}">
    88 <node CREATED="1171711225441" ID="Freemind_Link_1643185567" MODIFIED="1171711235025" TEXT="Type: StudentStudyLevel"/>
    89 <node CREATED="1171711252019" ID="Freemind_Link_1974988388" MODIFIED="1171711274712" TEXT="Schema: student_study_level"/>
    90 <node CREATED="1171711275042" ID="Freemind_Link_744562017" MODIFIED="1171711278918" TEXT="Layout: student_study_level"/>
    91 <node CREATED="1170082419140" ID="Freemind_Link_1356993815" MODIFIED="1171711249205" TEXT="{CourseResults}">
    92 <node CREATED="1171711590937" ID="Freemind_Link_519794554" MODIFIED="1171711604937" TEXT="Type: StudentCourseResult"/>
    93 <node CREATED="1171711647027" ID="Freemind_Link_1880871196" MODIFIED="1171711660326" TEXT="Schema: student_course_result"/>
    94 <node CREATED="1171711617014" ID="Freemind_Link_797419415" MODIFIED="1171711642651" TEXT="Layout: student_course_result"/>
     110<node CREATED="1171015856280" ID="Freemind_Link_86536977" LINK="../profiles/default/layouts/student_study_course.xml" MODIFIED="1172157227132" TEXT="Layout: student_study_course"/>
     111<node CREATED="1170082404788" ID="Freemind_Link_1932365066" MODIFIED="1172160254466" TEXT="StudentStudyLevels">
     112<node CREATED="1171711225441" ID="Freemind_Link_1643185567" LINK="../profiles/default/types/StudentStudyLevel.xml" MODIFIED="1172159926125" TEXT="Type: StudentStudyLevel"/>
     113<node CREATED="1171711252019" ID="Freemind_Link_1974988388" LINK="../profiles/default/schemas/student_study_level.xml" MODIFIED="1172160137485" TEXT="Schema: student_study_level"/>
     114<node CREATED="1171711275042" ID="Freemind_Link_744562017" LINK="../profiles/default/layouts/student_study_level.xml" MODIFIED="1172157370844" TEXT="Layout: student_study_level"/>
     115<node CREATED="1170082419140" ID="Freemind_Link_1356993815" MODIFIED="1172160235141" TEXT="CourseResults">
     116<node CREATED="1171711590937" ID="Freemind_Link_519794554" LINK="../profiles/default/types/StudentCourseResult.xml" MODIFIED="1172160113608" TEXT="Type: StudentCourseResult"/>
     117<node CREATED="1171711647027" ID="Freemind_Link_1880871196" LINK="../profiles/default/schemas/student_course_result.xml" MODIFIED="1172160183100" TEXT="Schema: student_course_result"/>
     118<node CREATED="1171711617014" ID="Freemind_Link_797419415" LINK="../profiles/default/layouts/student_course_result.xml" MODIFIED="1172160204262" TEXT="Layout: student_course_result"/>
    95119</node>
    96120</node>
     
    106130</node>
    107131</node>
    108 <node CREATED="1171379675232" ID="Freemind_Link_41196870" MODIFIED="1171379685192" TEXT="Userinterface">
     132<node CREATED="1171379675232" FOLDED="true" ID="Freemind_Link_41196870" MODIFIED="1171379685192" TEXT="Userinterface">
    109133<node CREATED="1171379691280" ID="Freemind_Link_24219" MODIFIED="1171379703554" TEXT="Officers">
    110134<node CREATED="1171379710053" ID="Freemind_Link_1668598079" MODIFIED="1171379734695" TEXT="add_student">
     
    116140</node>
    117141<node CREATED="1172016304181" ID="Freemind_Link_831833270" MODIFIED="1172016314036" TEXT="Students">
    118 <node CREATED="1171379710053" ID="Freemind_Link_413720849" MODIFIED="1172016338320" TEXT="change_password">
     142<node CREATED="1171379710053" FOLDED="true" ID="Freemind_Link_413720849" MODIFIED="1172016338320" TEXT="change_password">
    119143<node CREATED="1171379737777" ID="Freemind_Link_1193425802" MODIFIED="1172016370425" TEXT="Script: change_password"/>
    120144<node CREATED="1171362924343" ID="Freemind_Link_197745680" LINK="../skins/waeup_accommodation/student_create_form.pt" MODIFIED="1172016392094" TEXT="PT: change_password_form"/>
     
    122146<node CREATED="1171015856280" ID="Freemind_Link_83566645" LINK="../profiles/default/layouts/student_change_password.xml" MODIFIED="1172016516654" TEXT="Layout: student_change_password"/>
    123147</node>
    124 </node>
    125 </node>
    126 </node>
    127 <node CREATED="1170082502675" FOLDED="true" ID="Freemind_Link_1051871348" MODIFIED="1171710707226" TEXT="Accommodation Section">
     148<node CREATED="1171379710053" ID="Freemind_Link_250586527" MODIFIED="1172136136294" TEXT="set_access_data">
     149<node CREATED="1171379737777" ID="Freemind_Link_173378373" MODIFIED="1172136155974" TEXT="Script: set_access_data"/>
     150<node CREATED="1171362924343" ID="Freemind_Link_385786925" LINK="../skins/waeup_accommodation/set_access_data_form.pt" MODIFIED="1172136205159" TEXT="PT: set_access_data_form"/>
     151<node CREATED="1171379759850" ID="Freemind_Link_1672896645" LINK="../profiles/default/schemas/student_returning.xml" MODIFIED="1172136395249" TEXT="Schema: student_returning"/>
     152<node CREATED="1171015856280" ID="Freemind_Link_1275916157" LINK="../profiles/default/layouts/student_session_returning.xml" MODIFIED="1172136363694" TEXT="Layout: student_session_results_search"/>
     153</node>
     154</node>
     155</node>
     156</node>
     157<node CREATED="1170082502675" ID="Freemind_Link_1051871348" MODIFIED="1171710707226" TEXT="Accommodation Section">
    128158<node CREATED="1171710631948" ID="Freemind_Link_161316738" MODIFIED="1171710638848" TEXT="Id: accommodation"/>
    129159<node CREATED="1171114205479" ID="Freemind_Link_685193459" LINK="../profiles/default/types/AccoFolder.xml" MODIFIED="1171360542032" TEXT="Type: AccoFolder"/>
     
    142172</node>
    143173<node CREATED="1171381167605" ID="Freemind_Link_370176221" MODIFIED="1171381186185" TEXT="User Interface">
    144 <node CREATED="1171381191363" ID="Freemind_Link_1384539281" MODIFIED="1171381247729" TEXT="Student">
    145 <node CREATED="1171362489012" ID="Freemind_Link_875925244" MODIFIED="1171376833636" TEXT="reserve_accommodation">
    146 <node CREATED="1171362515581" ID="Freemind_Link_1380319587" LINK="../skins/waeup_accommodation/reserve_accommodation.py" MODIFIED="1171376963675" TEXT="Script: reserve_accommodation"/>
    147 <node CREATED="1171362924343" ID="Freemind_Link_1031270994" LINK="../skins/waeup_accommodation/accommodation_pin_edit_form.pt" MODIFIED="1171377530623" TEXT="PT: accommodation_pin_edit_form"/>
    148 <node CREATED="1171124926993" ID="Freemind_Link_59643823" LINK="../profiles/default/schemas/student_accommodation.xml" MODIFIED="1171377094450" TEXT="Schema: student_accommodation"/>
    149 <node CREATED="1171124982312" ID="Freemind_Link_1633331359" LINK="../profiles/default/layouts/student_accommodation_fe.xml" MODIFIED="1171377120846" TEXT="Layout: student_accommodation_fe"/>
    150 </node>
    151 </node>
     174<node CREATED="1171381191363" ID="Freemind_Link_1384539281" MODIFIED="1171381247729" TEXT="Student"/>
    152175<node CREATED="1171381259796" ID="Freemind_Link_43065296" MODIFIED="1171381265497" TEXT="Officer"/>
    153176</node>
  • WAeUP_SRP/trunk/profiles/default/workflows/waeup_student_accommodation_wf/definition.xml

    r939 r1482  
    11<?xml version="1.0"?>
     2<?xml-stylesheet type="text/xsl" href="../definition.xsl"?>
    23<cps-workflow workflow_id="waeup_student_accommodation_wf"
    34              title="CPS Workflow Definition"
  • WAeUP_SRP/trunk/profiles/default/workflows/waeup_student_subobject_wf/definition.xml

    r1369 r1482  
    11<?xml version="1.0"?>
     2<?xml-stylesheet type="text/xsl" href="../definition.xsl"?>
    23<cps-workflow workflow_id="waeup_student_subobject_wf"
    34              title="CPS Workflow Definition"
  • WAeUP_SRP/trunk/skins/waeup_student/add_course_result.py

    r805 r1482  
    1010# $Id$
    1111"""
    12 FIXME: add docstring.
     12add a course_result object.
    1313"""
     14from urllib import urlencode
     15request = context.REQUEST
     16course_cat = context.courses_catalog
     17from Products.AdvancedQuery import Eq, Between, Le,In
     18aq_portal = context.portal_catalog.evalAdvancedQuery
     19course_id = request.get('course_id')
     20d = context.getCourseInfo(course_id)
     21args = {}
     22err = ''
     23while True:
     24    if d['title'] == 'unknown':
     25        err = "no such course"
     26        break
     27    if context.hasObject(course_id):
     28        err = "course already exists"
     29        break
     30    if context.hasObject("%s_co" % course_id):
     31        err = "course already exists as carryover"
     32        break
     33    break
    1434
    15 return context.REQUEST.RESPONSE.redirect("%s/content_create?type_name=StudentCourseResult"
    16                                           % (context.absolute_url()))
     35if err:
     36    args['course_id'] = course_id
     37    args['error'] = err
     38    url = "%s?%s" % (context.absolute_url(),urlencode(args))
     39    return request.RESPONSE.redirect(url)
     40##cert_id = context.aq_parent.getContent().study_course   
     41##res = context.portal_catalog(portal_type="Certificate", id = cert_id)
     42##l = []
     43##if res:
     44##    cert = res[0]
     45##    path = cert.getPath()
     46##    query = Eq("path",path) &\
     47##            Eq('portal_type','CertificateCourse') &\
     48##            Eq('SearchableText', "%s" % student.level) &\
     49##            Eq('id',course_id)
     50##course = aq_portal(query)[0]
     51cr_id = context.invokeFactory('StudentCourseResult',course_id)
     52##d['core_or_elective'] = getattr(c.getObject().getContent(),'core_or_elective')
     53##getattr(context,cr_id).getContent().edit(mapping=d)
     54args['course_id'] = course_id
     55from urllib import urlencode
     56url = "%s?%s" % (context.absolute_url(),urlencode(args))
     57return request.RESPONSE.redirect(url)
     58
  • WAeUP_SRP/trunk/skins/waeup_student/getStudyCourseInfo.py

    r1471 r1482  
    4545current_level = sbrain.level
    4646levels = context.objectIds()
    47 #context.portal_workflow.doActionFor(context,'close_for_edit')
     47review_state = wftool.getInfoFor(context,'review_state',None)
     48if review_state != 'content_addable':
     49    context.portal_workflow.doActionFor(context,'close_for_edit')
    4850
    49 #levels.sort()
    50 #if int(current_level) > int(levels[-1]):
    51 #if not levels:
    52 #    context.invokeFactory('StudentStudyLevel',"%s" % current_level)
    53 #    level = getattr(context,"%s" % current_level)
    54 #    level.getContent().edit(mapping={'session': "2006/2007"})
    55 #    context.portal_workflow.doActionFor(level,'open')
    56 #    context.portal_workflow.doActionFor(level,'close_for_edit')
    57 #    levels.append(current_level)
    58 #for l in levels:
    59 #    row = {}
    60 #    row['id'] = l
    61 #    row['title'] = "Level %s" % l
    62 #    row['url'] = "%s/%s" % (context.absolute_url(),l)
    63 #    items.append(row)
     51levels.sort()
     52if not levels:
     53    context.invokeFactory('StudentStudyLevel',"%s" % current_level) 
     54    level = getattr(context,"%s" % current_level)
     55    session = context.getSessionString()
     56    level.getContent().edit(mapping={'session': session})
     57    context.portal_workflow.doActionFor(level,'open')
     58    context.portal_workflow.doActionFor(level,'close_for_edit')
     59    levels.append(current_level)
     60for l in levels:
     61    row = {}
     62    row['id'] = l
     63    row['title'] = "Level %s" % l
     64    row['url'] = "%s/%s" % (context.absolute_url(),l)
     65    items.append(row)
    6466
    6567info['items'] = items
  • WAeUP_SRP/trunk/skins/waeup_student/getStudyLevelInfo.py

    r1380 r1482  
    5757normal = []
    5858carry_overs = []
     59credits_total = 0
    5960for id,obj in context.objectItems():
     61    try:
     62        credit = int(obj.getContent().credits)
     63    except ValueError:
     64        credit = 3
     65    credits_total += credit
    6066    if id.endswith('_co'):
    6167        d = context.getCourseInfo(id[:-3])
     
    6975            d['coe'] = 'Elective'
    7076        normal.append(d)
    71 
     77info['credits_total'] = credits_total
    7278carry_overs.sort(cmp_semester)
    7379info['carry_overs'] = carry_overs
  • WAeUP_SRP/trunk/skins/waeup_student/study_course_view.pt

    r1409 r1482  
    6464                     />
    6565            </td>
    66             <td><a href="view" tal:attributes="href string:${row/url}">
    67               <strong tal:content="row/title" /></a> </td>
     66            <td><a href="view" tal:condition="python: 0"
     67                   tal:attributes="href string:${row/url}">
     68              <strong tal:content="row/title" /></a>
     69              <strong tal:condition="python: 1" tal:content="row/title" />
     70            </td>
    6871          </tr>
    6972        </table>
  • WAeUP_SRP/trunk/skins/waeup_student/study_level_view.pt

    r1417 r1482  
    1919    </metal:block>
    2020    <metal:main fill-slot="main" tal:condition="python:1">
     21      <form action="add_course_result" method="post" class="group">
     22        <h3>Add a course</h3>
     23        <table>
     24          <tr>
     25            <th>Course Id</th>
     26            <td><input type="text" name="course_id"
     27                       tal:attributes="value request/course_id|nothing"/></td>
     28            <td tal:condition="request/error|nothing"
     29                tal:content="request/error" />
     30          </tr>
     31          <tr>
     32            <th></th>
     33            <td colspan="2">
     34              <input type="submit" name="add"
     35                     class="context" value="Add Course"
     36                     />
     37            </td>
     38          </tr>
     39        </table>
     40      </form>   
    2141      <form action="." method="post" class="group">
    2242        <h3>Carryover Courses</h3>
     
    3656            <td width="2%" tal:content="row/semester"></td>
    3757            <td width="2%" tal:content="row/credits"></td>
    38             <td width="8%" tal:content="row/grade|nothing"></td>
     58            <td width="8%" tal:content="row/grade|string:"></td>
    3959          </tr>
    4060        </table>
     
    5777            <td width="8%" tal:content="row/coe|nothing"></td>
    5878          </tr>
     79          <tr>
     80            <td colspan="1"></td>
     81            <th colspan="3">Total credits</th>
     82            <td width="8%" tal:content="info/credits_total"></td>
     83          </tr>
    5984        </table>
    6085        <table width="100%" cellspacing="0" cellpadding="2"
     
    7095                       % (cpsmcat('button_select_all'), cpsmcat('button_deselect_all'))"
    7196                       />
    72                 <input tal:condition="python:1" type="submit" name="register_checked:method"
     97                <input tal:condition="python:0" type="submit" name="register_checked:method"
    7398                       class="context" value="Register" />
    7499                <input tal:condition="python:0" type="submit" name="retract_checked:method"
    75100                       class="context" value="Retract" />
    76                 <input type="submit" name="folder_delete:method" value="button_delete"
     101                <input type="submit" name="course_result_delete:method" value="button_delete"
    77102                       class="destructive" i18n:attributes="value"
    78103                       tal:attributes="onclick python:'return window.confirm(\'%s\')' %
     
    89114      </form>
    90115    </metal:main>
    91    
    92     <metal:sub fill-slot="sub"/>
    93116  </metal:body>
    94117</metal:html>
     118 
Note: See TracChangeset for help on using the changeset viewer.