Loading CHANGES.rst +5 −0 Original line number Diff line number Diff line Loading @@ -3,6 +3,11 @@ All notable changes to this project will be documented in this file. The format is based on `Keep a Changelog <https://keepachangelog.com/en/1.0.0/>`_, and this project adheres to `Semantic Versioning <https://semver.org/spec/v2.0.0.html>`_. Added ***** - User can chose their favourite display name. :pr:`77` [0.0.14] - 2022-11-29 ===================== Loading canaille/conf/config.sample.toml +12 −2 Original line number Diff line number Diff line Loading @@ -131,7 +131,17 @@ GROUP_BASE = "ou=groups,dc=mydomain,dc=tld" [ACL.DEFAULT] PERMISSIONS = ["edit_self", "use_oidc"] READ = ["uid", "groups"] WRITE = ["givenName", "sn", "userPassword", "telephoneNumber", "jpegPhoto", "mail", "labeledURI", "preferredLanguage"] WRITE = [ "givenName", "sn", "displayName", "userPassword", "telephoneNumber", "jpegPhoto", "mail", "labeledURI", "preferredLanguage", ] [ACL.ADMIN] FILTER = "memberof=cn=moderators,ou=groups,dc=mydomain,dc=tld" Loading Loading @@ -172,7 +182,7 @@ PHONE_NUMBER = "{{ user.telephoneNumber[0] }}" EMAIL = "{{ user.mail[0] }}" GIVEN_NAME = "{{ user.givenName[0] }}" FAMILY_NAME = "{{ user.sn[0] }}" PREFERRED_USERNAME = "{{ user.displayName[0] }}" PREFERRED_USERNAME = "{{ user.displayName }}" LOCALE = "{{ user.preferredLanguage[0] }}" ADDRESS = "{{ user.postalAddress[0] }}" PICTURE = "{% if user.jpegPhoto %}{{ url_for('account.photo', uid=user.uid[0], field='jpegPhoto', _external=True) }}{% endif %}" Loading canaille/forms.py +9 −0 Original line number Diff line number Diff line Loading @@ -123,6 +123,15 @@ PROFILE_FORM_FIELDS = dict( "autocorrect": "off", }, ), displayName=wtforms.StringField( _("Display Name"), validators=[wtforms.validators.Optional()], render_kw={ "placeholder": _("Johnny"), "spellcheck": "false", "autocorrect": "off", }, ), mail=wtforms.EmailField( _("Email address"), validators=[wtforms.validators.DataRequired(), wtforms.validators.Email()], Loading canaille/templates/profile.html +4 −1 Original line number Diff line number Diff line Loading @@ -118,9 +118,12 @@ {% if "sn" in form %} {% block sn_field scoped %}{{ render_field(form.sn) }}{% endblock %} {% endif %} </div> {% if "displayName" in form %} {% block display_name_field scoped %}{{ render_field(form.displayName) }}{% endblock %} {% endif %} {% if "jpegPhoto" in form %}</div></div>{% endif %} {% if "mail" in form %} Loading demo/conf-docker/canaille.toml +12 −2 Original line number Diff line number Diff line Loading @@ -132,7 +132,17 @@ GROUP_BASE = "ou=groups,dc=mydomain,dc=tld" [ACL.DEFAULT] PERMISSIONS = ["use_oidc"] READ = ["uid", "groups"] WRITE = ["jpegPhoto", "givenName", "sn", "userPassword", "telephoneNumber", "mail", "labeledURI", "preferredLanguage"] WRITE = [ "jpegPhoto", "givenName", "sn", "displayName", "userPassword", "telephoneNumber", "mail", "labeledURI", "preferredLanguage", ] [ACL.ADMIN] FILTER = "memberof=cn=admins,ou=groups,dc=mydomain,dc=tld" Loading Loading @@ -178,7 +188,7 @@ PHONE_NUMBER = "{{ user.telephoneNumber[0] }}" EMAIL = "{{ user.mail[0] }}" GIVEN_NAME = "{{ user.givenName[0] }}" FAMILY_NAME = "{{ user.sn[0] }}" PREFERRED_USERNAME = "{{ user.displayName[0] }}" PREFERRED_USERNAME = "{{ user.displayName }}" LOCALE = "{{ user.preferredLanguage[0] }}" ADDRESS = "{{ user.postalAddress[0] }}" PICTURE = "{% if user.jpegPhoto %}{{ url_for('account.photo', uid=user.uid[0], field='jpegPhoto', _external=True) }}{% endif %}" Loading Loading
CHANGES.rst +5 −0 Original line number Diff line number Diff line Loading @@ -3,6 +3,11 @@ All notable changes to this project will be documented in this file. The format is based on `Keep a Changelog <https://keepachangelog.com/en/1.0.0/>`_, and this project adheres to `Semantic Versioning <https://semver.org/spec/v2.0.0.html>`_. Added ***** - User can chose their favourite display name. :pr:`77` [0.0.14] - 2022-11-29 ===================== Loading
canaille/conf/config.sample.toml +12 −2 Original line number Diff line number Diff line Loading @@ -131,7 +131,17 @@ GROUP_BASE = "ou=groups,dc=mydomain,dc=tld" [ACL.DEFAULT] PERMISSIONS = ["edit_self", "use_oidc"] READ = ["uid", "groups"] WRITE = ["givenName", "sn", "userPassword", "telephoneNumber", "jpegPhoto", "mail", "labeledURI", "preferredLanguage"] WRITE = [ "givenName", "sn", "displayName", "userPassword", "telephoneNumber", "jpegPhoto", "mail", "labeledURI", "preferredLanguage", ] [ACL.ADMIN] FILTER = "memberof=cn=moderators,ou=groups,dc=mydomain,dc=tld" Loading Loading @@ -172,7 +182,7 @@ PHONE_NUMBER = "{{ user.telephoneNumber[0] }}" EMAIL = "{{ user.mail[0] }}" GIVEN_NAME = "{{ user.givenName[0] }}" FAMILY_NAME = "{{ user.sn[0] }}" PREFERRED_USERNAME = "{{ user.displayName[0] }}" PREFERRED_USERNAME = "{{ user.displayName }}" LOCALE = "{{ user.preferredLanguage[0] }}" ADDRESS = "{{ user.postalAddress[0] }}" PICTURE = "{% if user.jpegPhoto %}{{ url_for('account.photo', uid=user.uid[0], field='jpegPhoto', _external=True) }}{% endif %}" Loading
canaille/forms.py +9 −0 Original line number Diff line number Diff line Loading @@ -123,6 +123,15 @@ PROFILE_FORM_FIELDS = dict( "autocorrect": "off", }, ), displayName=wtforms.StringField( _("Display Name"), validators=[wtforms.validators.Optional()], render_kw={ "placeholder": _("Johnny"), "spellcheck": "false", "autocorrect": "off", }, ), mail=wtforms.EmailField( _("Email address"), validators=[wtforms.validators.DataRequired(), wtforms.validators.Email()], Loading
canaille/templates/profile.html +4 −1 Original line number Diff line number Diff line Loading @@ -118,9 +118,12 @@ {% if "sn" in form %} {% block sn_field scoped %}{{ render_field(form.sn) }}{% endblock %} {% endif %} </div> {% if "displayName" in form %} {% block display_name_field scoped %}{{ render_field(form.displayName) }}{% endblock %} {% endif %} {% if "jpegPhoto" in form %}</div></div>{% endif %} {% if "mail" in form %} Loading
demo/conf-docker/canaille.toml +12 −2 Original line number Diff line number Diff line Loading @@ -132,7 +132,17 @@ GROUP_BASE = "ou=groups,dc=mydomain,dc=tld" [ACL.DEFAULT] PERMISSIONS = ["use_oidc"] READ = ["uid", "groups"] WRITE = ["jpegPhoto", "givenName", "sn", "userPassword", "telephoneNumber", "mail", "labeledURI", "preferredLanguage"] WRITE = [ "jpegPhoto", "givenName", "sn", "displayName", "userPassword", "telephoneNumber", "mail", "labeledURI", "preferredLanguage", ] [ACL.ADMIN] FILTER = "memberof=cn=admins,ou=groups,dc=mydomain,dc=tld" Loading Loading @@ -178,7 +188,7 @@ PHONE_NUMBER = "{{ user.telephoneNumber[0] }}" EMAIL = "{{ user.mail[0] }}" GIVEN_NAME = "{{ user.givenName[0] }}" FAMILY_NAME = "{{ user.sn[0] }}" PREFERRED_USERNAME = "{{ user.displayName[0] }}" PREFERRED_USERNAME = "{{ user.displayName }}" LOCALE = "{{ user.preferredLanguage[0] }}" ADDRESS = "{{ user.postalAddress[0] }}" PICTURE = "{% if user.jpegPhoto %}{{ url_for('account.photo', uid=user.uid[0], field='jpegPhoto', _external=True) }}{% endif %}" Loading