public function ordersCollection($params)
 {
     /**
      * @var shopOrdersCollection $collection
      */
     $collection = $params['collection'];
     $hash = $collection->getType();
     $filters = self::parseHash(urldecode($hash));
     $model = new shopOrderModel();
     foreach ($filters as $k => $v) {
         $key = $model->escape($k);
         $value = $model->escape($v);
         if (empty($value)) {
             continue;
         }
         if (substr($key, 0, 15) == 'update_datetime') {
             $operators = array("_from" => ">=", "_to" => "<=");
             if (array_key_exists(substr($key, 15), $operators)) {
                 $operator = $operators[substr($key, 15)];
                 $collection->addWhere("o.update_datetime" . $operator . "'" . date('Y-m-d', strtotime($value)) . "'");
             }
         } elseif (substr($key, 0, 7) == 'params.') {
             $model_params = new shopOrderParamsModel();
             $params_table_name = $model_params->getTableName();
             $collection->addJoin($params_table_name, "o.id=:table.order_id AND :table.name='" . substr($key, 7) . "'", ":table.value" . $this->getWhere($value));
         } elseif ($model->fieldExists($key)) {
             $title[] = $key . $this->getWhere($value);
             $collection->addWhere("o." . $key . $this->getWhere($value));
         }
     }
     return true;
 }