Esempio n. 1
0
 /**
  * Return row url for js event handlers
  *
  * @param Varien_Object
  *
  * @return string
  */
 public function getRowUrl($item)
 {
     if (!$item instanceof Varien_Object) {
         return parent::getRowUrl($item);
     }
     $rowUrlRoute = trim($this->getRowUrlRoute());
     if (empty($rowUrlRoute)) {
         return parent::getRowUrl($item);
     }
     $params = [];
     $rowUrlParams = $this->getRowUrlParams();
     $rowUrlParams = is_array($rowUrlParams) ? $rowUrlParams : explode(',', $rowUrlParams);
     $rowUrlParams = array_filter(array_map('trim', $rowUrlParams));
     foreach ($rowUrlParams as $key => $value) {
         if (strpos($value, '{{') === 0 && strrpos($value, '}}') === strlen($value) - 2) {
             $value = $item->getDataUsingMethod(substr($value, 2, -2));
         }
         $params[$key] = $value;
     }
     $rowUrlQueryParams = $this->getRowUrlQueryParams();
     $rowUrlQueryParams = is_array($rowUrlQueryParams) ? $rowUrlQueryParams : explode(',', $rowUrlQueryParams);
     $rowUrlQueryParams = array_filter(array_map('trim', $rowUrlQueryParams));
     foreach ($rowUrlQueryParams as $key => $value) {
         if (strpos($value, '{{') === 0 && strrpos($value, '}}') === strlen($value) - 2) {
             $value = $item->getDataUsingMethod(substr($value, 1, -1));
         }
         $params['_query'][$key] = $value;
     }
     return $this->getUrl($rowUrlRoute, $params);
 }
Esempio n. 2
0
 public function getRowUrl($row)
 {
     if ($url = $this->_getData('row_url')) {
         return $url;
     } elseif ($url = $this->_raiseGetRowUrl($row)) {
         return $url;
     } else {
         return parent::getRowUrl($row);
     }
 }