protected function filterViewVars(array $vars = array())
 {
     $vars = parent::filterViewVars($vars);
     $vars['links'] = $this->getLinks($vars['includeCurrent']);
     $vars['nbLinks'] = count($vars['links']);
     return $vars;
 }
  protected function filterViewVars(array $vars = array())
  {
    $vars = parent::filterViewVars($vars);

    $menuClass = dmArray::get($vars, 'menuClass');

    $vars['menu'] = $this->getService('menu', $menuClass ? $menuClass : null)
    ->ulClass($vars['ulClass']);

    foreach($vars['items'] as $index => $item)
    {
      $menuItem = $vars['menu']
      ->addChild($index.'-'.dmString::slugify($item['text']), $item['link'])
      ->label($item['text'])
      ->secure(!empty($item['secure']))
      ->liClass($vars['liClass'])
      ->addRecursiveChildren(dmArray::get($item, 'depth', 0));

      if(!empty($item['nofollow']) && $menuItem->getLink())
      {
        $menuItem->getLink()->set('rel', 'nofollow');
      }
    }

    unset($vars['items'], $vars['ulClass'], $vars['liClass']);

    return $vars;
  }
Example #3
0
 protected function filterViewVars(array $vars = array())
 {
     $vars = parent::filterViewVars($vars);
     $vars['form'] = new mySearchForm();
     $vars['form']->bind(array('query' => $this->context->getRequest()->getParameter('query')));
     $vars['query'] = $vars['form']->getValue('query');
     $vars['pager'] = $this->getResultsPager($vars);
     return $vars;
 }
 protected function filterViewVars(array $vars = array())
 {
     $vars = parent::filterViewVars($vars);
     if (!empty($vars['mediaId']) || $this->isRequiredVar('mediaId')) {
         $media = dmDb::table('DmMedia')->findOneByIdWithFolder($vars['mediaId']);
         if (!$media instanceof DmMedia) {
             throw new dmException('No DmMedia found for media id : ' . $vars['mediaId']);
         }
         $mediaTag = $this->getHelper()->media($media);
         if (!empty($vars['width']) || !empty($vars['height'])) {
             $mediaTag->size(dmArray::get($vars, 'width'), dmArray::get($vars, 'height'));
         }
     } else {
         $media = null;
         $mediaTag = null;
     }
     $vars['media'] = $media;
     $vars['mediaTag'] = $mediaTag;
     return $vars;
 }
 protected function filterViewVars(array $vars = array())
 {
     $vars = parent::filterViewVars($vars);
     // extract media ids
     $mediaIds = array();
     foreach ($vars['medias'] as $index => $mediaConfig) {
         $mediaIds[] = $mediaConfig['id'];
     }
     // fetch media records
     $mediaRecords = empty($mediaIds) ? array() : $this->getMediaQuery($mediaIds)->fetchRecords()->getData();
     // sort records
     $this->mediaPositions = array_flip($mediaIds);
     usort($mediaRecords, array($this, 'sortRecordsCallback'));
     // build media tags
     $medias = array();
     foreach ($mediaRecords as $index => $mediaRecord) {
         $mediaTag = $this->getHelper()->media($mediaRecord);
         if (!empty($vars['width']) || !empty($vars['height'])) {
             $mediaTag->size(dmArray::get($vars, 'width'), dmArray::get($vars, 'height'));
         }
         $mediaTag->method($vars['method']);
         if ($vars['method'] === 'fit') {
             $mediaTag->background($vars['background']);
         }
         if ($alt = $vars['medias'][$index]['alt']) {
             $mediaTag->alt($this->__($alt));
         }
         if ($quality = dmArray::get($vars, 'quality')) {
             $mediaTag->quality($quality);
         }
         $medias[] = array('tag' => $mediaTag, 'link' => $vars['medias'][$index]['link']);
     }
     // replace media configuration by media tags
     $vars['medias'] = $medias;
     return $vars;
 }
 protected function filterViewVars(array $vars = array())
 {
     $vars = parent::filterViewVars($vars);
     $vars['text'] = nl2br($vars['text']);
     return $vars;
 }
 protected function filterViewVars(array $vars = array())
 {
     $vars = parent::filterViewVars($vars);
     // extract media ids
     $mediaIds = array();
     foreach ($vars['medias'] as $index => $mediaConfig) {
         $mediaIds[] = $mediaConfig['id'];
     }
     // fetch media records
     $mediaRecords = empty($mediaIds) ? array() : $this->getMediaQuery($mediaIds)->fetchRecords()->getData();
     // sort records
     $this->mediaPositions = array_flip($mediaIds);
     usort($mediaRecords, array($this, 'sortRecordsCallback'));
     // build media tags
     $medias = array();
     $cur_col = 0;
     $cur_row = 1;
     foreach ($mediaRecords as $index => $mediaRecord) {
         $cur_col++;
         $mediaTag = $this->getHelper()->media($mediaRecord);
         if (!empty($vars['width']) || !empty($vars['height'])) {
             // calculate grid images width
             $width = round((dmArray::get($vars, 'width') - (dmArray::get($vars, 'cols') - 1) * dmArray::get($vars, 'margin')) / dmArray::get($vars, 'cols'));
             $height = round((dmArray::get($vars, 'height') - (dmArray::get($vars, 'rows') - 1) * dmArray::get($vars, 'margin')) / dmArray::get($vars, 'rows'));
             $mediaTag->size($width, $height);
             // check column and set margin as margin-right
             if ($cur_col == dmArray::get($vars, 'cols')) {
                 $cur_col = 0;
                 $cur_row++;
             } else {
                 $mediaTag->style(implode(';', array($mediaTag->get('style'), 'margin-right: ' . dmArray::get($vars, 'margin') . 'px')));
             }
             // check row and set margin as margin-bottom
             if ($cur_row < dmArray::get($vars, 'cols')) {
                 $mediaTag->style(implode(';', array($mediaTag->get('style'), 'margin-bottom: ' . dmArray::get($vars, 'margin') . 'px')));
             }
         }
         $mediaTag->method($vars['method']);
         if ($vars['method'] === 'fit') {
             $mediaTag->background($vars['background']);
         }
         if ($alt = $vars['medias'][$index]['alt']) {
             $mediaTag->alt($this->__($alt));
         }
         if ($quality = dmArray::get($vars, 'quality')) {
             $mediaTag->quality($quality);
         }
         $big = $this->getHelper()->media($mediaRecord);
         if (!empty($vars['big_width'])) {
             if (!empty($vars['big_height'])) {
                 $big = $big->size($vars['big_width'] . 'x' . $vars['big_height']);
             } else {
                 $big = $big->size($vars['big_width']);
             }
         }
         $medias[] = array('tag' => $mediaTag, 'link' => $vars['medias'][$index]['link'], 'title' => $vars['medias'][$index]['alt'], 'src' => $big->getSrc());
     }
     // check colorbox config options
     if (isset($vars['config']) && !empty($vars['config'])) {
         //      if (strpos($vars['config'], '{') !== 0) {
         //        $vars['config'] = '['.$vars['config'].']';
         //      }
         $vars['config'] = sfYaml::load($vars['config']);
     } else {
         $vars['config'] = array();
     }
     // replace media configuration by media tags
     $vars['medias'] = $medias;
     return $vars;
 }
 public function configure()
 {
     parent::configure();
     $this->addRequiredVar('content');
 }
 protected function filterViewVars(array $vars = array())
 {
     $vars = parent::filterViewVars($vars);
     $vars['items'] = $this->getItems($vars['url'], $vars['nb_items'], $vars['life_time']);
     return $vars;
 }
Example #10
0
 public function isCachable()
 {
     return parent::isCachable() && !$this->getService('request')->hasParameter('query');
 }
 public function configure()
 {
     parent::configure();
     $this->addRequiredVar(array('html'));
 }