ACC SHELL
<?php
$make = select( "make", "view" );
/*
* Vypsání seznamu aktualit s možností jejich zobrazení, editace či smazání. Také je zde možnost
* přidání nové aktuality
*/
if ( $make == "view" ) {
/*
* Vypsání zprávy o úspěčně dokončené akci - přidání, smazání či editování aktuality.
* Probíhá zde také akce mazání aktuality (kůli výpisu názvu aktuality)
*/
$do = select( "do", "empty" );
if ( $do != "empty" )
{
$title = "";
$id = select( "id", -1 );
$find = FALSE;
/*
* Získání názvu aktuality - pokud není v databázi nalezen, nepřiřadí se do proměné $title nic,
* a název aktuality se v tom případě nevypíše.
*/
if ( $id != -1 )
{
$query = "SELECT title FROM `newsreel` WHERE ID = $id";
$result = @mysql_query( $query, $dbc );
if ( @mysql_num_rows( $result ) > 0 )
{
$row = mysql_fetch_row( $result );
$title = " <strong>\"". $row[0]. "\"</strong>";
$find = TRUE;
}
}
if ( $do == "saved" )
{
message( "Aktualita$title byla úspěčně uložena" );
}
elseif ( $do == "updated" )
{
message( "Aktualita$title byla úpěšně editována" );
}
elseif ( $do == "deleted" )
{
/*
* Pokud byla aktualita nalezena, je smazána, pokud nebyla, není provedeno nic.
*/
if ( $find ) {
$query = "DELETE FROM `newsreel` WHERE ID = $id";
$result = mysql_query( $query, $dbc );
if ( $result )
{
message( "Aktualita$title byla úpěšně smazána" );
}
else
{
message( "system_error", TRUE );
write_log( "\nSoubor: ". __FILE__. "\nŘádek : ". __LINE__. "\nChyba : ". mysql_error() );
}
}
}
}
$query = "SELECT * FROM `newsreel` ORDER BY date DESC";
$result = mysql_query( $query, $dbc );
$table = array();
$i = -1;
if ( mysql_num_rows( $result ) > 0 )
{
while ( $row = mysql_fetch_row( $result ) )
{
$i++;
$table[ $i ][ 'id' ] = $row[ 0 ];
$table[ $i ][ 'title' ] = $row[ 1 ];
$table[ $i ][ 'display' ] = $row[ 4 ];
}
$smarty->assign( 'table', $table );
}
$smarty->display( 'admin/actuals_view.tpl' );
}
/*
* Vypsání obsahu aktuality bez možnosti přímé editace, ale s možností jejího smazání. Zde je
* aktualita "read-only".
*/
elseif ( $make == "viewact" )
{
$id = select( "id", -1 );
if ( $id != -1 ) {
$query = "SELECT * FROM `newsreel` WHERE ID = $id";
$result = @mysql_query( $query, $dbc );
if ( @mysql_num_rows( $result ) > 0 ) {
$row = mysql_fetch_row( $result );
$smarty->assign( "ID", $row[ 0 ] );
$smarty->assign( "title", $row[ 1 ] );
$smarty->assign( "content", $row[ 2 ] );
$smarty->display( "admin/actuals_qview.tpl" );
} else {
message( "id_not_exist", TRUE );
}
} else {
message( "Nebylo zadáno ID aktuality kterou chcete zobrazit" );
}
}
/*
* Přidání nové aktuality.
*/
elseif ( $make == "add" )
{
/*
* Zpracování odeslaného formuláře.
*/
if ( isset( $_POST[ "submit" ] ) )
{
$correct = TRUE;
$message = "";
if ( empty( $_POST[ "title" ] ) ) {
$correct = FALSE;
$message .= "<p>Nebyl zadán nadpis aktuality!</p>\n";
}
if ( empty( $_POST[ "content" ] ) ) {
$correct = FALSE;
$message .= "<p>Nebyl zadán obsah aktuality!</p>\n";
}
if ( $correct ) {
$title = htmlspecialchars( $_POST[ "title" ] );
$content = $_POST[ "content" ];
$show = ( $_POST[ "show"] == "on" )?1:0;
$query = "INSERT INTO `newsreel` (ID, title, content, date, display) VALUES (0, '$title', '$content', NOW(), $show)";
$result = @mysql_query( $query, $dbc );
if ( $result) {
$res = @mysql_query( "SELECT ID FROM `newsreel` ORDER BY date DESC LIMIT 0,1", $dbc );
$row = mysql_fetch_array( $res );
header ( "Location: index.php?action=actuals&make=view&do=saved&id=$row[0]" );
} else {
echo "chyba:". mysql_error();
}
} else {
echo "\n". $message. "<p>Zkuste to znovu..</p>\n";
}
}
$smarty->assign( "title", $title );
$smarty->assign( "content", $_POST[ "content" ] );
/*
* Pokud byl přepínaš už zapnut, a nebo pokud je stránka načtená poprvé tak přepínač
* zapnout.
*/
if ( $_POST[ "show"] == "on" || !isset( $_POST[ "submit" ] ) )
{
$smarty->assign( 'show', 'on' );
}
$smarty->display( "admin/actuals_add.tpl" );
}
elseif ( $make == "edit" )
{
$id = select( "id", -1 );
if ( isset( $_POST[ "submit" ] ) )
{
$correct = TRUE;
$message = "";
if ( empty( $_POST[ "title" ] ) )
{
$correct = FALSE;
$message .= "<p>Nebyl zadán nadpis aktuality!</p>\n";
}
if ( empty( $_POST[ "content" ] ) )
{
$correct = FALSE;
$message .= "<p>Nebyl zadán obsah aktuality!</p>\n";
}
if ( $correct )
{
$title = htmlspecialchars( $_POST[ "title" ] );
$content = $_POST[ "content" ];
$show = ( $_POST[ "show"] == "on" )?1:0;
$query = "UPDATE `newsreel` SET `title` = '$title', `content` = '$content', `display` = $show WHERE ID = $id";
$result = @mysql_query( $query, $dbc );
if ( $result)
{
header ( "Location: index.php?action=actuals&make=view&do=updated&id=$id" );
}
else
{
message( "system_error", TRUE );
write_log( "\nSoubor: ". __FILE__. "\nŘádek : ". __LINE__. "\nChyba : ". mysql_error() );
}
}
else
{
echo "\n". $message. "<p>Zkuste to znovu..</p>\n";
}
}
if ( $id != -1 )
{
$query = "SELECT * FROM `newsreel` WHERE ID = $id";
$result = mysql_query( $query, $dbc );
if ( mysql_num_rows( $result ) > 0 ) {
$row = mysql_fetch_row( $result );
if ( !isset( $_POST[ "submit" ] ) )
{
$title = $row[ 1 ];
$content = $row[ 2 ];
}
else
{
$title = $_POST[ "title" ];
$content = $_POST[ "content" ];
}
$smarty->assign( 'title', $title );
$smarty->assign( 'content', $content );
if ( $_POST[ "show"] == "on" || ( !isset( $_POST[ "submit" ] ) && $row[ 4 ] == 1 ) ) {
$smarty->assign( 'show', 'on' );
}
$smarty->display( "admin/actuals_add.tpl" );
}
else
{
message( "id_not_exist", TRUE );
}
}
else
{
message( "Nebylo zadáno ID aktuality kterou chcete editovat." );
}
}
elseif ( $make == "del" )
{
$id = select( "id", -1 );
if ( $id != -1 )
{
$query = "SELECT * FROM `newsreel` WHERE ID = $id";
$result = mysql_query( $query, $dbc );
if ( mysql_num_rows( $result ) > 0 )
{
$row = mysql_fetch_array( $result, $dbc );
$smarty->assign( 'ID', $row[ 0 ] );
$smarty->assign( 'title', $row[ 1 ] );
$smarty->display( 'admin/actuals_del.tpl' );
}
else
{
message( "id_not_exist", TRUE );
}
}
else
{
message( "Nebylo zadáno ID aktuality kterou chcete smazat." );
}
}
elseif ( $make == "visible" )
{
$id = select( "id", -1 );
$do = select( "do", "show" );
if ( $id != -1 )
{
$query = "SELECT ID FROM `newsreel` WHERE ID = $id";
$result = @mysql_query( $query, $dbc );
if ( @mysql_num_rows( $result ) > 0 )
{
if ( $do == "hide" )
{
$show = 0;
}
else
{
$show = 1;
}
$query = "UPDATE `newsreel` SET `display` = $show WHERE ID = $id";
$result = @mysql_query( $query, $dbc );
if ( $result )
{
header ( "Location: index.php?action=actuals&make=view&do=updated&id=$id" );
}
else
{
message( "system_error", TRUE );
write_log( "\nSoubor: ". __FILE__. "\nŘádek : ". __LINE__. "\nChyba : ". mysql_error() );
}
}
else
{
message( "id_not_exist", TRUE );
}
}
else
{
if ( $do == "hide" )
{
$act = "zneviditelnit";
}
else
{
$act = "zviditelnit";
}
message( "Nebylo zadáno ID aktuality kterou chcete $act." );
}
}
else
{
message( "action_not_exist", TRUE );
}
?>
ACC SHELL 2018