diff --git a/app/services/services.php b/app/services/services.php index 0ee0262f97..f4318ef32b 100644 --- a/app/services/services.php +++ b/app/services/services.php @@ -17,15 +17,19 @@ The Initial Developer of the Original Code is Mark J Crane - Portions created by the Initial Developer are Copyright (C) 2008-2014 + Portions created by the Initial Developer are Copyright (C) 2008-2018 the Initial Developer. All Rights Reserved. Contributor(s): Mark J Crane */ + +//includes require_once "root.php"; require_once "resources/require.php"; require_once "resources/check_auth.php"; + +//check permissions if (permission_exists('service_view')) { //access granted } @@ -102,182 +106,187 @@ if (strlen($_GET["a"]) > 0) { return; } +//get the service count +$sql = "select * from v_services "; +if (strlen($order_by)> 0) { $sql .= "order by $order_by $order "; } +$prep_statement = $db->prepare(check_sql($sql)); +$prep_statement->execute(); +$result = $prep_statement->fetchAll(PDO::FETCH_NAMED); +$num_rows = count($result); +unset ($prep_statement, $result, $sql); + +//paging +$rows_per_page = ($_SESSION['domain']['paging']['numeric'] != '') ? $_SESSION['domain']['paging']['numeric'] : 50; +$param = ""; +$page = $_GET['page']; +if (strlen($page) == 0) { $page = 0; $_GET['page'] = 0; } +list($paging_controls, $rows_per_page, $var_3) = paging($num_rows, $param, $rows_per_page); +$offset = $rows_per_page * $page; + +//get the service data +$sql = "select * from v_services "; +if (strlen($order_by)> 0) { $sql .= "order by $order_by $order "; } +$sql .= " limit $rows_per_page offset $offset "; +$prep_statement = $db->prepare(check_sql($sql)); +$prep_statement->execute(); +$services = $prep_statement->fetchAll(PDO::FETCH_NAMED); +unset ($prep_statement, $sql); + +//set the row style +$c = 0; +$row_style["0"] = "row_style0"; +$row_style["1"] = "row_style1"; + + //check if a process is running - function is_process_running($pid) { - $status = shell_exec( 'ps -p ' . $pid ); - $status_array = explode ("\n", $status); - if (strlen(trim($status_array[1])) > 0) { - return true; +function is_process_running($pid) { + $status = shell_exec( 'ps -p ' . $pid ); + $status_array = explode ("\n", $status); + if (strlen(trim($status_array[1])) > 0) { + return true; + } + else { + return false; + } +} + +//show the table content +echo "\n"; +echo "\n"; +echo "\n"; +echo "\n"; +echo "\n"; +echo "\n"; +echo "\n"; +echo "\n"; +echo "
".$text['header-services']." 
\n"; +echo $text['description-services']."

\n"; +echo "
\n"; + +echo "\n"; +echo "\n"; +echo th_order_by('service_name', $text['label-name'], $order_by, $order); +echo "\n"; +echo "\n"; +echo th_order_by('service_description', $text['label-description'], $order_by, $order); +echo "\n"; +echo "\n"; + +if (is_array($services)) { + foreach($services as $row) { + $tr_link = (permission_exists('service_edit')) ? "href='service_edit.php?id=".escape($row[service_uuid])."'" : null; + echo "\n"; + echo " \n"; + echo " \n"; +echo "\n"; +echo "\n"; + +echo "
".$text['label-status']."".$text['label-action'].""; +if (permission_exists('service_add')) { + echo "$v_link_label_add"; +} +echo "
"; + if (permission_exists('service_edit')) { + echo "".escape($row[service_name]).""; } else { - return false; + echo escape($row[service_name]); } - } + echo " \n"; + $service_running = false; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "
".$text['header-services']." 
\n"; - echo $text['description-services']."

