[change] Add listener on change dialog button

This commit is contained in:
Joxit 2016-05-12 22:51:34 +02:00
parent 3589a7e369
commit b13a8ab206
2 changed files with 30 additions and 3 deletions

View file

@ -20,7 +20,7 @@
<div class="mdl-dialog__content">
<div class="mdl-textfield mdl-js-textfield">
<select class="mdl-textfield__input mdl-textfield__select" name="server-list" id="server-list">
<option each="{ url in registryUI.url() }" value={url}>{url}</option>
<option each="{ url in registryUI.getRegistryServer() }" value={url}>{url}</option>
</select>
</div>
</div>
@ -35,16 +35,21 @@ this.on('updated', function () {
componentHandler.upgradeElements(this['change-server-dialog']);
registryUI.changeTag.dialog = registryUI.changeTag.dialog
|| document.querySelector('#change-server-dialog');
registryUI.changeTag.tileServerList = registryUI.changeTag.tileServerList
registryUI.changeTag.serverList = registryUI.changeTag.serverList
|| registryUI.changeTag.dialog.querySelector('#server-list');
if (!registryUI.changeTag.dialog.showModal) {
dialogPolyfill.registerDialog(registryUI.changeTag.dialog);
}
});
registryUI.changeTag.show = function() {
registryUI.changeTag.update();
registryUI.changeTag.dialog.showModal();
};
registryUI.changeTag.change = function() {
if (registryUI.changeTag.serverList.value && registryUI.changeTag.serverList.value.length > 0) {
registryUI.changeServer(registryUI.changeTag.serverList.value);
}
registryUI.changeTag.serverList.value = '';
registryUI.changeTag.dialog.close();
};
registryUI.changeTag.close = function() {

View file

@ -16,10 +16,32 @@
*/
var registryUI = {}
registryUI.url = function () {
return localStorage.getItem('registryServer');
return registryUI.getRegistryServer(0);
}
registryUI.getRegistryServer = function (i) {
try {
var res = JSON.parse(localStorage.getItem('registryServer'));
if (res instanceof Array) {
return i ? res[i] : res;
}
} catch (e) {}
return i ? '' : [];
}
registryUI.changeServer = function (url) {
var registryServer = registryUI.getRegistryServer();
url = url.trim();
var index = registryServer.indexOf(url);
if (index == -1) {
return;
}
registryServer.splice(index, 1);
registryServer = [ url ].concat(registryServer);
registryUI.registryServer.servers = registryServer;
localStorage.setItem('registryServer', JSON.stringify(registryServer));
}
var catalog = {};
registryUI.taglist = {};
riot.mount('catalog');
riot.mount('taglist');
riot.mount('change');