Example #1
0
 public function put_update()
 {
     $post_data = Input::get('order');
     if (isset($post_data) and !empty($post_data)) {
         $order_items = explode(',', $post_data);
         foreach ($order_items as $order_position => $slug) {
             $affected = Settings\Model\Setting::where_slug($slug)->update(array('order' => $order_position));
         }
         return;
     }
     $settings = Input::all();
     foreach ($settings as $slug => $value) {
         // Update runtime configurations.
         $setting = Config::get('settings::core.' . $slug);
         if ($setting != null) {
             Config::set('settings::core.' . $slug, $value);
         }
         // Update database configurations
         $affected = Settings\Model\Setting::where_slug($slug)->update(array('value' => $value));
     }
     $this->data['message'] = Lang::line('splashscreen::lang.Settings were successfully updated')->get(ADM_LANG);
     $this->data['message_type'] = 'success';
     // redirect back to the module
     return Redirect::back()->with($this->data);
 }
Example #2
0
 public function get_index()
 {
     $db_is_ready = Config::get('settings::core.passes_db_settings');
     if (!(bool) $db_is_ready) {
         Session::flash('message_type', 'error');
         Session::flash('message', Lang::line('opensim::lang.Your opensim database needs to be configured!')->get(ADM_LANG));
     }
     $this->data['settings'] = Settings\Model\Setting::where_section('opensim_settings')->get();
     $this->data['section_bar_active'] = Lang::line('opensim::lang.Settings')->get(ADM_LANG);
     return $this->theme->render('opensim::backend.opensim.index', $this->data);
 }
Example #3
0
 public function uninstall()
 {
     //
     // REMOVE OPENSIM SETTINGS
     //
     $settings = Settings\Model\Setting::where_module_slug('opensim')->get();
     if (isset($settings) and !empty($settings)) {
         foreach ($settings as $setting) {
             $setting->delete();
         }
     }
 }
Example #4
0
 public function uninstall()
 {
     //
     // REMOVE SPLASHSCREEN
     //
     $settings = Settings\Model\Setting::where_module_slug('splashscreen')->get();
     if (isset($settings) and !empty($settings)) {
         foreach ($settings as $setting) {
             $setting->delete();
         }
     }
 }
Example #5
0
 public function uninstall()
 {
     //
     // REMOVE SETTINGS
     //
     $settings = Settings\Model\Setting::where_module_slug('email')->get();
     if (isset($settings) and !empty($settings)) {
         foreach ($settings as $setting) {
             $setting->delete();
         }
     }
     $emal_admin_new_user = Settings\Model\Setting::where_slug('email_admin_on_registration')->first();
     if (isset($settings) and !empty($settings)) {
         $emal_admin_new_user->delete();
     }
 }
Example #6
0
 public function put_update()
 {
     $post_data = Input::get('order');
     if (isset($post_data) and !empty($post_data)) {
         $order_items = explode(',', $post_data);
         foreach ($order_items as $order_position => $slug) {
             $affected = Settings\Model\Setting::where_slug($slug)->update(array('order' => $order_position));
         }
         return;
     }
     $settings = Input::all();
     // If we are saving settings for other module
     // other then settings module this value will
     // not be sent
     $adm_uri = Input::get('administration_uri');
     if (isset($adm_uri) and !empty($adm_uri)) {
         Session::put('ADM_URI', Input::get('administration_uri'));
     } else {
         Session::put('ADM_URI', ADM_URI);
     }
     foreach ($settings as $slug => $value) {
         // Update runtime configurations.
         $setting = Config::get('settings::core.' . $slug);
         if ($setting != null) {
             Config::set('settings::core.' . $slug, $value);
         }
         // Update database configurations
         $affected = Settings\Model\Setting::where_slug($slug)->update(array('value' => $value));
     }
     $this->data['message'] = Lang::line('settings::lang.Settings were successfully updated')->get(ADM_LANG);
     $this->data['message_type'] = 'success';
     // if we are changing the administration
     // uri it must be from settings module
     // redirect there with the new uri
     $redirect = Input::get('administration_uri');
     if (isset($redirect) and !empty($redirect)) {
         return Redirect::to(URL::base() . '/' . Session::get('ADM_URI') . '/settings')->with($this->data);
     }
     // we are not changing the administration
     // uri, it must be from another module
     // redirect back to the module
     return Redirect::back()->with($this->data);
 }
Example #7
0
 public function uninstall()
 {
     //
     // REMOVE EMAIL TEMPLATES
     //
     $email_templates = Email\Model\Template::where('module', '=', 'registration')->get();
     if (isset($email_templates) and !empty($email_templates)) {
         foreach ($email_templates as $template) {
             $template->delete();
         }
     }
     //
     // REMOVE SETTINGS
     //
     $settings = Settings\Model\Setting::where('module_slug', '=', 'registration')->get();
     if (isset($settings) and !empty($settings)) {
         foreach ($settings as $setting) {
             $setting->delete();
         }
     }
 }
Example #8
0
 public function uninstall()
 {
     //
     // REMOVE THEME
     //
     $bke = Themes\Model\Theme::where_slug('base_bke')->first();
     if (isset($bke) and !empty($bke)) {
         $bke->delete();
     }
     $fte = Themes\Model\Theme::where_slug('base_fte')->first();
     if (isset($fte) and !empty($fte)) {
         $fte->delete();
     }
     //
     // REMOVE THEME SETTINGS
     //
     $settings = Settings\Model\Setting::where_module_slug('themes')->get();
     if (isset($settings) and !empty($settings)) {
         foreach ($settings as $setting) {
             $setting->delete();
         }
     }
 }
