Commit 64fc7e3c2d3c906e186588d5cf800915903eeb2e

Authored by totoro
1 parent 6c24007c

Remove vtm from Calexium lib and move it to Hayamiki in view part

database/vtm/view_table_manager.anubis deleted
1   -/*
2   - * Created by PyramIDE.
3   - * User: Totoro
4   - * Date: 16/11/2011
5   - * Time: 23:53
6   - */
7   -
8   -read tools/basis.anubis
9   -transmit calexium_lib/database/vtm/view_table_types.anubis
10   -transmit calexium_lib/database/vtm/view_table_manager_types.anubis
11   -
12   -public define Maybe(VTM_view)
13   - _vtm_get_view
14   - (
15   - String table_name,
16   - List(VTM_view) list
17   - ) =
18   - if list is
19   - {
20   - [] then println("_vtm_get_view "+table_name+" not found"); failure,
21   - [ h . t ] then
22   - if h is vtm_view(tb_name, get_view) then
23   - if tb_name = table_name then
24   - success(h)
25   - else
26   - _vtm_get_view(table_name, t)
27   - }.
28   -
29   -public define Maybe(VTM_view)
30   - vtm_get_view
31   - (
32   - String table_name,
33   - VTM_view_list vtm_vlist
34   - ) =
35   - _vtm_get_view(table_name, vtm_vlist.list).
36   -
37   -
38   -public define Maybe(VTM_edit)
39   - _vtm_get_edit
40   - (
41   - String table_name,
42   - List(VTM_edit) list
43   - ) =
44   - if list is
45   - {
46   - [] then failure,
47   - [ h . t ] then
48   - if h is vtm_edit(tb_name, get_edit) then
49   - if tb_name = table_name then
50   - success(h)
51   - else
52   - _vtm_get_edit(table_name, t)
53   - }.
54   -
55   -public define Maybe(VTM_edit)
56   - vtm_get_edit
57   - (
58   - String table_name,
59   - VTM_edit_list vtm_vlist
60   - ) =
61   - _vtm_get_edit(table_name, vtm_vlist.list).
62   -
63   -public define Maybe(TM_writer)
64   - _tm_get_writer
65   - (
66   - String table_name,
67   - List(TM_writer) list
68   - ) =
69   - if list is
70   - {
71   - [] then failure,
72   - [ h . t ] then
73   - if h is tm_writer(tb_name, get_writer) then
74   - if tb_name = table_name then
75   - success(h)
76   - else
77   - _tm_get_writer(table_name, t)
78   - }.
79   -
80   -public define Maybe(TM_writer)
81   - tm_get_writer
82   - (
83   - String table_name,
84   - TM_writer_list tm_wlist
85   - ) =
86   - _tm_get_writer(table_name, tm_wlist.list).
87   -
88   -public define Maybe((SQLite3DataBase db, List(Int) l_int) -> Maybe(One))
89   - _tm_get_delete
90   - (
91   - String table_name,
92   - List(TM_delete) list
93   - ) =
94   - if list is
95   - {
96   - [] then failure,
97   - [ h . t ] then
98   - since h is tm_delete(tb_name, delete_func),
99   - if tb_name = table_name then
100   - success(delete_func)
101   - else
102   - _tm_get_delete(table_name, t)
103   - }.
104   -
105   -public define Maybe((SQLite3DataBase db, List(Int) l_int) -> Maybe(One))
106   - tm_get_delete
107   - (
108   - String table_name,
109   - TM_delete_list tm_dlist
110   - ) =
111   - _tm_get_delete(table_name, tm_dlist.list).
database/vtm/view_table_manager_types.anubis deleted
1   -/*
2   - * Created by PyramIDE.
3   - * User: Totoro
4   - * Date: 17/11/2011
5   - * Time: 00:32
6   - *
7   - */
8   -
9   -read calexium_lib/database/vtm/view_table_types.anubis
10   -read calexium_lib/web/CXM_common.anubis
11   -
12   -public type VTM_edit:
13   - vtm_edit(String table_name, (SQLite3DataBase db, VT_action action) -> VT_edit get_edit).
14   -
15   -public type VTM_edit_list:
16   - vtm_edit_list(List(VTM_edit) list).
17   -
18   -public type TM_writer:
19   - tm_writer(String table_name, (SQLite3DataBase db, List(Web_arg) lwa) -> Maybe(One) write).
20   -
21   -public type TM_writer_list:
22   - tm_writer_list(List(TM_writer) list).
23   -
24   -public type TM_delete:
25   - tm_delete(String table_name, (SQLite3DataBase db, List(Int) l_int) -> Maybe(One) delete).
26   -
27   -public type TM_delete_list:
28   - tm_delete_list(List(TM_delete) list).
29   -
30   -public type VTM_view:
31   - vtm_view(String table_name, (SQLite3DataBase db, String view_name) -> VT_view get_view).
32   -
33   -public type VTM_view_list:
34   - vtm_view_list(List(VTM_view) list).
35   -
36   -public type VTM:
37   - vtm(VTM_view_list view_list,
38   - VTM_edit_list edit_list,
39   - TM_writer_list writer_list,
40   - TM_delete_list delete_list).
database/vtm/view_table_renderer.anubis deleted
1   -/*
2   - * Created by PyramIDE.
3   - * User: Totoro
4   - * Date: 30/11/2011
5   - * Time: 21:22
6   - *
7   - */
8   -
9   -read calexium_lib/database/vtm/view_table_types.anubis
10   -read calexium_lib/database/vtm/view_table_manager_types.anubis
11   -read calexium_lib/database/vtm/view_table_manager.anubis
12   -read hayamiki_lib/types/hayamiki.anubis
13   -read system/string.anubis
14   -read locale/L3.anubis
15   -read tools/basis.anubis
16   -
17   -read system_colors/rgb.anubis
18   -read system/convert.anubis
19   -
20   -//read utils.anubis
21   -read locale/L3LanguageInfo.anubis
22   -read calexium_lib/web/CXM_common.anubis
23   -read calexium_lib/web/CXM_web_arg_utils.anubis
24   -read calexium_lib/web/CXM_making_a_web_site.anubis
25   -read calexium_lib/web/CXM_multihost_http_server.anubis
26   -read calexium_lib/web/jQuery/CXM_jquery_datatable.anubis
27   -read calexium_lib/web/jQuery/CXM_jquery_datatable_types.anubis
28   -read calexium_lib/web/jQuery/CXM_jquery_dialog.anubis
29   -read calexium_lib/web/jQuery/CXM_jquery_button.anubis
30   -read calexium_lib/web/jQuery/ui-addon/datetimepicker.anubis
31   -read calexium_lib/web/CXM_form.anubis
32   -read calexium_lib/web/widgets/css_helper.anubis
33   -read calexium_lib/web/widgets/button.anubis
34   -
35   -define CXM_Form_Field
36   - help_line
37   - (
38   - HK_Help_Text help,
39   - (String) -> String _T
40   - )=
41   - if help is
42   - {
43   - no_help_text then empty,
44   - help_text_TAG(tag) then explain(_T(tag)),
45   - help_text(str) then explain(str)
46   - }.
47   -
48   -
49   - //Edit table part
50   -public define List(CXM_Form_Field)
51   - edit_form_lines
52   - (
53   - SQLite3DataBase db,
54   - (String) -> String _T,
55   - List(VT_edit_entry) list,
56   - List(CXM_Form_Field) so_far
57   - )=
58   - if list is
59   - {
60   - [] then reverse(so_far),
61   - [ h . t] then
62   - with line =
63   - if h is
64   - {
65   - hidden(name, value) then
66   - //print("hidden "+name+" = "+value);
67   - [hidden(html_Id(""), wan(name), wav(value))],
68   - primary_key(idx) then
69   - [hidden(html_Id(""), wan("id"), wav(idx))],
70   - information(s_name, c_name, value, width, help) then
71   - [input_readonly(label(_T(s_name), no_help), wan(c_name), init(value), if width > 0 then custom(width) else narrow), help_line(help, _T)],
72   - text(s_name, c_name, value, help) then
73   - [input(label(_T(s_name), no_help), wan(c_name), init(value), narrow, mandatory), help_line(help, _T)],
74   - password(s_name, c_name, help) then
75   - [password_input(label(_T(s_name), no_help), wan(c_name+"_1"), init(""), narrow, non_mandatory),
76   - password_input(label(_T(s_name), no_help), wan(c_name+"_2"), init(""), narrow, non_mandatory),
77   - help_line(help, _T)],
78   -
79   - foreign_text(s_name, c_name, value, select, help) then
80   - [selector_c([],label(_T(s_name), no_help), html_Id(""), wan(c_name), 1, select.get(db), success(init(to_String(value))), mandatory), help_line(help, _T)],
81   - choices_text(s_name, c_name, value, select, help) then
82   - [selector_c([],label(_T(s_name), no_help), html_Id(""), wan(c_name), 1, select.get(db), success(init(value)), mandatory), help_line(help, _T)],
83   - text_area(s_name, c_name, value, help) then
84   - [text_area([],label(_T(s_name), no_help), html_Id(""), wan(c_name), init(value), narrow, (Int)5, mandatory), help_line(help, _T)],
85   - boolean(s_name, c_name, value, help) then
86   - [checkboxr([],label(_T(s_name), no_help), html_Id(""), wan(c_name), wav(c_name),value, mandatory), help_line(help, _T)],
87   - integer(s_name, c_name, value, help) then
88   - [input(label(_T(s_name), no_help), wan(c_name), init(abs_to_decimal(value)), small, mandatory), help_line(help, _T)],
89   - choices_int(s_name, c_name, value, select, help) then
90   - [selector_c([],label(_T(s_name), no_help), html_Id(""), wan(c_name), 1, select.get(db), success(init(to_String(value))), mandatory), help_line(help, _T)],
91   - date(s_name, c_name, value, help) then
92   - [input([class("datepicker")], label(_T(s_name), no_help), html_Id(c_name), wan(c_name), init(value), small, non_mandatory), help_line(help, _T)],
93   - time(s_name, c_name, value, help) then
94   - [input([class("timepicker")], label(_T(s_name), no_help), html_Id(c_name), wan(c_name), init(value), small, non_mandatory), help_line(help, _T)],
95   - datetime(s_name, c_name, value, help) then
96   - [input([class("datetimepicker")], label(_T(s_name), no_help), html_Id(c_name), wan(c_name), init(value), custom(18), mandatory), help_line(help, _T)],
97   - },
98   - edit_form_lines(db, _T, t, reverse(line)+so_far)
99   - }.
100   -
101   -public define HTML_Partial_Content
102   - edit_table_page
103   - (
104   - SQLite3DataBase db,
105   - (String) -> String _T,
106   - String lang,
107   - List(Web_arg) lwa,
108   - VT_edit vt_elist
109   - ) =
110   - with table_name = vt_elist.table_name,
111   - with button_name = if get_String(lwa, "id","none") = "none" then _T("CREATE") else _T("UPDATE"),
112   - partial_content(jq_datetimepicker_init(lang),
113   - cxm_form( table_name, lwa,
114   - edit_form_lines(db, _T, vt_elist.list, [])+
115   - [ submit("create", failure, button_name, [("table_name", table_name)]) ]
116   - )).
117   -
118   -public define Maybe(HTML_Partial_Content)
119   - edit_table_content
120   - (
121   - SQLite3DataBase db,
122   - (String) -> String _T,
123   - String lang,
124   - List(Web_arg) lwa,
125   - String table,
126   - VT_action action,
127   - VTM vtm
128   - ) =
129   - if vtm_get_edit(table, vtm.edit_list) is
130   - {
131   - failure then failure,
132   - success(vtm_e) then
133   - since vtm_e is vtm_edit(_, get_edit),
134   - success(edit_table_page(db, _T, lang, lwa, get_edit(db, action)))
135   - }.
136   -
137   -
138   - // View table part
139   -define HTML_Row(HTML_Off_Form) make_line
140   - (
141   - String table_name,
142   - String action_name, //default is "edit_table", but can be surcharged for own use
143   - List(VT_view_entry) entries,
144   - List(HTML_Cell(HTML_Off_Form)) so_far
145   - )=
146   - if entries is
147   - {
148   - [] then row( [], reverse(so_far)),
149   - [h . t] then
150   - with cell = if h is
151   - {
152   - text(string) then cell((HTML_Off_Form)text(string)),
153   -// link(id, string) then cell((HTML_Off_Form)actioner(same,same, link(string), action_name, [("table_name", table_name),("id",id)])),
154   - link(id, string) then cell((HTML_Off_Form)literal(jq_dialog_open(string, dialog_id(action_name+"_dlg_ajax"), "'id="+id+"'"))),
155   - link_id_action(id, name, action) then cell((HTML_Off_Form)actioner(same,same, link(name), action, [("id",id)])),
156   - icon(icon_path) then cell((HTML_Off_Form)image([], icon_path, ""))
157   - },
158   - make_line(table_name, action_name, t, [cell . so_far])
159   - }.
160   -
161   -define List(HTML_Row(HTML_Off_Form))
162   - make_lines
163   - (
164   - (String) -> String _T, //translator
165   - String table_name,
166   - String action_name,
167   - List(VT_view_row) entries,
168   - List(HTML_Row(HTML_Off_Form)) so_far
169   - )=
170   - if entries is
171   - {
172   - [] then reverse(so_far),
173   - [h . t] then
174   - //compute each line
175   - //prepare here the first cell for actioner
176   - with actions_cell = (HTML_Cell(HTML_Off_Form))
177   - cell([],
178   - sequence([
179   - partial(img_button_confirm(icn16_cross, _T("CONFIRMATION_REQUEST"), _T("CONFIRM_LINE_DELETION") , _T("OK"), _T("CANCEL"), jQuery_actioner(same, jqlink, "hk_del_row" + format_extra_operands([("table_name", table_name),("id",to_String(h.db_id))])))),
180   - partial(img_button(icn16_edit, [event(onclick, jq_dialog_open(dialog_id(action_name+"_dlg_ajax"), "'id="+to_String(h.db_id)+"'"))], "", [])),
181   - ])
182   - ),
183   - make_lines(_T, table_name, action_name, t, [make_line(table_name, action_name, h.list, [actions_cell]). so_far] )
184   - }.
185   -
186   - // View table part
187   -define HTML_Header_Row(HTML_Off_Form)
188   - make_header
189   - (
190   - (String) -> String _T, //translator
191   - List(VT_view_entry) entries,
192   - List(HTML_Header_Cell(HTML_Off_Form)) so_far
193   - )=
194   - if entries is
195   - {
196   - [] then header_row( [], reverse(so_far)),
197   - [h . t] then
198   - with cell = if h is
199   - {
200   - text(string) then header_cell((HTML_Off_Form)text(_T(string))),
201   - link(id, string) then header_cell((HTML_Off_Form)actioner(same,same, link(string),"edit_table",[])), //TODO
202   - link_id_action(id, text, action) then header_cell((HTML_Off_Form)actioner(same,same, link(text),action,[("id",id)])), //TODO
203   - icon(icon_path) then header_cell((HTML_Off_Form)image([], icon_path, ""))
204   - },
205   - make_header(_T, t, [cell . so_far])
206   - }.
207   -
208   -
209   -
210   -public define HTML_Partial_Content
211   - view_table_form
212   - (
213   - (String) -> String _T,
214   - String action_name,
215   - VT_view rows
216   - )=
217   - with action_header_cell = header_cell((HTML_Off_Form)text(_T("ACTION"))),
218   - partial_content(
219   - div( [/*class("tableau")*/],
220   - sequence(
221   - [
222   - partial(jquery_button(jQuery_button(button, "edit_table_"+rows.table_name, "", _T("NEW"), jQuery_actioner(same, jqlink, "edit_table&table_name="+rows.table_name)))),
223   - //dialog used by datatable entries
224   - partial(jq_dialog_create(dialog_id(action_name+"_dlg_ajax"), ajax("?a=ajax_edit_table&table_name="+rows.table_name))),
225   -
226   - table([core_attrs([id("table_view"), class("tableau display compact nowrap")])],
227   - make_header(_T, rows.header.list, [action_header_cell]),
228   - make_lines(_T, rows.table_name, action_name, rows.list, []))
229   - ]
230   - )
231   - ))
232   - .
233   -
234   -public define HTML_Partial_Content
235   - view_table_page
236   - (
237   - (String) -> String _T,
238   - String lang,
239   - String web_site_directory,
240   - String action_name,
241   - VT_view rows
242   - ) =
243   -
244   -// if tb is tool_box(lang, _T, _, _, db, _) then
245   -// println("view_table_page - lang : "+lang);
246   -// println("view_table_page - web_site_directory : "+web_site_directory);
247   - partial_content(jq_dialog_init + jq_datetimepicker_init(lang),
248   - [partial(html_wave_box_wide(_T(to_upper(rows.table_name)),
249   - jquery_datatable("table_view", view_table_form(_T, action_name, rows), true, false, jq_dt_pt_full_numbers, false, scrollY(500), true, true, true, lang, no_extra, web_site_directory)))]).
250   -
251   -public define Maybe(HTML_Partial_Content)
252   - view_table_content
253   - (
254   - SQLite3DataBase db,
255   - (String) -> String _T,
256   - String lang,
257   - String web_site_directory,
258   - String table,
259   - String view_name,
260   - String action_name,
261   - VTM vtm
262   - ) =
263   - if vtm_get_view(table, vtm.view_list) is
264   - {
265   - failure then failure,
266   - success(vtm_v) then
267   - since vtm_v is vtm_view(_, get_view),
268   - success(view_table_page(_T, lang, web_site_directory, action_name, get_view(db, view_name)))
269   - }.
database/vtm/view_table_types.anubis deleted
1   -/*
2   - * Created by PyramIDE.
3   - * User: Totoro
4   - * Date: 15/11/2011
5   - * Time: 20:32
6   - */
7   -
8   -read calexium_lib/web/CXM_making_a_web_site.anubis
9   -transmit calexium_lib/web/CXM_common.anubis
10   -read hayamiki_lib/types/hayamiki.anubis
11   -
12   -public type VT_edit_selector:
13   - vt_edit_selector((SQLite3DataBase db) -> List((List(CoreAttrs), WebArgValue, String)) get).
14   -
15   -public type VT_edit_entry:
16   - hidden (String name, String value),
17   - primary_key (String idx),
18   - information (String s_name, String c_name, String v_name, Int width, HK_Help_Text help), //s_name = show_name for translation, v_name = string to show
19   - text (String s_name, String c_name, String value, HK_Help_Text help), //s_name = show_name for translation, c_name = table column name
20   - password (String s_name, String c_name, HK_Help_Text help), //s_name = show_name for translation, c_name = table column name
21   - foreign_text(String s_name, String c_name, Int selected, VT_edit_selector selector, HK_Help_Text help),
22   - choices_text(String s_name, String c_name, String selected, VT_edit_selector selector, HK_Help_Text help),
23   - text_area (String s_name, String c_name, String value, HK_Help_Text help), //s_name = show_name for translate, c_name = table column name
24   - boolean (String s_name, String c_name, Bool value, HK_Help_Text help),
25   - integer (String s_name, String c_name, Int value, HK_Help_Text help),
26   - choices_int (String s_name, String c_name, Int selected, VT_edit_selector selector, HK_Help_Text help),
27   - date (String s_name, String c_name, String value, HK_Help_Text help),
28   - time (String s_name, String c_name, String value, HK_Help_Text help),
29   - datetime (String s_name, String c_name, String value, HK_Help_Text help).
30   -
31   -public define VT_edit_entry text (String s_name, String c_name, String value) = text(s_name, c_name, value, no_help_text).
32   -public define VT_edit_entry foreign_text(String s_name, String c_name, Int selected, VT_edit_selector selector) = foreign_text(s_name, c_name, selected, selector, no_help_text).
33   -public define VT_edit_entry text_area (String s_name, String c_name, String value) = text_area(s_name, c_name, value, no_help_text).
34   -public define VT_edit_entry boolean(String s_name, String c_name, Bool value) = boolean(s_name, c_name, value, no_help_text).
35   -public define VT_edit_entry integer(String s_name, String c_name, Int value) = integer(s_name, c_name, value, no_help_text).
36   -public define VT_edit_entry information(String s_name, String c_name, String v_name, HK_Help_Text help) = information(s_name, c_name, v_name, 0, help).
37   -
38   -
39   -public type VT_edit:
40   - vt_edit(String table_name, List(VT_edit_entry) list).
41   -
42   -public type VT_view_entry:
43   - text(String text),
44   - link(String id, String text),
45   - link_id_action(String id, String text, String link_id_action),
46   - icon(String icon_path).
47   -
48   -public type VT_view_row_header:
49   - vt_view_row_header(List(VT_view_entry) list).
50   -
51   -public type VT_view_row:
52   - vt_view_row(Int db_id, List(VT_view_entry) list).
53   -
54   -public type VT_view:
55   - vt_view(String table_name, String view_name, VT_view_row_header header, List(VT_view_row) list).
56   -
57   -
58   -public type VT_action:
59   - new_entry,
60   - edit_entry(String idx).
61   -
62   -public define String default_select = "--------------------". //20 dash
63   -public define (List(CoreAttrs),WebArgValue,String) selector_default_entry = ([], wav("0"),default_select).