Templates : remove auto closing tags

We are not using XHTML anymore but HTML 5
This commit is contained in:
Pierre Goiffon
2020-12-14 16:29:57 +01:00
parent 62bb0b9b78
commit c06e176d57
21 changed files with 51 additions and 51 deletions

View File

@@ -3,7 +3,7 @@
{% apply spaceless %}
<div class="ibo-dashlet-badge--body">
<div class="ibo-dashlet-badge--icon-container">
<img class="ibo-dashlet-badge--icon" src="{{ oUIBlock.GetClassIconUrl() }}"/>
<img class="ibo-dashlet-badge--icon" src="{{ oUIBlock.GetClassIconUrl() }}">
</div>
<div class="ibo-dashlet-badge--actions">
<a class="ibo-dashlet-badge--action-list" href="{{ oUIBlock.GetHyperlink() }}">

View File

@@ -5,7 +5,7 @@
<div class="ibo-dashlet-header-static--body">
{% if oUIBlock.GetIconUrl() is not empty %}
<div class="ibo-dashlet-header-static--icon-container">
<img class="ibo-dashlet-header-static--icon" src="{{ oUIBlock.GetIconUrl() }}" alt="{{ oUIBlock.GetTitle() }}"/>
<img class="ibo-dashlet-header-static--icon" src="{{ oUIBlock.GetIconUrl() }}" alt="{{ oUIBlock.GetTitle() }}">
</div>
{% endif %}
{% if oUIBlock.GetTitle() is not empty %}

View File

@@ -1,5 +1,5 @@
<div id="datatable_dlg_{{ oUIBlock.GetTableId() }}" style="display: none; background : white;" class="{{ oUIBlock.GetBlockCode() }}">
<input type="hidden" name="action" value="none"/>
<input type="hidden" name="action" value="none">
<form id="form_{{ oUIBlock.GetTableId() }}" onsubmit="return false">
<p>
<input id="dtbl_dlg_settings_{{ oUIBlock.GetTableId() }}" type="radio" name="settings" {% if (oUIBlock.GetOption("bUseCustomSettings") == false) %} checked {% endif %} value="defaults">
@@ -10,7 +10,7 @@
<input id="dtbl_dlg_specific_{{ oUIBlock.GetTableId() }}" type="radio" class="specific_settings" name="settings" {% if oUIBlock.GetOption("bUseCustomSettings") %} checked {% endif %} value="specific">
<label for="dtbl_dlg_specific_{{ oUIBlock.GetTableId() }}">&nbsp;&nbsp;{{ 'UI:UseSpecificSettings'|dict_s }}</label>
</legend>
{{ 'UI:ColumnsAndSortOrder'|dict_s }}<br/>
{{ 'UI:ColumnsAndSortOrder'|dict_s }}<br>
<ul class="sortable_field_list" id="sfl_{{ oUIBlock.GetTableId() }}">
</ul>

View File

@@ -1,14 +1,14 @@
{% for oSubBlock in oUIBlock.GetSubBlocks() %}{{ render_block(oSubBlock, {aPage: aPage}) }}{% endfor %}
{% if oUIBlock.GetOptions("select_mode") is not empty %}
<input type="hidden" name="selectionMode" value="positive"/>
<input type="hidden" name="selectionCount" value="0"/>
<input type="hidden" name="selectionMode" value="positive">
<input type="hidden" name="selectionCount" value="0">
<div data-target="ibo-datatable--selection"></div>
{% if oUIBlock.GetAjaxData("extra_params") is not empty %}
<input type="hidden" name="extra_params" value="{{ oUIBlock.GetAjaxData("extra_params")|raw|json_encode }}"/>
<input type="hidden" name="extra_params" value="{{ oUIBlock.GetAjaxData("extra_params")|raw|json_encode }}">
{% endif %}
{% if oUIBlock.GetAjaxData("filter") is not empty %}
<input type="hidden" name="filter" value="{{ oUIBlock.GetAjaxData("filter")|raw }}"/>
<input type="hidden" name="filter" value="{{ oUIBlock.GetAjaxData("filter")|raw }}">
{% endif %}
{% endif %}

View File

