make BIC optional, fix IBAN validator

This commit is contained in:
Ricardo (XenGi) Band 2025-04-04 22:34:54 +02:00
commit 1c2bab4491
No known key found for this signature in database
3 changed files with 12 additions and 6 deletions

View file

@ -15,3 +15,6 @@ qr-creator:
curl -Lsf https://cdn.jsdelivr.net/npm/qr-creator/dist/qr-creator.min.js -o js/qr-creator.min.js
curl -Lsf https://raw.githubusercontent.com/nimiq/qr-creator/refs/heads/master/src/qr-creator.js -o js/qr-creator.js
.PHONY: install
install:
rsync -var --progress ./css ./js ./index.html ./site.webmanifest mariko:/srv/www/bezahlbrudi.jetzt/

View file

@ -12,18 +12,18 @@
<meta name="application-name" content="BezahlBrudi">
<!-- seo data -->
<meta name="description" lang="en" content="Webapp that generates GiroCodes so that you can easily exchange money with friends and family without involving third party financial services">
<meta name="description" lang="en" content="Webapp that generates GiroCodes (EPC QR-Code) so that you can easily exchange money with friends and family without involving third party financial services">
<meta name="keywords" lang="en" content="giro, sepa, money, finance">
<meta name="author" content="XenGi">
<link rel="canonical" href="https://bezahlbrudi.jetzt">
<!-- social media -->
<meta property="og:title" content="BezahlBrudi">
<meta property="og:description" content="Webapp that generates GiroCodes so that you can easily exchange money with friends and family without involving third party financial services">
<meta property="og:description" content="Webapp that generates GiroCodes (EPC QR-Code) so that you can easily exchange money with friends and family without involving third party financial services">
<meta property="og:image" content="https://bezahlbrudi.jetzt/img/sticker.png">
<meta property="og:image:alt" content="Guy in a blue suit and cape presenting a smartphone showing a QR code pointing to the BezahlBrudi webapp">
<meta name="twitter:title" content="BezahlBrudi">
<meta name="twitter:description" content="Webapp that generates GiroCodes so that you can easily exchange money with friends and family without involving third party financial services">
<meta name="twitter:description" content="Webapp that generates GiroCodes (EPC QR-Code) so that you can easily exchange money with friends and family without involving third party financial services">
<meta name="twitter:url" content="https://bezahlbrudi.jetzt/?src=twitter" />
<meta name="twitter:image:src" content="https://bezahlbrudi.jetzt/img/sticker.png" />
<meta name="twitter:image:alt" content="Guy in a blue suit and cape presenting a smartphone showing a QR code pointing to the BezahlBrudi webapp" />
@ -87,9 +87,10 @@
<div id="bic" class="field">
<label for="input-bic" class="label">Receiver BIC</label>
<div class="control has-icons-right">
<input id="input-bic" class="input" type="text" value="" required>
<input id="input-bic" class="input" type="text" value="">
<span class="icon is-small is-right"></span>
</div>
<p class="help">Only needed if the Sender and/or Receiver IBAN is outside the EU</p>
</div>
<div id="amount" class="field">
@ -129,7 +130,7 @@
<footer class="footer">
<div class="content has-text-centered">
<p>
<strong>BezahlBrudi v1.0.5</strong> by <a href="https://xengi.de">XenGi</a>.
<strong>BezahlBrudi v1.0.6</strong> by <a href="https://xengi.de">XenGi</a>.
The source code is licensed <a href="https://opensource.org/license/mit">MIT</a>. Find the source code on <a href="https://gitlab.com/xengi/bezahlbrudi/">GitLab</a>.
<br/>
This site doesn't store any data outside your browser. This site doesn't provide any financial services. It is a simple QR code generator.

View file

@ -76,7 +76,9 @@ validateBic = (target) => {
validateIban = (target) => {
if (target.value.length == 0) return
// IBANs are fucking complicated. this is a hugely simplified check
const re = /^[a-z]{2}[0-9]{20}$/i;
// If you want to know more look here:
// https://www.swift.com/standards/data-standards/iban-international-bank-account-number
const re = /^[a-z]{2}[0-9a-z]+$/i;
if (re.test(target.value)) {
target.classList.remove("is-danger")