original_string: public function get($store = null)
      {
          if (!$this->db->isInitialized()) {
              return array();
          }
  
          if (!isset($store)) {
              $url = $this->server->httpHost();
              $basepath = trim($this->request->base(true), '/');
              $store = trim("$url/$basepath", '/');
          }
  
          $result = &gplcart_static("store.get.$store");
  
          if (isset($result)) {
              return $result;
          }
  
          $this->hook->attach('store.get.before', $store, $result, $this);
  
          if (isset($result)) {
              return $result;
          }
  
          $conditions = array();
  
          if (is_numeric($store)) {
              $conditions['store_id'] = $store;
          } else if (strpos($store, '/') === false) {
              $conditions['domain'] = $store;
          } else {
              list($domain, $basepath) = explode('/', $store, 2);
              $conditions['domain'] = $domain;
              $conditions['basepath'] = $basepath;
          }
  
          $conditions['limit'] = array(0, 1);
          $list = (array) $this->getList($conditions);
          $result = empty($list) ? array() : reset($list);
  
          if (isset($result['data'])) {
              $result['data'] += $this->getDefaultData();
          }
  
          $this->hook->attach('store.get.after', $store, $result, $this);
          return $result;
      }
code: public function get($store = null)
      {
          if (!$this->db->isInitialized()) {
              return array();
          }
  
          if (!isset($store)) {
              $url = $this->server->httpHost();
              $basepath = trim($this->request->base(true), '/');
              $store = trim("$url/$basepath", '/');
          }
  
          $result = &gplcart_static("store.get.$store");
  
          if (isset($result)) {
              return $result;
          }
  
          $this->hook->attach('store.get.before', $store, $result, $this);
  
          if (isset($result)) {
              return $result;
          }
  
          $conditions = array();
  
          if (is_numeric($store)) {
              $conditions['store_id'] = $store;
          } else if (strpos($store, '/') === false) {
              $conditions['domain'] = $store;
          } else {
              list($domain, $basepath) = explode('/', $store, 2);
              $conditions['domain'] = $domain;
              $conditions['basepath'] = $basepath;
          }
  
          $conditions['limit'] = array(0, 1);
          $list = (array) $this->getList($conditions);
          $result = empty($list) ? array() : reset($list);
  
          if (isset($result['data'])) {
              $result['data'] += $this->getDefaultData();
          }
  
          $this->hook->attach('store.get.after', $store, $result, $this);
          return $result;
      }
code_tokens: public function get ( $ store = null ) { if ( ! $ this -> db -> isInitialized ( ) ) { return array ( ) ; } if ( ! isset ( $ store ) ) { $ url = $ this -> server -> httpHost ( ) ; $ basepath = trim ( $ this -> request -> base ( true ) , '/' ) ; $ store = trim ( "$url/$basepath" , '/' ) ; } $ result = & gplcart_static ( "store.get.$store" ) ; if ( isset ( $ result ) ) { return $ result ; } $ this -> hook -> attach ( 'store.get.before' , $ store , $ result , $ this ) ; if ( isset ( $ result ) ) { return $ result ; } $ conditions = array ( ) ; if ( is_numeric ( $ store ) ) { $ conditions [ 'store_id' ] = $ store ; } else if ( strpos ( $ store , '/' ) === false ) { $ conditions [ 'domain' ] = $ store ; } else { list ( $ domain , $ basepath ) = explode ( '/' , $ store , 2 ) ; $ conditions [ 'domain' ] = $ domain ; $ conditions [ 'basepath' ] = $ basepath ; } $ conditions [ 'limit' ] = array ( 0 , 1 ) ; $ list = ( array ) $ this -> getList ( $ conditions ) ; $ result = empty ( $ list ) ? array ( ) : reset ( $ list ) ; if ( isset ( $ result [ 'data' ] ) ) { $ result [ 'data' ] += $ this -> getDefaultData ( ) ; } $ this -> hook -> attach ( 'store.get.after' , $ store , $ result , $ this ) ; return $ result ; }
docstring: Loads a store
  @param integer|string|null $store
  @return array
docstring_tokens: Loads a store