mirror of
https://github.com/Investigamer/cardconjurer.git
synced 2025-07-27 05:14:53 -05:00
custom watermark colors; importing collector's info
This commit is contained in:
@@ -439,7 +439,7 @@ include('../globalHTML/header-1.php');
|
|||||||
<div class='readable-background padding margin-bottom'>
|
<div class='readable-background padding margin-bottom'>
|
||||||
<h5 class='margin-bottom padding input-description'>Select watermark colors (left, right)</h5>
|
<h5 class='margin-bottom padding input-description'>Select watermark colors (left, right)</h5>
|
||||||
<div class='input-grid margin-bottom'>
|
<div class='input-grid margin-bottom'>
|
||||||
<select class='input' id='watermark-left' onchange='watermarkEdited();'>
|
<select class='input' id='watermark-left' onchange='watermarkLeftColor(this.value);'>
|
||||||
<option value="none">None</option>
|
<option value="none">None</option>
|
||||||
<option value="default">Actual Image</option>
|
<option value="default">Actual Image</option>
|
||||||
<option value="#b79d58" selected="selected">White</option>
|
<option value="#b79d58" selected="selected">White</option>
|
||||||
@@ -453,7 +453,7 @@ include('../globalHTML/header-1.php');
|
|||||||
<option value="#ffffff">True White</option>
|
<option value="#ffffff">True White</option>
|
||||||
<option value="#000000">True Black</option>
|
<option value="#000000">True Black</option>
|
||||||
</select>
|
</select>
|
||||||
<select class='input' id='watermark-right' onchange='watermarkEdited();'>
|
<select class='input' id='watermark-right' onchange='watermarkRightColor(this.value);'>
|
||||||
<option value="none" selected="selected">None</option>
|
<option value="none" selected="selected">None</option>
|
||||||
<option value="default">Actual Image</option>
|
<option value="default">Actual Image</option>
|
||||||
<option value="#b79d58">White</option>
|
<option value="#b79d58">White</option>
|
||||||
@@ -468,6 +468,11 @@ include('../globalHTML/header-1.php');
|
|||||||
<option value="#000000">True Black</option>
|
<option value="#000000">True Black</option>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
|
<h5 class='margin-bottom padding input-description'>Or choose them manually (left, right)</h5>
|
||||||
|
<div class='input-grid margin-bottom'>
|
||||||
|
<input class='input' type='color' placeholder='Color' value='#000000' onchange='watermarkLeftColor(this.value);'>
|
||||||
|
<input class='input' type='color' placeholder='Color' value='#000000' onchange='watermarkRightColor(this.value);'>
|
||||||
|
</div>
|
||||||
<h5 class='margin-bottom padding input-description'>And enter an opacity</h5>
|
<h5 class='margin-bottom padding input-description'>And enter an opacity</h5>
|
||||||
<div class='input-grid margin-bottom'>
|
<div class='input-grid margin-bottom'>
|
||||||
<input id='watermark-opacity' type='number' class='input' oninput='watermarkEdited();' value=40 step=1 min=0 max=100>
|
<input id='watermark-opacity' type='number' class='input' oninput='watermarkEdited();' value=40 step=1 min=0 max=100>
|
||||||
@@ -500,6 +505,13 @@ include('../globalHTML/header-1.php');
|
|||||||
<input id='info-artist' type='text' class='input' oninput='artistEdited(this.value);' placeholder='Artist'>
|
<input id='info-artist' type='text' class='input' oninput='artistEdited(this.value);' placeholder='Artist'>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class='readable-background padding margin-bottom'>
|
||||||
|
<h5 class='input-description margin-bottom'>Enable importing collector information</h5>
|
||||||
|
<label class='checkbox-container input margin-bottom'>Enable imports
|
||||||
|
<input id='enableImportCollectorInfo' type='checkbox' onchange='enableImportCollectorInfo();'>
|
||||||
|
<span class='checkmark'></span>
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
<div class='readable-background padding margin-bottom'>
|
<div class='readable-background padding margin-bottom'>
|
||||||
<h5 class='input-description padding margin-bottom'>Toggle between star (seen on foils) and dot (seen on regular cards)</h5>
|
<h5 class='input-description padding margin-bottom'>Toggle between star (seen on foils) and dot (seen on regular cards)</h5>
|
||||||
<div class='padding'>
|
<div class='padding'>
|
||||||
|
@@ -1563,13 +1563,24 @@ function uploadWatermark(imageSource, otherParams) {
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
function watermarkLeftColor(c) {
|
||||||
|
card.watermarkLeft = c;
|
||||||
|
watermarkEdited();
|
||||||
|
}
|
||||||
|
function watermarkRightColor(c) {
|
||||||
|
card.watermarkRight = c;
|
||||||
|
watermarkEdited();
|
||||||
|
}
|
||||||
function watermarkEdited() {
|
function watermarkEdited() {
|
||||||
card.watermarkSource = watermark.src;
|
card.watermarkSource = watermark.src;
|
||||||
card.watermarkX = document.querySelector('#watermark-x').value / card.width;
|
card.watermarkX = document.querySelector('#watermark-x').value / card.width;
|
||||||
card.watermarkY = document.querySelector('#watermark-y').value / card.height;
|
card.watermarkY = document.querySelector('#watermark-y').value / card.height;
|
||||||
card.watermarkZoom = document.querySelector('#watermark-zoom').value / 100;
|
card.watermarkZoom = document.querySelector('#watermark-zoom').value / 100;
|
||||||
card.watermarkLeft = document.querySelector('#watermark-left').value;
|
if (card.watermarkLeft == "none" && document.querySelector('#watermark-left').value != "none") {
|
||||||
card.watermarkRight = document.querySelector('#watermark-right').value;
|
card.watermarkLeft = document.querySelector('#watermark-left').value;
|
||||||
|
}
|
||||||
|
// card.watermarkLeft = document.querySelector('#watermark-left').value;
|
||||||
|
// card.watermarkRight = document.querySelector('#watermark-right').value;
|
||||||
card.watermarkOpacity = document.querySelector('#watermark-opacity').value / 100;
|
card.watermarkOpacity = document.querySelector('#watermark-opacity').value / 100;
|
||||||
watermarkContext.globalCompositeOperation = 'source-over';
|
watermarkContext.globalCompositeOperation = 'source-over';
|
||||||
watermarkContext.globalAlpha = 1;
|
watermarkContext.globalAlpha = 1;
|
||||||
@@ -1672,6 +1683,9 @@ function toggleStarDot() {
|
|||||||
defaultCollector.starDot = !defaultCollector.starDot;
|
defaultCollector.starDot = !defaultCollector.starDot;
|
||||||
bottomInfoEdited();
|
bottomInfoEdited();
|
||||||
}
|
}
|
||||||
|
function enableImportCollectorInfo() {
|
||||||
|
localStorage.setItem('enableImportCollectorInfo', document.querySelector('#enableImportCollectorInfo').checked);
|
||||||
|
}
|
||||||
function removeDefaultCollector() {
|
function removeDefaultCollector() {
|
||||||
defaultCollector = {}; //{number: year, rarity:'P', setCode:'MTG', lang:'EN', starDot:false};
|
defaultCollector = {}; //{number: year, rarity:'P', setCode:'MTG', lang:'EN', starDot:false};
|
||||||
localStorage.removeItem('defaultCollector'); //localStorage.setItem('defaultCollector', JSON.stringify(defaultCollector));
|
localStorage.removeItem('defaultCollector'); //localStorage.setItem('defaultCollector', JSON.stringify(defaultCollector));
|
||||||
@@ -1794,13 +1808,15 @@ function importCard(cardObject) {
|
|||||||
function changeCardIndex() {
|
function changeCardIndex() {
|
||||||
var cardToImport = scryfallCard[document.querySelector('#import-index').value];
|
var cardToImport = scryfallCard[document.querySelector('#import-index').value];
|
||||||
//text
|
//text
|
||||||
if (card.text.title) {card.text.title.text = curlyQuotes(cardToImport.name || '');}
|
var langFontCode = "";
|
||||||
|
if (cardToImport.lang == "ph") {langFontCode = "{fontphyrexian}"}
|
||||||
|
if (card.text.title) {card.text.title.text = langFontCode + curlyQuotes(cardToImport.name || '');}
|
||||||
if (card.text.nickname) {card.text.nickname.text = cardToImport.flavor_name || '';}
|
if (card.text.nickname) {card.text.nickname.text = cardToImport.flavor_name || '';}
|
||||||
if (card.text.mana) {card.text.mana.text = cardToImport.mana_cost || '';}
|
if (card.text.mana) {card.text.mana.text = cardToImport.mana_cost || '';}
|
||||||
if (card.text.type) {card.text.type.text = cardToImport.type_line || '';}
|
if (card.text.type) {card.text.type.text = langFontCode + cardToImport.type_line || '';}
|
||||||
if (card.text.rules) {
|
if (card.text.rules) {
|
||||||
var rulesText = curlyQuotes((cardToImport.oracle_text || '').replace('(', '{i}(').replace(')', '){/i}')).replace(/{Q}/g, '{untap}').replace(/• /g, '• {indent}');
|
var rulesText = curlyQuotes((cardToImport.oracle_text || '').replace('(', '{i}(').replace(')', '){/i}')).replace(/{Q}/g, '{untap}').replace(/• /g, '• {indent}');
|
||||||
card.text.rules.text = rulesText;
|
card.text.rules.text = langFontCode + rulesText;
|
||||||
if (cardToImport.flavor_text) {
|
if (cardToImport.flavor_text) {
|
||||||
var flavorText = cardToImport.flavor_text;
|
var flavorText = cardToImport.flavor_text;
|
||||||
var flavorTextCounter = 1;
|
var flavorTextCounter = 1;
|
||||||
@@ -1850,6 +1866,29 @@ function changeCardIndex() {
|
|||||||
}
|
}
|
||||||
document.querySelector('#text-editor').value = card.text[Object.keys(card.text)[selectedTextIndex]].text;
|
document.querySelector('#text-editor').value = card.text[Object.keys(card.text)[selectedTextIndex]].text;
|
||||||
textEdited();
|
textEdited();
|
||||||
|
//collector's info
|
||||||
|
if (localStorage.getItem('enableImportCollectorInfo') == 'true') {
|
||||||
|
document.querySelector('#info-number').value = cardToImport.collector_number || "";
|
||||||
|
document.querySelector('#info-rarity').value = (cardToImport.rarity || "")[0].toUpperCase();
|
||||||
|
document.querySelector('#info-set').value = (cardToImport.set || "").toUpperCase();
|
||||||
|
document.querySelector('#info-language').value = (cardToImport.lang || "").toUpperCase();
|
||||||
|
var setXhttp = new XMLHttpRequest();
|
||||||
|
setXhttp.onreadystatechange = function() {
|
||||||
|
if (this.readyState == 4 && this.status == 200) {
|
||||||
|
var setObject = JSON.parse(this.responseText)
|
||||||
|
if (setObject.printed_size) {
|
||||||
|
document.querySelector('#info-number').value += "/" + setObject.printed_size;
|
||||||
|
bottomInfoEdited();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
setXhttp.open('GET', "https://api.scryfall.com/sets/" + cardToImport.set, true);
|
||||||
|
try {
|
||||||
|
setXhttp.send();
|
||||||
|
} catch {
|
||||||
|
console.log('Scryfall API search failed.')
|
||||||
|
}
|
||||||
|
}
|
||||||
//art
|
//art
|
||||||
document.querySelector('#art-name').value = cardToImport.name;
|
document.querySelector('#art-name').value = cardToImport.name;
|
||||||
fetchScryfallData(cardToImport.name, artFromScryfall, true);
|
fetchScryfallData(cardToImport.name, artFromScryfall, true);
|
||||||
@@ -1942,8 +1981,8 @@ async function loadCard(selectedCardKey) {
|
|||||||
document.querySelector('#watermark-x').value = scaleX(card.watermarkX) - scaleWidth(card.marginX);
|
document.querySelector('#watermark-x').value = scaleX(card.watermarkX) - scaleWidth(card.marginX);
|
||||||
document.querySelector('#watermark-y').value = scaleY(card.watermarkY) - scaleHeight(card.marginY);
|
document.querySelector('#watermark-y').value = scaleY(card.watermarkY) - scaleHeight(card.marginY);
|
||||||
document.querySelector('#watermark-zoom').value = card.watermarkZoom * 100;
|
document.querySelector('#watermark-zoom').value = card.watermarkZoom * 100;
|
||||||
document.querySelector('#watermark-left').value = card.watermarkLeft;
|
// document.querySelector('#watermark-left').value = card.watermarkLeft;
|
||||||
document.querySelector('#watermark-right').value = card.watermarkRight;
|
// document.querySelector('#watermark-right').value = card.watermarkRight;
|
||||||
document.querySelector('#watermark-opacity').value = card.watermarkOpacity * 100;
|
document.querySelector('#watermark-opacity').value = card.watermarkOpacity * 100;
|
||||||
uploadWatermark(card.watermarkSource);
|
uploadWatermark(card.watermarkSource);
|
||||||
card.frames.reverse();
|
card.frames.reverse();
|
||||||
@@ -2219,6 +2258,11 @@ if ('number' in defaultCollector) {
|
|||||||
} else {
|
} else {
|
||||||
document.querySelector('#info-number').value = date.getFullYear();
|
document.querySelector('#info-number').value = date.getFullYear();
|
||||||
}
|
}
|
||||||
|
if (!localStorage.getItem('enableImportCollectorInfo')) {
|
||||||
|
localStorage.setItem('enableImportCollectorInfo', 'false');
|
||||||
|
} else {
|
||||||
|
document.querySelector('#enableImportCollectorInfo').checked = (localStorage.getItem('enableImportCollectorInfo') == 'true');
|
||||||
|
}
|
||||||
|
|
||||||
// lock set symbol code (user defaults)
|
// lock set symbol code (user defaults)
|
||||||
if (!localStorage.getItem('lockSetSymbolCode')) {
|
if (!localStorage.getItem('lockSetSymbolCode')) {
|
||||||
|
Reference in New Issue
Block a user