[% USE raw %] [% USE Asset %] [% USE AuthorisedValues %] [% USE Categories %] [% USE Koha %] [% USE Branches %] [% USE KohaDates %] [% USE Math %] [% SET userupdateview = 1 %] [% BLOCK streetnumber %] [% UNLESS hidden.defined('streetnumber') %]
  • [% IF mandatory.defined('streetnumber') %] [% ELSE %] [% END %] [% IF mandatory.defined('streetnumber') %]Required[% END %]
  • [% END %] [% END %] [% INCLUDE 'doc-head-open.inc' %] [% IF ( LibraryNameTitle ) %][% LibraryNameTitle | html %][% ELSE %]Koha online[% END %] catalog › [% IF action == 'edit' %]Update your personal details[% ELSE %]Register a new account[% END %] [% INCLUDE 'doc-head-close.inc' %] [% BLOCK cssinclude %][% END %] [% IF action == 'edit' %] [% INCLUDE 'bodytag.inc' bodyid='opac-patron-update' %] [% ELSE %] [% END %] [% INCLUDE 'masthead.inc' %]
    [% IF action == 'edit' %]
    [% ELSE %]
    [% END %] [% IF action == 'edit' %] [% UNLESS OPACPatronDetails %]
    To make changes to your record please contact the library.
    [% END %] [% IF nochanges %]
    No changes were made.
    [% END %] [% END %] [% IF empty_mandatory_fields %]
    You have not filled out all required fields. Please fill in all missing fields and resubmit.
    [% END %] [% IF invalid_form_fields %]
    The following fields contain invalid information:
      [% FOREACH field IN invalid_form_fields %] [% IF field == "email" %]
    • Contact information: primary email address
    • [% END %] [% IF field == "emailpro" %]
    • Contact information: secondary email address
    • [% END %] [% IF field == "B_email" %]
    • Alternate address information: email address
    • [% END %] [% IF field == "password_match" %]
    • Passwords do not match! password
    • [% END %] [% IF field == "password_too_short" %]
    • Password must be at least [% minPasswordLength | html %] characters long.
    • [% END %] [% IF field == "password_too_weak" %]
    • Password must contain at least one digit, one lowercase and one uppercase.
    • [% END %] [% IF field == "password_has_whitespaces" %]
    • Password must not contain leading or trailing whitespaces.
    • [% END %] [% IF field == "duplicate_email" %]
    • This email address already exists in our database.
    • [% END %] [% IF field == "email_match" %]
    • Emails do not match! confirm email address
    • [% END %] [% END %]
    Please correct and resubmit.
    [% END %] [% IF cardnumber_wrong_length || cardnumber_already_exists %]
    [% IF cardnumber_wrong_length %] The entered card number is the wrong length. [% ELSIF cardnumber_already_exists %] The entered card number is already in use. [% END %] Please correct and resubmit.
    [% END %] [% IF failed_captcha %]
    You typed in the wrong characters in the box before submitting. Please try again.
    [% END %] [% IF has_guarantor_flag && !Koha.Preference('OPACPrivacy') && ( Koha.Preference('AllowPatronToSetCheckoutsVisibilityForGuarantor') || Koha.Preference('AllowPatronToSetFinesVisibilityForGuarantor') ) %]
    Privacy
      [% IF Koha.Preference('AllowPatronToSetCheckoutsVisibilityForGuarantor') %]
    1. Update
    2. [% END %] [% IF Koha.Preference('AllowPatronToSetFinesVisibilityForGuarantor') %]
    3. Update
    4. [% END %]
    5. Guaranteed by [% FOREACH gr IN patron.guarantor_relationships %] [% SET g = gr.guarantor %] [% g.firstname | html %] [% g.surname | html %] [%- IF ! loop.last %], [% END %] [% END %]
    [% END %] [% IF ( extended_unique_id_failed_code ) %]
    [% extended_unique_id_failed_description _ ': ' | html %] Value is already in use ([% extended_unique_id_failed_value | html %])
    [% END %]
    [%# Following on one line for translatability %] [% UNLESS ( hidden.defined('cardnumber') || ( !borrower && Koha.Preference('autoMemberNum') ) ) && hidden.defined('dateexpiry') && hidden.defined('branchcode') && hidden.defined('categorycode') %]
    Library
      [% UNLESS hidden.defined('cardnumber') || ( !borrower && Koha.Preference('autoMemberNum') ) %]
    1. [% IF mandatory.defined('cardnumber') %] [% ELSE %] [% END %] [% IF borrower && !(cardnumber_wrong_length || cardnumber_already_exists) %] [% borrower.cardnumber | html %] [% ELSE %] [% IF minlength_cardnumber == maxlength_cardnumber %] [% IF ( mandatory.defined('cardnumber') ) %]Required[% END %]
      Card number must be exactly [% minlength_cardnumber | html %] characters.
      [% ELSIF minlength_cardnumber && maxlength_cardnumber %] [% IF ( mandatory.defined('cardnumber') ) %]Required[% END %]
      Card number must be between [% minlength_cardnumber | html %] and [% maxlength_cardnumber | html %] characters.
      [% ELSIF maxlength_cardnumber %] [% IF ( mandatory.defined('cardnumber') ) %]Required[% END %]
      Card number can be up to [% maxlength_cardnumber | html %] characters.
      [% ELSE %] [% IF ( mandatory.defined('cardnumber') ) %]Required[% END %]
      There is no minimum or maximum character length.
      [% END %] [% END %]
    2. [% END %] [% UNLESS hidden.defined('dateexpiry') %]
    3. [% borrower.dateexpiry | $KohaDates %]
    4. [% END %] [% UNLESS hidden.defined('branchcode') %]
    5. [% IF mandatory.defined('branchcode') %] [% ELSE %] [% END %]
    6. [% END %] [% UNLESS hidden.defined('categorycode') %]
    7. [% IF borrower %] [% Categories.GetName( borrower.categorycode ) | html %] [% ELSE %] [% END %]
    8. [% END %]
    [% END # / defined 'branchcode' %] [%# Following on one line for translatability %] [% UNLESS hidden.defined('title') && hidden.defined('surname') && hidden.defined('firstname') && hidden.defined('dateofbirth') && hidden.defined('initials') && hidden.defined('othernames') && hidden.defined('sex') %]
    Identity
      [% UNLESS hidden.defined('title') || !Koha.Preference('BorrowersTitles') %]
    1. [% IF mandatory.defined('title') %] [% ELSE %] [% END %]
    2. [% END %] [% UNLESS hidden.defined('surname') %]
    3. [% IF mandatory.defined('surname') %] [% ELSE %] [% END %] [% IF mandatory.defined('surname') %]Required[% END %]
    4. [% END %] [% UNLESS hidden.defined('firstname') %]
    5. [% IF mandatory.defined('firstname') %] [% ELSE %] [% END %] [% IF mandatory.defined('firstname') %]Required[% END %]
    6. [% END %] [% UNLESS hidden.defined('dateofbirth') %]
    7. [% IF mandatory.defined('dateofbirth') %] [% ELSE %] [% END %] [% UNLESS action == 'edit' && !OPACPatronDetails %] [% UNLESS ( mandatory.defined('dateofbirth') ) %] Clear date [% END %] [% END %] [% IF mandatory.defined('dateofbirth') %]Required[% END %]
    8. [% END %] [% UNLESS hidden.defined('initials') %]
    9. [% IF mandatory.defined('initials') %] [% ELSE %] [% END %] [% IF mandatory.defined('initials') %]Required[% END %]
    10. [% END %] [% UNLESS hidden.defined('othernames') %]
    11. [% IF mandatory.defined('othernames') %] [% ELSE %] [% END %] [% IF mandatory.defined('othernames') %]Required[% END %]
    12. [% END %] [% UNLESS hidden.defined('sex') %]
    13. [% IF borrower.sex == 'F' %] [% ELSE %] [% END %] [% IF borrower.sex == 'M' %] [% ELSE %] [% END %] [% IF borrower.sex == 'O' %] [% ELSE %] [% END %] [% IF borrower.sex == '' %] [% ELSE %] [% END %]
    14. [% END %]
    [% IF ( display_patron_image ) %]

    [% END %]
    [% END # /UNLESS fields hidden %] [%# Following on one line for translatability %] [% UNLESS hidden.defined('streetnumber') && hidden.defined('address') && hidden.defined('address2') && hidden.defined('city') && hidden.defined('state') && hidden.defined('zipcode') && hidden.defined('country') %]
    Main address
      [% IF Koha.Preference('AddressFormat') != 'de' %][% INCLUDE streetnumber %][% END %] [% UNLESS hidden.defined('address') %]
    1. [% IF mandatory.defined('address') %] [% ELSE %] [% END %] [% IF mandatory.defined('address') %]Required[% END %]
    2. [% END %] [% IF Koha.Preference('AddressFormat') == 'de' %][% INCLUDE streetnumber %][% END %] [% UNLESS hidden.defined('address2') %]
    3. [% IF mandatory.defined('address2') %] [% ELSE %] [% END %] [% IF mandatory.defined('address2') %]Required[% END %]
    4. [% END %] [% UNLESS hidden.defined('city') %]
    5. [% IF mandatory.defined('city') %] [% ELSE %] [% END %] [% IF mandatory.defined('city') %]Required[% END %]
    6. [% END %] [% UNLESS hidden.defined('state') %]
    7. [% IF mandatory.defined('state') %] [% ELSE %] [% END %] [% IF mandatory.defined('state') %]Required[% END %]
    8. [% END %] [% UNLESS hidden.defined('zipcode') %]
    9. [% IF mandatory.defined('zipcode') %] [% ELSE %] [% END %] [% IF mandatory.defined('zipcode') %]Required[% END %]
    10. [% END %] [% UNLESS hidden.defined('country') %]
    11. [% IF mandatory.defined('country') %] [% ELSE %] [% END %] [% IF mandatory.defined('country') %]Required[% END %]
    12. [% END %]
    [% END %] [%# Following on one line for translatability %] [% UNLESS hidden.defined('phone') && hidden.defined('phonepro') && hidden.defined('mobile') && hidden.defined('email') && hidden.defined('emailpro') && hidden.defined('fax') %]
    Contact information
      [% UNLESS hidden.defined('phone') %]
    1. [% IF mandatory.defined('phone') %] [% ELSE %] [% END %] [% IF mandatory.defined('phone') %]Required[% END %]
    2. [% END %] [% UNLESS hidden.defined('phonepro') %]
    3. [% IF mandatory.defined('phonepro') %] [% ELSE %] [% END %] [% IF mandatory.defined('phonepro') %]Required[% END %]
    4. [% END %] [% UNLESS hidden.defined('mobile') %]
    5. [% IF mandatory.defined('mobile') %] [% ELSE %] [% END %] [% IF mandatory.defined('mobile') %]Required[% END %]
    6. [% END %] [% UNLESS hidden.defined('email') %]
    7. [% IF mandatory.defined('email') %] [% ELSE %] [% END %] [% IF mandatory.defined('email') %]Required[% END %]
    8. [% IF action != 'edit' and Koha.Preference('PatronSelfRegistrationConfirmEmail') %]
    9. [% IF mandatory.defined('email') %] [% ELSE %] [% END %] [% IF mandatory.defined('email') %]Required[% END %]
    10. [% END %] [% END %] [% UNLESS hidden.defined('emailpro') %]
    11. [% IF mandatory.defined('emailpro') %] [% ELSE %] [% END %] [% IF mandatory.defined('emailpro') %]Required[% END %]
    12. [% END %] [% UNLESS hidden.defined('fax') %]
    13. [% IF mandatory.defined('fax') %] [% ELSE %] [% END %] [% IF mandatory.defined('fax') %]Required[% END %]
    14. [% END %]
    [% END %] [%# Following on one line for translatability %] [% UNLESS hidden.defined('B_address') && hidden.defined('B_address2') && hidden.defined('B_city') && hidden.defined('B_state') && hidden.defined('B_zipcode') && hidden.defined('B_country') && hidden.defined('B_phone') && hidden.defined('B_email') && hidden.defined('contactnote') %]
    Alternate address
      [% UNLESS hidden.defined('B_address') %]
    1. [% IF mandatory.defined('B_address') %] [% ELSE %] [% END %] [% IF mandatory.defined('B_address') %]Required[% END %]
    2. [% END %] [% UNLESS hidden.defined('B_address2') %]
    3. [% IF mandatory.defined('B_address2') %] [% ELSE %] [% END %] [% IF mandatory.defined('B_address2') %]Required[% END %]
    4. [% END %] [% UNLESS hidden.defined('B_city') %]
    5. [% IF mandatory.defined('B_city') %] [% ELSE %] [% END %] [% IF mandatory.defined('B_city') %]Required[% END %]
    6. [% END %] [% UNLESS hidden.defined('B_state') %]
    7. [% IF mandatory.defined('B_state') %] [% ELSE %] [% END %] [% IF mandatory.defined('B_state') %]Required[% END %]
    8. [% END %] [% UNLESS hidden.defined('B_zipcode') %]
    9. [% IF mandatory.defined('B_zipcode') %] [% ELSE %] [% END %] [% IF mandatory.defined('B_zipcode') %]Required[% END %]
    10. [% END %] [% UNLESS hidden.defined('B_country') %]
    11. [% IF mandatory.defined('B_country') %] [% ELSE %] [% END %] [% IF mandatory.defined('B_country') %]Required[% END %]
    12. [% END %] [% UNLESS hidden.defined('B_phone') %]
    13. [% IF mandatory.defined('B_phone') %] [% ELSE %] [% END %] [% IF mandatory.defined('B_phone') %]Required[% END %]
    14. [% END %] [% UNLESS hidden.defined('B_email') %]
    15. [% IF mandatory.defined('B_email') %] [% ELSE %] [% END %] [% IF mandatory.defined('B_email') %]Required[% END %]
    16. [% END %] [% UNLESS hidden.defined('contactnote') %]
    17. [% IF mandatory.defined('contactnote') %] [% ELSE %] [% END %] [% IF mandatory.defined('contactnote') %]Required[% END %]
    18. [% END %]
    [% END %] [%# Following on one line for translatability %] [% UNLESS hidden.defined('altcontactsurname') && hidden.defined('altcontactfirstname') && hidden.defined('altcontactaddress1') && hidden.defined('altcontactaddress2') && hidden.defined('altcontactaddress3') && hidden.defined('altcontactstate') && hidden.defined('altcontactzipcode') && hidden.defined('altcontactcountry') && hidden.defined('altcontactphone') %]
    Alternate contact
      [% UNLESS hidden.defined('altcontactsurname') %]
    1. [% IF mandatory.defined('altcontactsurname') %] [% ELSE %] [% END %] [% IF mandatory.defined('altcontactsurname') %]Required[% END %]
    2. [% END %] [% UNLESS hidden.defined('altcontactfirstname') %]
    3. [% IF mandatory.defined('altcontactfirstname') %] [% ELSE %] [% END %] [% IF mandatory.defined('altcontactfirstname') %]Required[% END %]
    4. [% END %] [% UNLESS hidden.defined('altcontactaddress1') %]
    5. [% IF mandatory.defined('altcontactaddress1') %] [% ELSE %] [% END %] [% IF mandatory.defined('altcontactaddress1') %]Required[% END %]
    6. [% END %] [% UNLESS hidden.defined('altcontactaddress2') %]
    7. [% IF mandatory.defined('altcontactaddress2') %] [% ELSE %] [% END %] [% IF mandatory.defined('altcontactaddress2') %]Required[% END %]
    8. [% END %] [% UNLESS hidden.defined('altcontactaddress3') %]
    9. [% IF mandatory.defined('altcontactaddress3') %] [% ELSE %] [% END %] [% IF mandatory.defined('altcontactaddress3') %]Required[% END %]
    10. [% END %] [% UNLESS hidden.defined('altcontactstate') %]
    11. [% IF mandatory.defined('altcontactstate') %] [% ELSE %] [% END %] [% IF mandatory.defined('altcontactstate') %]Required[% END %]
    12. [% END %] [% UNLESS hidden.defined('altcontactzipcode') %]
    13. [% IF mandatory.defined('altcontactzipcode') %] [% ELSE %] [% END %] [% IF mandatory.defined('altcontactzipcode') %]Required[% END %]
    14. [% END %] [% UNLESS hidden.defined('altcontactcountry') %]
    15. [% IF mandatory.defined('altcontactcountry') %] [% ELSE %] [% END %] [% IF mandatory.defined('altcontactcountry') %]Required[% END %]
    16. [% END %] [% UNLESS hidden.defined('altcontactphone') %]
    17. [% IF mandatory.defined('altcontactphone') %] [% ELSE %] [% END %] [% IF mandatory.defined('altcontactphone') %]Required[% END %]
    18. [% END %]
    [% END %] [% UNLESS action == 'edit' || hidden.defined('password') %]
    Password
    [% IF ( Koha.Preference('RequireStrongPassword') ) %]

    Your password must contain at least [% Koha.Preference('minPasswordLength') | html %] characters, including UPPERCASE, lowercase and numbers.

    [% ELSE %]

    Your password must be at least [% Koha.Preference('minPasswordLength') | html %] characters long.

    [% END %] [% UNLESS mandatory.defined('password') %]

    If you do not enter a password a system generated password will be created.

    [% END %]
    [% IF mandatory.defined('password') %]
    1. Required
    2. Required
    [% ELSE %]
    [% END %]
    [% END %] [% IF ( Koha.Preference('ExtendedPatronAttributes') && patron_attribute_classes.size && action != 'new' ) %]
    [% FOREACH pa_class IN patron_attribute_classes %] [% IF pa_class.class %]
    [% pa_class.lib | html %] [% ELSE %]
    Additional information [% END %]
      [% FOREACH pa IN pa_class.items %] [% FOREACH pa_value IN pa.values %] [% IF loop.first %][% END %] [% form_id = 'patron-attr-' _ Math.int( Math.rand(1000000) ) %]
    1. [% IF pa.type.mandatory && pa.type.opac_editable %] [% ELSE %] [% END %] [% IF pa.type.opac_editable %] [% IF ( pa.type.authorised_value_category ) %] [% ELSE %] [% END %] [% IF pa.type.mandatory %] Required [% END %] Clear [% IF ( pa.type.repeatable ) %] New [% END %] [% ELSE %] [% IF ( pa.type.authorised_value_category ) %] [% AuthorisedValues.GetByCode( pa.type.authorised_value_category, pa_value, 1 ) | html_line_break %] [% ELSE %] [% pa_value | html_line_break %] [% END %] [% END %]
    2. [% END %] [% END %]
    [% END %]
    [% END %] [% IF Koha.Preference('GDPR_Policy') && action != 'edit' %]
    [% END %] [% UNLESS action == 'edit' %]
    Verification
    1. Please type the following characters into the preceding box: [% captcha | html %]
    [% END %]
    [% IF action == 'edit' %] [% IF OPACPatronDetails %]
    [% END %] [% ELSE %]
    [% END %]
    [% INCLUDE 'opac-bottom.inc' %] [% BLOCK jsinclude %] [% Asset.js("lib/jquery/plugins/jquery.validate.min.js") | $raw %] [% PROCESS 'password_check.inc' %] [% PROCESS 'add_password_check' new_password => 'borrower_password' %] [% INCLUDE 'calendar.inc' %] [% END %]