Index: openacs-4/packages/lorsm/www/delivery/index.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/lorsm/www/delivery/index.tcl,v diff -u -r1.14 -r1.15 --- openacs-4/packages/lorsm/www/delivery/index.tcl 8 Oct 2008 13:01:06 -0000 1.14 +++ openacs-4/packages/lorsm/www/delivery/index.tcl 17 Nov 2008 13:38:36 -0000 1.15 @@ -1,9 +1,9 @@ # packages/lorsm/www/delivery4/index.tcl ad_page_contract { - + New index file using new tree menu - + @author Roel Canicula (roelmc@info.com.ph) @creation-date 2004-08-07 @arch-tag: 64f3397b-4558-4298-a995-fc63e472f2a1 @@ -24,36 +24,37 @@ ad_set_client_property lorsm debuglevel $debuglevel ad_set_client_property lorsm menu_type $menu_type -set ses_renew [ad_parameter -package_id [ad_acs_kernel_id] SessionRenew security 300] +set ses_renew [ad_parameter \ + -package_id [ad_acs_kernel_id] \ + SessionRenew security 300] - if { ! [info exists menu_off] } { - set menu_off 0 + set menu_off 0 } set user_id [ad_conn user_id] if { [info exists item_id] } { ad_set_client_property lorsm ims_id $item_id if { ! [info exists ims_id] } { - set ims_id $item_id - } + set ims_id $item_id + } } else { - if { $menu_off == 0 } { - ad_set_client_property lorsm ims_id "" - ns_log notice "UNSETTING LORSM IMS_ID '[ad_conn url]'" - } else { - #given menu_off without ims_id, i have to provide a default one! - #since an ims_item_id wasn't provided, we just pick up the first one - set item_list [lorsm::get_item_list $man_id $user_id] - set ims_id [lindex $item_list 0] - ad_set_client_property lorsm ims_id $ims_id - } + if { $menu_off == 0 } { + ad_set_client_property lorsm ims_id "" + ns_log notice "UNSETTING LORSM IMS_ID '[ad_conn url]'" + } else { + #given menu_off without ims_id, i have to provide a default one! + #since an ims_item_id wasn't provided, we just pick up the first one + set item_list [lorsm::get_item_list $man_id $user_id] + set ims_id [lindex $item_list 0] + ad_set_client_property lorsm ims_id $ims_id + } } if { [info exists ims_id] } { set item_id $ims_id - ad_set_client_property lorsm ims_id $ims_id + ad_set_client_property lorsm ims_id $ims_id # ns_log notice "SETTING LORSM IMS_ID = '${ims_id}' '[ad_conn url]'" set body_url [export_vars -base "record-view" -url {item_id man_id}] } @@ -62,42 +63,36 @@ # Get the course name if {[db_0or1row manifest " - select - cp.course_name, - cp.fs_package_id, - isscorm, - pf.folder_name, - pf.format_name, - case - when upper(scorm_type) = 'SCO' then 'delivery-scorm' - else 'delivery' + select cp.course_name, cp.fs_package_id, isscorm, pf.folder_name, pf.format_name, + case + when upper(scorm_type) = 'SCO' then 'delivery-scorm' + else 'delivery' end as deliverymethod - from - ims_cp_manifests cp left join (select man_id, max(scorm_type) as scorm_type from ims_cp_resources group by man_id ) as cpr using (man_id) , - lorsm_course_presentation_formats pf - where - cp.man_id = :man_id - and cp.parent_man_id = 0 - and cp.course_presentation_format = pf.format_id "]} { - + from ims_cp_manifests cp + left join (select man_id, max(scorm_type) as scorm_type from ims_cp_resources group by man_id ) as cpr using (man_id), + lorsm_course_presentation_formats pf + where + cp.man_id = :man_id + and cp.parent_man_id = 0 + and cp.course_presentation_format = pf.format_id "]} { + # Course Name if {[empty_string_p $course_name]} { - set course_name "No Course Name" - } + set course_name "No Course Name" + } } else { set course_name "No Course Name" } ns_log warning "\$isscorm=$isscorm while delivery method has to be = $deliverymethod" - if {$isscorm} { set folder_name "delivery-scorm" } else { - # workaround for when isscorm is set to inconsisten value - # (who sets it ?) - if {$deliverymethod=="delivery-scorm"} { - set folder_name delivery-scorm - } + # workaround for when isscorm is set to inconsisten value + # (who sets it ?) + if {$deliverymethod=="delivery-scorm"} { + set folder_name delivery-scorm + } } set return_url [dotlrn_community::get_community_url [dotlrn_community::get_community_id]] @@ -108,33 +103,45 @@ ad_set_client_property lorsm currentcourse $man_id -set enabled_p [db_string enabled_p "select isenabled from ims_cp_manifest_class where man_id=:man_id and community_id=:community_id" -default "f"] +set enabled_p [db_string enabled_p \ + "select isenabled + from ims_cp_manifest_class + where man_id=:man_id + and community_id=:community_id" -default "f"] + set item_list [lorsm::get_item_list $man_id $user_id] if {$enabled_p} { - permission::require_permission \ - -party_id $user_id \ - -object_id $man_id \ - -privilege read + permission::require_permission \ + -party_id $user_id \ + -object_id $man_id \ + -privilege read } else { - permission::require_permission \ - -party_id $user_id \ - -object_id $man_id \ - -privilege admin + permission::require_permission \ + -party_id $user_id \ + -object_id $man_id \ + -privilege admin } -set start_page [lorsm::get_custom_page_ims_item_id -man_id $man_id -type start] +set start_page [lorsm::get_custom_page_ims_item_id \ + -man_id $man_id \ + -type start] -if {$start_page eq "" && [lorsm::track::istrackable -course_id $man_id -package_id $package_id]} { - set track_id [lorsm::track::get_track_id -user_id $user_id -man_id $man_id -community_id $community_id] +if {$start_page eq "" && [lorsm::track::istrackable \ + -course_id $man_id \ + -package_id $package_id]} { + set track_id [lorsm::track::get_track_id \ + -user_id $user_id \ + -man_id $man_id \ + -community_id $community_id] if {$track_id eq "" || $track_id eq 0} { - set track_id [lorsm::track::new \ - -user_id $user_id \ - -community_id $community_id \ - -course_id $man_id] + set track_id [lorsm::track::new \ + -user_id $user_id \ + -community_id $community_id \ + -course_id $man_id] } - ad_set_client_property lorsm studenttrack $track_id + ad_set_client_property lorsm studenttrack $track_id } else { set track_id 0 ad_set_client_property lorsm studenttrack 0