Beispiel #1
0
 public static function loadConfig()
 {
     //SQL::exec("INSERT INTO [config]p ([key],[value],[type],[assign]) VALUES ( 'url_blog_category','./%slug/','string',0 )");
     if ($result = SQL::query("SELECT [key],[value],[type],[assign] FROM [config]p")) {
         foreach ($result->fetch() as $item) {
             switch ($item->type) {
                 case 'string':
                     ESCMS::$cfg[$item->key] = (string) $item->value;
                     break;
                 case 'int':
                 case 'integer':
                     ESCMS::$cfg[$item->key] = (int) $item->value;
                     break;
                 case 'boolean':
                     ESCMS::$cfg[$item->key] = (bool) $item->value;
                     break;
                 default:
                     ESCMS::$cfg[$item->key] = $item->value;
                     break;
             }
             if ((bool) $item->assign) {
                 TPL::add($item->key, $item->value);
             }
             define('CFG_' . strtoupper($item->key), $item->value);
         }
     } else {
         throw new Exception('The configuration could not be loaded.');
     }
 }
Beispiel #2
0
 public function getPost($slug)
 {
     if (!($result = SQL::query("\r\nSELECT\r\n\t[blog_posts]p.[post_id] AS [post_id],\r\n\t[blog_posts]p.[post_date] AS [post_date],\r\n\t[blog_posts]p.[post_header] AS [post_header],\r\n\t[blog_posts]p.[category_id] AS [category_id],\r\n\t[blog_categories]p.[category_slug] AS [category_slug],\r\n\t[blog_categories]p.[category_header] AS [category_header],\r\n\t[blog_posts_contents]p.[post_prologue] AS [post_prologue],\r\n\t[blog_posts_contents]p.[post_content] AS [post_content],\r\n\tcount([blog_comments]p.[comment_id]) AS [comments_count]\r\nFROM [blog_posts]p\r\nLEFT JOIN [blog_categories]p\r\n\tON [blog_posts]p.[category_id] == [blog_categories]p.[category_id]\r\nLEFT JOIN [blog_posts_contents]p\r\n\tON [blog_posts]p.[post_id] == [blog_posts_contents]p.[post_id]\r\nLEFT JOIN [blog_comments]p\r\n\tON [blog_posts]p.[post_id] == [blog_comments]p.[post_id]\r\nWHERE ([blog_posts]p.[post_slug] == '" . SQL::escape($slug) . "')\r\nGROUP BY [blog_posts]p.[post_id]\r\nORDER BY [blog_posts]p.[post_date]"))) {
         throw new Exception('The post could not be selected.');
     } else {
         if ($result->numRows() == 0) {
             Debug::header(404);
         }
         $post = $result->fetchOne();
         TPL::add('BLOG_CATEGORY_LINK', str_replace(array('%slug', '%id'), array($post->category_slug, $post->category_id), CFG_URL_BLOG_CATEGORY));
         TPL::add('BLOG_POST_ID', $post->post_id);
         TPL::add('BLOG_POST_HEADER', $post->post_header);
         TPL::add('BLOG_POST_SLUG', $slug);
         TPL::add('BLOG_POST_DATE', date(ESCMS_DATE_FORMAT, (int) $post->post_date));
         TPL::add('BLOG_POST_PROLOGUE', $post->post_prologue);
         TPL::add('BLOG_POST_CONTENT', $post->post_content);
         TPL::add('BLOG_CATEGORY_HEADER', $post->category_header);
         TPL::add('BLOG_CATEGORY_SLUG', $post->category_slug);
         TPL::add('BLOG_POST_COMMENTS_COUNT', $post->comments_count);
     }
 }
