| Current Path : /home/digilove/public_html/41423/ |
| Current File : //home/digilove/public_html/41423/default_html.php.tar |
home/digilove/public_html/components/com_jmap/views/sitemap/tmpl/default_html.php 0000644 00000015037 15235771561 0024530 0 ustar 00 <?php
/**
* @package JMAP::SITEMAP::components::com_jmap
* @subpackage views
* @subpackage sitemap
* @subpackage tmpl
* @author Joomla! Extensions Store
* @copyright (C) 2021 - Joomla! Extensions Store
* @license GNU/GPLv2 http://www.gnu.org/licenses/gpl-2.0.html
*/
defined ( '_JEXEC' ) or die ( 'Restricted access' );
$classdiv = htmlspecialchars($this->cparams->get ( 'classdiv', 'sitemap' ), ENT_COMPAT, 'UTF-8');
$classdiv = htmlspecialchars($this->cparams->get ( 'pageclass_sfx', $classdiv), ENT_COMPAT, 'UTF-8');
$columnSitemap = $this->cparams->get('column_sitemap', 0);
$sitemapTemplate = $this->cparams->get('sitemap_html_template', '');
$isMindMap = $sitemapTemplate == 'mindmap' ? true : false;
$showTemplate = $this->cparams->get('show_icons', 1);
$hideEmptyCats = $this->cparams->get('hide_empty_cats', 0);
$expandTreeState = array();
// Evaluate if tmpl is used for example for component from a custom HTML module IFrame
$isTmpl = $this->app->input->get('tmpl', false);
echo '<div id="jmap_sitemap" class="' . $classdiv . '" data-template="' . $sitemapTemplate . '">';
// Inject custom CSS styles for mindmap template SCK
if($isMindMap && $showTemplate) {
$subTemplateName = $this->_layout . '_mindmap.php';
if (file_exists ( JPATH_SITE . '/components/com_jmap/views/sitemap/tmpl/' . $subTemplateName )) {
echo $this->loadTemplate ( 'mindmap' );
}
}
// title
$cshowtitle = $this->cparams->get ( 'show_title', 1 );
$headerlevel = $this->cparams->get ( 'headerlevel', $this->cparams->get ( 'headerlevel', 1 ) );
if ($cshowtitle && !$isTmpl) {
$titleToUse = $this->cparams->get ( 'title_type', 'maintitle' );
$defaultTitle = $this->cparams->get ( 'defaulttitle', null );
if($defaultTitle) {
$title = $defaultTitle;
} else {
$title = $this->cparams->get ( $titleToUse, null );
if(!$title) {
$title = $this->menuname;
}
}
echo '<h' . $headerlevel . '>' . $title . '</h' . $headerlevel . '>';
}
if (isset($this->params) && $this->params->get('show_page_heading', 1) && $this->params->get('page_heading', '')): ?>
<div class="page-header">
<?php echo '<h' . ($headerlevel) . '>' . $this->escape($this->params->get('page_heading')) . '</h' . ($headerlevel) . '>';?>
</div>
<?php endif;
if($this->cparams->get('show_toggler', 0) && !$this->goJsSitemap):?>
<div id="jmap_toggler"><?php echo JText::_('COM_JMAP_TOGGLER');?>
<span style="cursor:pointer" id="jmap_toggler_all"><?php echo JText::_('COM_JMAP_TOGGLER_ALL');?></span>
<span style="cursor:pointer" id="jmap_toggler_none"><?php echo JText::_('COM_JMAP_TOGGLER_NONE');?></span>
</div>
<?php endif;
$section_headerlevel = $categorie_headerlevel = $headerlevel + 2;
$title_headerlevel = $headerlevel + 3;
// Init multicolumns
$numColumn = $this->cparams->get('column_maxnum', 3);
$maxPerColumn = 1;
// Find informations for multicolumn data sources
$numDataSources = count($this->data);
$alwaysNewColumn = (bool)($numDataSources <= $numColumn);
if(!$alwaysNewColumn) {
// Rest data sources for last 3rd column
$rest = $numDataSources % $numColumn;
// Integer part for 2 main column
$integralNum = $numDataSources - $rest;
// Max Data Sources assigned to single column, following %3 eg. n-2/n-1/n, 6|6|4, 6|6|5, 6|6|6, 7|7|5, 7|7|6, 7|7|7, etc
$maxPerColumn = ($integralNum / $numColumn) + ($rest ? 1 : 0);
}
// Init foreach cycle on data sources
$datasourceCounter = 0;
$currentColumn = 1;
foreach ( $this->data as $source ) {
if($datasourceCounter === 0) {
echo '<div class="jmapcolumn instance' . $currentColumn . '">';
$currentColumn = 1;
} elseif (($datasourceCounter % $maxPerColumn == 0 || $alwaysNewColumn) && !($isMindMap && $showTemplate)) {
$currentColumn++;
echo '</div>';
echo '<div class="jmapcolumn instance' . $currentColumn . '">';
}
// Store source type to track changes
$currentSourceType = $source->type;
// Strategy pattern source type template visualization
if ($source->type) {
$this->source = $source;
$this->sourceparams = $source->params;
$this->asCategoryTitleField = $this->findAsCategoryTitleField($source);
if($this->sourceparams->get('htmlinclude', 1)) {
$subTemplateName = $this->_layout . '_html_' . $source->type . '.php';
if (file_exists ( JPATH_SITE . '/components/com_jmap/views/sitemap/tmpl/' . $subTemplateName )) {
echo $this->loadTemplate ( 'html_' . $source->type );
}
}
// Assign expand tree status based on source type
switch ($source->type) {
case 'content':
$expandTreeState['com_content'] = $this->sourceparams->get('show_content_expanded', '');
break;
case 'user':
$hasCatsNamespace = (bool)(isset($this->asCategoryTitleField) && $this->asCategoryTitleField) ? '.items' : null;
$expandTreeState[$this->source->chunks->option . $hasCatsNamespace] = $this->sourceparams->get('show_content_expanded', '');
break;
}
}
$datasourceCounter++;
}
echo '</div></div>';
// Inject column styles based on real columns injected - Discard always the mindmap layout
if($columnSitemap && !($isMindMap && $showTemplate)) {
$percentage = (int)(100 / $currentColumn);
$this->document->addStyleDeclaration('div.jmapcolumn{float:left;width: ' . $percentage . '%;}#jmap_sitemap{overflow:hidden;}');
$this->document->addStyleDeclaration('@media (max-width:639px) {div.jmapcolumn {width:100%;float: none;}}');
}
// Hide empty cats if required
if($hideEmptyCats) {
$this->document->addStyleDeclaration('li.noexpandable.last{display:none}');
}
// Manage independant content source tree expand
$this->document->addScriptDeclaration("var jmapExpandContentTree = '" . json_encode($expandTreeState) . "';");
// Add the GOJS Tree Layout application
if($this->cparams->get('treeview_scripts', 1) && $sitemapTemplate == 'gojs') {
$gojsHeight = str_ireplace('px', '', $this->cparams->get('height_canvas', '1000')) . 'px';
$gojsWidth = $this->cparams->get('width_canvas', '100%');
$this->document->addScript('https://storejextensions.org/cdn/go.js', 'text/javascript', $this->scriptsLoading);
$this->document->addStyleDeclaration('#gojsjmaptreelayout{width:' . $gojsWidth . ';height:' . $gojsHeight . ';}');
if($this->cparams->get('auto_height_canvas', 1)) {
$this->document->addStyleDeclaration('#gojsjmaptreelayout > div{display:none}');
}
if($this->cparams->get('instructions_canvas', 1)) {
echo '<div id="gojsjmaptreelayout_instructions" class="' . $classdiv . '">' . JText::_('COM_JMAP_GOJS_INSTRUCTIONS') . '</div>';
}
echo '<div id="gojsjmaptreelayout" class="' . $classdiv . '"></div>';
}