Author: Fabien Potencier (fabien@symfony.com)
Inheritance: extends Symfony\Component\Templating\Helper\Helper
 /**
  * Build a HTML link. $options holds all link parameters
  * like "alt, class" and so on. $title can also be an image
  * if required.
  *
  * @param array $params - url query params
  * @param string $route
  * @param string $title
  * @param array $options
  * @return string
  */
 private function buildLink($params, $route, $title, $options = array())
 {
     $options['href'] = $this->routerHelper->generate($route, $params, $options['absolute']);
     unset($options['absolute']);
     if (!isset($options['title'])) {
         $options['title'] = $title;
     }
     return $this->engine->render('KnpPaginatorBundle:Pagination:sortable_link.html.twig', array('options' => $options, 'title' => $title));
 }
Ejemplo n.º 2
0
 /**
  * Create a filter url for the field named $title
  * and identified by $key which consists of
  * alias and field. $options holds all link
  * parameters like "alt, class" and so on.
  *
  * $key example: "article.title"
  *
  * @param string $title
  * @param string $key
  * @param array $options
  * @param array $params
  * @return array
  */
 public function filter($pagination, array $fields, $options = array(), $params = array())
 {
     $options = array_merge(array('absolute' => false, 'translationParameters' => array(), 'translationDomain' => null, 'button' => 'Filter'), $options);
     $params = array_merge($pagination->getParams(), $params);
     $params[$pagination->getPaginatorOption('pageParameterName')] = 1;
     // reset to 1 on filter
     $filterFieldName = $pagination->getPaginatorOption('filterFieldParameterName');
     $filterValueName = $pagination->getPaginatorOption('filterValueParameterName');
     $selectedField = isset($params[$filterFieldName]) ? $params[$filterFieldName] : null;
     $selectedValue = isset($params[$filterValueName]) ? $params[$filterValueName] : null;
     $action = $this->routerHelper->generate($pagination->getRoute(), $params, $options['absolute']);
     foreach ($fields as $field => $title) {
         $fields[$field] = $this->translator->trans($title, $options['translationParameters'], $options['translationDomain']);
     }
     $options['button'] = $this->translator->trans($options['button'], $options['translationParameters'], $options['translationDomain']);
     unset($options['absolute'], $options['translationDomain'], $options['translationParameters']);
     return array_merge($pagination->getPaginatorOptions(), $pagination->getCustomParameters(), compact('fields', 'action', 'filterFieldName', 'filterValueName', 'selectedField', 'selectedValue', 'options'));
 }
 /**
  * Generates the resizement target url
  *
  * @param string src
  * @param string function
  * @param string size
  * @return string the resizement url
  */
 public function url($src, $function, $size)
 {
   return $this->router->generate('image_resizer_image_resize', array('function' => $function, 'size' => $size, 'resource' => $src));
 }
 /**
  * Generates a URL for a package.
  *
  * @param  string $file The URL of the package
  *
  * @return string The generated URL
  */
 protected function generatePackageURL($file, $format)
 {
     return $this->routerHelper->generate('_assetpackager_get', array('file' => $file, '_format' => $format));
 }