Index: openacs-4/contrib/packages/classified-ads/www/index.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/contrib/packages/classified-ads/www/index.tcl,v diff -u -r1.5.2.1 -r1.5.2.2 --- openacs-4/contrib/packages/classified-ads/www/index.tcl 18 Jan 2004 03:04:07 -0000 1.5.2.1 +++ openacs-4/contrib/packages/classified-ads/www/index.tcl 31 Jan 2004 11:12:21 -0000 1.5.2.2 @@ -15,44 +15,99 @@ set root_folder_id [classified-ads::get_root_folder_id] set package_category_id [classified-ads::categories::get_package_keyword_id] set package_category_p 0 -set title "Categories" +set package_id [ad_conn package_id] +set title "Most Recent Ads" +# RBM: FIXME: Remove "50" hard-coded number +set ads_to_display 50 if {$keyword_id == 0} { + # + # If no category was selected, let's use the main package category + # set keyword_id $package_category_id set package_category_p 1 + set ads_to_display [parameter::get -package_id $package_id -parameter ads_to_display] + set actions "" + + # + # Now get categories. + # RBM: FIXME: This query seems inneficient. + # FIXME: Bulk actions according to permissions. + # + db_multirow categories select_categories {} + set parent_id $keyword_id + + template::list::create \ + -name categories \ + -multirow categories \ + -key keyword_id \ + -actions [list "Create top-level category" \ + [export_vars -base admin/category-new {parent_id return_url}] \ + "Create category"] \ + -bulk_actions { + "Edit" "admin/category-edit" "Edit checked categories" + "Delete" "admin/category-delete" "Delete checked categories" + } \ + -bulk_action_export_vars { + keyword_id + return_url + } \ + -row_pretty_plural "Categories" \ + -elements { + heading { + label "Name" + link_url_eval "index?keyword_id=$keyword_id" + link_html { title "View ads under this category" } + } + description { + label "Description" + link_url_eval "index?keyword_id=$keyword_id" + link_html { title "View ads under this category" } + } + children_count { + label "Number of subcategories" + } + } + } elseif {[string equal [classified-ads::get_main_keyword_id] $keyword_id]} { + # + # If the selected category is the top-level keyword_id, throw error + # ad_return_complaint 1 "