prep country setting

This commit is contained in:
iw0 2024-04-10 18:47:00 +02:00
parent 99fd412a83
commit 2d0b884c0d
3 changed files with 281 additions and 14 deletions

View File

@ -38,7 +38,8 @@ async function getKundenkontoV2(){
"addr__email": data.email,
"addr__placename": data.hauptadresse.ort,
"addr__postcode": data.hauptadresse.plz,
"addr__street": data.hauptadresse.strasse
"addr__street": data.hauptadresse.strasse,
"addr__country": data.hauptadresse.land
}
}
return {}

View File

@ -11,10 +11,10 @@
<form>
<fieldset>
<legend>Main options</legend>
<label class="item">
<span class="fh">Enable autofill</span>
<input name="enable" id="enable" type="checkbox" />
</label>
<label class="item">
<span class="fh">Enable autofill</span>
<input name="enable" id="enable" type="checkbox" />
</label>
<label class="item">
<span class="fh">Skip questionnaire</span>
<input name="autocontinue" id="autocontinue" type="checkbox" />
@ -25,17 +25,17 @@
<fieldset>
<legend>Ticket data</legend>
<label class="item">
<label class="item">
<span class="fh">BahnCard 100 number</span><br />
<span class="sh">The number on the front of your card starting with <span class="ms">7081</span>.</span><br>
<input name="bcnum" id="bcnum" type="text" pattern="70814[0-9]{11}" required
title="Your BahnCard number is 16 digits long and starts with 7081." />
<button id="bcnum-get-from-profile">Get from profile</button>
</label>
<label class="item">
<span class="sh">The number on the front of your card starting with <span class="ms">7081</span>.</span><br>
<input name="bcnum" id="bcnum" type="text" pattern="70814[0-9]{11}" required
title="Your BahnCard number is 16 digits long and starts with 7081." />
<button id="bcnum-get-from-profile">Get from profile</button>
</label>
<label class="item">
<span class="fh">Date of birth</span><br>
<input name="birthday" id="birthday" type="date" required />
</label>
<input name="birthday" id="birthday" type="date" required />
</label>
</fieldset>
<fieldset>
<legend>Address data</legend>
@ -82,6 +82,269 @@
<span class="fh">Place</span><br>
<input name="placename" id="placename" />
</label>
<label class="item">
<span class="fh">Country</span><br>
<select name="country" id="country">
<option value="">Please choose</option>
<!-- Update using:
- Open form on "Personal details" section
- Open country select dropdown
- Execute:
d="";document.querySelectorAll(".test-adresse-land ul li").forEach(e=>d=d.concat('<option value="',e.dataset.value,'">',e.querySelector("span.db-web-select-list-item__value").innerHTML,'</option>\n'));
-->
<option value="AFG">Afghanistan</option>
<option value="ALA">Åland Islands</option>
<option value="ALB">Albania</option>
<option value="DZA">Algeria</option>
<option value="ASM">American Samoa</option>
<option value="AND">Andorra</option>
<option value="AGO">Angola</option>
<option value="AIA">Anguilla</option>
<option value="ATA">Antarctica</option>
<option value="ATG">Antigua and Barbuda</option>
<option value="ARG">Argentina</option>
<option value="ARM">Armenia</option>
<option value="ABW">Aruba</option>
<option value="AUS">Australia</option>
<option value="AUT">Austria</option>
<option value="AZE">Azerbaijan</option>
<option value="BHS">Bahamas</option>
<option value="BHR">Bahrain</option>
<option value="BGD">Bangladesh</option>
<option value="BRB">Barbados</option>
<option value="BLR">Belarus</option>
<option value="BEL">Belgium</option>
<option value="BLZ">Belize</option>
<option value="BEN">Benin</option>
<option value="BMU">Bermuda</option>
<option value="BTN">Bhutan</option>
<option value="BOL">Bolivia (Plurinational State of)</option>
<option value="BES">Bonaire, Sint Eustatius and Saba (NL)</option>
<option value="BIH">Bosnia and Herzegovina</option>
<option value="BWA">Botswana</option>
<option value="BVT">Bouvet Island</option>
<option value="BRA">Brazil</option>
<option value="IOT">British Indian Ocean Territory</option>
<option value="VGB">British Virgin Islands</option>
<option value="BRN">Brunei Darussalam</option>
<option value="BGR">Bulgaria</option>
<option value="BFA">Burkina Faso</option>
<option value="BDI">Burundi</option>
<option value="KHM">Cambodia</option>
<option value="CMR">Cameroon</option>
<option value="CAN">Canada</option>
<option value="CPV">Cape Verde</option>
<option value="CYM">Cayman Islands</option>
<option value="CAF">Central African Republic</option>
<option value="TCD">Chad</option>
<option value="CHL">Chile</option>
<option value="CHN">China, People's Republic of</option>
<option value="CXR">Christmas Island</option>
<option value="CCK">Cocos (Keeling) Islands</option>
<option value="COL">Colombia</option>
<option value="COM">Comoros</option>
<option value="COD">Congo, Democratic Republic of (formerly Zaire)</option>
<option value="COG">Congo, Republic (formerly Brazzaville)</option>
<option value="COK">Cook Islands</option>
<option value="CRI">Costa Rica</option>
<option value="CIV">Côte d'Ivoire (Ivory Coast)</option>
<option value="HRV">Croatia</option>
<option value="CUB">Cuba</option>
<option value="CUW">Curacao</option>
<option value="CYP">Cyprus</option>
<option value="CZE">Czech Republic (Czechia)</option>
<option value="DNK">Denmark</option>
<option value="DJI">Djibouti</option>
<option value="DMA">Dominica</option>
<option value="DOM">Dominican Republic</option>
<option value="TLS">East Timor (Timor-Leste)</option>
<option value="ECU">Ecuador</option>
<option value="EGY">Egypt</option>
<option value="SLV">El Salvador</option>
<option value="GNQ">Equatorial Guinea</option>
<option value="ERI">Eritrea</option>
<option value="EST">Estonia</option>
<option value="SWZ">Eswatini, Kingdom of</option>
<option value="ETH">Ethiopia</option>
<option value="FLK">Falkland Islands</option>
<option value="FRO">Faroe Islands</option>
<option value="FJI">Fiji</option>
<option value="FIN">Finland</option>
<option value="FRA">France</option>
<option value="GUF">French Guiana</option>
<option value="PYF">French Polynesia</option>
<option value="ATF">French Southern and Antarctic Lands</option>
<option value="GAB">Gabon</option>
<option value="GMB">Gambia</option>
<option value="GEO">Georgia</option>
<option value="DEU">Germany</option>
<option value="GHA">Ghana</option>
<option value="GIB">Gibraltar</option>
<option value="GBR">Great Britain &amp; Northern Ireland</option>
<option value="GRC">Greece</option>
<option value="GRL">Greenland</option>
<option value="GRD">Grenada</option>
<option value="GLP">Guadeloupe</option>
<option value="GUM">Guam</option>
<option value="GTM">Guatemala</option>
<option value="GGY">Guernsey (Channel Island)</option>
<option value="GIN">Guinea</option>
<option value="GNB">Guinea-Bissau</option>
<option value="GUY">Guyana</option>
<option value="HTI">Haiti</option>
<option value="HMD">Heard and McDonald Islands</option>
<option value="HND">Honduras</option>
<option value="HKG">Hong Kong</option>
<option value="HUN">Hungary</option>
<option value="ISL">Iceland</option>
<option value="IND">India</option>
<option value="IDN">Indonesia</option>
<option value="IRN">Iran, Islamic Republic of</option>
<option value="IRQ">Iraq</option>
<option value="IRL">Ireland</option>
<option value="IMN">Isle of Man</option>
<option value="ISR">Israel</option>
<option value="ITA">Italy</option>
<option value="JAM">Jamaica</option>
<option value="JPN">Japan</option>
<option value="JEY">Jersey (Channel Island)</option>
<option value="JOR">Jordan</option>
<option value="KAZ">Kazakhstan</option>
<option value="KEN">Kenya</option>
<option value="KIR">Kiribati</option>
<option value="PRK">Korea, Democratic People's Rep. of (North Korea)</option>
<option value="KOR">Korea, Republic of (South Korea)</option>
<option value="XKX">Kosovo</option>
<option value="KWT">Kuwait</option>
<option value="KGZ">Kyrgyzstan</option>
<option value="LAO">Lao People's Democratic Republic</option>
<option value="LVA">Latvia</option>
<option value="LBN">Lebanon</option>
<option value="LSO">Lesotho</option>
<option value="LBR">Liberia</option>
<option value="LBY">Libya</option>
<option value="LIE">Liechtenstein</option>
<option value="LTU">Lithuania</option>
<option value="LUX">Luxembourg</option>
<option value="MAC">Macao</option>
<option value="MDG">Madagascar</option>
<option value="MWI">Malawi</option>
<option value="MYS">Malaysia</option>
<option value="MDV">Maldives</option>
<option value="MLI">Mali</option>
<option value="MLT">Malta</option>
<option value="MHL">Marshall Islands</option>
<option value="MTQ">Martinique</option>
<option value="MRT">Mauritania</option>
<option value="MUS">Mauritius</option>
<option value="MYT">Mayotte</option>
<option value="MEX">Mexico</option>
<option value="FSM">Micronesia</option>
<option value="MDA">Moldova (Republic of Moldova)</option>
<option value="MCO">Monaco</option>
<option value="MNG">Mongolia</option>
<option value="MNE">Montenegro</option>
<option value="MSR">Montserrat</option>
<option value="MAR">Morocco</option>
<option value="MOZ">Mozambique</option>
<option value="MMR">Myanmar (Burma)</option>
<option value="NAM">Namibia</option>
<option value="NRU">Nauru</option>
<option value="NPL">Nepal</option>
<option value="NLD">Netherlands</option>
<option value="ANT">Netherlands Antilles</option>
<option value="NCL">New Caledonia</option>
<option value="NZL">New Zealand</option>
<option value="NIC">Nicaragua</option>
<option value="NER">Niger</option>
<option value="NGA">Nigeria</option>
<option value="NIU">Niue</option>
<option value="NFK">Norfolk Island</option>
<option value="MKD">North Macedonia</option>
<option value="MNP">Northern Mariana Islands</option>
<option value="NOR">Norway</option>
<option value="OMN">Oman</option>
<option value="PAK">Pakistan</option>
<option value="PLW">Palau</option>
<option value="PAN">Panama</option>
<option value="PNG">Papua New Guinea</option>
<option value="PRY">Paraguay</option>
<option value="PER">Peru</option>
<option value="PHL">Philippines</option>
<option value="PCN">Pitcairn Islands</option>
<option value="POL">Poland</option>
<option value="PRT">Portugal</option>
<option value="PRI">Puerto Rico</option>
<option value="QAT">Qatar</option>
<option value="TWN">Republic of China (Taiwan)</option>
<option value="REU">Réunion</option>
<option value="ROU">Romania</option>
<option value="RUS">Russian Federation</option>
<option value="RWA">Rwanda</option>
<option value="BLM">Saint Barthélemy</option>
<option value="MAF">Saint-Martin (French part)</option>
<option value="WSM">Samoa</option>
<option value="SMR">San Marino</option>
<option value="STP">Sao Tome and Principe</option>
<option value="SAU">Saudi Arabia</option>
<option value="SEN">Senegal</option>
<option value="SRB">Serbia</option>
<option value="SYC">Seychelles</option>
<option value="SLE">Sierra Leone</option>
<option value="SGP">Singapore</option>
<option value="SXM">Sint Maarten (Dutch part)</option>
<option value="SVK">Slovakia</option>
<option value="SVN">Slovenia</option>
<option value="SLB">Solomon Islands</option>
<option value="SOM">Somalia</option>
<option value="ZAF">South Africa</option>
<option value="SGS">South Georgia and the South Sandwich Islands</option>
<option value="SSD">South Sudan</option>
<option value="ESP">Spain</option>
<option value="LKA">Sri Lanka</option>
<option value="SHN">St. Helena</option>
<option value="KNA">St. Kitts and Nevis</option>
<option value="LCA">St. Lucia</option>
<option value="SPM">St. Pierre and Miquelon</option>
<option value="VCT">St. Vincent and the Grenadines</option>
<option value="PSE">State of Palestine</option>
<option value="SDN">Sudan</option>
<option value="SUR">Suriname</option>
<option value="SJM">Svalbard and Jan Mayen</option>
<option value="SWE">Sweden</option>
<option value="CHE">Switzerland</option>
<option value="SYR">Syrian Arab Republic</option>
<option value="TJK">Tajikistan</option>
<option value="TZA">Tanzania, United Republic of</option>
<option value="THA">Thailand</option>
<option value="TGO">Togo</option>
<option value="TKL">Tokelau</option>
<option value="TON">Tonga</option>
<option value="TTO">Trinidad and Tobago</option>
<option value="TUN">Tunisia</option>
<option value="TUR">Turkey</option>
<option value="TKM">Turkmenistan</option>
<option value="TCA">Turks and Caicos Islands</option>
<option value="TUV">Tuvalu</option>
<option value="VIR">U.S. Virgin Islands</option>
<option value="UGA">Uganda</option>
<option value="UKR">Ukraine</option>
<option value="ARE">United Arab Emirates</option>
<option value="USA">United States of America</option>
<option value="URY">Uruguay</option>
<option value="UMI">US Minor Outlying Islands</option>
<option value="UZB">Uzbekistan</option>
<option value="VUT">Vanuatu</option>
<option value="VAT">Vatican City</option>
<option value="VEN">Venezuela (Bolivarian Republic of)</option>
<option value="VNM">Vietnam</option>
<option value="WLF">Wallis and Futuna</option>
<option value="ESH">Western Sahara</option>
<option value="YEM">Yemen</option>
<option value="ZMB">Zambia</option>
<option value="ZWE">Zimbabwe</option>
</select>
</label>
</fieldset>
<fieldset>
<legend>Bank details</legend>

View File

@ -86,6 +86,7 @@ async function saveOptions(ev) {
let postCode = this.querySelector('#postcode').value;
let placeName = this.querySelector('#placename').value;
let iban = this.querySelector('#iban').value.replaceAll(" ", "");
let country = this.querySelector("#country").value;
if (iban != "" && !ibanValidate(iban)) {
putError("Please check your IBAN for typing errors.");
return;
@ -104,6 +105,7 @@ async function saveOptions(ev) {
addr__street: streetAddr,
addr__postcode: postCode,
addr__placename: placeName,
addr__country: country,
pymt__iban: iban,
pymt__bic: bic
};
@ -138,6 +140,7 @@ async function restoreOptions() {
document.querySelector('#addr1').value = settings.addr__street || "";
document.querySelector('#postcode').value = settings.addr__postcode || "";
document.querySelector('#placename').value = settings.addr__placename || "";
document.querySelector('#country').value = settings.addr__country || "";
document.querySelector('#iban').value = settings.pymt__iban || "";
document.querySelector('#bic').value = settings.pymt__bic || "";
}