aboutsummaryrefslogtreecommitdiffhomepage
path: root/ui/static/js/entry_handler.js
diff options
context:
space:
mode:
Diffstat (limited to 'ui/static/js/entry_handler.js')
-rw-r--r--ui/static/js/entry_handler.js100
1 files changed, 0 insertions, 100 deletions
diff --git a/ui/static/js/entry_handler.js b/ui/static/js/entry_handler.js
deleted file mode 100644
index 6392aef..0000000
--- a/ui/static/js/entry_handler.js
+++ /dev/null
@@ -1,100 +0,0 @@
-class EntryHandler {
- static updateEntriesStatus(entryIDs, status, callback) {
- let url = document.body.dataset.entriesStatusUrl;
- let request = new RequestBuilder(url);
- request.withBody({entry_ids: entryIDs, status: status});
- request.withCallback(callback);
- request.execute();
-
- if (status === "read") {
- UnreadCounterHandler.decrement(1);
- } else {
- UnreadCounterHandler.increment(1);
- }
- }
-
- static toggleEntryStatus(element) {
- let entryID = parseInt(element.dataset.id, 10);
- let link = element.querySelector("a[data-toggle-status]");
-
- let currentStatus = link.dataset.value;
- let newStatus = currentStatus === "read" ? "unread" : "read";
-
- this.updateEntriesStatus([entryID], newStatus);
-
- if (currentStatus === "read") {
- link.innerHTML = link.dataset.labelRead;
- link.dataset.value = "unread";
- } else {
- link.innerHTML = link.dataset.labelUnread;
- link.dataset.value = "read";
- }
-
- if (element.classList.contains("item-status-" + currentStatus)) {
- element.classList.remove("item-status-" + currentStatus);
- element.classList.add("item-status-" + newStatus);
- }
- }
-
- static toggleBookmark(element) {
- element.innerHTML = element.dataset.labelLoading;
-
- let request = new RequestBuilder(element.dataset.bookmarkUrl);
- request.withCallback(() => {
- if (element.dataset.value === "star") {
- element.innerHTML = element.dataset.labelStar;
- element.dataset.value = "unstar";
- } else {
- element.innerHTML = element.dataset.labelUnstar;
- element.dataset.value = "star";
- }
- });
- request.execute();
- }
-
- static markEntryAsRead(element) {
- if (element.classList.contains("item-status-unread")) {
- element.classList.remove("item-status-unread");
- element.classList.add("item-status-read");
-
- let entryID = parseInt(element.dataset.id, 10);
- this.updateEntriesStatus([entryID], "read");
- }
- }
-
- static saveEntry(element) {
- if (element.dataset.completed) {
- return;
- }
-
- element.innerHTML = element.dataset.labelLoading;
-
- let request = new RequestBuilder(element.dataset.saveUrl);
- request.withCallback(() => {
- element.innerHTML = element.dataset.labelDone;
- element.dataset.completed = true;
- });
- request.execute();
- }
-
- static fetchOriginalContent(element) {
- if (element.dataset.completed) {
- return;
- }
-
- element.innerHTML = element.dataset.labelLoading;
-
- let request = new RequestBuilder(element.dataset.fetchContentUrl);
- request.withCallback((response) => {
- element.innerHTML = element.dataset.labelDone;
- element.dataset.completed = true;
-
- response.json().then((data) => {
- if (data.hasOwnProperty("content")) {
- document.querySelector(".entry-content").innerHTML = data.content;
- }
- });
- });
- request.execute();
- }
-}