Your IP : 216.73.216.85


Current Path : /home/smartconb/www/armencom33/modules/mod_falang/tmpl/
Upload File :
Current File : /home/smartconb/www/armencom33/modules/mod_falang/tmpl/default.php

<?php
/**
 * @package     Falang for Joomla!
 * @author      Stéphane Bouey <stephane.bouey@faboba.com> - http://www.faboba.com
 * @license     GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 * @copyright   Copyright (C) 2010-2023. Faboba.com All rights reserved.
 */

// No direct access to this file
defined('_JEXEC') or die;

use Joomla\CMS\Factory;
use Joomla\CMS\HTML\HTMLHelper;
use Joomla\CMS\Component\ComponentHelper;
use Joomla\CMS\Language\LanguageHelper;
use Joomla\CMS\Plugin\PluginHelper;
use Joomla\Registry\Registry;
use Joomla\CMS\Uri\Uri;
use Joomla\CMS\Helper\ModuleHelper;

HTMLHelper::_('stylesheet', 'mod_falang/template.css', array('version' => 'auto', 'relative' => true));

//add alternate tag
$doc = Factory::getDocument();
$default_lang = ComponentHelper::getParams('com_languages')->get('site', 'en-GB');
$current_lang = Factory::getLanguage()->getTag();
$languagesCode = LanguageHelper::getLanguages('lang_code');

$sef = Factory::getApplication()->getCfg('sef');

/* Support of alternate tag bassed on language filter parameters  */
$remove_default_prefix = 0;
//set default in case of language filter is not use (ex : joomsef)
$alternate_meta    = 1;
$xdefault          = 1;
$xdefault_language = $default_lang;

$filter_plugin = PluginHelper::getPlugin('system', 'languagefilter');
if (!empty($filter_plugin)) {
    $filter_plugin_params  = new Registry($filter_plugin->params);
    $remove_default_prefix = $filter_plugin_params->get('remove_default_prefix','0');
    $alternate_meta        = $filter_plugin_params->get('alternate_meta', 1);
    $xdefault              = $filter_plugin_params->get('xdefault', 1);
    $xdefault_language     = $filter_plugin_params->get('xdefault_language', $default_lang);
}

// hack to fix the fact that $language->link already contains the rootpath of the joomla site
// ex falang3/en for http//localhost/falang3

$uri_base = substr(URI::base(false), 0,strlen(URI::base(false))-strlen(URI::base(true)));
foreach($list as $language) {
    if ($alternate_meta && $language->display == '1')
    {
        if ($sef == '1')
        {
            $link = $uri_base . substr($language->link, 1);
            if (($language->lang_code == $default_lang) && $remove_default_prefix == '1')
            {
                $link = preg_replace('|/' . $language->sef . '/|', '/', $link, 1);
                //remove last slash for default language
                $link = rtrim($link, "/");
                $doc->addHeadLink($link, 'alternate', 'rel', ['hreflang' => $language->sef]);
            }
            else
            {
                $doc->addHeadLink($link, 'alternate', 'rel', ['hreflang' => $language->sef]);
            }
        }
        else
        {
            $doc->addHeadLink($language->link, 'alternate', 'rel', ['hreflang' => $language->sef]);
        }

        if ($xdefault)
        {
            $loc_xdefault_language = ($xdefault_language == 'default') ? $default_lang : $xdefault_language;

            if (($loc_xdefault_language == $language->lang_code) && isset($languagesCode[$loc_xdefault_language]))
            {
                // Use a custom tag because addHeadLink is limited to one URI per tag
                if ($sef == '1')
                {
                    // Use a custom tag because addHeadLink is limited to one URI per tag
                    $doc->addCustomTag('<link href="' . $link . '" rel="alternate" hreflang="x-default" />');
                }
                else
                {
                    // Use a custom tag because addHeadLink is limited to one URI per tag
                    $doc->addCustomTag('<link href="' . $language->link . '" rel="alternate" hreflang="x-default" />');
                }
            }

        }
    }

}

?>

<?php
// Support of language domain from yireo
$yireo_plugin = PluginHelper::getPlugin('system', 'languagedomains');
if (!empty($yireo_plugin)) {
    foreach($list as $language):
        if (empty($language->link) || in_array($language->link, array('/', 'index.php'))) $language->link = '/?lang='.$language->sef;
    endforeach;
}
?>


<div class="mod-languages<?php echo $moduleclass_sfx ?> <?php echo ($params->get('dropdown', 1) && $params->get('advanced_dropdown', 1)) ? ' advanced-dropdown ad-'.$module->id : '';?>">
<?php if ($headerText) : ?>
	<div class="pretext"><p><?php echo $headerText; ?></p></div>
<?php endif; ?>

<?php if ($params->get('dropdown',1)) : ?>
    <?php require ModuleHelper::getLayoutPath('mod_falang', $params->get('layout', 'default') . '_dropdown'); ?>
<?php else : ?>
    <?php require ModuleHelper::getLayoutPath('mod_falang', $params->get('layout', 'default') . '_list'); ?>
<?php endif; ?>

<?php if ($footerText) : ?>
	<div class="posttext"><p><?php echo $footerText; ?></p></div>
<?php endif; ?>
</div>