ACC SHELL
<?php
// functions
require_once( $serverFullPath.'functions.php' );
// ETS
require_once( $serverFullPath.'ets.php' );
class pageItemContent21 extends pageItemContent
{
private $_pageItemType = 21;
protected $_db;
private $_pageID;
private $_pathPage;
// --------------------------------------------------------------------------------
public function __construct( $db, $pageID, $_pathPage )
{
$this->_db = $db;
$this->_pageID = $pageID;
$this->_pathPage = '../..' . $_pathPage . '/';
}
// --------------------------------------------------------------------------------
public function insert( $position )
{
$return = array();
if ( $this->_db->insertItem( 'pageItem', array( 'pageID'=>$this->_pageID, 'type'=>$this->_pageItemType, 'position'=>$position ) ) )
{
$newPageItemID = $this->_db->getLastID();
if ( $this->_db->insertItem( 'pageItemContent'.$this->_pageItemType, array() ) )
{
$newPageItemContentID = $this->_db->getLastID();
$this->_db->setItem( 'pageItem', $newPageItemID, array( 'pageItemContentID'=>$newPageItemContentID ) );
$return['statusOK'] = 'Změny byly uloženy.';
}
else
{
$this->_db->deleteItem( 'pageItem', $newPageItemID );
$return['statusError'] = 'Při ukládání dat(položky) vznikla chyba.';
}
}
else
{
$return['statusError'] = 'Při ukládání dat vznikla chyba.';
}
return $return;
}
// --------------------------------------------------------------------------------
public function delete( $pageItemID )
{
$return = array();
$pageItem = $this->_db->getItem( 'pageItem', $pageItemID );
$pageItemContent = $this->_db->getItem( 'pageItemContent'.$this->_pageItemType, $pageItem['pageItemContentID'] );
if ( isset( $pageItem['ID'] ) && isset( $pageItemContent['ID'] ) )
{
if ( $this->_db->deleteItem( 'pageItem', $pageItem['ID'] ) &&
$this->_db->deleteItem( 'pageItemContent'.$this->_pageItemType, $pageItemContent['ID'] ) )
{
$return['statusOK'] = 'Položka byla smazána.';
}
else
{
$return['statusError'] = 'Při mazání dat vznikla chyba.';
}
}
else
{
$return['statusError'] = 'Při pokuse o mazání dat vznikla chyba.';
}
return $return;
}
// --------------------------------------------------------------------------------
public function show( $pageItemID, $serverFullPath = '', $isAdmin = false )
{
$pageItem = $this->_db->getItem( 'pageItem', $pageItemID );
$pageItemContent = $this->_db->getItem( 'pageItemContent'.$this->_pageItemType, $pageItem['pageItemContentID'] );
$htmlPageItem = new stdClass();
$htmlPageItem->pageItemID = $pageItemID;
$htmlPageItem->isAdmin = $isAdmin;
if ( $isAdmin == false )
{
$currentDate = date('Y-m-d');
$article = $this->_db->getItem( 'article', $pageItemContent['articleID'] );
$articles = removeOutdatedItems( array( $article ), $currentDate );
if ( count( $articles ) > 0 )
{
$article = $articles[0];
// date
if ( $article['visibilityStartDate'] > $article['createdDateTime'] )
{
$datetime = date_create( $article['visibilityStartDate'] );
$datetime = date_format( $datetime, "d.m.Y" );
}
else
{
$datetime = date_create( $article['createdDateTime'] );
$datetime = date_format( $datetime, "d.m.Y" );
}
$page = new stdClass();
// article fields
$htmlPageItem->title = htmlspecialchars( $article['title'] );
$htmlPageItem->text = html_entity_decode( $article['text'], ENT_NOQUOTES, 'UTF-8' );
$htmlPageItem->youtubeVideo = '';
$videoURL1 = getVideoEmbed( $article['videoURL1'], 360, 240 );
if ( $videoURL1 != '' )
$htmlPageItem->youtubeVideo .= '<div class="cleaner10"></div>' . $videoURL1;
$videoURL2 = getVideoEmbed( $article['videoURL2'], 360, 240 );
if ( $videoURL2 != '' )
$htmlPageItem->youtubeVideo .= '<div class="cleaner10"></div>' . $videoURL2;
$videoURL3 = getVideoEmbed( $article['videoURL3'], 360, 240 );
if ( $videoURL3 != '' )
$htmlPageItem->youtubeVideo .= '<div class="cleaner10"></div>' . $videoURL3;
$htmlPageItem->date = $datetime;
//$htmlPageItem->categoryTitle = $articleCategory['title'];
//$htmlPageItem->categoryURL = '/' . $articleCategory['url'];
$htmlPageItem->imgSrc = '';
$htmlPageItem->imgSrcFull = '';
if ( $article['image'] != '' )
{
$htmlPageItem->imgSrc = '/data/article/mainImages/medium/' . $article['image'];
$htmlPageItem->imgSrcFull = '/data/article/mainImages/full/' . $article['image'];
}
else
{
if ( $article['videoURL1'] != '' )
{
$htmlPageItem->imgSrc = getVideoImage( $article['videoURL1'] );
$htmlPageItem->imgSrcFull = $htmlPageItem->imgSrc;
}
}
$images = $this->_db->getAllItems( 'mediaItem2', " WHERE `ownerID`=" . $article['ID'] . " ORDER BY `position` ASC " );
$imagesCount = count( $images );
for ( $i = 0; $i < $imagesCount; $i++ )
{
$image = $images[ $i ];
$htmlPageItem->images[ $i ]->imgSrc = '/data/article/images/' . $article['ID'] . '/thumbs/' . $image['fileName'];
$htmlPageItem->images[ $i ]->imgSrcFull = '/data/article/images/' . $article['ID'] . '/' . $image['fileName'];
}
// html title
//$titleHTML .= $htmlPageItem->title . ' | ';
// FB like button
/*$htmlPageItem->facebookLikeButtonVisible = $settings['facebookLikeButtonVisible'];
if ( $settings['facebookLikeButtonVisible'] )
{
$facebookHTMLheader = '
<meta property="og:title" content="' . $article['title'] . '" />
<meta property="og:type" content="article" />
<meta property="og:url" content="' . 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'] . '" />
<meta property="og:description" content="' . shortenText( fuckOffHTMLspecialChars( strip_tags( $article['text'] ) ), 200 ) . '" />
';
if ( $article['image'] != '' )
{
$facebookHTMLheader .= '
<meta property="og:image" content="http://' . $_SERVER['HTTP_HOST'] . '/data/product/mainImages/medium/' . $article['image'] . '" />
';
}
}*/
$htmlPageItem->content = sprintt( $htmlPageItem, 'parts/articleDetail.html' );
}
///
}
else
{
$article = $this->_db->getItem( 'article', $pageItemContent['articleID'] );
$htmlPageItem->title = $article['title'];
}
return sprintt( $htmlPageItem, $serverFullPath . 'class.pageItemContent' . $this->_pageItemType . '-show.html' );
}
// --------------------------------------------------------------------------------
public function edit( $pageItemID )
{
$pageItem = $this->_db->getItem( 'pageItem', $pageItemID );
$pageItemContent = $this->_db->getItem( 'pageItemContent'.$this->_pageItemType, $pageItem['pageItemContentID'] );
$htmlPageItem = new stdClass();
$htmlPageItem->pageID = $this->_pageID;
$htmlPageItem->pageItemID = $pageItemID;
$htmlPageItem->pageItemType = $this->_pageItemType;
$htmlPageItem->articleID = $pageItemContent['articleID'];
//$article = $this->_db->getItemWhere( 'article', " WHERE `url`='" . $url_submenu . "' " );
$articles = $this->_db->getAllItems( 'article', " ORDER BY `title` ASC " );
if ( count( $articles ) > 0 )
{
$pi = 1;
foreach ( $articles as $article )
{
$htmlPageItem->article[ $pi ]->ID = $article['ID'];
$htmlPageItem->article[ $pi ]->title = $article['title'];
$pi++;
}
}
// fixed save buttons
$htmlPageItem->fixedSaveButtons = $this->fixedSaveButtonsBeforeEdit();
return sprintt( $htmlPageItem, 'page/class.pageItemContent' . $this->_pageItemType . '-edit.html' );
}
// --------------------------------------------------------------------------------
public function save( $pageItemID )
{
$pageItem = $this->_db->getItem( 'pageItem', $pageItemID );
$pageItemContent = $this->_db->getItem( 'pageItemContent'.$this->_pageItemType, $pageItem['pageItemContentID'] );
// save data
$this->_db->setItem( 'pageItemContent'.$this->_pageItemType, $pageItem['pageItemContentID'], array(
'articleID' => $_POST['articleID']
) );
return 1;
}
}
?>
ACC SHELL 2018