Index: openacs-4/packages/dotlrn-ecommerce/dotlrn-ecommerce.info
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn-ecommerce/dotlrn-ecommerce.info,v
diff -u -r1.28 -r1.29
--- openacs-4/packages/dotlrn-ecommerce/dotlrn-ecommerce.info 22 Aug 2005 23:08:17 -0000 1.28
+++ openacs-4/packages/dotlrn-ecommerce/dotlrn-ecommerce.info 30 Aug 2005 17:42:45 -0000 1.29
@@ -7,15 +7,15 @@
f
t
-
+
Roel Canicula
Package to tie the dotLRN, Ecommerce, Assessments and dotLRN Catalog packages together
2005-08-10
Solution Grove
Package to tie the dotLRN, Ecommerce, Assessments and dotLRN Catalog packages together. Initially intended for the MOS and MGH projects, the goal is to create a reusable module for similar projects.
0
-
+
@@ -28,9 +28,10 @@
-
+
+
@@ -49,10 +50,10 @@
+
-
Index: openacs-4/packages/dotlrn-ecommerce/lib/user-info.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn-ecommerce/lib/user-info.tcl,v
diff -u -r1.8 -r1.9
--- openacs-4/packages/dotlrn-ecommerce/lib/user-info.tcl 4 Aug 2005 03:10:04 -0000 1.8
+++ openacs-4/packages/dotlrn-ecommerce/lib/user-info.tcl 30 Aug 2005 17:42:45 -0000 1.9
@@ -129,26 +129,52 @@
if { $user_type == "participant" } {
set tree_id [parameter::get -package_id [ad_conn package_id] -parameter GradeCategoryTree -default 0]
- set grade_options [list {}]
- foreach tree [category_tree::get_tree $tree_id] {
- lappend grade_options [list [lindex $tree 1] [lindex $tree 0]]
- }
+ set custom_fields [parameter::get -package_id [ad_conn package_id] -parameter CustomParticipantFields -default ""]
- ad_form -extend -name user_info -form {
- {grade:text(select)
- {label "[_ dotlrn-ecommerce.Grade]"}
- {options {$grade_options} }
- }
- {allergies:text,optional
- {label "[_ dotlrn-ecommerce.Medical_Issues]"}
- {html {size 60}}
- }
+ foreach field $custom_fields {
- {special_needs:text,optional
- {label "[_ dotlrn-ecommerce.Special_Needs]"}
- {html {size 60}}
+ switch [string tolower $field] {
+ grade {
+ set grade_options [list {"--" ""}]
+ foreach tree [category_tree::get_tree $tree_id] {
+ lappend grade_options [list [lindex $tree 1] [lindex $tree 0]]
+ }
+
+ ad_form -extend -name user_info -form {
+ {grade:text(select),optional
+ {label "[_ dotlrn-ecommerce.Grade]"}
+ {options {$grade_options} }
+ }
+ }
+ }
+
+ allergies {
+ ad_form -extend -name user_info -form {
+ {allergies:text,optional
+ {label "[_ dotlrn-ecommerce.Medical_Issues]"}
+ {html {size 60}}
+ }
+ }
+ }
+
+ special_needs {
+ ad_form -extend -name user_info -form {
+ {special_needs:text,optional
+ {label "[_ dotlrn-ecommerce.Special_Needs]"}
+ {html {size 60}}
+ }
+ }
+ }
}
}
+
+ foreach field {grade allergies special_needs} {
+ if { [lsearch $custom_fields $field] == -1 } {
+ ad_form -extend -name register -form [subst {
+ {$field:text(hidden) {value ""}}
+ }]
+ }
+ }
} else {
ad_form -extend -name register -form {
Index: openacs-4/packages/dotlrn-ecommerce/lib/user-new.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn-ecommerce/lib/user-new.tcl,v
diff -u -r1.10 -r1.11
--- openacs-4/packages/dotlrn-ecommerce/lib/user-new.tcl 18 Aug 2005 08:52:06 -0000 1.10
+++ openacs-4/packages/dotlrn-ecommerce/lib/user-new.tcl 30 Aug 2005 17:42:45 -0000 1.11
@@ -107,36 +107,51 @@
if { $user_type == "participant" } {
set tree_id [parameter::get -package_id [ad_conn package_id] -parameter GradeCategoryTree -default 0]
- set grade_options [list {"--" ""}]
- foreach tree [category_tree::get_tree $tree_id] {
- lappend grade_options [list [lindex $tree 1] [lindex $tree 0]]
- }
+ set custom_fields [parameter::get -package_id [ad_conn package_id] -parameter CustomParticipantFields -default ""]
- if { [llength $grade_options] > 0 } {
- ad_form -extend -name register -form {
- {grade:text(select),optional
- {label "[_ dotlrn-ecommerce.Grade]"}
- {options {$grade_options}}
+ foreach field $custom_fields {
+
+ switch [string tolower $field] {
+ grade {
+ set grade_options [list {"--" ""}]
+ foreach tree [category_tree::get_tree $tree_id] {
+ lappend grade_options [list [lindex $tree 1] [lindex $tree 0]]
+ }
+
+ ad_form -extend -name register -form {
+ {grade:text(select),optional
+ {label "[_ dotlrn-ecommerce.Grade]"}
+ {options {$grade_options} }
+ }
+ }
}
- }
- } else {
- ad_form -extend -name register -form {
- {grade:text(select),optional
- {label "[_ dotlrn-ecommerce.Grade]"}
- {options {$grade_options}}
+
+ allergies {
+ ad_form -extend -name register -form {
+ {allergies:text,optional
+ {label "[_ dotlrn-ecommerce.Medical_Issues]"}
+ {html {size 60}}
+ }
+ }
}
+
+ special_needs {
+ ad_form -extend -name register -form {
+ {special_needs:text,optional
+ {label "[_ dotlrn-ecommerce.Special_Needs]"}
+ {html {size 60}}
+ }
+ }
+ }
}
}
- ad_form -extend -name register -form {
- {allergies:text,optional
- {label "[_ dotlrn-ecommerce.Medical_Issues]"}
- {html {size 60}}
+
+ foreach field {grade allergies special_needs} {
+ if { [lsearch $custom_fields $field] == -1 } {
+ ad_form -extend -name register -form [subst {
+ {$field:text(hidden) {value ""}}
+ }]
}
-
- {special_needs:text,optional
- {label "[_ dotlrn-ecommerce.Special_Needs]"}
- {html {size 60}}
- }
}
} else {
Index: openacs-4/packages/dotlrn-ecommerce/tcl/apm-callback-procs.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn-ecommerce/tcl/apm-callback-procs.tcl,v
diff -u -r1.18 -r1.19
--- openacs-4/packages/dotlrn-ecommerce/tcl/apm-callback-procs.tcl 20 Aug 2005 22:33:56 -0000 1.18
+++ openacs-4/packages/dotlrn-ecommerce/tcl/apm-callback-procs.tcl 30 Aug 2005 17:42:44 -0000 1.19
@@ -157,6 +157,14 @@
0 \
number
}
+ 0.1d10 0.1d11 {
+ apm_parameter_register \
+ CustomParticipantFields \
+ "Custom fields used in participant registration." \
+ dotlrn-ecommerce \
+ "" \
+ string
+ }
}
}