Index: openacs-4/packages/dotlrn/www/admin/departments.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn/www/admin/departments.tcl,v diff -u -r1.9 -r1.10 --- openacs-4/packages/dotlrn/www/admin/departments.tcl 23 Oct 2002 12:38:40 -0000 1.9 +++ openacs-4/packages/dotlrn/www/admin/departments.tcl 13 Jan 2005 13:57:21 -0000 1.10 @@ -21,12 +21,18 @@ @creation-date 2002-01-20 @version $Id$ } -query { + {keyword ""} + {orderby "department_name,asc"} + page:optional } -properties { title:onevalue context_bar:onevalue departments:multirow } +#Pages in this directory are only runnable by dotlrn-wide admins. +dotlrn::require_admin + set title [parameter::get -localize -parameter departments_pretty_plural] set context_bar [parameter::get -localize -parameter departments_pretty_plural] set referer departments @@ -35,6 +41,49 @@ set departments_pretty_plural [parameter::get -localize -parameter departments_pretty_plural] set classes_pretty_name [parameter::get -localize -parameter classes_pretty_name] +set actions [list "[_ dotlrn.new_department]" "[export_vars -base "department-new" -url { referer }]"] + +if { ![empty_string_p $keyword] } { + set keyword_clause [db_map departments_keyword] +} { + set keyword_clause [db_map departments_without_keyword] +} + +template::list::create \ + -filters { keyword {} } \ + -name departments \ + -multirow departments \ + -actions $actions \ + -pass_properties { can_create {} referer {} } \ + -key department_key \ + -page_size 50 \ + -page_flush_p t \ + -page_query_name departments_pagination \ + -elements { + department_name { + label "[_ dotlrn.department_name]" + orderby_asc {department_name asc} + orderby_desc {department_name desc} + link_url_eval {[export_vars -base "department" { department_key }]} + } + actions { + label "[_ dotlrn.Actions]" + display_template { + + \[ + [_ dotlrn.new_class_1] + + + | + [_ dotlrn.Delete] + + \] + } + } + } + + + db_multirow departments select_departments {} ad_return_template