code cleanup; fileSaveLoad.js
This commit is contained in:
parent
fbfaa969b5
commit
f8fc82cae7
|
@ -1,6 +1,8 @@
|
|||
/* globals getStyles, saveStyle */
|
||||
'use strict';
|
||||
|
||||
var STYLISH_DUMP_FILE_EXT = '.txt';
|
||||
var STYLISH_DUMP_FILE_EXT = '.txt';
|
||||
var STYLISH_DUMPFILE_EXTENSION = '.json';
|
||||
var STYLISH_DEFAULT_SAVE_NAME = 'stylus-mm-dd-yyy' + STYLISH_DUMP_FILE_EXT;
|
||||
|
||||
function saveAsFile (text, fileName, dialog) {
|
||||
|
@ -50,3 +52,53 @@ function loadFromFile (formatToFilter) {
|
|||
fileInput.click();
|
||||
});
|
||||
}
|
||||
|
||||
function generateFileName() {
|
||||
var today = new Date();
|
||||
var dd = '0' + today.getDate();
|
||||
var mm = '0' + (today.getMonth() + 1);
|
||||
var yyyy = today.getFullYear();
|
||||
|
||||
dd = dd.substr(-2);
|
||||
mm = mm.substr(-2);
|
||||
|
||||
today = mm + '-' + dd + '-' + yyyy;
|
||||
|
||||
return 'stylus-' + today + STYLISH_DUMPFILE_EXTENSION;
|
||||
}
|
||||
|
||||
document.getElementById('file-all-styles').addEventListener('click', function () {
|
||||
chrome.permissions.request({permissions: ['downloads']}, function (granted) {
|
||||
if (granted) {
|
||||
getStyles({}, function (styles) {
|
||||
var text = JSON.stringify(styles);
|
||||
saveAsFile(text, generateFileName());
|
||||
});
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
document.getElementById('unfile-all-styles').addEventListener('click', function () {
|
||||
loadFromFile(STYLISH_DUMPFILE_EXTENSION).then(function (rawText) {
|
||||
var json = JSON.parse(rawText);
|
||||
var i = 0, nextStyle;
|
||||
|
||||
function done() {
|
||||
window.alert(i + ' styles installed/updated');
|
||||
location.reload();
|
||||
}
|
||||
|
||||
function proceed() {
|
||||
nextStyle = json[i++];
|
||||
if (nextStyle) {
|
||||
saveStyle(nextStyle, proceed);
|
||||
}
|
||||
else {
|
||||
i--;
|
||||
done();
|
||||
}
|
||||
}
|
||||
|
||||
proceed();
|
||||
});
|
||||
});
|
||||
|
|
|
@ -1,57 +0,0 @@
|
|||
var STYLISH_DUMPFILE_EXTENSION = ".json";
|
||||
|
||||
var saveButton = document.getElementById("file-all-styles"),
|
||||
loadButton = document.getElementById("unfile-all-styles");
|
||||
|
||||
saveButton.addEventListener('click', onSaveToFileClick);
|
||||
loadButton.addEventListener('click', onLoadFromFileClick);
|
||||
|
||||
function onSaveToFileClick(){
|
||||
chrome.permissions.request({permissions: ['downloads']}, function(granted){
|
||||
if (granted){
|
||||
getStyles({}, function(styles){
|
||||
var text = JSON.stringify(styles);
|
||||
saveAsFile(text, generateFileName());
|
||||
});
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
function onLoadFromFileClick(){
|
||||
loadFromFile(STYLISH_DUMPFILE_EXTENSION).then(function(rawText){
|
||||
var json = JSON.parse(rawText);
|
||||
|
||||
var i = 0, nextStyle;
|
||||
|
||||
function proceed(){
|
||||
nextStyle = json[i++];
|
||||
if (nextStyle) {
|
||||
saveStyle(nextStyle, proceed);
|
||||
}else{
|
||||
i--;
|
||||
done();
|
||||
}
|
||||
}
|
||||
|
||||
function done(){
|
||||
alert(i + " styles installed/updated");
|
||||
location.reload();
|
||||
}
|
||||
|
||||
proceed();
|
||||
});
|
||||
}
|
||||
|
||||
function generateFileName(){
|
||||
var today = new Date();
|
||||
var dd = '0' + today.getDate();
|
||||
var mm = '0' + (today.getMonth() + 1);
|
||||
var yyyy = today.getFullYear();
|
||||
|
||||
dd = dd.substr(-2);
|
||||
mm = mm.substr(-2);
|
||||
|
||||
today = mm + '-' + dd + '-' + yyyy;
|
||||
|
||||
return "stylish-" + today + STYLISH_DUMPFILE_EXTENSION;
|
||||
}
|
|
@ -215,6 +215,5 @@
|
|||
</div>
|
||||
<div id="installed"></div>
|
||||
<script src="backup/fileSaveLoad.js"></script>
|
||||
<script src="backup/manage/fileSaveLoad.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
|
|
Loading…
Reference in New Issue
Block a user