Frontend, Bugfixes
This commit is contained in:
@@ -3,52 +3,58 @@
|
||||
namespace Views;
|
||||
|
||||
use Api\GetLanguages;
|
||||
use Elements\View;
|
||||
|
||||
class LanguageFlags extends \View {
|
||||
class LanguageFlags extends View {
|
||||
|
||||
private array $languageFlags;
|
||||
|
||||
public function __construct($document) {
|
||||
parent::__construct($document);
|
||||
$this->languageFlags = array();
|
||||
}
|
||||
|
||||
public function getCode() {
|
||||
public function loadView() {
|
||||
parent::loadView();
|
||||
|
||||
$requestUri = $_SERVER["REQUEST_URI"];
|
||||
$queryString = $_SERVER['QUERY_STRING'];
|
||||
|
||||
$flags = array();
|
||||
$request = new GetLanguages($this->getDocument()->getUser());
|
||||
$params = explode("&", $queryString);
|
||||
$query = array();
|
||||
foreach($params as $param) {
|
||||
$aParam = explode("=", $param);
|
||||
$key = $aParam[0];
|
||||
|
||||
if($key == "s" && startsWith($requestUri, "/s/"))
|
||||
continue;
|
||||
|
||||
$val = (isset($aParam[1]) ? $aParam[1] : "");
|
||||
if(!empty($key)) {
|
||||
$query[$key] = $val;
|
||||
}
|
||||
}
|
||||
|
||||
$url = parse_url($requestUri, PHP_URL_PATH) . "?";
|
||||
if($request->execute()) {
|
||||
|
||||
$requestUri = $_SERVER["REQUEST_URI"];
|
||||
$queryString = $_SERVER['QUERY_STRING'];
|
||||
|
||||
$params = explode("&", $queryString);
|
||||
$query = array();
|
||||
foreach($params as $param) {
|
||||
$aParam = explode("=", $param);
|
||||
$key = $aParam[0];
|
||||
|
||||
if($key == "s" && startsWith($requestUri, "/s/"))
|
||||
continue;
|
||||
|
||||
$val = (isset($aParam[1]) ? $aParam[1] : "");
|
||||
if(!empty($key)) {
|
||||
$query[$key] = $val;
|
||||
}
|
||||
}
|
||||
|
||||
$url = parse_url($requestUri, PHP_URL_PATH) . "?";
|
||||
|
||||
foreach($request->getResult()['languages'] as $lang) {
|
||||
$langCode = $lang['code'];
|
||||
$langName = $lang['name'];
|
||||
$query['lang'] = $langCode;
|
||||
$queryString = http_build_query($query);
|
||||
|
||||
$flags[] = $this->createLink(
|
||||
$this->languageFlags[] = $this->createLink(
|
||||
"$url$queryString",
|
||||
"<img class=\"p-1\" src=\"/img/icons/lang/$langCode.gif\" alt=\"$langName\" title=\"$langName\">"
|
||||
);
|
||||
}
|
||||
} else {
|
||||
$flags[] = $this->createErrorText($request->getLastError());
|
||||
}
|
||||
}
|
||||
|
||||
return implode('', $flags);
|
||||
public function getCode() {
|
||||
return implode('', $this->languageFlags);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user