mirror of
https://github.com/tmaier/asn-qr-code-label-generator.git
synced 2026-03-14 16:43:31 +00:00
Merge pull request #23 from tmaier/claude/add-url-parameters-017qxuWpAFdkg8EbXx8PrDrq
Add URL parameters for label configuration
This commit is contained in:
commit
77d7984d8c
1 changed files with 33 additions and 0 deletions
33
index.html
33
index.html
|
|
@ -89,6 +89,7 @@
|
||||||
type="number"
|
type="number"
|
||||||
id="startNumber"
|
id="startNumber"
|
||||||
x-model="startNumber"
|
x-model="startNumber"
|
||||||
|
@input="updateUrl()"
|
||||||
required
|
required
|
||||||
min="1"
|
min="1"
|
||||||
step="1"
|
step="1"
|
||||||
|
|
@ -120,6 +121,7 @@
|
||||||
type="text"
|
type="text"
|
||||||
id="prefix"
|
id="prefix"
|
||||||
x-model="prefix"
|
x-model="prefix"
|
||||||
|
@input="updateUrl()"
|
||||||
required
|
required
|
||||||
value="ASN"
|
value="ASN"
|
||||||
class="block w-full rounded-lg border border-gray-300 bg-gray-50 p-2.5 text-sm text-gray-900 focus:border-blue-500 focus:ring-blue-500"
|
class="block w-full rounded-lg border border-gray-300 bg-gray-50 p-2.5 text-sm text-gray-900 focus:border-blue-500 focus:ring-blue-500"
|
||||||
|
|
@ -147,6 +149,7 @@
|
||||||
type="number"
|
type="number"
|
||||||
id="leadingZeros"
|
id="leadingZeros"
|
||||||
x-model="leadingZeros"
|
x-model="leadingZeros"
|
||||||
|
@input="updateUrl()"
|
||||||
required
|
required
|
||||||
value="5"
|
value="5"
|
||||||
min="0"
|
min="0"
|
||||||
|
|
@ -160,6 +163,7 @@
|
||||||
type="checkbox"
|
type="checkbox"
|
||||||
id="borderToggle"
|
id="borderToggle"
|
||||||
x-model="borderToggle"
|
x-model="borderToggle"
|
||||||
|
@change="updateUrl()"
|
||||||
class="focus:ring-3 h-4 w-4 rounded border border-gray-300 bg-gray-50 focus:ring-blue-300"
|
class="focus:ring-3 h-4 w-4 rounded border border-gray-300 bg-gray-50 focus:ring-blue-300"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -260,6 +264,34 @@
|
||||||
borderToggle: false,
|
borderToggle: false,
|
||||||
labels: [],
|
labels: [],
|
||||||
|
|
||||||
|
readUrlParams() {
|
||||||
|
const params = new URLSearchParams(window.location.search);
|
||||||
|
if (params.has("startNumber")) {
|
||||||
|
const val = parseInt(params.get("startNumber"), 10);
|
||||||
|
if (!isNaN(val) && val >= 1) this.startNumber = val;
|
||||||
|
}
|
||||||
|
if (params.has("prefix")) {
|
||||||
|
this.prefix = params.get("prefix");
|
||||||
|
}
|
||||||
|
if (params.has("leadingZeros")) {
|
||||||
|
const val = parseInt(params.get("leadingZeros"), 10);
|
||||||
|
if (!isNaN(val) && val >= 0) this.leadingZeros = val;
|
||||||
|
}
|
||||||
|
if (params.has("borderToggle")) {
|
||||||
|
this.borderToggle = params.get("borderToggle") === "true";
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
updateUrl() {
|
||||||
|
const params = new URLSearchParams();
|
||||||
|
params.set("startNumber", this.startNumber);
|
||||||
|
params.set("prefix", this.prefix);
|
||||||
|
params.set("leadingZeros", this.leadingZeros);
|
||||||
|
params.set("borderToggle", this.borderToggle);
|
||||||
|
const newUrl = `${window.location.pathname}?${params.toString()}`;
|
||||||
|
window.history.replaceState({}, "", newUrl);
|
||||||
|
},
|
||||||
|
|
||||||
generateLabels() {
|
generateLabels() {
|
||||||
this.labels = [];
|
this.labels = [];
|
||||||
let totalLabels = 7 * 27; // 7 columns x 27 rows
|
let totalLabels = 7 * 27; // 7 columns x 27 rows
|
||||||
|
|
@ -283,6 +315,7 @@
|
||||||
window.print();
|
window.print();
|
||||||
},
|
},
|
||||||
init() {
|
init() {
|
||||||
|
this.readUrlParams();
|
||||||
this.generateLabels();
|
this.generateLabels();
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue