mirror of
https://github.com/MarshalX/telegram-crawler.git
synced 2024-12-26 06:20:27 +01:00
Update content of files
This commit is contained in:
parent
eb0f28dd15
commit
b85204f19d
3 changed files with 103 additions and 1 deletions
|
@ -975,7 +975,7 @@
|
||||||
cloudStorage.getItem = function(key, callback) {
|
cloudStorage.getItem = function(key, callback) {
|
||||||
return cloudStorage.getItems([key], callback ? function(err, res) {
|
return cloudStorage.getItems([key], callback ? function(err, res) {
|
||||||
if (err) callback(err);
|
if (err) callback(err);
|
||||||
else callback(res[key]);
|
else callback(null, res[key]);
|
||||||
} : null);
|
} : null);
|
||||||
};
|
};
|
||||||
cloudStorage.getItems = function(keys, callback) {
|
cloudStorage.getItems = function(keys, callback) {
|
||||||
|
|
|
@ -77,6 +77,17 @@ button.close_btn {
|
||||||
padding: 16px 20px;
|
padding: 16px 20px;
|
||||||
text-transform: uppercase;
|
text-transform: uppercase;
|
||||||
}
|
}
|
||||||
|
table.table-condensed button {
|
||||||
|
display: inline-block;
|
||||||
|
width: auto;
|
||||||
|
font-size: 12px;
|
||||||
|
margin: 0 2px 2px 0;
|
||||||
|
padding: 2px 7px;
|
||||||
|
}
|
||||||
|
.table-bordered>tfoot>tr>th,
|
||||||
|
.table-bordered>tfoot>tr>td {
|
||||||
|
border-top-width: 2px;
|
||||||
|
}
|
||||||
input[type="text"],
|
input[type="text"],
|
||||||
.input[contenteditable] {
|
.input[contenteditable] {
|
||||||
display: block;
|
display: block;
|
||||||
|
@ -117,6 +128,12 @@ input[type="text"]:-ms-input-placeholder {
|
||||||
pointer-events: none;
|
pointer-events: none;
|
||||||
z-index: -1;
|
z-index: -1;
|
||||||
}
|
}
|
||||||
|
table.table-condensed input[type="text"] {
|
||||||
|
font-size: 12px;
|
||||||
|
padding: 5px;
|
||||||
|
margin: 0;
|
||||||
|
border-color: #eee;
|
||||||
|
}
|
||||||
section {
|
section {
|
||||||
padding: 15px;
|
padding: 15px;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
|
|
|
@ -199,6 +199,87 @@ var DemoApp = {
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
cloudStorageKeys: {},
|
||||||
|
cloudStorageItems: {},
|
||||||
|
editCloudRow: function(el, event) {
|
||||||
|
event.preventDefault();
|
||||||
|
var values = DemoApp.cloudStorageItems;
|
||||||
|
var key = $(el).parents('tr').attr('data-key');
|
||||||
|
el.form.reset();
|
||||||
|
el.form.key.value = key;
|
||||||
|
el.form.value.value = values[key];
|
||||||
|
},
|
||||||
|
deleteCloudRow: function(el, event) {
|
||||||
|
event.preventDefault();
|
||||||
|
var key = $(el).parents('tr').attr('data-key');
|
||||||
|
Telegram.WebApp.CloudStorage.removeItem(key, function(err, deleted) {
|
||||||
|
if (err) {
|
||||||
|
DemoApp.showAlert('Error: ' + err);
|
||||||
|
} else {
|
||||||
|
if (deleted) {
|
||||||
|
var index = DemoApp.cloudStorageKeys.indexOf(key);
|
||||||
|
if (index >= 0) {
|
||||||
|
DemoApp.cloudStorageKeys.splice(index, 1);
|
||||||
|
}
|
||||||
|
delete DemoApp.cloudStorageItems[key];
|
||||||
|
}
|
||||||
|
el.form.reset();
|
||||||
|
DemoApp.updateCloudRows();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
},
|
||||||
|
saveCloudForm: function(form, event) {
|
||||||
|
event.preventDefault();
|
||||||
|
var key = form.key.value;
|
||||||
|
var value = form.value.value;
|
||||||
|
Telegram.WebApp.CloudStorage.setItem(key, value, function(err, saved) {
|
||||||
|
if (err) {
|
||||||
|
DemoApp.showAlert('Error: ' + err);
|
||||||
|
} else {
|
||||||
|
if (saved) {
|
||||||
|
if (typeof DemoApp.cloudStorageItems[key] === 'undefined') {
|
||||||
|
DemoApp.cloudStorageKeys.push(key);
|
||||||
|
}
|
||||||
|
DemoApp.cloudStorageItems[key] = value;
|
||||||
|
}
|
||||||
|
form.reset();
|
||||||
|
DemoApp.updateCloudRows();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
},
|
||||||
|
updateCloudRows: function() {
|
||||||
|
var html = '';
|
||||||
|
var keys = DemoApp.cloudStorageKeys;
|
||||||
|
var values = DemoApp.cloudStorageItems;
|
||||||
|
for (var i = 0; i < keys.length; i++) {
|
||||||
|
var key = keys[i];
|
||||||
|
html += '<tr data-key="'+cleanHTML(key)+'"><td>'+cleanHTML(key)+'</td><td>'+cleanHTML(values[key])+'</td><td><button onclick="DemoApp.editCloudRow(this, event);">Edit</button><button onclick="DemoApp.deleteCloudRow(this, event);">Delete</button></td></tr>';
|
||||||
|
}
|
||||||
|
$('#cloud_rows').html(html);
|
||||||
|
},
|
||||||
|
loadCloudKeys: function(el) {
|
||||||
|
Telegram.WebApp.CloudStorage.getKeys(function(err, keys) {
|
||||||
|
if (err) {
|
||||||
|
DemoApp.showAlert('Error: ' + err);
|
||||||
|
} else {
|
||||||
|
if (keys.length > 0) {
|
||||||
|
Telegram.WebApp.CloudStorage.getItems(keys, function(err, values) {
|
||||||
|
if (err) {
|
||||||
|
DemoApp.showAlert('Error: ' + err);
|
||||||
|
} else {
|
||||||
|
DemoApp.cloudStorageKeys = keys;
|
||||||
|
DemoApp.cloudStorageItems = {};
|
||||||
|
for (var i = 0; i < keys.length; i++) {
|
||||||
|
var key = keys[i];
|
||||||
|
DemoApp.cloudStorageItems[key] = values[key];
|
||||||
|
}
|
||||||
|
DemoApp.updateCloudRows();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
},
|
||||||
toggleMainButton: function(el) {
|
toggleMainButton: function(el) {
|
||||||
if (DemoApp.MainButton.isVisible) {
|
if (DemoApp.MainButton.isVisible) {
|
||||||
DemoApp.MainButton.hide();
|
DemoApp.MainButton.hide();
|
||||||
|
@ -309,6 +390,10 @@ var DemoAppViewport = {
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
function cleanHTML(value) {
|
||||||
|
return value.replace(/&/g, '&').replace(/</g, '<').replace(/>/g, '>').replace(/"/g, '"').replace(/\n/g, '<br/>');
|
||||||
|
}
|
||||||
|
|
||||||
function byteLength(str) {
|
function byteLength(str) {
|
||||||
if (window.Blob) {
|
if (window.Blob) {
|
||||||
try { return new Blob([str]).size; } catch (e) {}
|
try { return new Blob([str]).size; } catch (e) {}
|
||||||
|
|
Loading…
Reference in a new issue