ACC SHELL
<?php
class menuSpoluprac extends menu{
//vraci id stranky na kterou menu o danem id_m odkazuje
function select_one_page($id_m){
$query = "SELECT page FROM ".DBPREFIX."menu_spoluprac WHERE id = '$id_m'";
$sent = mysql_query($query);
$data = mysql_fetch_object($sent);
return $data->page;
}
//naplni privatni vlastnosti tridy informacemi o vsech hlavnich menu neukazujicich na uvodni stranku
function select_for_parent(){
$query = "SELECT id, name FROM ".DBPREFIX."menu_spoluprac WHERE parent = '0' AND url != '2' ORDER BY pos ASC";
$sent = mysql_query($query);
while($data = mysql_fetch_object($sent)){
$this->menu_id[] = $data->id;
$this->menu_name[] = stripslashes($data->name);
}
}
//prida nove menu
//do vlastnosti $msg tridy prida hlaseni o uspesnosti akce
function add($name, $url, $page, $parent){
if(!empty($name) && !empty($url)){//je-li vyplnen nazev menu a jeji url
$name = addslashes($name);
//nalezne pocet nazvu menu o danem $name
$query = "SELECT COUNT(*) AS pocet FROM ".DBPREFIX."menu_spoluprac WHERE name = '$name'";
$sent = mysql_query($query);
$data = mysql_fetch_object($sent);
if($data->pocet == 0){//neexistuje-li jeste menu s timto nazvem
//najde maximalni poradi pro dany parent
$query = "SELECT MAX(pos) AS max_pos FROM ".DBPREFIX."menu_spoluprac WHERE parent = '$parent'";
$sent = mysql_query($query);
$data = mysql_fetch_object($sent);
$pos = $data->max_pos + 1;
if(empty($page)) $page = 0;//neni-li vyplnena polozka s nazvem stranky
//vlozeni menu do databaze
$query = "INSERT INTO ".DBPREFIX."menu_spoluprac (name,url,page,parent,pos) VALUES('$name','$url','$page','$parent','$pos')";
if(mysql_query($query)){//uspesne vlozeni
$this->msg = MENU_CREATED;
}
else{//neuspesne vlozeni do databaze
$this->msg = SQL_ERROR.mysql_error();
}
}
else{//existuje-li menu stimto nazvem
$this->msg = MENU_NAME_EXIST;
}
}
else{
$this->msg = FORM_MENU_EMPTY;
}
}
function show($page,$url_id){
//nalezeni informaci o vsech hlavnich menu serazenych podle pos
$query = "SELECT id, name, view, pos, url FROM ".DBPREFIX."menu_spoluprac WHERE parent = 0 ORDER BY pos ASC";
$sent = mysql_query($query);
echo '<div>'."\n";
while($data = mysql_fetch_object($sent)){//vypise html kod pro kazde menu
echo '<div class="menu_list_page">'.
'<span class="m_name">'.//vypise nazev menu s odkazem na jeho editaci
'<a href="default.php?page=menuSpoluprac/edit&id_m='.$data->id.'">'.stripslashes($data->name).'</a>'.
'</span>'.
($data->url == '1' ?//jde-li o statickou stranku
'<span class="m_page">'.//vykresli obrzek pro editaci strnaky kam menu ukazuje
'<a href="default.php?page=menuSpoluprac/edit_page&id_m='.$data->id.'"">'.
'<img src="img/menu_page.jpg" border="0" alt="Změnit stránku" title="Změnit stránku" />'.
'</a>'.
'</span>'
: '').//nejde-li o statickou stranku
'<span>'.//obrazek sipky s odkazem na posunuti menu o jednu uroven vys
'<a href="default.php?page='.$page.(!empty($url_id) ? '&url_id='.$url_id : '').'&b=up&id_m='.$data->id.'">'.
'<img src="img/up.gif" alt="up" border="0" />'.
'</a>'.
'</span>'.
'<span>'.//obrazek sipky s odkazem na posunuti menu o jednu uroven nize
'<a href="default.php?page='.$page.(!empty($url_id) ? '&url_id='.$url_id : '').'&b=down&id_m='.$data->id.'">'.
'<img src="img/down.gif" alt="down" border="0"/>'.
'</a>'.
'</span>'.
'<span>'.//obrazek s odkazem na zmenu viditelnosti menu
'<a class="view" href="default.php?page='.$page.(!empty($url_id) ? '&url_id='.$url_id : '').'&b=view&id_m='.$data->id.'">'.
($data->view == 1 ? //volba obrzku(skryt x zobrazit)
'<img src="img/show.png" alt="skryt" border="0" title="Skryt" />'
:
'<img src="img/hidden.png" title="Zobrazit" alt="zobrazit" border="0" />'
).
'</a>'.
'</span>'.
'<span>'.//obrazek s odkzem na smazani menu
'<a class="delete" href="default.php?page='.$page.(!empty($url_id) ? '&url_id='.$url_id : '').'&b=delete&id_m='.$data->id.'">'.
'<img src="img/delete.jpg" alt="Smazat" border="0" title="Smazat" />'.
'</a>'.
'</span>'.
'<div class="clear"></div>'.
'</div>'."\n";
/*//zjisteni poctu submenu pro aktualni menu
$query2 = "SELECT COUNT(*) AS pocet FROM ".DBPREFIX."menu_spoluprac WHERE parent = '$data->id'";
$sent2 = mysql_query($query2);
$info = mysql_fetch_object($sent2);
if($info->pocet > 0){//existuje-li nejake submenu pro aktualni menu
//zjisti informace o vsech submenu aktualniho menu
$query3 = "SELECT id, name, view, pos, url FROM ".DBPREFIX."menu_spoluprac WHERE parent = '$data->id' ORDER BY pos ASC";
$sent3 = mysql_query($query3);
while($obsah = mysql_fetch_object($sent3)){//pro vsechny nalezene submenu provede jejich vypis
echo '<div class="submenu_list_page">'.
'<span class="s_m_name">'.//vypise nazev submenu s odkazem na jeho editaci
'<a href="default.php?page=menuSpoluprac/edit&id_m='.$obsah->id.'">'.stripslashes($obsah->name).'</a>'.
'</span>'.
($obsah->url == '1' ?//jde-li o statickou stranku
'<span class="m_page">'.//vykresli obrzek pro editaci strnaky kam submenu ukazuje
'<a href="default.php?page=menuSpoluprac/edit_page&id_m='.$obsah->id.'">'.
'<img src="img/menu_page.jpg" border="0" alt="Změnit stránku" title="Změnit stránku" />'.
'</a>'.
'</span>'
: '').//nejde-li o statickou stranku
'<span>'.//obrazek sipky s odkazem na posunuti submenu o jednu uroven vys
'<a href="default.php?page='.$page.(!empty($url_id) ? '&url_id='.$url_id : '').'&b=up&id_m='.$obsah->id.'">'.
'<img src="img/up.gif" alt="up" border="0" />'.
'</a>'.
'</span>'.
'<span>'.//obrazek sipky s odkazem na posunuti submenu o jednu uroven nize
'<a href="default.php?page='.$page.(!empty($url_id) ? '&url_id='.$url_id : '').'&b=down&id_m='.$obsah->id.'">'.
'<img src="img/down.gif" alt="down" border="0"/>'.
'</a>'.
'</span>'.
'<span>'.//obrazek s odkazem na zmenu viditelnosti menu
'<a class="view" href="default.php?page='.$page.(!empty($url_id) ? '&url_id='.$url_id : '').'&b=view&id_m='.$obsah->id.'">'.
($obsah->view == 1 ? //volba obrzku(skryt x zobrazit)
'<img src="img/show.png" alt="skryt" border="0" title="Skryt" />'
:
'<img src="img/hidden.png" alt="zobrazit" border="0" title="Zobrazit" />'
).
'</a>'.
'</span>'.
'<span>'.//obrazek s odkzem na smazani menu
'<a class="delete" href="default.php?page='.$page.(!empty($url_id) ? '&url_id='.$url_id : '').'&b=delete&id_m='.$obsah->id.'">'.
'<img src="img/delete.jpg" alt="Smazat" title="Smazat" border="0" />'.
'</a>'.
'</span>'.
'<div class="clear"></div>'.
'</div>'."\n";
}
}*/
}
echo '</div>'."\n";
}
//zmeni viditelnost pro menu o danem id
function view_change($id){
//zjisti zda dane menu je viditelne
$query = "SELECT view FROM ".DBPREFIX."menu_spoluprac WHERE id = '$id'";
$sent = mysql_query($query);
$data = mysql_fetch_object($sent);
//begin zmena viditelnosti
if($data->view == 1){
$change = 0;
}
else{
$change = 1;
}
$query = "UPDATE ".DBPREFIX."menu_spoluprac SET view = '$change' WHERE id = '$id'";
mysql_query($query);
//end zmena viditelnosti
}
//zmeni odkaz menu o id $id_m na stranku o id $page
function edit_menu($id_m, $page){
$query = "UPDATE ".DBPREFIX."menu_spoluprac SET page = '$page' WHERE id = '$id_m'";
if(mysql_query($query)){
$this->msg = MENU_EDITED;
}
else{
$this->msg = SQL_ERROR.mysql_error();
}
}
//smaze dane menu z databaze a postara se o precislovani pozic prislusnych menu
//naplni vlastnost $msg tridy hlasenim o uspesnosti akce
function delete($id){
//zjisti pozici a parent daneho menu
$query = "SELECT pos, parent FROM ".DBPREFIX."menu_spoluprac WHERE id = '$id'";
$sent = mysql_query($query);
$data = mysql_fetch_object($sent);
$pos = $data->pos;//pozice daneho menu
$parent = $data->parent;//parent daneho menu
//smaze dane menu
$query = "DELETE FROM ".DBPREFIX."menu_spoluprac WHERE id = '$id'";
if(mysql_query($query)){//probehlo-li smazani menu uspesne
$this->msg = MENU_DELETED;
//posune vsechny menu se stejnym parent za smazanym menu o jednu pozici niz
$query = "UPDATE ".DBPREFIX."menu_spoluprac SET pos = pos - 1 WHERE pos > '$pos' AND parent = '$parent'";
mysql_query($query);
//smaze vsechny submenu prave smazaneho menu
$query = "DELETE FROM ".DBPREFIX."menu_spoluprac WHERE parent = '$id'";
mysql_query($query);
}
else{//nedoslo-li ke smazani
$this->msg = SQL_ERROR.mysql_error();
}
}
//posune polozku menu o danem id o jednu pozici vys nebo nize, podle parametru $par('up'x'down')
function up_down($id,$par){
//nalezne pozici a parent pro dane menu
$query = "SELECT pos, parent FROM ".DBPREFIX."menu_spoluprac WHERE id = '$id'";
$sent = mysql_query($query);
$data = mysql_fetch_object($sent);
$actual_pos = $data->pos;//aktualni pozice menu
$parent = $data->parent;//rodic menu
if($par == 'up'){//je-li pozadavek o posun vys
$new_pos = $actual_pos - 1;
}
else{//je-li pozadavek o posun niz
$new_pos = $actual_pos + 1;
}
//zjisti jestli na nove pozici jiz existuje nejake menu
$query = "SELECT COUNT(*) AS pocet FROM ".DBPREFIX."menu_spoluprac WHERE pos = '$new_pos' AND parent = '$parent'";
$sent = mysql_query($query);
$data = mysql_fetch_object($sent);
if($data->pocet != 0){//existuje-li nave pozici nejake menu, tak je prohodi
$query = "UPDATE ".DBPREFIX."menu_spoluprac SET pos = '$actual_pos' WHERE pos = '$new_pos' AND parent = '$parent'";
mysql_query($query);
$query = "UPDATE ".DBPREFIX."menu_spoluprac SET pos = '$new_pos' WHERE id = '$id'";
mysql_query($query);
}
}
//nalezne jmeno menu o zadanem id a naplni jim vlastnost tridy-menu_name
function select_one_menu($id){
$query = "SELECT name FROM ".DBPREFIX."menu_spoluprac WHERE id = '$id'";
$sent = mysql_query($query);
$data = mysql_fetch_object($sent);
$this->menu_name[] = stripslashes($data->name);
}
//edituje nazev menu o danem id na $name
function edit($id, $name){
if(!empty($name)){//je-li formular vyplnen
$name = addslashes($name);
$query = "SELECT COUNT(*) AS pocet FROM ".DBPREFIX."menu_spoluprac WHERE id != '$id' AND name = '$name'";
$sent = mysql_query($query);
$data = mysql_fetch_object($sent);
if($data->pocet == 0){//neexistuje-li jeste dany nazev, tak ho smeni
$query = "UPDATE ".DBPREFIX."menu_spoluprac SET name = '$name' WHERE id = '$id'";
if(mysql_query($query)){//editace se zdarila
$this->msg = MENU_EDITED;
}
else{//editace se nezdarila
$this->msg = SQL_ERROR.mysql_error();
}
}
else{//existuje-li dany nazev
$this->msg = MENU_NAME_EXIST;
}
}
else{//neni-li formular vyplnen
$this->msg = FORM_MENU_EMPTY;
}
}
}
?>
ACC SHELL 2018