Source of file LogoutController.php
Size: 1,154 Bytes - Last Modified: 2021-12-23T10:38:39+00:00
/var/www/docs.ssmods.com/process/src/src/Controller/LogoutController.php
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 | <?php /** * Created by PhpStorm. * User: gordon * Date: 28/4/2561 * Time: 0:22 น. */ namespace Suilven\LogoutHelper\Controller; use SilverStripe\Control\Controller; use SilverStripe\Core\Extension; use SilverStripe\Core\Injector\Injector; use SilverStripe\Security\IdentityStore; use SilverStripe\Security\Member; use SilverStripe\Security\Security; class LogoutController extends Controller { private static $allowed_actions = ['index']; /** * Accessible via /logout * * @param $request */ public function index($request) { $member = Security::getCurrentUser(); $this->doLogOut($member); } /** * @param Member $member * @return HTTPResponse */ public function doLogOut($member) { $this->extend('beforeLogout'); if ($member instanceof Member) { Injector::inst()->get(IdentityStore::class)->logOut($this->getRequest()); } if (Security::getCurrentUser()) { $this->extend('failedLogout'); } else { $this->extend('afterLogout'); } return $this->redirect('/'); } } |