\n"; - echo "
\n"; - - $sql = "select * from v_services "; - if (strlen($order_by)> 0) { $sql .= "order by $order_by $order "; } - $prep_statement = $db->prepare(check_sql($sql)); - $prep_statement->execute(); - $result = $prep_statement->fetchAll(PDO::FETCH_NAMED); - $num_rows = count($result); - unset ($prep_statement, $result, $sql); - $rows_per_page = ($_SESSION['domain']['paging']['numeric'] != '') ? $_SESSION['domain']['paging']['numeric'] : 50; - $param = ""; - $page = $_GET['page']; - if (strlen($page) == 0) { $page = 0; $_GET['page'] = 0; } - list($paging_controls, $rows_per_page, $var_3) = paging($num_rows, $param, $rows_per_page); - $offset = $rows_per_page * $page; - - $sql = "select * from v_services "; - if (strlen($order_by)> 0) { $sql .= "order by $order_by $order "; } - $sql .= " limit $rows_per_page offset $offset "; - $prep_statement = $db->prepare(check_sql($sql)); - $prep_statement->execute(); - $result = $prep_statement->fetchAll(PDO::FETCH_NAMED); - $result_count = count($result); - unset ($prep_statement, $sql); - - $c = 0; - $row_style["0"] = "row_style0"; - $row_style["1"] = "row_style1"; - - echo "\n"; - echo "\n"; - echo th_order_by('service_name', $text['label-name'], $order_by, $order); - echo "\n"; - echo "\n"; - echo th_order_by('service_description', $text['label-description'], $order_by, $order); - echo "\n"; - echo "\n"; - - if ($result_count > 0) { - foreach($result as $row) { - $tr_link = (permission_exists('service_edit')) ? "href='service_edit.php?id=".$row[service_uuid]."'" : null; - echo "\n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; echo " \n"; + echo " \n"; - echo " \n"; - echo " \n"; - echo "\n"; - if ($c==0) { $c=1; } else { $c=0; } - } //end foreach - unset($sql, $result, $row_count); - } //end if results + } - echo "\n"; - echo "\n"; - echo "\n"; + echo "\n"; + echo " \n"; + echo " \n"; + echo "\n"; + if ($c==0) { $c=1; } else { $c=0; } + } //end foreach + unset($sql, $services); +} //end if results - echo "
".$text['label-status']."".$text['label-action'].""; - if (permission_exists('service_add')) { - echo "$v_link_label_add"; - } - echo "
"; - if (permission_exists('service_edit')) { - echo "".$row[service_name].""; - } - else { - echo $row[service_name]; - } - echo " \n"; - $service_running = false; - - if ($row[service_type] == "svc") { - if ($HAS_WIN_SVC) { - $service_data = $row[service_data]; - $svc = new win_service($service_data); - $svc_state = $svc->state() or $svc->last_error(); - if(!$svc_state){ - $svc_state = 'NOT_INSTALL'; - } - $service_running = (($svc_state == 'RUNNING') || ($svc_state == 'START_PENDING')); - - echo "$svc_state"; - - echo "\n"; - if ($svc_state == 'NOT_INSTALL') { - echo "$svc_state"; - } - else { - if ($service_running) { - echo " ".$text['label-stop'].""; - } - else { - echo " ".$text['label-start'].""; - } - } - } - else{ - echo "UNSUPPORT"; - echo "\n"; - echo "UNSUPPORT"; - } - } - else { - if ($row[service_type] == "pid" || $row[service_type] == "pid_file") { - $pid = file_get_contents($row[service_data]); - $service_running = is_process_running($pid); - } - if ($row[service_type] == "file") { - $service_data = $row[service_data]; - $service_running = file_exists($service_data); + if ($row[service_type] == "svc") { + if ($HAS_WIN_SVC) { + $service_data = $row[service_data]; + $svc = new win_service($service_data); + $svc_state = $svc->state() or $svc->last_error(); + if(!$svc_state){ + $svc_state = 'NOT_INSTALL'; } + $service_running = (($svc_state == 'RUNNING') || ($svc_state == 'START_PENDING')); - if ($service_running) { - echo "".$text['label-running'].""; - } - else { - echo "".$text['label-stopped'].""; - } + echo "$svc_state"; echo "\n"; - if ($service_running) { - echo " ".$text['label-stop'].""; + if ($svc_state == 'NOT_INSTALL') { + echo "$svc_state"; } else { - echo " ".$text['label-start'].""; + if ($service_running) { + echo " ".$text['label-stop'].""; + } + else { + echo " ".$text['label-start'].""; + } } } + else{ + echo "UNSUPPORT"; + echo "\n"; + echo "UNSUPPORT"; + } + } + else { + if ($row[service_type] == "pid" || $row[service_type] == "pid_file") { + $pid = file_get_contents($row[service_data]); + $service_running = is_process_running($pid); + } + if ($row[service_type] == "file") { + $service_data = $row[service_data]; + $service_running = file_exists($service_data); + } + if ($service_running) { + echo "".$text['label-running'].""; + } + else { + echo "".$text['label-stopped'].""; + } echo "".$row[service_description]." "; - if (permission_exists('service_edit')) { - echo "$v_link_label_edit"; + echo " \n"; + if ($service_running) { + echo " ".$text['label-stop'].""; } - if (permission_exists('service_delete')) { - echo "$v_link_label_delete"; + else { + echo " ".$text['label-start'].""; } - echo "
\n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo "
 $paging_controls"; - if (permission_exists('service_add')) { - echo "$v_link_label_add"; - } - echo "
\n"; - echo "
".escape($row[service_description])." "; + if (permission_exists('service_edit')) { + echo "$v_link_label_edit"; + } + if (permission_exists('service_delete')) { + echo "$v_link_label_delete"; + } + echo "
"; - echo "

"; +echo "
\n"; +echo " \n"; +echo " \n"; +echo " \n"; +echo " \n"; +echo " \n"; +echo " \n"; +echo "
 $paging_controls"; +if (permission_exists('service_add')) { + echo "$v_link_label_add"; +} +echo "
\n"; +echo "
"; +echo "

"; //include the footer - require_once "resources/footer.php"; +require_once "resources/footer.php"; -?> \ No newline at end of file +?>