Ok .. o que está chamando de sobrecarga não é sobrecarga :D E você pode verificar se ocorre o choque via SQL como eu fiz .. é mais eficiente. A data pode ser um índice, se você tiver muitas consultas e pouca escrita, pode ajudar na performance.
Você já solucionou o problema ou ele ainda existe? Pergunto pq código pela metade não dá pra saber se realmente funciona. Boa sorte aí! Em 27 de abril de 2012 20:50, Douglas J.A.M <[email protected]> escreveu: > Realmente não ficou claro minhas explanações, me desculpe mas a intenção > não foi ser irônico, você me deu uma ideia com o seu código. > > A sobrecarga que eu fiz foi a seguinte. > > Quando eu faço a inserção no banco, antes faço uma filtragem de conflito > de datas, antes estava assim: > > isDisponivel(data_de, data_ate).{ > foreach($alunos->eventos as $evento){ > // verifica datas > if(confliteDatas($data_de1, $data_ate1, $data_de2, $data_ate2){ > .... > } > } > } > > Após já estar inserido, não posso usar esta função repassando a mesma data > pois ela já está inserida no banco de dados, então o que fiz foi uma > sobrecarga neste metódo conforma a seguir: > > isDiposnivel(data_de, data_ate, $evento_id){ > foreach($alunos->eventos as $evento){ > if($evento->id == $evento_id) > continue; > // verifica datas > if(confliteDatas($data_de1, $data_ate1, $data_de2, $data_ate2){ > .... > } > } > > Me desculpe por não ser claro e me dar um um mal entendimento nas minhas > argumentações, sou falho nessa área > > Em 27 de abril de 2012 20:04, felipe bastos <[email protected]>escreveu: > >> Bom, não faço milagre ainda :D >> >> Você quer verificar só a data? Qual a dificuldade? >> >> Cadê a sobrecarga? Você sabe o que é sobrecarga? >> >> foreach ($this->eventos->where('data_de', '>=', >> $data_de)->and_where('data_ate', '<=', $data_ate)->find_all() as $evento) { >> >> Sem mais detalhes é impossível ajudar. >> >> Ah, Pra que clone? >> >> Em 27 de abril de 2012 15:33, Douglas J.A.M <[email protected]>escreveu: >> >> De grande valia sua ajuda mas estava quereando ter que mecher aqui o >>> minímo, fiz um incremento na função com ajuda da sobrecarga, mas seria bom >>> também saber como clone um objeto por inteiro, ele e todos os filhos. Abri >>> um tópico no ko forum >>> http://forum.kohanaframework.org/discussion/10696/complete-clone-instance-orm#Item_1 >>> >>> public function isDisponivel($data_de, $data_ate, $evento_id = NULL) { >>> >>> foreach ($this->eventos->find_all() as $evento) { >>> >>> // se o evento passado for o mesmo que o do laço pula >>> // utilizado para consistencias após a inserção >>> if ($evento_id != NULL && $evento_id == $evento->id) >>> continue; >>> >>> -- >> http://felipebastosweb.com.br >> http://twitter.com/felipebastosweb >> >> -- >> Você está recebendo esta mensagem porque se inscreveu no grupo "Kohana >> Php" dos Grupos do Google. >> Para postar neste grupo, envie um e-mail para [email protected] >> . >> Para cancelar a inscrição nesse grupo, envie um e-mail para >> [email protected]. >> Para obter mais opções, visite esse grupo em >> http://groups.google.com/group/kohana-php?hl=pt-BR. >> > > -- > Você está recebendo esta mensagem porque se inscreveu no grupo "Kohana > Php" dos Grupos do Google. > Para postar neste grupo, envie um e-mail para [email protected]. > Para cancelar a inscrição nesse grupo, envie um e-mail para > [email protected]. > Para obter mais opções, visite esse grupo em > http://groups.google.com/group/kohana-php?hl=pt-BR. > -- http://felipebastosweb.com.br http://twitter.com/felipebastosweb -- Você está recebendo esta mensagem porque se inscreveu no grupo "Kohana Php" dos Grupos do Google. Para postar neste grupo, envie um e-mail para [email protected]. Para cancelar a inscrição nesse grupo, envie um e-mail para [email protected]. Para obter mais opções, visite esse grupo em http://groups.google.com/group/kohana-php?hl=pt-BR.
