A sorter site for Idolm@ster Characters
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

Change identifier to url instead of sorter name

+8 -14
+1 -1
README.md
··· 15 15 This is a list of things you need to change for your sorter, for each file. 16 16 17 17 * `index.html` 18 - * Sorter name: Change under `sortername` and the `<title>` tags. 18 + * Sorter name: Change under `starting start button` and the `<title>` tags. 19 19 * Starting banner images: 120px x 180px, under `left sort image` and `right sort image`. 20 20 * OpenGraph tags: `og:site_name`, `og:description` and `og:image` will show up on embeds when linked to social media such as Facebook, Twitter and Discord. 21 21 * Sorter info: Insert whatever you like under the `info` tag.
+1 -5
index.html
··· 35 35 <div class="sorter"> 36 36 <img src="src/assets/defaultL.jpg" class="left sort image"> 37 37 38 - <div class="starting start button"> 39 - <span class="sortername">Touhou Project Character Sorter</span> 40 - <br><br> 41 - Click to Start! 42 - </div> 38 + <div class="starting start button">Touhou Project Character Sorter<br><br>Click to Start!</div> 43 39 <div class="starting load button">Load <span></span></div> 44 40 45 41 <div class="loading button"><div></div><span>Loading...</span></div>
+6 -8
src/js/main.js
··· 50 50 let finalCharacters = []; 51 51 let loading = false; 52 52 let totalBattles = 0; 53 - let sorterName = ''; 54 - let storedSaveType = ''; 53 + let sorterURL = window.location.host + window.location.pathname; 54 + let storedSaveType = localStorage.getItem(`${sorterURL}_saveType`); 55 55 56 56 /** Initialize script. */ 57 57 function init() { 58 - sorterName = document.querySelector('.sortername').textContent; 59 - storedSaveType = localStorage.getItem(`${sorterName}_saveType`); 60 58 61 59 /** Define button behavior. */ 62 60 document.querySelector('.starting.start.button').addEventListener('click', start); ··· 481 479 document.querySelector('.info').style.display = 'none'; 482 480 483 481 const header = '<div class="result head"><div class="left">Order</div><div class="right">Name</div></div>'; 484 - const timeStr = `This sorter was completed on ${new Date(timestamp + timeTaken).toString()} and took ${msToReadableTime(timeTaken)}. <a href="${location.protocol}//${location.host}${location.pathname}">Do another sorter?</a>`; 482 + const timeStr = `This sorter was completed on ${new Date(timestamp + timeTaken).toString()} and took ${msToReadableTime(timeTaken)}. <a href="${location.protocol}//${sorterURL}">Do another sorter?</a>`; 485 483 const imgRes = (char, num) => { 486 484 const charName = reduceTextWidth(char.name, 'Arial 12px', 160); 487 485 const charTooltip = char.name !== charName ? char.name : ''; ··· 555 553 function saveProgress(saveType) { 556 554 const saveData = generateSavedata(); 557 555 558 - localStorage.setItem(`${sorterName}_saveData`, saveData); 559 - localStorage.setItem(`${sorterName}_saveType`, saveType); 556 + localStorage.setItem(`${sorterURL}_saveData`, saveData); 557 + localStorage.setItem(`${sorterURL}_saveType`, saveType); 560 558 561 559 if (saveType !== 'Autosave') { 562 - const saveURL = `${location.protocol}//${location.host}${location.pathname}?${saveData}`; 560 + const saveURL = `${location.protocol}//${sorterURL}?${saveData}`; 563 561 const inProgressText = 'You may click Load Progress after this to resume, or use this URL.'; 564 562 const finishedText = 'You may use this URL to share this result, or click Load Last Result to view it again.'; 565 563