| |
13 |
13 |
} |
| |
14 |
14 |
|
| |
15 |
15 |
|
| |
16 |
16 |
set form_widgets [db_list_of_lists get_form_widgets "" ] |
| |
17 |
17 |
|
| |
18 |
18 |
element create widget_register widget \ |
| |
19 |
19 |
-datatype keyword \ |
| |
20 |
20 |
-widget select \ |
| |
21 |
21 |
-options $form_widgets \ |
| |
22 |
22 |
-label "Form Widget" |
| |
23 |
23 |
|
| |
24 |
24 |
element create widget_register is_required \ |
| |
25 |
25 |
-datatype keyword \ |
| |
26 |
26 |
-widget radio \ |
| |
27 |
27 |
-label "Is Required?" \ |
| |
28 |
28 |
-options { {Yes t} {No f} } |
| |
29 |
29 |
|
| |
30 |
30 |
wizard submit widget_register -buttons { next } |
| |
31 |
31 |
|
| |
32 |
32 |
|
| |
33 |
|
|
| |
34 |
|
|
| |
35 |
33 |
if { [form is_request widget_register] } { |
| |
36 |
34 |
|
| |
37 |
35 |
db_1row get_attr_info "" |
| |
38 |
36 |
|
| |
39 |
37 |
db_0or1row get_reg_widget "" |
| |
40 |
38 |
|
| |
41 |
39 |
element set_properties widget_register content_type_pretty \ |
| |
42 |
40 |
-value $content_type_pretty |
| |
43 |
41 |
element set_properties widget_register attribute_name_pretty \ |
| |
44 |
42 |
-value $attribute_name_pretty |
| |
|
43 |
|
| |
45 |
44 |
element set_properties widget_register attribute_name \ |
| |
46 |
45 |
-value $attribute_name |
| |
47 |
46 |
element set_properties widget_register content_type \ |
| |
48 |
47 |
-value $content_type |
| |
49 |
48 |
|
| |
50 |
49 |
if { ![template::util::is_nil registered_widget] } { |
| |
51 |
50 |
element set_properties widget_register widget \ |
| |
52 |
51 |
-values $registered_widget |
| |
53 |
52 |
element set_properties widget_register is_required \ |
| |
54 |
53 |
-values $is_required |
| |
55 |
54 |
} |
| |
56 |
55 |
} |
| |
57 |
56 |
|
| |
58 |
57 |
|
| |
59 |
58 |
|
| |
60 |
59 |
|
| |
61 |
60 |
|
| |
62 |
61 |
if { [form is_valid widget_register] } { |
| |
63 |
62 |
|
| |
64 |
63 |
form get_values widget_register \ |
| |
65 |
64 |
widget is_required attribute_name content_type |
| |
66 |
65 |
|
| |
67 |
66 |
db_transaction { |
| |
68 |
67 |
|
| |
69 |
68 |
set already_registered [db_string check_registered "" -default ""] |
| |
70 |
69 |
|
| |
71 |
70 |
# just update the is_required column if this widget is already registered |
| |
72 |
71 |
# this way we don't overwrite the existing attribute widget params |
| |
73 |
72 |
if { ![string equal $already_registered ""] && \ |
| |
74 |
73 |
$already_registered } { |
| |
75 |
74 |
db_dml update_widgets "" |
| |
76 |
75 |
} else { |
| |
77 |
76 |
|
| |
78 |
77 |
# (re)register a widget to an attribute |
| |
79 |
78 |
db_exec_plsql register_widget "" |
| |
80 |
79 |
} |
| |
81 |
80 |
} |
| |
82 |
81 |
|
| |
83 |
82 |
wizard set_param widget $widget |
| |
84 |
83 |
wizard forward |
| |
|
84 |
} else { |
| |
|
85 |
|
| |
|
86 |
db_1row get_attr_info "" |
| |
|
87 |
|
| |
|
88 |
element set_properties widget_register content_type_pretty \ |
| |
|
89 |
-value $content_type_pretty |
| |
|
90 |
element set_properties widget_register attribute_name_pretty \ |
| |
|
91 |
-value $attribute_name_pretty |
| |
85 |
92 |
} |