{% set hide_left_bar = True %} {% extends g.theme.master %} {% block title %}{{c.user.username}} / Preferences{% endblock %} {% block header %}User Preferences for {{c.user.username}}{% endblock %} {% block content %}

Personal Settings

{{g.theme.personal_data_form.display(action="/auth/prefs/change_personal_data", user=c.user)}}

Personal Contacts

Skype account

{{g.theme.skype_account_form.display(action="/auth/prefs/skype_account", initial_value=c.user.get_pref('skypeaccount'))}} {%if c.user.get_pref('socialnetworks') or c.user.get_pref('telnumbers') or c.user.get_pref('webpages') %}

Other existing contacts

{% for sn in c.user.get_pref('socialnetworks') %} {{g.theme.remove_socialnetwork_form.display(account=sn.accounturl, socialnetwork=sn.socialnetwork)}} {% endfor %} {% for tn in c.user.get_pref('telnumbers') %} {{g.theme.remove_textvalue_form.display(action="/auth/prefs/remove_telnumber", value=tn, label="Telephone number")}} {%endfor%} {% for ws in c.user.get_pref('webpages') %} {{g.theme.remove_textvalue_form.display(action="/auth/prefs/remove_webpage", value=ws, label="Website url")}} {%endfor%}
Type Contact Actions
{% endif %}

Add a social network account

{{g.theme.add_socialnetwork_form.display(action="/auth/prefs/add_social_network")}}

Add a telephone number

{{g.theme.add_telnumber_form.display(action="/auth/prefs/add_telnumber")}}

Add a personal website

{{g.theme.add_website_form.display(action="/auth/prefs/add_webpage")}}

Availability

If you want, you can set the weekly timeslot during which you are usually available to support other users of the forge. Please, set your time intervals choosing a weekday and entering the time interval according to the timezone specified in your personal data, using the format HH:MM. If you didn't set any timezone, your timeslots could be meaningless to other users, therefore they will be ignored.
You can also specify periods of time during which you won't be able to work on the forge, in orther to communicate other users that they can't contact you during those days. Please, do it specifying date intervals in format DD/MM/YYYY.
{%if c.user.get_availability_timeslots() %}

Existing availability timeslots

{% for ts in c.user.get_availability_timeslots() %} {{g.theme.remove_timeslot_form.display( action="/auth/prefs/remove_timeslot", weekday=ts.week_day, starttime=ts.start_time, endtime=ts.end_time)}} {%endfor%}
Weekday Start time End time Actions
{% endif %}

Add a new availability timeslot

{{g.theme.add_timeslot_form.display(action="/auth/prefs/add_timeslot")}}
{%if c.user.get_inactive_periods() %}

Existing periods of inactivity on the forge

{% for ip in c.user.get_inactive_periods() %} {{g.theme.remove_inactive_period_form.display( action="/auth/prefs/remove_inactive_period", startdate=ip.start_date, enddate=ip.end_date)}} {%endfor%}
Start date End date Actions
{% endif %}

Add a new period of inactivity on the forge

{{g.theme.add_inactive_period_form.display(action="/auth/prefs/add_inactive_period")}}

Skills list

{% if g.theme.password_change_form %}

Change Password

{{ g.theme.password_change_form.display() }}
{% endif %} {% if g.theme.upload_key_form %}

Upload ssh public key

{{ g.theme.upload_key_form.display() }}
{% endif %} {% if tg.config.get('auth.method', 'local') == 'local' %}

API Token

{% if api_token %}

API Key:
{{api_token.api_key}}
Secret Key:
{{api_token.secret_key}}

{% else %}

No API token generated

{% endif %}
{% endif %}

Authorized Third-party Applications

{% for access_tok in authorized_applications %}

{{access_tok.consumer_token.name}}

{{access_tok.consumer_token.description_html}} {{ c.revoke_access.display(value=access_tok) }}
{% endfor %} {% if not authorized_applications %}

No authorized third-party applications

{% endif %}

Subscriptions

{% if subscriptions %}

Mark tools that you want to subscribe to. Unmark tools that you want to unsubscribe from. Press 'Save' button.

{{c.form.display(action='update_subscriptions', value=dict(subscriptions=subscriptions))}} {% else%}

No subscriptions.

{% endif %}
 
{% if tg.config.get('auth.method', 'local') == 'local' %}
{% endif %}
{% if tg.config.get('auth.method', 'local') == 'local' %}
{% endif %} {% if tg.config.get('auth.method', 'local') == 'local' %} {% for a in c.user.email_addresses %} {% endfor %} {% if c.user.email_addresses %}

Email Addresses

{% for a in c.user.email_addresses %} {% set obj = c.user.address_object(a) %} {% if obj %} {% else %} {% endif %} {% endfor %}
Primary? Address Confirmed
{{lib.radio_button('primary_addr', None, a, c.user.preferences.email_address)}} {{a}} {% if obj.confirmed %} yes {% else %} no (verify) {% endif %} Unknown addr obj {{a}}{{lib.submit_button('Delete', 'addr-%s.delete' % i)}}
{% endif %}
{{lib.text_field('new_addr.addr', 'New Email Address')}} {{lib.submit_button('Claim Address', name='new_addr.claim')}}
{% if c.user.open_ids %}

OpenIDs Claimed

{% for oid in c.user.open_ids %} {% set obj = c.user.openid_object(oid) %} {% endfor %}
OpenID
{{oid}} {{lib.submit_button('Delete', 'oid-%s.delete' % loop.index0)}}
{% endif %}
Claim New OpenID
{% endif %}
{{lib.submit_button('Save Changes')}}
{% endblock %}