|
Pierre-Yves Chibon |
68537a |
{% extends "master.html" %}
|
|
Ryan Lerch |
7eb66d |
{% from "_formhelper.html" import render_bootstrap_field %}
|
|
Ryan Lerch |
0c654b |
{% from "_projectstring.html" import projectstring, projecticon %}
|
|
Pierre-Yves Chibon |
68537a |
|
|
Johan Cwiklinski |
4327dd |
{% block title %}{{ user.user }}'s settings{% endblock %}
|
|
Ryan Lerch |
f4adb4 |
{% set tag = "users"%}
|
|
Pierre-Yves Chibon |
68537a |
|
|
Pierre-Yves Chibon |
012c11 |
{% macro render_email(email, form, validated=True) %}
|
|
Pierre-Yves Chibon |
012c11 |
|
|
Ryan Lerch |
6d2e06 |
{{ email.email }}
|
|
Pierre-Yves Chibon |
012c11 |
{% if validated %}
|
|
Ryan Lerch |
6d2e06 |
|
|
Pierre-Yves Chibon |
b130e5 |
action="{{ url_for('ui_ns.remove_user_email') }}">
|
|
Ryan Lerch |
7eb66d |
<input name="email" type="hidden" value="{{ email.email }}">
|
|
Ryan Lerch |
7eb66d |
{{ form.csrf_token }}
|
|
Pierre-Yves Chibon |
36de81 |
|
|
Pierre-Yves Chibon |
36de81 |
class="btn btn btn-outline-danger delete-email-btn">
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
7eb66d |
|
|
Ryan Lerch |
7eb66d |
|
|
Ryan Lerch |
7eb66d |
{% if email.email == user.default_email %}
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
7eb66d |
{% else %}
|
|
Pierre-Yves Chibon |
3ff704 |
|
|
Pierre-Yves Chibon |
b130e5 |
action="{{ url_for('ui_ns.set_default_email') }}" id="default_mail">
|
|
Ryan Lerch |
7eb66d |
<input name="email" type="hidden" value="{{ email.email }}">
|
|
Ryan Lerch |
7eb66d |
{{ form.csrf_token }}
|
|
Pierre-Yves Chibon |
36de81 |
|
|
Pierre-Yves Chibon |
36de81 |
data-form-id="email" title="Set as default email address">
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
7eb66d |
|
|
Ryan Lerch |
7eb66d |
|
|
Ryan Lerch |
7eb66d |
{% endif %}
|
|
Pierre-Yves Chibon |
67c275 |
{% else %}
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
<small>pending verification via email </small>
|
|
Pierre-Yves Chibon |
3ff704 |
|
|
Pierre-Yves Chibon |
b130e5 |
action="{{ url_for('ui_ns.reconfirm_email') }}" id="reconfirm_mail">
|
|
Pierre-Yves Chibon |
012c11 |
<input name="email" type="hidden" value="{{ email.email }}">
|
|
Pierre-Yves Chibon |
012c11 |
{{ form.csrf_token }}
|
|
Pierre-Yves Chibon |
36de81 |
|
|
Pierre-Yves Chibon |
36de81 |
title="Resend validation email" class="btn btn btn-outline-primary submit-btn">
|
|
Ryan Lerch |
6d2e06 |
|
|
Pierre-Yves Chibon |
012c11 |
|
|
Pierre-Yves Chibon |
012c11 |
|
|
Pierre-Yves Chibon |
012c11 |
|
|
Pierre-Yves Chibon |
67c275 |
{% endif %}
|
|
Ryan Lerch |
7eb66d |
|
|
Pierre-Yves Chibon |
8fea23 |
{% endmacro %}
|
|
Pierre-Yves Chibon |
8fea23 |
|
|
Pierre-Yves Chibon |
68537a |
|
|
Pierre-Yves Chibon |
68537a |
{% block content %}
|
|
Ryan Lerch |
7eb66d |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
<nav></nav>
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
User Settings
|
|
Ryan Lerch |
6d2e06 |
Profile
|
|
Ryan Lerch |
6d2e06 |
Email Addresses
|
|
Ryan Lerch |
6d2e06 |
API Keys
|
|
Ryan Lerch |
6d2e06 |
{% if config.get('LOCAL_SSH_KEY', True) %}
|
|
Ryan Lerch |
6d2e06 |
SSH Keys
|
|
Ryan Lerch |
6d2e06 |
{% endif %}
|
|
Ryan Lerch |
6d2e06 |
Preferences
|
|
Ryan Lerch |
6d2e06 |
Force Logout
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Pierre-Yves Chibon |
b933a2 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
Basic Information
|
|
Ryan Lerch |
6d2e06 |
{% if config.get('PAGURE_AUTH')=='local' %}
|
|
Ryan Lerch |
6d2e06 |
Change password
|
|
Ryan Lerch |
6d2e06 |
{% endif %}
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
<fieldset class="form-group text-center"></fieldset>
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
{{ g.fas_user.username | avatar(80) | safe }}
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
Change Avatar
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Pierre-Yves Chibon |
b933a2 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
<fieldset class="form-group"></fieldset>
|
|
Ryan Lerch |
6d2e06 |
<label for="description">Username</label>
|
|
Ryan Lerch |
6d2e06 |
<input class="form-control" disabled="" type="text" value="{{ user.user }}">
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
<fieldset class="form-group"></fieldset>
|
|
Ryan Lerch |
6d2e06 |
<label for="description">Full Name</label>
|
|
Ryan Lerch |
6d2e06 |
<input class="form-control" disabled="" type="text" value="{{ user.fullname }}">
|
|
Ryan Lerch |
6d2e06 |
|
|
Pierre-Yves Chibon |
b933a2 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
Email Addresses
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
url_for('ui_ns.add_user_email') }}">
|
|
Ryan Lerch |
6d2e06 |
Add Email
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
{% for email in user.emails %}
|
|
Ryan Lerch |
6d2e06 |
{{ render_email(email, form) }}
|
|
Ryan Lerch |
6d2e06 |
{% endfor %}
|
|
Ryan Lerch |
6d2e06 |
{% for email in user.emails_pending %}
|
|
Ryan Lerch |
6d2e06 |
{{ render_email(email, form, validated=False) }}
|
|
Ryan Lerch |
6d2e06 |
{% endfor %}
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
API Keys
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
title="Generate a new API token">
|
|
Ryan Lerch |
6d2e06 |
Create new API Key
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
API keys are tokens used to authenticate you on pagure. They can also
|
|
Ryan Lerch |
6d2e06 |
be used to grant access to 3rd party application to behave on all
|
|
Ryan Lerch |
0c654b |
{{projectstring(plural=True)}} in your name.
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
These are your personal tokens; they are not visible to others.
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
These keys are valid for 60 days.
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
These keys are private, make sure to store in a safe place and
|
|
Ryan Lerch |
6d2e06 |
do not share it.
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
{% if user.tokens %}
|
|
Ryan Lerch |
6d2e06 |
{% for token in user.tokens %}
|
|
Ryan Lerch |
6d2e06 |
{% if not token.project %}
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
8e5e77 |
|
|
Ryan Lerch |
8e5e77 |
|
|
Ryan Lerch |
8e5e77 |
|
|
Ryan Lerch |
8e5e77 |
{{ token.description or '' }}
|
|
Ryan Lerch |
8e5e77 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
8e5e77 |
|
|
Ryan Lerch |
8e5e77 |
|
|
Ryan Lerch |
6d2e06 |
{% for acl in token.acls_list %}
|
|
Patrick Uiterwijk |
9b237b |
{% if acl == 'create_project' %}
|
|
Ryan Lerch |
0c654b |
|
|
Patrick Uiterwijk |
9b237b |
{% elif acl == 'fork_project' %}
|
|
Ryan Lerch |
0c654b |
|
|
Patrick Uiterwijk |
9b237b |
{% elif acl == 'modify_project' %}
|
|
Ryan Lerch |
0c654b |
|
|
Ryan Lerch |
6d2e06 |
{% endif %}
|
|
Ryan Lerch |
6d2e06 |
{% endfor %}
|
|
Ryan Lerch |
8e5e77 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Pierre-Yves Chibon |
3ff704 |
|
|
Pierre-Yves Chibon |
3ff704 |
type="text" value="{{ token.id }}" readonly>
|
|
Ryan Lerch |
6d2e06 |
{% if token.expired %}
|
|
Ryan Lerch |
8e5e77 |
|
|
Ryan Lerch |
8e5e77 |
<small class="font-weight-bold text-danger input-group-text">Expired on {{ token.expiration.date() }}</small>
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
{% else %}
|
|
Ryan Lerch |
8e5e77 |
|
|
Ryan Lerch |
8e5e77 |
<small class="font-weight-bold text-success input-group-text">Active until {{ token.expiration.date() }}</small>
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
{% endif %}
|
|
Ryan Lerch |
6d2e06 |
{% if not token.expired %}
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
'ui_ns.revoke_api_user_token', token_id=token.id) }}"
|
|
Ryan Lerch |
6d2e06 |
method="post" class="icon">
|
|
Pierre-Yves Chibon |
36de81 |
|
|
Ryan Lerch |
6d2e06 |
title="Revoke token">
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
{{ form.csrf_token }}
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
{% endif %}
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
{% endif %}
|
|
Ryan Lerch |
6d2e06 |
{% endfor %}
|
|
Ryan Lerch |
6d2e06 |
{% endif %}
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Pierre-Yves Chibon |
170fc9 |
|
|
Ryan Lerch |
6d2e06 |
{% if config.get('LOCAL_SSH_KEY', True) %}
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
SSH Keys
|
|
Pierre-Yves Chibon |
3ff704 |
|
|
Pierre-Yves Chibon |
3f434c |
Add SSH key
|
|
Patrick Uiterwijk |
9b237b |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Patrick Uiterwijk |
9b237b |
Below are your SSH keys.
|
|
Patrick Uiterwijk |
9b237b |
{% for key in user.sshkeys %}
|
|
Patrick Uiterwijk |
9b237b |
|
|
Patrick Uiterwijk |
9b237b |
|
|
Patrick Uiterwijk |
9b237b |
|
|
Patrick Uiterwijk |
9b237b |
|
|
Patrick Uiterwijk |
9b237b |
|
|
Pierre-Yves Chibon |
3ff704 |
|
|
Patrick Uiterwijk |
9b237b |
type="text" value="{{ key.ssh_short_key }}"/>
|
|
Patrick Uiterwijk |
9b237b |
|
|
Patrick Uiterwijk |
9b237b |
action="{{ url_for(
|
|
Patrick Uiterwijk |
9b237b |
'ui_ns.remove_user_sshkey',
|
|
Patrick Uiterwijk |
9b237b |
keyid=key.id) }}">
|
|
Pierre-Yves Chibon |
36de81 |
|
|
Pierre-Yves Chibon |
36de81 |
class="btn btn-outline-danger delete-sshkey-btn">
|
|
Patrick Uiterwijk |
9b237b |
|
|
Patrick Uiterwijk |
9b237b |
|
|
Patrick Uiterwijk |
9b237b |
{{ form.csrf_token }}
|
|
Patrick Uiterwijk |
9b237b |
|
|
Patrick Uiterwijk |
9b237b |
|
|
Patrick Uiterwijk |
9b237b |
|
|
Patrick Uiterwijk |
9b237b |
{% endfor %}
|
|
Pierre-Yves Chibon |
170fc9 |
|
|
Pierre-Yves Chibon |
170fc9 |
|
|
Pierre-Yves Chibon |
3f434c |
|
|
Pierre-Yves Chibon |
3ff704 |
|
|
Pierre-Yves Chibon |
3f434c |
|
|
Pierre-Yves Chibon |
3f434c |
|
|
Pierre-Yves Chibon |
3f434c |
|
|
Pierre-Yves Chibon |
3f434c |
Add SSH key
|
|
Pierre-Yves Chibon |
3f434c |
|
|
Pierre-Yves Chibon |
3f434c |
|
|
Pierre-Yves Chibon |
3f434c |
<form action="{{ url_for('ui_ns.add_user_sshkey') }}" method="post"></form>
|
|
Pierre-Yves Chibon |
3f434c |
<fieldset class="form-group"></fieldset>
|
|
Pierre-Yves Chibon |
3f434c |
<label for="ssh_key">SSH key</label>
|
|
Pierre-Yves Chibon |
3f434c |
<textarea class="form-control" id="ssh_key" name="ssh_key"></textarea>
|
|
Pierre-Yves Chibon |
3f434c |
|
|
Pierre-Yves Chibon |
3f434c |
|
|
Pierre-Yves Chibon |
3f434c |
<input class="btn btn-secondary ssh_key_btn" type="button" value="Cancel">
|
|
Pierre-Yves Chibon |
3f434c |
<input class="btn btn-primary" type="submit" value="Add">
|
|
Pierre-Yves Chibon |
3f434c |
{{ form.csrf_token }}
|
|
Pierre-Yves Chibon |
3f434c |
|
|
Pierre-Yves Chibon |
3f434c |
|
|
Pierre-Yves Chibon |
3f434c |
|
|
Pierre-Yves Chibon |
3f434c |
|
|
Pierre-Yves Chibon |
3f434c |
|
|
Pierre-Yves Chibon |
3f434c |
|
|
Pierre-Yves Chibon |
3f434c |
|
|
Ryan Lerch |
6d2e06 |
|
|
Pierre-Yves Chibon |
170fc9 |
{% endif %}
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
User Settings
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
<form action="{{ url_for('ui_ns.update_user_settings') }}" method="post"></form>
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
{% for key in user.settings | sort %}
|
|
Ryan Lerch |
6d2e06 |
{% if user.settings[key] in [True, False, 'y'] %}
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
<label class="custom-input custom-checkbox"></label>
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
if user.settings[key] -%}checked=""{%- endif -%}/>
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
Activate {{ key | replace('_', ' ') }}
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
{% else %}
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
<label for="{{ key }}">Activate {{ key | replace('_', ' ') }} :</label>
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
if user.settings[key] %}value="{{ user.settings[key] }}"{%
|
|
Ryan Lerch |
6d2e06 |
endif %} name="{{ key }}" />
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
{% endif %}
|
|
Ryan Lerch |
6d2e06 |
{% endfor %}
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
<input class="btn btn-primary" type="submit" value="Update">
|
|
Ryan Lerch |
6d2e06 |
{{ form.csrf_token }}
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Pierre-Yves Chibon |
170fc9 |
|
|
Pierre-Yves Chibon |
170fc9 |
|
|
Pierre-Yves Chibon |
170fc9 |
|
|
Pierre-Yves Chibon |
170fc9 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
Force Logout
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
Forcefully log out from every current open session.
|
|
Ryan Lerch |
6d2e06 |
|
|
Slavek Kabrda |
2200ff |
<form action="{{ url_for('ui_ns.force_logout') }}" method="post"></form>
|
|
Slavek Kabrda |
2200ff |
|
|
Slavek Kabrda |
2200ff |
value="Log out all currently active sessions">
|
|
Slavek Kabrda |
2200ff |
{{ form.csrf_token }}
|
|
Slavek Kabrda |
2200ff |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Patrick Uiterwijk |
ce6d6d |
|
|
Patrick Uiterwijk |
ce6d6d |
|
|
Patrick Uiterwijk |
ce6d6d |
|
|
Patrick Uiterwijk |
ce6d6d |
|
|
Ryan Lerch |
7eb66d |
|
|
Ryan Lerch |
6d2e06 |
{% endblock %}
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
{% block jscripts %}
|
|
Ryan Lerch |
6d2e06 |
{{ super() }}
|
|
Pierre-Yves Chibon |
7694ed |
<script nonce="{{ g.nonce }}" type="text/javascript"></script>
|
|
Ryan Lerch |
6d2e06 |
$(document).ready(function() {
|
|
Pierre-Yves Chibon |
36de81 |
$('.submit-btn').click(function() {
|
|
Pierre-Yves Chibon |
36de81 |
var _form_name = $(this).attr('data-form-id');
|
|
Pierre-Yves Chibon |
36de81 |
$('#' + _form-id).submit();
|
|
Pierre-Yves Chibon |
36de81 |
});
|
|
Pierre-Yves Chibon |
36de81 |
$('.remove-token-btn').click(function() {
|
|
Pierre-Yves Chibon |
36de81 |
return confirm('Are you sure to revoke this token ?'
|
|
Pierre-Yves Chibon |
36de81 |
+ '\nThis will break all application using it and '
|
|
Pierre-Yves Chibon |
36de81 |
+ 'cannot be un-done.');
|
|
Pierre-Yves Chibon |
36de81 |
})
|
|
Pierre-Yves Chibon |
36de81 |
$('.delete-email-btn').click(function() {
|
|
Pierre-Yves Chibon |
36de81 |
return confirm('Do you really want to remove the email: ' + $(this).attr('data-email') + '?');
|
|
Pierre-Yves Chibon |
36de81 |
})
|
|
Pierre-Yves Chibon |
36de81 |
$('.delete-sshkey-btn').click(function() {
|
|
Pierre-Yves Chibon |
36de81 |
return confirm('You sure you want to remove this SSH key?');
|
|
Pierre-Yves Chibon |
36de81 |
})
|
|
Pierre-Yves Chibon |
36de81 |
|
|
Ryan Lerch |
6d2e06 |
$('#nav-tab a.nav-link').on('shown.bs.tab', function (e) {
|
|
Ryan Lerch |
6d2e06 |
window.location.hash = e.target.hash+'-tab';
|
|
Ryan Lerch |
6d2e06 |
window.scrollTo(0,0);
|
|
Ryan Lerch |
6d2e06 |
});
|
|
Ryan Lerch |
6d2e06 |
|
|
Ryan Lerch |
6d2e06 |
if (!window.location.hash){
|
|
Ryan Lerch |
6d2e06 |
window.location.hash = "#nav-basic-tab"
|
|
Ryan Lerch |
6d2e06 |
}
|
|
farhaanbukhsh |
4886b4 |
|
|
Ryan Lerch |
6d2e06 |
window.onhashchange = function () {
|
|
Ryan Lerch |
6d2e06 |
$(window.location.hash).tab('show');
|
|
Ryan Lerch |
6d2e06 |
}
|
|
Pierre-Yves Chibon |
36de81 |
const _anchor = window.location.hash;
|
|
Pierre-Yves Chibon |
36de81 |
console.log(_anchor);
|
|
Pierre-Yves Chibon |
36de81 |
$(_anchor).tab('show');
|
|
Ryan Lerch |
6d2e06 |
window.scrollTo(0,0);
|
|
Pierre-Yves Chibon |
3f434c |
|
|
Pierre-Yves Chibon |
3f434c |
$(".ssh_key_btn").click(function() {
|
|
Pierre-Yves Chibon |
3f434c |
$(".ssh_key_block").toggle();
|
|
Pierre-Yves Chibon |
3f434c |
});
|
|
Ryan Lerch |
6d2e06 |
});
|
|
Ryan Lerch |
6d2e06 |
|
|
Pierre-Yves Chibon |
68537a |
{% endblock %}
|