示例#1
0
 function load($language_id, $overwrite = FALSE)
 {
     global $database;
     $load_keys = parent::load($language_id, $overwrite);
     if (empty($load_keys)) {
         return;
     }
     $filename = $this->language_file_name($language_id);
     $languagevar_array = $this->read_language_file($filename, $load_keys);
     $languagevar_array = $languagevar_array['languagevars'];
     if (is_array($languagevar_array)) {
         foreach ($languagevar_array as $languagevar_id => $languagevar_value) {
             $this->_language_variables[$row['languagevar_id']] = $row['languagevar_value'];
         }
     }
 }
<?php

/* $Id: admin_language_import.php 8 2009-01-11 06:02:53Z nico-izo $ */
$page = "admin_language_import";
include "admin_header.php";
$task = isset($_POST['task']) ? $_POST['task'] : (isset($_GET['task']) ? $_GET['task'] : NULL);
$is_error = FALSE;
$result = NULL;
if ($task == "doimport") {
    $language_storage_mysql = SELanguageStorage::getInstance('mysql');
    $language_storage_file = SELanguageStorage::getInstance('file');
    $language_file_data = $language_storage_file->read_language_file($_FILES['language_import_file']['tmp_name']);
    $language_id = $_POST['language_id'];
    $language_overwrite = $_POST['language_import_mode'] == 'replace';
    if (empty($language_file_data)) {
        $is_error = 1308;
    } elseif ($language_id == '-1' && empty($language_file_data['language_info']['language_code'])) {
        $is_error = 1309;
    } elseif ($language_id == '-1' && empty($language_file_data['language_info']['language_name'])) {
        $is_error = 1310;
    }
    // Create new language if necessary
    if (!$is_error && $language_id == '-1') {
        $language_code = $language_file_data['language_info']['language_code'];
        $language_name = $language_file_data['language_info']['language_name'];
        $language_setlocale = $language_file_data['language_info']['language_locale'];
        $language_autodetect_regex = $language_file_data['language_info']['language_autodetect'];
        $sql = "\r\n      INSERT INTO se_languages\r\n        (language_code, language_name, language_setlocale, language_autodetect_regex)\r\n      VALUES\r\n        ('{$language_code}', '{$language_name}', '{$language_setlocale}', '{$language_autodetect_regex}')\r\n    ";
        if (!$database->database_query($sql)) {
            $is_error = 1311;
        } else {
示例#3
0
 function load($language_id, $overwrite = FALSE)
 {
     global $database;
     $load_keys = parent::load($language_id, $overwrite);
     if (empty($load_keys)) {
         return;
     }
     // Make query
     $sql = "SELECT languagevar_id, languagevar_value FROM se_languagevars WHERE languagevar_id IN('" . join("', '", array_filter($load_keys)) . "')";
     $sql .= " AND languagevar_language_id='{$language_id}'";
     if (reset(array_filter($load_keys)) !== FALSE) {
         $resource = $database->database_query($sql);
         while ($row = $database->database_fetch_assoc($resource)) {
             $this->_language_variables[$row['languagevar_id']] = $row['languagevar_value'];
         }
     }
 }
$task = isset($_POST['task']) ? $_POST['task'] : (isset($_GET['task']) ? $_GET['task'] : NULL);
$start = isset($_POST['start']) ? $_POST['start'] : (isset($_GET['start']) ? $_GET['start'] : NULL);
$end = isset($_POST['end']) ? $_POST['end'] : (isset($_GET['end']) ? $_GET['end'] : NULL);
$language_id = isset($_POST['language_id']) ? $_POST['language_id'] : (isset($_GET['language_id']) ? $_GET['language_id'] : NULL);
$is_error = FALSE;
$result = NULL;
// VALIDATE LANGUAGE ID
$sql = "SELECT * FROM se_languages WHERE language_id='{$language_id}' LIMIT 1";
$resource = $database->database_query($sql) or die($database->database_error());
if (!$database->database_num_rows($resource)) {
    header('Location: admin_language.php');
    exit;
}
$language_info = $database->database_fetch_assoc($resource);
$language_object_database = SELanguageStorage::getInstance('mysql');
$language_object_file = SELanguageStorage::getInstance('file');
if ($task == "doexport") {
    $sql = "SELECT * FROM se_languagevars WHERE languagevar_language_id='{$language_id}'";
    if (!empty($start)) {
        $sql .= " && languagevar_id>='{$start}'";
    }
    if (!empty($end)) {
        $sql .= " && languagevar_id<='{$end}'";
    }
    $sql .= "ORDER BY languagevar_id ASC";
    $resource = $database->database_query($sql) or die($database->database_error());
    $languagevars_export_array = array();
    while ($languagevar_info = $database->database_fetch_assoc($resource)) {
        $languagevars_export_array[$languagevar_info['languagevar_id']] = $languagevar_info['languagevar_value'];
    }
    $file_contents = $language_object_file->make_language_file($language_info['language_id'], $languagevars_export_array);
示例#5
0
 function &getStorage($type = 'mysql')
 {
     static $storages;
     if (!is_array($storages)) {
         $storages = array();
     }
     if (!empty($storages[$type])) {
         return $storages[$type];
     }
     if (!class_exists("SELanguageStorage")) {
         require_once dirname(__FILE__) . DIRECTORY_SEPARATOR . "storage.php";
     }
     $storages[$type] =& SELanguageStorage::getInstance($type);
     return $storages[$type];
 }