protected function renderContent(Text_Renderer $renderer)
 {
     $renderer->descend();
     foreach ($this->_elements as $element) {
         $element->render($renderer);
     }
     $renderer->ascend();
 }
 protected function renderConstant(Text_Renderer $renderer)
 {
     $constants = Project_Config::get('constants');
     if (array_key_exists($this->name, $constants)) {
         $constant = $constants[$this->name];
     } else {
         throw new Template_Invalid_Argument_Exception('name', $this->name);
     }
     $renderer->renderText($this->raw ? $constant : htmlspecialchars($constant));
 }
 protected function renderEnd(Text_Renderer $renderer)
 {
     $renderer->renderNL();
     parent::renderEnd($renderer);
 }
 protected function renderBegin(Text_Renderer $renderer)
 {
     if ($this->_code !== '') {
         $renderer->render("&{$this->_code};");
     }
 }
 protected function renderContent(Text_Renderer $renderer)
 {
     $text = $this->_raw ? $this->_text : htmlspecialchars($this->_text);
     $renderer->render($text);
 }
 protected function renderEventAttribute($name, $value, Text_Renderer $renderer)
 {
     $val = (string) $value;
     $fvalue = $this->_raw ? $val : str_replace('"', '\\"', $val);
     $renderer->render(" {$name}=\"{$fvalue}\"");
 }
 protected function renderEnd(Text_Renderer $renderer)
 {
     if (!$this->_unpaired) {
         $to_render = "</{$this->_tag}>";
         switch ($this->_render) {
             case null:
             case '':
             case 'default':
                 break;
             case 'js':
             case 'javascript':
                 $to_render = '<script type="text/javascript">document.write(String.fromCharCode(' . $this->toCharCodes($to_render) . '));</script>';
                 break;
             default:
                 throw new HTML_Invalid_Rendering_Mode_Exception($this->_render);
         }
         $renderer->render($to_render);
         if ($this->_if !== null) {
             $renderer->render('<![endif]-->');
         }
     }
 }