예제 #1
0
파일: Seeker.php 프로젝트: rtsantos/mais
 /**
  *
  * @param string $content
  * @return string 
  */
 public function render($content)
 {
     $element = $this->getElement();
     $attribs = $element->getAttribs();
     $search = $attribs['propSearch'];
     $name = $element->getFullyQualifiedName();
     $suffix = $attribs['suffix'];
     $prefix = $attribs['prefix'];
     if (!$suffix && !$prefix) {
         $suffix = $name;
     }
     #$id = htmlentities($element->getId());
     #$value = $element->getValue();
     if ($element->isRequired()) {
         $search->setRequired();
     }
     $xhtmlElements = '';
     $renderKeys = array('propId', 'propSearch', 'propDisplay');
     foreach ($renderKeys as $key) {
         if (isset($attribs[$key])) {
             $field = $attribs[$key]->getAttrib('field');
             $xhtmlElements .= $this->_renderElement($attribs[$key], $suffix, $prefix);
             unset($attribs['fields'][$field]);
         }
     }
     foreach ($attribs['fields'] as $field) {
         $key = 'prop' . ucfirst($field);
         $xhtmlElements .= $this->_renderElement($attribs[$key], $suffix, $prefix);
         unset($attribs[$key]);
     }
     $attribs['button']->addStyle('top', '-1px');
     $attribs['button']->addStyle('height', '20px');
     $attribs['button']->addStyle('width', '20px');
     $attribs['button']->addStyle('margin', '0px');
     $attribs['button']->addStyle('padding', '0px');
     //$attribs['button']->addStyle('position','absolute');
     if ($suffix) {
         $nameButton = $attribs['button']->getName();
         $nameButton .= '_' . $suffix;
         $attribs['button']->setName($nameButton);
     }
     if ($prefix) {
         $nameButton = $prefix . '_' . $attribs['button']->getName();
         $attribs['button']->setName($nameButton);
     }
     $xhtmlElements .= $attribs['button']->render();
     unset($attribs['button']);
     $id = $search->getAttrib('id');
     if (!$id) {
         $id = ZendT_View_Html::normalizeId($search->getName());
     }
     /**
      * 
      */
     $xhtml = '
         <div id="group-' . $id . '" class="form-group">
             <label for="' . $id . '" class="t-element">' . $element->getLabel() . '</label>
             <div style="position: relative;">
                 ' . $xhtmlElements . '
                 <div style="clear:both"></div>
             </div>
         </div>
     ';
     unset($attribs['propId']);
     unset($attribs['propSearch']);
     unset($attribs['propDisplay']);
     return $xhtml;
 }