Commit d0fcdcda authored by Kazuhiko Shiozaki's avatar Kazuhiko Shiozaki

* Make Page Templates themselves valid XML (except DOCTYPE definition).


git-svn-id: https://svn.erp5.org/repos/public/erp5/trunk@17734 20353a03-c40f-0410-a6d1-a30d3c3de9de
parent 0a1f2563
......@@ -3,11 +3,8 @@
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<tuple>
<tuple>
<string>Products.PageTemplates.ZopePageTemplate</string>
<string>ZopePageTemplate</string>
</tuple>
<none/>
<global name="ZopePageTemplate" module="Products.PageTemplates.ZopePageTemplate"/>
<tuple/>
</tuple>
</pickle>
<pickle>
......@@ -54,84 +51,57 @@
<key> <string>_text</string> </key>
<value> <string encoding="cdata"><![CDATA[
<tal:block tal:replace="nothing"\n
xmlns:tal="http://xml.zope.org/namespaces/tal"\n
<tal:block xmlns:tal="http://xml.zope.org/namespaces/tal"\n
xmlns:metal="http://xml.zope.org/namespaces/metal"\n
xmlns:i18n="http://xml.zope.org/namespaces/i18n">\n
<!--\n
Copyright (c) 2007 Nexedi SA and Contributors. All Rights Reserved.\n
Vincent Pelletier <vincent@nexedi.com>\n
Christophe Dumez <christophe@nexedi.com>\n
\n
This program is Free Software; you can redistribute it and/or\n
modify it under the terms of the GNU General Public License\n
as published by the Free Software Foundation; either version 2\n
of the License, or (at your option) any later version.\n
\n
This program is distributed in the hope that it will be useful,\n
but WITHOUT ANY WARRANTY; without even the implied warranty of\n
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n
GNU General Public License for more details.\n
\n
You should have received a copy of the GNU General Public License\n
along with this program; if not, write to the Free Software\n
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n
-->\n
</tal:block>\n
\n
\n
<tal:block metal:define-macro="edit_link">\n
<a disabled="disabled" tal:condition="python: hasattr(object, \'meta_type\')"\n
tal:attributes="href python: \'%s/manage_main\' % (\'/\'.join(object.getPhysicalPath()[len(object.getPortalObject().getPhysicalPath()):])) # XXX: quick hack to get path;\n
title info;"><img tal:attributes="src python: \'%s/images/%s\' % (portal_path, image);\n
alt info;"/></a>\n
</tal:block>\n
\n
\n
<tal:block metal:define-macro="translate_link">\n
<a disabled="disabled" tal:define="image image | python: \'translate.png\'"\n
tal:attributes="href python: \'%s/manage_messages?regex=^%s%%24&amp;lang=%s\' % (\'/\'.join(here.Localizer.erp5_ui.getPhysicalPath()[len(here.Localizer.erp5_ui.getPortalObject().getPhysicalPath()):]), message.replace(\'(\', \'\\(\').replace(\')\', \'\\)\'), selected_language);\n
title info;"><img tal:attributes="src python: \'%s/images/%s\' % (portal_path, image);\n
alt info;"/></a>\n
</tal:block>\n
\n
\n
<tal:block metal:define-macro="form">\n
<tal:block tal:define="image python: \'editform.png\';\n
info python: \'Edit this form\';\n
object nocall: form;">\n
<tal:block metal:use-macro="developper_shortcut_render/macros/edit_link"/>\n
<tal:block metal:define-macro="edit_link">\n
<a disabled="disabled" tal:condition="python: hasattr(object, \'meta_type\')"\n
tal:attributes="href python: \'%s/manage_main\' % (\'/\'.join(object.getPhysicalPath()[len(object.getPortalObject().getPhysicalPath()):])) # XXX: quick hack to get path;\n
title info;"><img tal:attributes="src python: \'%s/images/%s\' % (portal_path, image);\n
alt info;" /></a>\n
</tal:block>\n
<tal:block tal:define="image python: \'editformaction.png\';\n
info python: \'Edit this form\\\'s action\';\n
object python: getattr(here, form.action, None);">\n
<tal:block metal:use-macro="developper_shortcut_render/macros/edit_link"/>\n
<tal:block metal:define-macro="translate_link">\n
<a disabled="disabled" tal:define="image image | python: \'translate.png\'"\n
tal:attributes="href python: \'%s/manage_messages?regex=^%s%%24&amp;lang=%s\' % (\'/\'.join(here.Localizer.erp5_ui.getPhysicalPath()[len(here.Localizer.erp5_ui.getPortalObject().getPhysicalPath()):]), message.replace(\'(\', \'\\(\').replace(\')\', \'\\)\'), selected_language);\n
title info;"><img tal:attributes="src python: \'%s/images/%s\' % (portal_path, image);\n
alt info;" /></a>\n
</tal:block>\n
</tal:block>\n
\n
\n
<tal:block metal:define-macro="field_developper">\n
<tal:block tal:define="image python: \'editfield.png\';\n
info python: \'Edit this field\';\n
object nocall: field;">\n
<tal:block metal:use-macro="developper_shortcut_render/macros/edit_link"/>\n
<tal:block metal:define-macro="form">\n
<tal:block tal:define="image python: \'editform.png\';\n
info python: \'Edit this form\';\n
object nocall: form;">\n
<tal:block metal:use-macro="developper_shortcut_render/macros/edit_link" />\n
</tal:block>\n
<tal:block tal:define="image python: \'editformaction.png\';\n
info python: \'Edit this form\\\'s action\';\n
object python: getattr(here, form.action, None);">\n
<tal:block metal:use-macro="developper_shortcut_render/macros/edit_link" />\n
</tal:block>\n
</tal:block>\n
</tal:block>\n
<tal:block metal:define-macro="field_translator">\n
<tal:block tal:define="info python: \'Translate this field title\';\n
message python: field[\'title\'];\n
image python: \'translate.png\'">\n
<tal:block metal:use-macro="developper_shortcut_render/macros/translate_link"/>\n
<tal:block metal:define-macro="field_developper">\n
<tal:block tal:define="image python: \'editfield.png\';\n
info python: \'Edit this field\';\n
object nocall: field;">\n
<tal:block metal:use-macro="developper_shortcut_render/macros/edit_link" />\n
</tal:block>\n
</tal:block>\n
<tal:block tal:condition="field_description | nothing">\n
<tal:block tal:define="message field_description;\n
info python: \'Translate this field description\';\n
image python: \'translate_tooltip.png\'"\n
tal:condition="python: message not in (None, \'\')">\n
<tal:block metal:use-macro="developper_shortcut_render/macros/translate_link"/>\n
<tal:block metal:define-macro="field_translator">\n
<tal:block tal:define="info python: \'Translate this field title\';\n
message python: field[\'title\'];\n
image python: \'translate.png\'">\n
<tal:block metal:use-macro="developper_shortcut_render/macros/translate_link" />\n
</tal:block>\n
<tal:block tal:condition="field_description | nothing">\n
<tal:block tal:define="message field_description;\n
info python: \'Translate this field description\';\n
image python: \'translate_tooltip.png\'"\n
tal:condition="python: message not in (None, \'\')">\n
<tal:block metal:use-macro="developper_shortcut_render/macros/translate_link" />\n
</tal:block>\n
</tal:block>\n
</tal:block>\n
</tal:block>
</tal:block>\n
]]></string> </value>
</item>
......
......@@ -3,11 +3,8 @@
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<tuple>
<tuple>
<string>Products.PageTemplates.ZopePageTemplate</string>
<string>ZopePageTemplate</string>
</tuple>
<none/>
<global name="ZopePageTemplate" module="Products.PageTemplates.ZopePageTemplate"/>
<tuple/>
</tuple>
</pickle>
<pickle>
......@@ -54,58 +51,38 @@
<key> <string>_text</string> </key>
<value> <string encoding="cdata"><![CDATA[
<tal:block tal:replace="nothing"\n
xmlns:tal="http://xml.zope.org/namespaces/tal"\n
<tal:block xmlns:tal="http://xml.zope.org/namespaces/tal"\n
xmlns:metal="http://xml.zope.org/namespaces/metal"\n
xmlns:i18n="http://xml.zope.org/namespaces/i18n">\n
<!--\n
Copyright (c) 2006 Nexedi SARL and Contributors. All Rights Reserved.\n
Vincent Pelletier <vincent@nexedi.com>\n
Christophe Dumez <christophe@nexedi.com>\n
<tal:block metal:define-macro="master">\n
<tal:block tal:define="form_action string:Base_callDialogMethod;\n
dialog_id form/id | template/id;\n
form_id request/form_id | string:view;\n
dialog_method form/action | dialog_id;\n
update_action form/update_action;\n
global dialog_category request/dialog_category | nothing;\n
\n
This program is Free Software; you can redistribute it and/or\n
modify it under the terms of the GNU General Public License\n
as published by the Free Software Foundation; either version 2\n
of the License, or (at your option) any later version.\n
\n
This program is distributed in the hope that it will be useful,\n
but WITHOUT ANY WARRANTY; without even the implied warranty of\n
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n
GNU General Public License for more details.\n
\n
You should have received a copy of the GNU General Public License\n
along with this program; if not, write to the Free Software\n
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n
-->\n
</tal:block>\n
<tal:block metal:define-macro="master">\n
<tal:block tal:define="form_action string:Base_callDialogMethod;\n
dialog_id form/id | template/id;\n
form_id request/form_id | string:view;\n
dialog_method form/action | dialog_id;\n
update_action form/update_action;\n
global dialog_category request/dialog_category | nothing;\n
\n
local_parameter_list local_parameter_list | python: {};\n
dummy python: local_parameter_list.update({\'dialog_id\': dialog_id, \'dialog_method\': dialog_method, \'update_method\': update_action, \'dialog_category\': dialog_category, \'cancel_url\': request.get(\'cancel_url\'), \'form_id\': form_id});\n
title python: here.Base_translateString(here.Base_getFormViewDialogActionButtonTitle(form))">\n
<tal:block metal:use-macro="here/main_template/macros/master">\n
<tal:block metal:fill-slot="main">\n
<div class="list_dialog">\n
<tal:block metal:define-slot="main" />\n
<tal:block metal:define-slot="bottom" />\n
</div>\n
<input tal:condition="cancel_url|request/cancel_url|nothing"\n
i18n:attributes="value" i18n:domain="ui" value="Cancel Action"\n
id="dialog_cancel_button" name="Base_cancel:method" type="submit" />\n
<input i18n:attributes="value" i18n:domain="ui" value="Update"\n
tal:condition="python: form.update_action!=\'\'"\n
id="dialog_update_button"\n
name="Base_showUpdateDialog:method" type="submit" />\n
<input tal:attributes="value python: here.Base_getFormViewDialogActionButtonTitle(form);\n
name string:${form_action}:method"\n
i18n:attributes="value" i18n:domain="ui" accesskey="V"\n
id="dialog_submit_button" type="submit" />\n
local_parameter_list local_parameter_list | python: {};\n
dummy python: local_parameter_list.update({\'dialog_id\': dialog_id, \'dialog_method\': dialog_method, \'update_method\': update_action, \'dialog_category\': dialog_category, \'cancel_url\': request.get(\'cancel_url\'), \'form_id\': form_id});\n
title python: here.Base_translateString(here.Base_getFormViewDialogActionButtonTitle(form))">\n
<tal:block metal:use-macro="here/main_template/macros/master">\n
<tal:block metal:fill-slot="main">\n
<div class="list_dialog">\n
<tal:block metal:define-slot="main" />\n
<tal:block metal:define-slot="bottom" />\n
</div>\n
<input tal:condition="cancel_url|request/cancel_url|nothing"\n
i18n:attributes="value" i18n:domain="ui" value="Cancel Action"\n
id="dialog_cancel_button" name="Base_cancel:method" type="submit" />\n
<input i18n:attributes="value" i18n:domain="ui" value="Update"\n
tal:condition="python: form.update_action!=\'\'"\n
id="dialog_update_button"\n
name="Base_showUpdateDialog:method" type="submit" />\n
<input tal:attributes="value python: here.Base_getFormViewDialogActionButtonTitle(form);\n
name string:${form_action}:method"\n
i18n:attributes="value" i18n:domain="ui" accesskey="V"\n
id="dialog_submit_button" type="submit" />\n
</tal:block>\n
</tal:block>\n
</tal:block>\n
</tal:block>\n
......
......@@ -51,64 +51,45 @@
<key> <string>_text</string> </key>
<value> <string encoding="cdata"><![CDATA[
<tal:block tal:replace="nothing"\n
xmlns:tal="http://xml.zope.org/namespaces/tal"\n
<tal:block xmlns:tal="http://xml.zope.org/namespaces/tal"\n
xmlns:metal="http://xml.zope.org/namespaces/metal"\n
xmlns:i18n="http://xml.zope.org/namespaces/i18n">\n
<!--\n
Copyright (c) 2006 Nexedi SARL and Contributors. All Rights Reserved.\n
Vincent Pelletier <vincent@nexedi.com>\n
Christophe Dumez <christophe@nexedi.com>\n
\n
This program is Free Software; you can redistribute it and/or\n
modify it under the terms of the GNU General Public License\n
as published by the Free Software Foundation; either version 2\n
of the License, or (at your option) any later version.\n
\n
This program is distributed in the hope that it will be useful,\n
but WITHOUT ANY WARRANTY; without even the implied warranty of\n
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n
GNU General Public License for more details.\n
\n
You should have received a copy of the GNU General Public License\n
along with this program; if not, write to the Free Software\n
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n
--></tal:block>\n
\n
<tal:block metal:define-macro="field_render">\n
<tal:block tal:condition="python: field.meta_type != \'HiddenStringField\'"\n
tal:define="field_id field/id;\n
value python: request.get(field_id, None);\n
field_errors python: request.get(\'field_errors\', {});\n
field_has_error python: field_errors.has_key(field_id);\n
global form_id form_id | form/id | nothing;\n
field_description field/Field_getDescription;\n
is_web_mode is_web_mode | nothing">\n
<div tal:define="html_render python: field.render_htmlgrid(value, request)"\n
tal:attributes="title field_description;\n
class python: \' \'.join([x for x in [\'field\', field.is_required() and \'required\' or None, field_has_error and \'error\' or None, field.get_value(\'css_class\') or None] if x is not None])"\n
i18n:attributes="title" i18n:domain="ui">\n
<tal:block tal:repeat="html_tuple html_render">\n
<label>\n
<tal:block tal:content="structure python: html_tuple[0]"\n
i18n:translate="" i18n:domain="ui"/>\n
<tal:block tal:condition="preferred_html_style_developper_mode">\n
<tal:block metal:use-macro="developper_shortcut_render/macros/field_developper"/>\n
</tal:block>\n
<tal:block tal:condition="preferred_html_style_translator_mode">\n
<tal:block metal:use-macro="developper_shortcut_render/macros/field_translator"/>\n
</tal:block>\n
</label>\n
<div class="input" tal:content="structure python: html_tuple[1]"/>\n
<span tal:condition="python: field_has_error"\n
class="error"\n
tal:content="python: field_errors[field_id].error_text"\n
i18n:translate="" i18n:domain="ui"/>\n
<p class="clear" tal:condition="not:is_web_mode"></p>\n
</tal:block>\n
</div>\n
<tal:block metal:define-macro="field_render">\n
<tal:block tal:condition="python: field.meta_type != \'HiddenStringField\'"\n
tal:define="field_id field/id;\n
value python: request.get(field_id, None);\n
field_errors python: request.get(\'field_errors\', {});\n
field_has_error python: field_errors.has_key(field_id);\n
global form_id form_id | form/id | nothing;\n
field_description field/Field_getDescription;\n
is_web_mode is_web_mode | nothing">\n
<div tal:define="html_render python: field.render_htmlgrid(value, request)"\n
tal:attributes="title field_description;\n
class python: \' \'.join([x for x in [\'field\', field.is_required() and \'required\' or None, field_has_error and \'error\' or None, field.get_value(\'css_class\') or None] if x is not None])"\n
i18n:attributes="title" i18n:domain="ui">\n
<tal:block tal:repeat="html_tuple html_render">\n
<label>\n
<tal:block tal:content="structure python: html_tuple[0]"\n
i18n:translate="" i18n:domain="ui" />\n
<tal:block tal:condition="preferred_html_style_developper_mode">\n
<tal:block metal:use-macro="developper_shortcut_render/macros/field_developper" />\n
</tal:block>\n
<tal:block tal:condition="preferred_html_style_translator_mode">\n
<tal:block metal:use-macro="developper_shortcut_render/macros/field_translator" />\n
</tal:block>\n
</label>\n
<div class="input" tal:content="structure python: html_tuple[1]" />\n
<span tal:condition="python: field_has_error"\n
class="error"\n
tal:content="python: field_errors[field_id].error_text"\n
i18n:translate="" i18n:domain="ui" />\n
<p class="clear" tal:condition="not:is_web_mode"></p>\n
</tal:block>\n
</div>\n
</tal:block>\n
</tal:block>\n
</tal:block>
</tal:block>\n
]]></string> </value>
</item>
......
......@@ -3,11 +3,8 @@
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<tuple>
<tuple>
<string>Products.PageTemplates.ZopePageTemplate</string>
<string>ZopePageTemplate</string>
</tuple>
<none/>
<global name="ZopePageTemplate" module="Products.PageTemplates.ZopePageTemplate"/>
<tuple/>
</tuple>
</pickle>
<pickle>
......@@ -48,35 +45,16 @@
<key> <string>_text</string> </key>
<value> <string encoding="cdata"><![CDATA[
<tal:block tal:replace="nothing"\n
xmlns:tal="http://xml.zope.org/namespaces/tal"\n
<tal:block xmlns:tal="http://xml.zope.org/namespaces/tal"\n
xmlns:metal="http://xml.zope.org/namespaces/metal"\n
xmlns:i18n="http://xml.zope.org/namespaces/i18n">\n
<!--\n
Copyright (c) 2006 Nexedi SARL and Contributors. All Rights Reserved.\n
Vincent Pelletier <vincent@nexedi.com>\n
Christophe Dumez <christophe@nexedi.com>\n
\n
This program is Free Software; you can redistribute it and/or\n
modify it under the terms of the GNU General Public License\n
as published by the Free Software Foundation; either version 2\n
of the License, or (at your option) any later version.\n
\n
This program is distributed in the hope that it will be useful,\n
but WITHOUT ANY WARRANTY; without even the implied warranty of\n
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n
GNU General Public License for more details.\n
\n
You should have received a copy of the GNU General Public License\n
along with this program; if not, write to the Free Software\n
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n
-->\n
</tal:block>\n
<tal:block metal:use-macro="here/list_main/macros/master">\n
<tal:block metal:fill-slot="main">\n
<tal:block metal:use-macro="here/form_render/macros/master" />\n
<tal:block metal:use-macro="here/list_main/macros/master">\n
<tal:block metal:fill-slot="main">\n
<tal:block metal:use-macro="here/form_render/macros/master" />\n
</tal:block>\n
</tal:block>\n
</tal:block>
</tal:block>\n
]]></string> </value>
</item>
......
......@@ -3,11 +3,8 @@
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<tuple>
<tuple>
<string>Products.PageTemplates.ZopePageTemplate</string>
<string>ZopePageTemplate</string>
</tuple>
<none/>
<global name="ZopePageTemplate" module="Products.PageTemplates.ZopePageTemplate"/>
<tuple/>
</tuple>
</pickle>
<pickle>
......@@ -54,29 +51,11 @@
<key> <string>_text</string> </key>
<value> <string encoding="cdata"><![CDATA[
<tal:block tal:replace="nothing"\n
xmlns:tal="http://xml.zope.org/namespaces/tal"\n
<tal:block xmlns:tal="http://xml.zope.org/namespaces/tal"\n
xmlns:metal="http://xml.zope.org/namespaces/metal"\n
xmlns:i18n="http://xml.zope.org/namespaces/i18n">\n
<tal:block tal:replace="nothing">\n
<!--\n
Copyright (c) 2006 Nexedi SARL and Contributors. All Rights Reserved.\n
Vincent Pelletier <vincent@nexedi.com>\n
Christophe Dumez <christophe@nexedi.com>\n
\n
This program is Free Software; you can redistribute it and/or\n
modify it under the terms of the GNU General Public License\n
as published by the Free Software Foundation; either version 2\n
of the License, or (at your option) any later version.\n
\n
This program is distributed in the hope that it will be useful,\n
but WITHOUT ANY WARRANTY; without even the implied warranty of\n
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n
GNU General Public License for more details.\n
\n
You should have received a copy of the GNU General Public License\n
along with this program; if not, write to the Free Software\n
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n
\n
XXX: each case must be handled separatelly in this precise representation :\n
- both top fields must be in the same div, so they must be identified\n
strictly by their name.\n
......@@ -98,36 +77,36 @@ It is possible to specify a group id and a group title by naming a group followi
class and as tag id. The group title will be used as a legend for the fieldset. If no group\n
title is found, we use group id as title.\n
-->\n
</tal:block>\n
\n
\n
<tal:block metal:define-macro="master">\n
<tal:block\n
tal:define="field_errors python: request.get(\'field_errors\', {});\n
dummy python: request.set(\'here\', here);\n
group_list python: form.Form_getGroupTitleAndId();\n
gid_list python: \' \'.join([x[\'gid\'] for x in group_list if x!=\'hidden\']);\n
field_render nocall: here/field_render/macros/field_render">\n
</tal:block>\n
\n
<tal:block tal:condition="preferred_html_style_developper_mode">\n
<tal:block metal:use-macro="developper_shortcut_render/macros/form"/>\n
</tal:block>\n
<tal:block metal:define-macro="master">\n
<tal:block\n
tal:define="field_errors python: request.get(\'field_errors\', {});\n
dummy python: request.set(\'here\', here);\n
group_list python: form.Form_getGroupTitleAndId();\n
gid_list python: \' \'.join([x[\'gid\'] for x in group_list if x!=\'hidden\']);\n
field_render nocall: here/field_render/macros/field_render">\n
<tal:block tal:condition="preferred_html_style_developper_mode">\n
<tal:block metal:use-macro="developper_shortcut_render/macros/form" />\n
</tal:block>\n
\n
<tal:block tal:repeat="group group_list">\n
<tal:block tal:define="gid group/gid;">\n
<fieldset tal:condition="python: gid.find(\'hidden\') < 0"\n
tal:attributes="class gid;\n
id python: \'fieldset_%s\' % (gid.replace(\' \', \'_\'), );">\n
<legend tal:condition="group/gtitle" tal:content="group/gtitle" class="group_title"/>\n
<tal:block tal:repeat="field python: form.get_fields_in_group(group[\'goid\'])">\n
<tal:block metal:use-macro="field_render"/>\n
</tal:block>\n
</fieldset>\n
<tal:block tal:repeat="group group_list">\n
<tal:block tal:define="gid group/gid;">\n
<fieldset tal:condition="python: gid.find(\'hidden\') &lt; 0"\n
tal:attributes="class gid;\n
id python: \'fieldset_%s\' % (gid.replace(\' \', \'_\'), );">\n
<legend tal:condition="group/gtitle" tal:content="group/gtitle" class="group_title"></legend>\n
<tal:block tal:repeat="field python: form.get_fields_in_group(group[\'goid\'])">\n
<tal:block metal:use-macro="field_render" />\n
</tal:block>\n
</fieldset>\n
</tal:block>\n
</tal:block>\n
<p class="clear"></p>\n
</tal:block>\n
<p class="clear"></p>\n
</tal:block>\n
</tal:block>
</tal:block>\n
]]></string> </value>
</item>
......
......@@ -3,11 +3,8 @@
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<tuple>
<tuple>
<string>Products.PageTemplates.ZopePageTemplate</string>
<string>ZopePageTemplate</string>
</tuple>
<none/>
<global name="ZopePageTemplate" module="Products.PageTemplates.ZopePageTemplate"/>
<tuple/>
</tuple>
</pickle>
<pickle>
......@@ -54,31 +51,13 @@
<key> <string>_text</string> </key>
<value> <string encoding="cdata"><![CDATA[
<tal:block tal:replace="nothing"\n
xmlns:tal="http://xml.zope.org/namespaces/tal"\n
<tal:block xmlns:tal="http://xml.zope.org/namespaces/tal"\n
xmlns:metal="http://xml.zope.org/namespaces/metal"\n
xmlns:i18n="http://xml.zope.org/namespaces/i18n">\n
<!--\n
Copyright (c) 2007 Nexedi SARL and Contributors. All Rights Reserved.\n
\n
This program is Free Software; you can redistribute it and/or\n
modify it under the terms of the GNU General Public License\n
as published by the Free Software Foundation; either version 2\n
of the License, or (at your option) any later version.\n
\n
This program is distributed in the hope that it will be useful,\n
but WITHOUT ANY WARRANTY; without even the implied warranty of\n
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n
GNU General Public License for more details.\n
\n
You should have received a copy of the GNU General Public License\n
along with this program; if not, write to the Free Software\n
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n
-->\n
</tal:block>\n
<tal:block metal:use-macro="here/list_report/macros/master">\n
<tal:block metal:fill-slot="main">\n
<tal:block metal:use-macro="here/form_render/macros/master" />\n
<tal:block metal:use-macro="here/list_report/macros/master">\n
<tal:block metal:fill-slot="main">\n
<tal:block metal:use-macro="here/form_render/macros/master" />\n
</tal:block>\n
</tal:block>\n
</tal:block>\n
......
......@@ -3,11 +3,8 @@
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<tuple>
<tuple>
<string>Products.PageTemplates.ZopePageTemplate</string>
<string>ZopePageTemplate</string>
</tuple>
<none/>
<global name="ZopePageTemplate" module="Products.PageTemplates.ZopePageTemplate"/>
<tuple/>
</tuple>
</pickle>
<pickle>
......@@ -48,37 +45,18 @@
<key> <string>_text</string> </key>
<value> <string encoding="cdata"><![CDATA[
<tal:block tal:replace="nothing"\n
xmlns:tal="http://xml.zope.org/namespaces/tal"\n
<tal:block xmlns:tal="http://xml.zope.org/namespaces/tal"\n
xmlns:metal="http://xml.zope.org/namespaces/metal"\n
xmlns:i18n="http://xml.zope.org/namespaces/i18n">\n
<!--\n
Copyright (c) 2006 Nexedi SARL and Contributors. All Rights Reserved.\n
Vincent Pelletier <vincent@nexedi.com>\n
Christophe Dumez <christophe@nexedi.com>\n
\n
This program is Free Software; you can redistribute it and/or\n
modify it under the terms of the GNU General Public License\n
as published by the Free Software Foundation; either version 2\n
of the License, or (at your option) any later version.\n
\n
This program is distributed in the hope that it will be useful,\n
but WITHOUT ANY WARRANTY; without even the implied warranty of\n
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n
GNU General Public License for more details.\n
\n
You should have received a copy of the GNU General Public License\n
along with this program; if not, write to the Free Software\n
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n
-->\n
</tal:block>\n
<tal:block metal:define-macro="master">\n
<tal:block metal:use-macro="here/view_main/macros/master">\n
<tal:block metal:fill-slot="main">\n
<tal:block metal:use-macro="here/form_render/macros/master" />\n
<tal:block metal:define-macro="master">\n
<tal:block metal:use-macro="here/view_main/macros/master">\n
<tal:block metal:fill-slot="main">\n
<tal:block metal:use-macro="here/form_render/macros/master" />\n
</tal:block>\n
</tal:block>\n
</tal:block>\n
</tal:block>
</tal:block>\n
]]></string> </value>
</item>
......
......@@ -51,48 +51,46 @@
<key> <string>_text</string> </key>
<value> <string encoding="cdata"><![CDATA[
<tal:block metal:define-macro="header_definitions">\n
<tal:block tal:define="\n
global portal here/portal_url/getPortalObject;\n
global portal_path portal/absolute_url;\n
local_parameter_list local_parameter_list | python: {};\n
\n
global actions python: here.Base_filterDuplicateActions(portal.portal_actions.listFilteredActionsFor(here));\n
global url here/absolute_url;\n
global current_form_id python: local_parameter_list.get(\'dialog_id\', local_parameter_list.get(\'form_id\', \'view\'));\n
<tal:block tal:replace="nothing"\n
xmlns:tal="http://xml.zope.org/namespaces/tal"\n
xmlns:metal="http://xml.zope.org/namespaces/metal"\n
xmlns:i18n="http://xml.zope.org/namespaces/i18n">\n
<tal:block metal:define-macro="header_definitions">\n
<tal:block tal:define="\n
global portal here/portal_url/getPortalObject;\n
global portal_path portal/absolute_url;\n
local_parameter_list local_parameter_list | python: {};\n
global actions python: here.Base_filterDuplicateActions(portal.portal_actions.listFilteredActionsFor(here));\n
global url here/absolute_url;\n
global current_form_id python: local_parameter_list.get(\'dialog_id\', local_parameter_list.get(\'form_id\', \'view\'));\n
dummy python: request.set(\'current_form_id\', current_form_id);\n
global current_url python: \'%s/%s\' % (url, current_form_id);\n
global current_action python: portal.ERP5Site_getCurrentAction(current_url, actions);\n
global current_url python: \'%s/%s\' % (url, current_form_id);\n
global current_action python: portal.ERP5Site_getCurrentAction(current_url, actions);\n
cancel_url request/cancel_url | current_url;\n
dummy python: local_parameter_list.update({\'cancel_url\': cancel_url});\n
\n
dummy python: request.RESPONSE.setHeader(\'Content-Type\', \'text/html;; charset=utf-8\');\n
dummy python: request.set(\'here\', here);\n
\n
global css_list css_list | python: [];\n
global css_list css_list | python: [];\n
css_list_template css_list_template | python: [\'%s/erp5.css\' % (portal_path, )];\n
dummy python: css_list.extend(css_list_template);\n
global js_list js_list | python: [\'%s/erp5_xhtml_appearance.js\' % portal_path,];\n
global js_list python:[\'%s/MochiKit/MochiKit.js\' % portal_path,\n
\'%s/erp5.js\' % portal_path, ] + js_list;\n
\n
global http_parameter_list python: portal.ERP5Site_filterParameterList(request.form);\n
global js_list js_list | python: [\'%s/erp5_xhtml_appearance.js\' % portal_path,];\n
global js_list python:[\'%s/MochiKit/MochiKit.js\' % portal_path,\n
\'%s/erp5.js\' % portal_path, ] + js_list;\n
global http_parameter_list python: portal.ERP5Site_filterParameterList(request.form);\n
dummy python: http_parameter_list.update(local_parameter_list);\n
global http_parameters python: portal.ERP5Site_renderHTTPParameterList(http_parameter_list);\n
global form nocall:form | nothing;\n
global http_parameters python: portal.ERP5Site_renderHTTPParameterList(http_parameter_list);\n
global form nocall:form | nothing;\n
portal_preferences python: portal.portal_preferences;\n
global preferred_html_style_developper_mode portal_preferences/getPreferredHtmlStyleDevelopperMode;\n
global preferred_html_style_translator_mode portal_preferences/getPreferredHtmlStyleTranslatorMode;\n
global preferred_html_style_contextual_help portal_preferences/getPreferredHtmlStyleContextualHelp;\n
global developper_shortcut_render python: (preferred_html_style_developper_mode or preferred_html_style_translator_mode) and portal.developper_shortcut_render;\n
global selected_language portal/Localizer/get_selected_language;\n
"/>\n
</tal:block>\n
\n
<!-- ============================================================== -->\n
\n
<tal:block metal:define-macro="http_definitions">\n
<tal:block tal:replace="structure python: modules[\'ZTUtils\'].make_hidden_input(**http_parameter_list).replace(\'>\', \' />\')"/>\n
global preferred_html_style_developper_mode portal_preferences/getPreferredHtmlStyleDevelopperMode;\n
global preferred_html_style_translator_mode portal_preferences/getPreferredHtmlStyleTranslatorMode;\n
global preferred_html_style_contextual_help portal_preferences/getPreferredHtmlStyleContextualHelp;\n
global developper_shortcut_render python: (preferred_html_style_developper_mode or preferred_html_style_translator_mode) and portal.developper_shortcut_render;\n
global selected_language portal/Localizer/get_selected_language;\n
" />\n
</tal:block>\n
<tal:block metal:define-macro="http_definitions">\n
<tal:block tal:replace="structure python: modules[\'ZTUtils\'].make_hidden_input(**http_parameter_list).replace(\'>\', \' />\')" />\n
</tal:block>\n
</tal:block>\n
......
......@@ -3,11 +3,8 @@
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<tuple>
<tuple>
<string>Products.PageTemplates.ZopePageTemplate</string>
<string>ZopePageTemplate</string>
</tuple>
<none/>
<global name="ZopePageTemplate" module="Products.PageTemplates.ZopePageTemplate"/>
<tuple/>
</tuple>
</pickle>
<pickle>
......@@ -48,58 +45,38 @@
<key> <string>_text</string> </key>
<value> <string encoding="cdata"><![CDATA[
<tal:block tal:replace="nothing"\n
xmlns:tal="http://xml.zope.org/namespaces/tal"\n
<tal:block xmlns:tal="http://xml.zope.org/namespaces/tal"\n
xmlns:metal="http://xml.zope.org/namespaces/metal"\n
xmlns:i18n="http://xml.zope.org/namespaces/i18n">\n
<!--\n
Copyright (c) 2006 Nexedi SARL and Contributors. All Rights Reserved.\n
Vincent Pelletier <vincent@nexedi.com>\n
Christophe Dumez <christophe@nexedi.com>\n
\n
This program is Free Software; you can redistribute it and/or\n
modify it under the terms of the GNU General Public License\n
as published by the Free Software Foundation; either version 2\n
of the License, or (at your option) any later version.\n
\n
This program is distributed in the hope that it will be useful,\n
but WITHOUT ANY WARRANTY; without even the implied warranty of\n
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n
GNU General Public License for more details.\n
\n
You should have received a copy of the GNU General Public License\n
along with this program; if not, write to the Free Software\n
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n
-->\n
</tal:block>\n
<tal:block tal:define="title here/Title">\n
<tal:block metal:use-macro="here/main_template/macros/master">\n
<tal:block metal:fill-slot="main">\n
<tal:block tal:condition="here/portal_membership/isAnonymousUser">\n
<tal:block tal:define="dummy python: request.RESPONSE.redirect(\'%s/login_form\' % url)" />\n
</tal:block>\n
<div tal:condition="python: not here.portal_membership.isAnonymousUser()"\n
class="index_html">\n
<h2 i18n:translate="" i18n:domain="ui">Welcome to ERP5</h2>\n
<table border="1">\n
<tr tal:define="module_list here/ERP5Site_getModuleItemList;\n
module_len python: len(module_list);\n
col_size python: 12;\n
col_len python: module_len % col_size and (module_len + col_size) / col_size or (module_len) / col_size">\n
<td><a href="http://www.erp5.org/"><img src="images/erp5_logo.png" alt="ERP5 Logo" /></a></td>\n
<tal:block tal:repeat="col_no python:range(col_len)">\n
<td valign="top" class="ModuleShortcut">\n
<tal:block tal:repeat="module python:module_list[col_size*col_no:min(col_size*(col_no+1),module_len)] ">\n
<div><a tal:content="python: module[0]"\n
tal:attributes="href python: module[1] + \'/view\'"></a></div>\n
<tal:block tal:define="title here/Title">\n
<tal:block metal:use-macro="here/main_template/macros/master">\n
<tal:block metal:fill-slot="main">\n
<tal:block tal:condition="here/portal_membership/isAnonymousUser">\n
<tal:block tal:define="dummy python: request.RESPONSE.redirect(\'%s/login_form\' % url)" />\n
</tal:block>\n
<div tal:condition="python: not here.portal_membership.isAnonymousUser()"\n
class="index_html">\n
<h2 i18n:translate="" i18n:domain="ui">Welcome to ERP5</h2>\n
<table border="1">\n
<tr tal:define="module_list here/ERP5Site_getModuleItemList;\n
module_len python: len(module_list);\n
col_size python: 12;\n
col_len python: module_len % col_size and (module_len + col_size) / col_size or (module_len) / col_size">\n
<td><a href="http://www.erp5.org/"><img src="images/erp5_logo.png" alt="ERP5 Logo" /></a></td>\n
<tal:block tal:repeat="col_no python:range(col_len)">\n
<td valign="top" class="ModuleShortcut">\n
<tal:block tal:repeat="module python:module_list[col_size*col_no:min(col_size*(col_no+1),module_len)] ">\n
<div><a tal:content="python: module[0]"\n
tal:attributes="href python: module[1] + \'/view\'"></a></div>\n
</tal:block>\n
</td>\n
</tal:block>\n
</td>\n
</tal:block>\n
</tr>\n
</table>\n
</div>\n
</tr>\n
</table>\n
</div>\n
</tal:block>\n
</tal:block>\n
</tal:block>\n
</tal:block>\n
</tal:block>
]]></string> </value>
......
......@@ -3,11 +3,8 @@
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<tuple>
<tuple>
<string>Products.PageTemplates.ZopePageTemplate</string>
<string>ZopePageTemplate</string>
</tuple>
<none/>
<global name="ZopePageTemplate" module="Products.PageTemplates.ZopePageTemplate"/>
<tuple/>
</tuple>
</pickle>
<pickle>
......@@ -54,19 +51,23 @@
<key> <string>_text</string> </key>
<value> <string encoding="cdata"><![CDATA[
<tal:block metal:define-macro="master">\n
<tal:block tal:define="form_id form/id;\n
list_mode python: True;\n
listmode_default_listbox python: form.Form_getListbox();\n
selection_name listmode_default_listbox/selection_name;\n
selection_index request/selection_index | python:0;\n
dummy python: selection_name and request.set(\'selection_name\', selection_name);\n
\n
local_parameter_list local_parameter_list | python: {};\n
dummy python: local_parameter_list.update({\'selection_name\': selection_name, \'selection_index\': selection_index, \'form_id\': form_id});">\n
<tal:block metal:use-macro="here/form_dialog/macros/master"/>\n
<tal:block xmlns:tal="http://xml.zope.org/namespaces/tal"\n
xmlns:metal="http://xml.zope.org/namespaces/metal"\n
xmlns:i18n="http://xml.zope.org/namespaces/i18n">\n
<tal:block metal:define-macro="master">\n
<tal:block tal:define="form_id form/id;\n
list_mode python: True;\n
listmode_default_listbox python: form.Form_getListbox();\n
selection_name listmode_default_listbox/selection_name;\n
selection_index request/selection_index | python:0;\n
dummy python: selection_name and request.set(\'selection_name\', selection_name);\n
local_parameter_list local_parameter_list | python: {};\n
dummy python: local_parameter_list.update({\'selection_name\': selection_name, \'selection_index\': selection_index, \'form_id\': form_id});">\n
<tal:block metal:use-macro="here/form_dialog/macros/master" />\n
</tal:block>\n
</tal:block>\n
</tal:block>
</tal:block>\n
]]></string> </value>
</item>
......
......@@ -3,11 +3,8 @@
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<tuple>
<tuple>
<string>Products.PageTemplates.ZopePageTemplate</string>
<string>ZopePageTemplate</string>
</tuple>
<none/>
<global name="ZopePageTemplate" module="Products.PageTemplates.ZopePageTemplate"/>
<tuple/>
</tuple>
</pickle>
<pickle>
......@@ -54,48 +51,27 @@
<key> <string>_text</string> </key>
<value> <string encoding="cdata"><![CDATA[
<tal:block tal:replace="nothing"\n
xmlns:tal="http://xml.zope.org/namespaces/tal"\n
<tal:block xmlns:tal="http://xml.zope.org/namespaces/tal"\n
xmlns:metal="http://xml.zope.org/namespaces/metal"\n
xmlns:i18n="http://xml.zope.org/namespaces/i18n">\n
<!--\n
Copyright (c) 2006 Nexedi SARL and Contributors. All Rights Reserved.\n
Vincent Pelletier <vincent@nexedi.com>\n
Christophe Dumez <christophe@nexedi.com>\n
\n
This program is Free Software; you can redistribute it and/or\n
modify it under the terms of the GNU General Public License\n
as published by the Free Software Foundation; either version 2\n
of the License, or (at your option) any later version.\n
\n
This program is distributed in the hope that it will be useful,\n
but WITHOUT ANY WARRANTY; without even the implied warranty of\n
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n
GNU General Public License for more details.\n
\n
You should have received a copy of the GNU General Public License\n
along with this program; if not, write to the Free Software\n
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n
-->\n
</tal:block>\n
<tal:block metal:define-macro="master">\n
<tal:block tal:define="form_action string:Base_doSelect;\n
form_id form/id;\n
list_mode python: True;\n
listmode_default_listbox python:form.listbox;\n
selection_name listmode_default_listbox/selection_name;\n
selection_index request/selection_index | python:0;\n
dummy python: selection_name and request.set(\'selection_name\', selection_name);\n
\n
local_parameter_list local_parameter_list | python: {};\n
dummy python: local_parameter_list.update({\'selection_name\': selection_name, \'selection_index\': selection_index, \'form_id\': form_id});\n
title here/getTranslatedTitle | here/Title">\n
<tal:block metal:use-macro="here/main_template/macros/master">\n
<tal:block metal:fill-slot="context_bar">\n
<tal:block metal:use-macro="here/context_box_render/macros/master" />\n
</tal:block>\n
<tal:block metal:fill-slot="main">\n
<tal:block metal:define-slot="main" />\n
<tal:block metal:define-macro="master">\n
<tal:block tal:define="form_action string:Base_doSelect;\n
form_id form/id;\n
list_mode python: True;\n
listmode_default_listbox python:form.listbox;\n
selection_name listmode_default_listbox/selection_name;\n
selection_index request/selection_index | python:0;\n
dummy python: selection_name and request.set(\'selection_name\', selection_name);\n
local_parameter_list local_parameter_list | python: {};\n
dummy python: local_parameter_list.update({\'selection_name\': selection_name, \'selection_index\': selection_index, \'form_id\': form_id});\n
title here/getTranslatedTitle | here/Title">\n
<tal:block metal:use-macro="here/main_template/macros/master">\n
<tal:block metal:fill-slot="context_bar">\n
<tal:block metal:use-macro="here/context_box_render/macros/master" />\n
</tal:block>\n
<tal:block metal:fill-slot="main">\n
<tal:block metal:define-slot="main" />\n
</tal:block>\n
</tal:block>\n
</tal:block>\n
</tal:block>\n
......
......@@ -3,11 +3,8 @@
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<tuple>
<tuple>
<string>Products.PageTemplates.ZopePageTemplate</string>
<string>ZopePageTemplate</string>
</tuple>
<none/>
<global name="ZopePageTemplate" module="Products.PageTemplates.ZopePageTemplate"/>
<tuple/>
</tuple>
</pickle>
<pickle>
......@@ -54,62 +51,44 @@
<key> <string>_text</string> </key>
<value> <string encoding="cdata"><![CDATA[
<tal:block tal:replace="nothing"\n
xmlns:tal="http://xml.zope.org/namespaces/tal"\n
<tal:block xmlns:tal="http://xml.zope.org/namespaces/tal"\n
xmlns:metal="http://xml.zope.org/namespaces/metal"\n
xmlns:i18n="http://xml.zope.org/namespaces/i18n">\n
<!--\n
Copyright (c) 2007 Nexedi SARL and Contributors. All Rights Reserved.\n
<tal:block metal:define-macro="master">\n
<tal:block tal:define="form_id form/id;\n
local_parameter_list python: {\'form_id\': form_id};\n
form_action python: form and form.action not in (\'\', None) and form.action or nothing;\n
title here/getTranslatedTitle | here/Title">\n
<tal:block metal:use-macro="here/main_template/macros/master">\n
<tal:block metal:fill-slot="context_bar">\n
<tal:block metal:use-macro="here/context_box_render/macros/master" />\n
</tal:block>\n
<tal:block metal:fill-slot="main">\n
<div class="document" tal:define="actions python: []">\n
<div class="actions"\n
tal:condition="python: (not is_web_mode or editable_mode)">\n
<button tal:condition="python: not is_web_mode and form_action"\n
type="submit" class="save" title="Save"\n
tal:attributes="name string:${form_action}:method;\n
onClick string:javascript:clickSaveButton(\'${form_action}\');"\n
i18n:attributes="title" i18n:domain="ui">\n
<span class="image"></span>\n
<span class="description" i18n:translate="" i18n:domain="ui">Save</span>\n
</button>\n
<ul>\n
<li tal:repeat="action actions"\n
tal:attributes="class python: action == current_action and \'selected\' or \'not_selected\'">\n
<a tal:attributes="href python: \'%s%s%s\' % (action[\'url\'], \'?\' in action[\'url\'] and \'&amp;\' or \'?\', http_parameters)"\n
tal:content="action/name"\n
i18n:translate="" i18n:domain="ui" />\n
</li>\n
</ul>\n
</div>\n
\n
This program is Free Software; you can redistribute it and/or\n
modify it under the terms of the GNU General Public License\n
as published by the Free Software Foundation; either version 2\n
of the License, or (at your option) any later version.\n
\n
This program is distributed in the hope that it will be useful,\n
but WITHOUT ANY WARRANTY; without even the implied warranty of\n
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n
GNU General Public License for more details.\n
\n
You should have received a copy of the GNU General Public License\n
along with this program; if not, write to the Free Software\n
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n
-->\n
</tal:block>\n
<tal:block metal:define-macro="master">\n
<tal:block tal:define="form_id form/id;\n
local_parameter_list python: {\'form_id\': form_id};\n
form_action python: form and form.action not in (\'\', None) and form.action or nothing;\n
title here/getTranslatedTitle | here/Title">\n
<tal:block metal:use-macro="here/main_template/macros/master">\n
<tal:block metal:fill-slot="context_bar">\n
<tal:block metal:use-macro="here/context_box_render/macros/master" />\n
</tal:block>\n
<tal:block metal:fill-slot="main">\n
<div class="document" tal:define="actions python: []">\n
<div class="actions"\n
tal:condition="python: (not is_web_mode or editable_mode)">\n
<button tal:condition="python: not is_web_mode and form_action"\n
type="submit" class="save" title="Save"\n
tal:attributes="name string:${form_action}:method;\n
onClick string:javascript:clickSaveButton(\'${form_action}\');"\n
i18n:attributes="title" i18n:domain="ui">\n
<span class="image"></span>\n
<span class="description" i18n:translate="" i18n:domain="ui">Save</span>\n
</button>\n
<ul>\n
<li tal:repeat="action actions"\n
tal:attributes="class python: action == current_action and \'selected\' or \'not_selected\'">\n
<a tal:attributes="href python: \'%s%s%s\' % (action[\'url\'], \'?\' in action[\'url\'] and \'&amp;\' or \'?\', http_parameters)"\n
tal:content="action/name"\n
i18n:translate="" i18n:domain="ui"/>\n
</li>\n
</ul>\n
<tal:block metal:define-slot="main" />\n
</div>\n
\n
\n
<tal:block metal:define-slot="main" />\n
</div>\n
</tal:block>\n
</tal:block>\n
</tal:block>\n
</tal:block>\n
......
......@@ -3,11 +3,8 @@
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<tuple>
<tuple>
<string>Products.PageTemplates.ZopePageTemplate</string>
<string>ZopePageTemplate</string>
</tuple>
<none/>
<global name="ZopePageTemplate" module="Products.PageTemplates.ZopePageTemplate"/>
<tuple/>
</tuple>
</pickle>
<pickle>
......@@ -54,22 +51,27 @@
<key> <string>_text</string> </key>
<value> <string encoding="cdata"><![CDATA[
<tal:block tal:condition="here/portal_skins/updateSkinCookie | nothing"\n
tal:define="dummy here/setupCurrentSkin;" />\n
<tal:block tal:define="response request/RESPONSE;\n
mtool here/portal_membership;\n
isAnon mtool/isAnonymousUser|nothing;">\n
<tal:block tal:condition="isAnon">\n
<tal:block tal:define="dummy python: response.expireCookie(\'__ac\', path=\'/\');\n
url python: \'%s/login_form?portal_status_message=%s\' % (here.absolute_url(), here.getPortalObject().Localizer.translate(\'ui\', \'Login+and/or+password+is+incorrect.\'));\n
url python: request.get(\'came_from\') and \'%s&came_from=%s\' % (url, request[\'came_from\']) or url;\n
dummy python: response.redirect(url);"/>\n
<tal:block xmlns:tal="http://xml.zope.org/namespaces/tal"\n
xmlns:metal="http://xml.zope.org/namespaces/metal"\n
xmlns:i18n="http://xml.zope.org/namespaces/i18n">\n
<tal:block tal:condition="here/portal_skins/updateSkinCookie | nothing"\n
tal:define="dummy here/setupCurrentSkin;" />\n
<tal:block tal:define="response request/RESPONSE;\n
mtool here/portal_membership;\n
isAnon mtool/isAnonymousUser|nothing;">\n
<tal:block tal:condition="isAnon">\n
<tal:block tal:define="dummy python: response.expireCookie(\'__ac\', path=\'/\');\n
url python: \'%s/login_form?portal_status_message=%s\' % (here.absolute_url(), here.getPortalObject().Localizer.translate(\'ui\', \'Login+and/or+password+is+incorrect.\'));\n
url python: request.get(\'came_from\') and \'%s&amp;came_from=%s\' % (url, request[\'came_from\']) or url;\n
dummy python: response.redirect(url);" />\n
</tal:block>\n
<tal:block tal:condition="not: isAnon">\n
<tal:block tal:define="came_from python: request.get(\'came_from\') or here.absolute_url() + \'/view\';\n
dummy python: response.redirect(came_from);" />\n
</tal:block>\n
</tal:block>\n
<tal:block tal:condition="not: isAnon">\n
<tal:block tal:define="came_from python: request.get(\'came_from\') or here.absolute_url() + \'/view\';\n
dummy python: response.redirect(came_from);" />\n
</tal:block>\n
</tal:block>
</tal:block>\n
]]></string> </value>
</item>
......
......@@ -3,11 +3,8 @@
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<tuple>
<tuple>
<string>Products.PageTemplates.ZopePageTemplate</string>
<string>ZopePageTemplate</string>
</tuple>
<none/>
<global name="ZopePageTemplate" module="Products.PageTemplates.ZopePageTemplate"/>
<tuple/>
</tuple>
</pickle>
<pickle>
......@@ -48,37 +45,21 @@
<key> <string>_text</string> </key>
<value> <string encoding="cdata"><![CDATA[
<tal:block tal:replace="nothing"\n
xmlns:tal="http://xml.zope.org/namespaces/tal"\n
<tal:block xmlns:tal="http://xml.zope.org/namespaces/tal"\n
xmlns:metal="http://xml.zope.org/namespaces/metal"\n
xmlns:i18n="http://xml.zope.org/namespaces/i18n">\n
<tal:block replace="nothing">\n
<!--\n
Copyright (c) 2006 Nexedi SARL and Contributors. All Rights Reserved.\n
Vincent Pelletier <vincent@nexedi.com>\n
Christophe Dumez <christophe@nexedi.com>\n
\n
This program is Free Software; you can redistribute it and/or\n
modify it under the terms of the GNU General Public License\n
as published by the Free Software Foundation; either version 2\n
of the License, or (at your option) any later version.\n
\n
This program is distributed in the hope that it will be useful,\n
but WITHOUT ANY WARRANTY; without even the implied warranty of\n
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n
GNU General Public License for more details.\n
\n
You should have received a copy of the GNU General Public License\n
along with this program; if not, write to the Free Software\n
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n
\n
XXX: this page is just for backward compatibility. The log_out action sould lead to the login page with the correct transition message.\n
-->\n
</tal:block>\n
<tal:block metal:use-macro="here/main_template/macros/master">\n
<tal:block metal:fill-slot="main">\n
<tal:block tal:define="dummy python:request.RESPONSE.redirect(\'%s/login_form?portal_status_message=%s\' % (url, here.Base_translateString(\'You have been logged out.\')))" />\n
</tal:block>\n
</tal:block>
<tal:block metal:use-macro="here/main_template/macros/master">\n
<tal:block metal:fill-slot="main">\n
<tal:block tal:define="dummy python:request.RESPONSE.redirect(\'%s/login_form?portal_status_message=%s\' % (url, here.Base_translateString(\'You have been logged out.\')))" />\n
</tal:block>\n
</tal:block>\n
</tal:block>\n
]]></string> </value>
</item>
......
......@@ -57,92 +57,66 @@
<key> <string>_text</string> </key>
<value> <string encoding="cdata"><![CDATA[
<tal:block tal:replace="nothing"\n
xmlns:tal="http://xml.zope.org/namespaces/tal"\n
<tal:block xmlns:tal="http://xml.zope.org/namespaces/tal"\n
xmlns:metal="http://xml.zope.org/namespaces/metal"\n
xmlns:i18n="http://xml.zope.org/namespaces/i18n">\n
<!--\n
Copyright (c) 2006 Nexedi SARL and Contributors. All Rights Reserved.\n
Vincent Pelletier <vincent@nexedi.com>\n
Christophe Dumez <christophe@nexedi.com>\n
\n
This program is Free Software; you can redistribute it and/or\n
modify it under the terms of the GNU General Public License\n
as published by the Free Software Foundation; either version 2\n
of the License, or (at your option) any later version.\n
\n
This program is distributed in the hope that it will be useful,\n
but WITHOUT ANY WARRANTY; without even the implied warranty of\n
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n
GNU General Public License for more details.\n
\n
You should have received a copy of the GNU General Public License\n
along with this program; if not, write to the Free Software\n
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n
-->\n
</tal:block>\n
<tal:block tal:define="form_action string:logged_in;\n
global form_id string:login_form;\n
js_list python: [\'%s/login_form.js\' % (here.portal_url(), )]">\n
<tal:block metal:use-macro="here/main_template/macros/master">\n
<tal:block metal:fill-slot="main">\n
<div class="content login">\n
\n
<tal:block tal:condition="python: request.get(\'came_from\', None) is None">\n
<h1 i18n:translate="" i18n:domain="ui">Log in</h1>\n
</tal:block>\n
\n
<tal:block tal:condition="python: request.get(\'came_from\', None) is not None">\n
<h1 i18n:translate="" i18n:domain="ui">You don\'t have enough permissions to access this page</h1>\n
<p i18n:translate="" i18n:domain="ui">You can log in with another user name or\n
<a href="javascript:history.back();">go back</a>.\n
</p>\n
</tal:block>\n
\n
<input tal:condition="exists: request/came_from"\n
type="hidden" name="came_from"\n
tal:attributes="value request/came_from" />\n
\n
<fieldset id="fieldset_left" class="left">\n
<div class="field">\n
<label for="name" class="required" i18n:translate="" i18n:domain="ui">Name</label>\n
<div class="input"><input type="text" name="__ac_name" id="name" tal:attributes="value python: request.get(\'__ac_name\') or \'\'"/></div>\n
</div>\n
<div class="field">\n
<label for="password" i18n:translate="" i18n:domain="ui">Password</label>\n
<div class="input"><input type="password" name="__ac_password" id="password"/></div>\n
</div>\n
<div class="field">\n
<label for="cb_remember" i18n:translate="" i18n:domain="ui">Remember my name</label>\n
<div class="input"><input type="checkbox" name="__ac_persistent" value="1" checked="checked" id="cb_remember"/></div>\n
<tal:block tal:define="form_action string:logged_in;\n
global form_id string:login_form;\n
js_list python: [\'%s/login_form.js\' % (here.portal_url(), )]">\n
<tal:block metal:use-macro="here/main_template/macros/master">\n
<tal:block metal:fill-slot="main">\n
<div class="content login">\n
<tal:block tal:condition="python: request.get(\'came_from\', None) is None">\n
<h1 i18n:translate="" i18n:domain="ui">Log in</h1>\n
</tal:block>\n
<tal:block tal:condition="python: request.get(\'came_from\', None) is not None">\n
<h1 i18n:translate="" i18n:domain="ui">You don\'t have enough permissions to access this page</h1>\n
<p i18n:translate="" i18n:domain="ui">You can log in with another user name or\n
<a href="javascript:history.back();">go back</a>.\n
</p>\n
</tal:block>\n
<input tal:condition="exists: request/came_from"\n
type="hidden" name="came_from"\n
tal:attributes="value request/came_from" />\n
<fieldset id="fieldset_left" class="left">\n
<div class="field">\n
<label for="name" class="required" i18n:translate="" i18n:domain="ui">Name</label>\n
<div class="input"><input type="text" name="__ac_name" id="name" tal:attributes="value python: request.get(\'__ac_name\') or \'\'" /></div>\n
</div>\n
<div class="field">\n
<label for="password" i18n:translate="" i18n:domain="ui">Password</label>\n
<div class="input"><input type="password" name="__ac_password" id="password" /></div>\n
</div>\n
<div class="field">\n
<label for="cb_remember" i18n:translate="" i18n:domain="ui">Remember my name</label>\n
<div class="input"><input type="checkbox" name="__ac_persistent" value="1" checked="checked" id="cb_remember" /></div>\n
</div>\n
<div class="field">\n
<label>&nbsp;</label>\n
<div class="input">\n
<input type="submit" value="Login" class="submit"\n
tal:attributes="name python: \'%s:method\' % (form_action, )"\n
i18n:attributes="value" i18n:domain="ui" />\n
</div>\n
</div>\n
<div class="field">\n
<label>&nbsp;</label>\n
<div class="input">\n
<a tal:attributes="href string:${here/portal_url}/mail_password_form"\n
i18n:translate="" i18n:domain="ui">I forgot my password!</a>\n
</div>\n
</div>\n
</fieldset>\n
<script type="text/javascript">setFocus()</script>\n
<p i18n:translate="" i18n:domain="ui">Having trouble logging in? Make sure to enable cookies in your web browser.</p>\n
<p i18n:translate="" i18n:domain="ui">Don\'t forget to logout or exit your browser when you\'re done.</p>\n
<p i18n:translate="" i18n:domain="ui">Setting the \'Remember my name\' option will set a cookie with your username, so that when you next log in, your user name will already be filled in for you.</p>\n
</div>\n
<div class="field">\n
<label>&nbsp;</label>\n
<div class="input">\n
<input type="submit" value="Login" class="submit"\n
tal:attributes="name python: \'%s:method\' % (form_action, )"\n
i18n:attributes="value" i18n:domain="ui"/>\n
</div>\n
</div>\n
<div class="field">\n
<label>&nbsp;</label>\n
<div class="input">\n
<a tal:attributes="href string:${here/portal_url}/mail_password_form"\n
i18n:translate="" i18n:domain="ui">I forgot my password!</a>\n
</div>\n
</div>\n
</fieldset>\n
\n
<script type="text/javascript">setFocus()</script>\n
\n
<p i18n:translate="" i18n:domain="ui">Having trouble logging in? Make sure to enable cookies in your web browser.</p>\n
<p i18n:translate="" i18n:domain="ui">Don\'t forget to logout or exit your browser when you\'re done.</p>\n
<p i18n:translate="" i18n:domain="ui">Setting the \'Remember my name\' option will set a cookie with your username, so that when you next log in, your user name will already be filled in for you.</p>\n
\n
</div>\n
</tal:block>\n
</tal:block>\n
</tal:block>\n
</tal:block>\n
</tal:block>
]]></string> </value>
</item>
......
......@@ -3,11 +3,8 @@
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<tuple>
<tuple>
<string>Products.PageTemplates.ZopePageTemplate</string>
<string>ZopePageTemplate</string>
</tuple>
<none/>
<global name="ZopePageTemplate" module="Products.PageTemplates.ZopePageTemplate"/>
<tuple/>
</tuple>
</pickle>
<pickle>
......@@ -54,56 +51,40 @@
<key> <string>_text</string> </key>
<value> <string encoding="cdata"><![CDATA[
<tal:block tal:replace="nothing"\n
xmlns:tal="http://xml.zope.org/namespaces/tal"\n
<tal:block xmlns:tal="http://xml.zope.org/namespaces/tal"\n
xmlns:metal="http://xml.zope.org/namespaces/metal"\n
xmlns:i18n="http://xml.zope.org/namespaces/i18n">\n
<tal:block tal:replace="nothing">\n
<!--\n
Copyright (c) 2006 Nexedi SARL and Contributors. All Rights Reserved.\n
Vincent Pelletier <vincent@nexedi.com>\n
Christophe Dumez <christophe@nexedi.com>\n
\n
This program is Free Software; you can redistribute it and/or\n
modify it under the terms of the GNU General Public License\n
as published by the Free Software Foundation; either version 2\n
of the License, or (at your option) any later version.\n
\n
This program is distributed in the hope that it will be useful,\n
but WITHOUT ANY WARRANTY; without even the implied warranty of\n
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n
GNU General Public License for more details.\n
\n
You should have received a copy of the GNU General Public License\n
along with this program; if not, write to the Free Software\n
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n
\n
IDEAS:\n
- Add callbacks to ERP5Form object (selection ?) to gather needed fields -> put them in http_parameter_list.\n
-->\n
</tal:block>\n
<tal:block metal:define-macro="master">\n
<tal:block\n
tal:define="ignore_layout request/ignore_layout | nothing;\n
layout_form_id request/layout_form_id | here/getApplicableLayout | nothing;\n
layout_form python: layout_form_id and getattr(here, layout_form_id, None) or None;\n
is_web_mode python: (layout_form is not None) and (not ignore_layout);\n
editable_mode python: (not is_web_mode) or request.get(\'editable_mode\', False);\n
editable_mode_backup editable_mode;\n
dummy python: request.set(\'editable_mode\', editable_mode);\n
dummy python: request.set(\'is_web_mode\', is_web_mode);\n
page_template python: is_web_mode and ((layout_form.meta_type==\'Page Template\' and layout_form.id) or getattr(layout_form, \'pt\', None)) or \'template_erp5_xhtml_style\';">\n
<tal:block metal:use-macro="python: getattr(here, page_template).macros[\'master\']">\n
<tal:block metal:fill-slot="context_bar">\n
<tal:block metal:define-slot="context_bar"/>\n
</tal:block>\n
<tal:block metal:fill-slot="main"\n
tal:define="editable_mode editable_mode_backup;\n
dummy python: request.set(\'editable_mode\', editable_mode);">\n
<tal:block metal:define-slot="main"/>\n
</tal:block>\n
<tal:block metal:define-macro="master">\n
<tal:block\n
tal:define="ignore_layout request/ignore_layout | nothing;\n
layout_form_id request/layout_form_id | here/getApplicableLayout | nothing;\n
layout_form python: layout_form_id and getattr(here, layout_form_id, None) or None;\n
is_web_mode python: (layout_form is not None) and (not ignore_layout);\n
editable_mode python: (not is_web_mode) or request.get(\'editable_mode\', False);\n
editable_mode_backup editable_mode;\n
dummy python: request.set(\'editable_mode\', editable_mode);\n
dummy python: request.set(\'is_web_mode\', is_web_mode);\n
page_template python: is_web_mode and ((layout_form.meta_type==\'Page Template\' and layout_form.id) or getattr(layout_form, \'pt\', None)) or \'template_erp5_xhtml_style\';">\n
<tal:block metal:use-macro="python: getattr(here, page_template).macros[\'master\']">\n
<tal:block metal:fill-slot="context_bar">\n
<tal:block metal:define-slot="context_bar" />\n
</tal:block>\n
<tal:block metal:fill-slot="main"\n
tal:define="editable_mode editable_mode_backup;\n
dummy python: request.set(\'editable_mode\', editable_mode);">\n
<tal:block metal:define-slot="main" />\n
</tal:block>\n
</tal:block>\n
</tal:block>\n
</tal:block>\n
</tal:block>
</tal:block>\n
]]></string> </value>
</item>
......
......@@ -3,11 +3,8 @@
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<tuple>
<tuple>
<string>Products.PageTemplates.ZopePageTemplate</string>
<string>ZopePageTemplate</string>
</tuple>
<none/>
<global name="ZopePageTemplate" module="Products.PageTemplates.ZopePageTemplate"/>
<tuple/>
</tuple>
</pickle>
<pickle>
......@@ -54,85 +51,66 @@
<key> <string>_text</string> </key>
<value> <string encoding="cdata"><![CDATA[
<tal:block tal:replace="nothing"\n
xmlns:tal="http://xml.zope.org/namespaces/tal"\n
<tal:block xmlns:tal="http://xml.zope.org/namespaces/tal"\n
xmlns:metal="http://xml.zope.org/namespaces/metal"\n
xmlns:i18n="http://xml.zope.org/namespaces/i18n">\n
<!--\n
Copyright (c) 2006 Nexedi SARL and Contributors. All Rights Reserved.\n
Vincent Pelletier <vincent@nexedi.com>\n
Christophe Dumez <christophe@nexedi.com>\n
\n
This program is Free Software; you can redistribute it and/or\n
modify it under the terms of the GNU General Public License\n
as published by the Free Software Foundation; either version 2\n
of the License, or (at your option) any later version.\n
\n
This program is distributed in the hope that it will be useful,\n
but WITHOUT ANY WARRANTY; without even the implied warranty of\n
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n
GNU General Public License for more details.\n
\n
You should have received a copy of the GNU General Public License\n
along with this program; if not, write to the Free Software\n
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n
-->\n
</tal:block>\n
<tal:block metal:use-macro="here/view_main/macros/master">\n
<tal:block metal:fill-slot="main">\n
<tal:block tal:define="field_errors python: request.get(\'field_errors\',{});\n
dummy python: request.set(\'here\', here);\n
left_group python: form.get_fields_in_group(\'left\');\n
right_group python: form.get_fields_in_group(\'right\');\n
center_left_group python: form.get_fields_in_group(\'center_left\');\n
center_right_group python: form.get_fields_in_group(\'center_right\');\n
bottom_group python: form.get_fields_in_group(\'bottom\');\n
field_render nocall: here/field_render/macros/field_render">\n
<tal:block tal:condition="preferred_html_style_developper_mode">\n
<tal:block metal:use-macro="developper_shortcut_render/macros/form" />\n
</tal:block>\n
<div tal:condition="python: len(left_group) > 0 or len(right_group) > 0"\n
class="top_group">\n
<fieldset tal:condition="python: len(left_group) > 0"\n
class="left">\n
<tal:block tal:repeat="field left_group">\n
<tal:block metal:use-macro="field_render" />\n
</tal:block>\n
</fieldset>\n
<fieldset tal:condition="python: len(right_group) > 0"\n
class="right">\n
<tal:block tal:repeat="field right_group">\n
<tal:block metal:use-macro="field_render" />\n
</tal:block>\n
</fieldset>\n
<p class="clear"></p>\n
</div>\n
<div tal:condition="python: len(center_left_group) > 0 or len(center_right_group) > 0"\n
class="top_group">\n
<fieldset tal:condition="python: len(center_left_group) > 0"\n
class="left">\n
<tal:block tal:repeat="field center_left_group">\n
<tal:block metal:use-macro="field_render" />\n
</tal:block>\n
</fieldset>\n
<fieldset tal:condition="python: len(center_right_group) > 0"\n
class="right">\n
<tal:block tal:repeat="field center_right_group">\n
<tal:block metal:use-macro="here/view_main/macros/master">\n
<tal:block metal:fill-slot="main">\n
<tal:block tal:define="field_errors python: request.get(\'field_errors\',{});\n
dummy python: request.set(\'here\', here);\n
left_group python: form.get_fields_in_group(\'left\');\n
right_group python: form.get_fields_in_group(\'right\');\n
center_left_group python: form.get_fields_in_group(\'center_left\');\n
center_right_group python: form.get_fields_in_group(\'center_right\');\n
bottom_group python: form.get_fields_in_group(\'bottom\');\n
field_render nocall: here/field_render/macros/field_render">\n
<tal:block tal:condition="preferred_html_style_developper_mode">\n
<tal:block metal:use-macro="developper_shortcut_render/macros/form" />\n
</tal:block>\n
<div tal:condition="python: len(left_group) > 0 or len(right_group) > 0"\n
class="top_group">\n
<fieldset tal:condition="python: len(left_group) > 0"\n
class="left">\n
<tal:block tal:repeat="field left_group">\n
<tal:block metal:use-macro="field_render" />\n
</tal:block>\n
</fieldset>\n
<fieldset tal:condition="python: len(right_group) > 0"\n
class="right">\n
<tal:block tal:repeat="field right_group">\n
<tal:block metal:use-macro="field_render" />\n
</tal:block>\n
</fieldset>\n
<p class="clear"></p>\n
</div>\n
<div tal:condition="python: len(center_left_group) > 0 or len(center_right_group) > 0"\n
class="top_group">\n
<fieldset tal:condition="python: len(center_left_group) > 0"\n
class="left">\n
<tal:block tal:repeat="field center_left_group">\n
<tal:block metal:use-macro="field_render" />\n
</tal:block>\n
</fieldset>\n
<fieldset tal:condition="python: len(center_right_group) > 0"\n
class="right">\n
<tal:block tal:repeat="field center_right_group">\n
<tal:block metal:use-macro="field_render" />\n
</tal:block>\n
</fieldset>\n
<p class="clear"></p>\n
</div>\n
<fieldset tal:condition="python: len(bottom_group) > 0"\n
class="center">\n
<tal:block tal:repeat="field python: form.get_fields_in_group(\'bottom\')">\n
<tal:block metal:use-macro="field_render" />\n
</tal:block>\n
<p class="clear"></p>\n
</fieldset>\n
<p class="clear"></p>\n
</div>\n
<fieldset tal:condition="python: len(bottom_group) > 0"\n
class="center">\n
<tal:block tal:repeat="field python: form.get_fields_in_group(\'bottom\')">\n
<tal:block metal:use-macro="field_render" />\n
</tal:block>\n
<p class="clear"></p>\n
</fieldset>\n
</tal:block>\n
</tal:block>\n
</tal:block>\n
</tal:block>
</tal:block>\n
]]></string> </value>
</item>
......
......@@ -51,34 +51,14 @@
<key> <string>_text</string> </key>
<value> <string encoding="cdata"><![CDATA[
<tal:block tal:replace="nothing"\n
xmlns:tal="http://xml.zope.org/namespaces/tal"\n
<tal:block xmlns:tal="http://xml.zope.org/namespaces/tal"\n
xmlns:metal="http://xml.zope.org/namespaces/metal"\n
xmlns:i18n="http://xml.zope.org/namespaces/i18n">\n
<!--\n
Copyright (c) 2006 Nexedi SARL and Contributors. All Rights Reserved.\n
Vincent Pelletier <vincent@nexedi.com>\n
Christophe Dumez <christophe@nexedi.com>\n
\n
This program is Free Software; you can redistribute it and/or\n
modify it under the terms of the GNU General Public License\n
as published by the Free Software Foundation; either version 2\n
of the License, or (at your option) any later version.\n
\n
This program is distributed in the hope that it will be useful,\n
but WITHOUT ANY WARRANTY; without even the implied warranty of\n
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n
GNU General Public License for more details.\n
\n
You should have received a copy of the GNU General Public License\n
along with this program; if not, write to the Free Software\n
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n
-->\n
</tal:block>\n
<tal:block metal:define-macro="master">\n
<tal:block tal:define="local_parameter_list local_parameter_list | python: {};\n
dummy python: local_parameter_list.update({\'field_id\': request[\'field_id\'], \'form_pickle\': request[\'form_pickle\'], \'form_signature\': request[\'form_signature\']});">\n
<tal:block metal:use-macro="here/form_dialog/macros/master" />\n
<tal:block metal:define-macro="master">\n
<tal:block tal:define="local_parameter_list local_parameter_list | python: {};\n
dummy python: local_parameter_list.update({\'field_id\': request[\'field_id\'], \'form_pickle\': request[\'form_pickle\'], \'form_signature\': request[\'form_signature\']});">\n
<tal:block metal:use-macro="here/form_dialog/macros/master" />\n
</tal:block>\n
</tal:block>\n
</tal:block>\n
......
......@@ -3,11 +3,8 @@
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<tuple>
<tuple>
<string>Products.PageTemplates.ZopePageTemplate</string>
<string>ZopePageTemplate</string>
</tuple>
<none/>
<global name="ZopePageTemplate" module="Products.PageTemplates.ZopePageTemplate"/>
<tuple/>
</tuple>
</pickle>
<pickle>
......@@ -54,47 +51,27 @@
<key> <string>_text</string> </key>
<value> <string encoding="cdata"><![CDATA[
<tal:block tal:replace="nothing"\n
xmlns:tal="http://xml.zope.org/namespaces/tal"\n
<tal:block xmlns:tal="http://xml.zope.org/namespaces/tal"\n
xmlns:metal="http://xml.zope.org/namespaces/metal"\n
xmlns:i18n="http://xml.zope.org/namespaces/i18n">\n
<!--\n
Copyright (c) 2006 Nexedi SARL and Contributors. All Rights Reserved.\n
Vincent Pelletier <vincent@nexedi.com>\n
Christophe Dumez <christophe@nexedi.com>\n
\n
This program is Free Software; you can redistribute it and/or\n
modify it under the terms of the GNU General Public License\n
as published by the Free Software Foundation; either version 2\n
of the License, or (at your option) any later version.\n
\n
This program is distributed in the hope that it will be useful,\n
but WITHOUT ANY WARRANTY; without even the implied warranty of\n
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n
GNU General Public License for more details.\n
\n
You should have received a copy of the GNU General Public License\n
along with this program; if not, write to the Free Software\n
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n
-->\n
</tal:block>\n
<tal:block tal:define="title string:${template/title_or_id} - ${here/Title}">\n
<tal:block metal:use-macro="here/view_main/macros/master">\n
<tal:block metal:fill-slot="main">\n
<tal:block metal:use-macro="here/form_render/macros/master" />\n
<tal:block tal:define="portal_object here/getPortalObject">\n
<tal:block tal:repeat="report_item report_method">\n
<tal:block tal:define="here python: report_item.getObject(portal_object);\n
dummy python: report_item.pushReport(portal_object)">\n
<span tal:condition="report_item/getTitle"\n
tal:content="report_item/getTitle"\n
tal:attributes="class string:report_title_level_${report_item/getLevel}"/>\n
<tal:block tal:condition="report_item/getFormId">\n
<tal:block tal:define="form python:getattr(here,report_item.getFormId())" >\n
<tal:block metal:use-macro="here/form_render/macros/master" />\n
<tal:block tal:define="title string:${template/title_or_id} - ${here/Title}">\n
<tal:block metal:use-macro="here/view_main/macros/master">\n
<tal:block metal:fill-slot="main">\n
<tal:block metal:use-macro="here/form_render/macros/master" />\n
<tal:block tal:define="portal_object here/getPortalObject">\n
<tal:block tal:repeat="report_item report_method">\n
<tal:block tal:define="here python: report_item.getObject(portal_object);\n
dummy python: report_item.pushReport(portal_object)">\n
<span tal:condition="report_item/getTitle"\n
tal:content="report_item/getTitle"\n
tal:attributes="class string:report_title_level_${report_item/getLevel}" />\n
<tal:block tal:condition="report_item/getFormId">\n
<tal:block tal:define="form python:getattr(here,report_item.getFormId())" >\n
<tal:block metal:use-macro="here/form_render/macros/master" />\n
</tal:block>\n
</tal:block>\n
<tal:block tal:define="dummy python:report_item.popReport(portal_object)" />\n
</tal:block>\n
<tal:block tal:define="dummy python:report_item.popReport(portal_object)" />\n
</tal:block>\n
</tal:block>\n
</tal:block>\n
......
......@@ -3,11 +3,8 @@
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<tuple>
<tuple>
<string>Products.PageTemplates.ZopePageTemplate</string>
<string>ZopePageTemplate</string>
</tuple>
<none/>
<global name="ZopePageTemplate" module="Products.PageTemplates.ZopePageTemplate"/>
<tuple/>
</tuple>
</pickle>
<pickle>
......@@ -54,90 +51,70 @@
<key> <string>_text</string> </key>
<value> <string encoding="cdata"><![CDATA[
<tal:block tal:replace="nothing"\n
xmlns:tal="http://xml.zope.org/namespaces/tal"\n
<tal:block xmlns:tal="http://xml.zope.org/namespaces/tal"\n
xmlns:metal="http://xml.zope.org/namespaces/metal"\n
xmlns:i18n="http://xml.zope.org/namespaces/i18n">\n
<!--\n
Copyright (c) 2006 Nexedi SARL and Contributors. All Rights Reserved.\n
Vincent Pelletier <vincent@nexedi.com>\n
Christophe Dumez <christophe@nexedi.com>\n
\n
This program is Free Software; you can redistribute it and/or\n
modify it under the terms of the GNU General Public License\n
as published by the Free Software Foundation; either version 2\n
of the License, or (at your option) any later version.\n
\n
This program is distributed in the hope that it will be useful,\n
but WITHOUT ANY WARRANTY; without even the implied warranty of\n
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n
GNU General Public License for more details.\n
\n
You should have received a copy of the GNU General Public License\n
along with this program; if not, write to the Free Software\n
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n
-->\n
</tal:block>\n
<tal:block metal:define-macro="master">\n
<tal:block metal:use-macro="here/dialog_main/macros/master">\n
<tal:block metal:fill-slot="main">\n
<div class="dialog_box">\n
<tal:block tal:condition="preferred_html_style_developper_mode">\n
<tal:block metal:use-macro="developper_shortcut_render/macros/form"/>\n
</tal:block>\n
<div class="content"\n
tal:define="items python:here.portal_selections.getSelectionSortOrder(request[\'selection_name\'], REQUEST=request);\n
base_form python:getattr(here,request[\'form_id\']);\n
groups base_form/get_groups;\n
listbox python:base_form.Form_getListbox();\n
columns python:listbox.get_value(\'all_columns\');\n
global row_index python:0;\n
global row_keys python:[\'None\'];\n
all_columns python: [(\'None\',\'\')] + columns;">\n
<div tal:repeat="item items"\n
class="field">\n
<label tal:define="global row_index python:row_index+1">\n
<tal:block i18n:translate="" i18n:domain="ui">Sort</tal:block>\n
<tal:block tal:replace="row_index" />\n
</label>\n
<div class="input" tal:attributes="id string:sort_${row_index}"\n
tal:define="sort_type python:((len(item) > 2) and item[2]) or \'\'">\n
<select name="field_sort_on">\n
<tal:block tal:repeat="option all_columns">\n
<option tal:content="python:option[1]"\n
tal:attributes="value python:option[0];\n
selected python:option[0]==item[0] and \'selected\' or nothing"\n
i18n:translate="" i18n:domain="ui"></option>\n
</tal:block>\n
</select>\n
<tal:block tal:replace="structure python:form.sort_order.render(item[1], request)" />\n
<tal:block tal:replace="structure python:form.sort_type.render(sort_type, request)" />\n
</div>\n
<p class="clear"></p>\n
</div>\n
<div tal:repeat="item columns"\n
class="field">\n
<tal:block tal:condition="python: item[0] not in row_keys">\n
<tal:block metal:define-macro="master">\n
<tal:block metal:use-macro="here/dialog_main/macros/master">\n
<tal:block metal:fill-slot="main">\n
<div class="dialog_box">\n
<tal:block tal:condition="preferred_html_style_developper_mode">\n
<tal:block metal:use-macro="developper_shortcut_render/macros/form" />\n
</tal:block>\n
<div class="content"\n
tal:define="items python:here.portal_selections.getSelectionSortOrder(request[\'selection_name\'], REQUEST=request);\n
base_form python:getattr(here,request[\'form_id\']);\n
groups base_form/get_groups;\n
listbox python:base_form.Form_getListbox();\n
columns python:listbox.get_value(\'all_columns\');\n
global row_index python:0;\n
global row_keys python:[\'None\'];\n
all_columns python: [(\'None\',\'\')] + columns;">\n
<div tal:repeat="item items"\n
class="field">\n
<label tal:define="global row_index python:row_index+1">\n
<tal:block i18n:translate="" i18n:domain="ui">Sort</tal:block>\n
<tal:block tal:replace="row_index" />\n
</label>\n
<div class="input" tal:attributes="id string:sort_${row_index}">\n
<div class="input" tal:attributes="id string:sort_${row_index}"\n
tal:define="sort_type python:((len(item) &gt; 2) and item[2]) or \'\'">\n
<select name="field_sort_on">\n
<option selected="selected" value="None"></option>\n
<option tal:repeat="option columns"\n
tal:content="python:option[1]"\n
tal:attributes="value python:option[0]"\n
i18n:translate="" i18n:domain="ui"></option>\n
<tal:block tal:repeat="option all_columns">\n
<option tal:content="python:option[1]"\n
tal:attributes="value python:option[0];\n
selected python:option[0]==item[0] and \'selected\' or nothing"\n
i18n:translate="" i18n:domain="ui"></option>\n
</tal:block>\n
</select>\n
<span tal:replace="structure python:form.sort_order.render(\'\', request)" />\n
<tal:block tal:replace="structure python:form.sort_type.render(\'\', request)" />\n
<tal:block tal:replace="structure python:form.sort_order.render(item[1], request)" />\n
<tal:block tal:replace="structure python:form.sort_type.render(sort_type, request)" />\n
</div>\n
</tal:block>\n
<p class="clear"></p>\n
<p class="clear"></p>\n
</div>\n
<div tal:repeat="item columns"\n
class="field">\n
<tal:block tal:condition="python: item[0] not in row_keys">\n
<label tal:define="global row_index python:row_index+1">\n
<tal:block i18n:translate="" i18n:domain="ui">Sort</tal:block>\n
<tal:block tal:replace="row_index" />\n
</label>\n
<div class="input" tal:attributes="id string:sort_${row_index}">\n
<select name="field_sort_on">\n
<option selected="selected" value="None"></option>\n
<option tal:repeat="option columns"\n
tal:content="python:option[1]"\n
tal:attributes="value python:option[0]"\n
i18n:translate="" i18n:domain="ui"></option>\n
</select>\n
<span tal:replace="structure python:form.sort_order.render(\'\', request)" />\n
<tal:block tal:replace="structure python:form.sort_type.render(\'\', request)" />\n
</div>\n
</tal:block>\n
<p class="clear"></p>\n
</div>\n
</div>\n
</div>\n
</div>\n
</tal:block>\n
</tal:block>\n
</tal:block>\n
</tal:block>\n
......
......@@ -51,91 +51,71 @@
<key> <string>_text</string> </key>
<value> <string encoding="cdata"><![CDATA[
<tal:block tal:replace="nothing"\n
xmlns:tal="http://xml.zope.org/namespaces/tal"\n
<tal:block xmlns:tal="http://xml.zope.org/namespaces/tal"\n
xmlns:metal="http://xml.zope.org/namespaces/metal"\n
xmlns:i18n="http://xml.zope.org/namespaces/i18n">\n
<!--\n
Copyright (c) 2006 Nexedi SARL and Contributors. All Rights Reserved.\n
Vincent Pelletier <vincent@nexedi.com>\n
Christophe Dumez <christophe@nexedi.com>\n
\n
This program is Free Software; you can redistribute it and/or\n
modify it under the terms of the GNU General Public License\n
as published by the Free Software Foundation; either version 2\n
of the License, or (at your option) any later version.\n
\n
This program is distributed in the hope that it will be useful,\n
but WITHOUT ANY WARRANTY; without even the implied warranty of\n
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n
GNU General Public License for more details.\n
\n
You should have received a copy of the GNU General Public License\n
along with this program; if not, write to the Free Software\n
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n
-->\n
</tal:block>\n
<tal:block metal:define-macro="master">\n
<tal:block\n
tal:define="object_uid here/getUid | nothing;\n
object_path here/getPath | nothing;\n
form nocall: form | nothing;\n
form_id form/id | template/title_or_id | nothing;\n
form_action python: form and form.action not in (\'\', None) and here.portal_membership.checkPermission(\'Modify portal content\', here) and form.action or nothing;\n
local_parameter_list local_parameter_list | python: {};\n
dummy python: local_parameter_list.update({\'object_uid\': object_uid, \'object_path\': object_path, \'form_id\': form_id});\n
title python: \'%s - %s\' % (here.Base_translateString(template.title_or_id()), here.title_or_id());\n
">\n
<tal:block metal:use-macro="here/main_template/macros/master">\n
<tal:block metal:fill-slot="context_bar">\n
<tal:block metal:use-macro="here/context_box_render/macros/master" />\n
</tal:block>\n
<tal:block metal:fill-slot="main">\n
<div class="document"\n
tal:define="actions actions/object_view | python: []">\n
<div class="actions"\n
tal:condition="python: (not is_web_mode or editable_mode) and len(actions)">\n
<button tal:condition="python: not is_web_mode and form_action"\n
type="submit" class="save" title="Save"\n
tal:attributes="name string:${form_action}:method;\n
onClick string:javascript:clickSaveButton(\'${form_action}\');"\n
i18n:attributes="title" i18n:domain="ui">\n
<span class="image"></span>\n
<span class="description" i18n:translate="" i18n:domain="ui">Save</span>\n
</button>\n
<ul>\n
<li tal:repeat="action actions"\n
tal:attributes="class python: action == current_action and \'selected\' or \'not_selected\'">\n
<a tal:attributes="href python: \'%s%s%s\' % (action[\'url\'], \'?\' in action[\'url\'] and \'&amp;\' or \'?\', http_parameters)"\n
i18n:translate="" i18n:domain="ui"><span tal:content="action/name">action_name</span></a>\n
</li>\n
</ul>\n
</div>\n
<div tal:attributes="class python: editable_mode and \'content editable\' or \'content\'">\n
<tal:block metal:define-slot="main"/>\n
</div>\n
<div class="bottom_actions"\n
tal:condition="python: is_web_mode and editable_mode and len(actions) and form_action">\n
<input type="hidden" name="form_action" value=""\n
tal:attributes="value form_action"/>\n
<input type="hidden" name="edit_document_url" value=""\n
tal:attributes="value python:\'%s/%s\' % (here.absolute_url(), form_id)"/>\n
<input type="hidden" name="view_document_url" value=""\n
tal:attributes="value python:\'%s/%s\' % (here.absolute_url(), \'view\')"/>\n
<button type="submit" class="saveView" title="Save &amp; View"\n
name="Base_editAndViewAsWeb:method"\n
i18n:attributes="title" i18n:domain="ui">\n
<span class="image"></span>\n
<span class="description" i18n:translate="" i18n:domain="ui">Save &amp; View</span>\n
</button>\n
<button type="submit" class="saveEdit" title="Save &amp; Edit"\n
name="Base_editAndEditAsWeb:method"\n
i18n:attributes="title" i18n:domain="ui">\n
<span class="image"></span>\n
<span class="description" i18n:translate="" i18n:domain="ui">Save &amp; Edit</span>\n
</button>\n
<tal:block metal:define-macro="master">\n
<tal:block\n
tal:define="object_uid here/getUid | nothing;\n
object_path here/getPath | nothing;\n
form nocall: form | nothing;\n
form_id form/id | template/title_or_id | nothing;\n
form_action python: form and form.action not in (\'\', None) and here.portal_membership.checkPermission(\'Modify portal content\', here) and form.action or nothing;\n
local_parameter_list local_parameter_list | python: {};\n
dummy python: local_parameter_list.update({\'object_uid\': object_uid, \'object_path\': object_path, \'form_id\': form_id});\n
title python: \'%s - %s\' % (here.Base_translateString(template.title_or_id()), here.title_or_id());\n
">\n
<tal:block metal:use-macro="here/main_template/macros/master">\n
<tal:block metal:fill-slot="context_bar">\n
<tal:block metal:use-macro="here/context_box_render/macros/master" />\n
</tal:block>\n
<tal:block metal:fill-slot="main">\n
<div class="document"\n
tal:define="actions actions/object_view | python: []">\n
<div class="actions"\n
tal:condition="python: (not is_web_mode or editable_mode) and len(actions)">\n
<button tal:condition="python: not is_web_mode and form_action"\n
type="submit" class="save" title="Save"\n
tal:attributes="name string:${form_action}:method;\n
onClick string:javascript:clickSaveButton(\'${form_action}\');"\n
i18n:attributes="title" i18n:domain="ui">\n
<span class="image"></span>\n
<span class="description" i18n:translate="" i18n:domain="ui">Save</span>\n
</button>\n
<ul>\n
<li tal:repeat="action actions"\n
tal:attributes="class python: action == current_action and \'selected\' or \'not_selected\'">\n
<a tal:attributes="href python: \'%s%s%s\' % (action[\'url\'], \'?\' in action[\'url\'] and \'&amp;\' or \'?\', http_parameters)"\n
i18n:translate="" i18n:domain="ui"><span tal:content="action/name">action_name</span></a>\n
</li>\n
</ul>\n
</div>\n
<div tal:attributes="class python: editable_mode and \'content editable\' or \'content\'">\n
<tal:block metal:define-slot="main" />\n
</div>\n
<div class="bottom_actions"\n
tal:condition="python: is_web_mode and editable_mode and len(actions) and form_action">\n
<input type="hidden" name="form_action" value=""\n
tal:attributes="value form_action" />\n
<input type="hidden" name="edit_document_url" value=""\n
tal:attributes="value python:\'%s/%s\' % (here.absolute_url(), form_id)" />\n
<input type="hidden" name="view_document_url" value=""\n
tal:attributes="value python:\'%s/%s\' % (here.absolute_url(), \'view\')" />\n
<button type="submit" class="saveView" title="Save &amp; View"\n
name="Base_editAndViewAsWeb:method"\n
i18n:attributes="title" i18n:domain="ui">\n
<span class="image"></span>\n
<span class="description" i18n:translate="" i18n:domain="ui">Save &amp; View</span>\n
</button>\n
<button type="submit" class="saveEdit" title="Save &amp; Edit"\n
name="Base_editAndEditAsWeb:method"\n
i18n:attributes="title" i18n:domain="ui">\n
<span class="image"></span>\n
<span class="description" i18n:translate="" i18n:domain="ui">Save &amp; Edit</span>\n
</button>\n
</div>\n
</div>\n
</div>\n
</tal:block>\n
</tal:block>\n
</tal:block>\n
</tal:block>\n
......
2007-11-21 kazuhiko
* Make Page Templates themselves valid XML (except DOCTYPE definition).
2007-11-14 yusei
* Fix tab style on konqueror
......
432
\ No newline at end of file
434
\ No newline at end of file
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