Example #1
0
 /**
  * Cria cria um campo hidden, um campo para id, um para descrição e um botão para a busca no seeker.
  *
  * @param  string $id
  * @param  string $value
  * @param  array  $params jQuery Widget Parameters
  * @param  array  $attribs HTML Element Attributes
  * @return string
  */
 public function fileCustom($id, $value = null, array $attribs = array())
 {
     $params = $attribs['jQueryParams'];
     unset($attribs['jQueryParams']);
     if (!isset($attribs['name'])) {
         $attribs['name'] = $attribs['id'];
     }
     $attribs['style'] .= 'width:180px;';
     $attribs['readonly'] = 'true';
     $name = $attribs['name'];
     $xhtml = '<input type="text"' . ' name="' . $this->view->escape($name) . '_name"' . ' id="' . $this->view->escape($id) . '_name"' . ' value="' . $this->view->escape($value) . '"' . $this->_htmlAttribs($attribs) . $this->getClosingBracket();
     $xhtml = '
         <input id="' . $id . '" name="' . $attribs['name'] . '" type="hidden" />
         <input id="' . $id . '_type" name="' . $attribs['name'] . '_type" type="hidden" />
         ' . $xhtml . '
         <button id="buttonUpload_' . $id . '" onClick="jQuery(\'#' . $id . '\').TFile(\'uploadFile\');" class="ui-button ui-widget ui-state-default ui-corner-all ui-button-icon-only" nofocus="true" style="width:35px;height:20px;" type="button" role="button" aria-disabled="false" title="Subir arquivo">
         <span class="ui-button-icon-primary ui-icon ui-icon-arrowthickstop-1-n"></span>
         <span class="ui-button-text"> </span>
         </button>
         <button id="buttonDownload_' . $id . '" onClick="jQuery(\'#' . $id . '\').TFile(\'downloadFile\');" class="ui-button ui-widget ui-state-default ui-corner-all ui-button-icon-only" nofocus="true" style="width:35px;height:20px;" type="button" role="button" aria-disabled="false" title="Baixar arquivo">
         <span class="ui-button-icon-primary ui-icon ui-icon-arrowthickstop-1-s"></span>
         <span class="ui-button-text"> </span>
         </button>
         <button id="buttonDelete_' . $id . '" onClick="jQuery(\'#' . $id . '\').TFile(\'deleteFile\');" class="ui-button ui-widget ui-state-default ui-corner-all ui-button-icon-only" nofocus="true" style="width:35px;height:20px;" type="button" role="button" aria-disabled="false" title="Limpar arquivo">
         <span class="ui-button-icon-primary ui-icon ui-icon-trash"></span>
         <span class="ui-button-text"> </span>
         </button>
     ';
     $this->view->headScript()->appendFile(ZendT_Url::getBaseDiretoryPublic() . '/scripts/jquery/widget/TFile.js?date=' . date('dmy'));
     $this->jquery->addOnLoad('jQuery("#' . $id . '").TFile(' . $params . ');');
     return $xhtml;
 }
Example #2
0
 /**
  * Cria o script JS para a execução dos tabs
  * 
  * @return string 
  */
 public function createJS()
 {
     //$this->addHeadScriptFile('https://www.tanet.com.br/sistemas/printer/js/deployJava.js');
     $this->addHeadScriptFile(ZendT_Url::getBaseDiretoryPublic() . '/scripts/jquery/widget/TPrinter.js?date=' . date('dmy'));
     $js = "jQuery('#" . $this->getId() . "').TPrinter({filter:'" . $this->_filter . "'});";
     return $js;
 }
Example #3
0
 /**
  *  Cria um campo texto para numeros, com incremento, verificação, valor maximo e outro (ler arquivo TNumeric.js)
  *
  * @param  string $id
  * @param  string $value
  * @param  array  $params jQuery Widget Parameters
  * @param  array  $attribs HTML Element Attributes
  * @return string
  */
 public function numeric($id, $value = null, array $attribs = array())
 {
     $this->view->headScript()->appendFile(ZendT_Url::getBaseDiretoryPublic() . '/scripts/jquery/widget/TNumeric.js');
     $this->view->headScript()->appendFile(ZendT_Url::getBaseDiretoryPublic() . '/scripts/jquery/extra/autoNumeric.js');
     $params = ZendX_JQuery::encodeJson($attribs['jQueryParams']);
     unset($attribs['jQueryParams']);
     $this->jquery->addOnLoad('jQuery("#' . $id . '").TNumeric(' . $params . ');');
     /*$styles = explode(';', $attribs['style']);
       if ($styles) {
           foreach ($styles as $style) {
               list($styleName,$styleValue) = explode(':',$style);
               if ($styleName == 'width'){
                   $old = $style;
                   $width = (str_replace('px', '', trim($styleValue)) * 1);
                   $styleValue = $width - 25;
                   $new = 'width:'.$styleValue.'px';
               }
           }
           $attribs['style'] = str_replace($old,$new,$attribs['style']);
       }
       
       if (!$width){
           $width = 100;
           $attribs['style'].= 'width:75px;';
       }*/
     $attribs['class'] .= ' item ui-input-num icon';
     $btns = ' <span class="item numeric"> ' . '   <div class="ui-button ui-state-default up" nofocus="1" parent="' . $id . '" onClick="if(!$(this).attr(\'disabled\')){jQuery(\'#\' + $(this).attr(\'parent\')).Tdata(\'TNumeric\').incNumber();}" type="button"> ' . '      <span class="ui-icon ui-icon-triangle-1-n"/> ' . '   </div> ' . '   <div class="ui-button ui-state-default down" nofocus="1" parent="' . $id . '" onClick="if(!$(this).attr(\'disabled\')){jQuery(\'#\' + $(this).attr(\'parent\')).Tdata(\'TNumeric\').decNumber();}" type="button"> ' . '      <span class="ui-icon ui-icon-spinner-down"/> ' . '   </div> ' . ' </span> ';
     $xhtml = '<div class="ui-form-group"> ' . '     ' . $this->view->formText($id, $value, $attribs) . $btns . '</div>';
     return $xhtml;
 }
Example #4
0
 /**
  * Cria um campo de ComboCustom
  *
  * @param  string $id
  * @param  string $value
  * @param  array  $params jQuery Widget Parameters
  * @param  array  $attribs HTML Element Attributes
  * @return string
  */
 public function color($id, $value = null, array $params = array(), array $attribs = array())
 {
     $this->view->headScript()->appendFile(ZendT_Url::getBaseDiretoryPublic() . '/scripts/jquery/extra/color/simple-color.js');
     $js = "jQuery('#" . $id . "').simpleColor({\n                    boxWidth: '95px',\n                    cellMargin: 0,\n                    displayColorCode: true,\n                    livePreview: true,\n                    onSelect: function(hex, element) {\n                        jQuery('#" . $id . "').trigger('change');\n                    }\n               });";
     $this->jquery->addOnLoad($js);
     return $this->view->formText($id, $value, $params);
 }
Example #5
0
 /**
  * Cria um campo de ComboCustom
  *
  * @param  string $id
  * @param  string $value
  * @param  array  $params jQuery Widget Parameters
  * @param  array  $attribs HTML Element Attributes
  * @return string
  */
 public function comboCustom($id, $value = null, array $params = array(), array $attribs = array())
 {
     $this->view->headScript()->appendFile(ZendT_Url::getBaseDiretoryPublic() . '/scripts/jquery/widget/TComboCustom.js')->appendFile(ZendT_Url::getBaseDiretoryPublic() . '/scripts/jquery/widget/TOpenDownBox.js');
     $params = ZendX_JQuery::encodeJson($params);
     $js = sprintf('%s("#%s").TComboCustom(%s);', ZendX_JQuery_View_Helper_JQuery::getJQueryHandler(), $attribs['id'], $params);
     $this->jquery->addOnLoad($js);
     return $this->view->formText($id, $value, $attribs);
 }
Example #6
0
 /**
  *  Cria um campo texto com validador de data e datepicker
  *
  * @param  string $id
  * @param  string $value
  * @param  array  $params jQuery Widget Parameters
  * @param  array  $attribs HTML Element Attributes
  * @return string
  */
 public function dateMonthYear($id, $value = null, array $attribs = array())
 {
     $this->view->headScript()->appendFile(ZendT_Url::getBaseDiretoryPublic() . '/scripts/jquery/extra/jquery.maskedinput-1.4.1.min.js');
     $this->view->headScript()->appendFile(ZendT_Url::getBaseDiretoryPublic() . '/scripts/jquery/widget/TDateMonthYear.js');
     $params = ZendX_JQuery::encodeJson($attribs['jQueryParams']);
     unset($attribs['jQueryParams']);
     $this->jquery->addOnLoad('jQuery("#' . $id . '").TDateMonthYear(' . $params . ');');
     return $this->view->formText($id, $value, $attribs);
 }
Example #7
0
 /**
  *  Cria um campo texto para numeros, com incremento, verificação, valor maximo e outro (ler arquivo TNumericMulti.js)
  *
  * @param  string $id
  * @param  string $value
  * @param  array  $params jQuery Widget Parameters
  * @param  array  $attribs HTML Element Attributes
  * @return string
  */
 public function numericMulti($id, $value = null, array $attribs = array())
 {
     $this->view->headScript()->appendFile(ZendT_Url::getBaseDiretoryPublic() . '/scripts/jquery/widget/TNumericMulti.js');
     $this->view->headScript()->appendFile(ZendT_Url::getBaseDiretoryPublic() . '/scripts/jquery/extra/autoNumeric.js');
     $params = ZendX_JQuery::encodeJson($attribs['jQueryParams']);
     unset($attribs['jQueryParams']);
     $this->jquery->addOnLoad('jQuery("#' . $id . '").TNumericMulti(' . $params . ');');
     return $this->view->formText($id, $value, $attribs);
 }
