1
0
Fork 0
BangleApps/apps/slidingtext/custom.html

72 lines
2.6 KiB
HTML
Raw Normal View History

<html>
<head>
<link rel="stylesheet" href="../../css/spectre.min.css">
</head>
<body>
<p>Please select watch languages (Max 3, only the first 3 selected will be loaded)</p>
<table id="language_selection">
<tr>
<th>Enabled</th>
<th>Name</th>
</tr>
</table>
<p>Click <button id="upload" class="btn btn-primary">Upload</button></p>
<script src="../../core/lib/customize.js"></script>
<script>
var slidingtext_languages=[
{name:"English", shortname:"en"},
{name:"English(Traditional)",shortname:"en2"},
{name:"French",shortname:"fr"},
{name:"Japanese",shortname:"jp"},
{name:"Spanish",shortname:"es"},
{name:"German",shortname:"de"}
];
var selected_languages = ["en","es","jp"];
try{
var stored = localStorage.getItem('slidingtext_stored')
if(stored) selected_languages = JSON.parse(stored);
} catch(e){
console.log("failed to load languages:" + e);
}
console.log("selected languages:" + selected_languages);
var tbl=document.getElementById("language_selection");
for (var i=0; i<slidingtext_languages.length; i++) {
var curr_language = slidingtext_languages[i];
var language_selected = selected_languages.includes(curr_language["shortname"])
var $offset = document.createElement('tr')
$offset.innerHTML = `
<td><input type="checkbox" id="enabled_${i}" ${language_selected? "checked" : ""}></td>
<td>${curr_language['name']}</td>`
tbl.append($offset);
}
// When the 'upload' button is clicked...
document.getElementById("upload").addEventListener("click", function() {
var new_selected_languages=[];
for (var i=0; i<slidingtext_languages.length; i++) {
var curr_language = slidingtext_languages[i];
var checked=document.getElementById("enabled_"+i).checked;
if (checked && new_selected_languages.length < 3 ) {
new_selected_languages.push(curr_language.shortname);
}
}
console.log("new selected languages:" + new_selected_languages);
localStorage.setItem('slidingtext_stored',JSON.stringify(new_selected_languages));
// send finished app (in addition to contents of app.json)
sendCustomizedApp({
storage:[
{name:"slidingtext.languages.json", content:JSON.stringify(new_selected_languages)},
]
});
});
</script>
</body>
</html>