add localizatin, fix bugs
This commit is contained in:
434
index.php
434
index.php
@@ -3,9 +3,7 @@ session_start();
|
||||
$mysqli = new mysqli('localhost', 'streaming', file_get_contents("secrets/MySQLPWD"), 'streaming');
|
||||
|
||||
$ipcka = $_SERVER['REMOTE_ADDR'];
|
||||
|
||||
$headers = apache_request_headers();
|
||||
|
||||
foreach ($headers as $header => $value) {
|
||||
if($header == 'X-Real-IP'){
|
||||
if (!empty($value) && $_SERVER['REMOTE_ADDR'] == "127.0.0.1"){
|
||||
@@ -14,137 +12,154 @@ foreach ($headers as $header => $value) {
|
||||
}
|
||||
}
|
||||
|
||||
//BEGIN FUNCTIONS
|
||||
|
||||
|
||||
$stmt2 = $mysqli->prepare("DELETE FROM Connections WHERE TimestampPing < (CURRENT_TIMESTAMP - 300);");
|
||||
$stmt2->execute();
|
||||
$stmt2->store_result();
|
||||
|
||||
$stmt20 = $mysqli->prepare("DELETE FROM Chat WHERE Timestamp < (CURRENT_TIMESTAMP - 86400);");
|
||||
$stmt20->execute();
|
||||
$stmt20->store_result();
|
||||
|
||||
|
||||
if (!empty($_GET["adder"])){
|
||||
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
|
||||
$heslo = trim($_POST['heslo']);
|
||||
if (password_verify($heslo, file_get_contents("secrets/AdminPwdHash"))) {
|
||||
$kod = $_POST['kod'];
|
||||
$url = $_POST['url'];
|
||||
$type = $_POST['type'];
|
||||
$adminpwd = $_POST['adminpwd'];
|
||||
if(!empty($kod) && !empty($url) && !empty($type) && !empty($adminpwd)){
|
||||
if(strlen($kod) <= 20 && strlen($url) <= 256 && strlen($type) <= 20 && strlen($adminpwd) <= 20){
|
||||
$stmt2 = $mysqli->prepare("SELECT ID FROM Streams WHERE Code=? OR AdminCode=?");
|
||||
$stmt2->bind_param('ss', $kod, $adminpwd);
|
||||
$stmt2->execute();
|
||||
$stmt2->store_result();
|
||||
if ($stmt2->num_rows > 0) {
|
||||
echo ("Stream exists!");
|
||||
} else {
|
||||
|
||||
$stmt = $mysqli->prepare("INSERT INTO Streams (URL, Type, AdminCode, Code) VALUES (?, ?, ?, ?);");
|
||||
$stmt->bind_param('ssss', $url, $type, $adminpwd, $kod);
|
||||
$stmt->execute();
|
||||
$stmt->store_result();
|
||||
echo "Stream added";
|
||||
}
|
||||
}
|
||||
}
|
||||
} else {
|
||||
echo "Bad password.";
|
||||
}
|
||||
}
|
||||
echo str_replace("__VLOZ_ROK__", date("Y"), file_get_contents("templates/streamadd.html"));
|
||||
exit();
|
||||
}
|
||||
if (!empty($_SESSION["kod"]) && !empty($_SESSION['listeners']) && !empty($_SESSION["inicialy"]) && !empty($_GET["admin"]))
|
||||
{
|
||||
$kod = $_SESSION['kod'];
|
||||
$stmt = $mysqli->prepare("Select ID, URL, Type, Code FROM Streams WHERE AdminCode = ?;");
|
||||
$stmt->bind_param('s', $kod);
|
||||
$stmt->bind_result($idcko, $url, $type, $code);
|
||||
$stmt->execute();
|
||||
$stmt->store_result();
|
||||
if ($stmt->num_rows > 0){
|
||||
while ($stmt->fetch())
|
||||
{
|
||||
if (!empty($_GET["onlyconns"])){
|
||||
$stmt3 = $mysqli->prepare("Select ID, PHPSessID, TimeConnect, TimePing, Listeners, Inicialy, IP FROM Connections WHERE StreamID = ?");
|
||||
$stmt3->bind_param('i', $idcko);
|
||||
$stmt3->bind_result($idcko, $phpSessID, $timeConn, $timePing, $listeners, $inicialy, $IP);
|
||||
$stmt3->execute();
|
||||
$stmt3->store_result();
|
||||
$connadm = '
|
||||
<table style="width:100%">
|
||||
<tr><th>Iniciály</th><th>Listeners</th><th>Date and time of connection</th><th>Date and time of keepalive</th><th>IP address</th></tr>
|
||||
';
|
||||
if ($stmt3->num_rows > 0){
|
||||
while ($stmt3->fetch())
|
||||
{
|
||||
$connadm = $connadm . '<tr><td>' . $inicialy . '</td>' . '<td>' . $listeners . '</td>' . '<td>' . $timeConn . '</td>' . '<td>' . $timePing . '</td>' . '<td>' . $IP . '</td></tr>';
|
||||
}
|
||||
}
|
||||
$connadm = $connadm . '</table>';
|
||||
echo $connadm;
|
||||
function languageSelector(){
|
||||
$lang_dir = "templates/locale";
|
||||
$langs = scandir($lang_dir);
|
||||
$langSelectDat = '<div id="langselect"><select>';
|
||||
foreach($langs as $lang){
|
||||
if (str_contains($lang, ".json")){
|
||||
$parsedLang = json_decode(file_get_contents($lang_dir . '/' . $lang), true);
|
||||
$shortLang = $parsedLang['__LOCALIZATION_LANG_SHORT'];
|
||||
$longLang = $parsedLang['__LOCALIZATION_LANG_LONG'];
|
||||
if ($lang == $_SESSION['language'] . '.json'){
|
||||
$langSelectDat = $langSelectDat . '<option selected onclick="SetLang(\'' . $shortLang . '\');">'. $longLang . '</option>' . "\n";
|
||||
}
|
||||
else{
|
||||
if (!empty($_GET['delete'])&&!empty($_POST['delete'])){
|
||||
if($_POST['delete'] == "*"){
|
||||
$stmt5 = $mysqli->prepare("DELETE from Chat WHERE StreamID = ?;");
|
||||
$stmt5->bind_param('i', $idcko);
|
||||
$stmt5->execute();
|
||||
$stmt5->store_result();
|
||||
}
|
||||
else{
|
||||
$deleteid = intval($_POST['delete']);
|
||||
if ($deleteid >= 0){
|
||||
$stmt6 = $mysqli->prepare("DELETE from Chat WHERE StreamID = ? AND ID = ?;");
|
||||
$stmt6->bind_param('ii', $idcko, $deleteid);
|
||||
$stmt6->execute();
|
||||
$stmt6->store_result();
|
||||
}
|
||||
}
|
||||
}
|
||||
else{
|
||||
$stmt7 = $mysqli->prepare("Select ID, Timestamp, Author, Message from Chat WHERE StreamID = ?;");
|
||||
$stmt7->bind_param('i', $idcko);
|
||||
$stmt7->bind_result($idckochat, $timestamp, $author, $message);
|
||||
$stmt7->execute();
|
||||
$stmt7->store_result();
|
||||
$chatadm = '
|
||||
<table style="width:100%">
|
||||
<tr>
|
||||
<th>Author</th><th>Date</th><th>Message</th><th>Delete</th>
|
||||
</tr>
|
||||
';
|
||||
if ($stmt7->num_rows > 0){
|
||||
while ($stmt7->fetch()){
|
||||
$chatadm = $chatadm . '<tr><td>' . $author . '</td><td>' . $timestamp . ' GMT</td><td>' . $message . '<td><button onclick="deleteit(' . $idckochat . ')">Delete</button></td></tr>' . "\n";
|
||||
}
|
||||
}
|
||||
$chatadm = $chatadm . '</table>';
|
||||
if (!empty($_GET['onlytable'])){
|
||||
echo $chatadm;
|
||||
}
|
||||
else{
|
||||
$dats = file_get_contents("templates/admin.html");
|
||||
$dats = str_replace('__VLOZ_CHAT_ADMIN_TABULKU__', $chatadm , $dats);
|
||||
$dats = str_replace('__VLOZ_URL_AUDIA__', $config->url , $dats);
|
||||
$dats = str_replace('__VLOZ_TYP_AUDIA__', $config->type , $dats);
|
||||
$dats = str_replace('__VLOZ_ROK__', date("Y"), $dats);
|
||||
echo $dats;
|
||||
}
|
||||
}
|
||||
$langSelectDat = $langSelectDat . '<option onclick="SetLang(\'' . $shortLang . '\');">'. $longLang . '</option>' . "\n";
|
||||
}
|
||||
}
|
||||
}
|
||||
$langSelectDat = $langSelectDat . '</select></div>';
|
||||
return $langSelectDat;
|
||||
}
|
||||
function localize($input_string){
|
||||
if (empty($_SESSION['language'])){
|
||||
$_SESSION['language'] = "en";
|
||||
}
|
||||
$language = htmlspecialchars($_SESSION['language']) ;
|
||||
$lang_dir = "templates/locale";
|
||||
$langs = scandir($lang_dir);
|
||||
$lang_file = "";
|
||||
foreach($langs as $lang){
|
||||
if ($lang == $language . '.json'){
|
||||
$lang_file = $lang_dir . '/' . $lang;
|
||||
}
|
||||
}
|
||||
|
||||
if (file_exists($lang_file)){
|
||||
$language_obj = json_decode(file_get_contents($lang_file), true);
|
||||
$tempStr = str_replace("__VLOZ_ROK__", date("Y"), $input_string);
|
||||
$tempStr = str_replace("__LOCALIZATION_LANGSELECT__", languageSelector(), $tempStr);
|
||||
$tempStr = str_replace("__LOCALIZATION_LANGSELECT_SCRIPT__", file_get_contents('templates/langSelector.js'), $tempStr);
|
||||
foreach ($language_obj as $key => $value){
|
||||
$tempStr = str_replace($key, $value, $tempStr);
|
||||
}
|
||||
return $tempStr;
|
||||
}
|
||||
else{
|
||||
return 'LANGUAGE NON EXISTENT';
|
||||
}
|
||||
}
|
||||
|
||||
function connectionAdminTable($idcko){
|
||||
global $mysqli;
|
||||
|
||||
$stmt2 = $mysqli->prepare("DELETE FROM Connections WHERE TimestampPing < (CURRENT_TIMESTAMP - 300);");
|
||||
$stmt2->execute();
|
||||
$stmt2->store_result();
|
||||
$stmt3 = $mysqli->prepare("Select ID, PHPSessID, TimeConnect, TimePing, Listeners, Inicialy, IP FROM Connections WHERE StreamID = ?");
|
||||
$stmt3->bind_param('i', $idcko);
|
||||
$stmt3->bind_result($idckoconnection, $phpSessID, $timeConn, $timePing, $listeners, $inicialy, $IP);
|
||||
$stmt3->execute();
|
||||
$stmt3->store_result();
|
||||
$connadm = '
|
||||
<table style="width:100%">
|
||||
<tr><th>__LOCALIZATION_LOGIN_INITIALS_LABEL__</th><th>__LOCALIZATION_LOGIN_LISTENERS_LABEL__</th><th>__LOCALIZATION_CONNECTIONS_DATETIME_CONNECT_ADMIN__</th><th>__LOCALIZATION_CONNECTIONS_DATETIME_PING_ADMIN__</th><th>__LOCALIZATION_CONNECTIONS_IP_ADMIN__</th></tr>
|
||||
';
|
||||
if ($stmt3->num_rows > 0){
|
||||
while ($stmt3->fetch())
|
||||
{
|
||||
$connadm = $connadm . '<tr><td>' . $inicialy . '</td>' . '<td>' . $listeners . '</td>' . '<td>' . $timeConn . '</td>' . '<td>' . $timePing . '</td>' . '<td>' . $IP . '</td></tr>';
|
||||
}
|
||||
}
|
||||
$connadm = $connadm . '</table>';
|
||||
$localized = localize($connadm);
|
||||
return $localized;
|
||||
}
|
||||
|
||||
function chatAdminTable($idcko){
|
||||
global $mysqli;
|
||||
$stmt7 = $mysqli->prepare("Select ID, Timestamp, Author, Message from Chat WHERE StreamID = ?;");
|
||||
$stmt7->bind_param('i', $idcko);
|
||||
$stmt7->bind_result($idckochat, $timestamp, $author, $message);
|
||||
$stmt7->execute();
|
||||
$stmt7->store_result();
|
||||
$chatadm = '
|
||||
<table style="width:100%">
|
||||
<tr>
|
||||
<th>__LOCALIZATION_CHAT_AUTHOR_ADMIN__</th><th>__LOCALIZATION_CHAT_DATE_ADMIN__</th><th>__LOCALIZATION_CHAT_MESSAGE_ADMIN__</th><th>__LOCALIZATION_CHAT_ADMIN_DELETE_HEAD__</th>
|
||||
</tr>
|
||||
';
|
||||
if ($stmt7->num_rows > 0){
|
||||
while ($stmt7->fetch()){
|
||||
$chatadm = $chatadm . '<tr><td>' . $author . '</td><td>' . $timestamp . ' GMT</td><td>' . $message . '<td><button onclick="deleteit(' . $idckochat . ')">__LOCALIZATION_CHAT_ADMIN_DELETE__</button></td></tr>' . "\n";
|
||||
}
|
||||
}
|
||||
$chatadm = $chatadm . '</table>';
|
||||
$localized = localize($chatadm);
|
||||
return $localized;
|
||||
}
|
||||
|
||||
//END OF FUNCTIONS
|
||||
|
||||
//CHAT AUTO PURGE
|
||||
if ( (!empty($_GET['delete'])&&!empty($_POST['delete'])) || (!empty($_GET['chat'])) || (!empty($_GET['onlychattable']))){
|
||||
$stmt20 = $mysqli->prepare("DELETE FROM Chat WHERE Timestamp < (CURRENT_TIMESTAMP - 86400);");
|
||||
$stmt20->execute();
|
||||
$stmt20->store_result();
|
||||
}
|
||||
|
||||
//API CALLS START
|
||||
if (!empty($_GET['setLang'])){
|
||||
$language = htmlspecialchars($_GET['setLang']);
|
||||
$lang_dir = "templates/locale";
|
||||
$langs = scandir($lang_dir);
|
||||
$lang_file = "";
|
||||
foreach($langs as $lang){
|
||||
if ($lang == $language . '.json'){
|
||||
$lang2 = str_replace(".json", "", $lang);
|
||||
$_SESSION['language'] = htmlspecialchars($lang2);
|
||||
}
|
||||
}
|
||||
exit();
|
||||
}
|
||||
|
||||
if (!empty($_GET['keepalive'])){
|
||||
$kod = htmlspecialchars($_SESSION['kod']);
|
||||
$stmt6 = $mysqli->prepare("Select ID FROM Streams WHERE Code = ? OR AdminCode = ?;");
|
||||
$stmt6->bind_param('ss', $kod, $kod);
|
||||
$stmt6->execute();
|
||||
$stmt6->store_result();
|
||||
if ($stmt6->num_rows > 0)
|
||||
{
|
||||
while($stmt6->fetch()){
|
||||
$stmt7 = $mysqli->prepare("UPDATE Connections SET TimestampPing=CURRENT_TIMESTAMP, TimePing = ? WHERE PHPSessID = ?;");
|
||||
$currsessid = session_id();
|
||||
$stmt7->bind_param("ss", date("Y.n.d H:i:s"), $currsessid);
|
||||
$stmt7->execute();
|
||||
$stmt7->store_result();
|
||||
}
|
||||
}
|
||||
exit();
|
||||
}
|
||||
|
||||
if (!empty($_GET['logout']))
|
||||
{
|
||||
$stmt3 = $mysqli->prepare("DELETE FROM Connections WHERE PHPSessID = ?;");
|
||||
$stmt3->bind_param("s", session_id());
|
||||
$currsessid = session_id();
|
||||
$stmt3->bind_param("s", $currsessid);
|
||||
$stmt3->execute();
|
||||
$stmt3->store_result();
|
||||
$_SESSION["kod"] = '';
|
||||
@@ -153,17 +168,14 @@ if (!empty($_GET['logout']))
|
||||
session_destroy();
|
||||
session_unset();
|
||||
setcookie("inicialy", "", 1);
|
||||
echo '
|
||||
<script>
|
||||
window.location.href = "index.php";
|
||||
</script>
|
||||
';
|
||||
echo file_get_contents("templates/redirect.html");
|
||||
exit();
|
||||
}
|
||||
|
||||
if (!empty($_GET['verify'])&&!empty($_POST['kod'])){
|
||||
if ($_GET['verify'] == 1){
|
||||
if(strlen($_POST['kod']) <= 20){
|
||||
$kod = $_POST['kod'];
|
||||
$kod = htmlspecialchars($_POST['kod']);
|
||||
$stmt5 = $mysqli->prepare("Select ID FROM Streams WHERE AdminCode = ?;");
|
||||
$stmt5->bind_param('s', $kod);
|
||||
$stmt5->execute();
|
||||
@@ -198,27 +210,11 @@ if (!empty($_GET['verify'])&&!empty($_POST['kod'])){
|
||||
}
|
||||
exit();
|
||||
}
|
||||
if (!empty($_GET['keepalive'])){
|
||||
$kod = $_SESSION['kod'];
|
||||
$stmt6 = $mysqli->prepare("Select ID FROM Streams WHERE Code = ? OR AdminCode = ?;");
|
||||
$stmt6->bind_param('ss', $kod, $kod);
|
||||
$stmt6->execute();
|
||||
$stmt6->store_result();
|
||||
if ($stmt6->num_rows > 0)
|
||||
{
|
||||
while($stmt6->fetch()){
|
||||
$stmt7 = $mysqli->prepare("UPDATE Connections SET TimestampPing=CURRENT_TIMESTAMP, TimePing = ? WHERE PHPSessID = ?;");
|
||||
$stmt7->bind_param("ss", date("Y.n.d H:i:s"), session_id());
|
||||
$stmt7->execute();
|
||||
$stmt7->store_result();
|
||||
}
|
||||
}
|
||||
exit();
|
||||
}
|
||||
|
||||
if (!empty($_GET['chat'])){
|
||||
if (!empty($_SESSION["kod"]) && !empty($_SESSION['listeners']) && !empty($_SESSION['inicialy']))
|
||||
{
|
||||
$kod = $_SESSION['kod'];
|
||||
$kod = htmlspecialchars($_SESSION['kod']);
|
||||
$stmt8 = $mysqli->prepare("Select ID FROM Streams WHERE Code = ? OR AdminCode = ?;");
|
||||
$stmt8->bind_param('ss', $kod, $kod);
|
||||
$stmt8->bind_result($idcko);
|
||||
@@ -229,7 +225,9 @@ if (!empty($_GET['chat'])){
|
||||
if (!empty($_GET['send'])&& !empty($_POST['text'])){
|
||||
if (strlen($_POST['text']) <= 1024){
|
||||
$stmt9 = $mysqli->prepare("INSERT INTO Chat (Author, Message, StreamID) VALUES (?, ?, ?);");
|
||||
$stmt9->bind_param('ssi', $_SESSION['inicialy'], $_POST['text'], $idcko);
|
||||
$messagetext = htmlspecialchars($_POST['text']);
|
||||
$inicialy = htmlspecialchars($_SESSION['inicialy']);
|
||||
$stmt9->bind_param('ssi', $inicialy, $messagetext, $idcko);
|
||||
$stmt9->execute();
|
||||
$stmt9->store_result();
|
||||
}
|
||||
@@ -246,7 +244,7 @@ if (!empty($_GET['chat'])){
|
||||
$data = $data . '• ' . $author . ' on ' . $tmstmp . ' GMT said: ' . $msg . "\n";
|
||||
}
|
||||
}
|
||||
echo $data;
|
||||
echo localize($data);
|
||||
|
||||
}
|
||||
}
|
||||
@@ -254,9 +252,11 @@ if (!empty($_GET['chat'])){
|
||||
}
|
||||
exit();
|
||||
}
|
||||
|
||||
//LOGIN HANDLING
|
||||
if (!empty($_POST['kod']) && !empty($_POST['listeners']) && !empty($_POST['ini'])){
|
||||
if(strlen($_POST['kod']) <= 20 && strlen($_POST['ini']) <= 100 && intval($_POST['listeners']) <= 999 && intval($_POST['listeners']) >= 1){
|
||||
$kod = $_POST['kod'];
|
||||
if(strlen($_POST['kod']) <= 20 && strlen($_POST['ini']) <= 100 && intval(htmlspecialchars($_POST['listeners'])) <= 999 && intval(htmlspecialchars($_POST['listeners'])) >= 1){
|
||||
$kod = htmlspecialchars($_POST['kod']);
|
||||
$stmt11 = $mysqli->prepare("Select ID FROM Streams WHERE Code = ? OR AdminCode = ?;");
|
||||
$stmt11->bind_param('ss', $kod, $kod);
|
||||
$stmt11->bind_result($idcko);
|
||||
@@ -265,23 +265,24 @@ if (!empty($_POST['kod']) && !empty($_POST['listeners']) && !empty($_POST['ini']
|
||||
if ($stmt11->num_rows > 0)
|
||||
{
|
||||
while ($stmt11->fetch()){
|
||||
$listeners = intval($_POST['listeners']);
|
||||
$inicialy = $_POST['ini'];
|
||||
$_SESSION["kod"] = $kod;
|
||||
$_SESSION['listeners'] = $listeners;
|
||||
$_SESSION['inicialy'] = $inicialy;
|
||||
$listeners = intval(htmlspecialchars($_POST['listeners']));
|
||||
$inicialy = htmlspecialchars($_POST['ini']);
|
||||
$_SESSION["kod"] = htmlspecialchars($kod);
|
||||
$_SESSION['listeners'] = htmlspecialchars($listeners);
|
||||
$_SESSION['inicialy'] = htmlspecialchars($inicialy);
|
||||
if (empty($_SESSION['language'])){
|
||||
$_SESSION['language'] = "en";
|
||||
}
|
||||
setcookie("inicialy", $inicialy);
|
||||
|
||||
$stmt12 = $mysqli->prepare("INSERT INTO Connections (PHPSessID, TimeConnect, TimestampPing, TimePing, Listeners, Inicialy, IP, StreamID) VALUES (?, ?, CURRENT_TIMESTAMP, ?, ?, ?, ?, ?);");
|
||||
$stmt12->bind_param('sssissi', session_id(), date("Y.n.d H:i:s"), date("Y.n.d H:i:s"), $listeners, $inicialy, $ipcka, $idcko);
|
||||
$currsessid = session_id();
|
||||
$stmt12->bind_param('sssissi', $currsessid, date("Y.n.d H:i:s"), date("Y.n.d H:i:s"), $listeners, $inicialy, $ipcka, $idcko);
|
||||
$stmt12->execute();
|
||||
$stmt12->store_result();
|
||||
|
||||
echo '
|
||||
<script>
|
||||
location.reload();
|
||||
</script>
|
||||
';
|
||||
echo file_get_contents("templates/reload.html");
|
||||
exit();
|
||||
}
|
||||
}
|
||||
else
|
||||
@@ -289,18 +290,110 @@ if (!empty($_POST['kod']) && !empty($_POST['listeners']) && !empty($_POST['ini']
|
||||
$_SESSION["kod"] = '';
|
||||
$_SESSION['listeners'] = '';
|
||||
$_SESSION['inicialy'] = '';
|
||||
echo '
|
||||
<script>
|
||||
location.reload();
|
||||
</script>
|
||||
';
|
||||
echo file_get_contents("templates/reload.html");
|
||||
session_destroy();
|
||||
exit();
|
||||
}
|
||||
}
|
||||
exit();
|
||||
}
|
||||
|
||||
//END API CALLS
|
||||
|
||||
|
||||
//START SPECIAL PAGES
|
||||
|
||||
if (!empty($_GET["adder"])){
|
||||
$datasendadder = "";
|
||||
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
|
||||
$heslo = trim($_POST['heslo']);
|
||||
if (password_verify($heslo, file_get_contents("secrets/AdminPwdHash"))) {
|
||||
$kod = htmlspecialchars($_POST['kod']);
|
||||
$url = htmlspecialchars($_POST['url']);
|
||||
$type = htmlspecialchars($_POST['type']);
|
||||
$adminpwd = htmlspecialchars($_POST['adminpwd']);
|
||||
if(!empty($kod) && !empty($url) && !empty($type) && !empty($adminpwd)){
|
||||
if(strlen($kod) <= 20 && strlen($url) <= 256 && strlen($type) <= 20 && strlen($adminpwd) <= 20){
|
||||
$stmt2 = $mysqli->prepare("SELECT ID FROM Streams WHERE Code=? OR AdminCode=?");
|
||||
$stmt2->bind_param('ss', $kod, $adminpwd);
|
||||
$stmt2->execute();
|
||||
$stmt2->store_result();
|
||||
if ($stmt2->num_rows > 0) {
|
||||
$datasendadder = $datasendadder . "__LOCALIZATION_ADDER_EXISTS_LABEL__";
|
||||
} else {
|
||||
|
||||
$stmt = $mysqli->prepare("INSERT INTO Streams (URL, Type, AdminCode, Code) VALUES (?, ?, ?, ?);");
|
||||
$stmt->bind_param('ssss', $url, $type, $adminpwd, $kod);
|
||||
$stmt->execute();
|
||||
$stmt->store_result();
|
||||
$datasendadder = $datasendadder . "__LOCALIZATION_ADDER_SUCCESS_LABEL__";
|
||||
}
|
||||
}
|
||||
}
|
||||
} else {
|
||||
$datasendadder = $datasendadder . "__LOCALIZATION_ADDER_PASSWORD_LABEL__";
|
||||
}
|
||||
}
|
||||
$datasendadder = $datasendadder . file_get_contents("templates/streamadd.html");
|
||||
echo localize($datasendadder);
|
||||
exit();
|
||||
}
|
||||
|
||||
if (!empty($_GET["admin"])){
|
||||
if (!empty($_SESSION["kod"]) && !empty($_SESSION['listeners']) && !empty($_SESSION["inicialy"]))
|
||||
{
|
||||
$kod = htmlspecialchars($_SESSION['kod']);
|
||||
$stmt = $mysqli->prepare("Select ID, URL, Type, Code FROM Streams WHERE AdminCode = ?;");
|
||||
$stmt->bind_param('s', $kod);
|
||||
$stmt->bind_result($idcko, $url, $type, $code);
|
||||
$stmt->execute();
|
||||
$stmt->store_result();
|
||||
if ($stmt->num_rows > 0){
|
||||
while ($stmt->fetch())
|
||||
{
|
||||
if (!empty($_GET['deletechatmsg'])&&!empty($_POST['deletechatmsg'])){
|
||||
if(htmlspecialchars($_POST['deletechatmsg']) == "*"){
|
||||
$stmt5 = $mysqli->prepare("DELETE from Chat WHERE StreamID = ?;");
|
||||
$stmt5->bind_param('i', $idcko);
|
||||
$stmt5->execute();
|
||||
$stmt5->store_result();
|
||||
}
|
||||
else{
|
||||
$deleteid = intval(htmlspecialchars($_POST['deletechatmsg']));
|
||||
if ($deleteid >= 0){
|
||||
$stmt6 = $mysqli->prepare("DELETE from Chat WHERE StreamID = ? AND ID = ?;");
|
||||
$stmt6->bind_param('ii', $idcko, $deleteid);
|
||||
$stmt6->execute();
|
||||
$stmt6->store_result();
|
||||
}
|
||||
}
|
||||
}
|
||||
if (!empty($_GET['admin_dash_api'])){
|
||||
$connadm = connectionAdminTable($idcko);
|
||||
$chatadm = chatAdminTable($idcko);
|
||||
$myobjcko = array("connadm"=>$connadm, "chatadm"=>$chatadm);
|
||||
echo json_encode($myobjcko);
|
||||
}
|
||||
else{
|
||||
$dats = file_get_contents("templates/admin.html");
|
||||
$dats = str_replace('__VLOZ_URL_AUDIA__', $config->url , $dats);
|
||||
$dats = str_replace('__VLOZ_TYP_AUDIA__', $config->type , $dats);
|
||||
echo localize($dats);
|
||||
}
|
||||
}
|
||||
}
|
||||
else{
|
||||
echo file_get_contents("templates/redirect.html");
|
||||
exit();
|
||||
}
|
||||
exit();
|
||||
}
|
||||
}
|
||||
//END SPECIAL PAGES
|
||||
|
||||
//MAIN PLAYER
|
||||
if (!empty($_SESSION['listeners']) && !empty($_SESSION['inicialy']) && !empty($_SESSION['kod'])){
|
||||
$kod = $_SESSION['kod'];
|
||||
$kod = htmlspecialchars($_SESSION['kod']);
|
||||
$stmt13 = $mysqli->prepare("Select ID, URL, Type, AdminCode, Code FROM Streams WHERE Code = ? OR AdminCode = ?;");
|
||||
$stmt13->bind_param('ss', $kod, $kod);
|
||||
$stmt13->bind_result($idcko, $url, $type, $admincode, $code);
|
||||
@@ -313,18 +406,17 @@ if (!empty($_SESSION['listeners']) && !empty($_SESSION['inicialy']) && !empty($_
|
||||
$player = file_get_contents("templates/player.html");
|
||||
$player = str_replace('__VLOZ_URL_AUDIA__', $url , $player);
|
||||
$player = str_replace('__VLOZ_TYP_AUDIA__', $type , $player);
|
||||
$player = str_replace('__VLOZ_ROK__', $year, $player);
|
||||
if($_SESSION["kod"] == $admincode){
|
||||
$player = str_replace('__VLOZ_ADMIN_LINK__', '<a href="index.php?admin=1">Administrácia</a>', $player);
|
||||
$player = str_replace('__VLOZ_ADMIN_LINK__', '<a href="index.php?admin=1">__LOCALIZATION_ADMIN_LINK__</a>', $player);
|
||||
}
|
||||
else{
|
||||
$player = str_replace('__VLOZ_ADMIN_LINK__', "" , $player);
|
||||
}
|
||||
echo($player);
|
||||
echo localize($player);
|
||||
}
|
||||
}
|
||||
}
|
||||
else{
|
||||
echo str_replace("__VLOZ_ROK__", date("Y"), file_get_contents("templates/login.html"));
|
||||
echo localize(file_get_contents("templates/login.html"));
|
||||
}
|
||||
?>
|
Reference in New Issue
Block a user