示例#1
0
文件: Toolbar.php 项目: rtsantos/mais
 /**
  * Adiciona um botão na Toolbar
  * 
  * @param ZendT_View_Button $button 
  * @param string $name
  * @return \ZendT_View_Toolbar
  */
 public function addButton(ZendT_View_Button $button, $name = null)
 {
     if ($name == null) {
         $name = $button->getId();
     }
     $button->addClass('item');
     $this->_buttons[$name] = $button;
     $this->_buttonsOrder[] = $name;
     return $this;
 }
示例#2
0
文件: Button.php 项目: rtsantos/mais
 /**
  *  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 button($id, $value = null, array $attribs = array())
 {
     if (!isset($attribs['caption']) && $value != '') {
         $attribs['caption'] = $value;
     }
     $_button = new ZendT_View_Button($id, $attribs['caption']);
     $_button->setIcon($attribs['icon']);
     unset($attribs['icon']);
     unset($attribs['caption']);
     unset($attribs['jQueryParams']);
     unset($attribs['options']);
     foreach ($attribs as $name => $value) {
         $_button->setAttr($name, $value);
     }
     return $_button->render();
 }
示例#3
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>';
 }
示例#4
0
文件: Window.php 项目: rtsantos/mais
 /**
  * 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;
 }
示例#5
0
 /**
  * Cria botões para window
  *
  * @param array $buttons
  * @return array
  */
 protected function _createButtons(array $buttons)
 {
     $retorno = array();
     foreach ($buttons as $button) {
         if ($button['onClick'] != '') {
             $button['onClick'] = stripslashes(urldecode($button['onClick']));
             if (substr($button['onClick'], 0, 7) == 'base64:') {
                 $button['onClick'] = base64_decode(substr($button['onClick'], 7));
             }
             $_button = new ZendT_View_Button('button' . str_replace(' ', '_', $button['caption']), $button['caption'], new ZendT_JS_Command($button['onClick']));
             $_button->setIcon($button['icon']);
             if (isset($button['class'])) {
                 $_button->addClass($button['class']);
             }
             //$idButton = $_button->getId();
             $retorno['buttons'] .= $_button->render();
             $key = strtolower(substr(trim($button['caption']), 0, 1));
             if ($key != 'c') {
                 $this->view->hotkeys()->add('key_' . $_button->getId(), 'ctrl+' . $key, "jQuery('#" . $_button->getId() . "').click();");
             }
             /* $retorno['functions'].= "$('#" . $idButton . "').click(" .  . ");\n"; */
         }
     }
     return $retorno;
 }
示例#6
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;
 }
示例#7
0
文件: Ajax.php 项目: rtsantos/mais
 /**
  * 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;
 }
示例#8
0
文件: Button.php 项目: rtsantos/mais
 /**
  * Renderiza o botão apenas usando o Html
  * 
  * @return string
  */
 public function renderHtml()
 {
     //$param['onClick'] = new ZendT_JS_Command();
     $js = $this->createJS();
     $js = str_replace('function', 'function ' . $this->getId(), $js);
     parent::setOnClick($this->getId() . '();');
     //$this->cli
     $this->addHeadScript($this->getId(), $js);
     //$this->addHeadScriptFile(ZendT_Url::getBaseDiretoryPublic().'/scripts/jquery/widget/TButton.js');
     return parent::render();
 }
