Index: openacs-4/packages/mail-tracking/lib/messages.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/mail-tracking/lib/messages.tcl,v diff -u -r1.11 -r1.12 --- openacs-4/packages/mail-tracking/lib/messages.tcl 4 Oct 2005 16:43:05 -0000 1.11 +++ openacs-4/packages/mail-tracking/lib/messages.tcl 5 Oct 2005 15:40:44 -0000 1.12 @@ -5,8 +5,9 @@ # package_id - to filter mails for a package instance # object_id - to filter mails for a object_id # show_filter_p - to show or not the filters in the inlcude, default to "t" +# elements - a list of elements to show in the list template. If not provided will show all elements. +# Posible elemets are: sender_id recipient_id package_id subject object_id file_ids body sent_date - ad_page_contract { @author Nima Mazloumi @@ -32,6 +33,17 @@ set show_filter_p "t" } +# Wich elements will be shown on the list template +set rows_list [list] +if {![exists_and_not_null elements] } { + set rows_list [list sender_id {} recipient_id {} package_id {} subject {} object_id {} file_ids {} body {} sent_date {}] +} else { + foreach element $elements { + lappend rows_list $element + lappend rows_list [list] + } +} + set filters [list \ sender_id { label "[_ mail-tracking.Sender]" @@ -70,10 +82,11 @@ template::list::create \ -name messages \ + -selected_format normal \ -multirow messages \ -key acs_mail_log_id \ -row_pretty_plural "[_ mail-tracking.messages]" \ - -elements { + -elements { sender_id { label "[_ mail-tracking.Sender]" display_template { @@ -131,8 +144,15 @@ orderby sent_date label "[_ mail-tracking.Sent_Date]" } - } -filters $filters + } -formats { + normal { + label "Table" + layout table + row $rows_list + } + } -filters $filters \ + set orderby [template::list::orderby_clause -name "messages" -orderby] db_multirow -extend { file_ids sender receiver package_name package_url url_message_id } messages select_messages {} {