Commit c1a48600 authored by Vincent Pelletier's avatar Vincent Pelletier

Add an error message when login fails.

Fix various compatibility bugs with old browsers.
Remove 2 unused images.
Cleaner way to draw tabs.
Use h6 instead of hr tag as a "clear: both" element.

git-svn-id: https://svn.erp5.org/repos/public/erp5/trunk@8184 20353a03-c40f-0410-a6d1-a30d3c3de9de
parent c7a3f918
......@@ -293,7 +293,7 @@ XXX: Folder_filter accesses selection directly\n
</a>\n
</span>\n
</span>\n
<hr class="clear" />\n
<h6 class="clear">&nbsp;</h6>\n
</tal:block>
]]></string> </value>
......
......@@ -78,8 +78,8 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n
<tal:block metal:fill-slot="main">\n
<div class="list_dialog">\n
<div class="dialog_box">\n
<tal:block tal:define="actions python: actions.get(dialog_category, [])">\n
<div tal:condition="python: len(actions) > 1"\n
<tal:block tal:define="dialog_actions python: actions.get(dialog_category, [])">\n
<div tal:condition="python: len(dialog_actions) > 1"\n
class="dialog_selector">\n
<label for="dialog_selector"\n
tal:content="python:{\'object_exchange\':\'Exchange Select:\',\n
......@@ -90,7 +90,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n
i18n:translate="" i18n:domain="ui"></label>\n
<select name="dialog_select" id="dialog_selector"\n
tal:attributes="onChange string:submitAction(this.form,\'${url}/Base_doDialog\')">\n
<tal:block tal:repeat="action actions">\n
<tal:block tal:repeat="action dialog_actions">\n
<option tal:attributes="value action/url;\n
selected python: action is current_action and \'selected\' or None"\n
tal:content="action/name"\n
......@@ -106,7 +106,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n
</tal:block>\n
<div class="content">\n
<tal:block metal:define-slot="main" />\n
<hr class="clear" />\n
<h6 class="clear">&nbsp;</h6>\n
</div>\n
</div>\n
</div>\n
......
......@@ -418,8 +418,8 @@ a:hover {\n
text-decoration: underline;\n
}\n
\n
hr.clear {\n
border: 0;\n
h6.clear {\n
height: 0;\n
margin: 0;\n
padding: 0;\n
clear: both;\n
......@@ -481,13 +481,6 @@ div.index_html table {\n
height: 16px;\n
}\n
\n
\n
/*#main_bar button .description,\n
#context_bar button .description,\n
.document .actions button.save .description {\n
top: 1em;\n
}*/\n
\n
.content .field {\n
position: relative;\n
}\n
......@@ -535,11 +528,10 @@ div.index_html table {\n
\n
.content .field {\n
padding-bottom: 0.2em;\n
/* clear: left; */\n
}\n
\n
.content .field label {\n
width: 12em;\n
width: 30%;\n
}\n
\n
.content .field label,\n
......@@ -559,7 +551,7 @@ div.index_html table {\n
}\n
\n
.login .submit {\n
margin-left: 12em;\n
margin-left: 15%;\n
}\n
\n
/*.login label {\n
......@@ -794,6 +786,17 @@ div.index_html table {\n
background-image: url(\'<dtml-var expr="portal_url.getPortalPath()">/images/exec16.png\');\n
}\n
\n
.document .actions {\n
position: relative;\n
float: left;\n
width: 100%;\n
margin: 0;\n
padding: 0;\n
border-bottom-width: 1px;\n
border-bottom-style: solid;\n
border-bottom-color: <dtml-var document_border_color>;\n
}\n
\n
.document .actions button.save {\n
float: right;\n
}\n
......@@ -807,24 +810,26 @@ div.index_html table {\n
.document .actions ul {\n
float: left;\n
list-style: none;\n
margin-top: 16px;\n
margin-bottom: -1px;\n
padding: 0;\n
margin: 0;\n
position: absolute;\n
bottom: -1px;\n
}\n
\n
.document .actions li {\n
float: left;\n
color: inherit;\n
background-color: <dtml-var document_background_color>;\n
background: url(\'<dtml-var expr="portal_url.getPortalPath()">/images/tab_right.png\') top right no-repeat;\n
background: url(\'<dtml-var expr="portal_url.getPortalPath()">/images/tab_left.png\') top left no-repeat;\n
margin: 0;\n
padding: 0 0 0 10px;\n
}\n
\n
.document .actions li a {\n
display: block;\n
padding: 3px 15px 4px;\n
padding: 5px 15px 4px 5px;\n
color: inherit;\n
background-color: inherit;\n
background: url(\'<dtml-var expr="portal_url.getPortalPath()">/images/tab_left.png\') top left no-repeat;\n
background: url(\'<dtml-var expr="portal_url.getPortalPath()">/images/tab_right.png\') top right no-repeat;\n
}\n
\n
.document .actions li.selected a {\n
......@@ -841,6 +846,7 @@ div.index_html table {\n
border-width: 1px;\n
border-style: solid;\n
border-color: <dtml-var document_border_color>;\n
border-top: 0px none;\n
color: inherit;\n
background-color: <dtml-var document_background_color>;\n
padding: 5px;\n
......@@ -867,6 +873,7 @@ div.index_html table {\n
}\n
\n
.ListSummary table {\n
border-color: <dtml-var document_border_color>;\n
border-style: solid;\n
border-top-width: 1px;\n
border-right-width: 1px;\n
......
......@@ -97,7 +97,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n
class="error"\n
tal:content="python: field_errors[field.id].error_text"\n
i18n:translate="" i18n:domain="ui"></span>\n
<hr class="clear" />\n
<h6 class="clear">&nbsp;</h6>\n
</div>\n
</tal:block>\n
</tal:block>\n
......
......@@ -116,7 +116,7 @@ Groups names becomes "left_group", "right_group", "left1_group", "right1_group",
<tal:block metal:use-macro="here/field_render/macros/field_render" />\n
</tal:block>\n
</div>\n
<hr class="clear" />\n
<h6 class="clear">&nbsp;</h6>\n
</div>\n
<div tal:condition="python: len(center_group) > 0"\n
class="center">\n
......@@ -161,7 +161,7 @@ Groups names becomes "left_group", "right_group", "left1_group", "right1_group",
<tal:block metal:use-macro="here/field_render/macros/field_render" />\n
</tal:block>\n
</div>\n
<hr class="clear" />\n
<h6 class="clear">&nbsp;</h6>\n
</div>\n
<div tal:condition="python: len(center_left_group) > 0 or len(center_right_group) > 0"\n
class="top_group">\n
......@@ -177,7 +177,7 @@ Groups names becomes "left_group", "right_group", "left1_group", "right1_group",
<tal:block metal:use-macro="here/field_render/macros/field_render" />\n
</tal:block>\n
</div>\n
<hr class="clear" />\n
<h6 class="clear">&nbsp;</h6>\n
</div>\n
<div tal:condition="python: len(bottom_group) > 0"\n
class="bottom">\n
......
......@@ -28,11 +28,12 @@
</item>
<item>
<key> <string>data</string> </key>
<value> <string encoding="base64">iVBORw0KGgoAAAANSUhEUgAAAAoAAADICAYAAADREnACAAAA3ElEQVRo3u3OoQrCYADE8XP7bMPg
DJNhGIM9gNUiFotNi8XkK/hS5mWLwYFNGSzIGILKGIapi06Tom4ys9w//+CutN77N+TkuB5WfoBt
GCG+JCh9Qsf1YC+W0GsqmpYJo66hWlEgXtF0Nsdmd8Co24HV0N8WxCs6ns6YDPsoCzlzRXrMbXYH
jHvdXPSE9mKJQbv1FQGA5Lge9Jqa+ZSBKz9A0zJRlLQNIxh1rRjGlwTVilIMr2kKIcvFED9GSEhI
SEhISEhISEhISEhISEhISEhISEhISEhISPj/8A7Kjj3+13/mWwAAAABJRU5ErkJggg==</string> </value>
<value> <string encoding="base64">iVBORw0KGgoAAAANSUhEUgAAAAoAAADICAYAAADREnACAAAABmJLR0QAAAAAAAD5Q7t/AAAACXBI
WXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH1gYbBAo5ogi48gAAAOBJREFUaN7tzq0KwmAYxfGzvbMN
gxoUNchgFzCDYQabBqOX4HV4JSbBOxBW1hdsy2MMQUTE4MdAg74mB36+Zjn//OM5jyalxLvGvifD
OMFivcHumEJ7hmPfk7NgjmqpCMe20KiUUcibj3A0nchoucKg48KuVx8OZHA0ncjt/oBhv4ucIV5e
0e9z0XL1EWVwFswx6LgfEQCIWrsl09MZvVYT39LDOIFjW1ClL9YbNCplNdwdUxTyphperlcYQqgh
foyQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQ8P/hDZ46R41Ult0JAAAAAElFTkSuQmCC</string> </value>
</item>
<item>
<key> <string>height</string> </key>
......@@ -44,7 +45,7 @@ SEhISEhISEhISEhISEhISEhISEhISEhISPj/8A7Kjj3+13/mWwAAAABJRU5ErkJggg==</string> </
</item>
<item>
<key> <string>size</string> </key>
<value> <int>277</int> </value>
<value> <int>339</int> </value>
</item>
<item>
<key> <string>title</string> </key>
......
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<tuple>
<tuple>
<string>OFS.Image</string>
<string>Image</string>
</tuple>
<none/>
</tuple>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>__ac_local_roles__</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>__name__</string> </key>
<value> <string>tab_top_left.png</string> </value>
</item>
<item>
<key> <string>content_type</string> </key>
<value> <string>image/png</string> </value>
</item>
<item>
<key> <string>data</string> </key>
<value> <string encoding="base64">iVBORw0KGgoAAAANSUhEUgAAAlgAAAALCAMAAACUPQOeAAAAS1BMVEXZ5eXa5ubY5OTT5t7W4+O9
0dG80dGvx8esxMSrxMSpw8OlwMCkv7+Lra2LrKyIq6uHqqqGqalumJhplJRnkpJkkZFlkZFjkJA9
dHRr8Et0AAAAAXRSTlMAQObYZgAAAF5JREFUWMPt0skRgCAQBVE8uOEC6KDkH6mWpvDn1i+Erg7d
L8bcAJnwbbWbWQ6AzrtVf5WJEFCPNRwrGaAfqy5UgH6srRABDmPdIxGgN580gMdYlQZwkBIN4KCR
AA4eF9Q5CHkOGlEAAAAASUVORK5CYII=</string> </value>
</item>
<item>
<key> <string>height</string> </key>
<value> <int>11</int> </value>
</item>
<item>
<key> <string>precondition</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>size</string> </key>
<value> <int>251</int> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>width</string> </key>
<value> <int>600</int> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<tuple>
<tuple>
<string>OFS.Image</string>
<string>Image</string>
</tuple>
<none/>
</tuple>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>__ac_local_roles__</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>__name__</string> </key>
<value> <string>tab_top_right.png</string> </value>
</item>
<item>
<key> <string>content_type</string> </key>
<value> <string>image/png</string> </value>
</item>
<item>
<key> <string>data</string> </key>
<value> <string encoding="base64">iVBORw0KGgoAAAANSUhEUgAAAAsAAAALCAMAAACecocUAAAASFBMVEXY5OTZ5eXT5t7W4+O90dG8
0dGvx8esxMSrxMSpw8OlwMCkv7+Lra2LrKyIq6uHqqqGqalumJhplJRnkpJkkZFlkZFjkJA9dHQz
Vn5ZAAAAAXRSTlMAQObYZgAAAD5JREFUCNdNxlcOgCAURcFjIioWig9k/zvVxHKdr6FF77sbRDPb
nl/GVPv3sGT3nbnopFUfDp190svvIei0E4egAbPxjz8CAAAAAElFTkSuQmCC</string> </value>
</item>
<item>
<key> <string>height</string> </key>
<value> <int>11</int> </value>
</item>
<item>
<key> <string>precondition</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>size</string> </key>
<value> <int>216</int> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>width</string> </key>
<value> <int>11</int> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<tuple>
<tuple>
<string>Products.PageTemplates.ZopePageTemplate</string>
<string>ZopePageTemplate</string>
</tuple>
<none/>
</tuple>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>__ac_local_roles__</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>_bind_names</string> </key>
<value>
<object>
<klass>
<global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
</klass>
<tuple/>
<state>
<dictionary>
<item>
<key> <string>_asgns</string> </key>
<value>
<dictionary>
<item>
<key> <string>name_subpath</string> </key>
<value> <string>traverse_subpath</string> </value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key> <string>_text</string> </key>
<value> <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.portal_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>\n
<tal:block tal:condition="not: isAnon">\n
<tal:block tal:define="came_from python: request.get(\'came_from\') or here.portal_url() + \'/view\';\n
dummy python: response.redirect(came_from);" />\n
</tal:block>\n
</tal:block>
]]></string> </value>
</item>
<item>
<key> <string>content_type</string> </key>
<value> <string>text/html</string> </value>
</item>
<item>
<key> <string>expand</string> </key>
<value> <int>0</int> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>logged_in</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
......@@ -78,7 +78,7 @@ 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:index_html;\n
<tal:block tal:define="form_action string:logged_in;\n
js_list python: [\'%s/login_form.js\' % (here.portal_url.getPortalPath(), )]">\n
<tal:block metal:use-macro="here/main_template/macros/master">\n
<tal:block metal:fill-slot="main">\n
......@@ -106,7 +106,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n
<input type="text" name="__ac_name" id="name"\n
tal:attributes="value python: request.get(\'__ac_name\') or \'\'" />\n
</div>\n
<hr class="clear" />\n
<h6 class="clear">&nbsp;</h6>\n
</div>\n
<div class="field">\n
<label for="password"\n
......@@ -114,7 +114,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n
<div class="input">\n
<input type="password" name="__ac_password" id="password" />\n
</div>\n
<hr class="clear" />\n
<h6 class="clear">&nbsp;</h6>\n
</div>\n
<div class="field">\n
<label for="cb_remember"\n
......@@ -122,14 +122,15 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n
<div class="input">\n
<input type="checkbox" name="__ac_persistent" value="1" checked="checked" id="cb_remember" />\n
</div>\n
<hr class="clear" />\n
<h6 class="clear">&nbsp;</h6>\n
</div>\n
</div>\n
</div>\n
</div>\n
<script type="text/javascript">setFocus()</script>\n
<hr class="clear" />\n
<input type="submit" name="submit" value="Login" class="submit"\n
<h6 class="clear">&nbsp;</h6>\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
<a tal:attributes="href string:${here/portal_url}/mail_password_form"\n
......
......@@ -102,7 +102,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n
</select>\n
<tal:block tal:replace="structure python:form.sort_order.render(item[1], request)" />\n
</div>\n
<hr class="clear" />\n
<h6 class="clear">&nbsp;</h6>\n
</div>\n
<div tal:repeat="item columns"\n
class="field">\n
......@@ -122,7 +122,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n
<span tal:replace="structure python:form.sort_order.render(\'\', request)" />\n
</div>\n
</tal:block>\n
<hr class="clear" />\n
<h6 class="clear">&nbsp;</h6>\n
</div>\n
</div>\n
</tal:block>\n
......
......@@ -76,9 +76,6 @@ IDEAS:\n
-->\n
</tal:block>\n
<tal:block metal:define-macro="master">\n
<tal:block tal:condition="python: \'login_form\' not in request.get(\'URL\') and request.has_key(\'came_from\')">\n
<tal:block tal:define="dummy python: request.RESPONSE.redirect(request.get(\'came_from\'))" />\n
</tal:block>\n
<tal:block tal:condition="form/pt | nothing">\n
<tal:block tal:define="global list_mode python: form[\'pt\'] == \'list_main\';\n
global listmode_default_listbox python: here.ERP5Site_getListbox(form=form)" />\n
......@@ -108,7 +105,7 @@ IDEAS:\n
object_path here/getPath | nothing;\n
dummy python: request.set(\'here\',here);\n
\n
global http_parameter_list python: here.ERP5Site_getHTTPParameterList(request=request, form_id=form_id, dialog_id=dialog_id, selection_name=selection_name, selection_index=selection_index, selection_url=selection_url, cancel_url=cancel_url, form_action=form_action, dialog_method=dialog_method, dialog_category=dialog_category, form_pickle=form_pickle, form_signature=form_signature, field_id=field_id, object_uid=object_uid, object_path=object_path);\n
global http_parameter_list python: here.ERP5Site_getHTTPParameterList(request_form=request.form, form_id=form_id, dialog_id=dialog_id, selection_name=selection_name, selection_index=selection_index, selection_url=selection_url, cancel_url=cancel_url, form_action=form_action, dialog_method=dialog_method, dialog_category=dialog_category, form_pickle=form_pickle, form_signature=form_signature, field_id=field_id, object_uid=object_uid, object_path=object_path);\n
global http_parameters python: here.ERP5Site_renderHTTPParameterList(http_parameter_list);\n
\n
global css_list css_list | python: [];\n
......@@ -140,7 +137,6 @@ IDEAS:\n
</tal:block>\n
</head>\n
<body>\n
<!-- <tal:block tal:replace="structure request" /> -->\n
<form id="main_form"\n
tal:attributes="enctype form/enctype | nothing;\n
action url;\n
......@@ -242,7 +238,7 @@ IDEAS:\n
</button>\n
</span>\n
</span>\n
<hr class="clear" />\n
<h6 class="clear">&nbsp;</h6>\n
</div>\n
<div id="context_bar">\n
<tal:block metal:define-slot="context_bar" />\n
......@@ -269,7 +265,7 @@ IDEAS:\n
<tal:block tal:replace="python:here.portal_membership.getAuthenticatedMember().getUserName()" />\n
</tal:block>\n
</div>\n
<hr class="clear" />\n
<h6 class="clear">&nbsp;</h6>\n
<div tal:content="structure here/REQUEST/portal_status_message | nothing"\n
id="transition_message"></div>\n
</div>\n
......
2006-06-27 vincent
* Add an error message when login fails.
* Fix various compatibility bugs with old browsers.
2006-06-27 chris
* Replaced hr.clear by h6.clear to fix a problem with firefox 1.0.6
2006-06-26 vincent
* Rename page templates to follow a consistent naming scheme.
* Add another layer to unify web mode handling.
......
0.1
\ No newline at end of file
0.2
\ 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