ACC SHELL
<?php
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
class aktualne{
//begin privatni vlastnosti tridy
private $id=NULL;//pole id vybranych aktualit
private $title=NULL;//pole nadpisu vybranych aktualit
private $text=NULL;//pole textu vybranych aktualit
private $visible=NULL;//pole indikujici viditelnost jednotlivych aktualit
private $pos=NULL;//pole pozic vybranych aktualit
private $headingId=NULL;//id hlavicky stranky aktualne
private $headingText=NULL;//text hlavicky stranky aktualne
private $headingVisible=NULL;//viditelnost hlavicky stranky aktualne
private $idCategory=null;//pole id vybranych kategorii aktualit
private $nameCategory=null;//pole nazvu vybranych kategorii aktualit
private $posCategory=null;//pole pozic vybranych kategorii aktualit
private $visibleCategory=null;//pole viditelnosti vybranych kategorii aktualit
//end privatni vlastnosti tridy
//begin pristup k privatnim vlastnostem
public function getId($i){
return $this->id[$i];
}
public function getTitle($i){
return $this->title[$i];
}
public function getText($i){
return $this->text[$i];
}
public function getVisible($i){
return $this->visible[$i];
}
public function getPos($i){
return $this->pos[$i];
}
public function getHeadingID(){
return $this->headingId;
}
public function getHeadingText(){
return $this->headingText;
}
public function getHeadingVisible(){
return $this->headingVisible;
}
public function getIdCategory($i){
return $this->idCategory[$i];
}
public function getNameCategory($i){
return $this->nameCategory[$i];
}
public function getPosCategory($i){
return $this->PosCategory[$i];
}
public function getVisibleCategory($i){
return $this->visibleCategory[$i];
}
//end pristup k privatnim vlastnostem
//vraci html kod hlavicky stranky aktualne, pokud je viditelna, jinak vraci prazdny retezec
public function showHeading(){
$query = "SELECT text, visible FROM ".DBPREFIX."aktualne_heading ";
$sent = mysql_query($query);
$data = mysql_fetch_object($sent);
if ($data->visible){//je-li hlavicka viditelna
return $data->text.'<br />';
}
else{
return '';
}
}
//naplni privatni vlastnosti tridy, informacemi o vsech viditelnych kategoriich podle pozice
private function selectAllCategory(){
$query = "SELECT id, name, pos, visible FROM ".DBPREFIX."aktualne_kategorie WHERE visible=true ORDER BY pos";
$sent = mysql_query($query);
$this->setCategory($sent);//naplneni privatnich vlastnosti
}
//naplni privatni vlastnosti informacemi o kategoriich
private function setCategory($sent){
$this->unsetCategory();
while($data = mysql_fetch_object($sent)){
$this->idCategory[] = $data->id;
$this->nameCategory[] = stripslashes($data->name);
$this->posCategory[] = $data->pos;
$this->visibleCategory[]=$data->visible;
}
}
//odstrani vlastnosi kategorii
private function unsetCategory(){
unset($this->idCategory);
unset($this->nameCategory);
unset($this->posCategory);
unset($this->visibleCategory);
}
//vraci html kod s viditelnymi nazvy kategorii a textem viditelnych aktualit
public function showAll(){
$this->selectAllCategory();//nalezne informace o vsech viditelnych kategoriich, a naplni jimi privatni vlastnosti
if(count($this->idCategory) == 0){//nebyly-li nalezeny zadne kategorie
return "<p>Nebyly nalezeny žádné Aktuality. </p>";
}
$helpStr='';
for ($i=0;$i<count($this->idCategory);$i++){//pro kazdou kategorii
$helpStr .='<h3><strong>'.$this->nameCategory[$i].':</strong></h3>'."\n";//zobrazi jeji nazev
$helpStr .= $this->showActualities($this->idCategory[$i]);//zobrazi aktualni texty aktualit dane kategorie
}
return $helpStr;
}
//vraci html kod pro vypis viditelnych aktualit kategorie s danym id
private function showActualities($idCategory){
$this->selectActualities($idCategory);//naplneni privatnich vlastnosti informacemi o produktech z dane kategorie
$helpStr='<ul>'."\n";
if (count($this->id)==0){//neexistuje zadna viditelna aktualita v dane kategorii
return '<p>Nebyly nalezeny žádné aktuality.</p>'."\n";
}
for ($i=0;$i<count($this->id);$i++){//vypis vsech nactenych aktualit
$helpStr .= '<li><h4><strong>'.$this->title[$i].'</strong></h4></li>'."\n";
$helpStr .= '<p style="left: 20px; position:relative">'.$this->text[$i].'</p>'."\n";
}
$helpStr .='</ul>'."\n";
return $helpStr;
}
//naplni privatni valstnosti informacemi o viditelnych aktualitach z kategorie o danem id podle pozice
private function selectActualities($idCategory){
$query = "SELECT id, title, text, pos, visible FROM ".DBPREFIX."aktualne WHERE category_id = '$idCategory' AND visible=true ORDER BY pos";
$sent = mysql_query($query);
$this->setActualities($sent);//naplneni privatnich vlastnosti
}
//naplni privatni vlastnosti informacemi o aktualitach
private function setActualities($sent){
$this->unsetActualities();
while($data = mysql_fetch_object($sent)){
$this->id[] = $data->id;
$this->title[] = stripslashes($data->title);
$this->text[] = stripslashes($data->text);
$this->pos[] = $data->pos;
$this->visible[]=$data->visible;
}
}
//odstrani vlastnosi aktualit
private function unsetActualities(){
unset($this->id);
unset($this->title);
unset($this->text);
unset($this->pos);
unset($this->visible);
}
}
?>
ACC SHELL 2018