{% import 'macros/form.html' as form %}

<form id="user-edit-form" class="dataset-form form-horizontal" method="post" action="{{ action }}">
  {{ form.errors(error_summary) }}

  <fieldset>
    <legend>{{ _('Change details') }}</legend>
    {{ form.input('name', label=_('Username'), id='field-username', value=data.name, error=errors.name, classes=['control-medium'], is_required=true) }}

    {{ form.input('fullname', label=_('Full name'), id='field-fullname', value=data.fullname, error=errors.fullname, placeholder=_('eg. Joe Bloggs'), classes=['control-medium']) }}

    {{ form.input('email', label=_('Email'), id='field-email', type='email', value=data.email, error=errors.email, placeholder=_('eg. joe@example.com'), classes=['control-medium'], is_required=true) }}

    {{ form.markdown('about', label=_('About'), id='field-about', value=data.about, error=errors.about, placeholder=_('A little information about yourself')) }}

    {% if c.show_email_notifications %}
      {% call form.checkbox('activity_streams_email_notifications', label=_('Subscribe to notification emails'), id='field-activity-streams-email-notifications', value=True, checked=c.userobj.activity_streams_email_notifications) %}
      {% set helper_text = _("You will receive notification emails from {site_title}, e.g. when you have new activities on your dashboard."|string) %}
      {{ form.info(helper_text.format(site_title=g.site_title), classes=['info-help-tight']) }}
      {% endcall %}
    {% endif %}

  </fieldset>

  <fieldset>
    <legend>{{ _('Change password') }}</legend>
    {{ form.input('old_password', type='password', label=_('Old Password'), id='field-password', value=data.oldpassword, error=errors.oldpassword, classes=['control-medium'], attrs={'autocomplete': 'off'} ) }}

    {{ form.input('password1', type='password', label=_('Password'), id='field-password', value=data.password1, error=errors.password1, classes=['control-medium'], attrs={'autocomplete': 'off'} ) }}

    {{ form.input('password2', type='password', label=_('Confirm Password'), id='field-password-confirm', value=data.password2, error=errors.password2, classes=['control-medium'], attrs={'autocomplete': 'off'}) }}
  </fieldset>

  <div class="form-actions">
    {% block delete_button %}
      {% if h.check_access('user_delete', {'id': data.id})  %}
        {% set locale = h.dump_json({'content': _('Are you sure you want to delete this User?')}) %}
        <a class="btn btn-danger pull-left" href="{% url_for controller='user', action='delete', id=data.id %}" data-module="confirm-action" data-module-i18n="{{ locale }}">{% block delete_button_text %}{{ _('Delete') }}{% endblock %}</a>
      {% endif %}
    {% endblock %}
    {% block generate_button %}
      {% if h.check_access('user_generate_apikey', {'id': data.id})  %}
        {% set locale = h.dump_json({'content': _('Are you sure you want to regenerate the API key?')}) %}
        <a class="btn btn-warning" href="{% url_for controller='user', action='generate_apikey', id=data.id %}" data-module="confirm-action" data-module-i18n="{{ locale }}">{% block generate_button_text %}{{ _('Regenerate API Key') }}{% endblock %}</a>
      {% endif %}
    {% endblock %}
    {{ form.required_message() }}
    <button class="btn btn-primary" type="submit" name="save">{{ _('Update Profile') }}</button>
  </div>
</form>
