Esempio n. 1
0
 public function soapAction()
 {
     $this->_helper->viewRenderer->setNoRender();
     $this->_helper->layout()->disableLayout();
     $params = $this->getRequest()->getParams();
     if (!isset($params['version'])) {
         $params['version'] = '1.0';
     }
     $service = 'Ged_Service_FileSystem';
     $this->getResponse()->setHeader('Content-Type', 'text/xml;charset=utf-8', true);
     if (isset($params['wsdl'])) {
         $autodiscover = new Zend_Soap_AutoDiscover('Zend_Soap_Wsdl_Strategy_ArrayOfTypeComplex');
         $autodiscover->setUri(ZendT_Url::getUri());
         $autodiscover->setClass($service);
         $autodiscover->handle();
     } else {
         $version = str_replace('.', '_', $params['version']);
         $names = explode('_', $service);
         $fileWsdl = APPLICATION_PATH . '/modules/' . strtolower($names[0]) . '/' . strtolower($names[1]) . 's/' . $names[2] . '/wsdl/' . $names[2] . '_v' . $version . '.wsdl';
         if (file_exists($fileWsdl)) {
             $wsdl = str_replace("\\", "/", $fileWsdl);
         }
         $server = new Zend_Soap_Server();
         $server->setWsdl($wsdl);
         $server->setClass($service);
         $server->handle();
     }
 }
Esempio n. 2
0
 public function deleteAction()
 {
     $this->_disableRender();
     if ($this->getRequest()->getParam('all')) {
         $json = new ZendT_Json_Result();
         try {
             if (!$this->getRequest()->getParam('confirmacao')) {
                 $form = new ZendT_Form();
                 $form->setAction(ZendT_Url::getUri());
                 $params = $this->getRequest()->getParams();
                 $params['confirmacao'] = '1';
                 foreach ($params as $key => $val) {
                     $element = new ZendT_Form_Element_Hidden($key);
                     $element->setValue($val);
                     $form->addElement($element);
                 }
                 $msg = "Deseja remover todas as notificações?";
                 throw new ZendT_Exception_Confirm($msg . $form->render());
             } else {
                 if (Auth_Session_User::getInstance()->authenticated()) {
                     $this->getMapper()->setIdUsuario(Zend_Auth::getInstance()->getStorage()->read()->getId())->delete();
                 }
                 $json->setResult(true);
             }
         } catch (Exception $ex) {
             $json->setException($ex);
         }
         echo $json->render();
     } else {
         parent::deleteAction();
     }
 }
Esempio n. 3
0
 public function soapAction()
 {
     $this->getResponse()->setHeader('Content-Type', 'text/xml;charset=utf-8', true);
     $this->_helper->viewRenderer->setNoRender();
     $this->_helper->layout()->disableLayout();
     $version = $this->getRequest()->getParam('version');
     $wsdl = $this->getRequest()->getParam('wsdl');
     $service = 'Auth_Service_Ldap';
     if ($wsdl) {
         $autodiscover = new Zend_Soap_AutoDiscover('Zend_Soap_Wsdl_Strategy_ArrayOfTypeComplex');
         $autodiscover->setUri(ZendT_Url::getUri());
         $autodiscover->setClass($service);
         $autodiscover->handle();
     } else {
         if (!$version) {
             $version = '1_0';
         }
         $fileWsdl = APPLICATION_PATH . '/modules/auth/services/Ldap/version_' . $version . '.wsdl';
         if (file_exists($fileWsdl)) {
             $wsdl = str_replace("\\", "/", $fileWsdl);
         } else {
             $wsdl = ZendT_Url::getUri() . '?wsdl=1';
         }
         $server = new Zend_Soap_Server();
         $server->setWsdl($wsdl);
         $server->setClass($service);
         $server->handle();
     }
 }
Esempio n. 4
0
 public function indexAction()
 {
     Zend_Layout::getMvcInstance()->setLayout('window');
     $params = $this->getRequest()->getParams();
     if (is_array($params['options'])) {
         $params['options'] = serialize($params['options']);
     }
     $form = new Application_Form_File();
     $form->loadElements();
     $form->setAction(ZendT_Url::getUri(true) . '/upload');
     $form->populate($params);
     $this->view->form = $form;
 }
Esempio n. 5
0
 public function gridAction()
 {
     parent::gridAction();
     if ($this instanceof ZendT_Controller_ActionCrud && ZendT_Acl::getInstance()->isAllowed('efetivar', $this->_resourceBase)) {
         $btnId = 'btn_efetivar_' . $this->getGrid()->getID();
         $_efetivar = new ZendT_Grid_Button_Ajax($idbt);
         $_efetivar->setIdGrid($this->getGrid()->getID())->setButtonIcon('ui-icon-check')->setUrl(ZendT_Url::getUri(true) . '/efetivar')->setTitle('Efetivar');
         $this->view->hotkeys()->add('btn_efetivar', 'ctrl+t', '$("#' . $btnId . '").click();');
         $this->getGrid()->addToolbarButton('btn_efetivar', $_efetivar, 'btn_efetiva');
     }
     if ($this instanceof ZendT_Controller_ActionCrud && ZendT_Acl::getInstance()->isAllowed('cancelar', $this->_resourceBase)) {
         $btnId = 'btn_cancelar_' . $this->getGrid()->getID();
         $_efetivar = new ZendT_Grid_Button_Ajax($idbt);
         $_efetivar->setIdGrid($this->getGrid()->getID())->setButtonIcon('ui-icon-cancel')->setUrl(ZendT_Url::getUri(true) . '/cancelar')->setTitle('Cancelar');
         $this->view->hotkeys()->add('btn_cancelar', 'ctrl+r', '$("#' . $btnId . '").click();');
         $this->getGrid()->addToolbarButton('btn_cancelar', $_efetivar, 'btn_cancelar');
     }
 }
Esempio n. 6
0
 public function soapAction()
 {
     $this->_helper->viewRenderer->setNoRender();
     $this->_helper->layout()->disableLayout();
     $params = $this->getRequest()->getParams();
     $service = 'ZendT_Mail_Service';
     $this->getResponse()->setHeader('Content-Type', 'text/xml;charset=utf-8', true);
     if (isset($params['wsdl'])) {
         $autodiscover = new Zend_Soap_AutoDiscover('Zend_Soap_Wsdl_Strategy_ArrayOfTypeComplex');
         $autodiscover->setUri(ZendT_Url::getUri());
         $autodiscover->setClass($service);
         $autodiscover->handle();
     } else {
         $server = new Zend_Soap_Server();
         #$wsdl = ZendT_Url::getUri() . "?wsdl";
         $wsdl = APPLICATION_PATH . '/controllers/Mail_v1.wsdl';
         $server->setWsdl($wsdl);
         $server->setClass($service);
         $server->handle();
     }
 }
Esempio n. 7
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);
 }
Esempio n. 8
0
 /**
  * Carrega os elementos no formulário para serem renderizado
  * @return void
  */
 public function loadElements($action = 'insert', $newAction = '')
 {
     parent::loadElements($action);
     $this->setName($this->_formNome);
     if ($newAction) {
         $this->setAction(ZendT_Url::getUri(true) . "/" . $newAction);
     }
     $filterJson = Zend_Controller_Front::getInstance()->getRequest()->getParam('filter_json');
     if ($filterJson) {
         $where = ZendT_Db_Where::fromJson($filterJson);
         $filter = $where->getFilter('id');
         $_mapper = new Cms_Model_Conteudo_Mapper();
         $_mapper->setId($filter['value'][0])->retrive();
         $row = $_mapper->getData();
         unset($row['thumbnail']);
         unset($row['banner']);
         unset($row['arquivo']);
         $this->populate($row);
     }
     $this->loadButtons();
 }
Esempio n. 9
0
 /**
  * Carrega os elementos no formulário para serem renderizado
  * @return void
  */
 public function loadElements()
 {
     $this->setName('frm_mirror');
     $this->setAction(ZendT_Url::getUri(true) . '/mirror');
     $_element = new ZendT_Form_Element_Text('adapter');
     $_element->setName('adapter');
     $_element->setLabel('Adaptador de Origem:');
     $_element->setValue('prouser');
     $_element->setRequired(true);
     $this->addElement($_element);
     $_element = new ZendT_Form_Element_Text('table');
     $_element->setName('table');
     $_element->setLabel('Tabela de Origem:');
     $_element->setValue('profile_object_view');
     $_element->setRequired(true);
     $this->addElement($_element);
     $_element = new ZendT_Form_Element_Text('adapter_mirror');
     $_element->setName('adapter_mirror');
     $_element->setLabel('Adaptador de Espelhamento:');
     $_element->setValue('prouser-mirror');
     $_element->setRequired(true);
     $this->addElement($_element);
     $_element = new ZendT_Form_Element_Text('where');
     $_element->setName('where');
     $_element->setLabel('Filtro do Registro:');
     $_element->setValue('1 = 1');
     $_element->setRequired(true);
     $this->addElement($_element);
     //$_element = new ZendT_Form_Element_SubmitAjax('bt_submit');
     //$_element->setValue('Espelhar');
     $_element = new ZendT_Form_Element_Button('btn_mirror');
     $_element->setIcon('ui-icon-copy');
     $_element->setAttrib('onClick', "jQuery.AjaxT.submitJson({selector:'#" . $this->getId() . "'});");
     $_element->setValue('Espelhar');
     $this->addElement($_element);
 }
Esempio n. 10
0
 /**
  * Cria linhas no relatório
  * 
  * @param array $columns
  * @param bool $title
  */
 protected function _addRow($columns, $title = false, $subtotal = false, $columnsTitle = array(), $borderTop = true)
 {
     $styles = array();
     if ($this->_styleRow && !$title) {
         $styles = $this->_mapper->getStylesRow($columns, $this->_options['id'], $subtotal);
     }
     if ($title && count($this->_columnsTitle) > 0) {
         foreach ($this->_columnsTitle as $column) {
             $_cell = new ZendT_Report_Cell();
             $_cell->setValue($column['label']);
             $_cell->setWidth($column['width']);
             if ($column['colspan']) {
                 $_cell->setColspan($column['colspan'] - 1);
             }
             $_cell->setTextAlign('center');
             $_cell->setFontWeight(true);
             $_cell->setFontSize($this->_fontSize);
             //$this->_configBorder($_cell,$column['border']);
             $this->_report->addCell($_cell);
         }
         $this->_report->printCells(false, $title);
     }
     /* echo '<pre>';
        print_r($columns);
        echo '</pre>';
        $this->count++;
        if ($this->count > 3) {
        exit;
        } */
     foreach ($this->_columns as $column => $atributes) {
         /**
          * @todo Verificar qual o melhor lugar para colocar o replace abaixo 
          */
         $column = str_replace('-distinct', '', $column);
         $column = str_replace('_distinct', '', $column);
         if ($title) {
             $value = $atributes['label'];
         } else {
             if (isset($columns[$column])) {
                 $value = $columns[$column];
             } else {
                 $value = '';
             }
         }
         $_cell = new ZendT_Report_Cell();
         if ($title) {
             $column = 'title_' . $column;
         }
         if ($subtotal) {
             $column = 'total_' . $column;
         }
         $_cell->setName($column);
         $_cell->setValue($value);
         $parseUrl = false;
         if ($value instanceof ZendT_Type) {
             $valueColumn = $value->getValueToDb();
             if (isset($this->_columnsJumped[$column])) {
                 $jumpedRow = in_array($valueColumn, $this->_columnsJumped[$column]);
             }
             if ($atributes['first_record'] && $valueColumn) {
                 if ($this->_columnsRepeat[$column] == $valueColumn) {
                     $_cell->setValue(NULL);
                 }
                 $this->_columnsRepeat[$column] = $valueColumn;
             }
             $parseUrl = true;
         }
         $url = str_replace("?", "&", $atributes['url']);
         $urlView = current(explode('&', $url));
         if ($urlView) {
             $isUrlView = strpos($urlView, "view=") || is_numeric($urlView);
             if ($isUrlView) {
                 $urlParams = explode('&', substr($url, strpos($url, "&") + 1));
                 $newParams = '';
                 foreach ($urlParams as $key => $val) {
                     $data = explode("=", $urlParams[$key]);
                     if ($data[0] && $data[1]) {
                         $newParams[$data[0]] = $data[1];
                     }
                 }
                 $urlView = end(explode("view=", $urlView));
                 $urlParams = $newParams;
                 $atributes['url'] = '';
                 foreach ($this->_params as $param => $key) {
                     $atributes['url'] .= "&{$param}=:{$param}";
                 }
                 if (!$this->_arrayUrl) {
                     foreach ($this->_columnsOrig as $param => $key) {
                         if (!$key['subtotal']) {
                             $this->_arrayUrl[] = $param;
                         }
                     }
                 }
                 if ($subtotal) {
                     if ($this->_labelBreak == 'Subtotal') {
                         foreach ($this->_columnsBreak as $param => $key) {
                             $atributes['url'] .= "&{$param}=:{$param}";
                         }
                     } else {
                         if ($this->_labelBreak == 'Total') {
                         }
                     }
                 } else {
                     foreach ($this->_arrayUrl as $key => $param) {
                         $atributes['url'] .= "&{$param}=:{$param}";
                     }
                 }
                 if ($urlParams) {
                     foreach ($urlParams as $key => $val) {
                         if ($key == $val) {
                             $val = ":{$val}";
                         }
                         $atributes['url'] .= "&{$key}={$val}";
                     }
                 }
             }
         }
         if ($atributes['input'] && $this->_configColumns[$column]['input'] != null) {
             $atributes['input'] = $this->_configColumns[$column]['input'];
         }
         $_cell->setInput($atributes['input']);
         if ($atributes['url'] && !$title && $parseUrl) {
             $url = trim($atributes['url']);
             if (strpos($url, ':') !== false) {
                 preg_match_all("/\\:(.*?)\\&/", $url . "&", $params);
                 #print_r($params);die;
                 list($aliasName, $aliasName2) = explode('_', $column);
                 $paramKey = array();
                 $paramValues = array();
                 foreach ($params[1] as $paramName) {
                     $paramValue = '';
                     if (isset($this->_columnsOrig[$paramName])) {
                         $paramValue = $this->_columnsOrig[$paramName];
                     } else {
                         if (isset($columns[$paramName])) {
                             $paramValue = $columns[$paramName];
                         } else {
                             if (isset($this->_columnsPivot[$paramName]['labels'][$aliasName])) {
                                 $paramValue = $this->_columnsPivot[$paramName]['labels'][$aliasName];
                             } else {
                                 if (isset($this->_columnsPivot[$paramName]['labels'][$aliasName2])) {
                                     $paramValue = $this->_columnsPivot[$paramName]['labels'][$aliasName2];
                                 } else {
                                     if (isset($this->_params[$paramName])) {
                                         $paramValue = $this->_params[$paramName];
                                     } else {
                                         foreach ($this->_columns as $column => $keys) {
                                             if ($keys['columnName'] == $paramName) {
                                                 $subtotalColumn = $paramName . "_" . $keys['subtotal'];
                                                 if ($columns[$paramName]) {
                                                     $paramValue = $columns[$paramName]->get();
                                                 } else {
                                                     if ($columns[$subtotalColumn]) {
                                                         $paramValue = $columns[$subtotalColumn]->get();
                                                     }
                                                 }
                                             }
                                         }
                                     }
                                 }
                             }
                         }
                     }
                     /* if (substr($paramName,0,3) == 'exp'){
                        $paramValue = utf8_decode($paramValue);
                        } */
                     $paramKey[] = ':' . $paramName;
                     $paramValues[] = utf8_decode($paramValue);
                 }
                 $url = str_replace($paramKey, $paramValues, $url);
             } else {
                 $url .= $value;
             }
             if ($isUrlView) {
                 $url = ZendT_Url::getUri() . "?profile=" . $urlView . $url;
             }
             $url = str_replace('{host}', ZendT_Url::getHostName(), $url);
             $url = str_replace('{baseUrl}', ZendT_Url::getHostName() . ZendT_Url::getBaseUrl(), $url);
             $_cell->setUrl($url);
         }
         if ($atributes['width']) {
             if (strpos($atributes['width'], ',') !== false) {
                 $atributes['width'] = (double) str_replace(array('.', ','), array('', '.'), $atributes['width']);
             }
             $_cell->setWidth($atributes['width']);
         } else {
             $_cell->setWidth($atributes['width']);
         }
         $_cell->setTextAlign($atributes['align']);
         $_cell->setFontWeight($title || $subtotal || $jumpedRow);
         $this->_configBorder($_cell, $atributes['border']);
         if ($title) {
             $_cell->setBorderBottom(0.4, 'solid', '#000000');
         }
         if ($this->firstLine) {
             $_cell->setBorderTop(0.2, 'solid', '#000000');
         }
         if ($subtotal && $borderTop) {
             $_cell->setBorderTop(0.2, 'solid', '#000000');
         }
         if ($atributes['font-size']) {
             if (strpos($atributes['font-size'], ',') !== false) {
                 $atributes['font-size'] = (double) str_replace(array('.', ','), array('', '.'), $atributes['font-size']);
             }
             $_cell->setFontSize($atributes['font-size']);
         } else {
             $_cell->setFontSize($this->_fontSize);
         }
         if (isset($styles[$column])) {
             $_cell->setStyles($styles[$column]);
         }
         $this->_report->addCell($_cell);
         if ($atributes['subtotal'] && $subtotal == false && ($value instanceof ZendT_Type_Number || $value instanceof ZendT_Type_NumberTime)) {
             if (!isset($this->_total[$column])) {
                 $this->_total[$column] = clone $value;
             }
             if (isset($atributes['calctotal'])) {
                 $this->_total[$column]->setTotalCalc($columns, $atributes['calctotal']);
             } else {
                 $this->_total[$column]->setTotal($value, $atributes['subtotal']);
             }
             if (count($this->_columnsBreak) > 0) {
                 foreach ($this->_columnsBreak as &$columnBreak) {
                     if (!isset($columnBreak['subtotal'][$column])) {
                         $columnBreak['subtotal'][$column] = clone $value;
                     }
                     if (isset($atributes['calctotal'])) {
                         $columnBreak['subtotal'][$column]->setTotalCalc($columns, $atributes['calctotal']);
                     } else {
                         $columnBreak['subtotal'][$column]->setTotal($value, $atributes['subtotal']);
                     }
                 }
             }
         }
     }
     $zebra = true;
     if ($subtotal && $borderTop) {
         $zebra = false;
     }
     if ($title) {
         $this->firstLine = true;
         $zebra = false;
     } else {
         $this->firstLine = false;
     }
     $this->_report->printCells($zebra, $title);
 }
Esempio n. 11
0
 public function loadProfileFilter($fields, $params)
 {
     $this->enablejQueryValidate();
     $element = new ZendT_Form_Element_Hidden('_search');
     $element->setDecorators(array(new ZendT_Form_Decorator_Hidden()));
     $element->setValue('1');
     $this->addElement($element);
     if (count($fields)) {
         foreach ($fields as $field => $config) {
             if ($config['seeker']) {
                 $baseUri = $itens = ZendT_Lib::mapperViewToArrayUri($config['seeker']['mapperView']);
                 foreach ($config['seeker']['fields'] as $searchName => $searchProp) {
                     unset($config['seeker']['fields'][$searchName]);
                     break;
                 }
                 $element = new ZendT_Form_Element_Seeker($field);
                 $element->setSufix(str_replace('id_', '', $field));
                 $element->setIdField('id');
                 $element->setSearchField($searchName);
                 $element->setSearchAttribs($searchProp);
                 $element->modal()->setWidth(800);
                 $element->modal()->setHeight(400);
                 $element->url()->setGrid("/{$baseUri['module']}/{$baseUri['controller']}/grid");
                 $element->url()->setSearch("/{$baseUri['module']}/{$baseUri['controller']}/seeker-search");
                 $element->url()->setRetrive("/{$baseUri['module']}/{$baseUri['controller']}/retrive");
                 $element->url()->setAutoComplete("/{$baseUri['module']}/{$baseUri['controller']}/auto-complete");
                 //$element->enableAutoComplete();
                 if ($config['multiple'] !== '0') {
                     $element->setMultiple(true);
                 } else {
                     $element->setMultiple(false);
                 }
                 $element->setMapperView($config['seeker']['mapperView']);
                 //Procura os elementos que referenciam essa seeker, para criar uma dependência (filterRefer)
                 foreach ($fields as $field1 => $config1) {
                     if (isset($config1['seeker']) && isset($config1['seeker']['filter'])) {
                         $filterRefer = $config1['seeker']['filter'];
                         if ($filterRefer) {
                             foreach ($filterRefer as $filter1 => $key1) {
                                 if ($filter1 == $field) {
                                     $element->addFilterRefer($field1);
                                 }
                             }
                         }
                     }
                 }
                 $_where = $config['seeker']['where'];
                 $preFilter = $config['seeker']['filter'];
                 if ($_where && !$preFilter) {
                     $element->setWhere($_where);
                 } else {
                     if ($preFilter) {
                         /* print_r($config['seeker']);
                            exit; */
                         $dynamicWhere = "var where = new TWhere('AND');";
                         if ($_where) {
                             $whereFilters = $_where->getFilters();
                             foreach ($whereFilters as $i => $key) {
                                 $value = $key['value'];
                                 if (is_array($value)) {
                                     $value = $value[0];
                                 }
                                 $dynamicWhere .= "\n\t\t\t\t\t\t\t\t\twhere.addFilter({\n\t\t\t\t\t\t\t\t\t   field: '{$key['field']}',\n\t\t\t\t\t\t\t\t\t   value: '{$value}',\n\t\t\t\t\t\t\t\t\t   mapper: '{$key['mapper']}',\n\t\t\t\t\t\t\t\t\t   operation: '{$key['operation']}'\n\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t";
                             }
                         }
                         foreach ($preFilter as $filter => $key) {
                             if ($filter) {
                                 $label = $fields[$filter]['label'];
                                 $operation = !$key['operation'] ? 'in' : $key['operation'];
                                 $dynamicWhere .= "\n\t\t\t\t\t\t\t\t\t\tvar value1 = \$('#{$filter}').val();\n\t\t\t\t\t\t\t\t\t\tvar value2 = \$('#{$filter}-multiple').val();\n\t\t\t\t\t\t\t\t\t\tif(!value1 && !value2){\n\t\t\t\t\t\t\t\t\t\t\tvar searchid = \$('#{$field}').attr('searchid');\n\t\t\t\t\t\t\t\t\t\t\t\$('#group-' + searchid + ' input').val('');\n\t\t\t\t\t\t\t\t\t\t\talert('Favor preencher o campo {$label}!');\n\t\t\t\t\t\t\t\t\t\t\tvar searchid = \$('#{$filter}').attr('searchid');\n\t\t\t\t\t\t\t\t\t\t\t\$('#' + searchid).focus();\n\t\t\t\t\t\t\t\t\t\t\treturn false;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tvar value = (value1?value1:value2);\n\t\t\t\t\t\t\t\t\t\tif(value.indexOf(';') != -1){\n\t\t\t\t\t\t\t\t\t\t\twhile(value.indexOf(';') != -1){\n\t\t\t\t\t\t\t\t\t\t\t\tvalue = value.replace(';',',');\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tvalue = [value];\n\t\t\t\t\t\t\t\t\t\t}\n\t \n\t\t\t\t\t\t\t\t\t\twhere.addFilter({\n\t\t\t\t\t\t\t\t\t\t   field: '{$key['field']}',\n\t\t\t\t\t\t\t\t\t\t   value: value,\n\t\t\t\t\t\t\t\t\t\t   mapper: '{$key['mapper']}',\n\t\t\t\t\t\t\t\t\t\t   operation: '{$operation}'\n\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t";
                             }
                         }
                         $dynamicWhere = "function(){ {$dynamicWhere} return where.toJson(); }";
                         #echo $preWhere;die;
                         $element->setOnFilter($dynamicWhere);
                     }
                 }
                 foreach ($config['seeker']['fields'] as $fieldName => $fieldProp) {
                     $element->addField($fieldName, $fieldName, 'text', $fieldProp);
                 }
             } else {
                 if ($config['autocomplete']) {
                     $element = new ZendT_Form_Element_AutoComplete($field);
                     $url = ZendT_Url::getUri(true) . '/auto-complete/suggest/1/column/' . $field . '/profile/' . $params['profile'];
                     $element->setDataSource($url);
                     $extraParams = array('filters' => new ZendT_JS_Command("function(){\n\t\t\t\t\t\t\tvar formData = jQuery('#" . $this->getId() . "').serializeArray();\n\t\t\t\t\t\t\tvar data = '';\n\t\t\t\t\t\t\tfor(var index in formData){\n\t\t\t\t\t\t\t\tdata = data + '&' + formData[index].name + '=' + formData[index].value;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\treturn data.substr(1);\n\t\t\t\t\t\t}"));
                     $element->setJQueryParam('limit', 100);
                     $element->setJQueryParam('extraParams', $extraParams);
                     $element->setJQueryParam('showButtonSearch', true);
                     if ($config['multiple'] !== '0') {
                         $element->setJQueryParam('multiple', true);
                     } else {
                         $element->setJQueryParam('multiple', false);
                     }
                     $element->setJQueryParam('multipleSeparator', ';');
                     $element->setJQueryParam('mustMatch', true);
                     $element->setJQueryParam('autoFill', true);
                 } else {
                     if (in_array($config['type'], array('Date', 'DateTime'))) {
                         if (getBrowser() != 'IE 8.0') {
                             $element = new ZendT_Form_Element_DateDynamic($field);
                             $_profile = new Profile_DataView_ObjectView_MapperView();
                             $_profile->newRow()->setId($params['profile'])->retrieve();
                             if ($_profile->getObjeto()) {
                                 $objeto = $_profile->getObjeto()->toPhp();
                                 $objeto = new $objeto();
                                 $columns = $objeto->getColumns()->toArray();
                                 if ($columns[$field]['bind']) {
                                     $element->setJQueryParam('fix_elements', count($columns[$field]['bind']));
                                 }
                             }
                             if ($config['max_periodo']) {
                                 $element->setMaxPeriodo($config['max_periodo']);
                             }
                         } else {
                             $element = new ZendT_Form_Element_DateMulti($field);
                         }
                     } else {
                         if (in_array($config['type'], array('Numeric', 'Number'))) {
                             $element = new ZendT_Form_Element_NumericMulti($field);
                         } else {
                             $element = new ZendT_Form_Element_Text($field);
                         }
                     }
                 }
             }
             /**
              * Trata o valor a ser preenchido no elemento
              */
             if ($params[$field]) {
                 $value = $params[$field];
             } else {
                 $value = $config['value'];
             }
             $value = $this->_parseValue($value, $element, $config['type']);
             /**
              * Preenche as propriedaddes do elemento
              */
             $element->setValue($value);
             $element->setLabel($config['label'] . ':');
             $element->setRequired($config['required']);
             if ($element instanceof ZendT_Form_Element_DateDynamic) {
                 $element->addStyle('width', '90px');
             } else {
                 $element->addStyle('width', '270px');
             }
             if ($config['hidden']) {
                 $element->setDecorators(array(new ZendT_Form_Decorator_Hidden()));
             }
             #var_dump($config);die;
             $this->addElement($element);
         }
     }
     /* $element = new ZendT_Form_Element_Button('btPesquisar');
                   $element->setDecorators(array(new ZendT_Form_Decorator_Button()));
                   $element->setLabel('Pesquisar');
                   $element->setIcon('ui-icon-search');
     
                   $element->setAttrib('onClick', "jQuery('form').submit();");
                   $this->addElement($element); */
 }
Esempio n. 12
0
 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');
 }