diff --git a/app/streams/streams.php b/app/streams/streams.php new file mode 100644 index 0000000000..69d923f8a6 --- /dev/null +++ b/app/streams/streams.php @@ -0,0 +1,265 @@ + + Portions created by the Initial Developer are Copyright (C) 2018 + the Initial Developer. All Rights Reserved. +*/ + +//includes + require_once "root.php"; + require_once "resources/require.php"; + require_once "resources/check_auth.php"; + +//check permissions + if (permission_exists('stream_view')) { + //access granted + } + else { + echo "access denied"; + exit; + } + +//add multi-lingual support + $language = new text; + $text = $language->get(); + +//get the action + if (is_array($_POST["streams"])) { + $streams = $_POST["streams"]; + foreach($streams as $row) { + if ($row['action'] == 'delete') { + $action = 'delete'; + break; + } + } + } + +//delete the streams + if (permission_exists('stream_delete')) { + if ($action == "delete") { + //download + $obj = new streams; + $obj->delete($streams); + //delete message + messages::add($text['message-delete']); + } + } + +//get variables used to control the order + $order_by = check_str($_GET["order_by"]); + $order = check_str($_GET["order"]); + +//add the search term + $search = strtolower(check_str($_GET["search"])); + if (strlen($search) > 0) { + $sql_search = " ("; + $sql_search .= "lower(stream_name) like '%".$search."%' "; + $sql_search .= "or lower(stream_location) like '%".$search."%' "; + $sql_search .= "or lower(stream_enabled) like '%".$search."%' "; + $sql_search .= "or lower(domain_uuid) like '%".$search."%' "; + $sql_search .= "or lower(stream_description) like '%".$search."%' "; + $sql_search .= ") "; + } + +//additional includes + require_once "resources/header.php"; + require_once "resources/paging.php"; + +//prepare to page the results + $sql = "select count(stream_uuid) as num_rows from v_streams "; + if ($_GET['show'] == "all" && permission_exists('stream_all')) { + if (isset($sql_search)) { + $sql .= "where ".$sql_search; + } + } else { + $sql .= "where (domain_uuid = '".$domain_uuid."' or domain_uuid is null) "; + if (isset($sql_search)) { + $sql .= "and ".$sql_search; + } + } + if (strlen($order_by)> 0) { $sql .= "order by $order_by $order "; } + $prep_statement = $db->prepare($sql); + if ($prep_statement) { + $prep_statement->execute(); + $row = $prep_statement->fetch(PDO::FETCH_ASSOC); + if ($row['num_rows'] > 0) { + $num_rows = $row['num_rows']; + } + else { + $num_rows = '0'; + } + } + +//prepare to page the results + $rows_per_page = ($_SESSION['domain']['paging']['numeric'] != '') ? $_SESSION['domain']['paging']['numeric'] : 50; + $param = "&search=".$search; + if ($_GET['show'] == "all" && permission_exists('stream_all')) { + $param .= "&show=all"; + } + $page = $_GET['page']; + if (strlen($page) == 0) { $page = 0; $_GET['page'] = 0; } + list($paging_controls, $rows_per_page, $var3) = paging($num_rows, $param, $rows_per_page); + $offset = $rows_per_page * $page; + +//get the list + $sql = "select * from v_streams "; + if ($_GET['show'] == "all" && permission_exists('stream_all')) { + if (isset($sql_search)) { + $sql .= "where ".$sql_search; + } + } else { + $sql .= "where (domain_uuid = '".$domain_uuid."' or domain_uuid is null) "; + if (isset($sql_search)) { + $sql .= "and ".$sql_search; + } + } + 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); + unset ($prep_statement, $sql); + +//alternate the row style + $c = 0; + $row_style["0"] = "row_style0"; + $row_style["1"] = "row_style1"; + +//define the checkbox_toggle function + echo "\n"; + +//show the content + echo "\n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo "
".$text['title-streams']."
\n"; + + if (permission_exists('stream_all')) { + if ($_GET['show'] == 'all') { + echo " "; + } + else { + echo " \n"; + } + } + + echo " \n"; + echo " \n"; + echo "
\n"; + echo " ".$text['title_description-stream']."

\n"; + echo "
\n"; + + echo "
\n"; + echo "\n"; + echo "\n"; + echo " \n"; + echo th_order_by('stream_name', $text['label-stream_name'], $order_by, $order); + echo th_order_by('stream_location', $text['label-stream_location'], $order_by, $order); + echo th_order_by('stream_enabled', $text['label-stream_enabled'], $order_by, $order); + echo th_order_by('stream_description', $text['label-stream_description'], $order_by, $order); + echo " \n"; + echo "\n"; + + if (is_array($result)) { + $x = 0; + foreach($result as $row) { + if (permission_exists('stream_edit')) { + $tr_link = "href='stream_edit.php?id=".$row['stream_uuid']."'"; + } + echo "\n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + //echo " \n"; + echo " \n"; + echo " \n"; + echo "\n"; + $x++; + 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 " "; + if (permission_exists('stream_add')) { + echo " $v_link_label_add"; + } + else { + echo " \n"; + } + echo "
".escape($row['stream_name'])." ".escape($row['stream_location'])." ".escape($row['stream_enabled'])." ".escape($row['domain_uuid'])." ".escape($row['stream_description'])." "; + if (permission_exists('stream_edit')) { + echo "$v_link_label_edit"; + } + if (permission_exists('stream_delete')) { + echo ""; + } + echo "
\n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo "
 $paging_controls"; + if (permission_exists('stream_add')) { + echo "$v_link_label_add"; + } + else { + echo " "; + } + echo "
\n"; + echo "
"; + echo "
\n"; + echo "

"; + +//include the footer + require_once "resources/footer.php"; + +?>