Compare commits

..

No commits in common. "7d0b766882f9faad89c006496a3569deea8f80e2" and "141043d219d61e767cf20e243ae35efa135412c1" have entirely different histories.

4 changed files with 16 additions and 61 deletions

View File

@ -1,8 +1,5 @@
---
Name: a2nt-cms-niceties-base-extensions
After:
- login-forms
- '#coresecurity'
---
# Basic extensions
SilverStripe\Admin\LeftAndMain:
@ -54,10 +51,6 @@ SilverStripe\Core\Injector\Injector:
class: A2nt\CMSNiceties\Forms\GridField\GridFieldConfig_RelationEditor
SilverStripe\Forms\FormRequestHandler:
class: A2nt\CMSNiceties\Ajax\AjaxFormRequestHandler
SilverStripe\Security\Security:
properties:
Authenticators:
default: '%$A2nt\CMSNiceties\Forms\Authenticator'
SilverStripe\UserForms\Form\UserForm:
extensions:

View File

@ -10,7 +10,6 @@ use SilverStripe\Core\Config\Config;
use SilverStripe\Core\Extension;
use SilverStripe\Core\Injector\Injector;
use SilverStripe\Forms\Form;
use SilverStripe\Forms\HiddenField;
use SilverStripe\ORM\FieldType\DBHTMLText;
use SilverStripe\ORM\ValidationResult;
use SilverStripe\Security\MemberAuthenticator\MemberAuthenticator;
@ -71,17 +70,23 @@ class AjaxControllerEx extends Extension
public function LoginFormEx()
{
$ctrl = Security::singleton();
$ctrl = $this->owner;
/* @var Form $form */
$form = $ctrl->getLoginForms()['default'][0];
if (method_exists($ctrl, 'LoginForm')) {
$form = $ctrl->LoginForm();
} else {
$form = $ctrl->getLoginForms()['default'][0];
}
self::_processFields($form);
//$form->addExtraClass('ajax-form');
$back = $this->owner->Link();
$form->setFormAction('/Security/login/default/LoginForm/?BackURL='.$back);
$form->Fields()
->push(HiddenField::create('BackURL')->setValue($back));
if (Director::isLive() && $form->get_protector()) {
$form->enableSpamProtection();
}
$form->setLegend(
_t(
@ -202,9 +207,11 @@ class AjaxControllerEx extends Extension
$url = $req->getURL();
$url = $url === 'home' ? '/' : $url;
$ajax_res = $ctrl->config()->get('ajax_resources');
$graphql_res = $ctrl->config()->get('graphql_resources');
$resources = array_merge(
$ctrl->config()->get('graphql_resources'),
$ctrl->config()->get('ajax_resources')
$ajax_res ? $ajax_res : [],
$graphql_res ? $graphql_res : []
);
$body = $response->getBody();

View File

@ -1,13 +0,0 @@
<?php
namespace A2nt\CMSNiceties\Forms;
use SilverStripe\Security\MemberAuthenticator\MemberAuthenticator;
class Authenticator extends MemberAuthenticator
{
public function getLoginHandler($link)
{
return LoginHandler::create($link, $this);
}
}

View File

@ -1,32 +0,0 @@
<?php
namespace A2nt\CMSNiceties\Forms;
use SilverStripe\Control\Director;
use SilverStripe\Control\HTTPRequest;
use SilverStripe\Security\MemberAuthenticator\LoginHandler as MemberAuthenticatorLoginHandler;
use SilverStripe\Security\MemberAuthenticator\MemberLoginForm;
class LoginHandler extends MemberAuthenticatorLoginHandler
{
private static $allowed_actions = [
'LoginForm',
];
public function doLogin($data, MemberLoginForm $form, HTTPRequest $request)
{
return parent::doLogin($data, $form, $request);
}
public function loginForm()
{
$form = parent::loginForm();
if (self::config()->get('enable_captcha') && Director::isLive() && $form->get_protector()) {
$form->enableSpamProtection();
}
$form->addExtraClass('legacy');
return $form;
}
}