Example #8
0
 /**
  *  Cria um campo texto com validador de data e datepicker
  *
  * @param  string $id
  * @param  string $value
  * @param  array  $params jQuery Widget Parameters
  * @param  array  $attribs HTML Element Attributes
  * @return string
  */
 public function dateMulti($id, $value = null, array $attribs = array())
 {
     $data = date('dmy');
     #$this->view->headScript()->appendFile(ZendT_Url::getBaseDiretoryPublic() . '/scripts/jquery/widget/TCursor.js?'.$data);
     $this->view->headScript()->appendFile(ZendT_Url::getBaseDiretoryPublic() . '/scripts/jquery/widget/TDateMulti.js?' . $data);
     $this->jquery->addOnLoad('jQuery("#' . $id . '").TDateMulti();');
     #$button = new ZendT_View_Button('bt-calend-'.$id,'');
     #$button->setIcon('ui-icon-calculator');
     $attribs['style'] .= ';float:left;';
     $_toolbar = new ZendT_View_Toolbar('calend-toolbar-' . $id);
     $_toolbar->addStyle('width', '390px');
     $_toolbar->addStyle('height', '34px');
     $_toolbar->addStyle('display', 'none');
     $_toolbar->setAttr('align', 'center');
     $padrao = explode(' ', $value);
     $hoje = new ZendT_Type_Date('SYSDATE', 'Date');
     $ultimoMes[0] = clone $hoje;
     $ultimoMes[0]->addMonth(-1)->firstDayMonth();
     $ultimoMes[1] = clone $hoje;
     $ultimoMes[1]->addMonth(-1)->lastDayMonth();
     $mesCorrente[0] = clone $hoje;
     $mesCorrente[0]->firstDayMonth();
     $mesCorrente[1] = clone $hoje;
     $mesCorrente[1]->lastDayMonth();
     $ultimaSemana[0] = clone $hoje;
     $ultimaSemana[0]->addWeek(-1)->firstDayWeek();
     $ultimaSemana[1] = clone $hoje;
     $ultimaSemana[1]->addWeek(-1)->lastDayWeek();
     $semanaCorrente[0] = clone $hoje;
     $semanaCorrente[0]->firstDayWeek();
     $semanaCorrente[1] = clone $hoje;
     $semanaCorrente[1]->lastDayWeek();
     $options = "var option = jQuery('#calend_select_" . $id . "').val();\n\n                        if(option != ''){\n                            var data1 = '', data2 = '';\n                            if(option == '0'){\n                                data1 = '" . $padrao[0] . "';\n                                data2 = '" . $padrao[1] . "';\n                            }\n                            else if(option == '1'){\n                                data1 = '" . $hoje . "';\n                                data2 = '" . $hoje . "';\n                            } else if(option == 2){\n                                data1 = '" . $ultimoMes[0] . "';\n                                data2 = '" . $ultimoMes[1] . "';\n                            } else if(option == 3){\n                                data1 = '" . $mesCorrente[0] . "';\n                                data2 = '" . $mesCorrente[1] . "';\n                            } else if(option == 4){\n                                data1 = '" . $ultimaSemana[0] . "';\n                                data2 = '" . $ultimaSemana[1] . "';\n                            } else if(option == 5){\n                                data1 = '" . $semanaCorrente[0] . "';\n                                data2 = '" . $semanaCorrente[1] . "';\n                            }\n                            jQuery('#calend-" . $id . "-1').datepicker('setDate', data1);\n                            jQuery('#calend-" . $id . "-2').datepicker('setDate', data2);\n\n                            jQuery('#" . $id . "').val(\n                                jQuery('#calend-" . $id . "-1').datepicker({ dateFormat: 'yy-mm-dd' }).val() + ' ' +\n                                jQuery('#calend-" . $id . "-2').datepicker({ dateFormat: 'yy-mm-dd' }).val()\n                            );\n                        }\n                        ";
     $close = "  jQuery('#calend-" . $id . "-1').hide('fast');\n                        jQuery('#calend-" . $id . "-2').hide('fast');\n                        jQuery('#calend-toolbar-" . $id . "').hide('fast');";
     $element = new ZendT_Form_Element_Select("calend_select_" . $id);
     #$element->setLabel('Seleção');
     $element->addMultiOption('', '');
     $element->addMultiOption('1', 'Hoje');
     $element->addMultiOption('2', 'Último Mês');
     $element->addMultiOption('3', 'Mês corrente');
     $element->addMultiOption('4', 'Última Semana');
     $element->addMultiOption('5', 'Semana corrente');
     $element->addAttr('breakline', 'none');
     $element->setAttrib('onClick', $options);
     $element->addStyle('float', 'left');
     $element->addStyle('height', '25px');
     $element->addStyle('margin', '3px');
     $_toolbar->add($element);
     $_button = new ZendT_View_Button('bt_ok' . $id, 'OK', $close);
     $_button->setIcon('ui-icon-check');
     $_button->addStyle('float', 'right');
     $_button->addStyle('height', '25px');
     $_button->addStyle('margin', '3px');
     $_toolbar->addButton($_button);
     return $this->view->formText($id, $value, $attribs) . '<span id="bt-calend-' . $id . '" style="margem:0px; float:left; height: 18px; width: 20px;" class="ui-button ui-state-default ui-corner-right ui-button-icon-only"><span id="icon-bt-calend-' . $id . '" class="ui-button-icon-primary ui-icon ui-icon-calculator"></span></span>' . '<br style="clear:both;" /><table><tr><td><div id="calend-' . $id . '-1" style="display:none"></div></td><td><div id="calend-' . $id . '-2" style="display:none"></div></td></tr></table>' . $_toolbar->render() . '<label class="error" for="dt_emissao_ctrc" generated="true" style="display:none"></label>' . '<div id="hour-' . $id . '" style="display:none"></div>';
 }
Example #9
0
 /**
  *  Cria um campo texto com validador de data e datepicker
  *
  * @param  string $id
  * @param  string $value
  * @param  array  $params jQuery Widget Parameters
  * @param  array  $attribs HTML Element Attributes
  * @return string
  */
 public function date($id, $value = null, array $attribs = array())
 {
     $data = date('dmy');
     $this->view->headScript()->appendFile(ZendT_Url::getBaseDiretoryPublic() . '/layout/jquery/widget/TDate.js?' . $data);
     $params = ZendX_JQuery::encodeJson($attribs['jQueryParams']);
     unset($attribs['jQueryParams']);
     $attribs['class'] .= ' ui-input-date';
     $xhtml .= '<div class="ui-form-group">' . $this->view->formText($id, $value, $attribs) . '</div>';
     $this->jquery->addOnLoad('jQuery("#' . $id . '").TDate(' . $params . ');');
     return $xhtml;
 }
Example #10
0
 /**
  *  Cria um campo texto com validador de data e datepicker
  *
  * @param  string $id
  * @param  string $value
  * @param  array  $params jQuery Widget Parameters
  * @param  array  $attribs HTML Element Attributes
  * @return string
  */
 public function dateDynamic($id, $value = null, array $attribs = array())
 {
     $params = $attribs['jQueryParams'];
     unset($attribs['jQueryParams']);
     $params['helper_script'] = 'TDateDynamic';
     $data = date('dmy');
     $this->view->headScript()->appendFile(ZendT_Url::getBaseDiretoryPublic() . '/layout/jquery/widget/TDateDynamic.js?' . $data);
     $this->view->headScript()->appendFile(ZendT_Url::getBaseDiretoryPublic() . '/layout/jquery/widget/TButtonsDynamic.js?' . $data);
     $this->jquery->addOnLoad('jQuery("#' . $id . '").TButtonsDynamic(' . ZendT_JS_Json::encode($params) . ');');
     $attribs['style'] .= 'float:left;';
     $attribs['class'] .= ' ui-input-date item';
     return '<div class="ui-form-group">' . $this->view->formText($id, $value, $attribs) . '</div>';
 }
Example #11
0
 /**
  * Cria um campo texto com autocomplete customizado
  *
  * @param  string $id
  * @param  string $value
  * @param  array  $params jQuery Widget Parameters
  * @param  array  $attribs HTML Element Attributes
  * @return string
  */
 public function autocomplete($id, $value = null, array $attribs = array())
 {
     $params = $attribs['jQueryParams'];
     unset($attribs['jQueryParams']);
     if (!isset($params['source'])) {
         if (isset($params['url'])) {
             $params['source'] = $params['url'];
             unset($params['url']);
         } else {
             if (isset($params['data'])) {
                 $params['source'] = $params['data'];
                 unset($params['data']);
             } else {
                 require_once "ZendX/JQuery/Exception.php";
                 throw new ZendX_JQuery_Exception("O parametro Source é obrigatório");
             }
         }
     }
     if ($params['showButtonSearch']) {
         $xhtml = '<button id="search-' . $id . '" type="button" class="ui-button ui-state-default item" nofocus="true"><span class="ui-icon ui-icon-carat-1-s"></span></button>';
     } else {
         $xhtml = '';
     }
     $xscript = '';
     if ($params['multiple']) {
         $onResult = 'function(event, row, formatted){
                         jQuery("#' . $id . '").Tdata("TAutocomplete").addElement("' . $id . '", row[0]);
                     }';
         $params['onResult'] = new ZendT_JS_Command($onResult);
         $xhtml .= '<div id="sel-elements-' . $id . '" class="" style="text-wrap: normal;">
                     <input id="' . $id . '-multiple" name="' . $id . '-multiple" type="hidden" value="">
                   </div>';
         $xscript .= 'jQuery("#sel-elements-' . $id . '").width(jQuery("#' . $id . '").width());';
     }
     $this->view->headScript()->appendFile(ZendT_Url::getBaseDiretoryPublic() . '/scripts/jquery/extra/jquery.autocomplete.js');
     $this->view->headLink()->appendStylesheet(ZendT_Url::getBaseDiretoryPublic() . '/scripts/jquery/extra/jquery.autocomplete.css');
     $this->view->headScript()->appendFile(ZendT_Url::getBaseDiretoryPublic() . '/scripts/jquery/widget/TAutocomplete.js');
     $params = ZendT_JS_Json::encode($params);
     $params = str_replace('{id}', $id, $params);
     $this->jquery->addOnLoad('jQuery("#' . $id . '").TAutocomplete(' . $params . ');' . $xscript);
     $attribs['class'] .= ' item';
     return '<div class="ui-form-group"> ' . $this->view->formText($id, $value, $attribs) . $xhtml . '</div>';
 }
