Index: openacs-4/packages/xowiki/www/portlets/last-visited.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/xowiki/www/portlets/Attic/last-visited.tcl,v diff -u -r1.3 -r1.4 --- openacs-4/packages/xowiki/www/portlets/last-visited.tcl 30 Apr 2006 23:53:35 -0000 1.3 +++ openacs-4/packages/xowiki/www/portlets/last-visited.tcl 3 May 2006 12:03:23 -0000 1.4 @@ -4,35 +4,44 @@ # # valid parameters from the include are # max_entries: show given number of new entries +# user_id ::xowiki::Page requireCSS "/resources/acs-templating/lists.css" -# get the folder id from the including page -set folder_id [$__including_page set parent_id] +::xowiki::Page proc __render_html { + -folder_id + -user_id + -max_entries +} { + set package_id [$folder_id set package_id] -if {![info exists max_entries]} {set max_entries 20} -if {![info exists user_id]} {set user_id [ad_conn user_id]} -if {![info exists package_id]} {set package_id [$folder_id set package_id]} + TableWidget t1 -volatile \ + -columns { + AnchorField title -label [_ xowiki.page_title] + } -TableWidget t1 -volatile \ - -columns { - AnchorField title -label [_ xowiki.page_title] - } + db_foreach get_pages \ + "select r.title,i.name, to_char(x.time,'YYYY-MM-DD HH24:MI:SS') as visited_date \ + from xowiki_last_visited x, xowiki_page p, cr_items i, cr_revisions r \ + where x.page_id = i.item_id and i.live_revision = p.page_id and \ + r.revision_id = p.page_id and x.user_id = $user_id and x.package_id = $package_id + order by x.time desc limit $max_entries + " { + if {$title eq ""} {set title $name} -set content "" -db_foreach get_pages \ - "select p.page_title,r.title, to_char(x.time,'YYYY-MM-DD HH24:MI:SS') as visited_date \ - from xowiki_last_visited x, xowiki_page p, cr_items i, cr_revisions r \ - where x.page_id = i.item_id and i.live_revision = p.page_id and \ - r.revision_id = p.page_id and x.user_id = $user_id and x.package_id = $package_id - order by x.time desc limit $max_entries - " { - if {$page_title eq ""} {set page_title $title} + t1 add \ + -title $title \ + -title.href [::xowiki::Page pretty_link $name] + } + return [t1 asHTML] +} - t1 add \ - -title $page_title \ - -title.href [::xowiki::Page pretty_link $title] - } - -set content [t1 asHTML] set link "" +if {![info exists name]} {set name "Last Visited Pages"} +set content [::xowiki::Page __render_html \ + -folder_id [$__including_page set parent_id] \ + -max_entries [expr {[info exists max_entries] ? $max_entries : 20}] \ + -user_id [expr {[info exists user_id] ? $user_id : \ + [ad_conn isconnected] ? [ad_conn user_id] : 0}] \ + ] +