ACC SHELL

Path : /srv/www/vhosts/amk/admin/
File Upload :
Current File : /srv/www/vhosts/amk/admin/index.php

<?php

require("consts.php");

require("graphics.php");

require("common.php");

require("admin.php");


init_db();



$action = 0;



if(isset($_POST["action"]))

	$action = $_POST["action"];



if(isset($_GET["action"]))

	$action = $_GET["action"];



// handle login separately	

//echo "A";

if($action == STATE_LOGIN_SCREEN)

{

	admin_header();

	admin_display_login_screen();

	admin_footer();
	
	//echo "AB";

	die();

}

//echo "B";

if($action == STATE_LOGIN)

{

	// check if both e-mail and password have been passed

	if(isset($_POST["email"]) && isset($_POST["password"]))

	{

		if(is_login_valid($_POST["email"], $_POST["password"]))

		{				

			session_start();

			

			$_SESSION["email"] = $_POST["email"];

			$_SESSION["logged_in"] = true;

			$_SESSION["user_id"] = get_user_id($_POST["email"]);

			

			regenerate_filename();

							

			admin_header();

			admin_display_menu();

		}

		else

		{

			admin_header();

			admin_msgbox("Neplatné uživatelské jméno nebo heslo.");

		}

	}

	

	admin_footer();

	die();

}



// process normal pages

session_start();

admin_header();

is_session_valid();

admin_display_debug();



switch($action)