Example #12
0
 public function spreadSheet($id, $value = null, array $attribs = array())
 {
     #var_dump($attribs);die;
     $params = $attribs['jQueryParams'];
     #var_dump($params);die;
     unset($attribs['jQueryParams']);
     $xhtml = "<div id='{$id}'";
     if ($attribs['divParams']) {
         foreach ($attribs['divParams'] as $key => $val) {
             $xhtml .= " {$key}='{$val}'";
         }
     }
     $xhtml .= "><input type=\"hidden\" TSpreadSheet=\"1\" id=\"{$id}_json\" name=\"{$id}\" /></div>";
     $params['elements']['id'] = $id;
     $this->view->headScript()->appendFile(ZendT_Url::getBaseDiretoryPublic() . '/scripts/jquery/extra/handsontable-master/dist/handsontable.full.js?');
     $this->view->headLink()->appendStylesheet(ZendT_Url::getBaseDiretoryPublic() . '/scripts/jquery/extra/handsontable-master/dist/handsontable.full.css');
     $this->view->headScript()->appendFile(ZendT_Url::getBaseDiretoryPublic() . "/scripts/jquery/widget/TSpreadSheet.js?date=" . strtotime("now"));
     $this->jquery->addOnLoad('jQuery("#' . $id . '").TSpreadSheet(' . ZendT_JS_Json::encode($params) . ');');
     return $xhtml;
 }
Example #13
0
 /**
  *  Cria um campo texto
  *
  * @param  string $id
  * @param  string $value
  * @param  array  $params jQuery Widget Parameters
  * @param  array  $attribs HTML Element Attributes
  * @return string
  */
 public function text($id, $value = null, array $attribs = array())
 {
     unset($attribs['required']);
     $mask = $attribs['jQueryParams']['mask'];
     $charMask = $attribs['jQueryParams']['charMask'];
     unset($attribs['jQueryParams']);
     if ($mask) {
         if (!is_array($mask)) {
             $mask = array($mask);
         }
         $params = array('masks' => $mask, 'charMask' => $charMask);
         $this->view->headScript()->appendFile(ZendT_Url::getBaseDiretoryPublic() . '/scripts/jquery/widget/TMask.js');
         $this->jquery->addOnLoad('jQuery("#' . $id . '").TMask(' . json_encode($params) . ').val(\'' . $value . '\');');
     }
     $xhtml = $this->view->formText($id, $value, $attribs);
     if (!isset($attribs['noLabelError'])) {
         $xhtml .= '<label class="error" for="' . $id . '" generated="true" style="display:none"></label>';
     }
     return $xhtml;
 }
Example #14
0
 /**
  *  Cria um campo texto para numeros, com incremento, verificação, valor maximo e outro (ler arquivo TDateTime.js)
  *
  * @param  string $id
  * @param  string $value
  * @param  array  $params jQuery Widget Parameters
  * @param  array  $attribs HTML Element Attributes
  * @return string
  */
 public function dateTime($id, $value = null, array $attribs = array())
 {
     $date = $attribs['propDate'];
     $time = $attribs['propTime'];
     $params = $attribs['jQueryParams'];
     unset($attribs['propDate']);
     unset($attribs['propTime']);
     unset($attribs['jQueryParams']);
     $data = date('dmy');
     $this->view->headScript()->appendFile(ZendT_Url::getBaseDiretoryPublic() . '/scripts/jquery/extra/jquery.autocomplete.js?' . $data);
     $this->view->headLink()->appendStylesheet(ZendT_Url::getBaseDiretoryPublic() . '/scripts/jquery/extra/jquery.autocomplete.css?' . $data);
     $this->view->headScript()->appendFile(ZendT_Url::getBaseDiretoryPublic() . '/layout/jquery/widget/TTime.js?' . $data);
     $this->view->headScript()->appendFile(ZendT_Url::getBaseDiretoryPublic() . '/layout/jquery/widget/TDate.js?' . $data);
     $this->view->headScript()->appendFile(ZendT_Url::getBaseDiretoryPublic() . '/scripts/jquery/widget/TDateTime.js?' . $data);
     $params = ZendX_JQuery::encodeJson($params);
     $this->jquery->addOnLoad('jQuery("#' . $id . '").TDateTime(' . $params . ');');
     $xDate = '<div class="ui-form-group">' . $date->addClass('ui-input-date')->setAttrib('button', 'btn_' . $date->getId())->setAttrib('noLabelError', 1)->render() . '<label class="popover fade bottom in error" for="' . $date->getId() . '" generated="true" style="display:none"></label>' . '</div>';
     $xTime = '<div class="ui-form-group">' . $time->addClass('ui-input-time')->setAttrib('button', 'btn_' . $time->getId())->setAttrib('noLabelError', 1)->render() . '<label class="popover fade bottom in error" for="' . $time->getId() . '" generated="true" style="display:none"></label>' . '</div>';
     return $this->view->formHidden($id, $value, $attribs) . $xDate . $xTime;
 }
Example #15
0
 public function query($id, $value = null, array $attribs = array())
 {
     $_mapperView = $attribs['mapperView'];
     if (!$_mapperView instanceof ZendT_Db_View) {
         $_mapperView = new $_mapperView();
     }
     $columns = $_mapperView->getColumns()->toQuery();
     $_parse = new ZendT_Db_Adapter_ParseSQL();
     $command = $_parse->toArray($value);
     $param = array();
     $param['jsonElement'] = $command;
     $param['columns'] = $columns;
     $param['mapper'] = get_class($_mapperView);
     $param['urlQuote'] = ZendT_Url::getUri(true) . '/quote';
     $urlPublic = ZendT_Url::getBaseDiretoryPublic();
     $this->view->headScript()->appendFile($urlPublic . '/scripts/jquery/widget/TQueryBuilder.js');
     $this->view->headLink()->appendStylesheet($urlPublic . '/scripts/jquery/widget/TQueryBuilder/TQueryBuilder.css');
     $js = "jQuery('#{$id}').TQueryBuilder(" . ZendT_JS_Json::encode($param) . ");";
     $this->jquery->addOnLoad($js);
     return $this->view->formHidden($id, $value, $attribs);
 }
Example #16
0
 /**
  *  Cria um campo horas, com validador de horarios e opção de selecionar uma hora via Autcomplete
  *
  * @param  string $id
  * @param  string $value
  * @param  array  $params jQuery Widget Parameters
  * @param  array  $attribs HTML Element Attributes
  * @return string
  * 
  * @example $this->contextMenu('contentMenu','#columnSelected',array('delete'=>'Delete','add'=>'Add'),"function(action, el, pos){alert(action)}")
  */
 public function contextMenu($id, $selector = null, array $itens = array(), $eventFunc = null)
 {
     $this->view->headScript()->appendFile(ZendT_Url::getBaseDiretoryPublic() . '/scripts/jquery/extra/context-menu/jquery.contextMenu.js');
     $this->view->headLink()->appendStylesheet(ZendT_Url::getBaseDiretoryPublic() . '/scripts/jquery/extra/context-menu/jquery.contextMenu.css');
     $handle = ZendX_JQuery_View_Helper_JQuery::getJQueryHandler();
     if ($eventFunc == null) {
         $eventFunc = "\n                function(action, el, pos){\n                    var cmd = action + '(el, pos);';\n                    eval(cmd);\n                }\n            ";
     }
     $js = " \n            {$handle}('{$selector}').contextMenu(\n                { menu: '{$id}' },\n                {$eventFunc}\n            );\n        ";
     $this->jquery->addOnLoad($js);
     $xhtml = '<ul id="' . $id . '" class="contextMenu">' . "\n";
     foreach ($itens as $key => $param) {
         if (is_array($param)) {
             $xhtml .= '  <li class="' . $param['class'] . '"><a href="#' . $param['value'] . '">' . $param['label'] . '</a></li>' . "\n";
         } else {
             $xhtml .= '  <li class="separator"><a href="#' . $key . '">' . $param . '</a></li>' . "\n";
         }
     }
     $xhtml .= '</ul>' . "\n";
     return $xhtml;
 }
Example #17
0
 /**
  * Retorna a função javascript
  * 
  * @return string 
  */
 public function createJS()
 {
     $onClick = $this->getOnClick();
     $param = array();
     if ($onClick instanceof ZendT_JS_Command) {
         $param['onClick'] = $onClick;
     }
     $js = " jQuery('#{$this->getId()}').TButton(" . ZendT_JS_Json::encode($param) . "); ";
     $this->addOnLoad($this->getId(), $js);
     $this->addHeadScriptFile(ZendT_Url::getBaseDiretoryPublic() . '/scripts/jquery/widget/TButton.js');
     return $js;
 }
Example #18
0
 /**
  * Adiciona um arquivo de CSS
  * 
  * @param string $filename
  * @return \ZendT_View 
  */
 public function appendStyleFile($filename, $putUrlPublic = false)
 {
     if ($putUrlPublic) {
         $filename = str_replace(ZendT_Url::getBaseDiretoryPublic(), '', $filename);
         $filename = ZendT_Url::getBaseDiretoryPublic() . $filename;
     }
     $this->_headerStyle .= '<link rel="stylesheet" href="' . $filename . '" type="text/css">' . "\n";
     return $this;
 }
