added a foreach loop to print out a crontab line-by-line to crontab_view.php
This commit is contained in:
parent
dbc5587bb6
commit
743ca029cc
@ -13,9 +13,9 @@
|
||||
|
||||
switch ($action) {
|
||||
case "list":
|
||||
$res = $db->query("SELECT crontab_path FROM crontabs;");
|
||||
$res = $db->query("SELECT crontab_id, crontab_path FROM crontabs;");
|
||||
while ($row = $res->fetchArray()){
|
||||
exit;
|
||||
echo "<button onclick=loadCrontab({$row['crontab_id']})>{$row['crontab_path']}</button><br>";
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
@ -1,24 +1,27 @@
|
||||
<?php
|
||||
/*
|
||||
GET Variables
|
||||
name: Name of crontab
|
||||
Optional:
|
||||
id: id of the crontab
|
||||
*/
|
||||
$GLOBALS['db'] = new SQLite3('../../webcron.db');
|
||||
|
||||
if (!array_key_exists("name", $_GET)) {
|
||||
if (!array_key_exists("id", $_GET)) {
|
||||
$name = "";
|
||||
} else {
|
||||
$name = $_GET["name"];
|
||||
$id = $_GET["id"];
|
||||
}
|
||||
|
||||
$db = $GLOBALS['db'];
|
||||
$id = $db->querySingle("select crontab_id from crontabs where crontab_path like '%/$name';");
|
||||
|
||||
if (empty($id)){
|
||||
echo "$name is not a valid crontab";
|
||||
} else {
|
||||
$data = $db->querySingle("SELECT crontab_data FROM crontabs WHERE crontab_id = $id;");
|
||||
echo "$data";
|
||||
$lines = explode("\n", $data);
|
||||
foreach ($lines as $line){
|
||||
echo "$line<br>";
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
@ -3,10 +3,22 @@
|
||||
This endpoint will get specific tables from the db
|
||||
|
||||
Args will be:
|
||||
action:
|
||||
list: list table names
|
||||
name: Table Name
|
||||
limit: number of entries to return (default all)
|
||||
columns: This will be a comma delimited list of column names (in the order that it needs to be displayed)
|
||||
*/
|
||||
|
||||
$db = new SQLite3("../../webcron.db");
|
||||
|
||||
if ( array_key_exists('action', $_GET)){
|
||||
$action=$_GET['action'];
|
||||
} else {
|
||||
$action="show";
|
||||
}
|
||||
|
||||
if ($action == "show"){
|
||||
if ( ! array_key_exists("name", $_GET) ){
|
||||
echo "A tablename was not provided with the request";
|
||||
return 1;
|
||||
@ -70,6 +82,13 @@ if (filter_var($limit, FILTER_VALIDATE_INT)){
|
||||
}
|
||||
echo '</div>';
|
||||
echo '</div>';
|
||||
} else if ($action == "list"){
|
||||
$res = $db->query("SELECT name FROM sqlite_master WHERE type='table';");
|
||||
|
||||
while ($row = $res->fetchArray()){
|
||||
echo "<button onclick='getTable(\"{$row['name']}\")'>{$row['name']}</button><br> ";
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
?>
|
20
api/update.php
Normal file
20
api/update.php
Normal file
@ -0,0 +1,20 @@
|
||||
<?php
|
||||
/*
|
||||
UPDATE:
|
||||
target=<string>
|
||||
*/
|
||||
|
||||
|
||||
if (array_key_exists("target", $_GET)){
|
||||
$target=$_GET['target'];
|
||||
}
|
||||
|
||||
switch ($target) {
|
||||
case "crontabs":
|
||||
shell_exec("../../Scripts/update-databse.sh");
|
||||
break;
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
||||
?>
|
@ -29,7 +29,7 @@
|
||||
<div class="menu_bar bordered_right cell">
|
||||
<button class="menu_button" onclick="setCrontabStats()"> View Crontab Statistics </button>
|
||||
<button class="menu_button" onclick="getTable('job_history')">View Script Run History</button>
|
||||
<button class="menu_button" onclick="getCrontabs()">View Crontabs</button>
|
||||
<button class="menu_button" onclick="listCrontabs()">View Crontabs</button>
|
||||
<button class="menu_button" onclick="test()">Test</button>
|
||||
</div>
|
||||
|
||||
|
@ -30,7 +30,7 @@
|
||||
|
||||
<div class="menu_bar bordered_right cell">
|
||||
<button class="menu_button" onclick="setDatabaseVersion()"> View Database Version</button>
|
||||
<button class="menu_button" onclick="setTableNames()"> View Tables </button>
|
||||
<button class="menu_button" onclick="listTables()"> View Tables </button>
|
||||
</div>
|
||||
|
||||
<div id="content" class="content cell">
|
||||
|
40
main.js
40
main.js
@ -1,9 +1,11 @@
|
||||
function setDatabaseVersion() {
|
||||
url = '/api/database_version.php';
|
||||
function setAreaByUrl(url){
|
||||
response = makeRequest(url);
|
||||
setInfoSection(response);
|
||||
}
|
||||
|
||||
function setDatabaseVersion() {
|
||||
url = '/api/database_version.php';
|
||||
setAreaByUrl(url);
|
||||
}
|
||||
|
||||
function makeRequest(url){
|
||||
var request = new XMLHttpRequest();
|
||||
@ -14,8 +16,7 @@ function makeRequest(url){
|
||||
|
||||
function setCrontabStats(){
|
||||
url = "/api/crontab_stats.php";
|
||||
response = makeRequest(url);
|
||||
setInfoSection(response);
|
||||
setAreaByUrl(url);
|
||||
}
|
||||
|
||||
function setInfoSection (string) {
|
||||
@ -25,20 +26,37 @@ function setInfoSection (string) {
|
||||
|
||||
function getTable(name){
|
||||
url = "/api/table.php?name="+name;
|
||||
response = makeRequest(url);
|
||||
setInfoSection(response);
|
||||
setAreaByUrl(url);
|
||||
}
|
||||
|
||||
function listTables(){
|
||||
url="/api/table.php?action=list";
|
||||
setAreaByUrl(url);
|
||||
}
|
||||
|
||||
function getCrontabs (){
|
||||
url = "/api/table.php?name='crontabs'&columns=crontab_path,crontab_created_timestamp,crontab_modified_timestamp";
|
||||
response = makeRequest(url);
|
||||
setInfoSection(response);
|
||||
setAreaByUrl(url);
|
||||
}
|
||||
|
||||
function listCrontabs(){
|
||||
url = "/api/crontab.php?action=list";
|
||||
setAreaByUrl(url);
|
||||
}
|
||||
|
||||
function loadCrontab (id){
|
||||
url = "/api/crontab_view.php?id="+id;
|
||||
setAreaByUrl(url);
|
||||
}
|
||||
|
||||
function test (){
|
||||
url = "/api/crontab_view.php?name=0hourly";
|
||||
response = makeRequest(url);
|
||||
setInfoSection(response);
|
||||
setAreaByUrl(url);
|
||||
}
|
||||
|
||||
function update_crons () {
|
||||
url = "/api/update.php?target=crontabs";
|
||||
setAreaByUrl(url);
|
||||
}
|
||||
|
||||
function triggerPopup(info_to_get){
|
||||
|
@ -1,2 +1,4 @@
|
||||
<div class="popup">
|
||||
<dialog>
|
||||
</dialog>
|
||||
</div>
|
Loading…
Reference in New Issue
Block a user