Index: openacs-4/packages/curriculum-central/www/coordinate/iframe/tl-method-ae-postgresql.xql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/curriculum-central/www/coordinate/iframe/tl-method-ae-postgresql.xql,v
diff -u
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ openacs-4/packages/curriculum-central/www/coordinate/iframe/tl-method-ae-postgresql.xql 1 Jun 2006 05:36:59 -0000 1.1
@@ -0,0 +1,66 @@
+
+
+
+ postgresql7.4
+
+
+
+ SELECT n.uos_code
+ FROM cc_uos_name n, cc_uos u
+ WHERE u.uos_name_id = n.name_id
+ AND u.uos_id = :uos_id
+
+
+
+
+
+ SELECT t.tl_id, t.latest_revision_id
+ FROM cc_uos u, cc_uos_revisions r, cr_items i, cc_uos_tl t
+ WHERE u.uos_id = :uos_id
+ AND i.item_id = u.uos_id
+ AND r.uos_revision_id = i.latest_revision
+ AND t.parent_uos_id = :uos_id
+
+
+
+
+
+ SELECT t.latest_revision_id
+ FROM cc_uos u, cc_uos_revisions r, cr_items i, cc_uos_tl t
+ WHERE u.uos_id = :uos_id
+ AND i.item_id = u.uos_id
+ AND r.uos_revision_id = i.latest_revision
+ AND t.parent_uos_id = :uos_id
+
+
+
+
+
+ SELECT cc_uos_tl_method__map (
+ :latest_revision_id,
+ :method_id
+ );
+
+
+
+
+
+ UPDATE cc_uos_tl_method
+ SET name_id = :name_id,
+ identifier = :identifier,
+ description = :description
+ WHERE method_id = :method_id
+
+
+
+
+
+ UPDATE acs_objects
+ SET modifying_user = :modifying_user,
+ modifying_ip = :modifying_ip,
+ package_id = :package_id
+ WHERE object_id = :method_id
+
+
+
+
Index: openacs-4/packages/curriculum-central/www/coordinate/iframe/tl-method-ae.adp
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/curriculum-central/www/coordinate/iframe/tl-method-ae.adp,v
diff -u
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ openacs-4/packages/curriculum-central/www/coordinate/iframe/tl-method-ae.adp 1 Jun 2006 05:36:59 -0000 1.1
@@ -0,0 +1,10 @@
+
+@page_title;noquote@
+
+
+
+
+
+
+
+
Index: openacs-4/packages/curriculum-central/www/coordinate/iframe/tl-method-ae.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/curriculum-central/www/coordinate/iframe/tl-method-ae.tcl,v
diff -u
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ openacs-4/packages/curriculum-central/www/coordinate/iframe/tl-method-ae.tcl 1 Jun 2006 05:36:59 -0000 1.1
@@ -0,0 +1,70 @@
+ad_page_contract {
+ Add/Edit a teaching and learning method for a specific UoS.
+
+ @author Nick Carroll (nick.c@rroll.net)
+ @creation-date 2005-11-20
+ @cvs-id $Id: tl-method-ae.tcl,v 1.1 2006/06/01 05:36:59 ncarroll Exp $
+} {
+ uos_id:integer
+ method_id:integer,optional
+ {return_url "[export_vars -url -base tl-methods-view {uos_id {edit_p 1}}]"}
+}
+
+auth::require_login
+
+if { [info exists method_id] } {
+ set page_title [_ curriculum-central.edit_tl_method]
+} else {
+ set page_title [_ curriculum-central.add_tl_method]
+}
+
+set package_id [ad_conn package_id]
+set user_id [ad_conn user_id]
+
+set uos_code [db_string uos_code {} -default ""]
+
+ad_form -name tl_method -cancel_url $return_url -form {
+ {method_id:key(acs_object_id_seq)}
+ {uos_id:text(hidden) {value $uos_id}}
+ {return_url:text(hidden) {value $return_url}}
+ {identifier:text(hidden) {value $uos_code}}
+ {name_id:integer(select)
+ {options [curriculum_central::tl_names_get_options]}
+ {label "[_ curriculum-central.name]" }
+ {help_text "[_ curriculum-central.help_enter_type_of_tl_method]"}
+ }
+ {description:text(textarea)
+ {html {cols 40 rows 10}}
+ {label "[_ curriculum-central.description]" }
+ {help_text "[_ curriculum-central.help_enter_description]"}
+ }
+} -select_query {
+ SELECT name_id, identifier, description
+ FROM cc_uos_tl_method WHERE method_id = :method_id
+} -new_data {
+
+ db_transaction {
+ set method_id [package_instantiate_object \
+ -var_list [list [list package_id $package_id] \
+ [list object_type cc_uos_tl_method] \
+ [list name_id $name_id] \
+ [list identifier $identifier] \
+ [list description $description]] \
+ -form_id tl_method cc_uos_tl_method]
+
+ # Retrieve the latest TL version.
+ db_1row latest_tl {}
+ # Map the method_id to the latest TL version.
+ db_exec_plsql map_tl_to_revision {}
+ }
+
+} -edit_data {
+ set modifying_user [ad_conn user_id]
+ set modifying_ip [ad_conn peeraddr]
+
+ db_dml tl_method_update {}
+ db_dml object_update {}
+} -after_submit {
+ ad_returnredirect $return_url
+ ad_script_abort
+}
Index: openacs-4/packages/curriculum-central/www/coordinate/iframe/tl-method-del-postgresql.xql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/curriculum-central/www/coordinate/iframe/tl-method-del-postgresql.xql,v
diff -u
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ openacs-4/packages/curriculum-central/www/coordinate/iframe/tl-method-del-postgresql.xql 1 Jun 2006 05:36:59 -0000 1.1
@@ -0,0 +1,19 @@
+
+
+
+ postgresql7.4
+
+
+
+ SELECT cc_uos_tl__delete(:method_id)
+
+
+
+
+
+ UPDATE cc_uos_tl_method_map SET method_id = NULL
+ WHERE method_id = :method_id
+
+
+
+
Index: openacs-4/packages/curriculum-central/www/coordinate/iframe/tl-method-del.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/curriculum-central/www/coordinate/iframe/tl-method-del.tcl,v
diff -u
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ openacs-4/packages/curriculum-central/www/coordinate/iframe/tl-method-del.tcl 1 Jun 2006 05:36:59 -0000 1.1
@@ -0,0 +1,25 @@
+ad_page_contract {
+ Deletes a Teaching and Learning method.
+
+ @param method_id The ID of the Teaching and Learning method to remove.
+ @param return_url Optional url to redirect to when the delete operation
+ is complete.
+
+ @author Nick Carroll (nick.c@rroll.net)
+ @creation-date 2005-12-04
+ @cvs-id $Id: tl-method-del.tcl,v 1.1 2006/06/01 05:36:59 ncarroll Exp $
+} {
+ method_id:integer
+ uos_id:integer
+ {return_url "[export_vars -url -base tl-methods-view {uos_id {edit_p 1}}]"}
+}
+
+set package_id [ad_conn package_id]
+
+db_transaction {
+ db_dml tl_method_map_update {}
+ db_exec_plsql tl_method_delete {}
+}
+
+ad_returnredirect $return_url
+ad_script_abort
Index: openacs-4/packages/curriculum-central/www/coordinate/iframe/tl-methods-view-postgresql.xql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/curriculum-central/www/coordinate/iframe/tl-methods-view-postgresql.xql,v
diff -u
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ openacs-4/packages/curriculum-central/www/coordinate/iframe/tl-methods-view-postgresql.xql 1 Jun 2006 05:36:59 -0000 1.1
@@ -0,0 +1,32 @@
+
+
+
+ postgresql7.4
+
+
+
+ SELECT t.tl_id, t.latest_revision_id
+ FROM cc_uos u, cc_uos_revisions r, cr_items i, cc_uos_tl t
+ WHERE u.uos_id = :uos_id
+ AND i.item_id = u.uos_id
+ AND r.uos_revision_id = i.latest_revision
+ AND t.parent_uos_id = :uos_id
+
+
+
+
+
+ SELECT m.method_id, n.name, m.description
+ FROM cc_uos_tl_method m, acs_objects o, cc_uos_tl_method_map t,
+ cc_uos_tl_name n
+ WHERE o.package_id = :package_id
+ AND m.method_id = o.object_id
+ AND o.creation_user = :user_id
+ AND t.tl_revision_id = :latest_revision_id
+ AND m.method_id = t.method_id
+ AND n.name_id = m.name_id
+ [template::list::orderby_clause -orderby -name "methods"]
+
+
+
+
Index: openacs-4/packages/curriculum-central/www/coordinate/iframe/tl-methods-view.adp
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/curriculum-central/www/coordinate/iframe/tl-methods-view.adp,v
diff -u
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ openacs-4/packages/curriculum-central/www/coordinate/iframe/tl-methods-view.adp 1 Jun 2006 05:36:59 -0000 1.1
@@ -0,0 +1,9 @@
+
+@page_title;noquote@
+
+
+
+
+
+
+
Index: openacs-4/packages/curriculum-central/www/coordinate/iframe/tl-methods-view.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/curriculum-central/www/coordinate/iframe/tl-methods-view.tcl,v
diff -u
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ openacs-4/packages/curriculum-central/www/coordinate/iframe/tl-methods-view.tcl 1 Jun 2006 05:36:59 -0000 1.1
@@ -0,0 +1,86 @@
+ad_page_contract {
+ Page for listing Teaching and Learning Approaches for a specific UoS.
+
+ @author Nick Carroll (nick.c@rroll.net)
+ @creation-date 2005-11-15
+ @cvs-id $Id: tl-methods-view.tcl,v 1.1 2006/06/01 05:36:59 ncarroll Exp $
+} {
+ uos_id:integer,notnull
+ edit_p:integer,notnull
+ {orderby "name,asc"}
+}
+
+auth::require_login
+
+set page_title "[_ curriculum-central.tl_approaches]"
+set context [list [list . [_ curriculum-central.coordinate]] $page_title]
+set package_id [ad_conn package_id]
+set user_id [ad_conn user_id]
+
+if { $edit_p } {
+ set elements {
+ edit {
+ sub_class narrow
+ display_template {
+
+ }
+ link_url_eval {[export_vars -url -base tl-method-ae { uos_id method_id }]}
+ link_html {title "#curriculum-central.edit_tl_approach#"}
+ }
+ name {
+ label "#curriculum-central.name#"
+ }
+ description {
+ label "#curriculum-central.description#"
+ html {width "100%"}
+ }
+ delete {
+ sub_class narrow
+ display_template {
+
+ }
+ link_url_eval {[export_vars -base tl-method-del { uos_id method_id }]}
+ link_html {title "#curriculum-central.delete_tl_method#" onclick "return confirm(\'[_ curriculum-central.want_to_delete_tl_method]\');"}
+ }
+ }
+
+ template::list::create \
+ -name methods \
+ -actions [list "#curriculum-central.add_tl_approach#" [export_vars -base tl-method-ae { uos_id }] "#curriculum-central.add_tl_approach_to_list#"] \
+ -multirow methods \
+ -no_data "#curriculum-central.no_tl_approaches_created#" \
+ -elements $elements \
+ -orderby {
+ name {orderby {lower(n.name)}}
+ } \
+ -filters {uos_id {} edit_p {}} \
+ -pass_properties {uos_id}
+} else {
+ set elements {
+ name {
+ label "#curriculum-central.name#"
+ }
+ description {
+ label "#curriculum-central.description#"
+ html {width "100%"}
+ }
+ }
+
+ template::list::create \
+ -name methods \
+ -multirow methods \
+ -no_data "#curriculum-central.no_tl_approaches_created#" \
+ -elements $elements \
+ -orderby {
+ name {orderby {lower(n.name)}}
+ } \
+ -filters {uos_id {} edit_p {}} \
+ -pass_properties {uos_id}
+}
+
+set latest_revision_id ""
+db_0or1row latest_tl {}
+
+db_multirow methods get_methods {}
+
+ad_return_template