Пример #1
0
 public function generateHtml($revisionId, $widgetId, $data, $skin)
 {
     if (!$this->gmapsApiAvailable()) {
         if (ipIsManagementState()) {
             return '<div class="note"><a href="' . ipActionUrl(array('aa' => 'Config')) . '">' . __("Maps widget is based on Google Maps. Please set up Google Maps API key to make it work.", 'Ip-admin') . '</a></div>';
         } else {
             //don't show anything on public site
             return '';
         }
     }
     if (!empty($data['height'])) {
         $data['height'] = (int) $data['height'] . 'px';
     } else {
         $data['height'] = '250px';
     }
     if (empty($data['mapTypeId'])) {
         $data['mapTypeId'] = null;
     }
     if (empty($data['zoom'])) {
         $data['zoom'] = null;
     }
     if (empty($data['lat'])) {
         $data['lat'] = null;
     }
     if (empty($data['lng'])) {
         $data['lng'] = null;
     }
     return parent::generateHtml($revisionId, $widgetId, $data, $skin);
 }
Пример #2
0
 public function generateHtml($revisionId, $widgetId, $data, $skin)
 {
     if (ipIsManagementState()) {
         return parent::generateHtml($revisionId, $widgetId, $data, $skin);
     } else {
         return '';
     }
 }
Пример #3
0
 protected function generateVideoHtml($data)
 {
     if (empty($data['url'])) {
         return false;
     }
     $url = $data['url'];
     if (preg_match('%^[^"&?/ ]{11}$%i', $url)) {
         //youtube id
         $url = 'http://www.youtube.com/embed/' . $url;
     }
     if (preg_match('%^[0-9]+$%i', $url)) {
         //vimeo id
         $url = 'http://player.vimeo.com/video/' . $url;
     }
     if (!preg_match('/^((http|https):\\/\\/)/i', $url)) {
         $url = 'http://' . $url;
     }
     if (preg_match('/^((http|https):\\/\\/)?(www.)?youtube.com/i', $url)) {
         //youtube video
         if (preg_match('/youtube.com\\/watch\\?v=/i', $url)) {
             $url = str_replace('youtube.com/watch?v=', 'youtube.com/embed/', $url);
         }
         if (ipIsManagementState()) {
             if (preg_match('/\\?/s', $url)) {
                 $url .= '&wmode=opaque';
             } else {
                 $url .= '?wmode=opaque';
             }
         }
         return $this->renderView('view/youtube.php', $url, $data);
     }
     if (preg_match('/^((http|https):\\/\\/)?(www.)?youtu.be/i', $url)) {
         //youtube video
         $url = str_replace('youtu.be/', 'youtube.com/embed/', $url);
         if (ipIsManagementState()) {
             if (preg_match('/\\?/s', $url)) {
                 $url .= '&wmode=opaque';
             } else {
                 $url .= '?wmode=opaque';
             }
         }
         return $this->renderView('view/youtube.php', $url, $data);
     }
     if (preg_match('/^((http|https):\\/\\/)?(www.)?(player.)?vimeo.com/i', $url)) {
         if (preg_match('%www.vimeo.com%i', $url)) {
             $url = str_replace('www.vimeo.com', 'player.vimeo.com', $url);
         }
         if (preg_match('%//vimeo.com%i', $url)) {
             $url = str_replace('//vimeo.com', '//player.vimeo.com', $url);
         }
         if (strpos($url, '/video') === false) {
             $url = str_replace('vimeo.com', 'vimeo.com/video', $url);
         }
         return $this->renderView('view/vimeo.php', $url, $data);
     }
     return false;
 }
Пример #4
0
 public static function ipBeforeController()
 {
     if (ipIsManagementState()) {
         ipAddCss('assets/gridWidget.css');
         ipAddCss('assets/admin_custom.css');
     }
     ipAddCss('assets/style.css');
     ipAddJs('assets/scripts.js');
 }
Пример #5
0
 public function index()
 {
     $revision = \Ip\ServiceLocator::content()->getCurrentRevision();
     if ($revision) {
         return \Ip\Internal\Content\Model::generateBlock('main', $revision['revisionId'], 0, ipIsManagementState());
     } else {
         return '';
     }
 }
