mirror of
https://github.com/cfultz/mtgcsv.git
synced 2024-11-22 01:10:02 +01:00
Corrected issue with the autofilling of ID's
This commit is contained in:
parent
4347e24199
commit
1d04b0f64c
34
app.js
34
app.js
@ -90,18 +90,46 @@ async function fetchCardDetails(cardName, setCode) {
|
|||||||
|
|
||||||
async function addCard() {
|
async function addCard() {
|
||||||
const cardName = document.getElementById('card-name').value;
|
const cardName = document.getElementById('card-name').value;
|
||||||
const setCode = document.getElementById('set-code').value;
|
const setCodeInput = document.getElementById('set-code');
|
||||||
|
const cardIdInput = document.getElementById('card-id');
|
||||||
|
|
||||||
// Fetch card details using the card name and set code
|
// Fetch card details using the card name and set code
|
||||||
|
let setCode = setCodeInput.value;
|
||||||
|
let cardId = cardIdInput.value;
|
||||||
|
|
||||||
|
// Always fetch card details
|
||||||
const cardDetails = await fetchCardDetails(cardName, setCode);
|
const cardDetails = await fetchCardDetails(cardName, setCode);
|
||||||
|
|
||||||
if (cardDetails) {
|
if (cardDetails) {
|
||||||
updateCardDetails(cardDetails);
|
// If set code or card ID is not filled, auto-fill them
|
||||||
|
if (!setCode) {
|
||||||
|
setCode = cardDetails.set;
|
||||||
|
setCodeInput.value = setCode;
|
||||||
|
}
|
||||||
|
if (!cardId) {
|
||||||
|
cardId = cardDetails.card_id;
|
||||||
|
cardIdInput.value = cardId;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Update card details with either user input or fetched data
|
||||||
|
updateCardDetails({
|
||||||
|
name: cardName,
|
||||||
|
set: setCode,
|
||||||
|
card_id: cardId,
|
||||||
|
mana_cost: cardDetails.mana_cost,
|
||||||
|
power: cardDetails.power,
|
||||||
|
toughness: cardDetails.toughness,
|
||||||
|
type: cardDetails.type,
|
||||||
|
rarity: cardDetails.rarity,
|
||||||
|
price: cardDetails.price,
|
||||||
|
imageUrl: cardDetails.imageUrl
|
||||||
|
});
|
||||||
} else {
|
} else {
|
||||||
alert("Card not found with the given name and set code.");
|
alert("Card not found with the given name.");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
function updateCardDetails(printing) {
|
function updateCardDetails(printing) {
|
||||||
document.getElementById('set-code').value = printing.set;
|
document.getElementById('set-code').value = printing.set;
|
||||||
document.getElementById('card-id').value = printing.card_id;
|
document.getElementById('card-id').value = printing.card_id;
|
||||||
|
50
index.html
50
index.html
@ -30,34 +30,45 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<h1>MTG Card CSV Generator</h1>
|
<h1>MTG Card CSV Generator</h1>
|
||||||
<form id="card-form">
|
<form id="card-form" class="mdc-card">
|
||||||
<div>
|
<div class="mdc-text-field mdc-text-field--outlined">
|
||||||
<label for="card-name">Card Name:</label>
|
<input type="text" id="card-name" class="mdc-text-field__input" autocomplete="off" required>
|
||||||
<input type="text" id="card-name" autocomplete="off" required>
|
<label class="mdc-floating-label" for="card-name">Card Name</label>
|
||||||
<div id="suggestions"></div>
|
<div class="mdc-line-ripple"></div>
|
||||||
</div>
|
</div>
|
||||||
<div>
|
|
||||||
<label for="set-code">Set Code:</label>
|
<div class="mdc-text-field mdc-text-field--outlined">
|
||||||
<input type="text" id="set-code" required>
|
<input type="text" id="set-code" class="mdc-text-field__input" required>
|
||||||
|
<label class="mdc-floating-label" for="set-code">Set Code</label>
|
||||||
|
<div class="mdc-line-ripple"></div>
|
||||||
</div>
|
</div>
|
||||||
<div>
|
|
||||||
<label for="card-id">Card ID:</label>
|
<div class="mdc-text-field mdc-text-field--outlined">
|
||||||
<input type="text" id="card-id" required>
|
<input type="text" id="card-id" class="mdc-text-field__input" required>
|
||||||
|
<label class="mdc-floating-label" for="card-id">Card ID</label>
|
||||||
|
<div class="mdc-line-ripple"></div>
|
||||||
</div>
|
</div>
|
||||||
<div>
|
|
||||||
<label for="quantity">Quantity:</label>
|
<div class="mdc-text-field mdc-text-field--outlined">
|
||||||
<input type="number" id="quantity" min="1" value="1" required>
|
<input type="number" id="quantity" class="mdc-text-field__input" min="1" value="1" required>
|
||||||
|
<label class="mdc-floating-label" for="quantity">Quantity</label>
|
||||||
|
<div class="mdc-line-ripple"></div>
|
||||||
</div>
|
</div>
|
||||||
<div>
|
|
||||||
<label for="foil">Is it Foil?</label>
|
<div class="mdc-select">
|
||||||
<select id="foil">
|
<select id="foil" class="mdc-select__native-control">
|
||||||
<option value="No">No</option>
|
<option value="No">No</option>
|
||||||
<option value="Yes">Yes</option>
|
<option value="Yes">Yes</option>
|
||||||
</select>
|
</select>
|
||||||
|
<label class="mdc-floating-label">Is it Foil?</label>
|
||||||
|
<div class="mdc-line-ripple"></div>
|
||||||
</div>
|
</div>
|
||||||
<button type="button" id="add-card-button">Add Card</button>
|
|
||||||
|
<button type="button" class="mdc-button mdc-button--raised" id="add-card-button">Add Card</button>
|
||||||
</form>
|
</form>
|
||||||
<button id="download-csv-button">Download CSV</button>
|
|
||||||
|
<button class="mdc-button mdc-button--outlined" id="download-csv-button">Download CSV</button>
|
||||||
|
|
||||||
<textarea id="csv-output" readonly></textarea>
|
<textarea id="csv-output" readonly></textarea>
|
||||||
<div id="card-popup" class="card-popup"></div>
|
<div id="card-popup" class="card-popup"></div>
|
||||||
</div>
|
</div>
|
||||||
@ -75,5 +86,6 @@
|
|||||||
navigator.serviceWorker.register('sw.js')
|
navigator.serviceWorker.register('sw.js')
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
@ -8,6 +8,8 @@
|
|||||||
<link href="https://fonts.googleapis.com/css2?family=Sorts+Mill+Goudy&display=swap" rel="stylesheet">
|
<link href="https://fonts.googleapis.com/css2?family=Sorts+Mill+Goudy&display=swap" rel="stylesheet">
|
||||||
<link rel="icon" href="icon.png" type="image/png">
|
<link rel="icon" href="icon.png" type="image/png">
|
||||||
<link href="//cdn.jsdelivr.net/npm/mana-font@latest/css/mana.css" rel="stylesheet" type="text/css" />
|
<link href="//cdn.jsdelivr.net/npm/mana-font@latest/css/mana.css" rel="stylesheet" type="text/css" />
|
||||||
|
<link rel="stylesheet" href="https://unpkg.com/material-components-web@latest/dist/material-components-web.min.css">
|
||||||
|
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div class="container">
|
<div class="container">
|
||||||
@ -25,5 +27,9 @@
|
|||||||
This app is not affiliated with Wizards of the Coast or Hasbro. All rights and trademarks are owned by their respective owners.
|
This app is not affiliated with Wizards of the Coast or Hasbro. All rights and trademarks are owned by their respective owners.
|
||||||
</p>
|
</p>
|
||||||
</footer>
|
</footer>
|
||||||
|
<script src="https://unpkg.com/material-components-web@latest/dist/material-components-web.min.js"></script>
|
||||||
|
<script>
|
||||||
|
mdc.autoInit(); // Initialize all MDC components
|
||||||
|
</script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
@ -6,6 +6,14 @@
|
|||||||
--button-hover: #005fa3;
|
--button-hover: #005fa3;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.material-theme {
|
||||||
|
--background-color: #ffffff;
|
||||||
|
--text-color: #000000;
|
||||||
|
--card-background: #f8f8f8;
|
||||||
|
--button-background: #6200ee;
|
||||||
|
--button-hover: #3700b3;
|
||||||
|
}
|
||||||
|
|
||||||
.theme-white {
|
.theme-white {
|
||||||
--background-color: #f9f8f6;
|
--background-color: #f9f8f6;
|
||||||
--text-color: #1e1e1e;
|
--text-color: #1e1e1e;
|
||||||
@ -86,6 +94,7 @@
|
|||||||
--button-background: #2e7d32;
|
--button-background: #2e7d32;
|
||||||
--button-hover: #388e3c;
|
--button-hover: #388e3c;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user