Example #19
0
    public function textarea($id, $value = null, array $attribs = array())
    {
        $urlPublic = ZendT_Url::getBaseDiretoryPublic();
        $editor = '';
        if (isset($attribs['editor'])) {
            $editor = $attribs['editor'];
            unset($attribs['editor']);
        }
        if ($editor) {
            $this->view->headScript()->appendFile($urlPublic . '/scripts/tinymce/jscripts/tiny_mce/tiny_mce.js');
            $listBox = $editor['listBox'];
            $buttonsInline = $editor['buttons'];
            $width = $editor['width'];
            $height = $editor['height'];
            if (!$width) {
                $width = 730;
            }
            if (!$height) {
                $height = 268;
            }
            $instanceButtons = '';
            $htmlListOptions = '';
            if (count($listBox) > 0) {
                foreach ($listBox as $name => $itens) {
                    $cmdItens = '';
                    foreach ($itens as $item) {
                        $cmdItens .= 'mlb.add("' . $item . '", "' . $item . '");';
                    }
                    $instanceButtons .= ',' . $name;
                    $htmlListOptions .= '
                        case "' . $name . '":
                            var mlb = cm.createListBox("' . $name . '", {
                                 title : "' . $name . '",
                                 onselect : function(v) {
                                     cm.editor.execCommand("mceInsertContent", false, v);
                                 }
                            });
                            ' . $cmdItens . '
                            return mlb;';
                }
            }
            $htmlButtonsInline = '';
            if (count($buttonsInline) > 0) {
                foreach ($buttonsInline as $name => $button) {
                    $instanceButtons .= ',' . $name;
                    $htmlButtonsInline .= '
                            editor.addButton("' . $name . '", {
                                title : "' . $button['label'] . '",
                                image : "' . $urlPublic . '/scripts/extends/tinymce/img/' . $button['icon'] . '",
                                onclick : function() {
                                    ' . $button['command'] . '
                                }
                            });';
                }
            }
            $htmlButtonsInline .= '                                               
                            editor.addButton(\'uiImage\', {
                                title : \'Imagem\',
                                image : "' . $urlPublic . '/scripts/extends/tinymce/img/image.gif",
                                onclick : function() {
                                    mceUploadImage(editor);
                                }
                        });';
            $buttons = 'theme_advanced_buttons1: "forecolor,backcolor,|,bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,|,uiImage",
                    theme_advanced_buttons2: "bullist,numlist,|,outdent,indent,blockquote,sub,sup,|,formatselect,fontselect,fontsizeselect,fontSize|",
                    theme_advanced_buttons3: "undo,redo,|,cut,copy,paste,pastetext,pasteword,cleanup,|,search,replace,|,link,unlink,|,tablecontrols,newdocument,preview,code,fullscreen",';
            if ($attribs['editor-html'] == 'basic') {
                $buttons = 'theme_advanced_buttons1: "forecolor,backcolor,|,bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull",';
                $height = 50;
            }
            if ($attribs['editor-html'] == 'comment') {
                $buttons = 'theme_advanced_buttons1: "emotions,|,bold,italic,underline,strikethrough",';
                $height = 50;
            }
            $js = '
                tinymce.create("tinymce.plugins.' . $id . 'ListBoxPlugin", {
                    createControl: function(n, cm) {
                        switch (n) {
                            ' . $htmlListOptions . '
                        }
                        return null;
                    }
                });
                tinymce.create("tinymce.plugins.uiImage", {
                    createControl: function(n, cm) {
                        return null;
                    }
                });
                tinymce.PluginManager.add("' . $id . 'ListBoxPlugin", tinymce.plugins.' . $id . 'ListBoxPlugin);
                tinymce.PluginManager.add("uiImage", tinymce.plugins.uiImage);
                tinyMCE.init
                ({
                    selector: "#' . $id . '",
                    theme: "advanced",
                    plugins: "' . $id . 'ListBoxPlugin,autolink,lists,pagebreak,style,layer,table,save,advhr,advlink,emotions,iespell,insertdatetime,preview,media,searchreplace,print,contextmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking,xhtmlxtras,template,inlinepopups,autoresize",
                    language: "pt",            
                    ' . $buttons . '
                    theme_advanced_buttons4: "' . substr($instanceButtons, 1) . '",
                    theme_advanced_toolbar_location: "top",
                    theme_advanced_toolbar_align: "left",
                    theme_advanced_statusbar_location: "bottom",
                    theme_advanced_resizing: true,
                    content_css : "' . $urlPublic . '/layout/editor.css",
                    paste_text_sticky: true,
                    width : "100%",
                    height : "' . $height . '",
                    autoresize_min_height: "' . $height . '",
                    autoresize_max_height: "' . ($height + 100) . '",
                    setup : function(editor) {
                        ' . $htmlButtonsInline . '
                    }

                });';
            $this->jquery->addOnLoad($js);
        }
        $labelCount = '';
        if (isset($attribs['maxlength'])) {
            $this->view->headScript()->appendFile($urlPublic . '/scripts/jquery/widget/TTextarea.js');
            $js = "jQuery('#{$id}').TTextarea({maxLength:" . $attribs['maxlength'] . "});";
            $labelCount = '<br /><label id="count_' . $id . '"/>';
            $this->jquery->addOnLoad($js);
        }
        return $this->view->formTextarea($id, $value, $attribs) . $labelCount;
    }
