<?php
namespace shop;
use shop\Produt;

class Search implements \ArrayAccess
{
  static public function simple_form()
  {
    return \Shared\Tpl\Tpl::view( 'shop-search/simple-form' );
  }

  static public function search_results()
  {
    global $lang_id;

    $bs = \Shared\Helpers\Helpers::get( 'bs' );

    $results = \shop\Product::searchProductsByName( \Shared\Helpers\Helpers::get( 'query' ), $lang_id, (int)$bs );

    $out = \Shared\Tpl\Tpl::view( 'shop-search/products', [
      'query' => \Shared\Helpers\Helpers::get( 'query' ),
      'products' => $results['products']
      ]);

    if ( $results['ls'] > 1 )
    {
      $tpl = new \Shared\Tpl\Tpl;
      $tpl -> ls = $results['ls'];
      $tpl -> bs = $bs ? $bs : 1;
      $tpl -> link = 'wyszukiwarka/' . \Shared\Helpers\Helpers::get( 'query' );
      $out .= $tpl -> render( 'site/pager' );
    }

    return $out;
  }

  static public function search_products()
  {
    global $lang_id;

    $results = \shop\Product::searchProductByNameAjax( \Shared\Helpers\Helpers::get( 'query' ), $lang_id );
    if ( \Shared\Helpers\Helpers::is_array_fix( $results ) ) foreach ( $results as $row )
      $products[] = \Shared\Tpl\Tpl::view( 'shop-search/product-search', [
                      'product' => Product::getFromCache( $row['product_id'], $lang_id )
                    ] );

    echo json_encode( $products );
    exit;
  }

  public function offsetExists( $offset )
  {
    return isset( $this -> $offset );
  }

  public function offsetGet( $offset )
  {
    return $this -> $offset;
  }

  public function offsetSet( $offset, $value )
  {
    $this -> $offset = $value;
  }

  public function offsetUnset( $offset )
  {
    unset( $this -> $offset );
  }
}