mirror of
https://gitcode.com/gh_mirrors/hy/Hydro.git
synced 2026-10-20 01:38:19 +08:00
模块化,添加webpack支持
This commit is contained in:
1 parent
4ec2a46877
commit
75ebc1a746
30 files changed
+622
-459
No files matched your search
@@ -2,16 +2,14 @@
|
||||
{% macro render_sidebar() %}
|
||||
<div class="section side">
|
||||
<ol class="menu">
|
||||
{{ sidemenu.render_item('account--circle', 'user_detail', label='My Profile', uid=handler.user['_id']) }}
|
||||
{{ sidemenu.render_item('comment--multiple', 'home_messages') }}
|
||||
{{ sidemenu.render_item('account--circle', 'user_detail', '/user/' + handler.user._id, label='My Profile', uid=handler.user._id) }}
|
||||
{{ sidemenu.render_item('comment--multiple', 'home_messages', '/home/messages') }}
|
||||
<li class="menu__seperator"></li>
|
||||
{{ sidemenu.render_item('wrench', 'home_account') }}
|
||||
{{ sidemenu.render_item('web', 'home_domain_account', label='@ '+handler.domain['name']) }}
|
||||
{{ sidemenu.render_item('sliders', 'home_preference') }}
|
||||
{{ sidemenu.render_item('security', 'home_security') }}
|
||||
{{ sidemenu.render_item('wrench', 'home_account', '/home/settings/account') }}
|
||||
{{ sidemenu.render_item('sliders', 'home_preference', '/home/settings/preference') }}
|
||||
{{ sidemenu.render_item('security', 'home_security', '/home/security') }}
|
||||
<li class="menu__seperator"></li>
|
||||
{{ sidemenu.render_item('file', 'home_file') }}
|
||||
{{ sidemenu.render_item('web', 'home_domain') }}
|
||||
{{ sidemenu.render_item('file', 'home_file', '/home/file') }}
|
||||
</ol>
|
||||
</div>
|
||||
{% endmacro %}
|
||||
@@ -1,3 +1,4 @@
|
||||
{% set page_name = "home_security" %}
|
||||
{% extends "layout/home_base.html" %}
|
||||
{% block home_content %}
|
||||
<div data-heading-extract-to="#menu-item-home_security">
|
||||
@@ -9,9 +10,28 @@
|
||||
</div>
|
||||
<div class="section__body">
|
||||
<form method="post">
|
||||
{{ form.form_text(type='password', label='Current Password', columns=10, name='current_password', required=true) }}
|
||||
{{ form.form_text(type='text', label='Current Email', columns=10, name='current_email', value=handler.user['mail'], disabled=true) }}
|
||||
{{ form.form_text(type='text', label='New Email', columns=10, name='mail', required=true) }}
|
||||
{{ form.form_text({
|
||||
type:'password',
|
||||
label:'Current Password',
|
||||
columns:10,
|
||||
name:'password',
|
||||
required:true
|
||||
}) }}
|
||||
{{ form.form_text({
|
||||
type:'text',
|
||||
label:'Current Email',
|
||||
columns:10,
|
||||
name:'currentEmail',
|
||||
value:this.user.email,
|
||||
disabled:true
|
||||
}) }}
|
||||
{{ form.form_text({
|
||||
type:'text',
|
||||
label:'New Email',
|
||||
columns:10,
|
||||
name:'mail',
|
||||
required:true
|
||||
}) }}
|
||||
<div class="row"><div class="columns">
|
||||
<input type="hidden" name="csrfToken" value="{{ handler.csrfToken }}">
|
||||
<input type="hidden" name="operation" value="change_mail">
|
||||
@@ -28,9 +48,27 @@
|
||||
</div>
|
||||
<div class="section__body">
|
||||
<form method="post">
|
||||
{{ form.form_text(type='password', label='Current Password', columns=10, name='current_password', required=true) }}
|
||||
{{ form.form_text(type='password', label='New Password', columns=10, name='new_password', required=true) }}
|
||||
{{ form.form_text(type='password', label='Repeat Password', columns=10, name='verify_password', required=true) }}
|
||||
{{ form.form_text({
|
||||
type:'password',
|
||||
label:'Current Password',
|
||||
columns:10,
|
||||
name:'current',
|
||||
required:true
|
||||
}) }}
|
||||
{{ form.form_text({
|
||||
type:'password',
|
||||
label:'New Password',
|
||||
columns:10,
|
||||
name:'password',
|
||||
required:true
|
||||
}) }}
|
||||
{{ form.form_text({
|
||||
type:'password',
|
||||
label:'Repeat Password',
|
||||
columns:10,
|
||||
name:'verifyPassword',
|
||||
required:true
|
||||
}) }}
|
||||
<div class="row"><div class="columns">
|
||||
<input type="hidden" name="csrfToken" value="{{ handler.csrfToken }}">
|
||||
<input type="hidden" name="operation" value="change_password">
|
||||
@@ -53,25 +91,23 @@
|
||||
<li class="sessionlist__item">
|
||||
<div class="media">
|
||||
<div class="media__left medium">
|
||||
<span class="sessionlist__icon icon icon-platform--{{ session['update_ua']['icon'] }}"></span>
|
||||
<span class="sessionlist__icon icon icon-platform--{{ session.updateUa.icon }}"></span>
|
||||
</div>
|
||||
<div class="media__body medium typo">
|
||||
<p>{{ _('Last Update At') }}: {{ datetime_span(session['update_at']) }}</p>
|
||||
<p>{{ _('Location') }}: {{ _(session['update_geoip']) }} ({{ session['update_ip'] }})</p>
|
||||
<p>{{ _('Operating System') }}: {{ session['update_ua']['os'] }}</p>
|
||||
<p>{{ _('Browser') }}: {{ session['update_ua']['browser'] }}</p>
|
||||
<p>{{ _('Last Update At') }}: {{ datetime_span(session.updateAt)|safe }}</p>
|
||||
<p>{{ _('Location') }}: {{ _(session.updateGeoip) }} ({{ session.updateIp }})</p>
|
||||
<p>{{ _('Operating System') }}: {{ session.updateUa.os }}</p>
|
||||
<p>{{ _('Browser') }}: {{ session.updateUa.browser }}</p>
|
||||
<!-- {{ _('User-Agent') }}: {{ session['update_ua']['str'] }} -->
|
||||
<p>{{ _('Type') }}: {{ _(vj4.handler.home.TOKEN_TYPE_TEXTS[session['token_type']]) }}</p>
|
||||
{% if session['is_current'] %}
|
||||
{% if session.isCurrent %}
|
||||
<p class="sessionlist__current-session"><span class="icon icon-check"></span> {{ _('This is the current session') }}</p>
|
||||
{% endif %}
|
||||
</div>
|
||||
{% if not session['is_current'] %}
|
||||
{% if not session.isCurrent %}
|
||||
<div class="media__right medium">
|
||||
<form method="post">
|
||||
<input type="hidden" name="operation" value="delete_token">
|
||||
<input type="hidden" name="token_type" value="{{ session['token_type'] }}">
|
||||
<input type="hidden" name="token_digest" value="{{ session['token_digest'] }}">
|
||||
<input type="hidden" name="token_digest" value="{{ session._id }}">
|
||||
<input type="hidden" name="csrfToken" value="{{ handler.csrfToken }}">
|
||||
<input type="submit" value="{{ _('Logout This Session') }}" class="rounded button">
|
||||
</form>
|
||||
|
||||
@@ -9,53 +9,53 @@
|
||||
<div class="section__body">
|
||||
{% for setting in family_settings %}
|
||||
{% if setting.ui == 'text' or setting.ui == 'password' %}
|
||||
{{ form.form_text(
|
||||
type=setting.ui,
|
||||
label=setting.name,
|
||||
help_text=setting.desc,
|
||||
name=setting.key,
|
||||
value=handler.get_setting(setting.key))
|
||||
}}
|
||||
{{ form.form_text({
|
||||
type:setting.ui,
|
||||
label:setting.name,
|
||||
help_text:setting.desc,
|
||||
name:setting.key,
|
||||
value:handler.user[setting.key] or setting.value
|
||||
}) }}
|
||||
{% elif setting.ui == 'select' %}
|
||||
{{ form.form_select(
|
||||
options=setting.range.items(),
|
||||
label=setting.name,
|
||||
help_text=setting.desc,
|
||||
name=setting.key,
|
||||
value=handler.get_setting(setting.key))
|
||||
}}
|
||||
{{ form.form_select({
|
||||
options:setting.range,
|
||||
label:setting.name,
|
||||
help_text:setting.desc,
|
||||
name:setting.key,
|
||||
value:handler.user[setting.key] or setting.value
|
||||
}) }}
|
||||
{% elif setting.ui == 'radio' %}
|
||||
{{ form.form_radio(
|
||||
options=setting.range.items(),
|
||||
label=setting.name,
|
||||
help_text=setting.desc,
|
||||
name=setting.key,
|
||||
value=handler.get_setting(setting.key))
|
||||
}}
|
||||
{{ form.form_radio({
|
||||
options:setting.range,
|
||||
label:setting.name,
|
||||
help_text:setting.desc,
|
||||
name:setting.key,
|
||||
value:handler.user[setting.key] or setting.value
|
||||
}) }}
|
||||
{% elif setting.ui == 'image_radio' %}
|
||||
{{ form.form_image_radio(
|
||||
options=setting.range.items(),
|
||||
image_class=setting.image_class,
|
||||
label=setting.name,
|
||||
help_text=setting.desc,
|
||||
name=setting.key,
|
||||
value=handler.get_setting(setting.key))
|
||||
}}
|
||||
{{ form.form_image_radio({
|
||||
options:setting.range,
|
||||
image_class:setting.image_class,
|
||||
label:setting.name,
|
||||
help_text:setting.desc,
|
||||
name:setting.key,
|
||||
value:handler.user[setting.key] or setting.value
|
||||
}) }}
|
||||
{% elif setting.ui == 'textarea' %}
|
||||
{{ form.form_textarea(
|
||||
label=setting.name,
|
||||
help_text=setting.desc,
|
||||
name=setting.key,
|
||||
value=handler.get_setting(setting.key))
|
||||
}}
|
||||
{{ form.form_textarea({
|
||||
label:setting.name,
|
||||
help_text:setting.desc,
|
||||
name:setting.key,
|
||||
value:handler.user[setting.key] or setting.value
|
||||
}) }}
|
||||
{% elif setting.ui == 'markdown' %}
|
||||
{{ form.form_textarea(
|
||||
label=setting.name,
|
||||
help_text=setting.desc,
|
||||
name=setting.key,
|
||||
value=handler.get_setting(setting.key),
|
||||
markdown=true)
|
||||
}}
|
||||
{{ form.form_textarea({
|
||||
label:setting.name,
|
||||
help_text:setting.desc,
|
||||
name:setting.key,
|
||||
value:handler.user[setting.key] or setting.value,
|
||||
markdown:true
|
||||
}) }}
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
</div>
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<div class="dialog--signin__bg">
|
||||
<div class="dialog--signin__side">
|
||||
<h1>{{ _("Don\'t have an account?") }}</h1>
|
||||
<p>{{ _('By signing up a Vijos universal account, you can submit code and join discussions in all online judging services provided by us.') }}</p>
|
||||
<p>{{ _('By signing up a Hydro universal account, you can submit code and join discussions in all online judging services provided by us.') }}</p>
|
||||
<div><a href="/register" class="inverse rounded button">{{ _('Sign Up Now') }}</a></div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -13,7 +13,7 @@
|
||||
<a name="dialog--signin__close" href="javascript:;">{{ _('CLOSE') }}</a>
|
||||
</div>
|
||||
<h1 class="dialog--signin__title">{{ _('SIGN IN') }}</h1>
|
||||
<p class="dialog--signin__note">{{ _('Using your Vijos universal account') }}</p>
|
||||
<p class="dialog--signin__note">{{ _('Using your Hydro universal account') }}</p>
|
||||
<div class="row"><div class="columns">
|
||||
<label class="material textbox">
|
||||
{{ _('Username') }}
|
||||
|
||||
Reference in new issue
Block a user