Files
awo-hamburg-intranet/module/youtube/edit_youtube.inc.php
2026-02-17 14:56:23 +01:00

174 lines
6.1 KiB
PHP

<?php
$messages = array();
$error = FALSE;
if (isset($custom_action)) {
$action = $custom_action;
} else {
$action = $_REQUEST["action"];
}
switch ($action) {
case 'edit_youtube':
edit_youtube();
break;
case 'delete_youtube':
delete_youtube();
break;
case 'new_youtube':
require_once("edit_youtube_cardform.inc.php");
break;
case 'save_youtube':
save_youtube();
break;
default:
require_once("edit_youtube_listform.inc.php");
break;
}
function edit_youtube( $_id = "", $messages = array() ) {
if ((int)$_id > 0) {
$input_id = $_id;
} else {
$input_id = $_REQUEST["input_id"];
}
if ($input_id <> '') {
$query = "SELECT * FROM youtube_header WHERE id = '" . $input_id . "' LIMIT 1";
$result = @mysqli_query($GLOBALS['mysql_con'], $query);
if (@mysqli_num_rows($result) == 1) {
$input_youtube = @mysqli_fetch_array($result);
require_once("edit_youtube_cardform.inc.php");
}
} else {
$input_youtube = array();
require_once("edit_youtube_cardform.inc.php");
}
}
function delete_youtube() {
if ($_REQUEST["input_id"] <> '') {
$query = "DELETE FROM youtube_header WHERE id = '" . $_REQUEST["input_id"] . "' LIMIT 1";
@mysqli_query($GLOBALS['mysql_con'], $query);
// zuordnung von Seiten loeschen
$query = "DELETE FROM main_page_link WHERE main_sitepart_id = 10 AND main_sitepart_header_id = '" . $_REQUEST["input_id"]."'";
@mysqli_query($GLOBALS['mysql_con'], $query);
update_sitepart_changes(10, $_REQUEST["input_id"], TRUE);
}
require_once("edit_youtube_listform.inc.php");
}
function save_youtube() {
$translation = \DynCom\mysyde\common\classes\Registry::get("translation");
$input_id = "";
$youtube_id = "";
$input_all_languages = ($_POST["input_all_languages"] == "on") ? 1 : 0;
// id des videos rauslesen
preg_match(
'/[\\?\\&]v=([^\\?\\&]+)/',
$_REQUEST["input_url"],
$matches
);
if (isset($matches[1])) {
$youtube_id = $matches[1];
}
if ($_REQUEST["input_id"] <> '') {
$query = "UPDATE youtube_header SET
description = '" . mysqli_real_escape_string($GLOBALS['mysql_con'], $_REQUEST["input_description"]) . "',
modified_date = " . time() . ",
modified_user = " . (int)$GLOBALS["admin_user"]['id'] . ",
width = '" . (int)$_REQUEST["input_width"] . "',
height = '" . (int)$_REQUEST["input_height"] . "',
url = '" . mysqli_real_escape_string($GLOBALS['mysql_con'], $_REQUEST["input_url"]) . "',
youtube_id = '" . mysqli_real_escape_string($GLOBALS['mysql_con'], $youtube_id) . "',
all_languages = " . $input_all_languages . "
WHERE id = '" . $_REQUEST["input_id"] . "'
LIMIT 1";
$inserted = FALSE;
$input_id = $_REQUEST["input_id"];
} else {
$query = "INSERT INTO youtube_header
(main_language_id, description, modified_date, modified_user, width, height, url, youtube_id, all_languages)
VALUES (
'" . $GLOBALS["language"]['id'] . "',
'" . mysqli_real_escape_string($GLOBALS['mysql_con'], $_REQUEST['input_description']) . "',
" . time() . ",
" . (int)$GLOBALS["admin_user"]['id'] . ",
" . (int)$_REQUEST["input_width"] . ",
" . (int)$_REQUEST["input_height"] . ",
'" . mysqli_real_escape_string($GLOBALS['mysql_con'], $_REQUEST["input_url"]) . "',
'" . mysqli_real_escape_string($GLOBALS['mysql_con'], $youtube_id) . "',
" . $input_all_languages . "
)";
$inserted = TRUE;
}
if (($_REQUEST["input_description"] == '')) {
$messages[] = "<div class=\"errorbox\">" . $translation->get("error_description") . "</div>\n";
$error = TRUE;
}
if (($_REQUEST["input_url"] == '')) {
$messages[] = "<div class=\"errorbox\">" . $translation->get("youtube_error1") . "</div>\n";
$error = TRUE;
} elseif ($youtube_id == "") {
$messages[] = "<div class=\"errorbox\">" . $translation->get("youtube_error2") . "</div>\n";
$error = TRUE;
}
if (!$error) {
@mysqli_query($GLOBALS['mysql_con'], $query);
if ($inserted == TRUE) {
$input_id = mysqli_insert_id($GLOBALS['mysql_con']);
$messages[] = '<div class="successbox">' . $translation->get("youtube_msg_success1") . '</div>';
} else {
$messages[] = '<div class="successbox">' . $translation->get("youtube_msg_success2") . '</div>';
}
update_sitepart_changes(10, $input_id);
if (is_page_edit()) {
header('EDIT_ERROR: 1'); // verhindern, dass overlay geschlossen wird
if (line_already_exists($_REQUEST["input_page_id"], 10, $input_id) === FALSE) {
assoc_sitepart(10, $input_id, FALSE);
}
if ($_REQUEST['force_close'] == 1) {
edit_content_page();
return;
}
edit_youtube($input_id, $messages);
} elseif (is_component_edit()) {
header('EDIT_ERROR: 1'); // verhindern, dass overlay geschlossen wird
if (line_already_exists($_REQUEST["input_component_id"], 10, $input_id) === FALSE) {
assoc_sitepart(10, $input_id, FALSE);
}
if ($_REQUEST['force_close'] == 1) {
edit_component("", $messages);
return;
}
edit_youtube($input_id, $messages);
} else {
edit_youtube($input_id, $messages);
}
} else {
header('EDIT_ERROR: 1');
$input_youtube["description"] = $_REQUEST["input_description"];
$input_youtube["width"] = $_REQUEST["input_width"];
$input_youtube["height"] = $_REQUEST["input_height"];
$input_youtube["url"] = $_REQUEST["input_url"];
require_once("edit_youtube_cardform.inc.php");
}
}