diff --git a/server/resources/ajax/ajax_admin_list.php b/server/resources/ajax/ajax_admin_list.php deleted file mode 100644 index ddf0ec3..0000000 --- a/server/resources/ajax/ajax_admin_list.php +++ /dev/null @@ -1,96 +0,0 @@ -requirelogin(false); - -$risultato = $database->exec("SELECT * FROM `%PREFIX%_profiles` ORDER BY available DESC, chief DESC, services ASC, availability_minutes ASC, name ASC;", true); - -$hidden = $user->hidden(); -?> - -
- - - - - - - - - - - - - - "; - - $services = $row['services']; - $minutes = $row['availability_minutes']; - $u = 'user_details.php?user=' . str_replace(' ', '_', urldecode(strtolower($row["id"]))); - echo ""; - } - } - ?> -
"; - $name = $user->nameById($row["id"]); - $callFunction = ($row['available'] == 1) ? "Deactivate" : "Activate"; - $available = $row["available"]; - if ($row['chief'] == 1) { - echo ""; - } else { - echo ""; - } - if((time()-$row["online_time"])<=30){ - echo "".$name.""; - } else { - echo $name.""; - } - if ($row['available'] == 1) { - echo ""; - } else { - echo ""; - }; - echo ""; - if ($row['autista'] == 1) { - echo ""; - } else { - echo ""; - }; - echo ""; - - $nome_url = urlencode($row['name']); - echo " $services$minutes

".t("Others infos",false)."

-
-

- -

-
diff --git a/server/resources/ajax/ajax_list.php b/server/resources/ajax/ajax_list.php index aababa7..f74a81b 100644 --- a/server/resources/ajax/ajax_list.php +++ b/server/resources/ajax/ajax_list.php @@ -6,55 +6,56 @@ $user->requirelogin(false); $risultato = $database->exec("SELECT * FROM `%PREFIX%_profiles` ORDER BY available DESC, chief DESC, services ASC, availability_minutes ASC, name ASC;", true); $hidden = $user->hidden(); -?> - -
- - - - - "; + } else { + if($user->requireRole(Role::FULL_VIEWER)){ + $name = $user->nameById($row["id"]); + $name_encoded = urlencode($name); + $functionName = $row["available"] ? "Deactivate" : "Activate"; + $firstCell = $row["chief"] ? "$name" : "$name"; + $secondCell = $row["available"] ? "" : ""; + $response[] = [ + (time()-$row["online_time"])<=30 ? "".$firstCell."" : $firstCell, + $secondCell, + $row['autista'] ? "" : "", + $row['telefono'] ? "" : "", + $row['telefono'] ? "" : "", + $row['services'], + $row['availability_minutes'], + "

".t("Altri dettagli", false)."

" + ]; + } else { + $response[] = [ + "id" => $row["id"], + "available" => $row["available"], + "online" => (time()-$row["online_time"])<=30 ? 1 : 0 + ]; } - } - ?> -
"; - if ($row['chief'] == 1) {echo " ";} else{echo " ";} - if((time()-$row["online_time"])<=30){ - echo "".$user->nameById($row["id"]).""; +$response = []; +foreach($risultato as $row){ + if(!in_array($row['name'], $hidden) && ($row['hidden'] == 0 && $row['disabled'] == 0)){ + if(isset($_GET["only_data"])){ + if($user->requireRole(Role::FULL_VIEWER)){ + $response[] = [ + "id" => $row["id"], + "available" => $row["available"], + "chief" => $row['chief'], + "online" => (time()-$row["online_time"])<=30 ? 1 : 0, + "driver" => $row['autista'], + "phone" => $row['telefono'], + "services" => $row['services'], + "availability_minutes" => $row['availability_minutes'] + ]; } else { - echo "".$user->nameById($row["id"]).""; + $response[] = [ + "id" => $row["id"], + "available" => $row["available"], + "online" => (time()-$row["online_time"])<=30 ? 1 : 0 + ]; } - if ($row['available'] == 1) {echo "";} else{echo "";}; - echo "
-
+ } + } +} +header("Content-type: application/json"); +print(json_encode($response)); +?> diff --git a/server/resources/src/main.js b/server/resources/src/main.js index c1326f4..b1bb3a1 100644 --- a/server/resources/src/main.js +++ b/server/resources/src/main.js @@ -6,6 +6,13 @@ import './font-awesome.scss'; import '../node_modules/bootstrap-cookie-alert/cookiealert.css'; // TODO: migrate to Bootstrap Italia import pickadate from 'pickadate' +$( document ).ajaxError(function(event, xhr, settings, error) { + console.error("Error requesting content: "+error+" - status code "+xhr.status); + console.log(event); + console.log(xhr); + console.log(settings); +}); + $( document ).ready(function() { // From https://github.com/Wruczek/Bootstrap-Cookie-Alert/blob/gh-pages/cookiealert.js var cookieAlert = document.querySelector(".cookiealert"); @@ -58,4 +65,21 @@ if ('serviceWorker' in navigator) { console.log('SW registration failed: ', registrationError); }); }); -} \ No newline at end of file +} + +function loadTable(table_page){ + $.getJSON( "resources/ajax/ajax_"+table_page+".php", function( data, status, xhr ) { + $("#table_body").empty(); + $.each(data, function(num, item) { + var row = document.createElement("tr"); + $.each(item, function(num, i) { + var cell = document.createElement("td"); + cell.innerHTML = i; + row.appendChild(cell); + }); + document.getElementById("table_body").appendChild(row); + }); + caches.open('static-1').then((cache) => { cache.put('/table_'+table_page+'.json', new Response(xhr.responseText)) }); + }); +} +window.loadTable = loadTable; \ No newline at end of file diff --git a/server/templates/list.html b/server/templates/list.html index 2a966d8..cbd2959 100644 --- a/server/templates/list.html +++ b/server/templates/list.html @@ -13,26 +13,7 @@ VVF

-
-{% if user.full_viewer == false %} - -{% elseif user.full_viewer == true %} - - -{% endif %} -
-
+
+ + + + + + {% if user.full_viewer %} + + + + + + + {% endif %} + + + + +
{{ 'Name'|t }}{{ 'Available'|t }}{{ 'Driver'|t }}{{ 'Call'|t }}{{ 'Write'|t }}{{ 'Services'|t }}{{ 'Availability Minutes'|t }}{{ 'Other'|t }}
+ +
+ +

+

+ {{ 'Add user'|t }} +

+
+
{% endblock %} \ No newline at end of file