1.5.7 - Na model, um parametro para o find pode ser array, e lumine fara com where in - Na model, um parametro para o get pode ser array, e lumine fara com where in - Lumine Base implementa a classe Iterator - Quando uma nova consulta e efetuada em um mesmo objeto, a consulta anterior e liberada (freed) - Quando uma conexao e fechada, os resultados abertos sao liberados (freed) - Implementado o metodo fetch_row(int $row) - Adiciona contra-barras no tipo da coluna (enum, porque contem aspas simples) - Correcao do dialeto para Firebird - Enviado por Paulo Cesar Garcia - No momento do update, retirava o alias. Depois de realizar, agora volta o alias que estava antes - Bug corrigido: assinatura do metodo setConnection do dialeto do Firebird esta incompativel com a interface - Correcao para conexao com o firebird (nao colocar o numero da porta) - Correcao para a engenharia reversa usando o form white (fazer group by nos registros somente quando for MySQL) - A contagem de linhas do firebird e feita pelos registros no dataset - Metodo getLink adicionado (Lumine_Model) - Quando o metodo nao existir, nem em plugins, dispara excecao - Possivel de fazer join's aninhados utilizando as preferencias quando trabalhando com as Models (sugestao de Nelson Martucci) - Criada a classe Lumine_AddOn para possibilitar inclusao de add-ons principalmente na engenharia reversa - Quando um parametro nao esta setado nas opcoes, o valor null e setado automaticamente, para evitar warnings. Somente na primeira vez ele e emitido. - Alteracoes na tela de engenharia reversa para suportar add-ons - As opcoes do tipo de campo enum sao adicionadas ao array de opcoes do campo com o indice option_list - Beta: Classes auxiliares para trabalhar com arvore de dados - Beta: Dialeto para SQLServer (MsSQL). Testes efetuados com a versao 2008R2 1.5.6 - Bug Fix - Renomeia na engenharia reversa o nome do mapeamento caso ele esteja duplicado (no DTOTemplate) (encontrado por Juliano Polito) - Criado o metodo setFilters dentro da Model para separar a aplicacao dos filtros do metodo de pesquisa (sugestao de Juliano Polito) - Adicionado um parametro para array associativo de preferencias para busca no metodo LumineModel::find (sugestao de Juliano Polito) - Correcao em alguns comentarios de eventos - Nao sobrescrever o arquivo de contexto na engenharia reversa - Colocado o comando SQL executado nos eventos POS_INSERT, POS_DELETE e POS_UPDATE - Criados os eventos PRE_UPDATE_SQL, POS_UPDATE_SQL, PRE_INSERT_SQL, POS_INSERT_SQL, PRE_DELETE_SQL e POS_DELETE_SQL - O metodo de validacao requiredDate tambem verifica se o valor informado eh uma data valida - Ao passar um valor NULO para o campo, coloca IS NULL como condicao (Lumine_Model::setFilters) - Algumas verificacoes de isset foram alteradas para array_key_exists - Remocao do atributo $state - Alteracao da propriedade que conta o indice de objetos - Alterado o nome do template de Model.php para Model.tpl - Alterada a classe de Union - Possibilidade de colocar clausulas where iniciando com OR ou AND - Possibilidade de registro e chamadas a metodos como plugins - Correcao para quando o Union tem somente um objeto para executar a consulta - Correcao para pegar o novo ID de insercao do mysql (ele permite que seja inserido o valor zero em uma chave autoincrement, retornando o novo valor) - Correcao no setFrom quando for um objeto - Alterado no construtor para aceitar objetos e array 1.5.5 - se o usuario informou um tamanho minimo, mas nao o maximo, o maximo passa a ser o do campo (Lumine_Validator_PHPValidator::addValidation::requiredString) - adicionado evento para antes e depois de efetuar um fetch (Lumine_IteratorEvent) - complemento de enumeracao de validadores (Lumine_Validator) - no modelo da engenharia reversa, as aspas duplas dos campos foram substituidos por aspas simples - nos metodos save, update e insert, quando o valor do campo eh maior que o seu comprimento, o valor eh truncado - criado o metodo _initialize para models - Alterado para que no setFrom ele tambem atribua valores aos campos de relacionamentos estrangeiros (_foreign) - Bug corrigido: quando havia varios niveis de lazy, so estava trazendo o primeiro nivel (encontrado por Esdras Eduardo) - Bug corrigido: no form White, quando se vinculava um M-N em um novo registro dava problema de integridade referencial - Util alterado para utilizar preg_match ao inves de ereg para checar email 1.5.4 - se o mapeamento tiver a opcao "displayField", este campo sera usado para poder exibir o campo correspondente na classe que esta sendo unida no formulario "White" - opcao para poder marcar um campo como nulo no novo modelo de formulario de controle basico - novo modelo de formularios (White) ficou como padrao da engenharia reversa - novo modelo de formularios para engenharia reversa (White) - Metodo de analise de clausulas where, para prepared statements, aperfeicoada - Alterado no dialeto do mysql para que mude de timestamp para datetime no mapeamento quando gerando pelo engenharia reversa - Adicionada a opcao de formatar o nome da classe com sprintf, assim pode-se colocar prefixo/sufixo 1.5.3 - correcao no metodo Lumine::factory - para poder adicionar os itens default e sequence quando existirem - correcao na engenharia reversa do postgres - nao duplicar registros na consulta - correcao para poder pegar o valor do campo quando for inserir e o valor nao foi definido - adicionado o metodo Lumine_Configuration::loadModel - bug corrigido no selectAs 1.5.2 - correcao de bug no metodo Lumine_Util::buildOptions - bug no tokenizer: quando se colocava uma string na select logo no inicio era disparado um erro - bug ao adicionar um formatador para o campo. Ele adicionava o valor na consulta mesmo quando vc nao colocava nada (depois de colocar um format para o campo) - correcao ao salvar objetos relacionados - criado metodo para destruir um objeto e todos os relacionados - aceita um array associativo para setar valores no construtor da classe - agora eh criado somente uma instancia de Lumine_Dialect para consultas - metodo destroy funciona em cascata, liberando memoria - pega o nome da sequencia na engenharia reversa - correcao na classe Lumine_Model para delete, update, save e insert (pegar chave primaria) 1.5.1 - correcao do PostgreSQL para poder pegar o valor da chave auto-incrementavel - pequenas alteracoes para o PHP 5.3 - quando validando um campo usando classe > metodo em PHP, passa o objeto, nome do campo e valor do campo como parametros - adicionado modelo de arquivo para criacao de models - adicionado arquivo de contexto para aplicacoes MVC - adicionado modelos de configuracao - engenharia reversa cria models para MVC - agora eh possivel selecionar o arquivo de configuracao original para engenharia reversa - reverse adiciona uma numeracao quando relacionamentos 1-N e N-M tem nomes repetidos - correcao do schema name da engenharia reversa 1.5 - Metodo validate agora sempre retorna um array. Caso nao tenha erros, o retorno eh um array vazio - Alteracoes na engenharia reversa - Nova tela de engenharia reversa, mais intuitiva - retirados os codigos de fechamento de bloco PHP nas classes de entidades geradas pelo lumine reverse - colocada a class_path na lista de procura do xml validator - Correcao no parseamento de strings Lumine_Parser - Possivel criar entidades on the fly (Lumine::factory) - Disparo de Eventos organizado, melhorado e padronizado - Alterado na engenharia reversa para poder identificar o pacote em explicity type dos DTO's - quando adicionar a opcao "formatter" no mapeamento, automaticamente chama $obj->addFormatter - setFrom aceita tanto array como objetos - alterado o metodo toObject para poder fazer recursivamente nos objetos internos - correcao de bug (acesso direto a classe Lumine_Base) - correcao no disparo de excecoes quando houver erro de SQL (em update, save, insert, delete) 1.3.7 - correcao no metodo toArray para quando tiver formatadores - adiciondao o metodo Lumine_Base::toObject($format='%s',$classname='stdClass'); - adiciondao o metodo Lumine_Base::allToObject($format='%s',$classname='stdClass'); - na engenharia reversa cria as classes DTO's - classe adicionada Reverse::DTOTemplate 1.3.6 - correcao em Lumine_Util::array2xml - correcao em Lumine_Util::showResult - adicionado metodo Lumine_Base::remove($linkname, $items); - adicionado metodo Lumine_Base::toJSON($utf8 = false); - adicionado metodo Lumine_Base::allToJSON($utf8 = false); - adicionado metodo Lumine_Util::json($utf8 = false); 1.3.5 - Documentacao atualizada - Melhoria de performance 1.3.4 - Alteracoes para os controles basicos com postgres - Alteracoes para que os campos booleanos sejam salvos corretamente com o postgres - Alteracoes para que a instancia da configuracao nao fique no objeto basico, melhorando a performance - correcao para pegar o nome da tabela ou alias em um join quando o alias nao e informado - Correcao nos nomes das classes na engenharia reversa - Correcao para que, quando fizer join e estiver utilizando schema, colocar corretamente nas tabelas unidas - (beta) Dicionario de plural. Converte consultor -> consultores, autor -> autores, etc, para colecoes, na engenharia reversa. - bug corrigido: no momento de salvar uma lista de objetos dependentes com nomes diferentes na tabela de uniao ele pega os nomes das colunas incorretamente. - corrigido o bug em relacao aos membros encapsulados como private: eles nao eram retornados no metodo allToArray ou toArray 1.3.3 - Correcao de quando se tinha relacionamentos many-to-many e os nomes das colunas na tabela de uniao eram diferentes das tabelas de origem, nao estava gravando os dados (bug enviado por fernandouhu at gmail dot com) - Correcao na engenharia reversa. Quando se fazia engenharia reversa de uma tabela de ligacao e as chaves primarias da ligacao continham nomes diferentes das tabelas de origem, nao coloca certo nas entidades - Correcao no PostgreSQL para recuperacao das foreign keys sem aspas duplas 1.3 - Adicao de constantes a classe Lumine_Validator - Agora no modo REQUIRED_STRING, tambem ja verifica o comprimento dos campos (MINIMO, MAXIMO) - Dispara excecoes em metodos de persistencia (Lumine_SQLException) - Comentarios em geral - Util - Remocao de dados somente que haviam antes 1.2.3 - Correcao quando se faz um update para nulo 1.2.2 - Inclusao dos metodos getFieldOption e setFieldOption, o que permite alterar uma opcao do campo em tempo de execucao - Criacao opcional de get / set na engenharia reversa - Correcao de alguns alertas em strict mode - Correcao do insert quando se tem get/set de chave primaria auto-incrementavel 1.2 - Declaracao de membros das classes - Ajuste na opcao lazy para carregamento de dados automatico 1.1 - Quando um novo objeto e criado, a configuracao dispara o evento onCreateObject - correcao na clausula where com valor null - adicionados os metodos toXML e allToXML 1.0.9 - Alteracao correta no setDataset quando se recupera uma informacao do dialeto - funcao para autload - Alteracao para passar o objeto que esta sendo validado em uma requiredFunction - Correcao na opcao "manter nome das colunas em chaves estrangeiras" na engenharia reversa - correcao no getLink 1.0.9-beta - Opcao de remover nos arquivos gerados pela engenharia reversa - reinicia a matriz original_dataholder no metodo reset - Ajuste de destrutores - ajuste de memoria (mysql e postgre) - ajuste na engenharia reversa - criacao do metodo "destroy" 1.0.8.4 - Alteracao formato de campo TIME - Correcao quando se faz um count e nao retorna resultados, a apos e uma chamada ao toArray ou allToArray - Firebird Beta - Correcao de que quando nao ha alteracoes no objeto atual, nao estava atualizando as dependencias - Dispara uma excecao quando falha a conexao - Camel case nos nomes das classes e nomes dos membros da entidade - Alteracao em alguns bugs na conexao do Firebird - Alteracao automatica de LIMIT e OFFSET para Firebird - Ajustes na engenharia reversa na opcao "manter nomes das colunas", quando eram relacionamentos 1.0.8.2 - Correcao quando se usa mais de um banco de dados ao mesmo tempo (perdia a relacao com o primeiro banco quando se entrava no segundo - MySQL) - Correcao na opcao "manter nome das colunas em chaves estrangeiras" na engenharia reversa 1.0.8.1 - Correcao de insert quando uma coluna tem chave estrangeira e o valor padrao e null (antes era convertido para zero) - (Fernando Santana); - Remoca de um codigo de teste (print_r) dentro da funcao _insertSQL (Fernando Santana);