Beispiel #3
0
{
}
$blog = new ESCMSModule_Sys_blog();
$blog->getCategories();
if (!isset($_GET['c']) || $_GET['c'] == 'blog' && !isset($_GET['slug'], $_GET['section']) && isset($_GET['archive'])) {
    if (!isset($_GET['archive']) || !isset($_GET['selectmode'])) {
        TPL::addTpl('index');
    } else {
        TPL::addTpl('archive');
    }
    $blog->getLatestPosts();
}
if (isset($_GET['c']) && $_GET['c'] == 'blog') {
    if (isset($_GET['section'])) {
        switch ($_GET['section']) {
            case 'category':
                if (isset($_GET['slug'])) {
                    TPL::add('BLOG_CATEGORY_HEADER', $blog->getCategoryInfo($_GET['slug'])->category_header);
                    TPL::addTpl('blog_category');
                    $blog->getCategoryPosts($_GET['slug']);
                }
                break;
            case 'post':
                if (isset($_GET['slug'])) {
                    TPL::addTpl('blog_post');
                    $blog->getPost($_GET['slug']);
                }
                break;
        }
    }
}
Beispiel #4
0
 public static function header($code, $message = '')
 {
     switch ($code) {
         case 400:
             header('HTTP/1.1 400 Bad Request');
             break;
         case 404:
             header('HTTP/1.1 404 Not Found');
             break;
         case 503:
         default:
             header('HTTP/1.1 503 Service Unavailable');
             break;
     }
     try {
         TPL::trash();
         TPL::$dirpath = ESCMS_PATH_TPL . '.debug/';
         TPL::add(array('EXCEPTION_MESSAGE' => $message));
         if (!TPL::addTpl('header' . $code)) {
             switch ($code) {
                 case 400:
                     die('<h1>HTTP/1.1 400 Bad Request</h1><p>' . $message . '</p>');
                     break;
                 case 404:
                     die('<h1>HTTP/1.1 404 Not Found</h1>');
                     break;
                 case 503:
                 default:
                     throw new Exception($message);
             }
         } else {
             TPL::pack();
             die;
         }
     } catch (Exception $exc) {
         die('<h1>503 Service Unavailable</h1><p>' . $exc->getMessage() . '</p>');
     }
 }
