Example #1
0
 /**
  * @param bool $_all
  * @param bool $_byPriority
  * @return array
  */
 public function getList($_all = false, $_byPriority = false)
 {
     $db = new DB();
     $return = array();
     $result = null;
     $_table = $this->table;
     $where = '';
     $order = '';
     if ($_byPriority) {
         $order = 'ORDER BY priority ASC';
     }
     if ($_all) {
         $where = "WHERE active = 1";
     }
     $items = $db->query("SELECT id FROM {$_table} {$where} {$order}");
     if (@$items) {
         $result = $items->fetchAll();
         foreach ($result as $item) {
             $ob_lang = new Lang();
             $return[] = $ob_lang->getFromId($item['id']);
         }
     }
     return @$return;
 }
Example #2
0
<?php

/*
 * Copyright (c) 2014 Alberto González
 * Distributed under MIT License
 * (see README for details)
 */
namespace Quaver\Controller;

use Quaver\Model\Lang;
$language = new Lang();
$langCurrent = $language->getFromSlug($this->url_var[1]);
if ($langCurrent) {
    $language->setCookie();
    if (!empty($_SERVER['HTTP_REFERER'])) {
        header("Location: " . $_SERVER['HTTP_REFERER']);
        exit;
    } else {
        $newLang = new url();
        header("Location: " . $newLang->getFromId(1)->url);
        exit;
    }
} else {
    header("Location: " . $this->getUrlFromId(2) . "?ref=" . $this->getUrl());
    exit;
}
Example #3
0
 /**
  * login.
  *
  * @param bool $remember default to false
  *
  * @return bool
  */
 public function login($remember = false)
 {
     global $_lang;
     if (!$this->exists()) {
         return false;
     }
     $this->sessionLogin($remember ? $this->cookie() : $this->id, $remember);
     $this->updateLastLogin();
     if (empty($this->language)) {
         $this->language = $_lang->id;
         $this->save();
     } elseif ($_lang->id !== $this->language) {
         $_lang = new Lang();
         $_lang->getFromId($this->language);
         $_lang->setCookie();
     }
     return true;
 }
Example #4
0
<?php

/*
 * Copyright (c) 2014 Alberto González
 * Distributed under MIT License
 * (see README for details)
 */
namespace Quaver\App\Controller;

use Quaver\Model\Lang;
$language = new Lang();
$language->getFromSlug($this->getUrlPart(0));
if ($language) {
    $language->setCookie();
    if ($_user->isLogged()) {
        $_user->language = $language->id;
        $_user->save();
    }
    if (!empty($_SERVER['HTTP_REFERER']) && $_SERVER['HTTP_HOST'] === parse_url($_SERVER['HTTP_REFERER'], PHP_URL_HOST)) {
        $this->redirect($_SERVER['HTTP_REFERER']);
    } else {
        $this->redirect('/');
    }
} else {
    $this->router->dispatch('e404');
    exit;
}
Example #5
0
 /**
  * Set main variables
  */
 public function getGlobalTwigVars()
 {
     global $_lang;
     global $_user;
     // Language
     $this->addTwigVars("language", $_lang);
     // Environment
     $this->addTwigVars("_env", DEV_MODE);
     // Languages
     $languageVars = array();
     $ob_l = new Lang();
     foreach ($ob_l->getList() as $lang) {
         $item = array("id" => $lang->id, "name" => utf8_encode($lang->name), "slug" => $lang->slug, "locale" => $lang->locale);
         array_push($languageVars, $item);
     }
     $this->addTwigVars('languages', $languageVars);
     // Current url
     $this->addTwigVars('url', strip_tags($this->url_var[0]));
     // User
     $userVars = array("avatar" => $_user->avatar, "admin" => $_user->isAdmin(), "logged" => $_user->logged, "account" => $_user->account, "sessionHash" => $_user->cookie);
     $this->addTwigVars("user", $userVars);
     $this->addTwigVars("_user", $_user);
     // Login
     if (@isset($this->queryString['login-error'])) {
         $this->addTwigVars('loginError', true);
     }
     if (@isset($this->queryString['user-disabled'])) {
         $this->addTwigVars('userDisabled', true);
     }
     // Extra parametres
     $config = array("randomVar" => RANDOM_VAR, "css" => CSS_PATH, "js" => JS_PATH, "img" => IMG_PATH);
     $this->addTwigVars('qv', $config);
 }