Server IP : 195.201.23.43 / Your IP : 18.223.168.194 Web Server : Apache System : Linux webserver2.vercom.be 5.4.0-192-generic #212-Ubuntu SMP Fri Jul 5 09:47:39 UTC 2024 x86_64 User : kdecoratie ( 1041) PHP Version : 7.1.33-63+ubuntu20.04.1+deb.sury.org+1 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals, MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /home/kdecoratie/public_html/templates/kdecor1/library/Artx/Content/ |
Upload File : |
<?php defined('_JEXEC') or die; Artx::load("Artx_Content_ArticleBase"); abstract class ArtxContentItem extends ArtxContentArticleBase { public $isPublished; public $printIconVisible; public $emailIconVisible; public $editIconVisible; public $introVisible; public $readmore; public $readmoreLink; protected function __construct($component, $componentParams, $article, $articleParams) { parent::__construct($component, $componentParams, $article, $articleParams); $this->title = $this->_articleParams->get('show_title') ? $this->_article->title : ''; $this->showIcons = $this->_articleParams->get('show_icons'); $this->printIconVisible = $this->_articleParams->get('show_print_icon'); $this->emailIconVisible = $this->_articleParams->get('show_email_icon'); $this->editIconVisible = $this->_articleParams->get('access-edit'); $this->introVisible = $this->_articleParams->get('show_intro'); $this->images = $this->_buildImages($article, $articleParams); } private function _buildImages($article, $params) { $images = (isset($this->_article->images) && is_string($this->_article->images)) ? json_decode($this->_article->images) : null; return array( 'intro' => $this->_buildImageInfo('intro', $params, $images), 'fulltext' => $this->_buildImageInfo('fulltext', $params, $images)); } private function _buildImageInfo($type, $params, $images) { $image = array('image' => '', 'float' => '', 'class' => '', 'caption' => '', 'alt' => ''); if (is_null($images)) return $image; $properties = array( 'image' => 'image_' . $type, 'float' => 'float_' . $type, 'caption' => 'image_' . $type . '_caption', 'alt' => 'image_' . $type . '_alt' ); if (isset($images->{$properties['image']}) && !empty($images->{$properties['image']})) { $image['image'] = $images->{$properties['image']}; $image['float'] = empty($images->{$properties['float']}) ? $params->get($properties['float']) : $images->{$properties['float']}; $image['class'] = 'img-' . $type . '-' . htmlspecialchars($image['float']); if ($images->{$properties['caption']}) $image['caption'] = htmlspecialchars($images->{$properties['caption']}); $image['alt'] = $images->{$properties['alt']}; } return $image; } private function _buildIconJ3($text, $file, $alt, $wrapUpTooltip = false) { $app = JFactory::getApplication(); $src = JURI::root(true) . '/templates/' . $app->getTemplate(); preg_match('/<a[^>]*>(.*?)<\/a>/', $text, $matches); $linkContent = $matches[1]; $newLinkContent = '<img src="' . $src . '/images/system/' . $file . '" alt="' . $alt . '" />'; $text = str_replace($linkContent, $newLinkContent, $text); if ($wrapUpTooltip) { preg_match('/title="([^"]*)"/', $linkContent, $matches); $tooltipText = $matches[1]; $tooltipText = preg_replace('/<strong>(.*?)<\/strong><br \/>/', '$1 :: ', $tooltipText); $text = '<span class="hasTip" title="' . $tooltipText . '">' . $text . '</span>'; } return $text; } /** * @see $emailIconVisible */ public function emailIcon() { $text = JHtml::_('icon.email', $this->_article, $this->_articleParams); if ($this->showIcons && version_compare(JVERSION, '3.0.0') >= 0) { $text = $this->_buildIconJ3($text, 'emailButton.png', 'Email'); } return $text; } /** * @see $editIconVisible */ public function editIcon() { $text = JHtml::_('icon.edit', $this->_article, $this->_articleParams); if ($this->showIcons && version_compare(JVERSION, '3.0.0') >= 0) { $text = $this->_buildIconJ3($text, 'edit.png', 'Edit', true); } return $text; } /** * @see $printIconVisible */ public function printIcon() { $text = JHtml::_('icon.print_popup', $this->_article, $this->_articleParams); if ($this->showIcons && version_compare(JVERSION, '3.0.0') >= 0) { $text = $this->_buildIconJ3($text, 'printButton.png', 'Print'); } return $text; } /** * Returns decoration for unpublished articles. * * Together with endUnpublishedArticle() this function decorates * the unpublished article with <div class="system-unpublished">...</div>. * By default, this decoration is applied only to articles in lists. */ public function beginUnpublishedArticle() { return '<div class="system-unpublished">'; } public function endUnpublishedArticle() { return '</div>'; } public function readmore($readmore, $readmoreLink) { return '<p class="readmore">' . artxLinkButton(array( 'classes' => array('a' => 'readon'), 'link' => $readmoreLink, 'content' => str_replace(' ', ' ', $readmore))) . '</p>'; } public function image($image) { $imgTagAttrs = array('src' => $image['image'], 'alt' => $image['alt'], 'itemprop' => 'image'); if ($image['caption']) { $imgTagAttrs['class'] = 'caption'; $imgTagAttrs['title'] = $image['caption']; } return artxTagBuilder('div', array('class' => $image['class']), artxTagBuilder('img', array('src' => $image['image'], 'alt' => $image['alt']) + ($image['caption'] ? array('class' => 'caption', 'title' => $image['caption']) : array()))); } }Private