Example #20
0
 /**
  * Pega o objeto grid pré-configurado para
  * manipulação.
  *
  * @return ZendT_Grid
  */
 public function configGrid()
 {
     $module = $this->getRequest()->getModuleName();
     $controller = $this->getRequest()->getControllerName();
     $params = $this->getRequest()->getParams();
     $profileKey = '';
     if (isset($params['profile_key'])) {
         $profileKey = $params['profile_key'];
     }
     $urlFilter = '?q=1';
     if (isset($params['filter_json'])) {
         $urlFilter .= '&filter_json=' . $params['filter_json'];
     }
     if (isset($params['mapper_view'])) {
         $urlFilter .= '&mapper_view=' . $params['mapper_view'];
     }
     if ($this->_mapper instanceof ZendT_Db_View) {
         $where = $this->getMapper()->getColumns()->getWhere($params);
         if ($where) {
             $params['postData'] = $where->toJsonPostData($params['postData']);
         }
     }
     if ($params['postData'] != '') {
         $autoFilter = true;
     } else {
         $autoFilter = false;
     }
     $type = 'G';
     #Grid
     $mapperName = get_class($this->_mapper);
     $profile = ZendT_Profile::get($mapperName, $type);
     $profileId = '';
     if (isset($profile['id'])) {
         $profileId = $profile['id'];
     }
     $profiles = ZendT_Profile::listProfile($mapperName, $type);
     $this->getGrid()->setUrl(ZendT_Url::getBaseUrl() . '/' . $module . '/' . $controller . '/grid-data/profile/' . $profileId . $urlFilter)->setDataType('json')->setMType('POST')->setRowNum(30)->setRowList(array(30, 60, 90))->setPager("#pager-" . $this->getGrid()->getID())->setViewRecords('true')->setToolbar(array('true', 'top'))->setMType('POST')->setWidth(960)->setAutoFilter($autoFilter)->setShrinkToFit(false)->setPostData(urldecode($params['postData']))->setBeforeRequest("function(){ gridResize('" . $this->getGrid()->getID() . "'); }")->setGridComplete(" function(){ jQuery.gridAtivaNavKey({ idGrid:'" . $this->getGrid()->getID() . "' }); }");
     /**
      * Analisa Parâmetros
      */
     $newPostData = array();
     foreach ($params as $name => $value) {
         $param = $this->getMapper()->paramName($name);
         if ($param) {
             $newPostData[$param] = $value;
         }
     }
     if (count($newPostData) > 0) {
         $this->getGrid()->setPostData($newPostData);
     }
     if ($this->getRequest()->getParam('seekerAjax')) {
         $objectRetrieve = 'TSeeker';
         if ($this->getRequest()->getParam('objectRetrive')) {
             $objectRetrieve = $this->getRequest()->getParam('objectRetrive');
         }
         $this->view->headScript()->appendFile(ZendT_Url::getBaseDiretoryPublic() . '/scripts/jquery/widget/' . $objectRetrieve . '.js');
         $seekerName = $this->getRequest()->getParam('seekerName');
         $seekerAccess = 'window.opener.jQuery';
         $seekerClose = 'window.close();';
         if ($params['typeModal'] == 'AJAX') {
             $seekerAccess = 'jQuery';
             $seekerClose = 'seeker.TSeeker(\'divClose\');';
             $functionResize = "function(){\n                                            var grid = jQuery('#" . $this->getGrid()->getID() . "');\n                                            var seeker = " . $seekerAccess . "('#" . $seekerName . "');\n                                            var div  = seeker.TSeeker('option','elements').div;\n                                            grid.setGridHeight(250);\n                                            grid.setGridWidth(700);\n                                        }";
         } else {
             $functionResize = "function(){\n                                            \$.gridResize({\n                                                idGrid: '" . $this->getGrid()->getID() . "'\n                                            });\n                                            \$(window).resize(function(){\n                                                \$.gridResize({\n                                                    idGrid: '" . $this->getGrid()->getID() . "'\n                                                });\n                                            });\n                                        }";
         }
         $functionRetorno = "function(){\n                                        var grid  = jQuery('#" . $this->getGrid()->getID() . "');\n                                        if( grid.jqGrid('getGridParam','multiselect') ){\n                                            var id = grid.jqGrid('getGridParam','selarrrow');\n                                        }else{\n                                            var id = grid.jqGrid('getGridParam','selrow');\n                                        }\n                                        var seeker = " . $seekerAccess . "('#" . $seekerName . "');\n                                        try{\n                                            seeker.{$objectRetrieve}('retrieve',{value: id});\n                                            {$seekerClose}\n                                        }catch(err){\n                                            {$seekerClose}\n                                        }\n                                    }";
         $this->getGrid()->setOndblClickRow($functionRetorno)->setBeforeRequest($functionResize)->setGridComplete("function(){\n                                                \$.gridAtivaNavKey({\n                                                    idGrid: '" . $this->getGrid()->getID() . "',\n                                                    functionEnter: " . $functionRetorno . "\n                                                });\n                                            }");
     }
     if ($params['callback']) {
         $functionCallback = base64_decode($params['callback']);
         $this->getGrid()->setOndblClickRow($functionCallback)->setGridComplete("function(){\n                                                \$.gridAtivaNavKey({\n                                                    idGrid: '" . $this->getGrid()->getID() . "',\n                                                    functionEnter: " . $functionCallback . "\n                                                });\n                                            }");
     }
     if ($params['multiple']) {
         $this->getGrid()->setMultiSelect(true);
         $idbt = 'selectGrid' . $this->getGrid()->getID();
         $multiSelect = new ZendT_Grid_Button($idbt);
         $multiSelect->setIdGrid($this->getGrid()->getID())->setButtonIcon("ui-icon-check")->setTitle("Selecionar")->setCaption("Selecionar")->setOnClick($functionRetorno);
         $this->view->hotkeys()->add('btMultiSelect', 'ctrl+s', '$("#' . $idbt . '").click();');
         $this->getGrid()->addToolbarButton("multiSel", $multiSelect);
     }
     $idbt = 'refreshGrid' . $this->getGrid()->getID();
     $refresh = new ZendT_Grid_Button_Refresh($idbt);
     $refresh->setIdGrid($this->getGrid()->getID())->setButtonIcon("ui-icon-refresh")->setTitle("Atualizar");
     $this->view->hotkeys()->add('btRefresh', 'ctrl+r', '$("#' . $idbt . '").click();');
     $this->getGrid()->addToolbarButton("refresh", $refresh, 'grid');
     /* $clearFiltro = new ZendT_Grid_Button();
        $clearFiltro->setIdGrid($this->getGrid()->getID())
        ->setButtonIcon('ui-icon ui-icon-arrowreturnthick-1-s')
        ->setOnClick('function(){$(\'#' . $this->getGrid()->getID() . '\')[0].clearToolbar();}')
        ->setTitle('Limpar Filtro');
        $this->getGrid()->addToolbarButton('clearFilter', $clearFiltro, 'grid'); */
     $autoFiltro = new ZendT_Grid_Button();
     $autoFiltro->setIdGrid($this->getGrid()->getID())->setButtonIcon('ui-icon  ui-icon-pin-s')->setOnClick('function(){$(\'#' . $this->getGrid()->getID() . '\')[0].toggleToolbar();}')->setTitle('Filtro');
     $this->getGrid()->addToolbarButton('autofiltro', $autoFiltro, 'grid');
     $_profile = new ZendT_View_Profile('selProfile', $profile['id'], $profiles, $type, $mapperName);
     $screenName = $this->view->screenName;
     $this->view->profileMenu = $_profile->render($screenName);
     $this->view->screenName = $screenName;
     $this->view->placeholder('title')->set($screenName);
     $navigator = '';
     if ($navigator) {
         $this->getGrid()->getNavigator()->addCommand('navigatorGrid', $navigator);
     }
     /**
      * Botão de adição de registro e
      * suas configurações vitais
      */
     if ($this instanceof ZendT_Controller_ActionCrud && ZendT_Acl::getInstance()->isAllowed('insert', $this->_resourceBase)) {
         $filterJson = $this->getRequest()->getParam('filter_json');
         $idbt = 'addGrid' . $this->getGrid()->getID();
         $add = new ZendT_Grid_Button_Add($idbt);
         $add->setIdGrid($this->getGrid()->getID())->setButtonIcon('ui-icon-plus')->setUrl(ZendT_Url::getBaseUrl() . '/' . $module . '/' . $controller . '/form?filter_json=' . $filterJson . '&profile_key=' . $profileKey)->setWindowWidth(860)->setWindowHeight(520)->setTitle('Adicionar');
         $this->view->hotkeys()->add('btInsert', 'ctrl+a', '$("#' . $idbt . '").click();');
         $this->getGrid()->addToolbarButton('add', $add, 'edit');
     }
     /**
      * Botão de edição de linha e
      * suas configurações vitais
      */
     if ($this instanceof ZendT_Controller_ActionCrud && ZendT_Acl::getInstance()->isAllowed('update', $this->_resourceBase)) {
         $idbt = 'editGrid' . $this->getGrid()->getID();
         $edit = new ZendT_Grid_Button_Edit($idbt);
         $edit->setIdGrid($this->getGrid()->getID())->setButtonIcon('ui-icon-pencil')->setUrl(ZendT_Url::getBaseUrl() . '/' . $module . '/' . $controller . '/form' . '?profile_key=' . $profileKey)->setUrlRetrieve(ZendT_Url::getBaseUrl() . '/' . $module . '/' . $controller . '/retrive')->setWindowWidth(860)->setWindowHeight(520)->setTitle('Editar');
         $this->view->hotkeys()->add('btEdit', 'ctrl+e', '$("#' . $idbt . '").click();');
         $this->getGrid()->addToolbarButton('edit', $edit, 'edit');
         if (!$this->getRequest()->getParam('seekerAjax')) {
             $this->getGrid()->setOndblClickRow("function(){jQuery('#" . $idbt . "').click();}");
         }
     }
     #Button - Delete
     if ($this instanceof ZendT_Controller_ActionCrud && ZendT_Acl::getInstance()->isAllowed('delete', $this->_resourceBase)) {
         $idbt = 'delGrid' . $this->getGrid()->getID();
         $del = new ZendT_Grid_Button_Delete($idbt);
         $del->setIdGrid($this->getGrid()->getID())->setButtonIcon('ui-icon-trash')->setUrl(ZendT_Url::getBaseUrl() . '/' . $module . '/' . $controller . '/delete')->setWindowWidth(800)->setWindowHeight(520)->setTitle('Excluir');
         $this->view->hotkeys()->add('btDelete', 'ctrl+d', '$("#' . $idbt . '").click();');
         $this->getGrid()->addToolbarButton('del', $del, 'edit');
     }
     if ($this instanceof ZendT_Controller_ActionCrud && ZendT_Acl::getInstance()->isAllowed('log', $this->_resourceBase) && method_exists($this->_mapper, 'isLogger') && $this->_mapper->isLogger()) {
         $log = new ZendT_Grid_Button_Window();
         $log->setIdGrid($this->getGrid()->getID())->setButtonIcon('ui-icon-info')->setUrl(ZendT_Url::getBaseUrl() . '/' . $module . '/' . $controller . '/log')->setWindowWidth(650)->setWindowHeight(450)->setTitle('Log');
         $this->getGrid()->addToolbarButton('Log', $log, 'edit');
     }
     $this->view->typeModal = $params['typeModal'];
     if ($params['typeModal'] == 'AJAX') {
         Zend_Layout::getMvcInstance()->setLayout('ajax');
     } else {
         if ($params['typeModal'] == 'WINDOW') {
             $this->view->onLoad = stripslashes(urldecode($params['afterLoad']));
             $this->view->onClose = stripslashes(urldecode($params['onClose']));
             Zend_Layout::getMvcInstance()->setLayout('window');
         }
     }
 }
Example #21
0
 /**
  * Cria o comando JavaScript
  * @return method 
  */
 public function createJS()
 {
     $this->addHeadScriptFile(ZendT_Url::getBaseDiretoryPublic() . '/scripts/jquery/plugin/ButtonAjaxT.js');
     $clickFunction = parent::createJS() . '
             function ' . $this->_getFunctionName() . '(){
                 jQuery.ButtonAjaxT({
                     url: "' . $this->getUrl() . '",
                     method: "' . $this->getMethod() . '",
                     param: "' . $this->getParam() . '",
                     onConfirm: ' . $this->getOnConfirm() . ',
                     onAfterLoad: ' . $this->getOnAfterLoad() . '
                 });
             }
         ';
     $this->addHeadScript($this->getId(), $clickFunction);
     return $clickFunction;
 }
