page->isPostBack() ) { $order = implode(', ', $sql->orderBy); $sql->orderBy = ''; $sql->setOrderBy( $order . ' LIMIT 0' ); } $query = $this->GetQuery( 'gnuteca3', $sql ); $this->setQueryGrid( $query, $columns, $title, $pageLength, $indexColumn ); if ( !$MIOLO->page->isPostBack() ) { $this->grid->emptyMsg = ''; } else { $this->grid->emptyMsg = _M('Nenhum registro encontrado.', 'gnuteca3'); } } /* * Função modificado do miolo para definir o foco no primeiro campo do related do lookup */ function setQueryGrid($query, $columns, $title = 'Pesquisa', $pageLength = 15, $indexColumn = 0) { parent::setQueryGrid($query, $columns, $title, $pageLength, $indexColumn); //$this->grid->setIsScrollable(true); $related = explode( ',',$this->related); $focus = $related[0]; $args = ''; if ( isset($query->result[0]) ) { for ($i = 0; $i < count($query->result[0]); $i++) { $args .= ($i ? '|' : '') . "#$i#"; } } return $this->grid->setActionDefault("{$this->formName}.deliver('$this->formName', {$indexColumn}, '$args'); gnuteca.setFocus('{$focus}',false); if ( dojo.byId('{$focus}').getAttribute('onchange') ) { dojo.byId('{$focus}').onchange(); }"); } } $MIOLO->uses('/db/lookup.class.php','gnuteca3'); $MIOLO->history->pop(); $lookup = new GLookup($module); $businessClass = "Business{$lookup->module}Lookup"; $autoCompleteMethod = "AutoComplete{$lookup->item}"; $searchMethod = "Lookup{$lookup->item}"; $object = new $businessClass(); $lookupMethod = ($lookup->autocomplete && method_exists($object, $autoCompleteMethod)) ? $autoCompleteMethod : $searchMethod; $object->$lookupMethod($lookup); //faz a paginação da grid do lookup funcionar if ( $lookup->grid->pn ) { $lookup->grid->pn->setPageNumber( MIOLO::_REQUEST('pn_page' ) ); } $lookup->setContent(); ?>