| Server IP : 46.105.57.169 / Your IP : 216.73.217.35 Web Server : Apache System : Linux webm002.cluster120.gra.hosting.ovh.net 6.18.42-ovh-vps-grsec-zfs+ #1 SMP PREEMPT_DYNAMIC Wed Aug 5 15:59:48 CEST 2026 x86_64 User : verseaumee ( 152031) PHP Version : 8.5.7 Disable Function : _dyuweyrj4,_dyuweyrj4r,dl MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/verseaumee/123click/assets/ |
Upload File : |
PK ! :x�%9 9 tmpl/default.phpnu &1i� <?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-2017. Faboba.com All rights reserved.
*/
// No direct access to this file
defined('_JEXEC') or die;
JHtml::_('stylesheet', 'mod_falang/template.css', array(), true);
//add alternate tag
$doc = JFactory::getDocument();
$default_lang = JComponentHelper::getParams('com_languages')->get('site', 'en-GB');
$current_lang = JFactory::getLanguage()->getTag();
$languagesCode = JLanguageHelper::getLanguages('lang_code');
$sef = JFactory::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 = JPluginHelper::getPlugin('system', 'languagefilter');
if (!empty($filter_plugin)) {
$filter_plugin_params = new JRegistry($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(JURI::base(false), 0,strlen(JURI::base(false))-strlen(JURI::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->addCustomTag('<link rel="alternate" href="' . $link . '" hreflang="' . $language->sef . '" />');
}
else
{
$doc->addCustomTag('<link rel="alternate" href="' . $link . '" hreflang="' . $language->sef . '" />');
}
}
else
{
$doc->addCustomTag('<link rel="alternate" href="' . $language->link . '" 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')
{
$doc->addCustomTag('<link rel="alternate" href="' . $link . '" hreflang="x-default" />');
}
else
{
$doc->addCustomTag('<link rel="alternate" href="' . $language->link . '" hreflang="x-default" />');
}
}
}
}
}
?>
<?php
// Support of language domain from yireo
$yireo_plugin = JPluginHelper::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' : '';?>">
<?php if ($headerText) : ?>
<div class="pretext"><p><?php echo $headerText; ?></p></div>
<?php endif; ?>
<?php if ($params->get('dropdown',1)) : ?>
<?php require JModuleHelper::getLayoutPath('mod_falang', $params->get('layout', 'default') . '_dropdown'); ?>
<?php else : ?>
<?php require JModuleHelper::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>
PK ! �a �- - tmpl/index.htmlnu &1i� <html><body bgcolor="#FFFFFF"></body></html>
PK ! b�>V< < tmpl/default_list.phpnu &1i� <?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-2017. Faboba.com All rights reserved.
*/
// No direct access to this file
defined('_JEXEC') or die;
?>
<ul class="<?php echo $params->get('inline', 1) ? 'lang-inline' : 'lang-block';?>">
<?php foreach($list as $language):?>
<!-- >>> [FREE] >>> -->
<?php if ($params->get('show_active', 0) || !$language->active):?>
<li class="<?php echo $language->active ? 'lang-active' : '';?>" dir="<?php echo JLanguage::getInstance($language->lang_code)->isRTL() ? 'rtl' : 'ltr' ?>">
<?php if ($language->display) { ?>
<a href="<?php echo $language->link;?>">
<?php if ($params->get('image', 1)):?>
<?php echo JHtml::_('image', 'mod_falang/'.$language->image.'.gif', $language->title_native, array('title'=>$language->title_native), true);?>
<?php endif; ?>
<?php if ($params->get('show_name', 1)):?>
<?php echo $params->get('full_name', 1) ? $language->title_native : strtoupper($language->sef);?>
<?php endif; ?>
</a>
<?php } else { ?>
<?php if ($params->get('image', 1)):?>
<?php echo JHtml::_('image', 'mod_falang/'.$language->image.'.gif', $language->title_native, array('title'=>$language->title_native,'style'=>'opacity:0.5'), true);?>
<?php endif; ?>
<?php if ($params->get('show_name', 1)):?>
<?php echo $params->get('full_name', 1) ? $language->title_native : strtoupper($language->sef);?>
<?php endif; ?>
<?php } ?>
</li>
<?php endif;?>
<!-- <<< [FREE] <<< -->
<?php endforeach;?>
</ul>
PK ! ��� � tmpl/default_dropdown.phpnu &1i� <?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-2017. Faboba.com All rights reserved.
*/
// No direct access to this file
defined('_JEXEC') or die;
?>
<form name="lang" method="post" action="<?php echo htmlspecialchars(JUri::current()); ?>">
<?php if (!$params->get('advanced_dropdown',0)) : ?>
<select class="inputbox" onchange="document.location.replace(this.value);" >
<?php foreach($list as $language):?>
<?php if ($language->display) { ?>
<option value="<?php echo $language->link;?>" <?php echo !empty($language->active) ? 'selected="selected"' : ''?>><?php echo $language->title_native;?></option>
<?php } else { ?>
<option disabled="disabled" style="opacity: 0.5" value="<?php echo $language->link;?>" <?php echo !empty($language->active) ? 'selected="selected"' : ''?>><?php echo $language->title_native;?></option>
<?php } ?>
<?php endforeach; ?>
</select>
<?php else : ?>
<script type="application/javascript">
jQuery(function() {
var speed = 150;
jQuery('div.advanced-dropdown').hover(
function()
{
jQuery(this).find('ul').filter(':not(:animated)').slideDown({duration: speed});
},
function()
{
jQuery(this).find('ul').filter(':not(:animated)').slideUp({duration: speed});
}
);
});
</script>
<!-- >>> [FREE] >>> -->
<?php foreach($list as $language):?>
<?php if ($language->active) :?>
<a href="javascript:;" class="langChoose">
<?php if ($params->get('image', 1)):?>
<?php echo JHtml::_('image', 'mod_falang/'.$language->image.'.gif', $language->title_native, array('title'=>$language->title_native), $relativePath);?>
<?php else : ?>
<?php echo $params->get('full_name', 1) ? $language->title_native : strtoupper($language->sef);?>
<?php endif; ?>
<span class="caret"></span>
</a>
<?php endif; ?>
<?php endforeach;?>
<ul class="<?php echo $params->get('inline', 1) ? 'lang-inline' : 'lang-block';?>" style="display: none">
<?php foreach($list as $language):?>
<?php if ($params->get('show_active', 0) || !$language->active):?>
<li class="<?php echo $language->active ? 'lang-active' : '';?>" dir="<?php echo JLanguage::getInstance($language->lang_code)->isRTL() ? 'rtl' : 'ltr' ?>">
<?php if ($language->display) { ?>
<a href="<?php echo $language->link;?>">
<?php if ($params->get('image', 1)):?>
<?php echo JHtml::_('image', 'mod_falang/'.$language->image.'.gif', $language->title_native, array('title'=>$language->title_native), $relativePath);?>
<?php endif; ?>
<?php if ($params->get('show_name', 1)):?>
<?php echo $params->get('full_name', 1) ? $language->title_native : strtoupper($language->sef);?>
<?php endif; ?>
<?php if($language->active){?> <i class="fa fa-check lang_checked"></i> <?php } ?>
</a>
<?php } else { ?>
<?php if ($params->get('image', 1)):?>
<?php echo JHtml::_('image', 'mod_falang/'.$language->image.'.gif', $language->title_native, array('title'=>$language->title_native,'style'=>'opacity:0.5'), $relativePath);?>
<?php else : ?>
<?php if ($params->get('show_name', 1)):?>
<?php echo $params->get('full_name', 1) ? $language->title_native : strtoupper($language->sef);?>
<?php endif; ?>
<?php if($language->active){?> <i class="fa fa-check lang_checked"></i> <?php } ?>
<?php endif; ?>
<?php } ?>
</li>
<?php endif;?>
<?php endforeach;?>
</ul>
<!-- <<< [FREE] <<< -->
<?php endif; ?>
</form>
PK ! �a �- -
index.htmlnu &1i� <html><body bgcolor="#FFFFFF"></body></html>
PK ! ֟�5�c �c
helper.phpnu &1i� <?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-2017. Faboba.com All rights reserved.
*/
// No direct access to this file
defined('_JEXEC') or die;
jimport('joomla.language.helper');
jimport('joomla.utilities.utility');
jimport('joomla.html.parameter');
jimport('joomla.filesystem.file');
JLoader::register('MenusHelper', JPATH_ADMINISTRATOR . '/components/com_menus/helpers/menus.php');
abstract class modFaLangHelper
{
public static function getList(&$params)
{
$lang = JFactory::getLanguage();
$languages = JLanguageHelper::getLanguages();
$app = JFactory::getApplication();
$levels = JFactory::getUser()->getAuthorisedViewLevels();
//use to remove default language code in url
$lang_codes = JLanguageHelper::getLanguages('lang_code');
$default_lang = JComponentHelper::getParams('com_languages')->get('site', 'en-GB');
$default_sef = $lang_codes[$default_lang]->sef;
jimport('joomla.application.component.helper');
$cparams = JComponentHelper::getParams('com_falang');
$menu = $app->getMenu();
$active = $menu->getActive();
$uri = JURI::getInstance();
//falang 2.9.5 need to clone uri
$router = JRouter::getInstance($app->getName());
$tmpuri = clone($uri);
$router->parse($tmpuri);
$vars = $router->getVars();
//On edit mode the flag/name must be disabled
// Get menu home items
$homes = array();
foreach ($menu->getMenu() as $item)
{
if ($item->home)
{
$homes[$item->language] = $item;
}
}
//methond valid since Joomla 3.2+
$assoc = JLanguageAssociations::isEnabled();
if ($assoc) {
if ($active) {
$associations = MenusHelper::getAssociations($active->id);
}
// Load component associations
$class = str_replace('com_', '', $app->input->get('option')) . 'HelperAssociation';
JLoader::register($class, JPATH_COMPONENT_SITE . '/helpers/association.php');
if (class_exists($class) && is_callable(array($class, 'getAssociations')))
{
//don't load association for eshop
if ( $class != 'eshopHelperAssociation'){
$cassociations = call_user_func(array($class, 'getAssociations'));
}
}
}
foreach($languages as $i => &$language) {
// Do not display language without frontend UI, check user access level
if ((!JLanguage::exists($language->lang_code)) || ($language->access && !in_array($language->access, $levels))) {
unset($languages[$i]);
}
$language_filter = JLanguageMultilang::isEnabled();
//set language active before language filter use for sh404 notice
$language->active = $language->lang_code == $lang->getTag();
//since v1.4 change in 1.5 , ex rsform preview don't have active
//this method don't set display for component association set after
if (isset($active)){
$language->display = ($active->language == '*' || $language->active)?true:false;
} else {
$language->display = true;
}
if (modFaLangHelper::isEditMode()){
$language->display = false;
}
if ($language_filter) {
//use component association
if (isset($cassociations[$language->lang_code])) {
$language->link = JRoute::_($cassociations[$language->lang_code] . '&lang=' . $language->sef);
//fix mijoshop link
if (isset($_GET['mijoshop_store_id'])) {
$_link = explode('?', $language->link);
$language->link = $_link[0];
}
//if association existe for this language display flag.
$language->display = true;
}elseif (isset($associations[$language->lang_code]) && $menu->getItem($associations[$language->lang_code])) {
//use menu association.
$language->display = true;
$itemid = $associations[$language->lang_code];
//if ($app->input->get->get(‘option’, ‘’) !== ‘com_mojishop’) {
//since 2.9.3 it's no more necessary
// if (isset($_GET['option']) && $_GET['option'] != 'com_mijoshop') {
// $vars['Itemid'] = $itemid;
// }
$language->link = JRoute::_('index.php?lang=' . $language->sef . '&Itemid=' . $itemid);
}
else {
//sef case
if ($app->getCfg('sef')=='1') {
//sefToolsEnabled
if (modFaLangHelper::mijosefToolEnabled()) {
$itemid = isset($homes[$language->lang_code]) ? $homes[$language->lang_code]->id : $homes['*']->id;
if ($_GET['option'] != 'com_mijoshop') {
$language->link = JRoute::_('index.php?lang='.$language->sef.'&Itemid='.$itemid);
} else {
$language->link = JRoute::_('index.php?lang='.$language->sef);
}
continue;
}
if (modFaLangHelper::sh404Enabled()){
//TODO Check when the following JSite::getRouter(); is removed
$router = JSite::getRouter();
$urlvars = $router->getVars();
$urlvars['lang'] = $language->sef;
$url = 'index.php?'.JURI::buildQuery($urlvars);
$language->link = JRoute::_($url);
continue;
}
//workaround to fix index language
$vars['lang'] = $language->sef;
//fix for home menu on Joomla 3.7
if (isset($vars['Itemid']) && ($vars['Itemid'] == $homes['*']->id) ){
$language->link = JRoute::_('index.php?lang=' . $language->sef . '&Itemid=' . $homes['*']->id);
continue;
}
//2.9.0
//look on menu_show for translated language by default is disabled due to extra query
if ($cparams->get('advanced_menu_show',false) && !empty($vars['Itemid']))
{
$menu_show = 1;//default visible
if ($lang->getTag() != $language->lang_code)
{
$fManager = FalangManager::getInstance();
$id_lang = $fManager->getLanguageID($language->lang_code);
$db = JFactory::getDbo();
// get translated path if exist
$query = $db->getQuery(true);
$query->select('fc.value')
->from('#__falang_content fc')
->where('fc.reference_id = ' . (int) $vars['Itemid'])
->where('fc.language_id = ' . (int) $id_lang)
->where('fc.reference_field = \'params\'')
->where('fc.published = 1')
->where('fc.reference_table = \'menu\'');
$db->setQuery($query);
$translatedParams = $db->loadResult();
$registry = new \Joomla\Registry\Registry();
$registry->loadString($translatedParams);
$menu_show = (int)$registry->get('menu_show','1');
} else {
$_menu = $menu->getItem($vars['Itemid']);
$_menu_params = $_menu->getParams();
$menu_show = (int)$_menu_params->get('menu_show','1');
}
if ($menu_show == 0){$language->display = false;}
}
//fin 2.8.45
//since 2.2.1
//case of article category view
//set the language used to reload category with the right language
$jfm = FalangManager::getInstance();
if (!empty($vars['view']) && $vars['view'] == 'category' && !empty($vars['option']) && $vars['option'] == 'com_content') {
if (($language->lang_code != $default_lang) || ($lang->getTag() != $default_lang) ){
JCategories::$instances = array();
$jfm->setLanguageForUrlTranslation($language->lang_code);
}
}
//end since 2.2.1
//case of category article
//set the language used to reload category with the right language
if (!empty($vars['view']) && $vars['view'] == 'article' && !empty($vars['option']) && $vars['option'] == 'com_content') {
//since 2.2.1
if (($language->lang_code != $default_lang) || ($lang->getTag() != $default_lang) ){
JCategories::$instances = array();
$jfm->setLanguageForUrlTranslation($language->lang_code);
}
//end 2.2.1
JModelLegacy::addIncludePath(JPATH_SITE.'/components/com_content/models', 'ContentModel');
$model = JModelLegacy::getInstance('Article', 'ContentModel', array('ignore_request'=>true));
$appParams = JFactory::getApplication()->getParams();
$model->setState('params', $appParams);
//in sef some link have this url
//index.php/component/content/article?id=39
//id is not in vars but in $tmpuri
if (empty($vars['id'])) {
$tmpid = $tmpuri->getVar('id');
if (!empty($tmpid)) {
$vars['id'] = $tmpuri->getVar('id');
} else {
continue;
}
}
$item = $model->getItem($vars['id']);
//v2.9.0
//for specific language item
//set display to false exept for the display language and for associated item.
if ($item->language != '*' && $language->lang_code != $item->language){
$language->display = false;
}
//get alias of content item without the id , so i don't have the translation
$db = JFactory::getDbo();
$query = $db->getQuery(true);
$query->select('alias')->from('#__content')->where('id = ' . (int) $item->id);
$db->setQuery($query);
$alias = $db->loadResult();
$vars['id'] = $item->id.':'.$alias;
$vars['catid'] =$item->catid.':'.$item->category_alias;
}
//2.9.0
//case of k2 item with specific language set
if (!empty($vars['view']) && $vars['view'] == 'item' && !empty($vars['option']) && $vars['option'] == 'com_k2') {
JModelLegacy::addIncludePath(JPATH_SITE.'/components/com_k2/models', 'K2Model');
$model = JModelLegacy::getInstance('Item', 'K2Model', array('ignore_request'=>true));
$item = $model->getData();
if ($item->language != '*' && $language->lang_code != $item->language){
$language->display = false;
}
}
//end 2.9.0
//new version 1.5
//case for k2 item alias write twice
//since k2 v 1.6.9 $vars['task'] don't exist.
//v2.2.3 fix for archive notice
if (isset($vars['option']) && $vars['option'] == 'com_k2'){
if (isset($vars['task']) && isset($vars['id']) && ($vars['task'] == $vars['id'])){
unset($vars['id']);
}
}
//new 2.5.0
//fix for virtuemart url with showall, limitstart, limit on productsdetail page
if (isset($vars['option']) && $vars['option'] == 'com_virtuemart'){
if (isset($vars['view']) && $vars['view'] == 'productdetails'){
vmLanguage::setLanguageByTag($language->lang_code);
unset($vars['showall']);
unset($vars['limitstart']);
unset($vars['limit']);
}
}
//fix for hikashop url with start on product page
if (isset($vars['option']) && $vars['option'] == 'com_hikashop'){
if (isset($vars['view']) && $vars['view'] == 'product'){
unset($vars['start']);
}
}
$url = 'index.php?'.JURI::buildQuery($vars);
$language->link = JRoute::_($url);
//since 2.2.1
//on restaure les categories pour le cas des liste de categories
if (!empty($vars['view']) && $vars['view'] == 'category' && !empty($vars['option']) && $vars['option'] == 'com_content') {
if (($language->lang_code != $default_lang) || ($lang->getTag() != $default_lang)) {
JCategories::$instances = array();
$jfm->setLanguageForUrlTranslation(null);
}
}
if (!empty($vars['view']) && $vars['view'] == 'article' && !empty($vars['option']) && $vars['option'] == 'com_content') {
if (($language->lang_code != $default_lang) || ($lang->getTag() != $default_lang)) {
JCategories::$instances = array();
$jfm->setLanguageForUrlTranslation(null);
}
}
//end 2.2.1
//TODO check performance 3 queries by languages -1
/**
* Replace the slug from the language switch with correctly translated slug.
* $language->lang_code language de la boucle (icone lien)
* $lang->getTag() => language en cours sur le site
* $default_lang langue par default du site
*/
if($lang->getTag() != $language->lang_code && !empty($vars['Itemid']))
{
$fManager = FalangManager::getInstance();
$id_lang = $fManager->getLanguageID($language->lang_code);
$db = JFactory::getDbo();
// get translated path if exist
$query = $db->getQuery(true);
$query->select('fc.value')
->from('#__falang_content fc')
->where('fc.reference_id = '.(int)$vars['Itemid'])
->where('fc.language_id = '.(int) $id_lang )
->where('fc.reference_field = \'path\'')
->where('fc.published = 1')
->where('fc.reference_table = \'menu\'');
$db->setQuery($query);
$translatedPath = $db->loadResult();
// $translatedPath not exist if not translated or site default language
// don't pass id to the query , so no translation given by falang
$query = $db->getQuery(true);
$query->select('m.path')
->from('#__menu m')
->where('m.id = '.(int)$vars['Itemid']);
$db->setQuery($query);
$originalPath = $db->loadResult();
$pathInUse = null;
//si on est sur une page traduite on doit récupérer la traduction du path en cours
if ($default_lang != $lang->getTag() ) {
$id_lang = $fManager->getLanguageID($lang->getTag());
// get translated path if exist
$query = $db->getQuery(true);
$query->select('fc.value')
->from('#__falang_content fc')
->where('fc.reference_id = '.(int)$vars['Itemid'])
->where('fc.language_id = '.(int) $id_lang )
->where('fc.reference_field = \'path\'')
->where('fc.published = 1')
->where('fc.reference_table = \'menu\'');
$db->setQuery($query);
$pathInUse = $db->loadResult();
}
if (!isset($translatedPath)) {
$translatedPath = $originalPath;
}
// not exist if not translated or site default language
if (!isset($pathInUse)) {
$pathInUse = $originalPath ;
}
//make replacement in the url
//si language de boucle et language site
if($language->lang_code == $default_lang) {
if (isset($pathInUse) && isset($originalPath)){
$language->link = str_replace($pathInUse, $originalPath, $language->link);
}
} else {
if (isset($pathInUse) && isset($translatedPath)){
$language->link = str_replace($pathInUse, $translatedPath, $language->link);
}
}
}
}
//default case
else
{
//since 3.4.3 JUri Reset needed
//fix problem on mod_login (same position before falang module
//fix 2.8.4
// bug when menu item translation don't link to the same item or type
// need to load the path of the ItemId
//si on est sur une page traduite on doit récupérer la traduction du path en cours
JUri::reset();
$uri = JUri::getInstance();
$uri->setVar('lang', $language->sef);
$input = JFactory::getApplication()->input;
$vars = $input->getArray();
//set language link
$language->link = modFaLangHelper::getLinkWithoutSefEnabled($language, $lang, $default_lang, $vars);
//v2.9.0
//for specific language item on content
//set display to false exept for the display language and for associated item.
if ($uri->getVar('view') == 'article' && $uri->getVar('option') == 'com_content')
{
JModelLegacy::addIncludePath(JPATH_SITE.'/components/com_content/models', 'ContentModel');
$model = JModelLegacy::getInstance('Article', 'ContentModel', array('ignore_request'=>true));
$appParams = JFactory::getApplication()->getParams();
$model->setState('params', $appParams);
$item = $model->getItem($uri->getVar('id'));
if ($item->language != '*' && $language->lang_code != $item->language)
{
$language->display = false;
}
}//end 2.9.0
//2.9.0
//case of k2 item with specific language set
if ($uri->getVar('view') == 'item' && $uri->getVar('option') == 'com_k2') {
JModelLegacy::addIncludePath(JPATH_SITE.'/components/com_k2/models', 'K2Model');
$model = JModelLegacy::getInstance('Item', 'K2Model', array('ignore_request'=>true));
$item = $model->getData();
if ($item->language != '*' && $language->lang_code != $item->language){
$language->display = false;
}
}//end 2.9.0
//fix problem on mod_login (same position before falang module
JUri::reset();
}//end sef
}
}
//no language filter published
else {
$language->link = 'index.php';
}
}
return $languages;
}
public static function isFalangDriverActive() {
$db = JFactory::getDBO();
if (!is_a($db,"JFalangDatabase")){
return false;
}
return true;
}
public static function isEditMode(){
$layout = JFactory::getApplication()->input->get('layout');
if ($layout == 'edit'){
return true;
} else {
return false;
}
}
public static function mijosefToolEnabled() {
//check mijosef
$mijoseffilename = JPATH_ADMINISTRATOR . '/components/com_mijosef/library/mijosef.php';
if (JFile::exists($mijoseffilename)) {
require_once($mijoseffilename);
$mijoconfig = Mijosef::getConfig();
if ($mijoconfig->mode == 1){
return true;
}
}
return false;
}
public static function sh404Enabled() {
$sh404filename = JPATH_ADMINISTRATOR . '/components/com_sh404sef/sh404sef.class.php';
if (JFile::exists($sh404filename)) {
require_once($sh404filename);
// get our configuration
$sefConfig = &Sh404sefFactory::getConfig();
if ($sefConfig->Enabled)
{
return true;
}
}
}
/**
*
* New method to build link for non sef url when the translated url don't link to the same item
* $language language in the loop of flang
* $lang Language displayed on the site
* $default_lang site default langue
*
* @since version 2.8.4
*/
public static function getLinkWithoutSefEnabled($language,$lang,$default_lang,$vars)
{
//workaround to fix index language
if (empty($vars['lang'])){
$vars['lang'] = $language->sef;
}
$link = null;
//build link for a language look not for the page language displayed
if (($lang->getTag() != $language->lang_code) && !empty($vars['Itemid']))
{
$fManager = FalangManager::getInstance();
$id_lang = $fManager->getLanguageID($language->lang_code);
$db = JFactory::getDbo();
// get translated path if exist
$query = $db->getQuery(true);
$query->select('fc.value')
->from('#__falang_content fc')
->where('fc.reference_id = ' . (int) $vars['Itemid'])
->where('fc.language_id = ' . (int) $id_lang)
->where('fc.reference_field = \'link\'')
->where('fc.published = 1')
->where('fc.reference_table = \'menu\'');
$db->setQuery($query);
$translatedPath = $db->loadResult();
// $translatedPath not exist if not translated or site default language
// don't pass id to the query , so no translation given by falang
$query = $db->getQuery(true);
$query->select('m.link')
->from('#__menu m')
->where('m.id = ' . (int) $vars['Itemid']);
$db->setQuery($query);
$originalPath = $db->loadResult();
//si language de boucle et language site
if (isset($translatedPath)){
$link = $translatedPath;
} else {
$link = $originalPath;
}
$link = $link . '&Itemid=' . (int) $vars['Itemid'] . '&lang=' . $language->sef;
//fix com_mwosoby component who need the id
if (!empty($vars['id'])){
$link .= '&id='.(int)$vars['id'];
}
return $link;
}
return JUri::getInstance()->toString(array('scheme', 'host', 'port', 'path', 'query'));
}
}
PK ! �:|8 8 mod_falang.xmlnu &1i� <?xml version="1.0" encoding="utf-8"?>
<extension type="module" version="3.0" client="site" method="upgrade">
<name>mod_falang</name>
<author>Stéphane Bouey</author>
<creationDate>23 march 2020</creationDate>
<copyright>2011-2020, Faboba</copyright>
<license>GNU General Public License version 2 or later; see LICENSE.txt</license>
<authorEmail>stephane.bouey@faboba.com</authorEmail>
<authorUrl>www.faboba.com</authorUrl>
<version>3.3.0</version>
<description>MOD_FALANG_XML_DESCRIPTION</description>
<files>
<filename module="mod_falang">mod_falang.php</filename>
<folder>tmpl</folder>
<filename>helper.php</filename>
<filename>index.html</filename>
<filename>mod_falang.xml</filename>
</files>
<languages>
<language tag="en-GB">language/en-GB/en-GB.mod_falang.ini</language>
<language tag="en-GB">language/en-GB/en-GB.mod_falang.sys.ini</language>
</languages>
<help key="JHELP_EXTENSIONS_MODULE_MANAGER_LANGUAGE_SWITCHER" />
<media destination="mod_falang" folder="media">
<filename>index.html</filename>
<folder>images</folder>
<folder>css</folder>
</media>
<config>
<fieldset>
<field name="language"
type="list"
description="JFIELD_MODULE_LANGUAGE_DESC"
label="JFIELD_LANGUAGE_LABEL">
<option value="*">JALL</option>
</field>
</fieldset>
<fields name="params">
<fieldset name="basic">
<field
name="dropdown"
type="radio"
class="btn-group btn-group-yesno"
default="0"
label="MOD_FALANG_FIELD_DROPDOWN_LABEL"
description="MOD_FALANG_FIELD_DROPDOWN_DESC" >
<option value="0">JNO</option>
<option value="1">JYES</option>
</field>
<field
name="advanced_dropdown"
type="radio"
class="btn-group btn-group-yesno"
default="0"
label="MOD_FALANG_FIELD_ADV_DROPDOWN_LABEL"
description="MOD_FALANG_FIELD_ADV_DROPDOWN_DESC" >
<option value="0">JNO</option>
<option value="1">JYES</option>
</field>
<field name="spacer1" type="spacer" class="text"
label="MOD_FALANG_SPACERDROP_LABEL"
/>
<field
name="inline"
type="radio"
class="btn-group btn-group-yesno"
default="1"
label="MOD_FALANG_FIELD_INLINE_LABEL"
description="MOD_FALANG_FIELD_INLINE_DESC" >
<option value="0">JNO</option>
<option value="1">JYES</option>
</field>
<field name="spacer2" type="spacer" class="text"
label="MOD_FALANG_COMMON_LABEL"
/>
<field
name="show_active"
type="radio"
class="btn-group btn-group-yesno"
default="1"
label="MOD_FALANG_FIELD_ACTIVE_LABEL"
description="MOD_FALANG_FIELD_ACTIVE_DESC" >
<option value="0">JNO</option>
<option value="1">JYES</option>
</field>
<field
name="image"
type="radio"
class="btn-group btn-group-yesno"
default="1"
label="MOD_FALANG_FIELD_USEIMAGE_LABEL"
description="MOD_FALANG_FIELD_USEIMAGE_DESC" >
<option value="0">JNO</option>
<option value="1">JYES</option>
</field>
<field
name="show_name"
type="radio"
class="btn-group btn-group-yesno"
default="0"
label="MOD_FALANG_FIELD_SHOW_NAME_LABEL"
description="MOD_FALANG_FIELD_SHOW_NAME_DESC" >
<option value="0">JNO</option>
<option value="1">JYES</option>
</field>
<field
name="full_name"
type="radio"
class="btn-group btn-group-yesno"
default="1"
label="MOD_FALANG_FIELD_FULL_NAME_LABEL"
description="MOD_FALANG_FIELD_FULL_NAME_DESC" >
<option value="0">JNO</option>
<option value="1">JYES</option>
</field>
<field
name="header_text"
type="textarea"
filter="safehtml"
rows="3"
cols="40"
label="MOD_FALANG_FIELD_HEADER_LABEL"
description="MOD_FALANG_FIELD_HEADER_DESC" />
<field
name="footer_text"
type="textarea"
filter="safehtml"
rows="3"
cols="40"
label="MOD_FALANG_FIELD_FOOTER_LABEL"
description="MOD_FALANG_FIELD_FOOTER_DESC" />
</fieldset>
<fieldset name="options" addfieldpath="/administrator/components/com_falang/models/fields">
<!-- >>> [FREE] >>> -->
<field
name="@notice_imagespath"
type="plaintext"
label="MOD_FALANG_FIELD_IMAGEPATH_LABEL"
description="MOD_FALANG_FIELD_IMAGEPATH_DESC"
default="MOD_FALANG_ONLY_PAID"
/>
<field
name="@notice_imagestype"
type="plaintext"
label="MOD_FALANG_FIELD_IMAGETYPE_LABEL"
description="MOD_FALANG_FIELD_IMAGETYPE_DESC"
default="MOD_FALANG_ONLY_PAID"
/>
<!-- <<< [FREE] <<< -->
</fieldset>
<fieldset name="advanced">
<field
name="layout"
type="modulelayout"
label="JFIELD_ALT_LAYOUT_LABEL"
description="MOD_FALANG_FIELD_MODULE_LAYOUT_DESC" />
<field
name="moduleclass_sfx"
type="text"
label="COM_MODULES_FIELD_MODULECLASS_SFX_LABEL"
description="COM_MODULES_FIELD_MODULECLASS_SFX_DESC" />
<field
name="cache"
type="list"
default="1"
label="COM_MODULES_FIELD_CACHING_LABEL"
description="COM_MODULES_FIELD_CACHING_DESC">
<option
value="1">JGLOBAL_USE_GLOBAL</option>
<option
value="0">COM_MODULES_FIELD_VALUE_NOCACHING</option>
</field>
<field
name="cache_time"
type="text"
default="900"
label="COM_MODULES_FIELD_CACHE_TIME_LABEL"
description="COM_MODULES_FIELD_CACHE_TIME_DESC" />
<field
name="cachemode"
type="hidden"
default="itemid">
<option
value="itemid"></option>
</field>
</fieldset>
</fields>
</config>
</extension>
PK ! ό�ic c mod_falang.phpnu &1i� <?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-2017. Faboba.com All rights reserved.
*/
// No direct access to this file
defined('_JEXEC') or die;
// Include the syndicate functions only once
require_once(dirname(__FILE__)) . '/helper.php';
if (!modFaLangHelper::isFalangDriverActive()){
echo JText::_("MOD_FALANG_PLUGIN_DRIVER_NOT_ENABLED");
return;
}
$headerText = JString::trim($params->get('header_text'));
$footerText = JString::trim($params->get('footer_text'));
$list = modFaLangHelper::getList($params);
$moduleclass_sfx = htmlspecialchars($params->get('moduleclass_sfx'));
require JModuleHelper::getLayoutPath('mod_falang', $params->get('layout', 'default'));
PK ! :x�%9 9 tmpl/default.phpnu &1i� PK ! �a �- - y tmpl/index.htmlnu &1i� PK ! b�>V< < � tmpl/default_list.phpnu &1i� PK ! ��� � f tmpl/default_dropdown.phpnu &1i� PK ! �a �- -
�- index.htmlnu &1i� PK ! ֟�5�c �c
. helper.phpnu &1i� PK ! �:|8 8 $� mod_falang.xmlnu &1i� PK ! ό�ic c �� mod_falang.phpnu &1i� PK } ;