From fb4cc88fd1916bb9eefdfd6f879baa8408e0afce Mon Sep 17 00:00:00 2001 From: Skylar Ittner Date: Wed, 24 Jan 2018 00:37:50 -0700 Subject: [PATCH] Add task action buttons --- www/assets/css/other.css | 8 +++ www/cards/js/qwikclock_jobs.js | 6 +- www/cards/js/taskfloor_viewtasks.js | 89 +++++++++++++++++++++-------- www/cards/qwikclock_jobs.html | 12 +--- 4 files changed, 76 insertions(+), 39 deletions(-) diff --git a/www/assets/css/other.css b/www/assets/css/other.css index 1b64dfc..cfae759 100644 --- a/www/assets/css/other.css +++ b/www/assets/css/other.css @@ -56,6 +56,14 @@ file, You can obtain one at http://mozilla.org/MPL/2.0/. font-size: 200%; } +.btn-bin { + display: flex; + flex-wrap: wrap; +} + +.bin-btn { + margin: 5px 5px; +} .btn-red, .btn-red:hover, .btn-red:active, .btn-red:focus { background-color: #f44336; diff --git a/www/cards/js/qwikclock_jobs.js b/www/cards/js/qwikclock_jobs.js index 1e96626..3554a8f 100644 --- a/www/cards/js/qwikclock_jobs.js +++ b/www/cards/js/qwikclock_jobs.js @@ -28,7 +28,7 @@ function dispCurrent(card, current) { $(".card_qwikclock_jobs").each(function () { var card = $(this); $(this).find(".card_title").prepend("Jobs | "); - var btnbin = $(this).find(".job-btn-bin"); + var btnbin = $(this).find(".btn-bin"); var current = $(this).find(".current-job"); var url = $(this).data("apiurl"); $.post(url, { @@ -40,9 +40,9 @@ $(".card_qwikclock_jobs").each(function () { var jobs = resp.jobs; if (jobs.length > 0) { for (var job in jobs) { - btnbin.append('
' + jobs[job]['name'] + '
'); + btnbin.append('
' + jobs[job]['name'] + '
'); } - btnbin.append('
None
'); + btnbin.append('
None
'); } else { btnbin.html('
No jobs available.
'); } diff --git a/www/cards/js/taskfloor_viewtasks.js b/www/cards/js/taskfloor_viewtasks.js index 7e85a03..3b4879d 100644 --- a/www/cards/js/taskfloor_viewtasks.js +++ b/www/cards/js/taskfloor_viewtasks.js @@ -5,31 +5,70 @@ */ -$(".card_taskfloor_viewtasks").each(function () { - var card = $(this); - $(this).find(".card_title").prepend("Tasks | "); - var tasklist = $(this).find(".task-list"); - var url = $(this).data("apiurl"); +function loadTaskCards() { + $(".card_taskfloor_viewtasks").each(function () { + var card = $(this); + if (!$(this).find(".card_title").text().startsWith("Tasks | ")) { + $(this).find(".card_title").prepend("Tasks | "); + } + var tasklist = $(this).find(".task-list"); + var url = $(this).data("apiurl"); + $.post(url, { + username: getuser(), + password: getAPIKey(), + action: "gettasks" + }, function (resp) { + if (resp.status == "OK") { + tasklist.html(""); + var tasks = resp.tasks; + for (var i = 0; i < tasks.length; i++) { + var taskhtml = + '
' + + '
' + + '
' + tasks[i]['title'] + '
' + + '
' + + '

' + tasks[i]['description'] + '

' + + '
'; + if (tasks[i]['status'] == "0") { + taskhtml += '
Start
'; + } else if (tasks[i]['status'] == "1") { + taskhtml += '
Finish
'; + taskhtml += '
Pause
'; + taskhtml += '
Problem
'; + } else if (tasks[i]['status'] == "3" || tasks[i]['status'] == "4") { + taskhtml += '
Continue
'; + } + + taskhtml += '
\n
'; + tasklist.append(taskhtml); + } + } else { + showmsg(resp.msg, "danger"); + } + }, "json").fail(function () { + card.css("display", "none"); + }); + }); +} + +loadTaskCards(); + +$(".card_taskfloor_viewtasks").on("click", ".status-btn", function () { + var cardapp = $(this).parents(".card_app"); + var taskitem = $(this).parents(".task"); + var url = cardapp.data("apiurl"); $.post(url, { - username: getuser(), - password: getAPIKey(), - action: "gettasks" + username: getuser(), + password: getAPIKey(), + action: "updatetask", + taskid: taskitem.data("taskid"), + status: $(this).data("status") }, function (resp) { - if (resp.status == "OK") { - var tasks = resp.tasks; - for (var i = 0; i < tasks.length; i++) { - tasklist.append( - '
' - + '
' - + '
' + tasks[i]['title'] + '
' - + '
' - + '

' + tasks[i]['description'] + '

' - + '
'); - } - } else { - showmsg(resp.msg, "danger"); - } - }, "json").fail(function () { - card.css("display", "none"); - }); + if (resp.status == "OK") { + showmsg(' ' + resp.msg, "success"); + } else { + showmsg(' ' + resp.msg, "danger"); + } + loadTaskCards(); + }, "json"); }); \ No newline at end of file diff --git a/www/cards/qwikclock_jobs.html b/www/cards/qwikclock_jobs.html index bf5610a..50be7c3 100644 --- a/www/cards/qwikclock_jobs.html +++ b/www/cards/qwikclock_jobs.html @@ -3,21 +3,11 @@ This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/. --> -

QwikClock | Jobs

Current Job:

Select a Job:

-
+
\ No newline at end of file