{

	case STATE_LOGOUT:		

		logout();

		session_unset();		

		session_destroy();



		admin_msgbox("Byli jste úspěšně odhlášeni.");

		

		break;

	case STATE_ADD_NEWS_INIT:

		admin_unset_news();

		

		// create a new database entry

		$id = add_news(

			"",		// headline

			0,		// published

			"",		// perex

			"",		// text

			0,		// category id

			$_SESSION["user_id"],	// user id

			0,		// has perex image

			"none"	// image position

		);

					

		// and stroed it's db id in the database

		$_SESSION["news_id"] = $id;	

		

		// displat menu and upload form

		admin_display_menu();

		admin_display_pic_upload();

		

		break;

	case STATE_ADD_NEWS_FILESELECT:

		admin_display_menu();

		admin_display_pic_upload();

		

		// are we editing something atm?

		if(isset($_SESSION["news_id"]))

			break;

			

		

						

		break;

	case STATE_ADD_NEWS_CROP:

		$has_image = admin_upload_pic();

		

		admin_display_menu();

		

		if($has_image)

		{

			set_has_image($_SESSION["news_id"]);

			

			// tell the cropper script we don't want it to keep the aspect ratio

			echo "<script type=\"text/javascript\">";

			echo "want_aspect_ratio = false;";

			echo "</script>";

		

			display_cropper("Výběr oříznutí", "Oříznout", "../gfx/temp/preview" . get_filename(), STATE_ADD_NEWS_CHOOSE_PEREX );	

		}

		else

		{

			set_has_image($_SESSION["news_id"], 0);

			admin_display_warning("Nezvolili jste žádný soubor - bude použit přednastavený obrázek pro zvolenou kategorii.");

			

			echo "<div class=\"gray_box\">";

			echo "<h2>Možnosti</h2>";

			echo "<a href=\"index.php?action=" . STATE_ADD_NEWS_FILESELECT . "\">Vybrat obrázek</a> | ";

			echo "<a href=\"index.php?action=" . STATE_ADD_NEWS_ARTICLE ."\">Psát novinku</a>";

			echo "</div>";	

			echo "</div>";	

		}

		

		

		

		

			

		break;

	case STATE_ADD_NEWS_CHOOSE_PEREX:

		if(

			!isset($_POST["from_x"]) ||

			!isset($_POST["from_y"]) ||

			!isset($_POST["to_x"]) ||

			!isset($_POST["to_y"])

		)

		{

			admin_msgbox("Chyba při zpracování parametrů pro oříznutí obrázku");

			die("1");

		}

		else

		{

			//echo "prislo " . $_POST["from_x"] . " " . $_POST["from_y"] . " " . $_POST["to_x"] . " " . $_POST["to_y"];

			crop_image($_POST["from_x"], $_POST["from_y"], $_POST["to_x"], $_POST["to_y"]);

		}

				

		admin_display_menu();

		echo "<script type=\"text/javascript\">";

		echo "want_aspect_ratio = true;";

		echo "</script>";

		

		display_cropper("Výběr perexu", "Vytvořit perex", "../gfx/temp/preview" . get_filename(), STATE_ADD_NEWS_GFX_PREVIEW);

		

		break;

	case STATE_ADD_NEWS_GFX_PREVIEW:

		if(

			!isset($_POST["from_x"]) ||

			!isset($_POST["from_y"]) ||

			!isset($_POST["to_x"]) ||

			!isset($_POST["to_y"])

		)

		{

			admin_msgbox("Chyba při zpracování parametrů pro výběr perexu");

		}

		else

		{

			create_perex($_POST["from_x"], $_POST["from_y"], $_POST["to_x"], $_POST["to_y"]);

		}

		

		admin_display_menu();

		admin_display_gfx_preview();

		

		break;

	case STATE_EDIT:

		if(!isset($_POST["news_id"]))

		{

			admin_msgbox("Nepodařilo se předat identifikaci článku k editaci");

			break;

		}			

		

		if(isset($_SESSION["news_id"]))

		{

			admin_clean_up();

			admin_unset_news();

		}

		

		$_SESSION["news_id"] = $_POST["news_id"];

		admin_unpublish_news($_SESSION["news_id"]);	

				

		admin_regenerate_orig_and_preview_files();

		

		admin_display_menu();

		admin_display_gfx_preview();	

		

		

		break;

	case STATE_ADD_NEWS_ARTICLE:

		

		admin_display_menu();

		admin_display_add_news();

		

		break;

	case STATE_ADD_NEWS_PREVIEW:

		

	

		update_news(

			$_SESSION["news_id"],

			$_POST["headline"],

			0,

			$_POST["perex"],

			$_POST["text"],

			$_POST["category_id"],

			$_POST["user_id"],

			$_POST["perex_position"] == "none" ? 0 : 1,

			$_POST["perex_position"]

		);

		

		

		

		admin_display_menu();

		admin_display_preview();

		

		break;

	case STATE_ADD_NEWS_PUBLISH:

		

		

		if(!isset($_SESSION["news_id"]))

		{

			admin_display_menu();

			admin_msgbox("Pravděpodobně se snažíte znovu publikovat již jednou publikovaný článek");

		}

		else

		{

			admin_publish_news();

			

			// unset the news id variable, we might wanna add a new news item later in

			// the session

			unset($_SESSION["news_id"]);

			

			admin_display_menu();

			admin_msgbox("Článek byl úspěšně publikován");

		}

	

		break;

	case STATE_CHOOSE_FOR_EDITATION:

		admin_display_menu();

		

		admin_news_list();

		break;

	case STATE_LIST_JOBS:
		admin_display_menu();
		admin_jobs_list();
		break;
	case STATE_DISPLAY_ADD_JOB:
		admin_display_menu();
		admin_display_add_job();
		
		break;
	case STATE_ADD_JOB:
		/*
		echo czech_date_to_date("2.12.2009", false). "; ";
		echo czech_date_to_date("2.1.2009", false). "; ";
		echo czech_date_to_date("02.12.2009", false). "; ";
		echo czech_date_to_date("02.02.2009", false). "; ";
		
		echo czech_date_to_date("  2 . 12  . 2009", true). "; ";
		echo czech_date_to_date(" 2. 1. 2009", true). "; ";
		echo czech_date_to_date("  02.  12. 2009  ", true). "; ";
		echo czech_date_to_date("  02.    02. 2009  ", true). "; ";*/
	
		add_job(
			$_POST["job_name"],
			$_POST["job_description"],
			czech_date_to_date($_POST["job_date_from"], true),
			czech_date_to_date($_POST["job_date_to"], false),
			1
		);
		
		echo "from: " . czech_date_to_date($_POST["job_date_from"], true);
		echo "to: " . czech_date_to_date($_POST["job_date_to"], false);
	
		admin_display_menu();
		admin_msgbox("Brigáda byla úspěšně přidána");
		admin_jobs_list();
		break;

	case STATE_DELETE_JOB:
		if(delete_job(
			$_POST["job_id"]
		))
		{
			admin_display_menu();
			admin_msgbox("Brigáda byla úspěšně smazána");
			admin_jobs_list();
		}
		else
		{
			admin_display_menu();
			admin_msgbox("Brigádu nelze smazat, neplatné id.");
		}
		
		break;
	case STATE_DISPLAY_EDIT_JOB:
		admin_display_menu();
		admin_display_edit_job($_POST["job_id"]);
		
		break;
	case STATE_EDIT_JOB:
		update_job(
			$_POST["job_id"],
			$_POST["job_name"],
			$_POST["job_description"],
			czech_date_to_date($_POST["job_date_from"], true),
			czech_date_to_date($_POST["job_date_to"], false));
		/*
		echo $_POST["job_id"] . " ";
		echo $_POST["job_name"] . " ";
		echo $_POST["job_description"] . " ";
		echo $_POST["job_date_from"] . " ";
		echo $_POST["job_date_to"] . " ";*/
		
		admin_display_menu();
		admin_msgbox("Brigáda byla upravena");
		
		admin_jobs_list();
		
		break;
	case STATE_MAKE_JOB_VISIBLE:
		update_visibility($_POST["job_id"], true);	
		
		admin_display_menu();
		admin_jobs_list();
	
		break;
	case STATE_MAKE_JOB_HIDDEN:
		update_visibility($_POST["job_id"], false);
		
		admin_display_menu();
		admin_jobs_list();
	
		break;
	case STATE_LIST_CARTS:
		admin_display_menu();
		admin_delete_old_cart();
		admin_display_carts(-1);
		break;
	case STATE_ADD_CARTS:	
		$is_private = isset($_POST["cart_private"]);

		admin_add_carts(
			$_POST["cart_date"],
			$_POST["cart_tfrom"],
			$_POST["cart_tto"],
			$is_private,
			$_POST["cart_title"]);
			
		admin_display_menu();
		admin_display_carts(-1);	
		break;
	case STATE_DELETE_CARTS:
		admin_delete_cart($_POST["cart_id"]);
		admin_display_menu();
		admin_display_carts(-1);
		break;
	case STATE_EDIT_CARTS:		
		$is_private = isset($_POST["cart_private"]);
		
		admin_update_cart($_POST["cart_id"], $_POST["cart_date"], $_POST["cart_tfrom"], $_POST["cart_tto"], $is_private, $_POST["cart_title"]);
		admin_display_menu();
		admin_display_carts($_POST["cart_id"]);
		break;
		
	default:

		admin_msgbox("Interní chyba systému (" . $action . ")");

}



admin_footer();

close_db();

		

?>

ACC SHELL 2018