Commit 17ccfaaf authored by Xiaowu Zhang's avatar Xiaowu Zhang Committed by Julien Muchembled

Revert all recent changes to erp5_hal_json_style & erp5_web_renderjs_ui(_test)...

Revert all recent changes to erp5_hal_json_style & erp5_web_renderjs_ui(_test) that were committed by mistake
parents a1485988 7950d24e
......@@ -73,14 +73,13 @@ return context.ERP5Document_getHateoas(\n
default_param_json=default_param_json,\n
form_relative_url=form_relative_url,\n
bulk_list=bulk_list,\n
sort_on=sort_on,\n
restricted=1\n
)\n
</string> </value>
</item>
<item>
<key> <string>_params</string> </key>
<value> <string>REQUEST=None, response=None, view=None, mode=\'root\', query=None, select_list=None, limit=10, form=None, relative_url=None, list_method=None, default_param_json=None, form_relative_url=None, bulk_list="[]", sort_on=None</string> </value>
<value> <string>REQUEST=None, response=None, view=None, mode=\'root\', query=None, select_list=None, limit=10, form=None, relative_url=None, list_method=None, default_param_json=None, form_relative_url=None, bulk_list="[]"</string> </value>
</item>
<item>
<key> <string>id</string> </key>
......
......@@ -75,18 +75,18 @@ url_template_dict = {\n
"traverse_template": "%(root_url)s/%(script_id)s?mode=traverse" + \\\n
"{&relative_url,view}",\n
"search_template": "%(root_url)s/%(script_id)s?mode=search" + \\\n
"{&query,select_list*,limit*,sort_on*}",\n
"{&query,select_list*,limit*}",\n
"custom_search_template": "%(root_url)s/%(script_id)s?mode=search" + \\\n
"&relative_url=%(relative_url)s" \\\n
"&form_relative_url=%(form_relative_url)s" \\\n
"&list_method=%(list_method)s" \\\n
"&default_param_json=%(default_param_json)s" \\\n
"{&query,select_list*,limit*,sort_on*}",\n
"{&query,select_list*,limit*}",\n
"custom_search_template_no_editable": "%(root_url)s/%(script_id)s?mode=search" + \\\n
"&relative_url=%(relative_url)s" \\\n
"&list_method=%(list_method)s" \\\n
"&default_param_json=%(default_param_json)s" \\\n
"{&query,select_list*,limit*,sort_on*}",\n
"{&query,select_list*,limit*}",\n
"new_content_action": "%(root_url)s/%(script_id)s?mode=newContent",\n
"bulk_action": "%(root_url)s/%(script_id)s?mode=bulk",\n
# XXX View is set by default to empty\n
......@@ -98,16 +98,6 @@ url_template_dict = {\n
\n
default_document_uri_template = url_template_dict["jio_get_template"]\n
\n
def getAllSubCategoriesAsMap(root):\n
result = {}\n
sub_categories_list = root.objectValues()\n
if len(sub_categories_list) != 0:\n
for grain in sub_categories_list:\n
result[grain.getUid()] = {"sub_categories": getAllSubCategoriesAsMap(grain),\n
"title": grain.getTitle()}\n
\n
return result\n
\n
def getRealRelativeUrl(document):\n
return \'/\'.join(portal.portal_url.getRelativeContentPath(document))\n
\n
......@@ -387,14 +377,6 @@ def renderField(traversed_document, field, form_relative_url, value=None, meta_t
# line[title] = prop\n
# line["_relative_url"] = document.getRelativeUrl()\n
# line_list.append(line)\n
domain_tree_map = {} \n
domain_tree = field.get_value("domain_root_list")\n
for tree in domain_tree:\n
if hasattr(portal_categories, tree[0]):\n
domain_tree_map[portal_categories[tree[0]].getUid()] = {\n
"sub_categories":getAllSubCategoriesAsMap(portal_categories[tree[0]]),\n
"title": tree[1]\n
}\n
\n
result = {\n
"type": meta_type,\n
......@@ -410,7 +392,6 @@ def renderField(traversed_document, field, form_relative_url, value=None, meta_t
"portal_type": portal_types,\n
"lines": lines,\n
"default_params": default_params,\n
"domain_tree_map": domain_tree_map,\n
"list_method": list_method_name\n
}\n
if (list_method_custom is not None):\n
......@@ -579,7 +560,6 @@ def renderFormDefinition(form, response_dict):\n
\n
mime_type = \'application/hal+json\'\n
portal = context.getPortalObject()\n
portal_categories = portal.portal_categories\n
sql_catalog = portal.portal_catalog.getSQLCatalog()\n
\n
# Calculate the site root to prevent unexpected browsing\n
......@@ -921,18 +901,11 @@ def calculateHateoas(is_portal=None, is_site_root=None, traversed_document=None,
callable_list_method = portal.portal_catalog\n
else:\n
callable_list_method = getattr(traversed_document, list_method)\n
\n
tmp_sort_on = ()\n
if sort_on is not None:\n
for grain in sort_on:\n
if grain != "":\n
tmp_sort_on += (tuple([x for x in grain.split(",")]),)\n
\n
if query:\n
sql_list = callable_list_method(full_text=query, limit=limit, sort_on=tmp_sort_on, **catalog_kw)\n
sql_list = callable_list_method(full_text=query, limit=limit, **catalog_kw)\n
else:\n
sql_list = callable_list_method(limit=limit, sort_on=tmp_sort_on, **catalog_kw)\n
\n
sql_list = callable_list_method(limit=limit, **catalog_kw)\n
\n
result_list = []\n
\n
# if (select_list is None):\n
......@@ -1088,7 +1061,7 @@ else:\n
</item>
<item>
<key> <string>_params</string> </key>
<value> <string>REQUEST=None, response=None, view=None, mode=\'root\', query=None, select_list=None, limit=10, form=None, relative_url=None, restricted=0, list_method=None, default_param_json=None, form_relative_url=None, bulk_list="[]", sort_on=()</string> </value>
<value> <string>REQUEST=None, response=None, view=None, mode=\'root\', query=None, select_list=None, limit=10, form=None, relative_url=None, restricted=0, list_method=None, default_param_json=None, form_relative_url=None, bulk_list="[]"</string> </value>
</item>
<item>
<key> <string>id</string> </key>
......
......@@ -348,7 +348,7 @@ class TestERP5Document_getHateoas_mode_root(ERP5HALJSONStyleSkinsMixin):
self.assertEqual(result_dict['_links']['type']['name'], document.getPortalType())
self.assertEqual(result_dict['_links']['raw_search']['href'],
"%s/web_site_module/hateoas/ERP5Document_getHateoas?mode=search{&query,select_list*,limit*,sort_on*}" % self.portal.absolute_url())
"%s/web_site_module/hateoas/ERP5Document_getHateoas?mode=search{&query,select_list*,limit*}" % self.portal.absolute_url())
self.assertEqual(result_dict['_links']['raw_search']['templated'], True)
self.assertEqual(result_dict['_links']['raw_search']['name'], "Raw Search")
......
......@@ -211,10 +211,9 @@
form_gadget = this,\n
suboption_dict = {},\n
parent_element = document.createElement("div");\n
suboption_dict.jio_key = options.jio_key;\n
suboption_dict.view = options.view;\n
suboption_dict.begin_from = options.begin_from;\n
\n
delete options.erp5_document;\n
delete options.form_definition;\n
\n
// options = options.form_gadget || {};\n
form_gadget.state_parameter_dict = options.form_gadget || {};\n
......@@ -222,16 +221,6 @@
if (form_definition.extended_search) {\n
suboption_dict.extended_search = form_definition.extended_search;\n
}\n
if (form_definition.sort_list) {\n
suboption_dict.sort_list = form_definition.sort_list;\n
}\n
if (form_definition.hide_item) {\n
suboption_dict.hide_item = form_definition.hide_item;\n
}\n
\n
if (form_definition.domain_tree) {\n
suboption_dict.domain_tree = form_definition.domain_tree;\n
}\n
\n
form_gadget.props.gadget_list = [];\n
form_gadget.props.id = erp5_document._id;\n
......@@ -511,7 +500,7 @@
</item>
<item>
<key> <string>actor</string> </key>
<value> <string>zope</string> </value>
<value> <string>xiaowu</string> </value>
</item>
<item>
<key> <string>comment</string> </key>
......@@ -525,7 +514,7 @@
</item>
<item>
<key> <string>serial</string> </key>
<value> <string>945.61367.58694.36949</string> </value>
<value> <string>944.22467.53128.26641</string> </value>
</item>
<item>
<key> <string>state</string> </key>
......@@ -543,8 +532,8 @@
</tuple>
<state>
<tuple>
<float>1443103892.32</float>
<string>UTC</string>
<float>1436753892.36</float>
<string>GMT+2</string>
</tuple>
</state>
</object>
......
......@@ -158,7 +158,6 @@
data-gadget-scope="panel"\n
data-gadget-sandbox="public"></div>\n
\n
\n
<div role="main" class="ui-content gadget-content"></div>\n
</div>\n
\n
......@@ -290,7 +289,7 @@
</item>
<item>
<key> <string>actor</string> </key>
<value> <string>zope</string> </value>
<value> <string>romain</string> </value>
</item>
<item>
<key> <string>comment</string> </key>
......@@ -304,7 +303,7 @@
</item>
<item>
<key> <string>serial</string> </key>
<value> <string>945.58421.9538.16332</string> </value>
<value> <string>945.54056.18010.56797</string> </value>
</item>
<item>
<key> <string>state</string> </key>
......@@ -322,8 +321,8 @@
</tuple>
<state>
<tuple>
<float>1443017731.15</float>
<string>UTC</string>
<float>1442581000.11</float>
<string>GMT</string>
</tuple>
</state>
</object>
......
......@@ -495,6 +495,7 @@
.allowPublicAcquisition(\'triggerPanel\', function () {\n
return route(this, "panel", "toggle");\n
})\n
\n
.allowPublicAcquisition("jio_allDocs", function (param_list) {\n
return callJioGadget(this, "allDocs", param_list);\n
})\n
......@@ -774,7 +775,7 @@
</item>
<item>
<key> <string>actor</string> </key>
<value> <string>zope</string> </value>
<value> <string>romain</string> </value>
</item>
<item>
<key> <string>comment</string> </key>
......
......@@ -120,26 +120,22 @@
\n
<!-- custom script -->\n
<script src="gadget_erp5_field_listbox.js" type="text/javascript"></script>\n
\n
\n
</head>\n
<body>\n
\n
<!-- XXX must set a theme here -->\n
<section class="document_table">\n
<div class="ui-table-header ui-header ui-bar-c ui-corner-all">\n
<div class="ui-controlgroup ui-controlgroup-horizontal ui-btn-left">\n
<div class="ui-controlgroup-controls">\n
<form class="hide_form">\n
<button data-rel="hide" type="submit" class="submit responsive ui-last-child ui-btn ui-icon-eye ui-btn-icon-left">Hide Rows</button>\n
</form>\n
<a data-i18n="hide" class="ui-responsive ui-btn ui-btn-icon-left ui-icon-eye ui-first-child ui-override-theme ui-disabled" href="#">Hide Rows</a>\n
</div>\n
</div>\n
<h1 data-i18n="selected" class="ui-title ui-override-theme">0 items selected</h1>\n
<div class="ui-controlgroup ui-controlgroup-horizontal ui-btn-right">\n
<div class="ui-controlgroup-controls">\n
<form class="sort_form">\n
<button data-rel="Sort" type="submit" class="submit responsive ui-last-child ui-btn ui-icon-sort-amount-desc ui-btn-icon-left">Sort</button>\n
</form>\n
<a data-i18n="sort" class="ui-responsive ui-btn ui-btn-icon-left ui-icon-sort-amount-desc ui-last-child ui-override-theme ui-disabled" href="#">Sort</a>\n
</div>\n
</div>\n
</div>\n
......@@ -273,7 +269,7 @@
</item>
<item>
<key> <string>actor</string> </key>
<value> <string>zope</string> </value>
<value> <string>super_sven</string> </value>
</item>
<item>
<key> <string>comment</string> </key>
......@@ -287,7 +283,7 @@
</item>
<item>
<key> <string>serial</string> </key>
<value> <string>945.49220.61498.30600</string> </value>
<value> <string>939.51034.42464.64273</string> </value>
</item>
<item>
<key> <string>state</string> </key>
......@@ -305,8 +301,8 @@
</tuple>
<state>
<tuple>
<float>1442307840.51</float>
<string>UTC</string>
<float>1419418783.77</float>
<string>GMT</string>
</tuple>
</state>
</object>
......
......@@ -135,14 +135,6 @@
<div data-gadget-url="gadget_erp5_form.html"\n
data-gadget-scope="erp5_form"\n
data-gadget-sandbox="public"></div>\n
\n
<div data-gadget-url="gadget_erp5_filter_editor.html"\n
data-gadget-scope="filterEditor"\n
data-gadget-sandbox="public"></div>\n
\n
<div data-gadget-url="gadget_erp5_sort_editor.html"\n
data-gadget-scope="sortEditor"\n
data-gadget-sandbox="public"></div>\n
\n
</form>\n
\n
......@@ -270,7 +262,7 @@
</item>
<item>
<key> <string>actor</string> </key>
<value> <string>zope</string> </value>
<value> <string>romain</string> </value>
</item>
<item>
<key> <string>comment</string> </key>
......@@ -284,7 +276,7 @@
</item>
<item>
<key> <string>serial</string> </key>
<value> <string>940.17393.53012.39048</string> </value>
<value> <string>945.61017.50891.24046</string> </value>
</item>
<item>
<key> <string>state</string> </key>
......@@ -302,8 +294,8 @@
</tuple>
<state>
<tuple>
<float>1443017742.14</float>
<string>UTC</string>
<float>1442998685.54</float>
<string>GMT</string>
</tuple>
</state>
</object>
......
......@@ -132,38 +132,6 @@
/////////////////////////////////////////////////////////////////\n
// declared methods\n
/////////////////////////////////////////////////////////////////\n
.allowPublicAcquisition("triggerFilterEditor", function () {\n
var gadget = this;\n
return new RSVP.Queue()\n
.push(function () {\n
return gadget.getDeclaredGadget("filterEditor");\n
})\n
.push(function (filterEditor) {\n
return filterEditor.toggle();\n
});\n
})\n
.allowPublicAcquisition("triggerSortEditor", function () {\n
var gadget = this;\n
return new RSVP.Queue()\n
.push(function () {\n
return gadget.getDeclaredGadget("sortEditor");\n
})\n
.push(function (sortEditor) {\n
return sortEditor.toggle();\n
});\n
})\n
.allowPublicAcquisition("showQueryError", function (param) {\n
var gadget = this;\n
return new RSVP.Queue()\n
.push(function () {\n
return gadget.getDeclaredGadget("erp5_searchfield");\n
})\n
.push(function (searchField) {\n
return searchField.showQueryError(param);\n
});\n
})\n
\n
\n
.declareMethod(\'render\', function (options) {\n
var gadget = this,\n
form_options = options.erp5_form || {},\n
......@@ -171,27 +139,7 @@
\n
form_options.erp5_document = options.erp5_document;\n
form_options.form_definition = options.form_definition;\n
search_options.jio_key = options.jio_key;\n
// XXX not generic, fix later\n
if (options.extended_search) {\n
form_options.form_definition.extended_search = options.extended_search;\n
search_options.extended_search = options.extended_search;\n
}\n
if (options.sort_list) {\n
form_options.form_definition.sort_list = options.sort_list;\n
}\n
if (options.hide_item) {\n
form_options.form_definition.hide_item = options.hide_item;\n
search_options.hide_item = options.hide_item;\n
}\n
\n
if (options.domain_tree) {\n
form_options.form_definition.domain_tree = options.domain_tree;\n
search_options.domain_tree = options.domain_tree;\n
}\n
form_options.begin_from = options.begin_from;\n
form_options.view = options.view;\n
form_options.jio_key = options.jio_key;\n
\n
return new RSVP.Queue()\n
.push(function () {\n
......@@ -215,17 +163,13 @@
gadget.getDeclaredGadget("erp5_form"),\n
gadget.getUrlFor({command: \'change\', options: {page: "breadcrumb"}}),\n
new_content_action,\n
gadget.getUrlFor({command: \'change\', options: {page: "action"}}),\n
gadget.getDeclaredGadget("filterEditor"),\n
gadget.getDeclaredGadget("sortEditor")\n
gadget.getUrlFor({command: \'change\', options: {page: "action"}})\n
]);\n
})\n
.push(function (all_gadget) {\n
return RSVP.all([\n
all_gadget[0].render(search_options),\n
all_gadget[1].render(form_options),\n
all_gadget[5].render(form_options),\n
all_gadget[6].render(form_options),\n
gadget.updateHeader({\n
panel_action: true,\n
jump_url: "",\n
......@@ -398,7 +342,7 @@
</item>
<item>
<key> <string>serial</string> </key>
<value> <string>946.46100.61365.28740</string> </value>
<value> <string>946.44927.40202.16725</string> </value>
</item>
<item>
<key> <string>state</string> </key>
......@@ -416,7 +360,7 @@
</tuple>
<state>
<tuple>
<float>1445950207.32</float>
<float>1445939450.54</float>
<string>UTC</string>
</tuple>
</state>
......
......@@ -171,12 +171,7 @@
});\n
})\n
.push(function (result) {\n
var sub_options = {};\n
sub_options.extended_search = options.extended_search;\n
sub_options.sort_list = options.sort_list;\n
sub_options.hide_item = options.hide_item;\n
sub_options.domain_tree = options.domain_tree;\n
sub_options.begin_from = options.begin_from;\n
var sub_options = options.fg || {};\n
sub_options.erp5_document = erp5_document;\n
sub_options.form_definition = erp5_form;\n
sub_options.view = options.view;\n
......@@ -322,7 +317,7 @@
</item>
<item>
<key> <string>actor</string> </key>
<value> <string>zope</string> </value>
<value> <string>romain</string> </value>
</item>
<item>
<key> <string>comment</string> </key>
......@@ -336,7 +331,7 @@
</item>
<item>
<key> <string>serial</string> </key>
<value> <string>945.61210.379.61422</string> </value>
<value> <string>946.30055.63361.39150</string> </value>
</item>
<item>
<key> <string>state</string> </key>
......@@ -354,8 +349,8 @@
</tuple>
<state>
<tuple>
<float>1443103808.81</float>
<string>UTC</string>
<float>1445267203.04</float>
<string>GMT</string>
</tuple>
</state>
</object>
......
......@@ -120,36 +120,24 @@
<!-- custom script -->\n
<script src="gadget_erp5_searchfield.js"></script>\n
\n
<script id="panel-template" type="text/x-handlebars-template">\n
<div class="field_container">\n
<div class="ui-field-contain">\n
<div class="bottom">\n
<div class="ui-input-text ui-body-{{theme}} ui-input-has-icon ui-corner-all ui-shadow-inset ui-input-has-clear">\n
<form class="save_form">\n
<input type="text" data-enhanced="true" value="{{widget_value}}" name="search" {{widget_status_attribute}} >\n
<div class="ui-btn ui-input-clear ui-input-btn ui-corner-all ui-icon-search ui-btn-icon-notext" data-i18n="[node]{{search_i18n}}">\n
{{search_i18n}}<input tabindex="-1" data-role="button" data-enhanced="true" type="submit" data-i18n="[value]{{search_i18n}}" value=" "/>\n
</div>\n
</form>\n
<!-- XXX widget-status is bad! -->\n
<script id="panel-template" type="text/x-handlebars-template">\n
<div class="center">\n
<div class="ui-field-contain">\n
<div class="ui-input-text ui-body-{{widget_theme}} ui-corner-all ui-shadow-inset ui-input-has-clear {{widget_status_class}}">\n
<input type="text" data-enhanced="true" value="{{widget_value}}" name="search" {{widget_status_attribute}} />\n
<div class="ui-btn ui-input-clear ui-input-btn ui-corner-all ui-icon-search ui-btn-icon-notext" data-i18n="[node]header-submit">\n
Submit<input data-enhanced="true" type="submit" data-i18n="[value]header-submit" value="Submit" {{widget_status_attribute}} />\n
</div>\n
<div class="ui-shadow-inset ui-btn ui-btn-inline ui-corner-all ui-btn-{{theme}} ui-btn-icon-notext ui-icon-filter ui-override-theme " >\n
<form class="filter_form">\n
<div class="ui-input-btn">\n
<input data-role="button" data-enhanced="true" type="submit" data-i18n="[value]" value=" ">\n
</div>\n
</form>\n
</div>\n
</div>\n
<a href="#" data-i18n="filter" class="ui-btn ui-btn-{{widget_theme}} ui-btn-icon-notext ui-icon-filter ui-override-theme ui-disabled">Filters</a>\n
</div>\n
</div>\n
</div>\n
</script>\n
\n
\n
\n
\n
\n
</head>\n
<body>\n
<div class="save_form document_form"></div>\n
</body>\n
</html>
......@@ -274,7 +262,7 @@
</item>
<item>
<key> <string>actor</string> </key>
<value> <string>zope</string> </value>
<value> <string>romain</string> </value>
</item>
<item>
<key> <string>comment</string> </key>
......@@ -288,7 +276,7 @@
</item>
<item>
<key> <string>serial</string> </key>
<value> <string>946.47294.45750.61781</string> </value>
<value> <string>945.50880.23560.7150</string> </value>
</item>
<item>
<key> <string>state</string> </key>
......@@ -306,8 +294,8 @@
</tuple>
<state>
<tuple>
<float>1446021106.86</float>
<string>UTC</string>
<float>1442998364.27</float>
<string>GMT</string>
</tuple>
</state>
</object>
......
......@@ -99,9 +99,7 @@
</item>
<item>
<key> <string>text_content</string> </key>
<value> <string encoding="cdata"><![CDATA[
/*global window, rJS, RSVP, loopEventListener, Handlebars, QueryFactory, SimpleQuery, ComplexQuery, Query, document */\n
<value> <string>/*global window, rJS, RSVP, loopEventListener, Handlebars */\n
/*jslint nomen: true, indent: 2, maxerr: 3 */\n
(function (window, rJS, RSVP, loopEventListener, Handlebars) {\n
"use strict";\n
......@@ -137,153 +135,47 @@
// acquired method\n
//////////////////////////////////////////////\n
.declareAcquiredMethod("translateHtml", "translateHtml")\n
.declareAcquiredMethod("redirect", "redirect")\n
.declareAcquiredMethod("triggerFilterEditor", "triggerFilterEditor")\n
\n
/////////////////////////////////////////////////////////////////\n
// declared methods\n
/////////////////////////////////////////////////////////////////\n
.declareMethod(\'render\', function (option_dict) {\n
var append_attribute,\n
var append_class,\n
append_attribute,\n
placeholder = "",\n
value,\n
is_disabled = option_dict.disabled,\n
search_gadget = this;\n
search_gadget.props.jio_key = option_dict.jio_key;\n
\n
if (is_disabled) {\n
append_class = " ui-disabled";\n
append_attribute = \' disabled="disabled\';\n
}\n
value = option_dict.extended_search || "";\n
if (option_dict.domain_tree) {\n
value = (value === "" ? option_dict.domain_tree : value + " AND " + option_dict.domain_tree);\n
}\n
\n
if (option_dict.hide_item) {\n
value = (value === "" ? option_dict.hide_item : value + " AND " + option_dict.hide_item);\n
}\n
return new RSVP.Queue()\n
.push(function () {\n
return search_gadget.translateHtml(panel_template({\n
widget_value: value,\n
widget_value: option_dict.extended_search || placeholder,\n
widget_theme: option_dict.theme || "c",\n
widget_status_attribute: append_attribute || placeholder\n
widget_status_attribute: append_attribute || placeholder,\n
widget_status_class: append_class || placeholder\n
}));\n
})\n
.push(function (my_translated_html) {\n
var container = document.createElement("div");\n
container.setAttribute("class", "container");\n
container.innerHTML = my_translated_html;\n
search_gadget.props.element.appendChild(container);\n
search_gadget.props.element.querySelector("div").innerHTML =\n
my_translated_html;\n
return search_gadget;\n
});\n
})\n
.declareMethod("showQueryError", function (param) {\n
var input = this.props.element.querySelector(\'input[name="search"]\');\n
input.value += param;\n
})\n
\n
.declareMethod(\'getContent\', function () {\n
var input = this.props.element.querySelector(\'input\'),\n
result = {};\n
\n
result[input.getAttribute(\'name\')] = input.value;\n
return result;\n
})\n
\n
.declareService(function () {\n
var gadget = this,\n
i,\n
query_list,\n
domain_tree_list,\n
domain_tree_query,\n
tmp,\n
hide_query,\n
search_query;\n
\n
function filterSubmit() {\n
return gadget.triggerFilterEditor();\n
}\n
\n
function formSubmit() {\n
return new RSVP.Queue()\n
.push(function () {\n
return gadget.getContent();\n
})\n
.push(function (data) {\n
if (data.search) {\n
query_list = [];\n
domain_tree_list = [];\n
search_query = QueryFactory.create(data.search);\n
if (search_query instanceof SimpleQuery) {\n
tmp = [search_query];\n
} else {\n
tmp = search_query.query_list;\n
}\n
for (i = 0; i < tmp.length; i += 1) {\n
if (tmp[i] instanceof SimpleQuery) {\n
if (tmp[i].key !== "catalog.uid" && tmp[i].key.indexOf("category") === -1) {\n
query_list.push(tmp[i]);\n
} else if (tmp[i].key.indexOf("category") !== -1) {\n
domain_tree_list.push(tmp[i]);\n
} else {\n
hide_query = new ComplexQuery({\n
operator: "AND",\n
query_list: [tmp[i]],\n
type: "complex"\n
});\n
}\n
} else {\n
//only have one complex query\n
hide_query = search_query.query_list[i];\n
}\n
}\n
\n
if (domain_tree_list.length) {\n
domain_tree_query = new ComplexQuery({\n
operator: "AND",\n
query_list: domain_tree_list,\n
type: "complex"\n
});\n
}\n
return gadget.redirect({\n
command: \'change\',\n
options: {\n
"extended_search": Query.objectToSearchText(new ComplexQuery({\n
operator: search_query.operator || "AND",\n
query_list: query_list,\n
type: "complex"\n
})),\n
"domain_tree": domain_tree_query ? Query.objectToSearchText(domain_tree_query) : "",\n
"hide_item": hide_query ? Query.objectToSearchText(hide_query) : ""\n
}\n
});\n
}\n
return gadget.redirect({\n
command: \'change\',\n
options: {\n
"extended_search": "",\n
"domain_tree": "",\n
"hide_item": ""\n
}\n
});\n
});\n
}\n
// Listen to form submit\n
loopEventListener(\n
gadget.props.element.querySelector(\'.save_form\'),\n
\'submit\',\n
false,\n
formSubmit\n
);\n
\n
loopEventListener(\n
gadget.props.element.querySelector(\'.filter_form\'),\n
\'submit\',\n
false,\n
filterSubmit\n
);\n
});\n
\n
}(window, rJS, RSVP, loopEventListener, Handlebars));
]]></string> </value>
}(window, rJS, RSVP, loopEventListener, Handlebars));</string> </value>
</item>
<item>
<key> <string>title</string> </key>
......@@ -404,7 +296,7 @@
</item>
<item>
<key> <string>actor</string> </key>
<value> <string>zope</string> </value>
<value> <string>romain</string> </value>
</item>
<item>
<key> <string>comment</string> </key>
......@@ -418,7 +310,7 @@
</item>
<item>
<key> <string>serial</string> </key>
<value> <string>946.47311.65417.26606</string> </value>
<value> <string>945.61050.10650.48093</string> </value>
</item>
<item>
<key> <string>state</string> </key>
......@@ -436,8 +328,8 @@
</tuple>
<state>
<tuple>
<float>1446022123.95</float>
<string>UTC</string>
<float>1445265843.55</float>
<string>GMT</string>
</tuple>
</state>
</object>
......
......@@ -9178,8 +9178,7 @@ Query.searchTextToRegExp = searchTextToRegExp;\n
\n
ERP5Storage.prototype.hasCapacity = function (name) {\n
return ((name === "list") || (name === "query") ||\n
(name === "select") || (name === "limit") ||\n
(name === "sort"));\n
(name === "select") || (name === "limit"));\n
};\n
\n
ERP5Storage.prototype.buildQuery = function (options) {\n
......@@ -9197,8 +9196,7 @@ Query.searchTextToRegExp = searchTextToRegExp;\n
query: options.query,\n
// XXX Force erp5 to return embedded document\n
select_list: options.select_list || ["title", "reference"],\n
limit: options.limit,\n
sort_on: options.sort_on\n
limit: options.limit\n
}),\n
"xhrFields": {\n
withCredentials: true\n
......@@ -10493,7 +10491,7 @@ Query.searchTextToRegExp = searchTextToRegExp;\n
</item>
<item>
<key> <string>actor</string> </key>
<value> <string>zope</string> </value>
<value> <string>cedric.le.ninivin</string> </value>
</item>
<item>
<key> <string>comment</string> </key>
......@@ -10507,7 +10505,7 @@ Query.searchTextToRegExp = searchTextToRegExp;\n
</item>
<item>
<key> <string>serial</string> </key>
<value> <string>946.47484.49057.4949</string> </value>
<value> <string>946.20166.17792.35464</string> </value>
</item>
<item>
<key> <string>state</string> </key>
......@@ -10525,7 +10523,7 @@ Query.searchTextToRegExp = searchTextToRegExp;\n
</tuple>
<state>
<tuple>
<float>1446033135.72</float>
<float>1444411451.33</float>
<string>UTC</string>
</tuple>
</state>
......
......@@ -151,12 +151,6 @@
<td></td>\n
</tr>\n
\n
<tr>\n
<td>pause</td>\n
<td>3000</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>click</td>\n
<td>//a[@data-i18n=\'Tabs\']</td>\n
......
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="ZopePageTemplate" module="Products.PageTemplates.ZopePageTemplate"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_bind_names</string> </key>
<value>
<object>
<klass>
<global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
</klass>
<tuple/>
<state>
<dictionary>
<item>
<key> <string>_asgns</string> </key>
<value>
<dictionary>
<item>
<key> <string>name_subpath</string> </key>
<value> <string>traverse_subpath</string> </value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key> <string>_text</string> </key>
<value> <unicode encoding="cdata"><![CDATA[
<html xmlns:tal="http://xml.zope.org/namespaces/tal"\n
xmlns:metal="http://xml.zope.org/namespaces/metal">\n
<head>\n
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">\n
<title>Test RenderJS UI</title>\n
</head>\n
<body>\n
<table cellpadding="1" cellspacing="1" border="1">\n
<thead>\n
<tr><td rowspan="1" colspan="3">Test RenderJS UI</td></tr>\n
</thead><tbody>\n
<tal:block metal:use-macro="here/Zuite_CommonTemplate/macros/init" />\n
\n
<!-- Clean Up -->\n
<tr>\n
<td>open</td>\n
<td>${base_url}/bar_module/ListBoxZuite_reset</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>assertTextPresent</td>\n
<td>Reset Successfully.</td>\n
<td></td>\n
</tr>\n
<!-- should create in new ui instead of using script -->\n
<tr>\n
<td>open</td>\n
<td>${base_url}/foo_module/FooModule_createObjects</td>\n
<td></td>\n
</tr>\n
<tr>\n
<td>assertTextPresent</td>\n
<td>Created Successfully.</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>open</td>\n
<td>${base_url}/Zuite_waitForActivities</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>assertTextPresent</td>\n
<td>Done.</td>\n
<td></td>\n
</tr>\n
\n
\n
<!-- Initialize -->\n
<tr>\n
<td>open</td>\n
<td>${base_url}/web_site_module/renderjs_runner/</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>waitForElementPresent</td>\n
<td>//h3[@data-i18n=\'Other\']</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>click</td>\n
<td>//h3[@data-i18n=\'Other\']</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>waitForElementPresent</td>\n
<td>//a[@data-i18n=\'Foos\']</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>click</td>\n
<td>link=Foos</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>waitForElementPresent</td>\n
<td>//a[@data-i18n=\'Add\']</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>waitForElementPresent</td>\n
<td>//form[@class=\'filter_form\']</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>click</td>\n
<td>//form[@class=\'filter_form\']/div/input</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>waitForElementPresent</td>\n
<td>//form[@class=\'filterForm\']</td>\n
<td></td>\n
</tr>\n
\n
\n
<tr>\n
<td>click</td>\n
<td>//form[@class=\'plus\']/button</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>click</td>\n
<td>//input[@class=\'and checkboxradio\']</td>\n
<td></td>\n
</tr>\n
\n
\n
<tr>\n
<td>waitForElementPresent</td>\n
<td>//div[@class="filter_item_container"]/div[1]/form/div/div/select</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>select</td>\n
<td>//div[@class="filter_item_container"]/div[1]/form/div/div/select</td>\n
<td>index=1</td>\n
</tr>\n
\n
<tr>\n
<td>type</td>\n
<td>//div[@class="filter_item_container"]/div[1]/form/div[3]//input</td>\n
<td>0</td>\n
</tr>\n
\n
<tr>\n
<td>waitForElementPresent</td>\n
<td>//div[@class="filter_item_container"]/div[2]/form/div/div/select</td>\n
<td></td>\n
</tr>\n
\n
\n
<tr>\n
<td>select</td>\n
<td>//div[@class="filter_item_container"]/div[2]/form/div/div/select</td>\n
<td>index=2</td>\n
</tr>\n
\n
<tr>\n
<td>type</td>\n
<td>//div[@class="filter_item_container"]/div[2]/form/div[3]//input</td>\n
<td>%l%</td>\n
</tr>\n
\n
<tr>\n
<td>pause</td>\n
<td>3000</td>\n
<td></td>\n
</tr>\n
\n
\n
<tr>\n
<td>click</td>\n
<td>//form[@class=\'submit\']/button</td>\n
<td></td>\n
</tr>\n
\n
\n
\n
<tr>\n
<td>waitForElementNotPresent</td>\n
<td>link=Title 8</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>waitForElementPresent</td>\n
<td>link=Title 0</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>verifyElementPresent</td>\n
<td>link=Title 0</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>verifyElementNotPresent</td>\n
<td>link=Title 7</td>\n
<td></td>\n
</tr>\n
\n
\n
</tbody></table>\n
</body>\n
</html>
]]></unicode> </value>
</item>
<item>
<key> <string>content_type</string> </key>
<value> <string>text/html</string> </value>
</item>
<item>
<key> <string>expand</string> </key>
<value> <int>0</int> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>testCustomSearch</string> </value>
</item>
<item>
<key> <string>output_encoding</string> </key>
<value> <string>utf-8</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <unicode></unicode> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="ZopePageTemplate" module="Products.PageTemplates.ZopePageTemplate"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_bind_names</string> </key>
<value>
<object>
<klass>
<global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
</klass>
<tuple/>
<state>
<dictionary>
<item>
<key> <string>_asgns</string> </key>
<value>
<dictionary>
<item>
<key> <string>name_subpath</string> </key>
<value> <string>traverse_subpath</string> </value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key> <string>_text</string> </key>
<value> <unicode encoding="cdata"><![CDATA[
<html xmlns:tal="http://xml.zope.org/namespaces/tal"\n
xmlns:metal="http://xml.zope.org/namespaces/metal">\n
<head>\n
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">\n
<title>Test RenderJS UI</title>\n
</head>\n
<body>\n
<table cellpadding="1" cellspacing="1" border="1">\n
<thead>\n
<tr><td rowspan="1" colspan="3">Test RenderJS UI</td></tr>\n
</thead><tbody>\n
<tal:block metal:use-macro="here/Zuite_CommonTemplate/macros/init" />\n
\n
<!-- Clean Up -->\n
<tr>\n
<td>open</td>\n
<td>${base_url}/bar_module/ListBoxZuite_reset</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>assertTextPresent</td>\n
<td>Reset Successfully.</td>\n
<td></td>\n
</tr>\n
<!-- should create in new ui instead of using script -->\n
<tr>\n
<td>open</td>\n
<td>${base_url}/foo_module/FooModule_createObjects</td>\n
<td></td>\n
</tr>\n
<tr>\n
<td>assertTextPresent</td>\n
<td>Created Successfully.</td>\n
<td></td>\n
</tr>\n
\n
\n
<tr>\n
<td>open</td>\n
<td>${base_url}/Zuite_waitForActivities</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>assertTextPresent</td>\n
<td>Done.</td>\n
<td></td>\n
</tr>\n
\n
\n
<!-- Initialize -->\n
<tr>\n
<td>open</td>\n
<td>${base_url}/web_site_module/renderjs_runner/</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>waitForElementPresent</td>\n
<td>//h3[@data-i18n=\'Other\']</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>click</td>\n
<td>//h3[@data-i18n=\'Other\']</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>waitForElementPresent</td>\n
<td>//a[@data-i18n=\'Foos\']</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>click</td>\n
<td>link=Foos</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>waitForElementPresent</td>\n
<td>//form[@class=\'sort_form\']</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>click</td>\n
<td>//form[@class=\'sort_form\']/button</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>waitForElementPresent</td>\n
<td>//form[@class=\'plus\']</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>pause</td>\n
<td>3000</td>\n
<td></td>\n
</tr>\n
\n
\n
<tr>\n
<td>click</td>\n
<td>//div[@class=\'sort_item_container\']/../form[@class=\'plus\']/button</td>\n
<td></td>\n
</tr>\n
\n
\n
<tr>\n
<td>waitForElementPresent</td>\n
<td>//div[@class=\'sort_item_container\']/div[1]</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>click</td>\n
<td>//div[@class=\'sort_item_container\']/../form[@class=\'plus\']/button</td>\n
<td></td>\n
</tr>\n
\n
\n
<tr>\n
<td>waitForElementPresent</td>\n
<td>//div[@class=\'sort_item_container\']/div[2]</td>\n
<td></td>\n
</tr>\n
\n
\n
<tr>\n
<td>select</td>\n
<td>//div[@class=\'sort_item_container\']/div[1]/form/div[2]/div/select</td>\n
<td>index=0</td>\n
</tr>\n
\n
\n
<tr>\n
<td>select</td>\n
<td>//div[@class=\'sort_item_container\']/div[2]/form/div[1]/div/select</td>\n
<td>index=1</td>\n
</tr>\n
\n
\n
\n
<tr>\n
<td>pause</td>\n
<td>3000</td>\n
<td></td>\n
</tr>\n
\n
\n
<tr>\n
<td>click</td>\n
<td>//div[@class=\'sort_item_container\']/../../div/div[2]/div/form/button</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>waitForElementNotPresent</td>\n
<td>link=Title 9</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>waitForElementPresent</td>\n
<td>link=Title 0</td>\n
<td></td>\n
</tr>\n
\n
\n
<tr>\n
<td>verifyText</td>\n
<td>//tbody/tr[1]/th[2]/a</td>\n
<td>Title 0</td>\n
</tr>\n
\n
<tr>\n
<td>verifyText</td>\n
<td>//tbody/tr[2]/th[2]/a</td>\n
<td>Title 1</td>\n
</tr>\n
\n
<tr>\n
<td>verifyText</td>\n
<td>//tbody/tr[3]/th[2]/a</td>\n
<td>Title 2</td>\n
</tr>\n
\n
</tbody></table>\n
</body>\n
</html>
]]></unicode> </value>
</item>
<item>
<key> <string>content_type</string> </key>
<value> <string>text/html</string> </value>
</item>
<item>
<key> <string>expand</string> </key>
<value> <int>0</int> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>testCustomSort</string> </value>
</item>
<item>
<key> <string>output_encoding</string> </key>
<value> <string>utf-8</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <unicode></unicode> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="ZopePageTemplate" module="Products.PageTemplates.ZopePageTemplate"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_bind_names</string> </key>
<value>
<object>
<klass>
<global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
</klass>
<tuple/>
<state>
<dictionary>
<item>
<key> <string>_asgns</string> </key>
<value>
<dictionary>
<item>
<key> <string>name_subpath</string> </key>
<value> <string>traverse_subpath</string> </value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key> <string>_text</string> </key>
<value> <unicode encoding="cdata"><![CDATA[
<html xmlns:tal="http://xml.zope.org/namespaces/tal"\n
xmlns:metal="http://xml.zope.org/namespaces/metal">\n
<head>\n
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">\n
<title>Test RenderJS UI</title>\n
</head>\n
<body>\n
<table cellpadding="1" cellspacing="1" border="1">\n
<thead>\n
<tr><td rowspan="1" colspan="3">Test RenderJS UI</td></tr>\n
</thead><tbody>\n
<tal:block metal:use-macro="here/Zuite_CommonTemplate/macros/init" />\n
\n
<!-- Clean Up -->\n
<tr>\n
<td>open</td>\n
<td>${base_url}/bar_module/ListBoxZuite_reset</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>assertTextPresent</td>\n
<td>Reset Successfully.</td>\n
<td></td>\n
</tr>\n
<!-- should create in new ui instead of using script -->\n
<tr>\n
<td>open</td>\n
<td>${base_url}/foo_module/FooModule_createObjects</td>\n
<td></td>\n
</tr>\n
<tr>\n
<td>assertTextPresent</td>\n
<td>Created Successfully.</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>open</td>\n
<td>${base_url}/Zuite_waitForActivities</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>assertTextPresent</td>\n
<td>Done.</td>\n
<td></td>\n
</tr>\n
\n
<!-- setting for doamin tree -->\n
<tr>\n
<td>open</td>\n
<td>${base_url}/foo_module/FooModule_viewFooList/listbox/ListBox_setPropertyList?field_domain_tree=checked;field_domain_root_list=foo_category%7CFoo%20Category</td>\n
<td></td>\n
</tr>\n
<tr>\n
<td>assertTextPresent</td>\n
<td>Set Successfully.</td>\n
<td></td>\n
</tr>\n
\n
\n
<!-- Initialize -->\n
<tr>\n
<td>open</td>\n
<td>${base_url}/web_site_module/renderjs_runner/</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>waitForElementPresent</td>\n
<td>//h3[@data-i18n=\'Other\']</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>click</td>\n
<td>//h3[@data-i18n=\'Other\']</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>waitForElementPresent</td>\n
<td>//a[@data-i18n=\'Foos\']</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>click</td>\n
<td>link=Foos</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>waitForElementPresent</td>\n
<td>//form[@class=\'sort_form\']</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>click</td>\n
<td>//form[@class=\'sort_form\']/button</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>waitForElementPresent</td>\n
<td>//form[@class=\'plus\']</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>pause</td>\n
<td>3000</td>\n
<td></td>\n
</tr>\n
\n
\n
<tr>\n
<td>click</td>\n
<td>//div[@class=\'sort_item_container\']/../form[@class=\'plus\']/button</td>\n
<td></td>\n
</tr>\n
\n
\n
<tr>\n
<td>waitForElementPresent</td>\n
<td>//div[@class=\'sort_item_container\']/div[1]</td>\n
<td></td>\n
</tr>\n
\n
\n
\n
<tr>\n
<td>select</td>\n
<td>//div[@class=\'sort_item_container\']/div[1]/form/div[2]/div/select</td>\n
<td>index=0</td>\n
</tr>\n
\n
\n
\n
\n
<tr>\n
<td>click</td>\n
<td>//div[@class=\'sort_item_container\']/../../div/div[2]/div/form/button</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>waitForElementNotPresent</td>\n
<td>link=Title 9</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>waitForElementPresent</td>\n
<td>link=Title 0</td>\n
<td></td>\n
</tr>\n
\n
\n
<tr>\n
<td>verifyText</td>\n
<td>//tbody/tr[1]/th[2]/a</td>\n
<td>Title 0</td>\n
</tr>\n
\n
<tr>\n
<td>verifyText</td>\n
<td>//tbody/tr[2]/th[2]/a</td>\n
<td>Title 1</td>\n
</tr>\n
\n
<tr>\n
<td>verifyText</td>\n
<td>//tbody/tr[3]/th[2]/a</td>\n
<td>Title 2</td>\n
</tr>\n
\n
\n
\n
<tr>\n
<td>click</td>\n
<td>//form[@class=\'filter_form\']/div/input</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>waitForElementPresent</td>\n
<td>//div[@class=\'domain_tree_container\']</td>\n
<td></td>\n
</tr>\n
\n
\n
<tr>\n
<td>select</td>\n
<td>//div[@class=\'domain_tree_container\']/div[1]/div/div/select</td>\n
<td>index=1</td>\n
</tr>\n
\n
\n
<tr>\n
<td>waitForElementPresent</td>\n
<td>//div[@class=\'domain_tree_container\']/div[2]</td>\n
<td></td>\n
</tr>\n
\n
\n
<tr>\n
<td>select</td>\n
<td>//div[@class=\'domain_tree_container\']/div[2]/div/div/select</td>\n
<td>index=2</td>\n
</tr>\n
\n
\n
\n
<tr>\n
<td>click</td>\n
<td>//form[@class=\'submit\']/button</td>\n
<td></td>\n
</tr>\n
\n
\n
<tr>\n
<td>waitForElementNotPresent</td>\n
<td>link=Title 0</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>waitForElementPresent</td>\n
<td>link=Title 0</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>verifyElementPresent</td>\n
<td>link=Title 0</td>\n
<td></td>\n
</tr>\n
\n
\n
<tr>\n
<td>verifyElementPresent</td>\n
<td>link=Title 2</td>\n
<td></td>\n
</tr>\n
\n
\n
<tr>\n
<td>verifyElementPresent</td>\n
<td>link=Title 3</td>\n
<td></td>\n
</tr>\n
\n
\n
<tr>\n
<td>verifyElementNotPresent</td>\n
<td>link=Title 1</td>\n
<td></td>\n
</tr>\n
\n
\n
<tr>\n
<td>click</td>\n
<td>//form[@class=\'filter_form\']/div/input</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>waitForElementPresent</td>\n
<td>//div[@class=\'domain_tree_container\']</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>select</td>\n
<td>//div[@class=\'domain_tree_container\']/div[3]/div/div/select</td>\n
<td>index=1</td>\n
</tr>\n
\n
\n
\n
\n
<tr>\n
<td>click</td>\n
<td>//form[@class=\'submit\']/button</td>\n
<td></td>\n
</tr>\n
\n
\n
<tr>\n
<td>waitForElementNotPresent</td>\n
<td>link=Title 0</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>waitForElementPresent</td>\n
<td>link=Title 3</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>verifyElementPresent</td>\n
<td>link=Title 3</td>\n
<td></td>\n
</tr>\n
\n
\n
<tr>\n
<td>verifyElementPresent</td>\n
<td>link=Title 7</td>\n
<td></td>\n
</tr>\n
\n
\n
<tr>\n
<td>verifyElementNotPresent</td>\n
<td>link=Title 0</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>verifyElementNotPresent</td>\n
<td>link=Title 2</td>\n
<td></td>\n
</tr>\n
\n
\n
\n
</tbody></table>\n
</body>\n
</html>
]]></unicode> </value>
</item>
<item>
<key> <string>content_type</string> </key>
<value> <string>text/html</string> </value>
</item>
<item>
<key> <string>expand</string> </key>
<value> <int>0</int> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>testDomainTree</string> </value>
</item>
<item>
<key> <string>output_encoding</string> </key>
<value> <string>utf-8</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <unicode></unicode> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
......@@ -199,12 +199,6 @@
<td></td>\n
</tr>\n
\n
<tr>\n
<td>pause</td>\n
<td>3000</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>click</td>\n
<td>//a[@data-i18n="Tabs"]</td>\n
......
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="ZopePageTemplate" module="Products.PageTemplates.ZopePageTemplate"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_bind_names</string> </key>
<value>
<object>
<klass>
<global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
</klass>
<tuple/>
<state>
<dictionary>
<item>
<key> <string>_asgns</string> </key>
<value>
<dictionary>
<item>
<key> <string>name_subpath</string> </key>
<value> <string>traverse_subpath</string> </value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key> <string>_text</string> </key>
<value> <unicode encoding="cdata"><![CDATA[
<html xmlns:tal="http://xml.zope.org/namespaces/tal"\n
xmlns:metal="http://xml.zope.org/namespaces/metal">\n
<head>\n
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">\n
<title>Test RenderJS UI</title>\n
</head>\n
<body>\n
<table cellpadding="1" cellspacing="1" border="1">\n
<thead>\n
<tr><td rowspan="1" colspan="3">Test RenderJS UI</td></tr>\n
</thead><tbody>\n
<tal:block metal:use-macro="here/Zuite_CommonTemplate/macros/init" />\n
\n
<!-- Clean Up -->\n
<tr>\n
<td>open</td>\n
<td>${base_url}/bar_module/ListBoxZuite_reset</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>assertTextPresent</td>\n
<td>Reset Successfully.</td>\n
<td></td>\n
</tr>\n
<!-- should create in new ui instead of using script -->\n
<tr>\n
<td>open</td>\n
<td>${base_url}/foo_module/FooModule_createObjects</td>\n
<td></td>\n
</tr>\n
<tr>\n
<td>assertTextPresent</td>\n
<td>Created Successfully.</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>open</td>\n
<td>${base_url}/Zuite_waitForActivities</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>assertTextPresent</td>\n
<td>Done.</td>\n
<td></td>\n
</tr>\n
\n
\n
<!-- Initialize -->\n
<tr>\n
<td>open</td>\n
<td>${base_url}/web_site_module/renderjs_runner/</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>waitForElementPresent</td>\n
<td>//h3[@data-i18n=\'Other\']</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>click</td>\n
<td>//h3[@data-i18n=\'Other\']</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>waitForElementPresent</td>\n
<td>//a[@data-i18n=\'Foos\']</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>click</td>\n
<td>link=Foos</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>waitForElementPresent</td>\n
<td>link=Title 9</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>waitForElementPresent</td>\n
<td>//form[@class=\'hide_form\']</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>pause</td>\n
<td>3000</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>click</td>\n
<td>//form[@class=\'hide_form\']/button</td>\n
<td></td>\n
</tr>\n
\n
\n
<tr>\n
<td>waitForElementPresent</td>\n
<td>//input[@class=\'hide_form_element\']</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>verifyValue</td>\n
<td>//tbody/tr[1]/input[@type=\'checkbox\']</td>\n
<td>on</td>\n
</tr>\n
\n
\n
<tr>\n
<td>verifyValue</td>\n
<td>//tbody/tr[2]/input[@type=\'checkbox\']</td>\n
<td>on</td>\n
</tr>\n
\n
\n
<tr>\n
<td>verifyValue</td>\n
<td>//tbody/tr[3]/input[@type=\'checkbox\']</td>\n
<td>on</td>\n
</tr>\n
\n
\n
\n
<tr>\n
<td>click</td>\n
<td>//tbody/tr[1]/input[@type=\'checkbox\']</td>\n
<td></td>\n
</tr>\n
\n
\n
<tr>\n
<td>click</td>\n
<td>//form[@class=\'hide_form\']/button</td>\n
<td></td>\n
</tr>\n
\n
<!-- reload page -->\n
<tr>\n
<td>waitForElementNotPresent</td>\n
<td>link=Title 7</td>\n
<td></td>\n
</tr>\n
\n
\n
<tr>\n
<td>waitForElementPresent</td>\n
<td>link=Title 8</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>verifyElementPresent</td>\n
<td>link=Title 8</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>verifyElementPresent</td>\n
<td>link=Title 7</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>verifyElementNotPresent</td>\n
<td>link=Title 9</td>\n
<td></td>\n
</tr>\n
\n
\n
<tr>\n
<td>waitForElementPresent</td>\n
<td>//form[@class=\'sort_form\']</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>click</td>\n
<td>//form[@class=\'sort_form\']/button</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>waitForElementPresent</td>\n
<td>//form[@class=\'plus\']</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>pause</td>\n
<td>3000</td>\n
<td></td>\n
</tr>\n
\n
\n
<tr>\n
<td>click</td>\n
<td>//div[@class=\'sort_item_container\']/../form[@class=\'plus\']/button</td>\n
<td></td>\n
</tr>\n
\n
\n
<tr>\n
<td>waitForElementPresent</td>\n
<td>//div[@class=\'sort_item_container\']/div[1]</td>\n
<td></td>\n
</tr>\n
\n
\n
\n
\n
<tr>\n
<td>click</td>\n
<td>//div[@class=\'sort_item_container\']/../../div/div[2]/div/form/button</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>waitForElementNotPresent</td>\n
<td>link=Title 8</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>waitForElementPresent</td>\n
<td>link=Title 8</td>\n
<td></td>\n
</tr>\n
\n
\n
<tr>\n
<td>verifyText</td>\n
<td>//tbody/tr[1]/th[2]/a</td>\n
<td>Title 7</td>\n
</tr>\n
\n
<tr>\n
<td>verifyText</td>\n
<td>//tbody/tr[2]/th[2]/a</td>\n
<td>Title 8</td>\n
</tr>\n
\n
<tr>\n
<td>waitForElementPresent</td>\n
<td>//form[@class=\'filter_form\']</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>click</td>\n
<td>//form[@class=\'filter_form\']/div/input</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>waitForElementPresent</td>\n
<td>//form[@class=\'filterForm\']</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>click</td>\n
<td>//input[@class=\'and checkboxradio\']</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>waitForElementPresent</td>\n
<td>//div[@class="filter_item_container"]/div[1]/form/div/div/select</td>\n
<td>index=1</td>\n
</tr>\n
\n
<tr>\n
<td>select</td>\n
<td>//div[@class="filter_item_container"]/div[1]/form/div/div/select</td>\n
<td>index=1</td>\n
</tr>\n
\n
<tr>\n
<td>type</td>\n
<td>//div[@class="filter_item_container"]/div[1]/form/div[3]//input</td>\n
<td>7</td>\n
</tr>\n
\n
\n
<tr>\n
<td>click</td>\n
<td>//form[@class=\'submit\']/button</td>\n
<td></td>\n
</tr>\n
\n
\n
\n
<tr>\n
<td>waitForElementNotPresent</td>\n
<td>link=Title 8</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>waitForElementPresent</td>\n
<td>link=Title 7</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>verifyElementPresent</td>\n
<td>link=Title 7</td>\n
<td></td>\n
</tr>\n
\n
<tr>\n
<td>verifyElementNotPresent</td>\n
<td>link=Title 8</td>\n
<td></td>\n
</tr>\n
\n
</tbody></table>\n
</body>\n
</html>
]]></unicode> </value>
</item>
<item>
<key> <string>content_type</string> </key>
<value> <string>text/html</string> </value>
</item>
<item>
<key> <string>expand</string> </key>
<value> <int>0</int> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>testFilter</string> </value>
</item>
<item>
<key> <string>output_encoding</string> </key>
<value> <string>utf-8</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <unicode></unicode> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment