public function potvrditZmenuHeslaFormSubmitted(PotvrditZmenuHeslaForm $form) { $values = $form->getValues(); $osoby = $this->osobyRepository->findBy(array('password' => $values['klic'])); if ($osoby->count() != 1) { $this->redirect('chyba'); } $osoba = $osoby->fetch(); $email = $osoba['email']; $username = $osoba['username']; dd($osoba, 'osoba'); if ($osoba['id'] != $values['id_osoby']) { $this->redirect('chyba'); } $heslo = Authenticator::generovatHeslo(); $this->osobyRepository->zmenitHeslo($osoba['id'], $heslo); $this->logg("osoba " . $osoba['id'] . " - vygenerovány nové přístupové údaje"); $mail = $this->odeslani_mailu->createMail(); $mail->addTo($email)->setSubject('Přístupové údaje k systému GIS')->setBody("Vaše nové přihlašovací údaje k systému GIS:\nuživatelské jméno: " . $username . "\nuživatelské heslo: {$heslo} \n\nPřihlásit se můžete na adrese " . $this->context->parameters['prihlasovaci_stranka'] . "\n\nPo prvním přihlášení si změňte heslo.\nEmail je generován strojově, prosím, neodpovídejte.\n"); $mail->send(); $this->flashMessage('Nové heslo bylo odesláno na Váš email.'); $this->redirect('Login:default'); }
public function vygenerovatPristupoveUdaje($id) { $zaznam = $this->osobyRepository->findById($id); if ($zaznam->email) { if (!$zaznam->username) { $username = $this->osobyRepository->generovatUsername($id); $this->osobyRepository->zmenitUzivatelskeJmeno($id, $username); } else { $username = $zaznam->username; } $heslo = Authenticator::generovatHeslo(); $this->osobyRepository->zmenitHeslo($id, $heslo); $this->logg("osoba {$id} - vygenerovány nové přístupové údaje"); $mail = $this->odeslani_mailu->createMail(); $mail->addTo($zaznam->email)->setSubject('Přístupové údaje k systému GIS')->setBody("Vaše nové přihlašovací údaje k systému GIS:\nuživatelské jméno: {$username} \nuživatelské heslo: {$heslo} \nPřihlásit se můžete na adrese " . $this->context->parameters['prihlasovaci_stranka'] . "\n Po prvním přihlášení si změňte heslo.\nEmail je generován strojově, prosím, neodpovídejte.\n"); $mail->send(); $this->flashMessage('Nové heslo bylo odesláno.'); return TRUE; } else { $this->logg("osoba {$id} - nelze vygenerovat heslo, není zadaný email"); $this->flashMessage('Nelze vygenerovat heslo, není vyplněný email', 'error'); return FALSE; } }
/** * @return OdeslaniMailu */ protected function createServiceOdeslaniMailu() { $service = new OdeslaniMailu('*****@*****.**', '*****@*****.**', '*****@*****.**'); $service->setDebugMode(TRUE); return $service; }