Example #22
0
 /**
  * Cria o comando JavaScript
  * @return method 
  */
 public function createJS()
 {
     $this->addHeadScriptFile(ZendT_Url::getBaseDiretoryPublic() . '/scripts/jquery/plugin/ButtonWindowT.js');
     $clickFunction = parent::createJS() . '
             function ' . $this->_getFunctionName() . '(){
                 if($(\'iframe[name="downloadFile"]\').attr(\'name\') == undefined){
                     $(\'html\').append(\'<iframe name="downloadFile"></iframe>\');
                 }
                 $(\'iframe[name="downloadFile"]\')                    
                 .attr(\'src\',\'' . $this->getUrl() . '?' . $this->getParam() . '\');
             }
         ';
     $this->addHeadScript($this->getId(), $clickFunction);
     return $clickFunction;
 }
Example #23
0
 /**
  *
  * @param ZendT_Grid $grid
  * @return string 
  */
 public function gridTree(ZendT_Grid $grid)
 {
     $this->view->headScript()->appendFile(ZendT_Url::getBaseDiretoryPublic() . '/scripts/jquery/widget/TGridTree.js?date=180113');
     $firstColumn = '';
     /**
      * Linha de Título 
      */
     $rowTitle = '<tr>';
     $numCols = 0;
     foreach ($grid->getColModel()->getColumns() as $column) {
         $style = '';
         if ($column->getHidden()) {
             $style = 'display:none;';
         } elseif ($firstColumn == '') {
             $firstColumn = $column->getName();
             $numCols++;
         } else {
             $numCols++;
         }
         $style .= 'text-align:' . $column->getAlign() . ';';
         $class = 't-ui-border-trb';
         if ($firstColumn == $column->getName()) {
             $class = 't-ui-border-trbl';
         }
         $rowTitle .= '<th class="ui-state-default ' . $class . '" style="' . $style . '">';
         $rowTitle .= $column->getHeaderTitle();
         $rowTitle .= '</th>';
     }
     $rowTitle .= '</tr>';
     /**
      * Linhas do Detalhe 
      */
     $rows = '';
     $stylesRow = $grid->getStyles();
     foreach ($grid->getRows() as $index => $row) {
         $class = '';
         $style = '';
         if ($grid->getTreeGrid() == 'true') {
             if (trim($row['tree_parent']) != '') {
                 $class .= 'parent-' . $this->_normalizeId($row['tree_parent']);
                 $style .= 'display:none';
             }
         }
         $rowId = $this->_normalizeId($row['id']);
         $rows .= '<tr id="' . $rowId . '" class="' . $class . '" style="' . $style . '">';
         foreach ($grid->getColModel()->getColumns() as $column) {
             $options = $column->getOptions();
             $key = $column->getName();
             if (in_array($key, array('tree_child', 'tree_level'))) {
                 continue;
             }
             $style = '';
             $attr = '';
             if ($key == $firstColumn) {
                 $attr = 'level="' . $row['tree_level'] . '" child="' . $row['tree_child'] . '" ';
             }
             if ($column->getHidden()) {
                 $style = 'display:none;';
             }
             $style .= 'text-align:' . $column->getAlign() . ';';
             $style .= 'min-width:' . $column->getWidth() . 'px;';
             if (isset($stylesRow[$index][$key])) {
                 foreach ($stylesRow[$index][$key] as $styleName => $styleValue) {
                     $style .= $styleName . ':' . $styleValue . ';';
                 }
             }
             $class = 't-ui-border-rb';
             if ($firstColumn == $column->getName()) {
                 $class = 't-ui-border-rbl';
             }
             $rows .= '<td ' . $attr . 'class="ui-widget-content ' . $key . ' ' . $class . '" style="' . $style . '">';
             $rows .= $row[$key];
             $rows .= '</td>';
         }
         $rows .= '</tr>';
     }
     /**
      * Botões de Navegação
      */
     $buttonsToolbar = $grid->getObjToolbar()->getButtons();
     if ($buttonsToolbar) {
         $toolbar = '';
         foreach ($buttonsToolbar as $button) {
             if ($button) {
                 foreach ($button as $oneButton) {
                     $toolbar .= $oneButton->renderHtml();
                 }
             }
         }
         $toolbar = '<tr> <th colspan="' . $numCols . '" class="ui-state-default" style="border-bottom:0px;text-align:left;"> ' . $toolbar . ' </th> </tr>';
     }
     /**
      * Parâmetros do jQuery para criar a árvore 
      */
     $params = array('columns' => array('group' => $firstColumn, 'parent' => 'tree_parent', 'level' => 'tree_level'));
     $params = ZendT_JS_Json::encode($params);
     $this->jquery->addOnLoad('jQuery("#' . $grid->getID() . '").TGridTree(' . $params . ');');
     return '<table width="100%" class="ui-jqgrid-htable" cellspacing="0" cellpadding="3" border="0" id="' . $grid->getID() . '">
             ' . $toolbar . '
             ' . $rowTitle . '
             ' . $rows . '
         </table>';
 }
Example #24
0
 /**
  *
  * @param string $content
  * @return string 
  */
 public function seeker($id, $value = null, array $attribs = array())
 {
     if ($value == '!') {
         $value = '';
     }
     if ($value && (is_numeric($value) || $value instanceof ZendT_Type) && isset($attribs['mapperView']) && !$value instanceof ZendT_Db_Recordset) {
         $mapper = new $attribs['mapperView']();
         $value = $mapper->setId($value)->retrieveRow();
     }
     if ($value instanceof ZendT_Db_Recordset) {
         $data = array();
         while ($row = $value->getRow()) {
             $item = array();
             foreach ($row as $itemKey => $itemValue) {
                 $item[$itemKey] = $itemValue->get();
             }
             $data[] = $item;
         }
         $value = $data;
         if (!$attribs['multiple']) {
             $value = $value[0];
         }
     }
     /* $post = Zend_Controller_Front::getInstance()->getRequest()->getParams();
        var_dump($post);
        var_dump($value); */
     $params = array();
     $params['elements'] = array();
     /**
      * @todo implementar o value 
      */
     $search = $attribs['propSearch'];
     $suffix = $attribs['suffix'];
     $prefix = $attribs['prefix'];
     $this->_arrayName = $attribs['arrayName'];
     if (!$suffix && !$prefix) {
         $suffix = $id;
     }
     if ($attribs['required']) {
         $search->setRequired();
     }
     $xhtmlElements = '';
     $labels = array();
     /**
      * Cria o elemento de Search 
      */
     $field = $attribs['propSearch']->getAttrib('field');
     $attribs['propSearch']->setAttrib('noLabelError', true);
     $params['fields'][] = $field;
     if (isset($attribs['belongsTo'])) {
         $attribs['propSearch']->setBelongsTo($attribs['belongsTo']);
     }
     if (isset($attribs['style'])) {
         $attribs['propSearch']->setAttrib('style', $attribs['style']);
     }
     if (isset($attribs['readonly'])) {
         $attribs['propSearch']->setAttrib('readonly', $attribs['readonly']);
     }
     $xhtmlElements .= $this->_renderElement($attribs['propSearch'], $value, $suffix, $prefix);
     unset($attribs['fields'][$field]);
     $searchId = $attribs['propSearch']->getId();
     $labels[] = $attribs['propSearch']->getAttrib('label');
     if (isset($attribs['propDisplay'])) {
         $labels[] = $attribs['propDisplay']->getAttrib('label');
     }
     /**
      * 
      */
     $renderKeys = array('propId', 'propDisplay');
     foreach ($renderKeys as $key) {
         if (isset($attribs[$key])) {
             $field = $attribs[$key]->getAttrib('field');
             $params['fields'][] = $field;
             if (isset($attribs['belongsTo'])) {
                 $attribs[$key]->setBelongsTo($attribs['belongsTo']);
             }
             $xhtmlElements .= $this->_renderElement($attribs[$key], $value, $suffix, $prefix, $searchId);
             if ($key == 'propId') {
                 $nameId = $attribs['propId']->getId();
             }
             unset($attribs['fields'][$field]);
         }
     }
     $params['elements']['others'] = array();
     foreach ($attribs['fields'] as $field) {
         $key = 'prop' . ucfirst($field);
         $labels[] = $attribs[$key]->getAttrib('label');
         if (isset($attribs['belongsTo'])) {
             $attribs[$key]->setBelongsTo($attribs['belongsTo']);
         }
         $xhtmlElements .= $this->_renderElement($attribs[$key], $value, $suffix, $prefix, $searchId);
         $params['fields'][] = $field;
         $params['elements']['others'][] = $attribs[$key]->getId();
         unset($attribs[$key]);
     }
     if (isset($attribs['btn_add'])) {
         $attribs['btn_add']->addClass('ui-button item ui-state-default');
         if ($suffix) {
             $nameButton = $attribs['btn_add']->getName();
             $nameButton .= '_' . $suffix;
             $attribs['btn_add']->setName($nameButton);
         }
         if ($prefix) {
             $nameButton = $prefix . '_' . $attribs['btn_add']->getName();
             $attribs['btn_add']->setName($nameButton);
         }
         $attribs['btn_add']->setAttrib('searchId', $searchId);
         $xhtmlElements .= $attribs['btn_add']->render();
         $params['elements']['btn_add'] = $attribs['btn_add']->getId();
     }
     if (isset($attribs['btn_edit'])) {
         $attribs['btn_edit']->addClass('ui-button item ui-state-default');
         if ($suffix) {
             $nameButton = $attribs['btn_edit']->getName();
             $nameButton .= '_' . $suffix;
             $attribs['btn_edit']->setName($nameButton);
         }
         if ($prefix) {
             $nameButton = $prefix . '_' . $attribs['btn_edit']->getName();
             $attribs['btn_edit']->setName($nameButton);
         }
         $attribs['btn_edit']->setAttrib('searchId', $searchId);
         $xhtmlElements .= $attribs['btn_edit']->render();
         $params['elements']['btn_edit'] = $attribs['btn_edit']->getId();
     }
     $attribs['button']->addClass('ui-button item ui-state-default last');
     if ($suffix) {
         $nameButton = $attribs['button']->getName();
         $nameButton .= '_' . $suffix;
         $attribs['button']->setName($nameButton);
     }
     if ($prefix) {
         $nameButton = $prefix . '_' . $attribs['button']->getName();
         $attribs['button']->setName($nameButton);
     }
     $attribs['button']->setAttrib('searchId', $searchId);
     $xhtmlElements .= $attribs['button']->render();
     $params['elements']['div'] = str_replace('btSearch_', 'div_grid_', $nameButton);
     $xhtmlElements .= '<div id="' . $params['elements']['div'] . '" style="display:none" class="div-grid-seeker" searchId="' . $searchId . '"></div>';
     $xhtmlElements .= '<label class="error" for="' . $searchId . '" generated="true" style="display:none"></label>';
     if ($attribs['multiple']) {
         $xhtmlElements .= '<input type="hidden" name="' . $nameId . '-multiple" id="' . $nameId . '-multiple" />';
         $tableTitles = '<tr id="table-title-' . $attribs['id'] . '-multiple" class="ui-corner-all ui-state-default" style="display:none;">';
         foreach ($labels as $label) {
             $tableTitles .= '<th>';
             $tableTitles .= $label;
             $tableTitles .= '</th>';
         }
         $tableTitles .= '</tr>';
         $xhtmlElements .= '<div id="div-' . $attribs['id'] . '-multiple" style="float:left;clear:both;">
             <table id="table-' . $attribs['id'] . '-multiple" boder="0" cellspacing="0" cellpadding="2">
                 ' . $tableTitles . '
             </table>
             </div>';
     }
     /**
      * Inicio da montagem de parâmetros do TSeeker 
      */
     $params['name'] = $searchId;
     if (isset($attribs['onFilter'])) {
         //$attribs['onFilter'] = str_replace("'", "\'", $attribs['onFilter']);
         $params['onFilter'] = new ZendT_JS_Command($attribs['onFilter']);
     }
     if (isset($attribs['onSearchValid'])) {
         $params['onSearchValid'] = new ZendT_JS_Command($attribs['onSearchValid']);
     }
     if (isset($attribs['onChange'])) {
         $params['onChange'] = new ZendT_JS_Command($attribs['onChange']);
     }
     if (isset($attribs['autoComplete']['onResult'])) {
         $params['autoComplete']['onResult'] = new ZendT_JS_Command($attribs['autoComplete']['onResult']);
     }
     if (isset($attribs['autoComplete']['onFormat'])) {
         $params['autoComplete']['onFormat'] = new ZendT_JS_Command($attribs['autoComplete']['onFormat']);
     }
     if (isset($attribs['autoComplete']['extraParams'])) {
         $params['autoComplete']['extraParams'] = $attribs['autoComplete']['extraParams'];
     }
     if (isset($attribs['onNotFound'])) {
         $params['onNotFound'] = new ZendT_JS_Command($attribs['onNotFound']);
     }
     if (isset($attribs['multiple'])) {
         $params['multiple'] = $attribs['multiple'];
     }
     if (isset($attribs['filterRefer'])) {
         $params['filterRefer'] = $attribs['filterRefer'];
     }
     $params['elements']['id'] = $attribs['propId']->getId();
     $params['elements']['search'] = $searchId;
     $params['elements']['button'] = $attribs['button']->getId();
     if (isset($attribs['propDisplay'])) {
         $params['elements']['display'] = $attribs['propDisplay']->getId();
     } else {
         $params['elements']['display'] = '';
     }
     $params['modal'] = $attribs['jQueryParams']['modal'];
     $params['modal']['type'] = strtoupper($params['modal']['type']);
     if (!in_array($params['modal']['type'], array('DIV', 'WINDOW'))) {
         $params['modal']['type'] = 'WINDOW';
     }
     $params['url'] = $attribs['jQueryParams']['url'];
     if ($attribs['multiple']) {
         $params['data'] = $value;
     }
     /**
      * Cria os parâmetros para renderizar o seeker no jQuery
      */
     $this->view->headLink()->appendStylesheet(ZendT_Url::getBaseDiretoryPublic() . '/scripts/jquery/extra/jquery.autocomplete.css');
     $this->view->headScript()->appendFile(ZendT_Url::getBaseDiretoryPublic() . '/scripts/jquery/extra/jquery.autocomplete.js');
     $this->view->headScript()->appendFile(ZendT_Url::getBaseDiretoryPublic() . '/scripts/jquery/widget/TAutocomplete.js');
     $this->view->headScript()->appendFile(ZendT_Url::getBaseDiretoryPublic() . '/scripts/jquery/widget/TSeeker.js');
     $params = ZendT_JS_Json::encode($params);
     $params = str_replace('{id}', $searchId, $params);
     $js = 'jQuery("#' . $searchId . '").TSeeker(' . $params . ');';
     $this->jquery->addOnLoad($js);
     /**
      * Limpa a memória 
      */
     unset($attribs['button']);
     unset($attribs['propId']);
     unset($attribs['propSearch']);
     unset($attribs['propDisplay']);
     unset($attribs['onFilter']);
     unset($attribs['onChange']);
     unset($attribs['onNotFound']);
     unset($attribs['onResult']);
     unset($attribs['onSearchValid']);
     unset($attribs['filterRefer']);
     unset($attribs['where']);
     return '<div class="ui-form-group">' . $xhtmlElements . '</div>';
 }
Example #25
0
 /**
  * Cria o comando JavaScript
  * @return method 
  */
 public function createJS()
 {
     $this->addHeadScriptFile(ZendT_Url::getBaseDiretoryPublic() . '/scripts/jquery/plugin/ButtonWindowT.js');
     $clickFunction = parent::createJS() . '
             function ' . $this->_getFunctionName() . '(){
                 jQuery.ButtonWindowT({
                     url: "' . $this->getUrl() . '",
                     method: "' . $this->getMethod() . '",
                     param: "' . $this->getParam() . '",
                     windowHeight: ' . $this->getWindowHeight() . ',
                     windowWidth: ' . $this->getWindowWidth() . ',
                     type: "' . $this->getType() . '",
                     fullscreen: "' . $this->getFullScreen() . '"
                 });
             }
         ';
     $this->addHeadScript($this->getId(), $clickFunction);
     return $clickFunction;
 }
Example #26
0
 /**
  * Cria cria um campo hidden, um campo para id, um para descrição e um botão para a busca no seeker.
  *
  * @param  string $id
  * @param  string $value
  * @param  array  $params jQuery Widget Parameters
  * @param  array  $attribs HTML Element Attributes
  * @return string
  */
 public function fileUpload($id, $value = null, array $attribs = array())
 {
     /* echo '<pre>';
        print_r($attribs);
        echo '</pre>';
        exit; */
     if ($value instanceof ZendT_Type_FileSystem) {
         $_file = $value->getFile();
         if ($_file) {
             $attribs['jQueryParams']['data']['name'] = $_file->getName();
             $attribs['jQueryParams']['data']['type'] = $_file->getType();
             $attribs['jQueryParams']['data']['id'] = $_file->getId();
             $attribs['jQueryParams']['data']['filename'] = $_file->toFilenameCrypt();
             $value = $_file->getName();
         } else {
             $value = "";
         }
     }
     $params = $attribs['jQueryParams'];
     unset($attribs['jQueryParams']);
     if (!isset($attribs['name'])) {
         $attribs['name'] = $attribs['id'];
     }
     $params['url']['base'] = ZendT_Url::getBaseUrl();
     $params['url']['public'] = ZendT_Url::getBaseDiretoryPublic();
     $id = $this->view->escape($id);
     $name = $this->view->escape($attribs['name']);
     $list = '<ul id="' . $id . '_menu" class="dropdown-menu position" role="' . $id . '" style="width: 270px;">';
     $list .= '   <li class="ui-no-hover dropdown-menu-group footer">';
     $list .= '      <ul class="facescroll" style="width: 260px; height: 130px;" id="files-selected-' . $id . '">';
     $list .= '      </ul>';
     $list .= '      <button type="button" id="clear-files-' . $id . '" class="ui-button ok ui-state-default">';
     $list .= '         <span class="ui-icon ui-icon-close"></span>';
     $list .= '         <span class="ui-text">Limpar</span>';
     $list .= '      </button>';
     $list .= '      &nbsp;';
     $list .= '   </li>';
     $list .= '</ul>';
     $inputAuto = "ui-input-auto";
     $xhtml = '<input style="width: 270px;" type="text" id="' . $id . '" name="' . $name . '_display" class="item ' . $inputAuto . '" placeholder="' . $value . '" />';
     if ($params['load_id']) {
         $xhtml .= '<input type="hidden" name="' . $name . '[id]" id="' . $id . '_id" />
                       <input type="hidden" name="' . $name . '[file]" id="' . $id . '_file" />
                       <input type="hidden" name="' . $name . '[type]" id="' . $id . '_type" />
                       <input type="hidden" name="' . $name . '[name]" id="' . $id . '_name" />';
     } else {
         $nameType = $this->_prepareName($name, 'type');
         $nameName = $this->_prepareName($name, 'name');
         $nameId = $this->_prepareName($name, 'id');
         $xhtml .= '<input type="hidden" name="' . $name . '"     id="' . $id . '_file" />
                      <input type="hidden" name="' . $nameType . '" id="' . $id . '_type" />
                      <input type="hidden" name="' . $nameName . '" id="' . $id . '_name" />
                      <input type="hidden" name="' . $nameId . '"   id="' . $id . '_id" />';
     }
     /* if ($params['multiple']) {
        $xhtml.= $list;
        $xhtml.= '<button type="button" id="dropdown-files-' . $id . '" class="ui-button item ui-state-default"><span class="ui-icon ui-icon ui-icon-triangle-1-s"></button>';
        } else {
        $xhtml.= '<button type="button" id="download-files-' . $id . '" class="ui-button item ui-state-default"><span class="ui-icon ui-icon-arrowthickstop-1-s"></button>';
        $xhtml.= '<button type="button" id="clear-files-' . $id . '" class="ui-button item ui-state-default"><span class="ui-icon ui-icon-close"></button>';
        } */
     $xhtml .= $list;
     //$xhtml.= '<button type="button" id="dropdown-files-' . $id . '" class="ui-button item ui-state-default"><span class="ui-icon ui-icon ui-icon-triangle-1-s"></button>';
     $xhtml .= '<button type="button" id="select-files-' . $id . '" class="ui-button item ui-state-default"><span class="ui-icon ui-icon-folder-open"></button>';
     $xhtml .= '<div style="clear:both">';
     $xhtml .= '  <label class="error" id="error-' . $id . '"></label>';
     $xhtml .= '</div>';
     $params['elements']['container'] = 'group-' . $id;
     $params['elements']['files-selected'] = 'files-selected-' . $id;
     $params['elements']['selectFiles'] = 'select-files-' . $id;
     $params['elements']['clearFiles'] = 'clear-files-' . $id;
     $params['elements']['startUpload'] = 'start-upload-' . $id;
     $params['elements']['id'] = $id;
     $this->view->headScript()->appendFile(ZendT_Url::getBaseDiretoryPublic() . '/scripts/plupload/plupload.js');
     $this->view->headScript()->appendFile(ZendT_Url::getBaseDiretoryPublic() . '/scripts/plupload/plupload.gears.js');
     $this->view->headScript()->appendFile(ZendT_Url::getBaseDiretoryPublic() . '/scripts/plupload/plupload.silverlight.js');
     $this->view->headScript()->appendFile(ZendT_Url::getBaseDiretoryPublic() . '/scripts/plupload/plupload.flash.js');
     $this->view->headScript()->appendFile(ZendT_Url::getBaseDiretoryPublic() . '/scripts/plupload/plupload.html4.js');
     $this->view->headScript()->appendFile(ZendT_Url::getBaseDiretoryPublic() . '/scripts/plupload/plupload.html5.js');
     $this->view->headScript()->appendFile(ZendT_Url::getBaseDiretoryPublic() . '/layout/jquery/widget/TJQuery.js');
     $this->view->headScript()->appendFile(ZendT_Url::getBaseDiretoryPublic() . '/layout/jquery/widget/TFileUpload.js');
     $this->view->headScript()->appendFile(ZendT_Url::getBaseDiretoryPublic() . '/layout/jquery/widget/TDropdown.js');
     $this->jquery->addOnLoad('jQuery("#' . $id . '").TFileUpload(' . ZendT_JS_Json::encode($params) . ');');
     //if ($params['multiple']) {
     $this->jquery->addOnLoad('jQuery("#' . $id . '_menu").TDropdown({configsHideShow:{events:[\'focus\']}});');
     //}
     return '<div class="ui-form-group">' . $xhtml . '</div>';
 }
Example #27
0
 /**
  * Cria um campo texto com autocomplete customizado
  *
  * @param  string $id
  * @param  string $value
  * @param  array  $params jQuery Widget Parameters
  * @param  array  $attribs HTML Element Attributes
  * @return string
  */
 public function autoselect($id, $value = null, array $attribs = array())
 {
     $params = $attribs['jQueryParams'];
     $attribs['class'] .= ' ui-input-auto';
     unset($attribs['jQueryParams']);
     unset($attribs['autocomplete']);
     unset($attribs['options']);
     unset($attribs['button']);
     //unset($attribs['fields']);
     unset($attribs['propId']);
     unset($attribs['propSearch']);
     unset($attribs['autoComplete']);
     unset($attribs['belongsTo']);
     /*echo '<pre>';
       print_r($attribs);
       echo '</pre>';*/
     $this->view->headScript()->appendFile(ZendT_Url::getBaseDiretoryPublic() . '/layout/jquery/widget/TAutoSelect.js');
     $params = array();
     $fields = array();
     foreach ($attribs['fields'] as $field) {
         array_push($fields, $field);
     }
     if ($attribs['mapperView']) {
         $_mapper = new $attribs['mapperView']();
         $_where = new ZendT_Db_Where();
         if ($attribs['where']) {
             if (substr($attribs['where'], 0, 11) == 'expression:') {
                 $_where->addFilter(' ', substr($attribs['where'], 11), 'EXPRESSION');
             } else {
                 $_where->addFilter('id', $attribs['where']);
             }
         }
         if ($attribs['fieldLevel']) {
             $fields[] = $attribs['fieldLevel'];
         }
         if ($attribs['fieldOrder']) {
             $order = $attribs['fieldOrder'];
         } else {
             $order = $fields[1];
         }
         Zend_Controller_Front::getInstance()->getRequest()->setParam('autoselectFilter', true);
         $_mapper->findAll($_where, $fields, $order);
         Zend_Controller_Front::getInstance()->getRequest()->setParam('autoselectFilter', false);
         $sourceData = array();
         while ($_mapper->fetch()) {
             $data = $_mapper->getData();
             $row = array();
             $row['value'] = $data[$fields[0]]->get();
             $row['desc'] = $data[$fields[1]]->get();
             if ($attribs['fieldLevel']) {
                 $row['level'] = $data[$fields[2]]->toPhp();
             } else {
                 $row['level'] = 0;
             }
             $sourceData[] = $row;
             if ($value == $row['value']) {
                 $params['loadValue'] = $row['desc'];
             }
         }
     }
     if (isset($attribs['sourceData'])) {
         $sourceData = $attribs['sourceData'];
         unset($attribs['sourceData']);
     }
     /*if (count($sourceData) == 0 || !is_array($sourceData)){
           throw new ZendT_Exception('Propriedade "sourceData" não definida!');
       }*/
     if ($attribs['suffix']) {
         $nameId = 'id_' . $attribs['suffix'];
     }
     if ($attribs['prefix']) {
         $nameId = $attribs['prefix'] . '_id';
     }
     /**
      * @todo encontrar a melhor maneira de implementação
      */
     $required = $attribs['required'];
     $attribs['class'] = str_replace('required', '', $attribs['class']);
     unset($attribs['fields']);
     unset($attribs['mapperView']);
     unset($attribs['suffix']);
     unset($attribs['prefix']);
     unset($attribs['caption']);
     unset($attribs['required']);
     unset($attribs['where']);
     unset($attribs['fieldLevel']);
     unset($attribs['fieldOrder']);
     $params['sourceData'] = $sourceData;
     $params['fieldValue'] = $nameId;
     $attribs['TAutoSelect'] = '1';
     $attribs['role'] = '';
     //var_dump($params);
     $params = ZendT_JS_Json::encode($params);
     $this->jquery->addOnLoad('jQuery("#' . $id . '").TAutoSelect(' . $params . ');');
     return $this->view->formText($id, '', $attribs) . $this->view->formHidden($nameId, '', array('required' => $required, 'TAutoSelect' => '1', 'role' => $id));
 }
Example #28
0
 /**
  * Renderiza
  * 
  * @return string 
  */
 public function render()
 {
     $this->addHeadScriptFile(ZendT_Url::getBaseDiretoryPublic() . '/scripts/amcharts/amcharts.js');
     $this->addHeadScript($this->getId(), $this->__toString());
     return $this->createHtml();
 }
Example #29
0
 /**
  * Construtor da classe
  * 
  * @return void
  */
 public function __construct($options = false)
 {
     $this->_decorators = array(new ZendT_Form_Decorator());
     if ($options['orientation'] == 'P') {
         $_widthTitle = 195;
     } else {
         $_widthTitle = 285;
     }
     //Parametros idênticos ao padrão css para facilitar o uso.
     //$options pode ser um array de opções ou o titulo do relatório
     $default = array('empresa' => 'TA', 'orientation' => 'P', 'title' => array('print' => 1, 'fontSize' => 10, 'bold' => true, 'width' => $_widthTitle, 'align' => 'center', 'value' => 'Título do Relatório'), 'unit' => 'mm', 'size' => 'A4', 'outputName' => 'relatorio', 'lineIndex' => 0, 'maxPerLine' => 5);
     if (is_array($options)) {
         $options = array_merge($default, $options);
     } else {
         $options = $default;
     }
     foreach ($options as $key => $value) {
         $this->{'_' . $key} = $value;
     }
     if ($this->_orientation == 'L') {
         $this->_pageWidth = 1625;
     } else {
         $this->_pageWidth = 1120;
     }
     $this->_options = $options;
     $this->_title = $default['title'];
     #$this->_driver->setTitulo($this->_title);
     #$this->_driver->setEmpresa($this->_empresa);
     #$this->_driver->setOrientation($this->_orientation);
     switch ($this->_empresa) {
         case 'TA':
             $logo = ZendT_Url::getBaseDiretoryPublic() . "/images/logo_ta.jpg";
             break;
         case 'WIN':
         case 'TAA':
         case 'TAE':
             $logo = ZendT_Url::getBaseDiretoryPublic() . "/images/logo_tae.jpg";
             break;
         case 'TAL':
         case 'TLG':
             $logo = ZendT_Url::getBaseDiretoryPublic() . "/images/logo_tal.jpg";
             break;
         default:
             $logo = ZendT_Url::getBaseDiretoryPublic() . "/images/logo_ta.jpg";
             break;
     }
     $cell = new ZendT_Report_Cell();
     $cell->setFontSize($default['title']['fontSize'])->setFontBold($default['title']['bold'])->setWidth($default['title']['width'])->setTextAlign($default['title']['align'])->setValue($default['title']['value']);
     $this->_output = '<table width="100%" class="htmlReport" border="0" cellpadding="0" cellspacing="0">';
     if ($this->_options['title']['print'] !== '0') {
         $this->_output .= '<tr>';
         $this->_output .= '  <td class="lf logo"><img src="' . $logo . '" /></td>';
         $this->_output .= $this->_writeCell($cell);
         $this->_output .= '</tr>';
     }
 }
Example #30
0
 /**
  *
  * @param Zend_View_Interface $view
  * @return type 
  */
 public function render(Zend_View_Interface $view = null)
 {
     $element = new ZendT_Form_Element('clear_both');
     $element->setDecorators(array(new ZendT_Form_Decorator_ClearBoth()));
     $this->addElement($element);
     if ($this->_enablejQueryValidate) {
         $onLoad = $this->getView()->placeholder('onLoad')->getValue();
         $onLoad['jQueryFormValidate'] = "jQuery('#" . $this->getId() . "').validate({ignore:[]});";
         $this->getView()->placeholder('onLoad')->set($onLoad);
     }
     if (count($this->_url) > 1) {
         $this->getView()->headScript()->appendFile(ZendT_Url::getBaseDiretoryPublic() . '/scripts/jquery/widget/TForm.js?' . $data);
         $baseUrl = ZendT_Url::getBaseUrl();
         $url = array();
         foreach ($this->_url as $key => $value) {
             $url['url'][$key] = $baseUrl . $value;
         }
         $jsonParam = ZendT_JS_Json::encode($url);
         $onLoad = $this->getView()->placeholder('onLoad')->getValue();
         $onLoad['jQueryForm'] = "jQuery('#" . $this->getId() . "').TForm(" . $jsonParam . ");";
         $this->getView()->placeholder('onLoad')->set($onLoad);
     }
     if ($this->_enableFocusFirstElement) {
         $onLoad = $this->getView()->placeholder('onLoad')->getValue();
         $onLoad['jQueryFormFocus'] = "focusFirstElement('#" . $this->getId() . " input, #" . $this->getId() . " textare, #" . $this->getId() . " select');";
         $this->getView()->placeholder('onLoad')->set($onLoad);
     }
     $enableTinyMCE = false;
     $elements = $this->getElements();
     $tinyMCE = '';
     foreach ($elements as $element) {
         if ($element instanceof ZendT_Form_Element_Textarea) {
             if ($element->isEditorHtml()) {
                 $tinyMCE .= "tinyMCE.get('" . $element->getId() . "').save();";
                 $enableTinyMCE = true;
             }
         }
     }
     if ($enableTinyMCE) {
         $onLoad = $this->getView()->placeholder('onLoad')->getValue();
         $onLoad['tinyMCE'] = "jQuery('#" . $this->getId() . "').submit(function(){" . $tinyMCE . "});";
         $this->getView()->placeholder('onLoad')->set($onLoad);
     }
     return parent::render($view);
 }