Beispiel #5
0
            case 'timestamp':
                $cfg['etc'][$item->module][$item->name] = strtotime($item->value);
                if ((int) $item->assign) {
                    TPL::add(strtoupper($item->name), formatDateTime($cfg['etc'][$item->module][$item->name]));
                }
                break;
            default:
                $cfg['etc'][$item->module][$item->name] = $item->value;
                if ((int) $item->assign) {
                    TPL::add(strtoupper($item->name), $cfg['etc'][$item->module][$item->name]);
                }
                break;
        }
    }
}
// Configure the template system
if (defined('TEMPLATE_DIRPATH')) {
    TPL::$dirpath = TEMPLATE_DIRPATH;
} else {
    TPL::$dirpath = './styles/' . $cfg['etc']['core']['site_style'] . '/';
}
// Init the language system
if (defined('IN_SYS') && IN_SYS) {
    Langs::$dirpath = './langs/' . $cfg['etc']['core']['site_lang'] . '/';
} else {
    Langs::$dirpath = './langs/' . $cfg['etc']['core']['acp_lang'] . '/';
}
define('SITE_ROOT_PATH', $cfg['etc']['core']['SITE_ROOT_PATH']);
TPL::add('HTTP_REFERER', $_SERVER['HTTP_REFERER']);
// Init the modules
Modules::load();
Beispiel #6
0
 public function _module_config_load()
 {
     $cfg = core::s('cfg');
     TPL::add('SITE_TITLE', '{L_SITE_CONFIG} &mdash; {SITE_HEADER} / {L_ACP}');
     $sql = new SQLObject();
     if ($sql->query("\r\nSELECT module,name,value,type\r\nFROM " . $sql->table('config') . "\r\nWHERE (module = 'core')")) {
         foreach ($sql->fetch() as $item) {
             switch ($item->type) {
                 case 'integer':
                     $value = (int) $item->value;
                     break;
                 case 'string':
                     $value = (string) $item->value;
                     break;
                 case 'float':
                     $value = (double) $item->value;
                     break;
                 case 'timestamp':
                     $value = strtotime((string) $item->value);
                     break;
                 case 'boolean':
                     if ((int) $item->value == 0) {
                         $value = false;
                     } else {
                         $value = true;
                     }
                     TPL::cond('MODULE_CONFIG:' . strtoupper($item->name), $value);
                     break;
                 default:
                     $value = $item->value;
                     break;
             }
             TPL::add('MODULE_CONFIG:' . strtoupper($item->name), $value);
         }
     }
     $dir = dir('./langs/');
     while ($file = $dir->read()) {
         if ($file == '.' || $file == '..') {
             continue;
         }
         $langs[] = $file;
     }
     sort($langs);
     $f_langs = array();
     foreach ($langs as $lang) {
         $f_langs[] = array('LANG_CODENAME' => $lang, 'conds' => array('LANG_ACTIVE' => $lang == $cfg['etc']['core']['site_lang'] ? true : false));
     }
     TPL::assignAsLoop('MODULE_CONFIG:SITE_LANG', $f_langs);
     $f_langs = array();
     foreach ($langs as $lang) {
         $f_langs[] = array('LANG_CODENAME' => $lang, 'conds' => array('LANG_ACTIVE' => $lang == $cfg['etc']['core']['acp_lang'] ? true : false));
     }
     TPL::assignAsLoop('MODULE_CONFIG:ACP_LANG', $f_langs);
     $dir = dir('./styles/');
     while ($file = $dir->read()) {
         if ($file == '.' || $file == '..' || $file == '.acp') {
             continue;
         }
         $styles[] = $file;
     }
     sort($styles);
     $f_styles = array();
     foreach ($styles as $style) {
         $info = array();
         $path = './styles/' . $style . '/style.cfg';
         if (file_exists($path)) {
             $data = simplexml_load_file($path);
             foreach ($data->children() as $item) {
                 switch ($item['name']) {
                     case 'name':
                         $info['name'] = $item['value'];
                         break;
                     case 'author':
                         $info['author'] = $item['value'];
                         break;
                     case 'author_link':
                         $info['author_link'] = $item['value'];
                         break;
                     case 'preview':
                         $preview = true;
                         $info['preview'] = './styles/' . $style . '/' . $item['value'];
                         break;
                 }
             }
         }
         if (!isset($info['name'])) {
             $info['name'] = $style;
         }
         if (!isset($info['author'])) {
             $info['author'] = '{L_UNKNOWN}';
         }
         if (!isset($info['preview'])) {
             $preview = false;
             $info['preview'] = './styles/.acp/media/images/style_preview.png';
         }
         if ($style == $cfg['etc']['core']['site_style']) {
             TPL::add('MODULE_CONFIG:SITE_STYLE_NAME', strlen($info['name']) > 24 ? mb_substr($info['name'], 0, 24, 'UTF-8') . '...' : $info['name']);
         }
         $f_styles[] = array('STYLE_CODENAME' => $style, 'STYLE_NAME' => $info['name'], 'STYLE_AUTHOR' => $info['author'], 'STYLE_AUTHOR_LINK' => $info['author_link'], 'STYLE_PREVIEW' => $info['preview'], 'conds' => array('STYLE_ACTIVE' => $style == $cfg['etc']['core']['site_style'] ? true : false, 'STYLE_AUTHOR_LINK' => isset($info['author_link']) ? true : false, 'STYLE_PREVIEW' => $preview));
     }
     TPL::assignAsLoop('MODULE_CONFIG:SITE_STYLE', $f_styles);
 }
