Example #1
0
 /**
  * Sets a config value
  *
  */
 public function set_config($key, $val)
 {
     if (!is_null(self::$content)) {
         //			$pattern = '%(config\[\''.$key.'\'\] = \')(.*)(\';)%';
         //			self::$content = preg_replace($pattern, '$1'.$val. '$3', self::$content );
         $pattern = '%(config\\[\'' . $key . '\'\\] = )(\'?.*\'?)(;)%';
         $type = gettype($val);
         if ($type == 'string') {
             $val = "'" . $val . "'";
         } elseif ($type === 'boolean') {
             $val = $val ? TRUE : (int) FALSE;
         }
         self::$content = preg_replace($pattern, '${1}' . $val . '${3}', self::$content);
         return TRUE;
     }
     return FALSE;
 }
Example #2
0
 /**
  * Saves the website settings
  *
  */
 function _save_settings()
 {
     // Config library
     require_once './class/Config.php';
     // Check if data are empty
     if (empty($_POST['lang_code'])) {
         $this->_send_error('settings', lang('settings_error_missing_lang_code'), $_POST);
     }
     if (empty($_POST['lang_name'])) {
         $this->_send_error('settings', lang('settings_error_missing_lang_name'), $_POST);
     }
     // Lang code must be on 2 or 3 chars
     if (strlen($_POST['lang_code']) > 8) {
         $this->_send_error('settings', lang('settings_error_lang_code_8_chars'), $_POST);
     }
     // Check if admin URL is correct
     if (!preg_match("/^([a-z0-9])+\$/i", $_POST['admin_url']) or empty($_POST['admin_url'])) {
         $this->_send_error('settings', lang('settings_error_admin_url'), $_POST);
     }
     // Save the Admin URL
     $conf = new ION_Config(APPPATH . 'config/', 'config.php');
     $conf->set_config('admin_url', $_POST['admin_url']);
     if ($conf->save() == FALSE) {
         $this->_send_error('settings', lang('settings_error_write_rights_config'), $_POST);
     }
     $lang_code = strtolower($_POST['lang_code']);
     // DB save
     $this->db_connect();
     $data = array('lang' => $lang_code, 'name' => $_POST['lang_name'], 'online' => '1', 'def' => '1', 'ordering' => '1');
     // Check if the lang exists
     $this->db->where('lang', $lang_code);
     $query = $this->db->get('lang');
     if ($query->num_rows() > 0) {
         // updates the lang
         $this->db->where('lang', $lang_code);
         $this->db->update('lang', $data);
     } else {
         // insert the lang
         $this->db->insert('lang', $data);
     }
     $data = array(0 => $data);
     return $this->_save_language_config_file($data);
 }