Пример #6
0
 public static function ipBeforeController()
 {
     if (ipIsManagementState()) {
         // Works only if admin is logged in (AJAX is sent to Admin Controller)
         if (isset($_SESSION['module']['system']['adminJustLoggedIn']) && ipAdminPermission('Super admin')) {
             ipAddJs('Ip/Internal/System/assets/usageStatistics.js');
             ipAddJsVariable('ipSystemSendUsageStatistics', 1);
         }
     }
 }
Пример #7
0
 public static function ipBeforeController()
 {
     if (ipIsManagementState()) {
         ipAddJs('assets/js/plugin.js');
     }
     ipAddJs('https://maps.googleapis.com/maps/api/js?v=3.exp');
     ipAddJs('assets/js/map.js');
     ipAddCss('assets/css/map.css');
     if (!ipIsManagementState()) {
     }
 }
Пример #8
0
 public static function ipBeforeController()
 {
     if (ipIsManagementState()) {
         $plugin = explode('.', ipRequest()->getQuery('aa'));
         if ($plugin[0] == 'Pages') {
             ipAddCss('assets/php.css');
             ipAddCss('assets/codeEditorField.css');
             ipAddJs('assets/src-noconflict/ace.js');
             ipAddJs('assets/initCodeEditorField.js');
         }
     }
 }
Пример #9
0
 public static function ipBeforeController()
 {
     // Add elements that are necessary only in administration state
     if (ipIsManagementState()) {
         ipAddCss('assets/masonryGrid.css');
     }
     // Add Stylesheet
     ipAddCss('assets/masonryGridFront.css');
     // Add Javascript
     ipAddJs('assets/imagesloaded.pkgd.min.js');
     ipAddJs('assets/masonry.pkgd.min.js');
     ipAddJs('assets/masonryGrid.js');
 }
Пример #10
0
 public static function ipBeforeController()
 {
     if (!ipIsManagementState()) {
         $script = "\n  \n   \$(document).ready(function() {\n \n  if( \$('#SliderGall').hasClass('wc')){\n  \$('._item ipsItem').css('display', 'block');\n   \$('.bxslider').bxSlider({\n            auto: true,\n            mode: 'fade',\n            speed: 800,\n            captions: true,\n            autoHover: false,\n            startSlide: 1\n        });\n      console.log('WC public script class');  \n  }else if(\$('#SliderGall').hasClass('nc')){\n  \$('._item ipsItem').css('display', 'block');\n   \$('.bxslider').bxSlider({\n            auto: true,\n            mode: 'fade',\n            speed: 800,\n            autoHover: false,\n           \n            startSlide: 1\n        });\n       console.log('NC public script class');   \n  }else if(\$('#SliderGall').hasClass('np')){\n  \n   \$('._item ipsItem').css('display', 'block');\n   \$('.bxslider').bxSlider({\n            auto: true,\n            mode: 'fade',\n            speed: 800,\n            pager: false,\n            autoHover: false,\n            controls: false,\n            startSlide: 1\n            \n        });\n       console.log('NP public script class');   \n  }\n  \n      \n  });\n \n\n";
         ipAddJsContent('imageslider', $script);
         ipAddJs('assets/slider.js');
         ipAddJs('assets/jquery.bxslider.js');
         ipAddCss('assets/jquery.bxslider.css');
     } else {
         ipAddJs('assets/slider.js');
         ipAddJs('assets/jquery.bxslider.js');
         ipAddCss('assets/jquery.bxslider.css');
     }
 }
Пример #11
0
 private static function getTwitterView($view)
 {
     $username = Model::getTwitterUsername();
     $widget_id = Model::getTwitterWidgetID();
     if ($username && $widget_id) {
         $data['username'] = $username;
         $data['widget_id'] = $widget_id;
         return ipView('view/' . $view . '.php', $data)->render();
     } else {
         if (ipIsManagementState()) {
             return ipView('view/error.php')->render();
         }
         return false;
     }
 }
Пример #12
0
 public function generateHtml($revisionId, $widgetId, $data, $skin)
 {
     $data['showLink'] = false;
     if (!empty($data['link'])) {
         if (!preg_match('/^((http|https):\\/\\/)/i', $data['link'])) {
             $data['link'] = 'http://' . $data['link'];
         }
         // hiding link in administration
         if (!ipIsManagementState()) {
             $data['showLink'] = true;
         }
     }
     if (empty($data['level']) || (int) $data['level'] < 1) {
         $data['level'] = 1;
     }
     return parent::generateHtml($revisionId, $widgetId, $data, $skin);
 }
Пример #13
0
 public static function ipBeforeController()
 {
     if (ipIsManagementState() || ipRoute()->isAdmin() || ipRequest()->getQuery('ipDesignPreview')) {
         ipAddJs('Ip/Internal/Core/assets/js/jquery-ui/jquery-ui.js');
         ipAddJs('Ip/Internal/Repository/assets/ipRepository.js');
         ipAddJs('Ip/Internal/Repository/assets/ipRepositoryUploader.js');
         ipAddJs('Ip/Internal/Repository/assets/ipRepositoryAll.js');
         ipAddJs('Ip/Internal/Repository/assets/ipRepositoryBuy.js');
         ipAddJs('Ip/Internal/System/assets/market.js');
         ipAddJs('Ip/Internal/Core/assets/js/easyXDM/easyXDM.min.js');
         $marketUrl = ipConfig()->get('imageMarketUrl', 'http://market.impresspages.org/images-v1/');
         $popupData = array('marketUrl' => $marketUrl, 'allowUpload' => ipAdminPermission('Repository upload'), 'allowRepository' => ipAdminPermission('Repository'));
         ipAddJsVariable('ipRepositoryHtml', ipView('view/popup.php', $popupData)->render());
         ipAddJsVariable('ipRepositoryTranslate_confirm_delete', __('Are you sure you want to delete selected files?', 'Ip-admin'));
         ipAddJsVariable('ipRepositoryTranslate_delete_warning', __('Some of the selected files are still used somewhere on your website. Do you still want to remove them? ', 'Ip-admin'));
     }
 }
Пример #14
0
 public static function ipBeforeController()
 {
     if (ipIsManagementState()) {
         if (ipConfig()->isDebugMode()) {
             ipAddJs('Ip/Internal/InlineManagement/assets/src/inlineManagement.js');
             ipAddJs('Ip/Internal/InlineManagement/assets/src/inlineManagementControls.js');
             ipAddJs('Ip/Internal/InlineManagement/assets/src/inlineManagementImage.js');
             ipAddJs('Ip/Internal/InlineManagement/assets/src/inlineManagementLogo.js');
             ipAddJs('Ip/Internal/InlineManagement/assets/src/inlineManagementText.js');
             ipAddJs('Ip/Internal/InlineManagement/assets/src/jquery.fontselector.js');
         } else {
             ipAddJs('Ip/Internal/InlineManagement/assets/inlineManagement.min.js');
         }
         ipAddJsVariable('ipModuleInlineManagementControls', ipView('view/management/controls.php')->render());
         ipAddJs('Ip/Internal/Content/assets/jquery.ip.uploadImage.js');
         ipAddJs('Ip/Internal/Core/assets/js/bootstrap-colorpicker/js/bootstrap-colorpicker.min.js');
         ipAddCss('Ip/Internal/Core/assets/js/bootstrap-colorpicker/css/bootstrap-colorpicker.css');
     }
 }
Пример #15
0
 public static function ipBeforeController()
 {
     //show admin submenu if needed
     if (ipRoute()->isAdmin()) {
         ipAddJs('Ip/Internal/Core/assets/js/jquery-ui/jquery-ui.js');
         ipAddCss('Ip/Internal/Core/assets/js/jquery-ui/jquery-ui.css');
         $submenu = Submenu::getSubmenuItems();
         $submenu = ipFilter('ipAdminSubmenu', $submenu);
         if ($submenu) {
             ipResponse()->setLayoutVariable('submenu', $submenu);
         }
     }
     // Show admin toolbar if admin is logged in:
     if (ipAdminId() && !ipRequest()->getRequest('pa') || ipRequest()->getRequest('aa') && ipAdminId()) {
         if (!ipRequest()->getQuery('ipDesignPreview') && !ipRequest()->getQuery('disableAdminNavbar')) {
             ipAddJs('Ip/Internal/Admin/assets/admin.js');
             ipAddJsVariable('ipAdminNavbar', static::getAdminNavbarHtml());
         }
     }
     // Show popup with autogenerated user information if needed
     $adminIsAutogenerated = ipStorage()->get('Ip', 'adminIsAutogenerated');
     if ($adminIsAutogenerated) {
         $adminId = \Ip\Internal\Admin\Backend::userId();
         $admin = \Ip\Internal\Administrators\Model::getById($adminId);
         ipAddJs('Ip/Internal/Admin/assets/adminIsAutogenerated.js');
         $data = array('adminUsername' => $admin['username'], 'adminPassword' => ipStorage()->get('Ip', 'adminIsAutogenerated'), 'adminEmail' => $admin['email']);
         ipAddJsVariable('ipAdminIsAutogenerated', ipView('view/adminIsAutoGenerated.php', $data)->render());
     }
     if (ipContent()->getCurrentPage()) {
         // initialize management
         if (ipIsManagementState()) {
             if (!ipRequest()->getQuery('ipDesignPreview') && !ipRequest()->getQuery('disableManagement')) {
                 \Ip\Internal\Content\Helper::initManagement();
             }
         }
         //show page content
         $response = ipResponse();
         $response->setDescription(\Ip\ServiceLocator::content()->getDescription());
         $response->setKeywords(ipContent()->getKeywords());
         $response->setTitle(ipContent()->getTitle());
     }
 }
Пример #16
0
 /**
  * This method is launched before loading the controller.
  * Add JS and CSS files here.
  */
 public static function ipBeforeController()
 {
     if (!ipIsManagementState()) {
         $script = "\n\t\t\t\tvar ITEMS_PER_PAGE = \$('#paged').attr('rule');\n\t\t\t\tfunction pageselectCallback(page_index, jq){\n\t\t\t\t\tvar new_content = \$('#hiddenresult div.result').slice(page_index * ITEMS_PER_PAGE, (page_index + 1) * ITEMS_PER_PAGE).clone();\n\t\t\t\t\t\$('#Searchresult').html(new_content);\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t\tfunction initPagination() {\n\t\t\t\t\t// count entries inside the hidden content\n\t\t\t\t\tvar num_entries = jQuery('#hiddenresult div.result').length;\n\t\t\t\t\t// Create content inside pagination element\n\t\t\t\t\t\$('#Pagination').pagination(num_entries, {\n\t\t\t\t\t\tcallback: pageselectCallback,\n\t\t\t\t\t\titems_per_page:ITEMS_PER_PAGE, // Show only one item per page\n\t\t\t\t\t\tnext_text:'&raquo;',\n\t\t\t\t\t\tprev_text:'&laquo;'\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t";
         $script2 = "\n\t\t\t\t\$(document).ready(function(){   \n\t\t\t\t\tconsole.log('Public Ready called - Comment Plugin.');\n\t\t\t\t\tinitPagination();\n\t\t\t\t\n\t\t\t\t});\t\n\t\t\t";
         $script3 = "\n\t\t\t\t\$(function(){   \n\t\t\t\t\tconsole.log('Ready Other version Comment...');\n\t\t\t\t\tinitPagination();\n\t\t\t\t\n\t\t\t\t});\t\n\t\t\t";
         ipAddJsContent('commentsReady', $script2, 10);
         ipAddJs('assets/script.js');
         ipAddJs('assets/pagination.js');
         ipAddJsContent('commentsPrepare', $script);
         ipAddCss('assets/comments.css');
         ipAddCss('assets/pagination.css');
         ipAddCss('assets/page.css');
     } else {
         ipAddJs('assets/script.js');
         ipAddJs('assets/pagination.js');
         ipAddJs('assets/callpage.js');
         ipAddCss('assets/comments.css');
         ipAddCss('assets/pagination.css');
         ipAddCss('assets/page.css');
     }
 }
Пример #17
0
 private function generateBlockHtml($revisionId)
 {
     $predefinedContent = \Ip\ServiceLocator::content()->getBlockContent($this->name);
     if ($predefinedContent !== null) {
         return $predefinedContent;
     }
     if (ipContent()->getCurrentPage() == null && $revisionId == 0 && !$this->isStatic) {
         return '';
     }
     if ($this->isStatic) {
         $languageId = ipContent()->getCurrentLanguage()->getId();
         $revisionId = 0;
     } else {
         if ($revisionId === 0) {
             $revision = \Ip\ServiceLocator::content()->getCurrentRevision();
             if ($revision) {
                 $revisionId = $revision['revisionId'];
             }
         }
         $languageId = 0;
     }
     return \Ip\Internal\Content\Model::generateBlock($this->name, $revisionId, $languageId, ipIsManagementState(), $this->exampleContent);
 }
Пример #18
0
 /**
  * Used when management is needed in controller routed using routes.
  * @param $info
  * @return null
  */
 public static function ipBeforeController_70($info)
 {
     if (empty($info['page']) || empty($info['management']) || !ipIsManagementState()) {
         return null;
     }
     //find current page
     $page = $info['page'];
     // change layout if safe mode
     if (\Ip\Internal\Admin\Service::isSafeMode()) {
         ipSetLayout(ipFile('Ip/Internal/Admin/view/safeModeLayout.php'));
     } else {
         ipSetLayout($page->getLayout());
     }
     // initialize management
     if (!ipRequest()->getQuery('ipDesignPreview') && !ipRequest()->getQuery('disableManagement')) {
         Helper::initManagement();
     }
     //show page content
     $response = ipResponse();
     $response->setDescription(\Ip\ServiceLocator::content()->getDescription());
     $response->setKeywords(ipContent()->getKeywords());
     $response->setTitle(ipContent()->getTitle());
 }
Пример #19
0
<?php

$buttonAction = 'ipsContentPublish';
$buttonText = __('Published', 'Ip-admin', false);
$buttonClass = 'btn-default';
$button2Class = 'btn-default';
$revisionClass = 'btn-default';
$button2Action = 'ipsContentSave';
$button2Text = __('Save', 'Ip-admin', false);
if (!$isPublished) {
    $buttonText = __('Publish', 'Ip-admin', false);
    $buttonClass = 'btn-warning';
    $revisionClass = 'btn-warning';
}
if (!$isVisible && ipIsManagementState()) {
    $buttonAction = 'ipsContentSave';
    $button2Action = 'ipsContentPublish';
    $button2Class = 'btn-warning';
    $revisionClass = 'btn-warning';
    $buttonClass = 'btn-default';
    $buttonText = __('Save', 'Ip-admin', false);
    $button2Text = __('Publish', 'Ip-admin', false);
}
?>
<div class="ipModuleContentPublishButton btn-group">
    <button type="button" class="btn <?php 
echo $buttonClass;
?>
 navbar-btn <?php 
echo $buttonAction;
?>
Пример #20
0
<?php

if (isset($images) && is_array($images)) {
    ?>
<div class="_container">
<?php 
    foreach ($images as $imageKey => $image) {
        ?>
    <div class="_item ipsItem">
        <a
            <?php 
        if ($image['type'] == 'lightbox' && !ipIsManagementState()) {
            ?>
                rel="lightbox"
                href="<?php 
            echo escAttr($image['imageBig']);
            ?>
"
            <?php 
        }
        ?>
            <?php 
        if ($image['type'] == 'link') {
            ?>
                href="<?php 
            echo escAttr($image['url']);
            ?>
"
                <?php 
            echo $image['blank'] ? ' target="_blank" ' : '';
            ?>
Пример #21
0
 public function generateJavascript()
 {
     $cacheVersion = $this->getCacheVersion();
     $javascriptFiles = $this->getJavascript();
     $javascriptFilesSorted = array();
     foreach ($javascriptFiles as $level) {
         foreach ($level as &$file) {
             if ($file['type'] == 'file' && $file['cacheFix']) {
                 $file['value'] .= (strpos($file['value'], '?') !== false ? '&' : '?') . $cacheVersion;
             }
         }
         $javascriptFilesSorted = array_merge($javascriptFilesSorted, $level);
     }
     $revision = $this->getCurrentRevision();
     $page = ipContent()->getCurrentPage();
     $javascriptFilesSorted = ipFilter('ipJs', $javascriptFilesSorted);
     $language = ipContent()->getCurrentLanguage();
     $data = array('ip' => array('baseUrl' => ipConfig()->baseUrl(), 'safeMode' => \Ip\Internal\Admin\Service::isSafeMode(), 'languageId' => $language->getId(), 'languageUrl' => $language->getLink(), 'languageCode' => $language->getCode(), 'languageTextDirection' => $language->getTextDirection(), 'theme' => ipConfig()->theme(), 'pageId' => $page ? $page->getId() : null, 'revisionId' => $revision['revisionId'], 'securityToken' => \Ip\ServiceLocator::application()->getSecurityToken(), 'developmentEnvironment' => ipConfig()->isDevelopmentEnvironment(), 'debugMode' => ipconfig()->isDebugMode(), 'isManagementState' => ipIsManagementState(), 'isAdminState' => ipAdminId() ? 1 : 0, 'isAdminNavbarDisabled' => ipRequest()->getQuery('disableAdminNavbar') ? 1 : 0), 'javascriptVariables' => $this->getJavascriptVariables(), 'javascript' => $javascriptFilesSorted);
     $javascript = ipView('Ip/Internal/Config/view/javascript.php', $data)->render();
     $javascript = ipFilter('ipJavaScript', $javascript);
     return $javascript;
 }
Пример #22
0
    ?>
                    <article <?php 
    if (ipIsManagementState()) {
        echo 'title="' . $tile['label'] . '"';
    }
    ?>
                        class="col-md-4 isotopeItem <?php 
    echo $widgetId . 'all';
    foreach ($tile['filters'] as $f) {
        echo ' ' . $widgetId . $f['filter'];
    }
    ?>
">
				        <div>
                            <?php 
    echo \Ip\Internal\Content\Model::generateBlock('portfolio' . $originalWidgetId . '-' . $tile['blockId'], $revisionId, 0, ipIsManagementState());
    ?>
                        </div>
                    </article>
                <?php 
}
?>
                							  
            </div>
        </div>
    </div>
</div>

<?php 
$portfolioJsScript = '
                
Пример #23
0
 /**
  * Renders widget's HTML output
  *
  * You can extend this method when generating widget's HTML.
  *
  * @param int $revisionId Widget revision ID
  * @param int $widgetId Widget ID
  * @param int $widgetId Widget instance ID
  * @param array $data Widget data array
  * @param string $skin Skin name
  * @return string Widget's HTML code
  */
 public function generateHtml($revisionId, $widgetId, $data, $skin)
 {
     try {
         if ($this->core) {
             $skinFile = 'Ip/Internal/' . $this->pluginName . '/' . Model::WIDGET_DIR . '/' . $this->name . '/' . self::SKIN_DIR . '/' . $skin . '.php';
         } else {
             $skinFile = 'Plugin/' . $this->pluginName . '/' . Model::WIDGET_DIR . '/' . $this->name . '/' . self::SKIN_DIR . '/' . $skin . '.php';
         }
         if (!is_file(ipFile($skinFile)) && !is_file(ipThemeFile(\Ip\View::OVERRIDE_DIR . '/' . $skinFile))) {
             $skin = 'default';
             if ($this->core) {
                 $skinFile = 'Ip/Internal/' . $this->pluginName . '/' . Model::WIDGET_DIR . '/' . $this->name . '/' . self::SKIN_DIR . '/' . $skin . '.php';
             } else {
                 $skinFile = 'Plugin/' . $this->pluginName . '/' . Model::WIDGET_DIR . '/' . $this->name . '/' . self::SKIN_DIR . '/' . $skin . '.php';
             }
         }
         $answer = ipView($skinFile, $data)->render();
     } catch (\Ip\Exception $e) {
         if (ipIsManagementState()) {
             $answer = $e->getMessage() . "\n " . $e->getTraceAsString();
         } else {
             $answer = '';
         }
     }
     return $answer;
 }
Пример #24
0
<?php

if (ipIsManagementState()) {
    ?>
    <div class="ipsContainer"></div>
<?php 
} else {
    ?>
    <?php 
    echo isset($html) ? $html : '';
}
Пример #25
0
<?php

if (isset($imageSmall) && $imageSmall != '') {
    ?>
    <a
        <?php 
    if ($type == 'lightbox' && !ipIsManagementState()) {
        ?>
            rel="lightbox"
            href="<?php 
        echo escAttr($imageBig);
        ?>
"
        <?php 
    }
    ?>
        <?php 
    if ($type == 'link') {
        ?>
            href="<?php 
        echo escAttr($url);
        ?>
"
            <?php 
        echo $blank ? ' target="_blank" ' : '';
        ?>
            <?php 
        echo $nofollow ? ' rel="nofollow" ' : '';
        ?>
        <?php 
    }
Пример #26
0
 public static function ipAdminNavbarButtons($buttons, $info)
 {
     $breadcrumb = ipContent()->getBreadcrumb();
     if (!empty($breadcrumb[0])) {
         $rootPage = $breadcrumb[0];
         $menu = ipContent()->getPage($rootPage->getParentId());
         $alias = $menu->getAlias();
     } else {
         $alias = '';
     }
     if (ipContent()->getCurrentPage()) {
         if (!ipAdminPermission('Content')) {
             //Do nothing
         } elseif (ipIsManagementState()) {
             $buttons[] = array('text' => __('Preview', 'Ip-admin', false), 'hint' => __('Hides admin tools', 'Ip-admin', false), 'class' => 'ipsContentPreview', 'faIcon' => 'fa-eye', 'url' => '#');
         } else {
             $buttons[] = array('text' => __('Edit', 'Ip-admin', false), 'hint' => __('Show widgets', 'Ip-admin', false), 'class' => 'ipsContentEdit', 'faIcon' => 'fa-edit', 'url' => '#');
         }
         if (ipAdminPermission('Pages')) {
             $buttons[] = array('text' => __('Settings', 'Ip-admin', false), 'hint' => __('Page settings', 'Ip-admin', false), 'class' => 'ipsAdminPageSettings', 'faIcon' => 'fa-gear', 'url' => ipActionUrl(array('aa' => 'Pages.index')) . '#hash&language=' . ipContent()->getCurrentLanguage()->getCode() . '&menu=' . $alias . '&page=' . ipContent()->getCurrentPage()->getId());
         }
     }
     return $buttons;
 }
Пример #27
0
 public function generateManagedImage($key, $defaultValue = null, $options = array(), $cssClass = null)
 {
     $defaultPlaceholder = ipFileUrl('Ip/Internal/InlineManagement/assets/empty.gif');
     if (isset($options['languageId'])) {
         $languageId = $options['languageId'];
     } else {
         $languageId = ipContent()->getCurrentLanguage()->getId();
     }
     if (isset($options['pageId'])) {
         $pageId = $options['pageId'];
     } else {
         if (ipContent()->getCurrentPage()) {
             $pageId = ipContent()->getCurrentPage()->getId();
         } else {
             $pageId = null;
         }
     }
     // if default value is not defined, we'll add it
     if (empty($defaultValue)) {
         $defaultValue = $defaultPlaceholder;
     }
     $imageStr = $this->dao->getValue(Dao::PREFIX_IMAGE, $key, $languageId, $pageId);
     $image = new Entity\Image($imageStr, $defaultValue);
     $data = array('value' => $image->getImage(), 'defaultValue' => $defaultValue, 'empty' => $image->getImage() == '' || $image->getImage() == $defaultPlaceholder, 'key' => $key, 'options' => $options, 'cssClass' => $cssClass);
     if (ipIsManagementState()) {
         $view = ipView('view/management/image.php', $data);
     } else {
         $view = ipView('view/display/image.php', $data);
     }
     return $view->render();
 }
Пример #28
0
 /**
  * If in management state and the last revision was published, create a new revision.
  * @ignore
  */
 public function getCurrentRevision()
 {
     if ($this->currentRevision !== null) {
         return $this->currentRevision;
     }
     if (!$this->currentPage) {
         return null;
     }
     $revision = null;
     $pageId = $this->currentPage->getId();
     if (ipRequest()->getQuery('_revision') && ipAdminId()) {
         $revisionId = ipRequest()->getQuery('_revision');
         $revision = \Ip\Internal\Revision::getRevision($revisionId);
         if ($revision['pageId'] != $pageId) {
             $revision = null;
         }
     }
     if (!$revision && ipIsManagementState()) {
         $revision = \Ip\Internal\Revision::getLastRevision($pageId);
         if ($revision['isPublished']) {
             $duplicatedId = \Ip\Internal\Revision::duplicateRevision($revision['revisionId']);
             $revision = \Ip\Internal\Revision::getRevision($duplicatedId);
         }
     }
     if (!$revision) {
         $revision = \Ip\Internal\Revision::getPublishedRevision($this->currentPage->getId());
     }
     $this->currentRevision = $revision;
     return $this->currentRevision;
 }
Пример #29
0
<div class="ipsContainer">
    <?php 
if (ipIsManagementState() && isset($error)) {
    echo $error;
} else {
    echo isset($dataTableHtml) ? $dataTableHtml : '';
}
?>
</div>