From 54ab65d32f5fe458dc491b19d5ae631b86bcac7a Mon Sep 17 00:00:00 2001 From: michael pereira Date: Mon, 27 Feb 2012 02:16:05 +0100 Subject: certificate auth --- .../modules/fbgui/controllers/AuthController.php | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/application/modules/fbgui/controllers/AuthController.php b/application/modules/fbgui/controllers/AuthController.php index 5757b51..c9f750a 100644 --- a/application/modules/fbgui/controllers/AuthController.php +++ b/application/modules/fbgui/controllers/AuthController.php @@ -27,7 +27,21 @@ class Fbgui_AuthController extends Zend_Controller_Action { $this->_redirect('/fbgui/'); } elseif($_SERVER['SSL_CLIENT_VERIFY'] === 'SUCCESS'){ - print_a($_SERVER); + $serial = $_SERVER['SSL_CLIENT_M_SERIAL']; + $issuerdn = $_SERVER['SSL_CLIENT_I_DN']; + $certificatemapper = new Application_Model_CertificateMapper(); + $certificate = $certificatemapper->findBy(array('serial' => $serial, 'issuerdn' => $issuerdn)); + if(isset($certificate)){ + if (!$certificate->getRevoked() && !$certificate->getGuestcert() && ($certificate->getExpiredate() - time()) > 0){ + $person = $this->personmapper->find($certificate->getPersonID()); + $date = new DateTime(); + $person->setLogindate($date->getTimestamp()); + $this->personmapper->save($person); + $this->_helper->redirector('selectmembership', 'person'); + return; + } + } + $this->_redirect('/fbgui/'); } else { @@ -66,7 +80,7 @@ class Fbgui_AuthController extends Zend_Controller_Action { } } } -// $this->view->loginForm = $loginForm; + $this->view->loginForm = $loginForm; } } -- cgit v1.2.3-55-g7522