Skip to content

Commit

Permalink
updating syntax to 2.2 standard
Browse files Browse the repository at this point in the history
  • Loading branch information
Christian Blanquera committed Jan 15, 2019
1 parent 34cba32 commit 2612801
Show file tree
Hide file tree
Showing 3 changed files with 79 additions and 65 deletions.
68 changes: 4 additions & 64 deletions .cradle.php
Original file line number Diff line number Diff line change
@@ -1,69 +1,9 @@
<?php //-->
use Cradle\Curl\CurlHandler;

use Cradle\Http\Request;
use Cradle\Http\Response;

/**
* Loads captcha token in stage
* This file is part of a package designed for the CradlePHP Project.
*
* @param *Request $request
* @param *Response $response
* Copyright and license information can be found at LICENSE.txt
* distributed with this package.
*/
$cradle->on('captcha-load', function (Request $request, Response $response) {
$config = $this->package('global')->service('captcha-main');

//if no config
if (!$config
|| !isset($config['token'], $config['secret'])
|| $config['token'] === '<GOOGLE CAPTCHA TOKEN>'
|| $config['secret'] === '<GOOGLE CAPTCHA SECRET>'
)
{
return;
}

//render the key
$key = $config['token'];
$response->setResults('captcha', $key);
});

/**
* Validates Captcha
*
* @param *Request $request
* @param *Response $response
*/
$cradle->on('captcha-validate', function (Request $request, Response $response) {
$actual = $request->getStage('g-recaptcha-response');
$config = $this->package('global')->service('captcha-main');

//if no config
if (!$config
|| !isset($config['token'], $config['secret'])
|| $config['token'] === '<GOOGLE CAPTCHA TOKEN>'
|| $config['secret'] === '<GOOGLE CAPTCHA SECRET>'
)
{
//let it pass
return;
}

$result = CurlHandler::i()
->setUrl('https://www.google.com/recaptcha/api/siteverify')
->verifyHost(false)
->verifyPeer(false)
->setPostFields(http_build_query(array(
'secret' => $config['secret'],
'response' => $actual
)))
->getJsonResponse();

if (!isset($result['success']) || !$result['success']) {
//prepare to error
$message = $this->package('global')->translate('Captcha Failed');
$response->setError(true, $message);
}

//it passed
});
require_once __DIR__ . '/src/events.php';
2 changes: 1 addition & 1 deletion composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,6 @@
"satooshi/php-coveralls": "2.0.0"
},
"require": {
"cradlephp/framework": "2.*"
"cradlephp/framework": "~2.2.0"
}
}
74 changes: 74 additions & 0 deletions src/events.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
<?php //-->
/**
* This file is part of a package designed for the CradlePHP Project.
*
* Copyright and license information can be found at LICENSE.txt
* distributed with this package.
*/

use Cradle\Curl\CurlHandler;
use Cradle\Http\Request\RequestInterface;
use Cradle\Http\Response\ResponseInterface;
/**
* Loads captcha token in stage
*
* @param *Request $request
* @param *Response $response
*/
$cradle->on('captcha-load', function (RequestInterface $request, ResponseInterface $response) {
$config = $this->package('global')->service('captcha-main');

//if no config
if (!$config
|| !isset($config['token'], $config['secret'])
|| $config['token'] === '<GOOGLE CAPTCHA TOKEN>'
|| $config['secret'] === '<GOOGLE CAPTCHA SECRET>'
)
{
return;
}

//render the key
$key = $config['token'];
$response->setResults('captcha', $key);
});

/**
* Validates Captcha
*
* @param *Request $request
* @param *Response $response
*/
$cradle->on('captcha-validate', function (RequestInterface $request, ResponseInterface $response) {
$actual = $request->getStage('g-recaptcha-response');
$config = $this->package('global')->service('captcha-main');

//if no config
if (!$config
|| !isset($config['token'], $config['secret'])
|| $config['token'] === '<GOOGLE CAPTCHA TOKEN>'
|| $config['secret'] === '<GOOGLE CAPTCHA SECRET>'
)
{
//let it pass
return;
}

$result = CurlHandler::i()
->setUrl('https://www.google.com/recaptcha/api/siteverify')
->verifyHost(false)
->verifyPeer(false)
->setPostFields(http_build_query(array(
'secret' => $config['secret'],
'response' => $actual
)))
->getJsonResponse();

if (!isset($result['success']) || !$result['success']) {
//prepare to error
$message = $this->package('global')->translate('Captcha Failed');
$response->setError(true, $message);
}

//it passed
});

0 comments on commit 2612801

Please sign in to comment.