+@title@
+"@title@"
+
+@content;noquote@
\ No newline at end of file
Index: openacs-4/packages/expenses/www/admin/export-confirm.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/expenses/www/admin/export-confirm.tcl,v
diff -u
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ openacs-4/packages/expenses/www/admin/export-confirm.tcl 31 May 2005 22:07:21 -0000 1.1
@@ -0,0 +1,39 @@
+ad_page_contract {
+ Confirmation page to export and mark exported
+
+ @author Hamilton Chua (hamilton.chua@gmail.com)
+ @creation-date 2005-05-16
+ @cvs-id $Id: export-confirm.tcl,v 1.1 2005/05/31 22:07:21 hamiltonc Exp $
+
+} {
+ { exp_id:integer,multiple,optional }
+ { all 0 }
+ { mark 0 }
+}
+
+set title "Export"
+set package_id [ad_conn package_id]
+set package_url [apm_package_url_from_id $package_id]
+set qstring ""
+
+set content "Click the download link to start downloading the exported records in CSV format.
"
+set qstring "all=$all&mark=$mark"
+
+if { [exists_and_not_null exp_id] } {
+ set exp_id_string [join $exp_id "&exp_id="]
+ append qstring "&exp_id=$exp_id_string"
+}
+
+#if { $all == 1 } {
+# set qstring "all=1&"
+#} else {
+# if { [exists_and_not_null exp_id] } {
+# set exp_id_string [join $exp_id "&exp_id="]
+# append qstring "exp_id=$exp_id_string"
+# } else {
+# ad_return_complaint 1 "You must choose the expenses you wish to export."
+# }
+#}
+
+append content "
Download CSV."
+append content "
Go back to Expense Tracking Administration."
\ No newline at end of file
Index: openacs-4/packages/expenses/www/admin/export-expenses.adp
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/expenses/www/admin/export-expenses.adp,v
diff -u
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ openacs-4/packages/expenses/www/admin/export-expenses.adp 31 May 2005 22:07:21 -0000 1.1
@@ -0,0 +1,4 @@
+
+@title@
+
+
\ No newline at end of file
Index: openacs-4/packages/expenses/www/admin/export-expenses.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/expenses/www/admin/export-expenses.tcl,v
diff -u
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ openacs-4/packages/expenses/www/admin/export-expenses.tcl 31 May 2005 22:07:21 -0000 1.1
@@ -0,0 +1,80 @@
+ad_page_contract {
+
+ Generate a CSV of the given exp_id
+
+ @author Hamilton Chua (hamilton.chua@gmail.com)
+ @creation-date 2005-05-14
+ @cvs-id $Id: export-expenses.tcl,v 1.1 2005/05/31 22:07:21 hamiltonc Exp $
+
+} {
+ {exp_id:integer,multiple,optional}
+ {all 0}
+ {mark 0}
+}
+
+set title "Export Expenses"
+set context $title
+
+# generate list of exp_item_id's for export
+if { [exists_and_not_null exp_id] } {
+ for {set i 0} {$i < [llength $exp_id]} {incr i} {
+ set id_$i [lindex $exp_id $i]
+ lappend bind_id_list ":id_$i"
+ }
+}
+
+# use list template to create list of expenses
+
+template::list::create \
+ -name expenses \
+ -multirow expenses \
+ -key exp_id \
+ -selected_format csv \
+ -formats {
+ csv { output csv }
+ } -elements {
+ exp_date {
+ label "Date"
+ }
+ exp_expense {
+ label "Expense"
+ }
+ exp_amount {
+ label "Amount"
+ display_template { $ @expenses.exp_amount;noquote@ }
+ }
+ class_key {
+ label "Class"
+ }
+ community_id {
+ label "Community"
+ }
+ }
+
+# build the multirow
+
+set query "select exp_id, exp_amount, exp_date, exp_expense, user_id, community_id from expenses"
+
+if { $all == 0 } {
+ set items_for_export [join $bind_id_list ","]
+ append query " where exp_id in ( $items_for_export )"
+ # mark id's as exported only if $mark ==1
+ if { $mark == 1 } {
+ foreach id $exp_id {
+ expenses::mark_exported -id $id
+ }
+ }
+} else {
+ if { $mark == 1 } {
+ expenses::mark_all_exported
+ # db_dml "mark_all_exported" "update expenses set exp_exported = 't'"
+ }
+}
+
+
+db_multirow expenses get_expenses $query
+
+# change headers to output csv
+set outputheaders [ns_conn outputheaders]
+ns_set cput $outputheaders "Content-Disposition" "attachment; filename=expenses.csv"
+template::list::write_output -name expenses
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
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ openacs-4/packages/expenses/www/admin/index.adp 31 May 2005 22:07:21 -0000 1.1
@@ -0,0 +1,12 @@
+
+@title@
+
+Administer Expense Codes
+
+
+
+
+
+ No expenses have been recorded.
+
+
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
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ openacs-4/packages/expenses/www/admin/index.tcl 31 May 2005 22:07:21 -0000 1.1
@@ -0,0 +1,68 @@
+ad_page_contract {
+
+ List line expenses for a given class
+
+ @author Hamilton Chua (hamilton.chua@gmail.com)
+ @creation-date 2005-05-14
+ @cvs-id $Id: index.tcl,v 1.1 2005/05/31 22:07:21 hamiltonc Exp $
+
+} {
+ orderby:optional
+}
+
+set title "Expenses"
+set context $title
+set package_id [expenses::get_package_id]
+set object_id $package_id
+
+# use list template to create list of expenses
+
+template::list::create \
+ -name expenses \
+ -multirow expenses \
+ -key exp_id \
+ -actions {
+ "Export All and MARK ALL Transferred" "export-confirm?all=1&mark=1" "Export All Expenses"
+ "Export All but DO NOT MARK Transferred" "export-confirm?all=1&mark=0" "Export Expenses"
+ } -elements {
+ exp_date {
+ label "Date"
+ }
+ exp_expense {
+ label "Expense"
+ }
+ exp_amount {
+ label "Amount"
+ aggregate "sum"
+ aggregate_label "Total : $"
+ display_template { $ @expenses.exp_amount;noquote@ }
+ }
+ course {
+ label "Course/Section"
+ }
+ exp_exported {
+ label "Exported"
+ display_template {
+
+ Yes
+
+
+ No
+
+ }
+ }
+ } -orderby {
+ exp_date { orderby exp_date }
+ exp_amount { orderby exp_amount }
+ }
+
+# build the multirow
+
+set orderby_clause "[template::list::orderby_clause -name expenses -orderby]"
+
+db_multirow -extend {course} expenses get_expenses { } {
+ # retrieve course/section for this expense
+ 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"
+}
\ No newline at end of file
Index: openacs-4/packages/expenses/www/admin/index.xql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/expenses/www/admin/index.xql,v
diff -u
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ openacs-4/packages/expenses/www/admin/index.xql 31 May 2005 22:07:21 -0000 1.1
@@ -0,0 +1,12 @@
+
+
+
+ postgresql7.1
+
+
+
+ select exp_id, exp_expense, to_char(exp_date,'MM-DD-YYYY') as exp_date, exp_amount, exp_exported, package_id, community_id from expenses $orderby_clause
+
+
+
+
\ No newline at end of file