コード例 #1
0
ファイル: languages.php プロジェクト: abhiesa-tolexo/loaded7
 public function __construct()
 {
     global $lC_Language, $breadcrumb_string;
     $this->_page_title = $lC_Language->get('heading_title');
     $breadcrumb_array = array(lc_link_object(lc_href_link_admin(FILENAME_DEFAULT, $this->_module), $lC_Language->get('heading_title')));
     if (!empty($_GET[$this->_module]) && is_numeric($_GET[$this->_module]) && lC_Languages_Admin::exists($_GET[$this->_module])) {
         $this->_page_title = lC_Languages_Admin::get($_GET[$this->_module], 'name');
         $this->_page_contents = 'groups.php';
         $breadcrumb_array[] = lc_link_object(lc_href_link_admin(FILENAME_DEFAULT, $this->_module . '=' . $this->_page_contents), $this->_page_title);
         if (isset($_GET['group']) && !empty($_GET['group']) && lC_Languages_Admin::isDefinitionGroup($_GET[$this->_module], $_GET['group'])) {
             $this->_page_title = $_GET['group'];
             $this->_page_contents = 'definitions.php';
             $breadcrumb_array[] = lc_link_object(lc_href_link_admin(FILENAME_DEFAULT, $this->_module . '=' . $this->_page_contents), $this->_page_title);
         }
     }
     $breadcrumb_string = '<ul>';
     foreach ($breadcrumb_array as $key => $value) {
         $breadcrumb_string .= '<li>' . lc_output_utf8_decoded($value) . '</li>';
     }
     $breadcrumb_string .= '</ul>';
     if (!isset($_GET['action'])) {
         $_GET['action'] = '';
     }
     if (!empty($_GET['action'])) {
         switch ($_GET['action']) {
             case 'import':
                 $lang = isset($_GET['language_import']) && $_GET['language_import'] != NULL ? $_GET['language_import'] : $_POST['language_import'];
                 $type = isset($_GET['import_type']) && $_GET['import_type'] != NULL ? $_GET['import_type'] : $_POST['import_type'];
                 try {
                     lC_Languages_Admin::import($lang, $type);
                 } catch (Exception $e) {
                     $_SESSION['error'] = true;
                     $_SESSION['errmsg'] = $lC_Language->get('ms_error_action_not_performed');
                 }
                 break;
             case 'export':
                 lC_Languages_Admin::export($_GET['lid'], $_POST['groups'], isset($_POST['include_data']) && $_POST['include_data'] == 'on');
                 break;
         }
     }
 }
コード例 #2
0
ファイル: languages.php プロジェクト: abhiesa-tolexo/loaded7
 public static function update($id, $data, $default = false)
 {
     global $lC_Database;
     $error = false;
     $lC_Database->startTransaction();
     $name = $data['charset'] == 'utf-8' ? lc_output_utf8_decoded($data['name']) : $data['name'];
     $Qlanguage = $lC_Database->query('update :table_languages set name = :name, code = :code, locale = :locale, charset = :charset, date_format_short = :date_format_short, date_format_long = :date_format_long, time_format = :time_format, text_direction = :text_direction, currencies_id = :currencies_id, numeric_separator_decimal = :numeric_separator_decimal, numeric_separator_thousands = :numeric_separator_thousands, parent_id = :parent_id, sort_order = :sort_order where languages_id = :languages_id');
     $Qlanguage->bindTable(':table_languages', TABLE_LANGUAGES);
     $Qlanguage->bindValue(':name', $name);
     $Qlanguage->bindValue(':code', $data['code']);
     $Qlanguage->bindValue(':locale', str_replace('P_CENT', '%', $data['locale']));
     $Qlanguage->bindValue(':charset', str_replace('P_CENT', '%', $data['charset']));
     $Qlanguage->bindValue(':date_format_short', str_replace('P_CENT', '%', $data['date_format_short']));
     $Qlanguage->bindValue(':date_format_long', str_replace('P_CENT', '%', $data['date_format_long']));
     $Qlanguage->bindValue(':time_format', str_replace('P_CENT', '%', $data['time_format']));
     $Qlanguage->bindValue(':text_direction', str_replace('P_CENT', '%', $data['text_direction']));
     $Qlanguage->bindInt(':currencies_id', $data['currencies_id']);
     $Qlanguage->bindValue(':numeric_separator_decimal', str_replace('P_CENT', '%', $data['numeric_separator_decimal']));
     $Qlanguage->bindValue(':numeric_separator_thousands', str_replace('P_CENT', '%', $data['numeric_separator_thousands']));
     $Qlanguage->bindInt(':parent_id', $data['parent_id']);
     $Qlanguage->bindInt(':sort_order', $data['sort_order']);
     $Qlanguage->bindInt(':languages_id', $id);
     $Qlanguage->setLogging($_SESSION['module'], $id);
     $Qlanguage->execute();
     if ($lC_Database->isError()) {
         $error = true;
     }
     if ($error === false) {
         if (isset($data['default']) && $data['default'] == 'on') {
             $default = true;
         }
         if ($default === true) {
             $Qupdate = $lC_Database->query('update :table_configuration set configuration_value = :configuration_value where configuration_key = :configuration_key');
             $Qupdate->bindTable(':table_configuration', TABLE_CONFIGURATION);
             $Qupdate->bindValue(':configuration_value', $data['code']);
             $Qupdate->bindValue(':configuration_key', 'DEFAULT_LANGUAGE');
             $Qupdate->setLogging($_SESSION['module'], $id);
             $Qupdate->execute();
             if ($lC_Database->isError() === false) {
                 if ($Qupdate->affectedRows()) {
                     lC_Cache::clear('configuration');
                 }
             } else {
                 $error = true;
             }
         }
     }
     if ($error === false) {
         $lC_Database->commitTransaction();
         lC_Cache::clear('languages');
         return true;
     } else {
         $lC_Database->rollbackTransaction();
     }
     return false;
 }