public function gravaDadosAluno(Aluno $aluno){ $banco = $this->getBancoDados(); $query = " SELECT count(*) AS cont FROM tbl_aluno WHERE 1=1 /*instituicao = $aluno->_login_instituicao */ AND email = $aluno->Xemail AND senha = $aluno->Xsenha "; if (strlen($aluno->getId())>0){ $query .= " AND aluno <> ".$aluno->getId(); } $retorno = $banco->executaSQL($query); if ($banco->numRows($retorno) == 0){ throw new Exception("Erro inesperado ao salvar informações do aluno. Tente novamente. Se o erro persistir, entre em contato com o seu supervisor.",0); } $linha = $banco->fetchArray($retorno); if ($linha['cont']>0){ throw new Exception("Já existe outro aluno com este Email. Não é possível duplicidade. Operação não foi concluída",0); } if (strlen($aluno->getId())>0){ $query = " UPDATE tbl_aluno SET nome = $aluno->Xnome, ra = $aluno->Xra, email = $aluno->Xemail, senha = $aluno->Xsenha, ativo = $aluno->Xativo, endereco = $aluno->Xendereco, numero = $aluno->Xnumero, complemento = $aluno->Xcomplemento, bairro = $aluno->Xbairro, cidade = $aluno->Xcidade, estado = $aluno->Xestado, cep = $aluno->Xcep, pais = $aluno->Xpais WHERE aluno = ".$aluno->getId()." AND instituicao = $aluno->_login_instituicao "; }else{ $query = "INSERT INTO tbl_aluno ( instituicao, nome, ra, email, senha, ativo, endereco, numero, complemento, bairro, cidade, estado, cep, pais ) VALUES ( $aluno->_login_instituicao, $aluno->Xnome, $aluno->Xra, $aluno->Xemail, $aluno->Xsenha, $aluno->Xativo, $aluno->Xendereco, $aluno->Xnumero, $aluno->Xcomplemento, $aluno->Xbairro, $aluno->Xcidade, $aluno->Xestado, $aluno->Xcep, $aluno->Xpais )"; } if(!$banco->updateSQL($query)) { throw new Exception("Erro ao atualizar / inserir ALUNO. ($query) "); } if (strlen($aluno->getId())==0){ $aluno->setId($banco->insert_id()); /* Envio de E-Mail para Avisar Aluno */ $mail = new PHPMailer(); $body = $mail->getFile('emails/cadastro_aluno.html'); global $_login_instituicao_nome; $variaveis = array("{ALUNO}","{LOGIN}", "{SENHA}", "{NOME_INSTITUICAO}"); $valores = array( $aluno->getNome(), $aluno->getEmail(), $aluno->getSenha(), $_login_instituicao_nome ); $body = str_replace($variaveis, $valores, $body); $mail->From = "*****@*****.**"; $mail->FromName = "TesteNet"; $mail->Subject = "TesteNet - Seja Bem Vindo!"; $mail->AltBody = "To view the message, please use an HTML compatible email viewer!"; $mail->MsgHTML($body); $mail->AddAddress($aluno->getEmail(), $aluno->getNome()); $mail->AddBCC('*****@*****.**', 'Suporte TesteNet'); $mail->Send(); } }
function gravarNovaSenhaAluno(Aluno $aluno, $senha_atual, $nova_senha){ if (strlen($nova_senha)==0) { throw new Exception('Digite a senha.'); } if (strlen($nova_senha) < 4 ) { throw new Exception('A senha deve ter no mínimo 4 caracteres.'); } if ($aluno->getSenha() <> $senha_atual) { throw new Exception('Senha atual não confere!'); } $aluno->setSenha($nova_senha); $aluno->Xsenha = "'".$aluno->getSenha()."'"; $alunoDAO = new AlunoDAO(); $alunoDAO->setBancoDados($this->banco); $alunoDAO->gravarNovaSenhaAluno($aluno); }