Added the possibility to register

This commit is contained in:
Polonkai Gergely
2012-07-07 11:13:13 +02:00
parent 1d82e93176
commit a454dc7483
14 changed files with 270 additions and 5 deletions

View File

@@ -4,6 +4,10 @@ namespace KekRozsak\SecurityBundle\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Symfony\Component\Security\Core\SecurityContext;
use Symfony\Component\HttpFoundation\Request;
use KekRozsak\FrontBundle\Entity\User;
use KekRozsak\FrontBundle\Form\Type\UserType;
class DefaultController extends Controller
{
@@ -27,4 +31,37 @@ class DefaultController extends Controller
'error' => $error,
));
}
public function registrationAction(Request $request)
{
$user = new User();
$form = $this->createForm(new UserType(true), $user);
if ($request->getMethod() == 'POST')
{
$form->bindRequest($request);
if ($form->isValid(array('registration')))
{
$user->setPassword($this->get('security.encoder_factory')->getEncoder($user)->encodePassword($user->getPassword(), $user->getSalt()));
$roleRepo = $this->getDoctrine()->getRepository('KekRozsakFrontBundle:Role');
$regRole = $roleRepo->findOneByName('ROLE_REGISTERED');
$user->addRole($regRole);
$user->setRegisteredAt(new \DateTime('now'));
$em = $this->getDoctrine()->getEntityManager();
$em->persist($user);
$em->flush();
return $this->redirect($this->generateUrl('KekRozsakSecurityBundle_reg_success'));
}
}
return $this->render('KekRozsakSecurityBundle:Default:registration.html.twig', array(
'form' => $form->createView(),
));
}
public function registrationSuccessAction()
{
return $this->render('KekRozsakSecurityBundle:Default:registration_success.html.twig', array());
}
}

View File

@@ -8,3 +8,13 @@ KekRozsakSecurityBundle_login_check:
KekRozsakSecurityBundle_logout:
pattern: /logout
KekRozsakSecurityBundle_registration:
pattern: /jelentkezes
defaults:
_controller: KekRozsakSecurityBundle:Default:registration
KekRozsakSecurityBundle_reg_success:
pattern: /most-varj
defaults:
_controller: KekRozsakSecurityBundle:Default:registrationSuccess

View File

@@ -0,0 +1,15 @@
{# vim: ft=htmljinja: #}
{% extends '::main_template.html.twig' %}
{% form_theme form 'KekRozsakFrontBundle:Form:user_form.html.twig' %}
{% block title %} - Regisztráció {% endblock %}
{% block content %}
<h3>Jelentkezés</h3>
<p>Az alábbi űrlap kitöltésével jelentkezhetsz a Kék Rózsa okkultista kör tagjai közé. Kérünk, hogy jelentkezés előtt figyelmesen olvasd el a <a href="{{ path('KekRozsakFrontBundle_article', { articleSlug: 'rolunk' }) }}">Rólunk</a> menüpont szövegét, különös tekintettel a Házirendre.</p>
<p>A jelentkezés NEM jár automatikus tagsággal. A Házirend szerint a Vének jogot formálhatnak arra, hogy a jelentkezésedet elutasítsák, vagy próbáknak vessenek alá, mielőtt a tagok közé fogadnak.</p>
<p><strong>FONTOS!</strong> Aki a régi fórumon írt bármilyen bejegyzést, az már regisztrálva van ezen az oldalon is! Ez esetben kérlek lépjetek kapcsolatba velem <a href="http://www.facebook.com/Polesz" target="_blank">Facebookon</a> vagy e-mailben a <a href="jelentkezes@blueroses.hu">jelentkezes@blueroses.hu</a> címen!</p>
<form method="post" action="{{ path('KekRozsakSecurityBundle_registration') }}">
<table>
{{ form_widget(form) }}
</table>
<button type="submit">Jelentkezés</button>
{% endblock content %}

View File

@@ -0,0 +1,5 @@
{% extends '::main_template.html.twig' %}
{% block title %} - Sikeres regisztráció{% endblock %}
{% block content %}
A regisztrációd sikeres volt.
{% endblock %}