Index: openacs-4/contrib/packages/project-manager/www/index.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/contrib/packages/project-manager/www/Attic/index.tcl,v diff -u -r1.19 -r1.20 --- openacs-4/contrib/packages/project-manager/www/index.tcl 14 Jul 2004 17:51:08 -0000 1.19 +++ openacs-4/contrib/packages/project-manager/www/index.tcl 24 Jul 2004 08:33:55 -0000 1.20 @@ -18,6 +18,7 @@ } { orderby_project:optional {status_id:integer,optional} + {searchterm ""} category_id:multiple,optional {format "normal"} {assignee_id:integer,optional} @@ -42,6 +43,10 @@ set project_term [parameter::get -parameter "ProjectName" -default "Project"] set project_term_lower [parameter::get -parameter "projectname" -default "project"] +set exporting_vars { status_id category_id assignee_id orderby_project format } +set hidden_vars [export_vars -form $exporting_vars] + + # set up context bar set context [list] @@ -85,22 +90,35 @@ set assignees_filter [pm::project::assignee_filter_select -status_id $status_id] +if {![empty_string_p $searchterm]} { + + if {[regexp {([0-9]+)} $searchterm match query_digits]} { + set search_term_where " (upper(p.title) like upper('%$searchterm%') + or p.item_id = :query_digits) " + } else { + set search_term_where " upper(p.title) like upper('%$searchterm%')" + } +} else { + set search_term_where "" +} + + template::list::create \ -name projects \ -multirow projects \ -key project_item_id \ -elements { - customer_name { - label "Customer" - display_template " -@projects.customer_name@@projects.customer_name@ -" - } project_name { label "Project name" link_url_col item_url link_html { title "View this project version" } } + customer_name { + label "Customer" + display_template " +@projects.customer_name@@projects.customer_name@ +" + } earliest_finish_date { label "Earliest finish" display_template "@projects.earliest_finish_date@@projects.earliest_finish_date@" @@ -123,6 +141,10 @@ narrow } \ -filters { + searchterm { + label "Search" + where_clause {$search_term_where} + } status_id { label "Status" values {[pm::status::project_status_select]}