Commit e8b053d4 authored by Vincent Pelletier's avatar Vincent Pelletier

Added layout support.


git-svn-id: https://svn.erp5.org/repos/public/erp5/trunk@6294 20353a03-c40f-0410-a6d1-a30d3c3de9de
parent 7949cedf
...@@ -48,6 +48,26 @@ ...@@ -48,6 +48,26 @@
<key> <string>_text</string> </key> <key> <string>_text</string> </key>
<value> <string encoding="cdata"><![CDATA[ <value> <string encoding="cdata"><![CDATA[
<span tal:replace="nothing">\n
<!--\n
Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved.\n
Thierry Faucher <tf@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
</span>\n
<tal:block tal:define="layout_form_id here/getApplicableLayout | nothing;\n <tal:block tal:define="layout_form_id here/getApplicableLayout | nothing;\n
editable_mode request/editable_mode | nothing;\n editable_mode request/editable_mode | nothing;\n
global ignore_layout request/ignore_layout | nothing;\n global ignore_layout request/ignore_layout | nothing;\n
......
...@@ -48,11 +48,7 @@ ...@@ -48,11 +48,7 @@
<key> <string>_text</string> </key> <key> <string>_text</string> </key>
<value> <string encoding="cdata"><![CDATA[ <value> <string encoding="cdata"><![CDATA[
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"\n <tal:block tal:replace=\'nothing\'>\n
"DTD/xhtml1-strict.dtd">\n
<?xml-stylesheet href="erp5.css" rel="stylesheet" type="text/css"?>\n
\n
<span tal:replace="nothing">\n
<!--\n <!--\n
Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved.\n Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved.\n
Thierry Faucher <tf@nexedi.com>\n Thierry Faucher <tf@nexedi.com>\n
...@@ -71,218 +67,202 @@ You should have received a copy of the GNU General Public License\n ...@@ -71,218 +67,202 @@ 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 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 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n
-->\n -->\n
</span>\n </tal:block>\n
\n <tal:block tal:define="layout_form_id here/getApplicableLayout | nothing;\n
<html xmlns="http://www.w3.org/1999/xhtml" lang="en"\n ignore_layout request/ignore_layout | nothing;\n
xml:lang="en"\n editable_mode python:1;\n
xmlns:tal="http://xml.zope.org/namespaces/tal"\n dummy python:request.set(\'editable_mode\', editable_mode);\n
xmlns:metal="http://xml.zope.org/namespaces/metal"\n global layout_form python:(not layout_form_id or ignore_layout) or getattr(here, layout_form_id, None);\n
xmlns:i18n="http://xml.zope.org/namespaces/i18n"\n default_layout string:view_dialog_master;\n
metal:use-macro="here/view_dialog_master/macros/master">\n layout_id layout_form/pt | default_layout;">\n
\n <tal:block metal:use-macro="python:getattr(here,layout_id).macros[\'master\']">\n
<head tal:define="dummy python:request.RESPONSE.setHeader(\'Content-Type\', \'text/html;; charset=utf-8\')">\n <tal:block metal:fill-slot="main">\n
<meta name="description" content="Generated by form_view_dialog" />\n <div class="Search">\n
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />\n <span tal:define="groups python: form.get_groups(include_empty=1);\n
<title tal:content="template/title_or_id"\n field_errors python: request.get(\'field_errors\',{});\n
i18n:translate="" i18n:domain="ui">\n dummy python: request.set(\'here\',here)">\n
The title\n <table class="Border" width="100%" tal:condition="python:len(form.get_fields_in_group(groups[0])) > 0\n
</title>\n or len(form.get_fields_in_group(groups[1])) > 0">\n
<link href="erp5.css" rel="stylesheet" type="text/css" />\n
</head>\n
\n
<body><div metal:fill-slot="main">\n
<div class="Search">\n
\n
\n
<span tal:define="groups python: form.get_groups(include_empty=1);\n
field_errors python: request.get(\'field_errors\',{});\n
dummy python: request.set(\'here\',here)">\n
<table class="Border" width="100%" tal:condition="python:len(form.get_fields_in_group(groups[0])) > 0\n
or len(form.get_fields_in_group(groups[1])) > 0">\n
<tr>\n
<td>\n
<table>\n
<tr tal:condition="request/dialog_category | nothing">\n
<td i18n:translate="" i18n:domain="ui">Search Type:</td>\n
<td valign="middle" align="right" nowrap\n
tal:define="dialog_category request/dialog_category;\n
actions python:filtered_actions[dialog_category]">\n
<input type="hidden" name="dialog_category" value="dialog_category"\n
tal:attributes="value dialog_category" />\n
<select name="dialog_select" size="1"\n
tal:attributes="onChange string:submitAction(this.form, \'${here/absolute_url}/Base_doDialog\')">\n
<span tal:repeat="action actions">\n
<option value="1" tal:content="action/name"\n
tal:condition="python: action[\'url\'].find(form.id) < 0"\n
i18n:translate="" i18n:domain="ui"\n
tal:attributes="value action/url">Saut</option>\n
<option value="1" tal:content="action/name"\n
tal:condition="python: action[\'url\'].find(form.id) >= 0"\n
i18n:translate="" i18n:domain="ui"\n
tal:attributes="value action/url"\n
selected>Saut</option>\n
</span>\n
</select></td>\n
<td valign="bottom" align="left" nowrap> &nbsp;\n
<input type="image" src="/images/erp5_html_style/images/exec16.png" title="Action"\n
i18n:attributes="title" i18n:domain="ui"\n
alt="Action" name="Base_doDialog:method" /> &nbsp;\n
</td>\n
</tr>\n
</table>\n
</td>\n
<td valign="top" tal:condition="python: len(groups)>1"></td>\n
</tr>\n
<tr><td valign="top">\n
<table>\n
<span tal:repeat="field python:form.get_fields_in_group(groups[0])">\n
<tr>\n <tr>\n
<td tal:content="structure field/title"\n
tal:condition="python: field_errors.has_key(field.id)\n
and not field.is_required()"\n
i18n:translate="" i18n:domain="ui"\n
class="error">\n
</td>\n
<td tal:content="structure field/title"\n
tal:condition="python: (not field_errors.has_key(field.id))\n
and not field.is_required()"\n
i18n:translate="" i18n:domain="ui"\n
>\n
</td>\n
<td tal:content="structure field/title"\n
tal:condition="python: field_errors.has_key(field.id)\n
and field.is_required()"\n
i18n:translate="" i18n:domain="ui"\n
class="reqerror">\n
</td>\n
<td tal:content="structure field/title"\n
tal:condition="python: (not field_errors.has_key(field.id))\n
and field.is_required()"\n
i18n:translate="" i18n:domain="ui"\n
class="required">\n
</td>\n
<td tal:define="value python:request.get(field.id,None)">\n
<span tal:replace="structure python:field.render(value,request)" />\n
</td>\n
</tr>\n
<tr tal:condition="python: field_errors.has_key(field.id)">\n
<td>\n <td>\n
<table>\n
<tr tal:condition="request/dialog_category | nothing">\n
<td i18n:translate="" i18n:domain="ui">Search Type:</td>\n
<td valign="middle" align="right" nowrap\n
tal:define="dialog_category request/dialog_category;\n
actions python:filtered_actions[dialog_category]">\n
<input type="hidden" name="dialog_category" value="dialog_category"\n
tal:attributes="value dialog_category" />\n
<select name="dialog_select" size="1"\n
tal:attributes="onChange string:submitAction(this.form, \'${here/absolute_url}/Base_doDialog\')">\n
<span tal:repeat="action actions">\n
<option value="1" tal:content="action/name"\n
tal:condition="python: action[\'url\'].find(form.id) < 0"\n
i18n:translate="" i18n:domain="ui"\n
tal:attributes="value action/url"></option>\n
<option value="1" tal:content="action/name"\n
tal:condition="python: action[\'url\'].find(form.id) >= 0"\n
i18n:translate="" i18n:domain="ui"\n
tal:attributes="value action/url"\n
selected></option>\n
</span>\n
</select>\n
</td>\n
<td valign="bottom" align="left" nowrap> &nbsp;\n
<input type="image" src="/images/erp5_html_style/images/exec16.png" title="Action"\n
i18n:attributes="title" i18n:domain="ui"\n
alt="Action" name="Base_doDialog:method" /> &nbsp;\n
</td>\n
</tr>\n
</table>\n
</td>\n </td>\n
<td tal:content="python: field_errors[field.id].error_text"\n <td valign="top" tal:condition="python: len(groups)>1"></td>\n
i18n:translate="" i18n:domain="ui"\n
class="error">\n
</td>\n
</tr>\n </tr>\n
</span>\n
</table>\n
</td>\n
<td valign="top" tal:condition="python: len(groups)>1">\n
<table>\n
<span tal:repeat="field python:form.get_fields_in_group(groups[1])">\n
<tr>\n <tr>\n
<td tal:content="structure field/title"\n <td valign="top">\n
tal:condition="python: field_errors.has_key(field.id)\n <table>\n
and not field.is_required()"\n <span tal:repeat="field python:form.get_fields_in_group(groups[0])">\n
i18n:translate="" i18n:domain="ui"\n <tr>\n
class="error">\n <td tal:content="structure field/title"\n
</td>\n tal:condition="python: field_errors.has_key(field.id)\n
<td tal:content="structure field/title"\n and not field.is_required()"\n
tal:condition="python: (not field_errors.has_key(field.id))\n i18n:translate="" i18n:domain="ui"\n
and not field.is_required()"\n class="error">\n
i18n:translate="" i18n:domain="ui"\n </td>\n
>\n <td tal:content="structure field/title"\n
tal:condition="python: (not field_errors.has_key(field.id))\n
and not field.is_required()"\n
i18n:translate="" i18n:domain="ui">\n
</td>\n
<td tal:content="structure field/title"\n
tal:condition="python: field_errors.has_key(field.id)\n
and field.is_required()"\n
i18n:translate="" i18n:domain="ui"\n
class="reqerror">\n
</td>\n
<td tal:content="structure field/title"\n
tal:condition="python: (not field_errors.has_key(field.id))\n
and field.is_required()"\n
i18n:translate="" i18n:domain="ui"\n
class="required">\n
</td>\n
<td tal:define="value python:request.get(field.id,None)">\n
<span tal:replace="structure python:field.render(value,request)" />\n
</td>\n
</tr>\n
<tr tal:condition="python: field_errors.has_key(field.id)">\n
<td>\n
</td>\n
<td tal:content="python: field_errors[field.id].error_text"\n
i18n:translate="" i18n:domain="ui"\n
class="error">\n
</td>\n
</tr>\n
</span>\n
</table>\n
</td>\n </td>\n
<td tal:content="structure field/title"\n <td valign="top" tal:condition="python: len(groups)>1">\n
tal:condition="python: field_errors.has_key(field.id)\n <table>\n
and field.is_required()"\n <span tal:repeat="field python:form.get_fields_in_group(groups[1])">\n
i18n:translate="" i18n:domain="ui"\n <tr>\n
class="reqerror">\n <td tal:content="structure field/title"\n
</td>\n tal:condition="python: field_errors.has_key(field.id)\n
<td tal:content="structure field/title"\n and not field.is_required()"\n
tal:condition="python: (not field_errors.has_key(field.id))\n i18n:translate="" i18n:domain="ui"\n
and field.is_required()"\n class="error">\n
i18n:translate="" i18n:domain="ui"\n </td>\n
class="required">\n <td tal:content="structure field/title"\n
</td>\n tal:condition="python: (not field_errors.has_key(field.id))\n
<td tal:define="value python:request.get(field.id,None)">\n and not field.is_required()"\n
<span tal:replace="structure python:field.render(value,request)" />\n i18n:translate="" i18n:domain="ui"\n
</td>\n >\n
</tr>\n </td>\n
<tr tal:condition="python: field_errors.has_key(field.id)">\n <td tal:content="structure field/title"\n
tal:condition="python: field_errors.has_key(field.id)\n
and field.is_required()"\n
i18n:translate="" i18n:domain="ui"\n
class="reqerror">\n
</td>\n
<td tal:content="structure field/title"\n
tal:condition="python: (not field_errors.has_key(field.id))\n
and field.is_required()"\n
i18n:translate="" i18n:domain="ui"\n
class="required">\n
</td>\n
<td tal:define="value python:request.get(field.id,None)">\n
<span tal:replace="structure python:field.render(value,request)" />\n
</td>\n
</tr>\n
<tr tal:condition="python: field_errors.has_key(field.id)">\n
<td>\n
</td>\n
<td tal:content="python: field_errors[field.id].error_text"\n
i18n:translate="" i18n:domain="ui"\n
class="error">\n
</td>\n
</tr>\n
</span>\n
</table>\n
</td></tr>\n
</table>\n
<table class="Border" tal:condition="python: len(groups)>2 and\n
len(form.get_fields_in_group(groups[2])) > 0">\n
<td>\n <td>\n
<table width="100%">\n
<span tal:repeat="field python:form.get_fields_in_group(groups[2])">\n
<tr>\n
<td tal:content="structure field/title"\n
tal:condition="python: field_errors.has_key(field.id)\n
and not field.is_required()"\n
i18n:translate="" i18n:domain="ui"\n
class="error">\n
</td>\n
<td tal:content="structure field/title"\n
tal:condition="python: (not field_errors.has_key(field.id))\n
and not field.is_required()"\n
i18n:translate="" i18n:domain="ui"\n
>\n
</td>\n
<td tal:content="structure field/title"\n
tal:condition="python: field_errors.has_key(field.id)\n
and field.is_required()"\n
i18n:translate="" i18n:domain="ui"\n
class="reqerror">\n
</td>\n
<td tal:content="structure field/title"\n
tal:condition="python: (not field_errors.has_key(field.id))\n
and field.is_required()"\n
i18n:translate="" i18n:domain="ui"\n
class="required">\n
</td>\n
</tr>\n
<tr>\n
<td tal:define="value python:request.get(field.id,None)">\n
<span tal:replace="structure python:field.render(value,request)"/>\n
</td>\n
</tr>\n
<tr tal:condition="python: field_errors.has_key(field.id)">\n
<td tal:content="python: field_errors[field.id].error_text"\n
i18n:translate="" i18n:domain="ui"\n
class="error">\n
</td>\n
</tr>\n
</span>\n
</table>\n
</td>\n </td>\n
<td tal:content="python: field_errors[field.id].error_text"\n </table>\n
i18n:translate="" i18n:domain="ui"\n <span tal:condition="python: len(groups)>3">\n
class="error">\n <span tal:repeat="field python:form.get_fields_in_group(groups[3])">\n
</td>\n <span tal:define="value python:request.get(field.id,None)"\n
</tr>\n tal:replace="structure python:field.render(value,request)" />\n
</span>\n </span>\n
</table>\n
</td></tr>\n
</table>\n
\n
<table class="Border" tal:condition="python: len(groups)>2 and\n
len(form.get_fields_in_group(groups[2])) > 0">\n
<td>\n
<table width="100%">\n
<span tal:repeat="field python:form.get_fields_in_group(groups[2])">\n
<tr>\n
<td tal:content="structure field/title"\n
tal:condition="python: field_errors.has_key(field.id)\n
and not field.is_required()"\n
i18n:translate="" i18n:domain="ui"\n
class="error">\n
</td>\n
<td tal:content="structure field/title"\n
tal:condition="python: (not field_errors.has_key(field.id))\n
and not field.is_required()"\n
i18n:translate="" i18n:domain="ui"\n
>\n
</td>\n
<td tal:content="structure field/title"\n
tal:condition="python: field_errors.has_key(field.id)\n
and field.is_required()"\n
i18n:translate="" i18n:domain="ui"\n
class="reqerror">\n
</td>\n
<td tal:content="structure field/title"\n
tal:condition="python: (not field_errors.has_key(field.id))\n
and field.is_required()"\n
i18n:translate="" i18n:domain="ui"\n
class="required">\n
</td>\n
</tr>\n
<tr>\n
<td tal:define="value python:request.get(field.id,None)">\n
<span tal:replace="structure python:field.render(value,request)"/>\n
</td>\n
</tr>\n
<tr tal:condition="python: field_errors.has_key(field.id)">\n
<td tal:content="python: field_errors[field.id].error_text"\n
i18n:translate="" i18n:domain="ui"\n
class="error">\n
</td>\n
</tr>\n
</span>\n </span>\n
</table>\n </span>\n
</td>\n </div>\n
</table>\n <!-- <pre tal:content="context/REQUEST/text"></pre>-->\n
\n </tal:block>\n
<span tal:condition="python: len(groups)>3">\n </tal:block>\n
<span tal:repeat="field python:form.get_fields_in_group(groups[3])">\n </tal:block>
<span tal:define="value python:request.get(field.id,None)"\n
tal:replace="structure python:field.render(value,request)" />\n
</span>\n
</span>\n
\n
\n
</span>\n
\n
</div>\n
</div>\n
</body>\n
</html>\n
]]></string> </value> ]]></string> </value>
</item> </item>
......
...@@ -65,96 +65,77 @@ ...@@ -65,96 +65,77 @@
<key> <string>_text</string> </key> <key> <string>_text</string> </key>
<value> <string encoding="cdata"><![CDATA[ <value> <string encoding="cdata"><![CDATA[
<html xmlns:tal="http://xml.zope.org/namespaces/tal"\n <tal:block tal:define="layout_form_id here/getApplicableLayout | nothing;\n
xmlns:metal="http://xml.zope.org/namespaces/metal"\n ignore_layout request/ignore_layout | nothing;\n
metal:use-macro="here/main_template/macros/master">\n editable_mode request/editable_mode | nothing;\n
<body>\n layout_form python:(not layout_form_id or ignore_layout) or getattr(here, layout_form_id, None);\n
<div metal:fill-slot="main" i18n:domain="ui">\n layout_id layout_form/pt | string:main_template;"\n
<div class="Desktop">\n i18n:domain="ui">\n
<span tal:condition="python: request.get(\'came_from\', None) is not None">\n <tal:block metal:use-macro="python:getattr(here,layout_id).macros[\'master\']">\n
<h1 class="Desktop" i18n:translate="">You don\'t have enough permissions to access this page</h1>\n <tal:block metal:fill-slot="main">\n
<span i18n:translate=""> You can log in with another user name or \n <div class="Desktop">\n
</span>\n <span tal:condition="python: request.get(\'came_from\', None) is not None">\n
<a href="javascript:history.back();" \n <h1 class="Desktop" i18n:translate="">You don\'t have enough permissions to access this page</h1>\n
i18n:translate="">go back.</a>\n <span i18n:translate="">You can log in with another user name or</span>\n
<br/> <br/>\n <a href="javascript:history.back();" i18n:translate="">go back.</a>\n
</span>\n <br/> <br/>\n
<span tal:condition="python: request.get(\'came_from\', None) is None">\n </span>\n
<h1 class="Desktop" i18n:translate="">Log in</h1>\n <span tal:condition="python: request.get(\'came_from\', None) is None">\n
</span>\n <h1 class="Desktop" i18n:translate="">Log in</h1>\n
</span>\n
<!-- <form action="" method="post"\n <!-- <form action="" method="post"\n
tal:attributes="action string:${here/portal_url}/logged_in"\n tal:attributes="action string:${here/portal_url}/logged_in">-->\n
>\n
-->\n
<!-- ****** Enable the automatic redirect ***** -->\n <!-- ****** Enable the automatic redirect ***** -->\n
<span tal:condition="exists: request/came_from">\n <span tal:condition="exists: request/came_from">\n
<input type="hidden" name="came_from" value=""\n <input type="hidden" name="came_from" value=""\n
tal:attributes="value request/came_from" />\n tal:attributes="value request/came_from" />\n
</span>\n </span>\n
<!-- ****** Enable the automatic redirect ***** -->\n <!-- ****** Enable the automatic redirect ***** -->\n
\n <table class="FormLayout">\n
<table class="FormLayout">\n <tr>\n
<tr>\n <td align="left" valign="top">\n
<td align="left" valign="top">\n <strong i18n:translate="">Name</strong>\n
<strong i18n:translate="">Name</strong>\n </td>\n
</td>\n <td align="left" valign="top">\n
<td align="left" valign="top">\n <input type="text" name="__ac_name" size="20" value=""\n
<input type="text" name="__ac_name" size="20" value=""\n tal:attributes="value python: request.get(\'__ac_name\') or \'\'" />\n
tal:attributes="value python: request.get(\'__ac_name\') or \'\'" />\n <script>setFocus("__ac_name");</script>\n
<script>setFocus("__ac_name");</script>\n </td>\n
</td>\n </tr>\n
</tr>\n <tr>\n
<tr>\n <td align="left" valign="top">\n
<td align="left" valign="top">\n <strong i18n:translate="">Password</strong>\n
<strong i18n:translate="">Password</strong>\n </td>\n
</td>\n <td align="left" valign="top">\n
<td align="left" valign="top">\n <input type="password" name="__ac_password" size="20" />\n
<input type="password" name="__ac_password" size="20" />\n </td>\n
</td>\n </tr>\n
</tr>\n <tr valign="top" align="left">\n
\n <td></td>\n
<tr valign="top" align="left">\n <td>\n
<td></td>\n <input type="checkbox" name="__ac_persistent" value="1" checked\n
<td><input type="checkbox" name="__ac_persistent" value="1" checked\n id="cb_remember" />\n
id="cb_remember" />\n <label for="cb_remember" i18n:translate="">Remember my name.</label>\n
<label for="cb_remember" i18n:translate="">Remember my name.</label>\n </td>\n
</td></tr>\n </tr>\n
\n <tr>\n
<tr>\n <td align="left" valign="top"></td>\n
<td align="left" valign="top">\n <td align="left" valign="top">\n
</td>\n <input type="submit" name="submit" value=" Login "\n
<td align="left" valign="top">\n i18n:attributes="value" />\n
<input type="submit" name="submit" value=" Login "\n </td>\n
i18n:attributes="value" />\n </tr>\n
</td>\n </table>\n
</tr>\n
\n
</table>\n
\n
<!-- </form> -->\n <!-- </form> -->\n
\n <p><a tal:attributes="href string:${here/portal_url}/mail_password_form"\n
<p><a href=""\n i18n:translate="">I forgot my password!</a></p>\n
tal:attributes="href string:${here/portal_url}/mail_password_form"\n <p i18n:translate="">Having trouble logging in? Make sure to enable cookies in your web browser.</p>\n
i18n:translate=""\n <p i18n:translate="">Don\'t forget to logout or exit your browser when you\'re done.</p>\n
>I forgot my password!</a>\n <p i18n:translate="">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
</p>\n </div>\n
\n </tal:block>\n
<p i18n:translate="">Having trouble logging in? Make sure to enable cookies in\n </tal:block>\n
your web browser.\n </tal:block>\n
</p>\n
\n
<p i18n:translate="">Don\'t forget to logout or exit your browser when you\'re\n
done.\n
</p>\n
\n
<p i18n:translate="">Setting the \'Remember my name\' option will set a cookie\n
with your username, so that when you next log in, your user name will\n
already be filled in for you.\n
</p>\n
</div>\n
</div>\n
</body>\n
</html>\n
]]></string> </value> ]]></string> </value>
......
...@@ -48,11 +48,6 @@ ...@@ -48,11 +48,6 @@
<key> <string>_text</string> </key> <key> <string>_text</string> </key>
<value> <string encoding="cdata"><![CDATA[ <value> <string encoding="cdata"><![CDATA[
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"\n
"DTD/xhtml1-strict.dtd">\n
<?xml-stylesheet href="erp5.css" rel="stylesheet" type="text/css"?>\n
\n
<span tal:replace="nothing">\n
<!--\n <!--\n
Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved.\n Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved.\n
Jean-Paul Smets <jp@nexedi.com>\n Jean-Paul Smets <jp@nexedi.com>\n
...@@ -72,207 +67,180 @@ You should have received a copy of the GNU General Public License\n ...@@ -72,207 +67,180 @@ 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 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 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n
-->\n -->\n
</span>\n <tal:block tal:define="layout_form_id here/getApplicableLayout | nothing;\n
\n ignore_layout request/ignore_layout | nothing;\n
<html xmlns="http://www.w3.org/1999/xhtml" lang="en"\n editable_mode request/editable_mode | nothing;\n
xml:lang="en"\n global layout_form python:(not layout_form_id or ignore_layout) or getattr(here, layout_form_id, None);\n
xmlns:tal="http://xml.zope.org/namespaces/tal"\n default_layout string:view_master;\n
xmlns:metal="http://xml.zope.org/namespaces/metal"\n layout_id layout_form/pt | default_layout;">\n
xmlns:i18n="http://xml.zope.org/namespaces/i18n"\n <tal:block metal:use-macro="python:getattr(here,layout_id).macros[\'master\']">\n
metal:use-macro="here/view_master/macros/master">\n <tal:block metal:fill-slot="main">\n
\n <div class="Main">\n
<head tal:define="dummy python:request.RESPONSE.setHeader(\'Content-Type\', \'text/html;; charset=utf-8\')">\n <span tal:define="groups python: form.get_groups(include_empty=1);\n
<meta name="description" content="Generated by report_view" />\n field_errors python: request.get(\'field_errors\',{});\n
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />\n dummy python: request.set(\'here\',here)">\n
<title tal:content="template/title_or_id"\n <table class="Border" width="100%" tal:condition="python:len(form.get_fields_in_group(groups[0])) > 0\n
i18n:translate="" i18n:domain="ui">\n or len(form.get_fields_in_group(groups[1])) > 0">\n
The title\n <tr>\n
</title>\n <td valign="top">\n
<link href="erp5.css" rel="stylesheet" type="text/css" />\n <table>\n
</head>\n <span tal:repeat="field python:form.get_fields_in_group(groups[0])">\n
\n <tr tal:condition="python:field.meta_type != \'HiddenStringField\'">\n
<body><div metal:fill-slot="main"> \n <td tal:content="structure field/title"\n
<div class="Main">\n tal:condition="python: field_errors.has_key(field.id)\n
\n and not field.is_required()"\n
<span tal:define="groups python: form.get_groups(include_empty=1);\n i18n:translate="" i18n:domain="ui"\n
field_errors python: request.get(\'field_errors\',{});\n class="error">\n
dummy python: request.set(\'here\',here)">\n </td>\n
<table class="Border" width="100%" tal:condition="python:len(form.get_fields_in_group(groups[0])) > 0\n <td tal:content="structure field/title"\n
or len(form.get_fields_in_group(groups[1])) > 0">\n tal:condition="python: (not field_errors.has_key(field.id))\n
<td valign="top">\n and not field.is_required()"\n
<table>\n i18n:translate="" i18n:domain="ui">\n
<span tal:repeat="field python:form.get_fields_in_group(groups[0])">\n </td>\n
<tr tal:condition="python:field.meta_type != \'HiddenStringField\'">\n <td tal:content="structure field/title"\n
<td tal:content="structure field/title"\n tal:condition="python: field_errors.has_key(field.id)\n
tal:condition="python: field_errors.has_key(field.id)\n and field.is_required()"\n
and not field.is_required()"\n i18n:translate="" i18n:domain="ui"\n
i18n:translate="" i18n:domain="ui"\n class="reqerror">\n
class="error">\n </td>\n
</td>\n <td tal:content="structure field/title"\n
<td tal:content="structure field/title"\n tal:condition="python: (not field_errors.has_key(field.id))\n
tal:condition="python: (not field_errors.has_key(field.id))\n and field.is_required()"\n
and not field.is_required()"\n i18n:translate="" i18n:domain="ui"\n
i18n:translate="" i18n:domain="ui"\n class="required">\n
>\n </td>\n
</td>\n <td tal:define="value python:request.get(field.id,None)">\n
<td tal:content="structure field/title"\n <span tal:replace="structure python:field.render(value,request)" />\n
tal:condition="python: field_errors.has_key(field.id)\n </td>\n
and field.is_required()"\n </tr>\n
i18n:translate="" i18n:domain="ui"\n <tr tal:condition="python: field_errors.has_key(field.id)">\n
class="reqerror">\n <td>\n
</td>\n </td>\n
<td tal:content="structure field/title"\n <td tal:content="python:field_errors[field.id].error_text"\n
tal:condition="python: (not field_errors.has_key(field.id))\n i18n:translate="" i18n:domain="ui"\n
and field.is_required()"\n class="error">\n
i18n:translate="" i18n:domain="ui"\n </td>\n
class="required">\n </tr>\n
</td>\n </span>\n
<td tal:define="value python:request.get(field.id,None)">\n </table>\n
<span tal:replace="structure python:field.render(value,request)" />\n
</td>\n
</tr>\n
<tr tal:condition="python: field_errors.has_key(field.id)">\n
<td>\n
</td>\n
<td tal:content="python:field_errors[field.id].error_text"\n
i18n:translate="" i18n:domain="ui"\n
class="error">\n
</td>\n
</tr>\n
</span>\n
</table>\n
</td>\n
<td valign="top" tal:condition="python: len(groups)>1">\n
<table>\n
<span tal:repeat="field python:form.get_fields_in_group(groups[1])">\n
<tr tal:condition="python:field.meta_type != \'HiddenStringField\'">\n
<td tal:content="structure field/title"\n
tal:condition="python: field_errors.has_key(field.id)\n
and not field.is_required()"\n
i18n:translate="" i18n:domain="ui"\n
class="error">\n
</td>\n
<td tal:content="structure field/title"\n
tal:condition="python: (not field_errors.has_key(field.id))\n
and not field.is_required()"\n
i18n:translate="" i18n:domain="ui"\n
>\n
</td>\n
<td tal:content="structure field/title"\n
tal:condition="python: field_errors.has_key(field.id)\n
and field.is_required()"\n
i18n:translate="" i18n:domain="ui"\n
class="reqerror">\n
</td>\n
<td tal:content="structure field/title"\n
tal:condition="python: (not field_errors.has_key(field.id))\n
and field.is_required()"\n
i18n:translate="" i18n:domain="ui"\n
class="required">\n
</td>\n
<td tal:define="value python:request.get(field.id,None)">\n
<span tal:replace="structure python:field.render(value,request)" />\n
</td>\n
</tr>\n
<tr tal:condition="python: field_errors.has_key(field.id)">\n
<td>\n
</td>\n
<td tal:content="python: field_errors[field.id].error_text"\n
i18n:translate="" i18n:domain="ui"\n
class="error">\n
</td>\n
</tr>\n
</span>\n
</table>\n
</td>\n
</table>\n
\n
<span tal:condition="python: len(groups)>2">\n
<table class="Border" tal:condition="python:len(form.get_fields_in_group(groups[2])) > 0">\n
<td>\n
<table>\n
<span tal:repeat="field python:form.get_fields_in_group(groups[2])">\n
<tr tal:condition="python:field.meta_type != \'HiddenStringField\'">\n
<td tal:content="structure field/title"\n
tal:condition="python: field_errors.has_key(field.id)\n
and not field.is_required()"\n
i18n:translate="" i18n:domain="ui"\n
class="error">\n
</td>\n
<td tal:content="structure field/title"\n
tal:condition="python: (not field_errors.has_key(field.id))\n
and not field.is_required()"\n
i18n:translate="" i18n:domain="ui"\n
>\n
</td>\n
<td tal:content="structure field/title"\n
tal:condition="python: field_errors.has_key(field.id)\n
and field.is_required()"\n
i18n:translate="" i18n:domain="ui"\n
class="reqerror">\n
</td>\n
<td tal:content="structure field/title"\n
tal:condition="python: (not field_errors.has_key(field.id))\n
and field.is_required()"\n
i18n:translate="" i18n:domain="ui"\n
class="required">\n
</td>\n
<td tal:define="value python:request.get(field.id,None)">\n
<span tal:replace="structure python:field.render(value,request)"/>\n
</td>\n </td>\n
</tr>\n <td valign="top" tal:condition="python: len(groups)>1">\n
<tr tal:condition="python: field_errors.has_key(field.id)">\n <table>\n
<td tal:content="python: field_errors[field.id].error_text"\n <span tal:repeat="field python:form.get_fields_in_group(groups[1])">\n
i18n:translate="" i18n:domain="ui"\n <tr tal:condition="python:field.meta_type != \'HiddenStringField\'">\n
class="error">\n <td tal:content="structure field/title"\n
tal:condition="python: field_errors.has_key(field.id)\n
and not field.is_required()"\n
i18n:translate="" i18n:domain="ui"\n
class="error">\n
</td>\n
<td tal:content="structure field/title"\n
tal:condition="python: (not field_errors.has_key(field.id))\n
and not field.is_required()"\n
i18n:translate="" i18n:domain="ui">\n
</td>\n
<td tal:content="structure field/title"\n
tal:condition="python: field_errors.has_key(field.id)\n
and field.is_required()"\n
i18n:translate="" i18n:domain="ui"\n
class="reqerror">\n
</td>\n
<td tal:content="structure field/title"\n
tal:condition="python: (not field_errors.has_key(field.id))\n
and field.is_required()"\n
i18n:translate="" i18n:domain="ui"\n
class="required">\n
</td>\n
<td tal:define="value python:request.get(field.id,None)">\n
<tal:block tal:replace="structure python:field.render(value,request)" />\n
</td>\n
</tr>\n
<tr tal:condition="python: field_errors.has_key(field.id)">\n
<td>\n
</td>\n
<td tal:content="python: field_errors[field.id].error_text"\n
i18n:translate="" i18n:domain="ui"\n
class="error">\n
</td>\n
</tr>\n
</span>\n
</table>\n
</td>\n </td>\n
</tr>\n </tr>\n
</table>\n
<span tal:condition="python: len(groups)>2">\n
<table class="Border" tal:condition="python:len(form.get_fields_in_group(groups[2])) > 0">\n
<td>\n
<table>\n
<span tal:repeat="field python:form.get_fields_in_group(groups[2])">\n
<tr tal:condition="python:field.meta_type != \'HiddenStringField\'">\n
<td tal:content="structure field/title"\n
tal:condition="python: field_errors.has_key(field.id)\n
and not field.is_required()"\n
i18n:translate="" i18n:domain="ui"\n
class="error">\n
</td>\n
<td tal:content="structure field/title"\n
tal:condition="python: (not field_errors.has_key(field.id))\n
and not field.is_required()"\n
i18n:translate="" i18n:domain="ui">\n
</td>\n
<td tal:content="structure field/title"\n
tal:condition="python: field_errors.has_key(field.id)\n
and field.is_required()"\n
i18n:translate="" i18n:domain="ui"\n
class="reqerror">\n
</td>\n
<td tal:content="structure field/title"\n
tal:condition="python: (not field_errors.has_key(field.id))\n
and field.is_required()"\n
i18n:translate="" i18n:domain="ui"\n
class="required">\n
</td>\n
<td tal:define="value python:request.get(field.id,None)">\n
<tal:block tal:replace="structure python:field.render(value,request)"/>\n
</td>\n
</tr>\n
<tr tal:condition="python: field_errors.has_key(field.id)">\n
<td tal:content="python: field_errors[field.id].error_text"\n
i18n:translate="" i18n:domain="ui"\n
class="error">\n
</td>\n
</tr>\n
</span>\n
</table>\n
</td>\n
</table>\n
</span>\n </span>\n
</table>\n <span tal:condition="python: len(groups)>3">\n
</td>\n <span tal:repeat="field python:form.get_fields_in_group(groups[3])">\n
</table>\n <span tal:define="value python:request.get(field.id,None)"\n
</span>\n tal:replace="structure python:field.render(value,request)" />\n
\n </span>\n
<span tal:condition="python: len(groups)>3">\n </span>\n
<span tal:repeat="field python:form.get_fields_in_group(groups[3])">\n </span>\n
<span tal:define="value python:request.get(field.id,None)"\n <tal:block tal:define="portal_object here/portal_url/getPortalObject">\n
tal:replace="structure python:field.render(value,request)" />\n <tal:block tal:repeat="report_item python:report_method()">\n
</span>\n <tal:block tal:define="here python:report_item.getObject(portal_object);\n
</span>\n dummy python:report_item.pushReport(portal_object)">\n
\n <tal:block tal:condition="report_item/getFormId">\n
\n <tal:block tal:define="form python:getattr(here,report_item.getFormId())" >\n
</span>\n <tal:block tal:condition="python:form.pt == \'form_view\'">\n
\n <tal:block metal:use-macro="form/form_view/macros/form_layout"/>\n
<tal:block tal:define="portal_object here/portal_url/getPortalObject">\n </tal:block>\n
<tal:block tal:repeat="report_item python:report_method()">\n <tal:block tal:condition="python:form.pt == \'form_list\'">\n
<tal:block tal:define="here python:report_item.getObject(portal_object);\n <tal:block metal:use-macro="form/form_list/macros/form_layout"/>\n
dummy python:report_item.pushReport(portal_object)">\n </tal:block>\n
\n </tal:block>\n
<tal:block tal:condition="report_item/getFormId">\n </tal:block>\n
<tal:block tal:define="form python:getattr(here,report_item.getFormId())" >\n <tal:block tal:define="dummy python:report_item.popReport(portal_object)"/>\n
<tal:block tal:condition="python:form.pt == \'form_view\'">\n </tal:block>\n
<tal:block metal:use-macro="form/form_view/macros/form_layout"/>\n </tal:block>\n
</tal:block>\n
<tal:block tal:condition="python:form.pt == \'form_list\'">\n
<tal:block metal:use-macro="form/form_list/macros/form_layout"/>\n
</tal:block>\n </tal:block>\n
</tal:block>\n </div>\n
</tal:block>\n </tal:block>\n
\n
<tal:block tal:define="dummy python:report_item.popReport(portal_object)"/>\n
</tal:block>\n
</tal:block>\n
</tal:block>\n </tal:block>\n
\n </tal:block>
\n
\n
\n
\n
</div>\n
</div>\n
</body>\n
</html>\n
]]></string> </value> ]]></string> </value>
</item> </item>
......
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