function __toString()
 {
     $help = new HtmlHelper();
     $html = $help->css('/admin/custom/formtabs.css') . $help->javascript('/admin/custom/formtabs.js');
     $html .= '<div id="tabs">';
     foreach ($this->tabs as $tab) {
         $html .= $help->absoluteLink($tab[0], '#' . $tab[1]);
     }
     $html .= '<div class="clear"></div></div>';
     $html .= $this->getClientValidationHtml();
     return $html;
 }
 function __toString()
 {
     $this->_html_name = $this->_name . '[file]';
     if ($this->current_filename == '') {
         return parent::__toString();
     }
     $html = new HtmlHelper();
     $id = $this->getAttribute('id');
     $button = '<div id="editablebox_' . $id . '">' . $this->current_filename . ' ';
     $button .= $html->absoluteLink('[X]', 'javascript:void(0)', array('id' => 'delete_' . $id));
     $button .= $html->inlineJavascript('Phaxsi.Event.addEvent(document.getElementById("delete_' . $id . '"), "click", deleteFile.createDelegate(this, ["' . $id . '", "' . $this->input_hidden->getAttribute('id') . '"]));');
     $button .= '</div>';
     $this->beforeHTML = $html->javascript('/widgets/custom/editablefile.js') . $button . $this->input_hidden->__toString();
     return parent::__toString();
 }
 function __toString()
 {
     if ($this->countElements() < $this->min_inputs) {
         for ($i = 0; $i < $this->min_inputs - $this->countElements(); $i++) {
             $this->add();
         }
     }
     $html = new HtmlHelper();
     $output = $html->javascript('/widgets/custom/textlist.js');
     $output .= $html->css('/widgets/custom/textlist.css');
     $output .= '<div class="phaxsi-textlist" data-max="' . $this->max_inputs . '" data-callback="' . $this->on_insert . '" data-name="' . $this->_name . '">';
     $output .= '<div>' . $this->toString() . '</div>';
     $output .= $this->max_inputs == 0 || count($this->_elements) < $this->max_inputs ? $html->absoluteLink($this->link_text, 'javascript:void(0)', '') : '';
     $output .= '</div>';
     return $output;
 }