@@ -86,18 +86,18 @@ var oTable{{ oUIBlock.GetId() }} = $('#{{ oUIBlock.GetId() }}').DataTable({
sortable: false,
title:
{% if oUIBlock.GetOption("select_mode") != "single" %}
'<span class="row_input"><input type="checkbox" onclick="checkAllDataTable(\'{{ oUIBlock.GetId() }}\',this.checked,\'{{ oUIBlock.GetOption("sListId") }}\');" class="checkAll" id="field_{{ oUIBlock.GetId() }}_check_all" name="field_{{ oUIBlock.GetId() }}_check_all" title="{{ 'UI:SearchValue:CheckAll'|dict_s }} / {{ 'UI:SearchValue:UncheckAll'|dict_s }}" /></span>'
'<span class="row_input"><input type="checkbox" onclick="checkAllDataTable(\'{{ oUIBlock.GetId() }}\',this.checked,\'{{ oUIBlock.GetOption("sListId") }}\');" class="checkAll" id="field_{{ oUIBlock.GetId() }}_check_all" name="field_{{ oUIBlock.GetId() }}_check_all" title="{{ 'UI:SearchValue:CheckAll'|dict_s }} / {{ 'UI:SearchValue:UncheckAll'|dict_s }}"></span>'
{% else %}
'<span class="row_input"><input type="checkbox" style="display: none;" onclick="checkAllDataTable(\'{{ oUIBlock.GetId() }}\',this.checked,\'{{ oUIBlock.GetOption("sListId") }}\');" class="checkAll" id="field_{{ oUIBlock.GetId() }}_check_all" name="field_{{ oUIBlock.GetId() }}_check_all" title="{{ 'UI:SearchValue:CheckAll'|dict_s }} / {{ 'UI:SearchValue:UncheckAll'|dict_s }}" /></span>'
'<span class="row_input"><input type="checkbox" style="display: none;" onclick="checkAllDataTable(\'{{ oUIBlock.GetId() }}\',this.checked,\'{{ oUIBlock.GetOption("sListId") }}\');" class="checkAll" id="field_{{ oUIBlock.GetId() }}_check_all" name="field_{{ oUIBlock.GetId() }}_check_all" title="{{ 'UI:SearchValue:CheckAll'|dict_s }} / {{ 'UI:SearchValue:UncheckAll'|dict_s }}"></span>'
{% endif %},
type: "html",
data: "",
render: function (data, type, row) {
var oCheckboxElem =
{% if oUIBlock.GetOption("select_mode") != "single" %}
$('<span class="row_input"><input type="checkbox" class="selectList{{ oUIBlock.GetId() }}" name="selectObject[]" value="'+row.id+'"/></span>');
$('<span class="row_input"><input type="checkbox" class="selectList{{ oUIBlock.GetId() }}" name="selectObject[]" value="'+row.id+'"></span>');
{% else %}
$('<span class="row_input"><input type="radio" class="selectList{{ oUIBlock.GetId() }}" name="selectObject[]" value="'+row.id+'"/></span>');
$('<span class="row_input"><input type="radio" class="selectList{{ oUIBlock.GetId() }}" name="selectObject[]" value="'+row.id+'"></span>');
{% endif %}
if (row.limited_access) {
oCheckboxElem.html('-');

View File

@@ -1,7 +1,7 @@
<div id="{{ oUIBlock.GetId() }}" class="ibo-global-search" data-role="ibo-global-search">
<form action="{{ oUIBlock.GetEndpoint() }}" method="post" class="ibo-global-search--head" data-role="ibo-global-search--head">
<a href="#" class="ibo-global-search--icon fas fa-search" data-role="ibo-global-search--icon" data-tooltip-content="{{ 'UI:Component:GlobalSearch:Tooltip'|dict_s }}" data-tooltip-placement="bottom-start" data-tooltip-distance-offset="25"></a>
<input type="text" name="query" class="ibo-global-search--input" data-role="ibo-global-search--input" placeholder="{{ 'UI:Component:GlobalSearch:Input:Placeholder'|dict_s }}" autocomplete="off"/>
<input type="text" name="query" class="ibo-global-search--input" data-role="ibo-global-search--input" placeholder="{{ 'UI:Component:GlobalSearch:Input:Placeholder'|dict_s }}" autocomplete="off">
</form>
<div class="ibo-global-search--drawer" data-role="ibo-global-search--drawer">
<div class="ibo-global-search--compartment">
@@ -13,7 +13,7 @@
{% for aQuery in oUIBlock.GetLastQueries() %}
<a href="#" class="ibo-global-search--compartment-element" data-role="ibo-global-search--compartment-element" data-query-raw="{{ aQuery.query }}" title="{{ aQuery.query }}">
{% if aQuery.icon_url is defined %}
<img src="{{ aQuery.icon_url}}" class="ibo-global-search--compartment-element-image" />
<img src="{{ aQuery.icon_url}}" class="ibo-global-search--compartment-element-image">
{% endif %}
{{ aQuery.label_html|raw }}
</a>

View File

@@ -1,5 +1,5 @@
{% block iboInputLabel %}
{% endblock %}
{% block iboInput %}
<input type="{{ oUIBlock.GetType() }}" id="{{ oUIBlock.GetId() }}" name="{{ oUIBlock.GetName() }}" value="{{ oUIBlock.GetValue()|raw }}"/>
<input type="{{ oUIBlock.GetType() }}" id="{{ oUIBlock.GetId() }}" name="{{ oUIBlock.GetName() }}" value="{{ oUIBlock.GetValue()|raw }}">
{% endblock %}

View File

@@ -4,7 +4,7 @@
{% block iboPanelTitle %}
<div class="ibo-panel--title-icon">
<img src="{{ oUIBlock.GetIconUrl() }}" alt="{{ oUIBlock.GetTitle() }}"/>
<img src="{{ oUIBlock.GetIconUrl() }}" alt="{{ oUIBlock.GetTitle() }}">
</div>
<div class="ibo-panel--title-title">
<div class="ibo-panel--title-title-title">{{ oUIBlock.GetTitle() }}</div>

View File

@@ -1,6 +1,6 @@
<div id="{{ oUIBlock.GetId() }}" class="ibo-quick-create" data-role="ibo-quick-create">
<form action="{{ oUIBlock.GetEndpoint() }}" method="get" class="ibo-quick-create--head" data-role="ibo-quick-create--head">
<input type="hidden" name="operation" value="new"/>
<input type="hidden" name="operation" value="new">
<a href="#" class="ibo-quick-create--icon fas fa-plus" data-role="ibo-quick-create--icon" data-tooltip-content="{{ 'UI:Component:QuickCreate:Tooltip'|dict_s }}"
data-tooltip-placement="bottom-start" data-tooltip-distance-offset="25"></a>
<select name="class" class="ibo-quick-create--input" data-role="ibo-quick-create--input">
@@ -22,7 +22,7 @@
{% for aClass in oUIBlock.GetLastClasses() %}
<a href="{{ aClass.target_url }}" class="ibo-quick-create--compartment-element" data-role="ibo-quick-create--compartment-element" data-class-code="{{ aQuery.class }}">
{% if aClass.icon_url is defined %}
<img src="{{ aClass.icon_url}}" class="ibo-quick-create--compartment-element-image" />
<img src="{{ aClass.icon_url}}" class="ibo-quick-create--compartment-element-image">
{% endif %}
{{ aClass.label_html|raw }}
</a>

View File

@@ -2,7 +2,7 @@
<div class="ibo-title">
{% if oUIBlock.HasIcon() %}
<div class="ibo-title--medallion">
<img class="ibo-title--icon ibo-title--icon--must-{{ oUIBlock.GetIconCoverMethod() }}" src="{{ oUIBlock.GetIconUrl() }}" />
<img class="ibo-title--icon ibo-title--icon--must-{{ oUIBlock.GetIconCoverMethod() }}" src="{{ oUIBlock.GetIconUrl() }}">
</div>
{% endif %}
<div class="ibo-title--content">

View File

@@ -7,7 +7,7 @@
<div class="ibo-activity-entry--medallion {% if oUIBlock.GetAuthorPictureAbsUrl() is not empty %}ibo-has-image{% endif %}" data-role="ibo-activity-entry--medallion" data-tooltip-content="{{ oUIBlock.GetAuthorFriendlyname() }}">
{% block iboActivityEntryMedallion %}
{% if oUIBlock.GetAuthorPictureAbsUrl() is not empty %}
<img class="ibo-activity-entry--author-picture" src="{{ oUIBlock.GetAuthorPictureAbsUrl() }}" alt="{{ oUIBlock.GetAuthorInitials() }}" />
<img class="ibo-activity-entry--author-picture" src="{{ oUIBlock.GetAuthorPictureAbsUrl() }}" alt="{{ oUIBlock.GetAuthorInitials() }}">
{% else %}
<div class="ibo-activity-entry--author-initials">{{ oUIBlock.GetAuthorInitials() }}</div>
{% endif %}

View File

@@ -63,20 +63,20 @@
{% if oUIBlock.HasCaseLogTabs() %}
<label class="ibo-activity-panel--tab-toolbar-action"
data-tooltip-content="{{ 'UI:Layout:ActivityPanel:Tab:Activity:Toolbar:CaselogsFilter:Tooltip'|dict_s }}">
<input type="checkbox" name="caselogs" data-role="ibo-activity-panel--activity-filter" data-target-entry-types="caselog" checked />
<input type="checkbox" name="caselogs" data-role="ibo-activity-panel--activity-filter" data-target-entry-types="caselog" checked>
{{ 'UI:Layout:ActivityPanel:Tab:Activity:Toolbar:CaselogsFilter:Title'|dict_s }}
</label>
{% endif %}
{% if oUIBlock.HasLifecycle() %}
<label class="ibo-activity-panel--tab-toolbar-action"
data-tooltip-content="{{ 'UI:Layout:ActivityPanel:Tab:Activity:Toolbar:TransitionsFilter:Tooltip'|dict_s }}">
<input type="checkbox" name="transitions" data-role="ibo-activity-panel--activity-filter" data-target-entry-types="transition" checked />
<input type="checkbox" name="transitions" data-role="ibo-activity-panel--activity-filter" data-target-entry-types="transition" checked>
{{ 'UI:Layout:ActivityPanel:Tab:Activity:Toolbar:TransitionsFilter:Title'|dict_s }}
</label>
{% endif %}
<label class="ibo-activity-panel--tab-toolbar-action"
data-tooltip-content="{{ 'UI:Layout:ActivityPanel:Tab:Activity:Toolbar:EditsFilter:Tooltip'|dict_s }}">
<input type="checkbox" name="edits" data-role="ibo-activity-panel--activity-filter" data-target-entry-types="edits" checked />
<input type="checkbox" name="edits" data-role="ibo-activity-panel--activity-filter" data-target-entry-types="edits" checked>
{{ 'UI:Layout:ActivityPanel:Tab:Activity:Toolbar:EditsFilter:Title'|dict_s }}
</label>
</div>

View File

@@ -2,10 +2,10 @@
<div class="ibo-navigation-menu--body">
<div class="ibo-navigation-menu--top-part">
<a class="ibo-navigation-menu--square-company-logo" title="{{ oUIBlock.GetAppRevisionNumber() }}" href="{{ oUIBlock.GetAppIconLink() }}">
<img src="{{ oUIBlock.GetAppSquareIconUrl() }}" alt="{{ 'UI:Layout:NavigationMenu:CompanyLogo:AltText'|dict_s }}" />
<img src="{{ oUIBlock.GetAppSquareIconUrl() }}" alt="{{ 'UI:Layout:NavigationMenu:CompanyLogo:AltText'|dict_s }}">
</a>
<a class="ibo-navigation-menu--full-company-logo" title="{{ oUIBlock.AppRevisionNumber }}" href="{{ oUIBlock.AppIconLink }}">
<img src="{{ oUIBlock.AppFullIconUrl }}" alt="{{ 'UI:Layout:NavigationMenu:CompanyLogo:AltText'|dict_s }}" />
<img src="{{ oUIBlock.AppFullIconUrl }}" alt="{{ 'UI:Layout:NavigationMenu:CompanyLogo:AltText'|dict_s }}">
</a>
<a class="ibo-navigation-menu--toggler" data-role="ibo-navigation-menu--toggler" data-tooltip-content="{{ 'UI:Layout:NavigationMenu:Toggler:Tooltip'|dict_s }}" data-tooltip-placement="right" data-tooltip-distance-offset="20" href="#">
<span class="ibo-navigation-menu--toggler-icon">
@@ -44,7 +44,7 @@
data-tooltip-content="{{ oUIBlock.GetUserData().sLogonMessage }}"
data-tooltip-placement="right"
data-tooltip-distance-offset="20"
/>
>
</a>
</div>
<div class="ibo-navigation-menu--user-welcome-message">
@@ -85,7 +85,7 @@
<div class="ibo-navigation-menu--drawer" data-role="ibo-navigation-menu--drawer">
<div class="ibo-navigation-menu--menu-filter" data-role="ibo-nav-menu--menu-filter">
{# TODO: Retrieve input style from a component? #}
<input class="ibo-navigation-menu--menu-filter-input" data-role="ibo-navigation-menu--menu-filter-input" type="text" placeholder="{{ 'UI:Layout:NavigationMenu:MenuFilter:Input:Placeholder'|dict_s }}" data-tooltip-content="{{ 'UI:Layout:NavigationMenu:MenuFilter:Input:Tooltip'|dict_s }}" data-tooltip-trigger="mouseenter" />
<input class="ibo-navigation-menu--menu-filter-input" data-role="ibo-navigation-menu--menu-filter-input" type="text" placeholder="{{ 'UI:Layout:NavigationMenu:MenuFilter:Input:Placeholder'|dict_s }}" data-tooltip-content="{{ 'UI:Layout:NavigationMenu:MenuFilter:Input:Tooltip'|dict_s }}" data-tooltip-trigger="mouseenter">
<a class="ibo-navigation-menu--menu-filter-clear" data-role="ibo-navigation-menu--menu-filter-clear" href="#"></a>
<span class="ibo-navigation-menu--menu-filter-hotkey">{{ 'UI:Layout:NavigationMenu:MenuFilter:Input:Hotkey'|dict_s }}</span>
</div>

View File

@@ -88,7 +88,7 @@
.done(function(){
if ( (aKBFilesToLoad[iKBCurrentIdx].type === 'text') && ($('head link[type="text/css"][href="' + aKBFilesToLoad[iKBCurrentIdx].url + '"]').length === 0) )
{
$('<link rel="stylesheet" type="text/css" href="' + aKBFilesToLoad[iKBCurrentIdx].url + '" />').appendTo('head');
$('<link rel="stylesheet" type="text/css" href="' + aKBFilesToLoad[iKBCurrentIdx].url + '">').appendTo('head');
}
})
)*/

View File

@@ -13,7 +13,7 @@
{% block login_logo %}
<div id="login-logo">
<a href="{{ sIconUrl }}">
<img title="{{ sVersionShort }}" src="{{ sDisplayIcon }}" alt="logo"/>
<img title="{{ sVersionShort }}" src="{{ sDisplayIcon }}" alt="logo">
</a>
</div>
{% endblock login_logo %}

View File

@@ -2,5 +2,5 @@
{# @license http://opensource.org/licenses/AGPL-3.0 #}
<div>
<input type="submit" value="{{ 'UI:Button:Login'|dict_s }}" tabindex="3" />
<input type="submit" value="{{ 'UI:Button:Login'|dict_s }}" tabindex="3">
</div>

View File

@@ -22,7 +22,7 @@
<div id="login-form-content">
{% block login_sso_buttons %}
<div id="login-sso-buttons">
{{ Macro.BlockExtension(aPluginFormData, 'login_sso_buttons', '<div class="divider"><hr class="left"/>' ~ 'UI:Login:SeparatorOr'|dict_s ~ '<hr class="right"/></div>') }}
{{ Macro.BlockExtension(aPluginFormData, 'login_sso_buttons', '<div class="divider"><hr class="left">' ~ 'UI:Login:SeparatorOr'|dict_s ~ '<hr class="right"/></div>') }}
</div>
{% endblock login_sso_buttons %}
{% block login_input %}
@@ -51,10 +51,10 @@
</div>
{% endblock login_form_footer %}
</div>
<input type="hidden" id="login_mode" name="login_mode" value="form" />
<input type="hidden" id="login_op" name="loginop" value="login" />
<input type="hidden" id="login_mode" name="login_mode" value="form">
<input type="hidden" id="login_op" name="loginop" value="login">
{% for sName, sValue in aPreviousPostedVars %}
<input type="hidden" name="{{ sName }}" value="{{ sValue }}" />
<input type="hidden" name="{{ sName }}" value="{{ sValue }}">
{% endfor %}
</form>
</div>

View File

@@ -21,31 +21,31 @@
{% block old_password %}
<div>
<label for="old_pwd">{{ 'UI:Login:OldPasswordPrompt'|dict_s }}:</label>
<input type="password" id="old_pwd" name="old_pwd" value="" />
<input type="password" id="old_pwd" name="old_pwd" value="">
</div>
{% endblock %}
{% block new_password %}
<div>
<label for="new_pwd">{{ 'UI:Login:NewPasswordPrompt'|dict_s }}:</label>
<input type="password" id="new_pwd" name="new_pwd" value="" />
<input type="password" id="new_pwd" name="new_pwd" value="">
<span class="message"></span>
</div>
<div>
<label for="retype_new_pwd">{{ 'UI:Login:RetypeNewPasswordPrompt'|dict_s }}:</label>
<input type="password" id="retype_new_pwd" name="retype_new_pwd" value="" />
<input type="password" id="retype_new_pwd" name="retype_new_pwd" value="">
<span class="message"></span>
</div>
{% endblock %}
</div>
<div id="login-submit" class="changepwd-submit">
<div>
<input class="login-submit-primary" type="submit" onClick="return DoCheckPwd();" value="{{ 'UI:Button:ChangePassword'|dict_s }}" />
<input class="login-submit-primary" type="submit" onClick="return DoCheckPwd();" value="{{ 'UI:Button:ChangePassword'|dict_s }}">
<span class="message"></span>
<input class="login-submit-secondary" type="button" onClick="GoBack();" value="{{ 'UI:Button:Cancel'|dict_s }}" />
<input class="login-submit-secondary" type="button" onClick="GoBack();" value="{{ 'UI:Button:Cancel'|dict_s }}">
</div>
</div>
<input type="hidden" name="loginop" value="do_change_pwd" />
<input type="hidden" name="loginop" value="do_change_pwd">
</div>
</form>
</div>

View File

@@ -18,17 +18,17 @@
<div id="login-input">
<div>
<label for="user">{{ 'UI:Login:UserNamePrompt'|dict_s }}:</label>
<input id="user" type="text" name="auth_user" value="{{ sAuthUser }}" />
<input id="user" type="text" name="auth_user" value="{{ sAuthUser }}">
</div>
</div>
<div id="login-submit" class="forgotpwd-submit">
<div>
<input type="submit" value="{{ 'UI:Login:ResetPassword'|dict_s }}" />
<input class="login-submit-secondary" type="button" onClick="window.close();" value="{{ 'UI:Button:Cancel'|dict_s }}" />
<input type="submit" value="{{ 'UI:Login:ResetPassword'|dict_s }}">
<input class="login-submit-secondary" type="button" onClick="window.close();" value="{{ 'UI:Button:Cancel'|dict_s }}">
</div>
</div>
</div>
<input type="hidden" name="loginop" value="forgot_pwd_go" />
<input type="hidden" name="loginop" value="forgot_pwd_go">
</form>
</div>
</div>

View File

@@ -10,7 +10,7 @@
<p>{{ 'UI:ResetPwd-EmailSent'|dict_s }}</p>
</div>
<div id="forgot_pwd_sent">
<input type="button" class="forgot_pwd_done" onClick="window.close();" value="{{ 'UI:Button:Done'|dict_s }}"/>
<input type="button" class="forgot_pwd_done" onClick="window.close();" value="{{ 'UI:Button:Done'|dict_s }}">
</div>
</div>
{% endblock %}

View File

@@ -26,22 +26,22 @@
<div id="login-input">
<div>
<label for="new_pwd">{{ 'UI:Login:NewPasswordPrompt'|dict_s }}:</label>
<input type="password" id="new_pwd" name="new_pwd" value="" />
<input type="password" id="new_pwd" name="new_pwd" value="">
</div>
<div>
<label for="retype_new_pwd">{{ 'UI:Login:RetypeNewPasswordPrompt'|dict_s }}:</label>
<input type="password" id="retype_new_pwd" name="retype_new_pwd" value="" />
<input type="password" id="retype_new_pwd" name="retype_new_pwd" value="">
</div>
</div>
<div id="login-submit">
<div>
<input type="submit" onClick="return DoCheckPwd();" value="{{ 'UI:Button:ChangePassword'|dict_s }}" />
<input type="submit" onClick="return DoCheckPwd();" value="{{ 'UI:Button:ChangePassword'|dict_s }}">
</div>
</div>
</div>
<input type="hidden" name="loginop" value="do_reset_pwd" />
<input type="hidden" name="auth_user" value="{{ sAuthUser }}" />
<input type="hidden" name="token" value="{{ sToken }}" />
<input type="hidden" name="loginop" value="do_reset_pwd">
<input type="hidden" name="auth_user" value="{{ sAuthUser }}">
<input type="hidden" name="token" value="{{ sToken }}">
</form>
{% endif %}
</div>