Index: openacs-4/packages/ecommerce/tcl/ecommerce-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ecommerce/tcl/ecommerce-procs.tcl,v diff -u -r1.34 -r1.35 --- openacs-4/packages/ecommerce/tcl/ecommerce-procs.tcl 12 Feb 2009 06:26:14 -0000 1.34 +++ openacs-4/packages/ecommerce/tcl/ecommerce-procs.tcl 9 May 2009 18:33:10 -0000 1.35 @@ -237,64 +237,72 @@ } # for one product, displays the sub/sub/category info in a table. -ad_proc ec_category_subcategory_and_subsubcategory_display { category_list subcategory_list subsubcategory_list } "Returns an HTML table of category, subcategory, and subsubcategory information" { +ad_proc ec_category_subcategory_and_subsubcategory_display { + category_list + subcategory_list + subsubcategory_list +} { + Returns an HTML table of category, subcategory, and subsubcategory information +} { if { [empty_string_p $category_list] } { return "None Defined" } set to_return "\n" foreach category_id $category_list { - append to_return "\n" - set tr_done 1 + append to_return "\n" + set tr_done 1 - if { ![empty_string_p $subcategory_list] } { - set relevant_subcategory_list [db_list subcategories_select " + if { ![empty_string_p $subcategory_list] } { + set relevant_subcategory_list [db_list subcategories_select " select subcategory_id from ec_subcategories where category_id = :category_id and subcategory_id in ([join $subcategory_list ", "]) order by subcategory_name "] - } else { - set relevant_subcategory_list [list] - } + } else { + set relevant_subcategory_list [list] + } - if { [llength $relevant_subcategory_list] == 0 } { - append to_return "\n" - } else { - append to_return "\n" + } else { + set category_query_list [db_string category_name_select_2 { select category_name from ec_categories where category_id = :category_id - }]]" - - foreach subcategory_id $relevant_subcategory_list { - - if { $tr_done } { - set tr_done 0 - } else { - append to_return "\n" - } - - append to_return "" + + foreach subcategory_id $relevant_subcategory_list { + if { $tr_done } { + set tr_done 0 + } else { + append to_return "\n" + } + set subcategory_query_list [db_string subcategory_name_select_1 { select subcategory_name from ec_subcategories where subcategory_id = :subcategory_id - }]]" - - } ; # end foreach subcategory_id - - } ; # end of case where relevant_subcategory_list is non-empty - + }] + append to_return "" + + } ; # end foreach subcategory_id + + } ; # end of case where relevant_subcategory_list is non-empty + } ; # end foreach category_id append to_return "
[ec_space_to_nbsp [db_string category_name_select_1 { + if { [llength $relevant_subcategory_list] == 0 } { + set category_query_list [db_string category_name_select_1 { select category_name from ec_categories where category_id = :category_id - }]][ec_space_to_nbsp [db_string category_name_select_2 { + }] + regsub -all -- {&} $category_query_list {\&} category_query_list + append to_return "[ec_space_to_nbsp $category_query_list]
 -- [ec_space_to_nbsp [db_string subcategory_name_select_1 { + }] + regsub -all -- {&} $category_query_list {\&} category_query_list + append to_return "[ec_space_to_nbsp $category_query_list]
" - - if { ![empty_string_p $subsubcategory_list] } { - set relevant_subsubcategory_name_list [db_list subcategory_name_select_2 " - select subsubcategory_name from ec_subsubcategories where subcategory_id = :subcategory_id and subsubcategory_id in ([join $subsubcategory_list ","]) order by subsubcategory_name - "] - } else { - set relevant_subsubcategory_name_list [list] - } - - foreach subsubcategory_name $relevant_subsubcategory_name_list { - append to_return " -- [ec_space_to_nbsp $subsubcategory_name]
\n" - } - - append to_return "
 -- [ec_space_to_nbsp $subcategory_query_list]" + + if { ![empty_string_p $subsubcategory_list] } { + set relevant_subsubcategory_name_list [db_list subcategory_name_select_2 " + select subsubcategory_name from ec_subsubcategories where subcategory_id = :subcategory_id and subsubcategory_id in ([join $subsubcategory_list ","]) order by subsubcategory_name"] + } else { + set relevant_subsubcategory_name_list [list] + } + foreach subsubcategory_name $relevant_subsubcategory_name_list { + regsub -all -- {&} $subsubcategory_name {\&} subsubcategory_name + append to_return " -- [ec_space_to_nbsp $subsubcategory_name]
\n" + } + + append to_return "
\n" return $to_return @@ -326,37 +334,39 @@ will look up the category_id to find the category_name. } { if { [empty_string_p $category_id] && [empty_string_p $subcategory_id] && [empty_string_p $subsubcategory_id] } { - return "" + return "" } elseif { ![empty_string_p $subsubcategory_id] } { - if { [empty_string_p $subcategory_id] } { - set subcategory_id [db_string subcategory_id_select { - select subcategory_id from ec_subsubcategories where subsubcategory_id = :subsubcategory_id - }] - } + if { [empty_string_p $subcategory_id] } { + set subcategory_id [db_string subcategory_id_select { + select subcategory_id from ec_subsubcategories where subsubcategory_id = :subsubcategory_id + }] + } - if { [empty_string_p $category_id] } { - set category_id [db_string category_id_select { - select category_id from ec_subcategories where subcategory_id = :subcategory_id - }] - } + if { [empty_string_p $category_id] } { + set category_id [db_string category_id_select { + select category_id from ec_subcategories where subcategory_id = :subcategory_id + }] + } + set to_return "[db_string category_name_select {select category_name from ec_categories where category_id = :category_id}]: [db_string subcategory_name_select {select subcategory_name from ec_subcategories where subcategory_id = :subcategory_id}]: [db_string subsubcategory_name_select {select subsubcategory_name from ec_subsubcategories where subsubcategory_id = :subsubcategory_id}]" + regsub -all -- {&} $to_return {\&} to_return + return $to_return - return "[db_string category_name_select {select category_name from ec_categories where category_id = :category_id}]: [db_string subcategory_name_select {select subcategory_name from ec_subcategories where subcategory_id = :subcategory_id}]: [db_string subsubcategory_name_select {select subsubcategory_name from ec_subsubcategories where subsubcategory_id = :subsubcategory_id}]" - } elseif { ![empty_string_p $subcategory_id] } { - if { [empty_string_p $category_id] } { - set category_id [db_string category_id_select { - select category_id from ec_categories where subcategory_id = :subcategory_id - }] - } - - return "[db_string category_name_select {select category_name from ec_categories where category_id = :category_id}]: [db_string subcategory_name_select {select subcategory_name from ec_subcategories where subcategory_id = :subcategory_id}]" - + if { [empty_string_p $category_id] } { + set category_id [db_string category_id_select { + select category_id from ec_categories where subcategory_id = :subcategory_id + }] + } + set to_return "[db_string category_name_select {select category_name from ec_categories where category_id = :category_id}]: [db_string subcategory_name_select {select subcategory_name from ec_subcategories where subcategory_id = :subcategory_id}]" + regsub -all -- {&} $to_return {\&} to_return + return $to_return + } else { - - return "[db_string category_name_select {select category_name from ec_categories where category_id = :category_id}]" - + set to_return "[db_string category_name_select {select category_name from ec_categories where category_id = :category_id}]" + regsub -all -- {&} $to_return {\&} to_return + return $to_return } } @@ -376,7 +386,7 @@ db_0or1row mailing_categories {} if { ![empty_string_p $category_id] || ![empty_string_p $subcategory_id] || ![empty_string_p $subsubcategory_id] } { - return "Add yourself to the [ec_full_categorization_display $category_id $subcategory_id $subsubcategory_id] mailing list!" + return "Subscribe to [ec_full_categorization_display $category_id $subcategory_id $subsubcategory_id] announcements." } else { return "" } @@ -449,7 +459,7 @@ ad_proc ec_product_links_if_they_exist { product_id } { return product links } { set to_return "

- We think you may also be interested in: + You may also be interested in: