File: /home/confeduphaar/backip-old-files/administrator/components/com_k2/helpers/html.php
<?php
/**
* @version 2.9.x
* @package K2
* @author JoomlaWorks https://www.joomlaworks.net
* @copyright Copyright (c) 2006 - 2018 JoomlaWorks Ltd. All rights reserved.
* @license GNU/GPL license: http://www.gnu.org/copyleft/gpl.html
*/
// no direct access
defined('_JEXEC') or die;
class K2HelperHTML
{
public static function subMenu()
{
$user = JFactory::getUser();
$view = JRequest::getCmd('view');
$view = JString::strtolower($view);
$params = JComponentHelper::getParams('com_k2');
JSubMenuHelper::addEntry(JText::_('K2_ITEMS'), 'index.php?option=com_k2&view=items', $view == 'items');
JSubMenuHelper::addEntry(JText::_('K2_CATEGORIES'), 'index.php?option=com_k2&view=categories', $view == 'categories');
if (!$params->get('lockTags') || $user->gid > 23) {
JSubMenuHelper::addEntry(JText::_('K2_TAGS'), 'index.php?option=com_k2&view=tags', $view == 'tags');
}
JSubMenuHelper::addEntry(JText::_('K2_COMMENTS'), 'index.php?option=com_k2&view=comments', $view == 'comments');
if ($user->gid > 23) {
JSubMenuHelper::addEntry(JText::_('K2_USERS'), 'index.php?option=com_k2&view=users', $view == 'users');
JSubMenuHelper::addEntry(JText::_('K2_USER_GROUPS'), 'index.php?option=com_k2&view=usergroups', $view == 'usergroups');
JSubMenuHelper::addEntry(JText::_('K2_EXTRA_FIELDS'), 'index.php?option=com_k2&view=extrafields', $view == 'extrafields');
JSubMenuHelper::addEntry(JText::_('K2_EXTRA_FIELD_GROUPS'), 'index.php?option=com_k2&view=extrafieldsgroups', $view == 'extrafieldsgroups');
}
JSubMenuHelper::addEntry(JText::_('K2_MEDIA_MANAGER'), 'index.php?option=com_k2&view=media', $view == 'media');
JSubMenuHelper::addEntry(JText::_('K2_INFORMATION'), 'index.php?option=com_k2&view=info', $view == 'info');
}
public static function stateToggler(&$row, $key, $property = 'published', $tasks = array('publish', 'unpublish'), $labels = array('K2_PUBLISH', 'K2_UNPUBLISH'))
{
$task = $row->$property ? $tasks[1] : $tasks[0];
$action = $row->$property ? JText::_($labels[1]) : JText::_($labels[0]);
$class = 'k2Toggler';
$status = $row->$property ? 'k2Active' : 'k2Inactive';
$href = '<a class="'.$class.' '.$status.'" href="javascript:void(0);" onclick="return listItemTask(\'cb'.$key.'\',\''.$task.'\')" title="'.$action.'">'.$action.'</a>';
return $href;
}
public static function loadHeadIncludes($loadFramework = false, $jQueryUI = false, $adminHeadIncludes = false, $adminModuleIncludes = false)
{
$application = JFactory::getApplication();
$document = JFactory::getDocument();
$user = JFactory::getUser();
$params = K2HelperUtilities::getParams('com_k2');
$option = JRequest::getCmd('option');
$view = strtolower(JRequest::getWord('view', 'items'));
$task = JRequest::getCmd('task');
$jQueryHandling = $params->get('jQueryHandling', '1.9.1');
if ($document->getType() == 'html') {
if ($loadFramework && $view != 'media') {
if (version_compare(JVERSION, '1.6.0', 'ge')) {
JHtml::_('behavior.framework');
} else {
JHTML::_('behavior.mootools');
}
}
if (version_compare(JVERSION, '3.0.0', 'ge')) {
JHtml::_('jquery.framework');
}
// jQuery
if (version_compare(JVERSION, '3.0.0', 'lt')) {
// Frontend
if ($application->isSite()) {
// B/C for saved old options
if ($jQueryHandling) {
if ($jQueryHandling == '1.7remote') {
$jQueryHandling = '1.7.2';
}
if ($jQueryHandling == '1.8remote') {
$jQueryHandling = '1.8.3';
}
if ($jQueryHandling == '1.9remote') {
$jQueryHandling = '1.9.1';
}
if ($jQueryHandling == '1.10remote') {
$jQueryHandling = '1.10.2';
}
if ($jQueryHandling == '1.11remote') {
$jQueryHandling = '1.11.3';
}
if ($jQueryHandling == '1.12remote') {
$jQueryHandling = '1.12.4';
}
$document->addScript('https://cdnjs.cloudflare.com/ajax/libs/jquery/'.$jQueryHandling.'/jquery.min.js');
}
}
// Backend
if ($application->isAdmin()) {
if (($option == 'com_k2' && ($view == 'item' || $view == 'category')) || $option == 'com_menus') {
$document->addScript('https://cdnjs.cloudflare.com/ajax/libs/jquery/1.8.3/jquery.min.js');
} else {
$document->addScript('https://cdnjs.cloudflare.com/ajax/libs/jquery/1.12.4/jquery.min.js');
}
}
}
// jQueryUI
if ($jQueryUI) {
// Load version 1.8.24 for tabs & sortables (called the "old" way)...
if (($option == 'com_k2' && ($view == 'item' || $view == 'category')) || $option == 'com_menus') {
$document->addScript('https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.8.24/jquery-ui.min.js');
}
// Load latest version for the "media" view & modules only
if (($option == 'com_k2' && $view == 'media') || $option == 'com_modules' || $option == 'com_advancedmodules') {
$document->addStyleSheet('https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/themes/smoothness/jquery-ui.min.css');
$document->addScript('https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js');
}
}
// Everything else...
if ($application->isAdmin() || $adminHeadIncludes) {
// JS
$isBackend = ($application->isAdmin()) ? ' k2IsBackend' : '';
$isTask = ($task) ? ' k2TaskIs'.ucfirst($task) : '';
$cssClass = 'isJ'.K2_JVERSION.' k2ViewIs'.ucfirst($view).''.$isTask.''.$isBackend;
$document->addScriptDeclaration("
// Set K2 version as global JS variable
K2JVersion = '".K2_JVERSION."';
// Set Joomla version as class in the 'html' tag
(function(){
var addedClass = '".$cssClass."';
if (document.getElementsByTagName('html')[0].className !== '') {
document.getElementsByTagName('html')[0].className += ' '+addedClass;
} else {
document.getElementsByTagName('html')[0].className = addedClass;
}
})();
// K2 Language Strings
var K2_THE_ENTRY_IS_ALREADY_IN_THE_LIST = '".JText::_('K2_THE_ENTRY_IS_ALREADY_IN_THE_LIST')."';
var K2_REMOVE_THIS_ENTRY = '".JText::_('K2_REMOVE_THIS_ENTRY')."';
var K2_THE_ENTRY_WAS_ADDED_IN_THE_LIST = '".JText::_('K2_THE_ENTRY_WAS_ADDED_IN_THE_LIST')."';
");
$document->addScript(JURI::root(true).'/media/k2/assets/js/k2.backend.js?v='.K2_CURRENT_VERSION.'&sitepath='.JURI::root(true).'/');
// NicEdit
if ($option == 'com_k2' && $view == 'item') {
$document->addScript(JURI::root(true).'/media/k2/assets/vendors/bkirchoff/nicedit/nicEdit.js?v='.K2_CURRENT_VERSION);
}
// Media (elFinder)
if ($view == 'media') {
$document->addStyleSheet(JURI::root(true).'/media/k2/assets/vendors/studio-42/elfinder/css/elfinder.min.css?v='.K2_CURRENT_VERSION);
$document->addStyleSheet(JURI::root(true).'/media/k2/assets/vendors/studio-42/elfinder/css/theme.css?v='.K2_CURRENT_VERSION);
$document->addScript(JURI::root(true).'/media/k2/assets/vendors/studio-42/elfinder/js/elfinder.min.js?v='.K2_CURRENT_VERSION);
} else {
JHTML::_('behavior.tooltip');
if (version_compare(JVERSION, '3.0.0', 'ge')) {
if ($view == 'item' && !$params->get('taggingSystem')) {
JHtml::_('formbehavior.chosen', 'select:not(#selectedTags, #tags)');
} else {
JHtml::_('formbehavior.chosen', 'select');
}
}
}
// Flatpickr
if ($view == 'item' || $view == 'extrafield') {
$document->addStyleSheet('https://cdnjs.cloudflare.com/ajax/libs/flatpickr/4.5.1/flatpickr.min.css');
$document->addScript('https://cdnjs.cloudflare.com/ajax/libs/flatpickr/4.5.1/flatpickr.min.js');
$document->addCustomTag('<!--[if IE 9]><link rel="stylesheet" type="text/css" href="https://cdnjs.cloudflare.com/ajax/libs/flatpickr/4.5.1/ie.css" /><![endif]-->');
}
// Magnific Popup
$document->addStyleSheet('https://cdnjs.cloudflare.com/ajax/libs/magnific-popup.js/1.1.0/magnific-popup.min.css');
$document->addStyleDeclaration('
/* K2 - Magnific Popup Overrides */
.mfp-iframe-holder {padding:10px;}
.mfp-iframe-holder .mfp-content {max-width:100%;width:100%;height:100%;}
.mfp-iframe-scaler iframe {background:#fff;padding:10px;box-sizing:border-box;box-shadow:none;}
');
$document->addScript('https://cdnjs.cloudflare.com/ajax/libs/magnific-popup.js/1.1.0/jquery.magnific-popup.min.js');
// Fancybox
if ($view == 'item' || $view == 'items' || $view == 'categories') {
$document->addStyleSheet('https://cdnjs.cloudflare.com/ajax/libs/fancybox/3.4.2/jquery.fancybox.min.css');
$document->addScript('https://cdnjs.cloudflare.com/ajax/libs/fancybox/3.4.2/jquery.fancybox.min.js');
}
// CSS
if ($option == 'com_k2' || $adminModuleIncludes) {
$document->addStyleSheet('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css');
}
if ($option == 'com_k2') {
$document->addStyleSheet(JURI::root(true).'/media/k2/assets/css/k2.backend.css?v='.K2_CURRENT_VERSION);
}
if ($adminModuleIncludes) {
$document->addStyleSheet(JURI::root(true).'/media/k2/assets/css/k2.global.css?v='.K2_CURRENT_VERSION);
}
}
// Frontend only
if ($application->isSite()) {
// Magnific Popup
if (!$user->guest || ($option == 'com_k2' && $view == 'item') || defined('K2_JOOMLA_MODAL_REQUIRED')) {
$document->addStyleSheet('https://cdnjs.cloudflare.com/ajax/libs/magnific-popup.js/1.1.0/magnific-popup.min.css');
$document->addStyleDeclaration('
/* K2 - Magnific Popup Overrides */
.mfp-iframe-holder {padding:10px;}
.mfp-iframe-holder .mfp-content {max-width:100%;width:100%;height:100%;}
.mfp-iframe-scaler iframe {background:#fff;padding:10px;box-sizing:border-box;box-shadow:none;}
');
$document->addScript('https://cdnjs.cloudflare.com/ajax/libs/magnific-popup.js/1.1.0/jquery.magnific-popup.min.js');
}
// JS
$document->addScript(JURI::root(true).'/media/k2/assets/js/k2.frontend.js?v='.K2_CURRENT_VERSION.'&sitepath='.JURI::root(true).'/');
// Add related CSS to the <head>
if ($params->get('enable_css')) {
jimport('joomla.filesystem.file');
$template = JRequest::getCmd('template');
// Simple Line Icons
$document->addStyleSheet('https://cdnjs.cloudflare.com/ajax/libs/simple-line-icons/2.4.1/css/simple-line-icons.min.css');
// k2.css
if (isset($template) && JFile::exists(JPATH_SITE.'/templates/'.$template.'/css/k2.css')) {
$document->addStyleSheet(JURI::root(true).'/templates/'.$template.'/css/k2.css?v='.K2_CURRENT_VERSION);
} elseif (JFile::exists(JPATH_SITE.'/templates/'.$application->getTemplate().'/css/k2.css')) {
$document->addStyleSheet(JURI::root(true).'/templates/'.$application->getTemplate().'/css/k2.css?v='.K2_CURRENT_VERSION);
} else {
$document->addStyleSheet(JURI::root(true).'/components/com_k2/css/k2.css?v='.K2_CURRENT_VERSION);
}
// k2.print.css
if (JRequest::getInt('print') == 1) {
if (isset($template) && JFile::exists(JPATH_SITE.'/templates/'.$template.'/css/k2.print.css')) {
$document->addStyleSheet(JURI::root(true).'/templates/'.$template.'/css/k2.print.css?v='.K2_CURRENT_VERSION, 'text/css', 'print');
} elseif (JFile::exists(JPATH_SITE.'/templates/'.$application->getTemplate().'/css/k2.print.css')) {
$document->addStyleSheet(JURI::root(true).'/templates/'.$application->getTemplate().'/css/k2.print.css?v='.K2_CURRENT_VERSION, 'text/css', 'print');
} else {
$document->addStyleSheet(JURI::root(true).'/components/com_k2/css/k2.print.css?v='.K2_CURRENT_VERSION, 'text/css', 'print');
}
}
}
}
}
}
}