mirror of
https://github.com/e107inc/e107.git
synced 2025-03-13 17:09:46 +01:00
broken link fix
This commit is contained in:
parent
6d5281b19a
commit
e6142eaf06
@ -1,4 +1,4 @@
|
||||
<?php
|
||||
<?php
|
||||
/*
|
||||
* e107 website system
|
||||
*
|
||||
@ -23,25 +23,25 @@
|
||||
/**
|
||||
* Example usage:
|
||||
* <code>
|
||||
* <?php
|
||||
* <?php
|
||||
* $SOME_TEMPLATE = '{LANGUAGELINKS}'; // render default (available) lan list, include current query string
|
||||
* </code>
|
||||
*
|
||||
*
|
||||
* <code>
|
||||
* <?php
|
||||
* <?php
|
||||
* $SOME_TEMPLATE = '{LANGUAGELINKS=English,Bulgarian}'; // render custom lan list, include current query string
|
||||
* </code>
|
||||
*
|
||||
*
|
||||
* <code>
|
||||
* <?php
|
||||
* $SOME_TEMPLATE = '{LANGUAGELINKS=English,Bulgarian|noquery}'; // render custom lan list, exclude query
|
||||
* </code>
|
||||
*
|
||||
*
|
||||
* <code>
|
||||
* <?php
|
||||
* $SOME_TEMPLATE = '{LANGUAGELINKS=|home}'; // render default (available) lan list, point always to site index
|
||||
* </code>
|
||||
*
|
||||
*
|
||||
* @param string $parm
|
||||
*/
|
||||
function languagelinks_shortcode($parm = '')
|
||||
@ -55,22 +55,22 @@ function languagelinks_shortcode($parm = '')
|
||||
$parm = $tmp[0];
|
||||
$parms = array();
|
||||
if(isset($tmp[1])) parse_str($tmp[1], $parms);
|
||||
|
||||
|
||||
// ignore Query string if required by parms or external code, false by default
|
||||
if(!defined('LANGLINKS_NOQUERY'))
|
||||
{
|
||||
define('LANGLINKS_NOQUERY', isset($parms['noquery']));
|
||||
}
|
||||
|
||||
|
||||
if(!defined('LANGLINKS_HOME'))
|
||||
{
|
||||
define('LANGLINKS_HOME', isset($parms['home']));
|
||||
}
|
||||
|
||||
|
||||
/*require_once(e_HANDLER.'language_class.php');
|
||||
$slng = new language;*/
|
||||
$slng = e107::getLanguage();
|
||||
|
||||
|
||||
if(!empty($parm))
|
||||
{
|
||||
$languageList = explode(',', $parm);
|
||||
@ -80,24 +80,24 @@ function languagelinks_shortcode($parm = '')
|
||||
$languageList = $slng->installed();
|
||||
sort($languageList);
|
||||
}
|
||||
|
||||
|
||||
if(count($languageList) < 2)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
foreach($languageList as $languageFolder)
|
||||
{
|
||||
$code = $slng->convert($languageFolder);
|
||||
$name = $slng->toNative($languageFolder);
|
||||
//$subdom = (isset($cursub[2])) ? $cursub[0] : '';
|
||||
|
||||
|
||||
if(e107::getPref('multilanguage_subdomain'))
|
||||
{
|
||||
$code = ($languageFolder == e107::getPref('sitelanguage')) ? 'www.' : $code;
|
||||
if(LANGLINKS_HOME)
|
||||
$code = ($languageFolder == e107::getPref('sitelanguage')) ? 'www' : $code;
|
||||
if(LANGLINKS_HOME)
|
||||
$link = str_replace($_SERVER['HTTP_HOST'], $code.'.'.e_DOMAIN, SITEURL);
|
||||
else
|
||||
else
|
||||
$link = (!LANGLINKS_NOQUERY)
|
||||
? str_replace($_SERVER['HTTP_HOST'], $code.'.'.e_DOMAIN, e_REQUEST_URL) // includes query string
|
||||
: str_replace($_SERVER['HTTP_HOST'], $code.'.'.e_DOMAIN, e_REQUEST_SELF); // excludes query string
|
||||
@ -105,14 +105,14 @@ function languagelinks_shortcode($parm = '')
|
||||
else
|
||||
{
|
||||
// TODO - switch to elan=Language query when possible (now it'll break the old DOT query string format)
|
||||
if(LANGLINKS_HOME)
|
||||
if(LANGLINKS_HOME)
|
||||
$link = SITEURL.'?elan='.$languageFolder;
|
||||
else
|
||||
else
|
||||
$link = (!LANGLINKS_NOQUERY) ? e_REQUEST_SELF.'?['.$code.']'.e_QUERY : e_REQUEST_SELF.'?elan='.$languageFolder;
|
||||
}
|
||||
$class = ($languageFolder == e_LANGUAGE) ? 'languagelink_active' : 'languagelink';
|
||||
$class = ($languageFolder == e_LANGUAGE) ? 'languagelink_active' : 'languagelink';
|
||||
$ret[] = "\n<a class='{$class}' href='{$link}'>{$name}</a>";
|
||||
}
|
||||
|
||||
|
||||
return implode(LANGLINKS_SEPARATOR, $ret);
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user