예제 #1
0
 function __construct()
 {
     // Saving Theme Settings
     $active_theme = get_core_vars('active_theme');
     if (riake('namespace', $active_theme)) {
         $settings = get_meta($active_theme['namespace'] . '_theme_settings');
         if ($settings) {
             push_core_vars('active_theme', 'theme_settings', $settings);
         }
     }
     $this->module = get_modules('filter_namespace', 'tim');
     if (is_admin()) {
         $this->menu = new Menu();
         $this->menu = new Menu();
         $this->menu->add_admin_menu_core('themes', array('title' => __('Theme Options'), 'icon' => 'fa fa-columns', 'href' => get_instance()->url->site_url(array('admin', 'open', 'modules', $this->module['namespace']))));
     }
 }
예제 #2
0
 public function index()
 {
     $active_theme = get_core_vars('active_theme');
     $setting_key = $active_theme['namespace'] . '_theme_settings';
     $this->load->library('form_validation');
     $this->form_validation->set_rules('api_limit', 'API LIMIT', 'required');
     $this->form_validation->set_rules('declared_apis', 'Declared API', 'required');
     $this->form_validation->set_rules('declared_item', 'Declared Item', 'required');
     // For Static using API
     if ($this->form_validation->run()) {
         if ($active_theme) {
             $datas_get = get_meta($setting_key);
             $saved_settings = $datas_get ? $datas_get : array();
             // If there are same setting already saved, they'll be overwrited
             $saved_settings[$this->input->post('declared_item')] = array('api_limit' => $this->input->post('api_limit'), 'declared_apis' => $this->input->post('declared_apis'), 'declared_item' => $this->input->post('declared_item'));
             if (set_meta($active_theme['namespace'] . '_theme_settings', $saved_settings)) {
                 notice('push', fetch_notice_output('done'));
             }
         }
     }
     // For Static not draggable
     if ($this->input->post('is_static_item')) {
         $this->load->library('form_validation');
         if ($static = return_if_array_key_exists('static', $_POST)) {
             if (is_array($static)) {
                 $active_theme = get_core_vars('active_theme');
                 $saved_settings = get_meta($active_theme['namespace'] . '_theme_settings');
                 foreach ($static as $namespace => $item) {
                     if (is_array($item)) {
                         foreach ($item as $name => $fields) {
                             $saved_settings[$namespace][$name] = $fields;
                         }
                     }
                 }
                 if (set_meta($active_theme['namespace'] . '_theme_settings', $saved_settings)) {
                     notice('push', fetch_notice_output('done'));
                 }
             }
         }
     }
     // Add Settings to Core vars
     push_core_vars('active_theme', 'theme_settings', get_meta($setting_key));
     set_page('title', 'TIM | ' . get('core_version'));
     return $this->load->view($this->module_metas['uri_path'] . 'views/body', $this->data, true, true);
 }