forked from stfalcon-studio/ls-plugin_l10n
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathINSTALL.txt
86 lines (65 loc) · 3.19 KB
/
INSTALL.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
УСТАНОВКА
---------
Скачайте архив плагина в каталоге LiveStreet и распакуйте в директорию plugins
вашего сайта (в результате должен получиться путь /plugins/l10n/)
После чего необходимо перейти на страницу http://example.com/admin/plugins
(вместо example.com указывайте адрес своего сайта) и активировать плагин L10n
ВАЖНО: Для правильной работы плагина, необходимо внести изменения в Router.class.php.
Скопипуйте файл Router.class.php в директорию /engine/classes/ (заменив оригинальный файл).
Или, над файлом .engine/classes/Router.class.php производим следующие действия:
#1 Ищем:
static protected $oInstance=null;
Добавляем:
/************************* Plugin L10n ****************************/
static protected $sLang=null;
/**
* Возвращает язык сайта (если он указан в URL)
*
* @return string|null
*/
static public function getLang() {
return self::$sLang;
}
/**
* Задает язык сайта
*
* @param string $sLang
* @return void
*/
static public function setLang($sLang = null) {
self::$sLang = $sLang;
}
/*******************************************************************/
#2 Ищем:
/**
* Формируем $sPathWebCurrent ДО применения реврайтов
*/
self::$sPathWebCurrent=Config::Get('path.root.web')."/".join('/',$this->GetRequestArray($sReq));
Заменяем на:
/************************* Plugin L10n ****************************/
$aRequestUrl = $this->GetRequestArray($sReq);
/**
* Формируем $sPathWebCurrent ДО применения реврайтов
*/
// self::$sPathWebCurrent=Config::Get('path.root.web')."/".join('/',$this->GetRequestArray($sReq));
self::$sPathWebCurrent = Config::Get('path.root.web') . "/" . join('/', $aRequestUrl);
if (isset($aRequestUrl[0]) && is_array(Config::Get('plugin.l10n.allowed_langs'))
&& Engine::getInstance()->PluginL10n_L10n_IsAllowedLangAlias($aRequestUrl[0])) {
$this->setLang(array_shift($aRequestUrl));
}
// Rebuild URL without lang var
$sReq = join('/', $aRequestUrl);
unset($aRequestUrl);
/*******************************************************************/
#3 Ищем:
static public function GetPath($action) {
Заменяем на:
static public function GetPath($action, $sLang = null) {
#4 Ищем:
return rtrim(Config::Get('path.root.web'),'/')."/$sPage/";
Заменяем на:
/************************* Plugin L10n ****************************/
// return rtrim(Config::Get('path.root.web'),'/')."/$sPage/";
if(!$sLang) $sLang = self::getLang();
return rtrim(Config::Get('path.root.web'), '/') . ($sLang ? "/{$sLang}" : '') . "/$sPage/";
/*******************************************************************/