original_string: protected function setThemeProperties()
      {
          $this->theme_frontend = $this->config('theme', 'frontend');
          $this->theme_backend = $this->config('theme_backend', 'backend');
  
          if ($this->is_backend) {
              $this->theme = $this->theme_backend;
          } elseif ($this->is_install) {
              $this->theme = $this->theme_frontend;
          } elseif (!empty($this->current_store)) {
              $this->theme_frontend = $this->store->getConfig('theme');
              $this->theme = $this->theme_frontend;
          }
  
          $this->hook->attach('theme', $this);
  
          if (empty($this->theme)) {
              $this->response->outputError404();
          }
  
          $this->current_theme = $this->module->getInfo($this->theme);
  
          if (empty($this->current_theme)) {
              $this->response->outputError404();
          }
  
          $this->theme_settings = (array) $this->getModuleSettings($this->theme, null, array());
          $this->templates = $this->getDefaultTemplates();
  
          if (!empty($this->current_theme['data']['templates'])) {
              $this->templates = array_merge($this->templates, $this->current_theme['data']['templates']);
          }
      }
code: protected function setThemeProperties()
      {
          $this->theme_frontend = $this->config('theme', 'frontend');
          $this->theme_backend = $this->config('theme_backend', 'backend');
  
          if ($this->is_backend) {
              $this->theme = $this->theme_backend;
          } elseif ($this->is_install) {
              $this->theme = $this->theme_frontend;
          } elseif (!empty($this->current_store)) {
              $this->theme_frontend = $this->store->getConfig('theme');
              $this->theme = $this->theme_frontend;
          }
  
          $this->hook->attach('theme', $this);
  
          if (empty($this->theme)) {
              $this->response->outputError404();
          }
  
          $this->current_theme = $this->module->getInfo($this->theme);
  
          if (empty($this->current_theme)) {
              $this->response->outputError404();
          }
  
          $this->theme_settings = (array) $this->getModuleSettings($this->theme, null, array());
          $this->templates = $this->getDefaultTemplates();
  
          if (!empty($this->current_theme['data']['templates'])) {
              $this->templates = array_merge($this->templates, $this->current_theme['data']['templates']);
          }
      }
code_tokens: protected function setThemeProperties ( ) { $ this -> theme_frontend = $ this -> config ( 'theme' , 'frontend' ) ; $ this -> theme_backend = $ this -> config ( 'theme_backend' , 'backend' ) ; if ( $ this -> is_backend ) { $ this -> theme = $ this -> theme_backend ; } elseif ( $ this -> is_install ) { $ this -> theme = $ this -> theme_frontend ; } elseif ( ! empty ( $ this -> current_store ) ) { $ this -> theme_frontend = $ this -> store -> getConfig ( 'theme' ) ; $ this -> theme = $ this -> theme_frontend ; } $ this -> hook -> attach ( 'theme' , $ this ) ; if ( empty ( $ this -> theme ) ) { $ this -> response -> outputError404 ( ) ; } $ this -> current_theme = $ this -> module -> getInfo ( $ this -> theme ) ; if ( empty ( $ this -> current_theme ) ) { $ this -> response -> outputError404 ( ) ; } $ this -> theme_settings = ( array ) $ this -> getModuleSettings ( $ this -> theme , null , array ( ) ) ; $ this -> templates = $ this -> getDefaultTemplates ( ) ; if ( ! empty ( $ this -> current_theme [ 'data' ] [ 'templates' ] ) ) { $ this -> templates = array_merge ( $ this -> templates , $ this -> current_theme [ 'data' ] [ 'templates' ] ) ; } }
docstring: Sets theme properties
docstring_tokens: Sets theme properties