示例#9
0
文件: Printer.php 项目: rtsantos/mais
 /**
  * Cria o HTMl para as tabs
  * 
  * @return string 
  */
 public function createHtml()
 {
     $html .= '<select id="' . $this->getId() . '" name="' . $this->getId() . '">';
     if (count($this->_serverPrinters) > 0) {
         $html .= '<optgroup id="server_' . $this->getId() . '" label="Impressoras do Servidor">';
         foreach ($this->_serverPrinters as $name) {
             $add = true;
             if (isset($name['name'])) {
                 $name = $name['name'];
             }
             if ($this->_filter && strpos(strtoupper($name), strtoupper($this->_filter)) === false) {
                 $add = false;
             }
             if ($add) {
                 $html .= '    <option value="' . $name . '">' . $name . '</option>';
             }
         }
         $html .= '</optgroup>';
     }
     $html .= '<optgroup id="local_' . $this->getId() . '" label="Impressoras Locais">';
     $html .= '</optgroup>';
     $html .= '</select>';
     $btRefresh = new ZendT_View_Button('btn_' . $this->getId(), '', "jQuery('#" . $this->getId() . "').TPrinter('refreshPrinters');");
     $btRefresh->setIcon('ui-icon-refresh');
     $btRefresh->setTitle('Atualizar lista de impressoras');
     $btRefresh->setCaption('');
     $btRefresh->removeStyle('height');
     $btRefresh->addStyle('margin', '-3px 0 0');
     $btRefresh->addStyle('height', '24px');
     $msg = '<div id="msg_' . $this->getId() . '" style="width:350px;padding:5px;text-align:center;float:left;display:none;" class="ui-state-highlight">';
     $msg .= 'Servidor de impressão não detectado ou requer atualização. <br /> Para instalar, clique <a href = "https://www.tanet.com.br/download/WebServerPrinter.exe">aqui</a>. Em caso de dúvidas entre em contato com o departamento de TI, no telefone 19 2108-9180.';
     $msg .= '</div>';
     return "<div id='cmb_" . $this->getId() . "'>" . $html . $btRefresh->render() . "</div>" . $msg;
 }
示例#10
0
文件: Action.php 项目: rtsantos/mais
 public function panelAction()
 {
     $objectName = get_class($this->_mapper);
     $view = ZendT_Profile::get($objectName, array('B'));
     $this->view->panels = $view['cols-panel']['fields'];
     $this->view->refresh = $view['advanced']['refresh'];
     if (isset($view['title'])) {
         $title = $view['title'];
     } else {
         $title = 'Painel de Indicações';
     }
     $this->view->placeholder('title')->set($title);
     $_toolbar = new ZendT_View_Toolbar('toolChart');
     $button = new ZendT_View_Button('btFilter', 'Filtrar Geral', new ZendT_JS_Command("function(){\n                 jQuery('#frm_panel').attr('action','" . ZendT_Url::getUri(true) . "/filter').submit();\n             }"));
     $button->setIcon('ui-icon-search');
     $_toolbar->addButton($button);
     $button = new ZendT_View_Button('btRefresh', 'Atualizar Geral', new ZendT_JS_Command("function(){\n                 jQuery('#frm_panel').attr('action','" . ZendT_Url::getUri() . "').submit();\n             }"));
     $button->setIcon('ui-icon-refresh');
     $_toolbar->addButton($button);
     if (ZendT_Acl::getInstance()->isAllowed('object-view', 'profile')) {
         $onClick = "\$.WindowT.open({id:'win-{$objectName}', type: 'WINDOW', url: '/Mais/index.php/profile/object-view/list-config', param: 'objeto={$objectName}&tipo=B&id={$config['id']}', method: 'GET', title: 'Configuração da Visão', height: 580, width: 1370, modal: false });";
         $buttonConfig = new ZendT_View_Button('bt-' . $objectName, 'Configurar Visão', $onClick);
         $buttonConfig->setIcon('ui-icon-gear');
         $_toolbar->addButton($buttonConfig);
     }
     $_toolbar->setFloat('right');
     $form = new ZendT_Form();
     $form->setName('frm_panel');
     $form->setAction(ZendT_Url::getUri());
     $params = $this->getRequest()->getParams();
     $element = new ZendT_Form_Element_Hidden('profile');
     $element->setValue($params['profile']);
     $form->addElement($element);
     unset($params['module']);
     unset($params['controller']);
     unset($params['action']);
     unset($params['profile']);
     unset($params['_search']);
     if (count($params) > 0) {
         foreach ($params as $name => &$value) {
             if (isset($params[$name . '-multiple']) && $params[$name . '-multiple']) {
                 $value = $params[$name . '-multiple'];
                 //unset($params[$name.'-multiple']);
             }
         }
         foreach ($params as $name => $value) {
             $element = new ZendT_Form_Element_Hidden($name);
             $element->setValue($value);
             $form->addElement($element);
         }
     }
     $this->view->toolbar = $_toolbar;
     $this->view->form = $form;
     $this->view->params = $params;
     $this->view->addScriptPath(APPLICATION_PATH . '/views/scripts/index/');
     $this->renderScript('panel.phtml');
 }