/*
* Created by PyramIDE.
* User: Steve Marechal
* Date: 11/06/2008
* Time: 09:54
*
*/
read tools/basis.anubis
read tools/base64.anubis
read locale/L3LanguageInfo.anubis
read system/string.anubis
read calexium_lib/web/CXM_common.anubis
read calexium_lib/web/CXM_making_a_web_site.anubis
read calexium_lib/web/CXM_multihost_http_server.anubis
read calexium_lib/net_services_protocols/logger_service.anubis
read mailfountain_constants.anubis
read mailfountain_types.anubis
read common/language_management.anubis
read tools/mf_loggers.anubis
read system/logger.anubis
public type Dojo_Grid_Data :
grid_data(String).
public type Position_Direction:
brup,
brleft,
blup,
blright,
trdown,
trleft,
tldown,
tlright.
define String
pos_dir_to_str
(
Position_Direction pos
)=
if pos is
{
brup then "br-up",
brleft then "br-left",
blup then "bl-up",
blright then "bl-right",
trdown then "tr-down",
trleft then "tr-left",
tldown then "tl-down",
tlright then "tl-right"
}.
public define HTML_Off_Form
dojo_button
(
String name,
String execute,
String id,
)
=
literal("
")
.
public define HTML_Off_Form
dojo_dialog
(
String name,
String dialog_id,
String execute,
Bool file
)
=
sequence[
dojo_button(name,"dijit.byId('"+dialog_id+"').show()", dialog_id + "_button"),
div([attr("dojoType", "dijit.Dialog"), id(dialog_id), title(name), attr("execute", execute)],
table([],
empty,
[
row([], [cell([], literal("")
)]),
row([], [cell([columns(2), h_center], literal(""))]),
],
empty)),
literal("
"),
]
.
public type DojoGridEditor:
inputEditor,
boolEditor,
selectEditor(List(String) options),
alwaysOnEditor.
public type DojoGridDefaultColumn:
dojo_grid_default_column(
String styles,
Maybe(String) width,
Maybe(DojoGridEditor) editor).
public type DojoGridColumn:
dojo_grid_column( String label,
String field_name,
Maybe(String) width,
Maybe(DojoGridEditor) editor).
public type DojoGridView:
dojo_grid_view(
Maybe(DojoGridDefaultColumn) default_column,
List(DojoGridColumn) columns).
public type DojoGridLayout:
dojo_grid_layout(
Maybe(String) selectable_row_header_width,
List(DojoGridView) views).
define String to_String(DojoGridEditor editor) =
"editor: " +
if editor is
{
inputEditor then "dojox.grid.editors.Input",
boolEditor then "dojox.grid.editors.Bool",
selectEditor(options) then "dojox.grid.editors.Select, options: [" + join(",", map((String o) |-> "\"" + o + "\"", options)) + "]",
alwaysOnEditor then "dojox.grid.editors.AlwaysOn"
}.
define String to_String(DojoGridView view) =
"{ " + (if view.default_column is success(col) then
(if col is dojo_grid_default_column(styles, mb_width, mb_editor) then
"defaultCell: {"
+ "styles: \"" + styles + "\""
+ (if mb_width is success(w) then ", width=\"" + w + "\"" else "")
+ (if mb_editor is success(e) then ", " + to_String(e) else "")
+ "}, ")
else "")
+ "cells: [[" + join(",", map((DojoGridColumn col) |->
if col is dojo_grid_column(label, field, mb_width, mb_editor) then
"{"
+ "name: \"" + label + "\""
+ "field: \"" + field + "\""
+ (if mb_width is success(w) then ", width=\"" + w + "\"" else "")
+ (if mb_editor is success(e) then ", " + to_String(e) else "")
+ "}",
view.columns)) + "]]"
+"}".
public define String
dojo_make_grid_script
(
HtmlId html_id,
DojoGridLayout layout,
String layout_name,
String store_name,
Bool can_edit
)
=
"".
public define HTML_Off_Form
dojo_make_grid_script
(
HtmlId html_id,
List(String) columns,
Bool can_edit
)
=
literal(
"").
public define HTML_Off_Form
dojo_grid
(
HtmlId html_id,
Int rowsPerPage,
List(Table_Option) attributes,
)=
table([attr("dojoType", "dojox.grid.DataGrid"), attr("id", html_id.id), attr("jsId", html_id.id),
attr("class", "soria"), attr("singleClickEdit", "true"), attr("rowsPerPage", to_decimal(rowsPerPage)) . attributes],
empty, [], empty).
public define HTML_Off_Form
dojo_grid
(
HtmlId html_id,
List(CoreAttrs) attributes,
// List(GridColumn) columns,
String colum1,
String colum2,
String colum3,
String colum4,
Bool can_edit
)
=
sequence([
literal(
""),
div_empty([id(html_id.id) . attributes /*attr("dojoType", "dojox.Grid"), */]),
]).
//