Index: openacs-4/packages/expenses/tcl/apm-callback-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/expenses/tcl/apm-callback-procs.tcl,v diff -u -r1.5 -r1.6 --- openacs-4/packages/expenses/tcl/apm-callback-procs.tcl 24 Jun 2005 04:24:52 -0000 1.5 +++ openacs-4/packages/expenses/tcl/apm-callback-procs.tcl 4 Aug 2005 06:51:55 -0000 1.6 @@ -13,9 +13,11 @@ -package_id -node_id } { - create the category tree for expenses + create the categories for expenses } { set tree_id [category_tree::add -name "Expense Codes"] category_tree::map -tree_id $tree_id -object_id $package_id + set tree_id [category_tree::add -name "Expense Types"] + category_tree::map -tree_id $tree_id -object_id $package_id } Index: openacs-4/packages/expenses/tcl/expenses-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/expenses/tcl/expenses-procs.tcl,v diff -u -r1.6 -r1.7 --- openacs-4/packages/expenses/tcl/expenses-procs.tcl 16 Jul 2005 13:02:36 -0000 1.6 +++ openacs-4/packages/expenses/tcl/expenses-procs.tcl 4 Aug 2005 06:51:55 -0000 1.7 @@ -43,13 +43,51 @@ Return comma separated list of expense codes given an expense id } { set expense_codes "" - set categories [category::get_mapped_categories $id] - foreach category_id $categories { - append expense_codes "[category::get_name $category_id]" + # Get category tree id of expense code + set package_id [expenses::get_package_id] + set tree_list [category_tree::get_mapped_trees $package_id] + foreach tree $tree_list { + if { [lindex $tree 1] == "Expense Codes"} { + set tree_id [lindex $tree 0] + } } - return [join $expense_codes ", "] + if { [exists_and_not_null tree_id] } { + set categories [category::get_mapped_categories -tree_id $tree_id $id] + foreach category_id $categories { + append expense_codes "[category::get_name $category_id]" + } + return [join $expense_codes ", "] + } else { + return "" + } } +ad_proc list_expense_types { + {-id:required } +} { + HAM (hamilton.chua@gmail.com) + Return comma separated list of expense types given an expense id +} { + set expense_types "" + # Get category tree id of expense type + set package_id [expenses::get_package_id] + set tree_list [category_tree::get_mapped_trees $package_id] + foreach tree $tree_list { + if { [lindex $tree 1] == "Expense Types"} { + set tree_id [lindex $tree 0] + } + } + if { [exists_and_not_null tree_id] } { + set categories [category::get_mapped_categories -tree_id $tree_id $id] + foreach category_id $categories { + append expense_types "[category::get_name $category_id]" + } + return [join $expense_types ", "] + } else { + return "" + } +} + ad_proc list_terms { {-id:required } } { Index: openacs-4/packages/expenses/www/admin/index.adp =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/expenses/www/admin/index.adp,v diff -u -r1.2 -r1.3 --- openacs-4/packages/expenses/www/admin/index.adp 24 Jun 2005 13:05:39 -0000 1.2 +++ openacs-4/packages/expenses/www/admin/index.adp 4 Aug 2005 06:51:55 -0000 1.3 @@ -1,6 +1,6 @@ @title@ -Administer Expense Codes

+Administer Expense Categories

Index: openacs-4/packages/expenses/www/admin/index.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/expenses/www/admin/index.tcl,v diff -u -r1.6 -r1.7 --- openacs-4/packages/expenses/www/admin/index.tcl 16 Jul 2005 13:02:36 -0000 1.6 +++ openacs-4/packages/expenses/www/admin/index.tcl 4 Aug 2005 06:51:55 -0000 1.7 @@ -55,6 +55,9 @@ expense_codes { label "Expense Codes" } + expense_types { + label "Expense Types" + } terms { label "Term" } @@ -67,12 +70,13 @@ set orderby_clause "[template::list::orderby_clause -name expenses -orderby]" -db_multirow -extend {course expense_codes terms } expenses get_expenses { } { +db_multirow -extend {course expense_codes expense_types terms } expenses get_expenses { } { # retrieve course/section for this expense if { [db_0or1row "section_info" "select section_name, course_id from dotlrn_ecommerce_section where community_id =:community_id"] } { set course_name [db_string "getcoursename" "select course_name from dotlrn_catalog where course_id = (select latest_revision from cr_items where item_id =:course_id)"] set course "$course_name/$section_name" set expense_codes [expenses::list_expense_codes -id $exp_id] + set expense_types [expenses::list_expense_types -id $exp_id] set terms [expenses::list_terms -id $exp_id] } } \ No newline at end of file