Beispiel #7
0
require_once './app/layers/dal.layer.php';
require_once './app/layers/tpl.layer.php';
require_once './app/layers/core.layer.php';
Lib::$dirpath = ESCMS_PATH_LIB;
SQL::$dirpath = ESCMS_PATH_DAL_DRIVERS;
TPL::$dirpath = ESCMS_PATH_TPL . 'looksmog/';
# replace! -> db
TPL::add('SITE_ROOT_PATH', SITE_ROOT_PATH);
switch (ESCMS_DB_TYPE) {
    case 'sqlite2':
        $params = array('file' => ESCMS_DB_FILE);
        break;
}
SQL::openConnection(array('type' => ESCMS_DB_TYPE, 'prefix' => ESCMS_DB_PREFIX, 'params' => $params));
if (defined('REQUEST_RAW') && !defined('REDIRECTED')) {
    $e = explode(SITE_ROOT_PATH, 'http://' . $_SERVER['HTTP_HOST'] . REQUEST_RAW, 2);
    TPL::add('PAGE_URI', SITE_ROOT_PATH . $e[1]);
    define('REQUEST', '/' . end($e));
    require_once './app/resolve.php';
    die;
} else {
    $e = explode(SITE_ROOT_PATH, 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF']);
    define('PAGE_URI', SITE_ROOT_PATH . $e[1]);
}
//SQL::exec("CREATE TABLE [config]p ( [key] VARCHAR(32) NOT NULL UNIQUE, [value] VARCHAR(256) NULL, [type] VARCHAR(8) NOT NULL, [assign] BOOLEAN )");
//Debug::dump(SQL::exec("INSERT INTO [config]p ([key],[value],[type],[assign]) VALUES ('URL_BLOG_POST','./clanky/%slug/','string',0)"));
ESCMS::loadConfig();
ESCMS::loadModules();
Debug::log();
TPL::pack();
print round(microtime(true) - $time, 3) * 1000 . ' ms';
Beispiel #8
0
<?php

TPL::add(array('L_ACP' => 'Administrace', 'L_ACP_HOME' => 'Úvod administrace', 'L_INDEX' => 'Úvod webu', 'L_BACKLINK' => 'Zpět na předchozí stránku', 'L_OVERVIEW' => 'Přehled', 'L_STATS' => 'Statistiky', 'L_MODULES' => 'Moduly', 'L_MODULES_CORE' => 'Jádro', 'L_MODULES_CORE_NO_MODULES' => 'V jádře nejsou žádné moduly, což je blbost, takže se obraťte na podporu systému.', 'L_MODULES_CORE_FOOT' => 'Toto je pouze přehled modulů v jádře. Nelze je deaktivovat ani odinstalovat.', 'L_MODULES_ADDITIONAL' => 'Přídavné moduly', 'L_MODULES_ADDITIONAL_NO_MODULES' => 'Žádné přídavné moduly nejsou nainstalovány.', 'L_MODULES_AVAILABLE' => 'Dostupné moduly', 'L_MODULES_AVAILABLE_NO_MODULES' => 'Žádné moduly nejsou dostupné.', 'L_MODULE_INSTALL' => 'Nainstalovat', 'L_MODULE_UNINSTALL' => 'Odinstaloval', 'L_MODULE_ACTIVATE' => 'Aktivovat', 'L_MODULE_DEACTIVATE' => 'Deaktivovat', 'L_MODULES_GET_MORE' => 'Získat další moduly', 'L_SITE_CONFIG' => 'Konfigurace webu', 'L_CLOSE' => 'Zavřít', 'L_EDIT' => 'Upravit', 'L_DELETE' => 'Smazat', 'L_PREV' => '&laquo; Před.', 'L_NEXT' => 'Další &raquo;', 'L_YES' => 'Ano', 'L_NO' => 'Ne', 'L_AUTHOR' => 'Autor', 'L_CONFIG_SUBMIT' => 'Upravit konfiguraci', 'L_CONFIG_OK' => 'Konfigurace byla úspěšně upravena.', 'L_CONFIG_ERROR' => 'Konfigurace nebyla upravena.', 'L_ACRONYM_MINUTES' => 'min', 'L_SYSTEM_INFO' => 'Systémové informace', 'L_INFO_CORE_VERSION' => 'Verze jádra', 'L_INFO_CORE_LAST_UPDATE' => 'Poslední aktualizace jádra', 'L_MODULE_CORE' => 'Jádro systému', 'L_MODULE_CORE_DESCRIPTION' => 'Správa jádra systému.', 'L_CONFIG_BASE_OPTIONS' => 'Možnosti systému', 'L_CONFIG_BASE_DATE_TIME' => 'Datum a čas', 'L_CONFIG_BASE_FTP_DATA' => 'FTP údaje', 'L_CONFIG_BASE_FTP_DATA_INFO' => 'Posílány aktualizačnímu serveru při nahrávání aktualizací.', 'L_CONFIG_BASE_SITE_HEADER' => 'Nadpis webu', 'L_CONFIG_BASE_SITE_SLOGAN' => 'Slogan webu', 'L_CONFIG_BASE_SITE_ROOT_PATH' => 'Kořenový adresář', 'L_CONFIG_BASE_SITE_ROOT_PATH_INFO' => 'Pozor, mívá vliv na celou prezentaci! Uveďte i zakončovací lomítko!', 'L_CONFIG_BASE_SHOW_ERRORS' => 'Zobrazovat chyby', 'L_CONFIG_BASE_SITE_LANG' => 'Jazyk prezentace', 'L_CONFIG_BASE_ACP_LANG' => 'Jazyk administrace', 'L_CONFIG_BASE_SITE_STYLE' => 'Styl prezentace', 'L_CONFIG_BASE_DATETIME_FORMAT' => 'Formát data a času', 'L_CONFIG_BASE_DATE_FORMAT' => 'Formát data', 'L_CONFIG_BASE_ONLINE_OFFSET' => 'Offset času online', 'L_CONFIG_BASE_ONLINE_OFFSET_INFO' => 'Čas, před jehož uplynutím je uživatel zobrazen jako online (v sekundách).', 'L_CONFIG_BASE_DATETIME_FORMAT_INFO' => 'Hodnota je kompatibilní s PHP funkcí <a href="http://php.net/function.date">date()</a>.', 'L_CONFIG_BASE_FTP_HOST' => 'FTP server', 'L_CONFIG_BASE_FTP_HOST_INFO' => 'Neuvádějte <strong>localhost</strong>, ale veřejnou adresu serveru.', 'L_CONFIG_BASE_FTP_PORT' => 'Port', 'L_CONFIG_BASE_FTP_PORT_INFO' => 'Výchozí hodnotou je <strong>21</strong>.', 'L_CONFIG_BASE_FTP_USERNAME' => 'Uživatelské jméno', 'L_CONFIG_BASE_FTP_PASSWORD' => 'Heslo', 'L_GET_MORE_STYLES' => 'Získat další styly', 'L_PERMISSION.core.modules' => 'Moduly', 'L_PERMISSION.core.modules.show' => 'Zobrazit', 'L_PERMISSION.core.modules.install' => 'Instalovat', 'L_PERMISSION.core.modules.uninstall' => 'Odinstalovávat', 'L_PERMISSION.core.modules.activate' => 'Aktivovat', 'L_PERMISSION.core.config' => 'Konfigurace webu', 'L_PERMISSION.core.config.edit' => 'Upravovat'));
Beispiel #9
0
 public function groups_getGrouplist()
 {
     $sql = new SQLObject();
     $p = new Pages();
     $p->url = './acp.php?c=users&amp;section=groups&amp;page=%page';
     $p->per_page = 25;
     $p->query = "SELECT group_id,group_name,group_description FROM " . $sql->table('auth_groups') . " ORDER BY group_name ASC";
     $f_groups = array();
     if ($p->make()) {
         foreach ($p->fetch() as $group) {
             $f_groups[] = array('GROUP_ID' => $group->group_id, 'GROUP_NAME' => $group->group_name, 'GROUP_DESCRIPTION' => $group->group_description, 'GROUP_ACTION_EDIT' => './acp.php?c=users&amp;section=groups&amp;mode=edit', 'GROUP_ACTION_DELETE' => './action.php?c=users&amp;section=groups&amp;mode=delete&amp;group_id=' . $group->group_id, 'conds' => array('ANONYMOUS' => (int) $group->group_id == -1 ? true : false));
         }
     }
     core::s('tpl')->assignLoop('AUTH_GROUPLIST', $f_groups);
     TPL::add('PAGES_GROUPLIST', $p->browser());
 }
Beispiel #10
0
<?php

TPL::add(array('L_MODULE_AUTH' => 'Autorizace', 'L_MODULE_AUTH_DESCRIPTION' => 'Správa uživatelů a nastavení oprávnění', 'L_LOGIN' => 'Přihlásit se', 'L_LOGOUT' => 'Odhlásit se', 'L_AUTH_ALERT_TOO_LITTLE_DATA' => 'Příliš málo dat!', 'L_AUTH_LOGGED_AS' => 'Jste přihlášen jako {CURRENT_USER.USERNAME}.', 'L_AUTH_ALERT_LOGIN_INACTIVE_USER' => 'Váš účet ještě nebyl aktivován!', 'L_AUTH_ALERT_LOGIN_INVALID_PASSWORD' => 'Špatné heslo. <a href="{HTTP_REFERER}">Zkusit znovu</a>', 'L_AUTH_ALERT_INVALID_USERNAME' => 'Neplatné uživatelské jméno:<ul><li>Rozsah 3-32 znaků</li><li>Může obsahovat pouze a-z, A-Z, 0-9, _, - a mezeru.</li></ul>', 'L_AUTH_ALERT_INVALID_PASSWORD' => 'Neplatné heslo:<ul><li>Rozsah 8-24 znaků</li><li>Může obsahovat a-z, A-Z, 0-9 a následující: !.:@$#%^*&()~"\\\'\\/[]</li></ul>', 'L_AUTH_ALERT_ADD_USER_ERROR' => 'Uživatel nebyl přidán.', 'L_AUTH_ALERT_USER_ADDED' => 'Uživatel byl úspěšně přidán.', 'L_AUTH_ALERT_TOO_LITTLE_DATA' => 'Bylo odesláno příliš málo dat.', 'L_AUTH_ALERT_INVALID_GROUPNAME' => 'Neplatné jméno skupiny:<ul><li>Rozsah 1-128 znaků</li></ul>', 'L_AUTH_ALERT_GROUP_ADDED_PERMISSIONS' => 'Skupina byla úspěšně přidána a byla jí přidělena požadovaná oprávnění.', 'L_AUTH_ALERT_GROUP_ADDED_SOME_PERMISSIONS' => 'Skupina byla úspěšně přidána, ale byla jí přidělena pouze některá požadované oprávnění.', 'L_AUTH_ALERT_GROUP_ADDED_NO_PERMISSIONS' => 'Skupina byla úspěšně přidána, ale nebyla jí přidělena požadovaná oprávnění.', 'L_AUTH_ALERT_GROUP_DELETED' => 'Skupina byla úspěšně smazána.', 'L_AUTH_ALERT_GROUP_ONLY_PERMISSIONS_DELETED' => 'Skupina nebyla smazána, ale byla jí odstraněna veškerá oprávnění.', 'L_AUTH_ALERT_DELETE_GROUP_ERROR' => 'Skupina nebyla odstraněna.', 'L_AUTH_ALERT_USER_DELETED' => 'Uživatel byl úspěšně smazán.', 'L_AUTH_ALERT_DELETE_USER_ERROR' => 'Uživatel nebyl smazán.', 'L_AUTH_ALERT_NO_CHALLENGE' => 'Nemáte platný ticket pro přihlášení.</p><p>Pro obnovení ticketu musíte aktualizovat stránku s přihlašovaním dialogem.</p><p><a href="{HTTP_REFERER}">Zpět na předchozí stránku</a>', 'L_PERMISSION_AUTH_ACP_ENTER' => 'Nemáte oprávnění vstupovat do administračního rozhraní!', 'L_PERMISSION_AUTH_ADD_USER' => 'Namáte oprávnění přidávat uživatele!', 'L_PERMISSION_AUTH_DELETE_USER' => 'Nemáte oprávnění mazat uživatele.', 'L_PERMISSION_AUTH_ADD_GROUP' => 'Namáte oprávnění přidávat skupiny!', 'L_PERMISSION_AUTH_DELETE_GROUP' => 'Nemáte oprávnění mazat skupiny!', 'L_AUTHBOX_TITLE' => 'Autorizace', 'L_USERNAME' => 'Uživatelské jméno', 'L_PASSWORD' => 'Heslo', 'L_AUTH_SAVE' => 'Zapamatovat', 'L_USERS' => 'Uživatelé', 'L_USERS_USERS' => 'Uživatelé', 'L_USERS_GROUPS' => 'Skupiny', 'L_USERS_GROUPS_INFO' => 'Od příslušnosti ve skupinách se odvíjejí uživatelova oprávnění.', 'L_USERS_ADD_USER' => 'Přidat uživatele', 'L_USERS_ADD_USER_SUBMIT' => 'Přidat uživatele', 'L_USERS_ADD_GROUP' => 'Přidat skupinu', 'L_USERS_ADD_GROUP_SUBMIT' => 'Přidat skupinu', 'L_ONLINE_USERS' => 'Uživatelé online', 'L_ONLINE_USERS_NO_USERS' => 'Žádný uživatel není online.', 'L_ONLINE_ADMINS' => 'Administrátoři online', 'L_ONLINE_ADMINS_NO_ADMINS' => 'Žádný administrátor není online.', 'L_USERS_COUNT_USERS' => 'Počet uživatelů', 'L_USERS_COUNT_GROUPS' => 'Počet skupin', 'L_USERNAME_INFO' => 'Rozsah 3-32 znaků; Může obsahovat pouze a-z, A-Z, 0-9, _, - a mezeru.', 'L_USERS_EMAIL' => 'E-mail', 'L_USERS_EMAIL_ERROR' => 'Zadaná hodnota není platná e-mailová adresa.', 'L_USERS_GENDER' => 'Pohlaví', 'L_GENDER_MALE' => 'Muž', 'L_GENDER_FEMALE' => 'Žena', 'L_GENDER_NA' => 'Neuvedeno', 'L_PASSWORD_INFO' => 'Rozsah 8-24 znaků; Může obsahovat a-z, A-Z, 0-9 a následující: !.:@$#%^*&()~"\'/[]\\', 'L_PASSWORD_STRENGTH_INVALID' => 'Neplatné heslo: Rozsah 8-24 znaků; Může obsahovat a-z, A-Z, 0-9 a následující: !.:@$#%^*&()~"\\\'\\/[]', 'L_PASSWORD_STRENGTH_WEAK' => 'Slabé heslo', 'L_PASSWORD_STRENGTH_NORMAL' => 'Normální heslo', 'L_PASSWORD_STRENGTH_STRONG' => 'Silné heslo', 'L_PASSWORD_CONFIRM' => 'Ověření hesla', 'L_PASSWORD_CONFIRM_ERROR' => 'Hesla se neshodují', 'L_USER_GROUPS_INFO' => 'Každý uživatel je automaticky zařazen do skupiny <strong>Uživatelé</strong>.', 'L_USER_GROUPS_MULTIPLE_INFO' => 'V případě příslušnosti do více skupin se vždy načtou veškerá oprávnění všech skupin.', 'L_USER_GROUP_MAIN' => 'Zaškrtávací políčko určuje <strong>příslušnost</strong> do skupin a přepínač <strong>zobrazovanou</strong> skupinu v uživatelově profilu.', 'L_GROUP_NAME' => 'Název skupiny', 'L_GROUP_NAME_INFO' => 'Rozsah 1-128 znaků', 'L_GROUP_DESCRIPTION' => 'Popis skupiny', 'L_GROUP_DESCRIPTION_INFO' => 'Maximálně 256 znaků; Nepovinné', 'L_GROUP_PERMISSIONS' => 'Oprávnění skupiny', 'L_GROUP_PERMISSIONS_INFO' => 'Oprávnění přidělená všem členům skupiny', 'L_PERMISSION.auth.acp' => 'Administrace', 'L_PERMISSION.auth.acp.enter' => 'Povolit vstup', 'L_PERMISSION.auth.user' => 'Uživatelé', 'L_PERMISSION.auth.user.add' => 'Přidávat', 'L_PERMISSION.auth.user.edit' => 'Upravovat', 'L_PERMISSION.auth.user.delete' => 'Mazat', 'L_PERMISSION.auth.user.change_groups' => 'Měnit příslušnost ve skupinách (oprávnění)', 'L_PERMISSION.auth.group' => 'Skupiny', 'L_PERMISSION.auth.group.add' => 'Přidávat', 'L_PERMISSION.auth.group.edit' => 'Upravovat (oprávnění)', 'L_PERMISSION.auth.group.delete' => 'Mazat'));