Example #9
0
 public function put_update()
 {
     $rules = array('mail_protocol' => 'required|mail_protocol');
     $validation = Email\Validator::make(Input::all(), $rules)->speaks(ADM_LANG);
     if ($validation->passes()) {
         $mail_settings = $validation->attributes;
         foreach ($mail_settings as $slug => $value) {
             $slug = trim($slug);
             $value = trim($value);
             // Lets update runtime configurations.
             $setting = Config::get('settings::core.' . $slug);
             if ($setting != null) {
                 Config::set('settings::core.' . $slug, $value);
             }
             // Update database configurations
             $affected = Settings\Model\Setting::where('module_slug', '=', 'email')->where('slug', '=', $slug)->update(array('value' => $value));
         }
         $this->data['message'] = __('email::lang.Email settings were successfully updated')->get(ADM_LANG);
         $this->data['message_type'] = 'success';
         return Redirect::to(ADM_URI . '/email')->with($this->data);
     } else {
         return Redirect::back()->with_errors($validation->errors)->with_input();
     }
 }
Example #10
0
 public function put_update()
 {
     $settings = Input::all();
     $raw_rules = Settings\Model\Setting::where_in('slug', array_keys($settings))->where_module_slug('opensim')->get();
     $rules = array();
     foreach ($raw_rules as $setting) {
         if (isset($setting->validation) and !empty($setting->validation)) {
             $rules[$setting->slug] = $setting->validation;
         }
     }
     $validation = \Opensim\Validator::make($settings, $rules)->speaks(ADM_LANG);
     if ($validation->fails()) {
         return Redirect::back()->with_errors($validation->errors);
     }
     if (isset($settings['database_driver'])) {
         $credentials = array('driver' => $settings['database_driver'], 'host' => $settings['database_host'], 'database' => $settings['database_name'], 'username' => $settings['database_user'], 'password' => $settings['database_password'], 'charset' => 'utf8', 'prefix' => $settings['database_table_prefix'], 'port' => $settings['database_port']);
         $db = null;
         switch ($credentials['driver']) {
             case 'sqlite':
                 $db = new \Laravel\Database\Connectors\SQLite();
                 break;
             case 'mysql':
                 $db = new \Laravel\Database\Connectors\MySQL();
                 break;
             case 'pgsql':
                 $db = new \Laravel\Database\Connectors\Postgres();
                 break;
             case 'sqlsrv':
                 $db = new \Laravel\Database\Connectors\SQLServer();
                 break;
         }
         \Config::set('error.detail', false);
         \Event::listen('500', function ($message) {
             \Settings\Config::set('settings::core.passes_db_settings', 0, true);
             $this->data['message'] = $message;
             $this->data['message_type'] = 'error';
             $this->data['settings'] = Settings\Model\Setting::where_module_slug('opensim')->where_section('opensim_db_settings')->get();
             $this->data['section_bar_active'] = Lang::line('opensim::lang.Database Settings')->get(ADM_LANG);
             $content = $this->theme->render('opensim::backend.settings.index', $this->data);
             echo $content;
             die;
         });
         // If we get an exception when
         // trying to connect to the db
         // the event above will catch it
         // and return our view with the
         // error message
         $db->connect($credentials);
         // Set database flag
         Settings\Config::set('settings::core.passes_db_settings', 1, true);
         foreach ($settings as $slug => $value) {
             // Update database configurations
             if (!empty($value)) {
                 $affected = Settings\Model\Setting::where_slug($slug)->where_module_slug('opensim')->update(array('value' => $value));
             }
         }
         $this->data['message'] = Lang::line('opensim::lang.Opensim settings were successfully updated')->get(ADM_LANG);
         $this->data['message_type'] = 'success';
         return Redirect::back()->with($this->data);
     } else {
         $db_is_ready = Config::get('settings::core.passes_db_settings');
         if ((bool) $db_is_ready) {
             foreach ($settings as $slug => $value) {
                 // Update database configurations
                 if (strlen($value) > 0) {
                     $affected = Settings\Model\Setting::where_slug($slug)->where_module_slug('opensim')->update(array('value' => $value));
                 }
             }
             $this->data['message'] = Lang::line('opensim::lang.Opensim settings were successfully updated')->get(ADM_LANG);
             $this->data['message_type'] = 'success';
             return Redirect::back()->with($this->data);
         } else {
             Session::flash('message_type', 'error');
             Session::flash('message', Lang::line('opensim::lang.Your opensim database needs to be configured!')->get(ADM_LANG));
             return Redirect::back()->with($this->data);
         }
     }
 }
Example #11
0
<?php

$opensim_db_settings = Settings\Model\Setting::where_module_slug('opensim')->where_section('opensim_db_settings')->get();
foreach ($opensim_db_settings as $setting) {
    $os_db_settings[$setting->slug] = $setting->value;
}
return array('connections' => array('default' => array('driver' => $os_db_settings['database_driver'], 'host' => $os_db_settings['database_host'], 'database' => $os_db_settings['database_name'], 'username' => $os_db_settings['database_user'], 'password' => $os_db_settings['database_password'], 'charset' => 'utf8', 'prefix' => $os_db_settings['database_table_prefix'], 'port' => $os_db_settings['database_port'])));