Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
erp5
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Labels
Merge Requests
141
Merge Requests
141
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Jobs
Commits
Open sidebar
nexedi
erp5
Commits
3e1c3ce2
Commit
3e1c3ce2
authored
Oct 03, 2016
by
Romain Courteaud
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[erp5_web_renderjs_ui] Simplify page template rendering
parent
c9edbda4
Changes
16
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
16 changed files
with
391 additions
and
431 deletions
+391
-431
bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_pt_form_dialog_html.html
.../web_page_module/rjs_gadget_erp5_pt_form_dialog_html.html
+1
-2
bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_pt_form_dialog_html.xml
...m/web_page_module/rjs_gadget_erp5_pt_form_dialog_html.xml
+2
-2
bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_pt_form_dialog_js.js
...Item/web_page_module/rjs_gadget_erp5_pt_form_dialog_js.js
+148
-170
bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_pt_form_dialog_js.xml
...tem/web_page_module/rjs_gadget_erp5_pt_form_dialog_js.xml
+2
-2
bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_pt_form_list_html.html
...em/web_page_module/rjs_gadget_erp5_pt_form_list_html.html
+2
-3
bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_pt_form_list_html.xml
...tem/web_page_module/rjs_gadget_erp5_pt_form_list_html.xml
+2
-2
bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_pt_form_list_js.js
...teItem/web_page_module/rjs_gadget_erp5_pt_form_list_js.js
+96
-92
bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_pt_form_list_js.xml
...eItem/web_page_module/rjs_gadget_erp5_pt_form_list_js.xml
+2
-2
bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_pt_form_view_editable_html.html
...ge_module/rjs_gadget_erp5_pt_form_view_editable_html.html
+0
-2
bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_pt_form_view_editable_html.xml
...age_module/rjs_gadget_erp5_pt_form_view_editable_html.xml
+2
-2
bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_pt_form_view_editable_js.js
...b_page_module/rjs_gadget_erp5_pt_form_view_editable_js.js
+94
-116
bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_pt_form_view_editable_js.xml
..._page_module/rjs_gadget_erp5_pt_form_view_editable_js.xml
+2
-2
bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_pt_form_view_html.html
...em/web_page_module/rjs_gadget_erp5_pt_form_view_html.html
+0
-2
bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_pt_form_view_html.xml
...tem/web_page_module/rjs_gadget_erp5_pt_form_view_html.xml
+2
-2
bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_pt_form_view_js.js
...teItem/web_page_module/rjs_gadget_erp5_pt_form_view_js.js
+34
-28
bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_pt_form_view_js.xml
...eItem/web_page_module/rjs_gadget_erp5_pt_form_view_js.xml
+2
-2
No files found.
bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_pt_form_dialog_html.html
View file @
3e1c3ce2
...
...
@@ -11,7 +11,6 @@
<script
src=
"URI.js"
type=
"text/javascript"
></script>
<!-- custom script -->
<script
src=
"gadget_global.js"
type=
"text/javascript"
></script>
<script
src=
"gadget_erp5_global.js"
type=
"text/javascript"
></script>
<script
src=
"gadget_erp5_pt_form_dialog.js"
type=
"text/javascript"
></script>
...
...
@@ -24,7 +23,7 @@
<!-- XXX action, method, fieldset -->
<form
class=
"dialog_form"
>
<button
type=
"submit"
data-i18n=
"Submit"
class=
"ui-btn ui-btn-b ui-btn-inline
<button
type=
"submit"
class=
"ui-btn ui-btn-b ui-btn-inline
ui-icon-action ui-btn-icon-right ui-screen-hidden"
>
Submit
</button>
<div
data-gadget-url=
"gadget_erp5_form.html"
data-gadget-scope=
"erp5_form"
...
...
bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_pt_form_dialog_html.xml
View file @
3e1c3ce2
...
...
@@ -234,7 +234,7 @@
</item>
<item>
<key>
<string>
serial
</string>
</key>
<value>
<string>
9
46.44927.40202.16725
</string>
</value>
<value>
<string>
9
54.5408.20833.21606
</string>
</value>
</item>
<item>
<key>
<string>
state
</string>
</key>
...
...
@@ -252,7 +252,7 @@
</tuple>
<state>
<tuple>
<float>
14
60379182.9
4
</float>
<float>
14
75506475.7
4
</float>
<string>
UTC
</string>
</tuple>
</state>
...
...
bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_pt_form_dialog_js.js
View file @
3e1c3ce2
This diff is collapsed.
Click to expand it.
bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_pt_form_dialog_js.xml
View file @
3e1c3ce2
...
...
@@ -230,7 +230,7 @@
</item>
<item>
<key>
<string>
serial
</string>
</key>
<value>
<string>
95
0.30388.38115.23432
</string>
</value>
<value>
<string>
95
4.5593.38130.32665
</string>
</value>
</item>
<item>
<key>
<string>
state
</string>
</key>
...
...
@@ -248,7 +248,7 @@
</tuple>
<state>
<tuple>
<float>
14
60476265.13
</float>
<float>
14
74544293.54
</float>
<string>
UTC
</string>
</tuple>
</state>
...
...
bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_pt_form_list_html.html
View file @
3e1c3ce2
...
...
@@ -10,7 +10,6 @@
<script
src=
"renderjs.js"
type=
"text/javascript"
></script>
<!-- custom script -->
<script
src=
"gadget_global.js"
type=
"text/javascript"
></script>
<script
src=
"gadget_erp5_global.js"
type=
"text/javascript"
></script>
<script
src=
"gadget_erp5_pt_form_list.js"
type=
"text/javascript"
></script>
...
...
@@ -19,13 +18,13 @@
<!-- XXX action, method, fieldset -->
<form
class=
"dialog_form"
>
<button
type=
"submit"
data-i18n=
"Submit"
class=
"ui-btn ui-btn-b ui-btn-inline
<button
type=
"submit"
class=
"ui-btn ui-btn-b ui-btn-inline
ui-icon-action ui-btn-icon-right ui-screen-hidden"
>
Submit
</button>
<div
data-gadget-url=
"gadget_erp5_searchfield.html"
data-gadget-scope=
"erp5_searchfield"
data-gadget-sandbox=
"public"
></div>
<div
data-gadget-url=
"gadget_erp5_form.html"
data-gadget-scope=
"erp5_form"
data-gadget-sandbox=
"public"
></div>
...
...
bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_pt_form_list_html.xml
View file @
3e1c3ce2
...
...
@@ -234,7 +234,7 @@
</item>
<item>
<key>
<string>
serial
</string>
</key>
<value>
<string>
9
46.44927.40202.16725
</string>
</value>
<value>
<string>
9
54.5635.22528.56337
</string>
</value>
</item>
<item>
<key>
<string>
state
</string>
</key>
...
...
@@ -252,7 +252,7 @@
</tuple>
<state>
<tuple>
<float>
14
60379295.1
3
</float>
<float>
14
75506438.6
3
</float>
<string>
UTC
</string>
</tuple>
</state>
...
...
bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_pt_form_list_js.js
View file @
3e1c3ce2
/*global window, rJS, RSVP,
loopEventListener,
calculatePageTitle */
/*global window, rJS, RSVP, calculatePageTitle */
/*jslint nomen: true, indent: 2, maxerr: 3 */
(
function
(
window
,
rJS
,
RSVP
,
loopEventListener
,
calculatePageTitle
)
{
(
function
(
window
,
rJS
,
RSVP
,
calculatePageTitle
)
{
"
use strict
"
;
rJS
(
window
)
/////////////////////////////////////////////////////////////////
// ready
/////////////////////////////////////////////////////////////////
// Init local properties
.
ready
(
function
(
g
)
{
g
.
props
=
{};
})
// Assign the element to a variable
.
ready
(
function
(
g
)
{
return
g
.
getElement
()
.
push
(
function
(
element
)
{
g
.
props
.
element
=
element
;
});
})
/////////////////////////////////////////////////////////////////
// Acquired methods
/////////////////////////////////////////////////////////////////
...
...
@@ -33,67 +17,94 @@
// declared methods
/////////////////////////////////////////////////////////////////
.
declareMethod
(
'
render
'
,
function
(
options
)
{
var
gadget
=
this
,
form_options
=
options
.
erp5_form
||
{},
search_options
=
{};
var
gadget
=
this
;
return
gadget
.
getUrlParameter
(
'
extended_search
'
)
.
push
(
function
(
extended_search
)
{
var
state_dict
=
{
id
:
options
.
jio_key
,
view
:
options
.
view
,
editable
:
options
.
editable
,
erp5_document
:
options
.
erp5_document
,
form_definition
:
options
.
form_definition
,
erp5_form
:
options
.
erp5_form
||
{},
extended_search
:
extended_search
};
return
gadget
.
changeState
(
state_dict
);
});
})
form_options
.
erp5_document
=
options
.
erp5_document
;
form_options
.
form_definition
=
options
.
form_definition
;
form_options
.
view
=
options
.
view
;
.
declareMethod
(
'
updateDOM
'
,
function
()
{
var
form_gadget
=
this
;
return
new
RSVP
.
Queue
()
// render the erp5 form
return
form_gadget
.
getDeclaredGadget
(
"
erp5_form
"
)
.
push
(
function
(
erp5_form
)
{
var
form_options
=
form_gadget
.
state
.
erp5_form
;
form_options
.
erp5_document
=
form_gadget
.
state
.
erp5_document
;
form_options
.
form_definition
=
form_gadget
.
state
.
form_definition
;
form_options
.
view
=
form_gadget
.
state
.
view
;
// XXX Hardcoded for listbox's hide functionality
form_options
.
form_definition
.
hide_enabled
=
true
;
// XXX not generic, fix later
if
(
form_gadget
.
state
.
extended_search
)
{
form_options
.
form_definition
.
extended_search
=
form_gadget
.
state
.
extended_search
;
}
return
erp5_form
.
render
(
form_options
);
})
// render the search field
.
push
(
function
()
{
return
gadget
.
getUrlParameter
(
'
extended_search
'
);
return
form_gadget
.
getDeclaredGadget
(
"
erp5_searchfield
"
);
})
.
push
(
function
(
extended_search
)
{
.
push
(
function
(
search_gadget
)
{
var
search_options
=
{};
// XXX not generic, fix later
if
(
extended_search
)
{
form_options
.
form_definition
.
extended_search
=
extended_search
;
search_options
.
extended_search
=
extended_search
;
if
(
form_gadget
.
state
.
extended_search
)
{
search_options
.
extended_search
=
form_gadget
.
state
.
extended_search
;
}
// XXX Hardcoded for listbox's hide functionality
form_options
.
form_definition
.
hide_enabled
=
true
;
var
new_content_action
=
options
.
erp5_document
.
_links
.
action_object_new_content_action
;
return
search_gadget
.
render
(
search_options
);
})
// render the header
.
push
(
function
()
{
var
new_content_action
=
form_gadget
.
state
.
erp5_document
.
_links
.
action_object_new_content_action
;
if
(
new_content_action
!==
undefined
)
{
new_content_action
=
gadget
.
getUrlFor
({
command
:
'
change
'
,
options
:
{
view
:
new_content_action
.
href
,
editable
:
true
}});
new_content_action
=
form_
gadget
.
getUrlFor
({
command
:
'
change
'
,
options
:
{
view
:
new_content_action
.
href
,
editable
:
true
}});
}
else
{
new_content_action
=
""
;
}
return
RSVP
.
all
([
gadget
.
getDeclaredGadget
(
"
erp5_searchfield
"
),
gadget
.
getDeclaredGadget
(
"
erp5_form
"
),
new_content_action
,
gadget
.
getUrlFor
({
command
:
'
change
'
,
options
:
{
page
:
"
action
"
}}),
gadget
.
getUrlFor
({
command
:
'
display
'
,
options
:
{}}),
calculatePageTitle
(
gadget
,
options
.
erp5_document
)
form_
gadget
.
getUrlFor
({
command
:
'
change
'
,
options
:
{
page
:
"
action
"
}}),
form_
gadget
.
getUrlFor
({
command
:
'
display
'
,
options
:
{}}),
calculatePageTitle
(
form_gadget
,
form_gadget
.
state
.
erp5_document
)
]);
})
.
push
(
function
(
all_gadget
)
{
return
RSVP
.
all
([
all_gadget
[
0
].
render
(
search_options
),
all_gadget
[
1
].
render
(
form_options
),
gadget
.
updateHeader
({
panel_action
:
true
,
jump_url
:
""
,
cut_url
:
""
,
add_url
:
all_gadget
[
2
],
actions_url
:
all_gadget
[
3
],
export_url
:
""
,
page_title
:
all_gadget
[
5
],
front_url
:
all_gadget
[
4
],
filter_action
:
true
})
]);
return
form_gadget
.
updateHeader
({
panel_action
:
true
,
jump_url
:
""
,
cut_url
:
""
,
add_url
:
all_gadget
[
0
],
actions_url
:
all_gadget
[
1
],
export_url
:
""
,
page_title
:
all_gadget
[
3
],
front_url
:
all_gadget
[
2
],
filter_action
:
true
});
});
})
.
declareMethod
(
'
triggerSubmit
'
,
function
()
{
var
gadget
=
this
,
extended_search
=
''
,
options
=
{};
extended_search
=
''
;
return
gadget
.
getDeclaredGadget
(
"
erp5_searchfield
"
)
.
push
(
function
(
search_gadget
)
{
return
search_gadget
.
getContent
();
...
...
@@ -107,43 +118,36 @@
return
form_gadget
.
getListboxInfo
();
})
.
push
(
function
(
result
)
{
var
url
=
"
gadget_erp5_search_editor.html
"
;
options
.
extended_search
=
extended_search
;
options
.
begin_from
=
result
.
begin_from
;
options
.
search_column_list
=
result
.
search_column_list
;
return
gadget
.
renderEditorPanel
(
url
,
options
);
return
gadget
.
renderEditorPanel
(
"
gadget_erp5_search_editor.html
"
,
{
extended_search
:
extended_search
,
begin_from
:
result
.
begin_from
,
search_column_list
:
result
.
search_column_list
}
);
});
})
.
declareService
(
function
()
{
.
onEvent
(
'
submit
'
,
function
()
{
var
gadget
=
this
;
function
formSubmit
()
{
return
gadget
.
getDeclaredGadget
(
"
erp5_searchfield
"
)
.
push
(
function
(
search_gadget
)
{
return
search_gadget
.
getContent
();
})
.
push
(
function
(
data
)
{
var
options
=
{
begin_from
:
undefined
,
// XXX Hardcoded
field_listbox_begin_from
:
undefined
};
if
(
data
.
search
)
{
options
.
extended_search
=
data
.
search
;
}
else
{
options
.
extended_search
=
undefined
;
}
return
gadget
.
redirect
({
command
:
'
store_and_change
'
,
options
:
options
});
});
}
// Listen to form submit
return
loopEventListener
(
gadget
.
props
.
element
.
querySelector
(
'
form
'
),
'
submit
'
,
false
,
formSubmit
);
});
}(
window
,
rJS
,
RSVP
,
loopEventListener
,
calculatePageTitle
));
\ No newline at end of file
return
gadget
.
getDeclaredGadget
(
"
erp5_searchfield
"
)
.
push
(
function
(
search_gadget
)
{
return
search_gadget
.
getContent
();
})
.
push
(
function
(
data
)
{
var
options
=
{
begin_from
:
undefined
,
// XXX Hardcoded
field_listbox_begin_from
:
undefined
};
if
(
data
.
search
)
{
options
.
extended_search
=
data
.
search
;
}
else
{
options
.
extended_search
=
undefined
;
}
return
gadget
.
redirect
({
command
:
'
store_and_change
'
,
options
:
options
});
});
},
false
,
true
);
}(
window
,
rJS
,
RSVP
,
calculatePageTitle
));
\ No newline at end of file
bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_pt_form_list_js.xml
View file @
3e1c3ce2
...
...
@@ -230,7 +230,7 @@
</item>
<item>
<key>
<string>
serial
</string>
</key>
<value>
<string>
95
0.28943.57832.6053
5
</string>
</value>
<value>
<string>
95
4.5675.50023.5896
5
</string>
</value>
</item>
<item>
<key>
<string>
state
</string>
</key>
...
...
@@ -248,7 +248,7 @@
</tuple>
<state>
<tuple>
<float>
14
60389440.4
</float>
<float>
14
74549231.17
</float>
<string>
UTC
</string>
</tuple>
</state>
...
...
bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_pt_form_view_editable_html.html
View file @
3e1c3ce2
...
...
@@ -8,10 +8,8 @@
<!-- renderjs -->
<script
src=
"rsvp.js"
type=
"text/javascript"
></script>
<script
src=
"renderjs.js"
type=
"text/javascript"
></script>
<script
src=
"URI.js"
type=
"text/javascript"
></script>
<!-- custom script -->
<script
src=
"gadget_global.js"
type=
"text/javascript"
></script>
<script
src=
"gadget_erp5_global.js"
type=
"text/javascript"
></script>
<script
src=
"gadget_erp5_pt_form_view_editable.js"
type=
"text/javascript"
></script>
...
...
bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_pt_form_view_editable_html.xml
View file @
3e1c3ce2
...
...
@@ -234,7 +234,7 @@
</item>
<item>
<key>
<string>
serial
</string>
</key>
<value>
<string>
9
46.44927.40202.16725
</string>
</value>
<value>
<string>
9
52.64761.25287.18397
</string>
</value>
</item>
<item>
<key>
<string>
state
</string>
</key>
...
...
@@ -252,7 +252,7 @@
</tuple>
<state>
<tuple>
<float>
14
60379409.7
2
</float>
<float>
14
75506409.1
2
</float>
<string>
UTC
</string>
</tuple>
</state>
...
...
bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_pt_form_view_editable_js.js
View file @
3e1c3ce2
/*global window, rJS, RSVP,
loopEventListener, document,
calculatePageTitle */
/*global window, rJS, RSVP, calculatePageTitle */
/*jslint nomen: true, indent: 2, maxerr: 3 */
(
function
(
window
,
rJS
,
RSVP
,
loopEventListener
,
calculatePageTitle
)
{
(
function
(
window
,
rJS
,
RSVP
,
calculatePageTitle
)
{
"
use strict
"
;
rJS
(
window
)
/////////////////////////////////////////////////////////////////
// ready
/////////////////////////////////////////////////////////////////
// Init local properties
.
ready
(
function
(
g
)
{
g
.
props
=
{};
})
// Assign the element to a variable
.
ready
(
function
(
g
)
{
return
g
.
getElement
()
.
push
(
function
(
element
)
{
g
.
props
.
element
=
element
;
});
})
.
declareAcquiredMethod
(
"
jio_putAttachment
"
,
"
jio_putAttachment
"
)
.
declareAcquiredMethod
(
"
translateHtml
"
,
"
translateHtml
"
)
.
declareAcquiredMethod
(
"
getUrlFor
"
,
"
getUrlFor
"
)
.
declareAcquiredMethod
(
"
redirect
"
,
"
redirect
"
)
.
declareAcquiredMethod
(
"
updateHeader
"
,
"
updateHeader
"
)
...
...
@@ -35,135 +19,129 @@
// declared methods
/////////////////////////////////////////////////////////////////
.
declareMethod
(
'
triggerSubmit
'
,
function
()
{
this
.
props
.
element
.
querySelector
(
'
button
'
).
click
();
this
.
element
.
querySelector
(
'
button
'
).
click
();
})
.
declareMethod
(
'
render
'
,
function
(
options
)
{
var
erp5_document
=
options
.
erp5_document
,
form_gadget
=
this
,
action_dict
=
erp5_document
.
_embedded
.
_view
.
_actions
;
form_gadget
.
props
.
id
=
options
.
jio_key
;
form_gadget
.
props
.
view
=
options
.
view
;
form_gadget
.
props
.
form_id
=
erp5_document
.
_embedded
.
_view
.
form_id
;
.
declareMethod
(
'
render
'
,
function
(
options
)
{
var
state_dict
=
{
id
:
options
.
jio_key
,
view
:
options
.
view
,
editable
:
options
.
editable
,
erp5_document
:
options
.
erp5_document
,
form_definition
:
options
.
form_definition
,
erp5_form
:
options
.
erp5_form
||
{}
};
return
this
.
changeState
(
state_dict
);
})
if
(
action_dict
!==
undefined
)
{
form_gadget
.
props
.
action
=
erp5_document
.
_embedded
.
_view
.
_actions
.
put
;
}
.
declareMethod
(
'
updateDOM
'
,
function
()
{
var
form_gadget
=
this
;
// render the erp5 form
return
form_gadget
.
getDeclaredGadget
(
"
erp5_form
"
)
.
push
(
function
(
erp5_form
)
{
var
form_options
=
options
.
erp5_form
||
{},
new_content_action
,
delete_action
;
var
form_options
=
form_gadget
.
state
.
erp5_form
;
form_options
.
erp5_document
=
options
.
erp5_document
;
form_options
.
form_definition
=
options
.
form_definition
;
form_options
.
view
=
options
.
view
;
form_options
.
erp5_document
=
form_gadget
.
state
.
erp5_document
;
form_options
.
form_definition
=
form_gadget
.
state
.
form_definition
;
form_options
.
view
=
form_gadget
.
state
.
view
;
return
erp5_form
.
render
(
form_options
);
})
// render the header
.
push
(
function
()
{
var
new_content_action
=
form_gadget
.
state
.
erp5_document
.
_links
.
action_object_new_content_action
,
delete_action
=
form_gadget
.
state
.
erp5_document
.
_links
.
action_object_delete_action
,
save_action
=
false
;
if
(
form_gadget
.
state
.
erp5_document
.
_embedded
.
_view
.
_actions
!==
undefined
)
{
if
(
form_gadget
.
state
.
erp5_document
.
_embedded
.
_view
.
_actions
.
put
!==
undefined
)
{
save_action
=
true
;
}
}
new_content_action
=
options
.
erp5_document
.
_links
.
action_object_new_content_action
;
if
(
new_content_action
!==
undefined
)
{
new_content_action
=
form_gadget
.
getUrlFor
({
command
:
'
change
'
,
options
:
{
view
:
new_content_action
.
href
,
editable
:
true
}});
}
else
{
new_content_action
=
""
;
}
delete_action
=
options
.
erp5_document
.
_links
.
action_object_delete_action
;
if
(
delete_action
!==
undefined
)
{
delete_action
=
form_gadget
.
getUrlFor
({
command
:
'
change
'
,
options
:
{
view
:
delete_action
.
href
,
editable
:
undefined
}});
}
else
{
delete_action
=
""
;
}
return
RSVP
.
all
([
erp5_form
.
render
(
form_options
),
form_gadget
.
getUrlFor
({
command
:
'
change
'
,
options
:
{
page
:
"
tab
"
}}),
form_gadget
.
getUrlFor
({
command
:
'
change
'
,
options
:
{
page
:
"
action
"
,
editable
:
true
}}),
new_content_action
,
form_gadget
.
getUrlFor
({
command
:
'
history_previous
'
}),
delete_action
,
calculatePageTitle
(
form_gadget
,
options
.
erp5_document
)
save_action
,
calculatePageTitle
(
form_gadget
,
form_gadget
.
state
.
erp5_document
)
]);
})
.
push
(
function
(
all_result
)
{
var
header_dict
=
{
tab_url
:
all_result
[
1
],
actions_url
:
all_result
[
2
],
add_url
:
all_result
[
3
],
selection_url
:
all_result
[
4
],
delete_url
:
all_result
[
5
],
return
form_gadget
.
updateHeader
(
{
tab_url
:
all_result
[
0
],
actions_url
:
all_result
[
1
],
add_url
:
all_result
[
2
],
selection_url
:
all_result
[
3
],
delete_url
:
all_result
[
4
],
cut_url
:
""
,
page_title
:
all_result
[
6
]
};
if
(
form_gadget
.
props
.
action
!==
undefined
)
{
header_dict
.
save_action
=
true
;
}
return
form_gadget
.
updateHeader
(
header_dict
);
page_title
:
all_result
[
6
],
save_action
:
all_result
[
5
]
});
});
})
.
onEvent
(
'
submit
'
,
function
()
{
var
form_gadget
=
this
,
erp5_form
,
form_id
=
this
.
state
.
erp5_document
.
_embedded
.
_view
.
form_id
,
action
=
form_gadget
.
state
.
erp5_document
.
_embedded
.
_view
.
_actions
.
put
;
.
declareService
(
function
()
{
////////////////////////////////////
// Form submit listening
////////////////////////////////////
var
form_gadget
=
this
;
return
form_gadget
.
getDeclaredGadget
(
"
erp5_form
"
)
.
push
(
function
(
gadget
)
{
erp5_form
=
gadget
;
return
erp5_form
.
checkValidity
();
})
.
push
(
function
(
validity
)
{
if
(
validity
)
{
return
erp5_form
.
getContent
()
.
push
(
function
(
data
)
{
data
[
form_id
.
key
]
=
form_id
[
'
default
'
];
return
RSVP
.
all
([
form_gadget
.
notifySubmitting
(),
form_gadget
.
jio_putAttachment
(
form_gadget
.
state
.
id
,
action
.
href
,
data
)
]);
})
.
push
(
form_gadget
.
notifySubmitted
.
bind
(
form_gadget
))
.
push
(
function
()
{
return
form_gadget
.
redirect
({
command
:
'
reload
'
});
})
.
push
(
undefined
,
function
(
error
)
{
if
((
error
.
target
!==
undefined
)
&&
(
error
.
target
.
status
===
400
))
{
return
form_gadget
.
notifySubmitted
()
.
push
(
function
()
{
return
form_gadget
.
notifyChange
();
})
.
push
(
function
()
{
return
form_gadget
.
displayFormulatorValidationError
(
JSON
.
parse
(
error
.
target
.
responseText
));
});
}
throw
error
;
});
}
});
function
formSubmit
()
{
var
erp5_form
;
if
(
form_gadget
.
props
.
action
===
undefined
)
{
// If not action is defined on form, do nothing
return
;
}
return
form_gadget
.
getDeclaredGadget
(
"
erp5_form
"
)
.
push
(
function
(
gadget
)
{
erp5_form
=
gadget
;
return
erp5_form
.
checkValidity
();
})
.
push
(
function
(
validity
)
{
if
(
validity
)
{
return
erp5_form
.
getContent
()
.
push
(
function
(
data
)
{
data
[
form_gadget
.
props
.
form_id
.
key
]
=
form_gadget
.
props
.
form_id
[
'
default
'
];
return
RSVP
.
all
([
form_gadget
.
notifySubmitting
(),
form_gadget
.
jio_putAttachment
(
form_gadget
.
props
.
id
,
form_gadget
.
props
.
action
.
href
,
data
)
]);
})
.
push
(
form_gadget
.
notifySubmitted
.
bind
(
form_gadget
))
.
push
(
function
()
{
return
form_gadget
.
redirect
({
command
:
'
reload
'
});
})
.
push
(
undefined
,
function
(
error
)
{
if
((
error
.
target
!==
undefined
)
&&
(
error
.
target
.
status
===
400
))
{
return
form_gadget
.
notifySubmitted
()
.
push
(
function
()
{
return
form_gadget
.
notifyChange
();
})
.
push
(
function
()
{
return
form_gadget
.
displayFormulatorValidationError
(
JSON
.
parse
(
error
.
target
.
responseText
));
});
}
throw
error
;
});
}
});
}
// Listen to form submit
return
loopEventListener
(
form_gadget
.
props
.
element
.
querySelector
(
'
form
'
),
'
submit
'
,
false
,
formSubmit
);
});
}(
window
,
rJS
,
RSVP
,
loopEventListener
,
calculatePageTitle
));
\ No newline at end of file
},
false
,
true
);
}(
window
,
rJS
,
RSVP
,
calculatePageTitle
));
\ No newline at end of file
bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_pt_form_view_editable_js.xml
View file @
3e1c3ce2
...
...
@@ -230,7 +230,7 @@
</item>
<item>
<key>
<string>
serial
</string>
</key>
<value>
<string>
95
0.28778.40365.28040
</string>
</value>
<value>
<string>
95
4.5631.5200.57036
</string>
</value>
</item>
<item>
<key>
<string>
state
</string>
</key>
...
...
@@ -248,7 +248,7 @@
</tuple>
<state>
<tuple>
<float>
14
60380770.1
4
</float>
<float>
14
74549439.6
4
</float>
<string>
UTC
</string>
</tuple>
</state>
...
...
bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_pt_form_view_html.html
View file @
3e1c3ce2
...
...
@@ -8,10 +8,8 @@
<!-- renderjs -->
<script
src=
"rsvp.js"
type=
"text/javascript"
></script>
<script
src=
"renderjs.js"
type=
"text/javascript"
></script>
<script
src=
"URI.js"
type=
"text/javascript"
></script>
<!-- custom script -->
<script
src=
"gadget_global.js"
type=
"text/javascript"
></script>
<script
src=
"gadget_erp5_global.js"
type=
"text/javascript"
></script>
<script
src=
"gadget_erp5_pt_form_view.js"
type=
"text/javascript"
></script>
...
...
bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_pt_form_view_html.xml
View file @
3e1c3ce2
...
...
@@ -234,7 +234,7 @@
</item>
<item>
<key>
<string>
serial
</string>
</key>
<value>
<string>
9
46.44927.40202.16725
</string>
</value>
<value>
<string>
9
54.23068.50721.21589
</string>
</value>
</item>
<item>
<key>
<string>
state
</string>
</key>
...
...
@@ -252,7 +252,7 @@
</tuple>
<state>
<tuple>
<float>
14
60379399.92
</float>
<float>
14
75506379.44
</float>
<string>
UTC
</string>
</tuple>
</state>
...
...
bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_pt_form_view_js.js
View file @
3e1c3ce2
...
...
@@ -3,18 +3,7 @@
(
function
(
window
,
rJS
,
RSVP
,
calculatePageTitle
)
{
"
use strict
"
;
// Precompile the templates while loading the first gadget instance
var
gadget_klass
=
rJS
(
window
);
gadget_klass
/////////////////////////////////////////////////////////////////
// ready
/////////////////////////////////////////////////////////////////
// Init local properties
.
ready
(
function
(
g
)
{
g
.
props
=
{};
})
rJS
(
window
)
/////////////////////////////////////////////////////////////////
// Acquired methods
/////////////////////////////////////////////////////////////////
...
...
@@ -25,11 +14,25 @@
// declared methods
/////////////////////////////////////////////////////////////////
.
declareMethod
(
'
render
'
,
function
(
options
)
{
var
state_dict
=
{
id
:
options
.
jio_key
,
view
:
options
.
view
,
editable
:
options
.
editable
,
erp5_document
:
options
.
erp5_document
,
form_definition
:
options
.
form_definition
,
erp5_form
:
options
.
erp5_form
||
{}
};
return
this
.
changeState
(
state_dict
);
})
.
declareMethod
(
'
updateDOM
'
,
function
()
{
var
gadget
=
this
;
// render the erp5 form
return
this
.
getDeclaredGadget
(
"
erp5_form
"
)
.
push
(
function
(
form_gadget
)
{
var
form_options
=
options
.
erp5_form
||
{}
,
rendered_form
=
options
.
erp5_document
.
_embedded
.
_view
,
.
push
(
function
(
erp5_form
)
{
var
form_options
=
gadget
.
state
.
erp5_form
,
rendered_form
=
gadget
.
state
.
erp5_document
.
_embedded
.
_view
,
rendered_field
,
key
;
...
...
@@ -46,32 +49,35 @@
}
}
form_options
.
erp5_document
=
options
.
erp5_document
;
form_options
.
form_definition
=
options
.
form_definition
;
form_options
.
view
=
options
.
view
;
form_options
.
erp5_document
=
gadget
.
state
.
erp5_document
;
form_options
.
form_definition
=
gadget
.
state
.
form_definition
;
form_options
.
view
=
gadget
.
state
.
view
;
return
erp5_form
.
render
(
form_options
);
})
// render the header
.
push
(
function
()
{
return
RSVP
.
all
([
form_gadget
.
render
(
form_options
),
gadget
.
getUrlFor
({
command
:
'
change
'
,
options
:
{
editable
:
true
}}),
gadget
.
getUrlFor
({
command
:
'
change
'
,
options
:
{
page
:
"
action
"
}}),
gadget
.
getUrlFor
({
command
:
'
history_previous
'
}),
gadget
.
getUrlFor
({
command
:
'
selection_previous
'
}),
gadget
.
getUrlFor
({
command
:
'
selection_next
'
}),
gadget
.
getUrlFor
({
command
:
'
change
'
,
options
:
{
page
:
"
tab
"
}}),
calculatePageTitle
(
gadget
,
options
.
erp5_document
)
calculatePageTitle
(
gadget
,
gadget
.
state
.
erp5_document
)
]);
})
.
push
(
function
(
all_result
)
{
return
gadget
.
updateHeader
({
edit_url
:
all_result
[
1
],
actions_url
:
all_result
[
2
],
selection_url
:
all_result
[
3
],
previous_url
:
all_result
[
4
],
next_url
:
all_result
[
5
],
tab_url
:
all_result
[
6
],
edit_url
:
all_result
[
0
],
actions_url
:
all_result
[
1
],
selection_url
:
all_result
[
2
],
previous_url
:
all_result
[
3
],
next_url
:
all_result
[
4
],
tab_url
:
all_result
[
5
],
export_url
:
""
,
page_title
:
all_result
[
7
]
page_title
:
all_result
[
6
]
});
});
});
...
...
bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_pt_form_view_js.xml
View file @
3e1c3ce2
...
...
@@ -230,7 +230,7 @@
</item>
<item>
<key>
<string>
serial
</string>
</key>
<value>
<string>
95
2.13100.46637.65024
</string>
</value>
<value>
<string>
95
4.5630.32927.153
</string>
</value>
</item>
<item>
<key>
<string>
state
</string>
</key>
...
...
@@ -248,7 +248,7 @@
</tuple>
<state>
<tuple>
<float>
14
67219125.65
</float>
<float>
14
74546509.43
</float>
<string>
UTC
</string>
</tuple>
</state>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment