Style fixes.
This commit is contained in:
parent
a7a59b690a
commit
be4950ff88
43 changed files with 187 additions and 149 deletions
|
|
@ -59,7 +59,7 @@ class ApiController extends ControllerBase
|
||||||
*/
|
*/
|
||||||
public function activationLinkAction($id)
|
public function activationLinkAction($id)
|
||||||
{
|
{
|
||||||
$link = UserActivation::findFirst(['activation_key = ?0', 'bind' => [ $id ]]);
|
$link = UserActivation::findFirst(['activation_key = ?0', 'bind' => [$id]]);
|
||||||
|
|
||||||
if ($link) {
|
if ($link) {
|
||||||
if ($link->isValid()) {
|
if ($link->isValid()) {
|
||||||
|
|
|
||||||
|
|
@ -33,8 +33,8 @@ class AuthController extends ControllerBase
|
||||||
} else {
|
} else {
|
||||||
$msg = '<ul>';
|
$msg = '<ul>';
|
||||||
|
|
||||||
foreach($form->getMessages() as $message) {
|
foreach ($form->getMessages() as $message) {
|
||||||
$msg .= '<li><strong>' . $message->getField() . '</strong> '. $message->getMessage() . '</li>';
|
$msg .= '<li><strong>' . $message->getField() . '</strong> ' . $message->getMessage() . '</li>';
|
||||||
}
|
}
|
||||||
|
|
||||||
$msg .= '</ul>';
|
$msg .= '</ul>';
|
||||||
|
|
@ -47,7 +47,7 @@ class AuthController extends ControllerBase
|
||||||
|
|
||||||
public function oauthAction($provider_name)
|
public function oauthAction($provider_name)
|
||||||
{
|
{
|
||||||
$client = $this->getDI()->get('oauth', [ $provider_name ]);
|
$client = $this->getDI()->get('oauth', [$provider_name]);
|
||||||
|
|
||||||
$code = $this->request->get('code');
|
$code = $this->request->get('code');
|
||||||
$state = $this->request->get('state');
|
$state = $this->request->get('state');
|
||||||
|
|
@ -92,7 +92,7 @@ class AuthController extends ControllerBase
|
||||||
// User is logged in.
|
// User is logged in.
|
||||||
$this->response->redirect('/');
|
$this->response->redirect('/');
|
||||||
}
|
}
|
||||||
} catch(\Exception $e) {
|
} catch (\Exception $e) {
|
||||||
throw $e;
|
throw $e;
|
||||||
$this->flash->message('error', 'Failed to authenticate.');
|
$this->flash->message('error', 'Failed to authenticate.');
|
||||||
if ($this->auth->getUser()) {
|
if ($this->auth->getUser()) {
|
||||||
|
|
@ -118,8 +118,11 @@ class AuthController extends ControllerBase
|
||||||
}
|
}
|
||||||
|
|
||||||
$user = new User();
|
$user = new User();
|
||||||
$user->assign($data->toArray(), null,
|
$user->assign(
|
||||||
[ 'email', 'username', 'firstname', 'lastname' ]);
|
$data->toArray(),
|
||||||
|
null,
|
||||||
|
['email', 'username', 'firstname', 'lastname']
|
||||||
|
);
|
||||||
|
|
||||||
$form = new RegistrationForm($user);
|
$form = new RegistrationForm($user);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -55,24 +55,23 @@ class CallbackController extends ControllerBase
|
||||||
|
|
||||||
return $this->response->redirect(array(
|
return $this->response->redirect(array(
|
||||||
'for' => 'cb-created',
|
'for' => 'cb-created',
|
||||||
'id' => $callback->getPublicId()));
|
'id' => $callback->getPublicId()
|
||||||
|
));
|
||||||
} else {
|
} else {
|
||||||
foreach($callback->getMessages() as $msg) {
|
foreach ($callback->getMessages() as $msg) {
|
||||||
$this->flash->error($msg);
|
$this->flash->error($msg);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
$msg = '<ul>';
|
$msg = '<ul>';
|
||||||
|
|
||||||
foreach($form->getMessages() as $message) {
|
foreach ($form->getMessages() as $message) {
|
||||||
$msg .= '<li><strong>' . $message->getField() . '</strong>: '. $message->getMessage() . '</li>';
|
$msg .= '<li><strong>' . $message->getField() . '</strong>: ' . $message->getMessage() . '</li>';
|
||||||
}
|
}
|
||||||
|
|
||||||
$msg .= '</ul>';
|
$msg .= '</ul>';
|
||||||
$this->flash->message('error', $msg);
|
$this->flash->message('error', $msg);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
$this->view->form = $form;
|
$this->view->form = $form;
|
||||||
|
|
@ -85,7 +84,6 @@ class CallbackController extends ControllerBase
|
||||||
{
|
{
|
||||||
$row = CallbackModel::get($id);
|
$row = CallbackModel::get($id);
|
||||||
if (!$row) {
|
if (!$row) {
|
||||||
|
|
||||||
}
|
}
|
||||||
$this->view->id = $id;
|
$this->view->id = $id;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -15,4 +15,3 @@ class IndexController extends ControllerBase
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -44,8 +44,11 @@ class UserController extends ControllerBase
|
||||||
]);
|
]);
|
||||||
|
|
||||||
// Send the email.
|
// Send the email.
|
||||||
$this->di->getMail()->send('Httpcb password activation',
|
$this->di->getMail()->send(
|
||||||
$user->getEmail(), $content);
|
'Httpcb password activation',
|
||||||
|
$user->getEmail(),
|
||||||
|
$content
|
||||||
|
);
|
||||||
|
|
||||||
$msg = "For security reasons. Before a password can be created "
|
$msg = "For security reasons. Before a password can be created "
|
||||||
. "a email has been sent to <strong>{$user->getEmail()}</strong> with "
|
. "a email has been sent to <strong>{$user->getEmail()}</strong> with "
|
||||||
|
|
@ -137,7 +140,7 @@ class UserController extends ControllerBase
|
||||||
|
|
||||||
$msg = '<p>You are about to unlink the last OAuth provider.'
|
$msg = '<p>You are about to unlink the last OAuth provider.'
|
||||||
. ' Your <strong>only</strong> login option will be <strong>password</strong> if you do this.</p>'
|
. ' Your <strong>only</strong> login option will be <strong>password</strong> if you do this.</p>'
|
||||||
. '<p>Are you sure? <a class="alert-link" href="' . $url .'">Yes</a></p>';
|
. '<p>Are you sure? <a class="alert-link" href="' . $url . '">Yes</a></p>';
|
||||||
|
|
||||||
$this->flash->message('warning', $msg);
|
$this->flash->message('warning', $msg);
|
||||||
$this->response->redirect('/settings');
|
$this->response->redirect('/settings');
|
||||||
|
|
|
||||||
|
|
@ -17,7 +17,7 @@ class UserController extends \Phalcon\Mvc\Controller
|
||||||
*/
|
*/
|
||||||
public function indexAction($page = 1)
|
public function indexAction($page = 1)
|
||||||
{
|
{
|
||||||
$paginator = User::getPaginationList($page,15);
|
$paginator = User::getPaginationList($page, 15);
|
||||||
|
|
||||||
$this->view->pagination_url = '/admin/user/list/';
|
$this->view->pagination_url = '/admin/user/list/';
|
||||||
$this->view->page = $paginator->paginate();
|
$this->view->page = $paginator->paginate();
|
||||||
|
|
|
||||||
|
|
@ -7,12 +7,14 @@ use Phalcon\Forms\Form;
|
||||||
/**
|
/**
|
||||||
* Element types
|
* Element types
|
||||||
*/
|
*/
|
||||||
|
|
||||||
use Phalcon\Forms\Element\Text;
|
use Phalcon\Forms\Element\Text;
|
||||||
use Phalcon\Forms\Element\Submit;
|
use Phalcon\Forms\Element\Submit;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Validators
|
* Validators
|
||||||
*/
|
*/
|
||||||
|
|
||||||
use Phalcon\Validation\Validator\StringLength;
|
use Phalcon\Validation\Validator\StringLength;
|
||||||
|
|
||||||
class CallbackCreate extends Form
|
class CallbackCreate extends Form
|
||||||
|
|
|
||||||
|
|
@ -7,6 +7,7 @@ use Phalcon\Forms\Form;
|
||||||
/**
|
/**
|
||||||
* Element types
|
* Element types
|
||||||
*/
|
*/
|
||||||
|
|
||||||
use Phalcon\Forms\Element\Text;
|
use Phalcon\Forms\Element\Text;
|
||||||
use Phalcon\Forms\Element\Password;
|
use Phalcon\Forms\Element\Password;
|
||||||
use Phalcon\Forms\Element\Submit;
|
use Phalcon\Forms\Element\Submit;
|
||||||
|
|
@ -14,6 +15,7 @@ use Phalcon\Forms\Element\Submit;
|
||||||
/**
|
/**
|
||||||
* Validators
|
* Validators
|
||||||
*/
|
*/
|
||||||
|
|
||||||
use Phalcon\Validation\Validator\PresenceOf;
|
use Phalcon\Validation\Validator\PresenceOf;
|
||||||
use Phalcon\Validation\Validator\Email as EmailValidator;
|
use Phalcon\Validation\Validator\Email as EmailValidator;
|
||||||
use Phalcon\Validation\Validator\StringLength;
|
use Phalcon\Validation\Validator\StringLength;
|
||||||
|
|
|
||||||
|
|
@ -5,16 +5,19 @@ namespace App\Form;
|
||||||
/**
|
/**
|
||||||
* Models
|
* Models
|
||||||
*/
|
*/
|
||||||
|
|
||||||
use App\Model\Data\User;
|
use App\Model\Data\User;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Phalcon Form
|
* Phalcon Form
|
||||||
*/
|
*/
|
||||||
|
|
||||||
use Httpcb\Form as FormBase;
|
use Httpcb\Form as FormBase;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Element types
|
* Element types
|
||||||
*/
|
*/
|
||||||
|
|
||||||
use Phalcon\Forms\Element\Text,
|
use Phalcon\Forms\Element\Text,
|
||||||
Phalcon\Forms\Element\Password,
|
Phalcon\Forms\Element\Password,
|
||||||
Phalcon\Forms\Element\Submit;
|
Phalcon\Forms\Element\Submit;
|
||||||
|
|
@ -22,6 +25,7 @@ use Phalcon\Forms\Element\Text,
|
||||||
/**
|
/**
|
||||||
* Validators
|
* Validators
|
||||||
*/
|
*/
|
||||||
|
|
||||||
use Phalcon\Validation,
|
use Phalcon\Validation,
|
||||||
Phalcon\Validation\Validator\Callback as CallbackValidator,
|
Phalcon\Validation\Validator\Callback as CallbackValidator,
|
||||||
Phalcon\Validation\Validator\Alnum as AlnumValidator,
|
Phalcon\Validation\Validator\Alnum as AlnumValidator,
|
||||||
|
|
@ -54,7 +58,9 @@ class Registration extends FormBase
|
||||||
'messageMinimum' => 'Username must be at least :min characters long.',
|
'messageMinimum' => 'Username must be at least :min characters long.',
|
||||||
]),
|
]),
|
||||||
new CallbackValidator([
|
new CallbackValidator([
|
||||||
'callback' => function($data) { return User::findFirstByUsername($data['username']) === false; },
|
'callback' => function ($data) {
|
||||||
|
return User::findFirstByUsername($data['username']) === false;
|
||||||
|
},
|
||||||
'message' => 'The username already exists.',
|
'message' => 'The username already exists.',
|
||||||
'attribute' => 'username',
|
'attribute' => 'username',
|
||||||
])
|
])
|
||||||
|
|
@ -63,7 +69,7 @@ class Registration extends FormBase
|
||||||
$this->add($username);
|
$this->add($username);
|
||||||
|
|
||||||
// Names
|
// Names
|
||||||
foreach([ 'first-name' => 'Firstname', 'last-name' => 'Lastname' ] as $id => $label) {
|
foreach (['first-name' => 'Firstname', 'last-name' => 'Lastname'] as $id => $label) {
|
||||||
|
|
||||||
$name = new Text($id, array(
|
$name = new Text($id, array(
|
||||||
'class' => 'form-control',
|
'class' => 'form-control',
|
||||||
|
|
@ -87,7 +93,9 @@ class Registration extends FormBase
|
||||||
|
|
||||||
$email->addValidators([
|
$email->addValidators([
|
||||||
new CallbackValidator([
|
new CallbackValidator([
|
||||||
'callback' => function($data) { return User::findFirstByEmail($data['email']) === false; },
|
'callback' => function ($data) {
|
||||||
|
return User::findFirstByEmail($data['email']) === false;
|
||||||
|
},
|
||||||
'message' => 'This email already exist.',
|
'message' => 'This email already exist.',
|
||||||
])
|
])
|
||||||
]);
|
]);
|
||||||
|
|
|
||||||
|
|
@ -5,16 +5,19 @@ namespace App\Form;
|
||||||
/**
|
/**
|
||||||
* Models
|
* Models
|
||||||
*/
|
*/
|
||||||
|
|
||||||
use App\Model\Data\User as UserModel;
|
use App\Model\Data\User as UserModel;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Form
|
* Form
|
||||||
*/
|
*/
|
||||||
|
|
||||||
use Httpcb\Form as FormBase;
|
use Httpcb\Form as FormBase;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Element types
|
* Element types
|
||||||
*/
|
*/
|
||||||
|
|
||||||
use Phalcon\Forms\Element\Text,
|
use Phalcon\Forms\Element\Text,
|
||||||
Phalcon\Forms\Element\Password,
|
Phalcon\Forms\Element\Password,
|
||||||
Phalcon\Forms\Element\Submit;
|
Phalcon\Forms\Element\Submit;
|
||||||
|
|
@ -22,6 +25,7 @@ use Phalcon\Forms\Element\Text,
|
||||||
/**
|
/**
|
||||||
* Validators
|
* Validators
|
||||||
*/
|
*/
|
||||||
|
|
||||||
use Phalcon\Validation\Validator\Callback as CallbackValidator,
|
use Phalcon\Validation\Validator\Callback as CallbackValidator,
|
||||||
Phalcon\Validation\Validator\Uniqueness as UniquenessValidator,
|
Phalcon\Validation\Validator\Uniqueness as UniquenessValidator,
|
||||||
Phalcon\Validation\Validator\Alnum as AlnumValidator,
|
Phalcon\Validation\Validator\Alnum as AlnumValidator,
|
||||||
|
|
@ -86,7 +90,7 @@ class UserSettings extends FormBase
|
||||||
);
|
);
|
||||||
|
|
||||||
if ($entity && strlen($entity->getUsername())) {
|
if ($entity && strlen($entity->getUsername())) {
|
||||||
$validator_options['except'] = [ $entity->getUsername() ];
|
$validator_options['except'] = [$entity->getUsername()];
|
||||||
}
|
}
|
||||||
|
|
||||||
$username->addValidators([
|
$username->addValidators([
|
||||||
|
|
@ -136,7 +140,7 @@ class UserSettings extends FormBase
|
||||||
];
|
];
|
||||||
|
|
||||||
if ($entity && strlen($entity->getEmail())) {
|
if ($entity && strlen($entity->getEmail())) {
|
||||||
$validator_options['except'] = [ $entity->getEmail() ];
|
$validator_options['except'] = [$entity->getEmail()];
|
||||||
}
|
}
|
||||||
|
|
||||||
$email->addValidators([
|
$email->addValidators([
|
||||||
|
|
@ -191,7 +195,7 @@ class UserSettings extends FormBase
|
||||||
|
|
||||||
if ($this->_admin === false && $entity && strlen($entity->getPassword()) > 0) {
|
if ($this->_admin === false && $entity && strlen($entity->getPassword()) > 0) {
|
||||||
$validation->add('passwordCurrent', new CallbackValidator([
|
$validation->add('passwordCurrent', new CallbackValidator([
|
||||||
'callback' => function($data) {
|
'callback' => function ($data) {
|
||||||
$new_pw = $data['passwordNew'];
|
$new_pw = $data['passwordNew'];
|
||||||
if (strlen($new_pw) > 0) {
|
if (strlen($new_pw) > 0) {
|
||||||
$value = $data['passwordCurrent'];
|
$value = $data['passwordCurrent'];
|
||||||
|
|
|
||||||
|
|
@ -40,7 +40,7 @@ class Acl
|
||||||
$pos = strpos($resource, '/');
|
$pos = strpos($resource, '/');
|
||||||
if ($pos !== false) {
|
if ($pos !== false) {
|
||||||
// Construct the wildcard resource.
|
// Construct the wildcard resource.
|
||||||
$wildcard = substr($resource, 0, $pos+1) . '*';
|
$wildcard = substr($resource, 0, $pos + 1) . '*';
|
||||||
|
|
||||||
// If we have this wildcard resource, check against that instead.
|
// If we have this wildcard resource, check against that instead.
|
||||||
if ($this->hasResource($wildcard)) {
|
if ($this->hasResource($wildcard)) {
|
||||||
|
|
@ -62,7 +62,7 @@ class Acl
|
||||||
public function fromConfig(Config $config)
|
public function fromConfig(Config $config)
|
||||||
{
|
{
|
||||||
// Add roles.
|
// Add roles.
|
||||||
foreach($config->roles as $name => $def) {
|
foreach ($config->roles as $name => $def) {
|
||||||
|
|
||||||
$inherits = null;
|
$inherits = null;
|
||||||
$description = null;
|
$description = null;
|
||||||
|
|
@ -70,7 +70,6 @@ class Acl
|
||||||
if ($def instanceof Config) {
|
if ($def instanceof Config) {
|
||||||
$inherits = $def->get('inherits');
|
$inherits = $def->get('inherits');
|
||||||
$description = $def->get('description');
|
$description = $def->get('description');
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
$role = new Role($name, $description);
|
$role = new Role($name, $description);
|
||||||
|
|
@ -78,32 +77,32 @@ class Acl
|
||||||
}
|
}
|
||||||
|
|
||||||
// Zones
|
// Zones
|
||||||
foreach($config->zones as $name => $resources) {
|
foreach ($config->zones as $name => $resources) {
|
||||||
|
|
||||||
if (!($resources instanceof Config)) {
|
if (!($resources instanceof Config)) {
|
||||||
$resources = new Config([ $resources ]);
|
$resources = new Config([$resources]);
|
||||||
}
|
}
|
||||||
|
|
||||||
foreach($resources as $resource) {
|
foreach ($resources as $resource) {
|
||||||
$this->_adapter->addComponent($resource, 'All');
|
$this->_adapter->addComponent($resource, 'All');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Grant access for roles and resources.
|
// Grant access for roles and resources.
|
||||||
foreach($config->roles as $name => $def) {
|
foreach ($config->roles as $name => $def) {
|
||||||
|
|
||||||
$zones = $def->get('allowed-zones', []);
|
$zones = $def->get('allowed-zones', []);
|
||||||
|
|
||||||
if (is_string($zones)) {
|
if (is_string($zones)) {
|
||||||
$zones = [ $zones ];
|
$zones = [$zones];
|
||||||
}
|
}
|
||||||
|
|
||||||
foreach($zones as $zone) {
|
foreach ($zones as $zone) {
|
||||||
$resources = $config->zones->get($zone);
|
$resources = $config->zones->get($zone);
|
||||||
if (!($resources instanceof Config)) {
|
if (!($resources instanceof Config)) {
|
||||||
$resources = new Config([ $resources ]);
|
$resources = new Config([$resources]);
|
||||||
}
|
}
|
||||||
foreach($resources as $resource) {
|
foreach ($resources as $resource) {
|
||||||
$this->_adapter->allow($name, $resource, 'All');
|
$this->_adapter->allow($name, $resource, 'All');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -63,8 +63,11 @@ class Auth extends Injectable
|
||||||
|
|
||||||
$this->setIdentity($user->getId());
|
$this->setIdentity($user->getId());
|
||||||
|
|
||||||
$this->eventsManager->fire('auth:onLogin', $this,
|
$this->eventsManager->fire(
|
||||||
"OAuth {$data->getProvider()}");
|
'auth:onLogin',
|
||||||
|
$this,
|
||||||
|
"OAuth {$data->getProvider()}"
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
return new Result(Result::SUCCESS);
|
return new Result(Result::SUCCESS);
|
||||||
|
|
|
||||||
|
|
@ -2,12 +2,13 @@
|
||||||
|
|
||||||
namespace Httpcb;
|
namespace Httpcb;
|
||||||
|
|
||||||
class Debug {
|
class Debug
|
||||||
|
{
|
||||||
|
|
||||||
public static function dump($var, $label = null, $echo = true)
|
public static function dump($var, $label = null, $echo = true)
|
||||||
{
|
{
|
||||||
// format the label
|
// format the label
|
||||||
$label = ($label===null) ? '' : rtrim($label) . ' ';
|
$label = ($label === null) ? '' : rtrim($label) . ' ';
|
||||||
// var_dump the variable into a buffer and keep the output
|
// var_dump the variable into a buffer and keep the output
|
||||||
ob_start();
|
ob_start();
|
||||||
var_dump($var);
|
var_dump($var);
|
||||||
|
|
|
||||||
|
|
@ -11,7 +11,7 @@ class Form extends FormBase
|
||||||
{
|
{
|
||||||
$options = [
|
$options = [
|
||||||
'label-class' => 'col-form-label text-end',
|
'label-class' => 'col-form-label text-end',
|
||||||
'class' => [ 'col-sm-10' ],
|
'class' => ['col-sm-10'],
|
||||||
'message' => ''
|
'message' => ''
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|
@ -31,7 +31,7 @@ class Form extends FormBase
|
||||||
if ($len === 'full') {
|
if ($len === 'full') {
|
||||||
$options['class'] = [];
|
$options['class'] = [];
|
||||||
} else {
|
} else {
|
||||||
$options['class'] = [ 'col-sm-' . $len ];
|
$options['class'] = ['col-sm-' . $len];
|
||||||
}
|
}
|
||||||
|
|
||||||
unset($opt['length']);
|
unset($opt['length']);
|
||||||
|
|
@ -53,7 +53,10 @@ class Form extends FormBase
|
||||||
|
|
||||||
$xhtml .= sprintf(
|
$xhtml .= sprintf(
|
||||||
'<label class="%s" for="%s">%s</label>',
|
'<label class="%s" for="%s">%s</label>',
|
||||||
$opt['label-class'], $ele->getName(), $ele->getLabel());
|
$opt['label-class'],
|
||||||
|
$ele->getName(),
|
||||||
|
$ele->getLabel()
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
$xhtml .= '<div class="' . implode(' ', $opt['class']) . '">'
|
$xhtml .= '<div class="' . implode(' ', $opt['class']) . '">'
|
||||||
|
|
|
||||||
|
|
@ -90,7 +90,7 @@ class Menu extends Tag
|
||||||
{
|
{
|
||||||
$xhtml = '';
|
$xhtml = '';
|
||||||
|
|
||||||
foreach($nodes as $node) {
|
foreach ($nodes as $node) {
|
||||||
$xhtml .= $this->_renderNode($node, $depth, $max_depth);
|
$xhtml .= $this->_renderNode($node, $depth, $max_depth);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -126,15 +126,22 @@ class Menu extends Tag
|
||||||
return $xhtml;
|
return $xhtml;
|
||||||
}
|
}
|
||||||
|
|
||||||
$xhtml = self::tagHtml('li', $node->isActive()
|
$xhtml = self::tagHtml(
|
||||||
|
'li',
|
||||||
|
$node->isActive()
|
||||||
? array('class' => $this->_activeClass) : null,
|
? array('class' => $this->_activeClass) : null,
|
||||||
false, false, true);
|
false,
|
||||||
|
false,
|
||||||
|
true
|
||||||
|
);
|
||||||
|
|
||||||
// Generate the link.
|
// Generate the link.
|
||||||
$xhtml .= self::linkTo($node->getHref(), $node->getCaption());
|
$xhtml .= self::linkTo($node->getHref(), $node->getCaption());
|
||||||
|
|
||||||
if ($node->isActive() && $node->hasChildren()
|
if (
|
||||||
&& ($max_depth === null || $depth < $max_depth)) {
|
$node->isActive() && $node->hasChildren()
|
||||||
|
&& ($max_depth === null || $depth < $max_depth)
|
||||||
|
) {
|
||||||
|
|
||||||
$xhtml .= $this->_renderMenu($node->getChildren(), $depth + 1, $max_depth);
|
$xhtml .= $this->_renderMenu($node->getChildren(), $depth + 1, $max_depth);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -44,8 +44,8 @@ class RandomId extends Behavior implements BehaviorInterface
|
||||||
*/
|
*/
|
||||||
public function notify($type, \Phalcon\Mvc\ModelInterface $model)
|
public function notify($type, \Phalcon\Mvc\ModelInterface $model)
|
||||||
{
|
{
|
||||||
switch($type) {
|
switch ($type) {
|
||||||
case 'beforeValidationOnCreate' :
|
case 'beforeValidationOnCreate':
|
||||||
$this->generateId($model);
|
$this->generateId($model);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
@ -69,7 +69,7 @@ class RandomId extends Behavior implements BehaviorInterface
|
||||||
if ($model->$field === null) {
|
if ($model->$field === null) {
|
||||||
|
|
||||||
$random = new \Phalcon\Security\Random();
|
$random = new \Phalcon\Security\Random();
|
||||||
for($i = 0; $i < 3; $i++) {
|
for ($i = 0; $i < 3; $i++) {
|
||||||
$id = substr($random->base64Safe(), 0, $len);
|
$id = substr($random->base64Safe(), 0, $len);
|
||||||
|
|
||||||
$count = $model->count(array(
|
$count = $model->count(array(
|
||||||
|
|
|
||||||
|
|
@ -11,7 +11,7 @@ class Navigation extends Navigation\Container
|
||||||
*/
|
*/
|
||||||
public function __construct($config)
|
public function __construct($config)
|
||||||
{
|
{
|
||||||
foreach($config as $node) {
|
foreach ($config as $node) {
|
||||||
$this->addChild($node);
|
$this->addChild($node);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -38,7 +38,7 @@ class Container
|
||||||
|
|
||||||
$node = new Node();
|
$node = new Node();
|
||||||
|
|
||||||
foreach($child as $k => $v) {
|
foreach ($child as $k => $v) {
|
||||||
|
|
||||||
if ($k == 'children') {
|
if ($k == 'children') {
|
||||||
continue;
|
continue;
|
||||||
|
|
@ -49,7 +49,7 @@ class Container
|
||||||
|
|
||||||
if (isset($child['children'])) {
|
if (isset($child['children'])) {
|
||||||
|
|
||||||
foreach($child['children'] as $c_data) {
|
foreach ($child['children'] as $c_data) {
|
||||||
$node->addChild($c_data);
|
$node->addChild($c_data);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -75,10 +75,9 @@ class Container
|
||||||
*/
|
*/
|
||||||
public function addChildren($children)
|
public function addChildren($children)
|
||||||
{
|
{
|
||||||
foreach($children as $child) {
|
foreach ($children as $child) {
|
||||||
$this->addChild($child);
|
$this->addChild($child);
|
||||||
}
|
}
|
||||||
return $this;
|
return $this;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -225,7 +225,7 @@ class Node extends Container
|
||||||
}
|
}
|
||||||
|
|
||||||
// first. Check children.
|
// first. Check children.
|
||||||
foreach($this->getChildren() as $child) {
|
foreach ($this->getChildren() as $child) {
|
||||||
|
|
||||||
if ($child->isActive() == true) {
|
if ($child->isActive() == true) {
|
||||||
$this->setActive(true);
|
$this->setActive(true);
|
||||||
|
|
|
||||||
|
|
@ -61,7 +61,7 @@ class League implements AdapterInterface
|
||||||
try {
|
try {
|
||||||
$reflection = new \ReflectionClass($this->_provider);
|
$reflection = new \ReflectionClass($this->_provider);
|
||||||
return $reflection->getShortName();
|
return $reflection->getShortName();
|
||||||
} catch(\ReflectionException $ex) {
|
} catch (\ReflectionException $ex) {
|
||||||
return '';
|
return '';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -44,13 +44,12 @@ class Services extends DiDefault
|
||||||
$reflection = new \ReflectionObject($this);
|
$reflection = new \ReflectionObject($this);
|
||||||
$methods = $reflection->getMethods(\ReflectionMethod::IS_PROTECTED);
|
$methods = $reflection->getMethods(\ReflectionMethod::IS_PROTECTED);
|
||||||
|
|
||||||
foreach($methods as $method) {
|
foreach ($methods as $method) {
|
||||||
|
|
||||||
if (substr($method->getName(),0, 11) == '_initShared') {
|
if (substr($method->getName(), 0, 11) == '_initShared') {
|
||||||
$service = lcfirst(substr($method->getName(), 11));
|
$service = lcfirst(substr($method->getName(), 11));
|
||||||
$this->setShared($service, $method->getClosure($this));
|
$this->setShared($service, $method->getClosure($this));
|
||||||
}
|
} else if (substr($method->getName(), 0, 5) == '_init') {
|
||||||
else if (substr($method->getName(),0, 5) == '_init') {
|
|
||||||
$service = lcfirst(substr($method->getName(), 5));
|
$service = lcfirst(substr($method->getName(), 5));
|
||||||
$this->set($service, $method->getClosure($this));
|
$this->set($service, $method->getClosure($this));
|
||||||
}
|
}
|
||||||
|
|
@ -84,7 +83,7 @@ class Services extends DiDefault
|
||||||
try {
|
try {
|
||||||
$tmp = new Config($basePath . $file);
|
$tmp = new Config($basePath . $file);
|
||||||
$config->merge($tmp);
|
$config->merge($tmp);
|
||||||
} catch(\Phalcon\Config\Exception $e) {
|
} catch (\Phalcon\Config\Exception $e) {
|
||||||
// Sometime went wrong. Log here?
|
// Sometime went wrong. Log here?
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -118,7 +117,7 @@ class Services extends DiDefault
|
||||||
|
|
||||||
$eventsManager = new \Phalcon\Events\Manager();
|
$eventsManager = new \Phalcon\Events\Manager();
|
||||||
|
|
||||||
$eventsManager->attach("dispatch", function($event, $dispatcher) {
|
$eventsManager->attach("dispatch", function ($event, $dispatcher) {
|
||||||
$actionName = lcfirst(\Phalcon\Text::camelize($dispatcher->getActionName(), '-_'));
|
$actionName = lcfirst(\Phalcon\Text::camelize($dispatcher->getActionName(), '-_'));
|
||||||
$dispatcher->setActionName($actionName);
|
$dispatcher->setActionName($actionName);
|
||||||
});
|
});
|
||||||
|
|
@ -228,7 +227,7 @@ class Services extends DiDefault
|
||||||
|
|
||||||
$view = new View();
|
$view = new View();
|
||||||
|
|
||||||
$view->setViewsDir([ $config->application->viewsDir ]);
|
$view->setViewsDir([$config->application->viewsDir]);
|
||||||
$view->setLayoutsDir('_layouts/');
|
$view->setLayoutsDir('_layouts/');
|
||||||
$view->setPartialsDir('_partials/');
|
$view->setPartialsDir('_partials/');
|
||||||
|
|
||||||
|
|
@ -322,7 +321,7 @@ class Services extends DiDefault
|
||||||
$router = new Router(false);
|
$router = new Router(false);
|
||||||
$router->removeExtraSlashes($config->get('removeExtraSlashes', false));
|
$router->removeExtraSlashes($config->get('removeExtraSlashes', false));
|
||||||
|
|
||||||
foreach($config->routes as $name => $def) {
|
foreach ($config->routes as $name => $def) {
|
||||||
|
|
||||||
if (!($def instanceof \Phalcon\Config)) {
|
if (!($def instanceof \Phalcon\Config)) {
|
||||||
continue;
|
continue;
|
||||||
|
|
|
||||||
|
|
@ -21,7 +21,7 @@ class Alpha extends AbstractValidator
|
||||||
* @param string $field
|
* @param string $field
|
||||||
* @return bool
|
* @return bool
|
||||||
*/
|
*/
|
||||||
public function validate(\Phalcon\Validation $validation, $field) : bool
|
public function validate(\Phalcon\Validation $validation, $field): bool
|
||||||
{
|
{
|
||||||
$allowSpace = $this->getOption('allowSpace', false);
|
$allowSpace = $this->getOption('allowSpace', false);
|
||||||
|
|
||||||
|
|
@ -44,7 +44,7 @@ class Alpha extends AbstractValidator
|
||||||
$message = $validation->getDefaultMessage('Alpha');
|
$message = $validation->getDefaultMessage('Alpha');
|
||||||
}
|
}
|
||||||
|
|
||||||
$replace = [ ":field" => $label ];
|
$replace = [":field" => $label];
|
||||||
|
|
||||||
$code = $this->getOption("code");
|
$code = $this->getOption("code");
|
||||||
if (is_array($code)) {
|
if (is_array($code)) {
|
||||||
|
|
|
||||||
|
|
@ -14,7 +14,7 @@ abstract class AbstractHelper implements InjectionAwareInterface
|
||||||
*
|
*
|
||||||
* @param DiInterface $container
|
* @param DiInterface $container
|
||||||
*/
|
*/
|
||||||
public function setDI(DiInterface $container) : void
|
public function setDI(DiInterface $container): void
|
||||||
{
|
{
|
||||||
$this->_di = $container;
|
$this->_di = $container;
|
||||||
}
|
}
|
||||||
|
|
@ -24,7 +24,7 @@ abstract class AbstractHelper implements InjectionAwareInterface
|
||||||
*
|
*
|
||||||
* @return DiInterface
|
* @return DiInterface
|
||||||
*/
|
*/
|
||||||
public function getDI() : DiInterface
|
public function getDI(): DiInterface
|
||||||
{
|
{
|
||||||
return $this->_di;
|
return $this->_di;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -27,7 +27,7 @@ class Icon extends AbstractHelper
|
||||||
|
|
||||||
if (is_array($args)) {
|
if (is_array($args)) {
|
||||||
|
|
||||||
foreach($args as $arg) {
|
foreach ($args as $arg) {
|
||||||
$classes[] .= 'fa-' . $arg;
|
$classes[] .= 'fa-' . $arg;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -33,7 +33,8 @@ class ServerUrl extends AbstractHelper
|
||||||
|
|
||||||
// remove port if it's the default port.
|
// remove port if it's the default port.
|
||||||
if (($scheme == 'http' && $port == 80)
|
if (($scheme == 'http' && $port == 80)
|
||||||
|| ($scheme == 'https' && $port == 443)) {
|
|| ($scheme == 'https' && $port == 443)
|
||||||
|
) {
|
||||||
$port = null;
|
$port = null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -16,7 +16,7 @@ class Service implements InjectionAwareInterface
|
||||||
*
|
*
|
||||||
* @param DiInterface $container
|
* @param DiInterface $container
|
||||||
*/
|
*/
|
||||||
public function setDI(DiInterface $container) : void
|
public function setDI(DiInterface $container): void
|
||||||
{
|
{
|
||||||
$this->_di = $container;
|
$this->_di = $container;
|
||||||
}
|
}
|
||||||
|
|
@ -26,7 +26,7 @@ class Service implements InjectionAwareInterface
|
||||||
*
|
*
|
||||||
* @return DiInterface
|
* @return DiInterface
|
||||||
*/
|
*/
|
||||||
public function getDI() : DiInterface
|
public function getDI(): DiInterface
|
||||||
{
|
{
|
||||||
return $this->_di;
|
return $this->_di;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -22,7 +22,7 @@ class AccessListener extends Injectable
|
||||||
* @return bool
|
* @return bool
|
||||||
* @throws DispatcherException
|
* @throws DispatcherException
|
||||||
*/
|
*/
|
||||||
public function beforeExecuteRoute(Event $event, Dispatcher $dispatcher) : bool
|
public function beforeExecuteRoute(Event $event, Dispatcher $dispatcher): bool
|
||||||
{
|
{
|
||||||
// If we have an identity, fetch type from authed user.
|
// If we have an identity, fetch type from authed user.
|
||||||
if ($this->auth->hasIdentity()) {
|
if ($this->auth->hasIdentity()) {
|
||||||
|
|
|
||||||
|
|
@ -38,8 +38,8 @@ class DispatchListener extends Injectable
|
||||||
// was that an controller or action was not found.
|
// was that an controller or action was not found.
|
||||||
if ($exception instanceof DispatcherException) {
|
if ($exception instanceof DispatcherException) {
|
||||||
switch ($exception->getCode()) {
|
switch ($exception->getCode()) {
|
||||||
case Dispatcher::EXCEPTION_HANDLER_NOT_FOUND :
|
case Dispatcher::EXCEPTION_HANDLER_NOT_FOUND:
|
||||||
case Dispatcher::EXCEPTION_ACTION_NOT_FOUND :
|
case Dispatcher::EXCEPTION_ACTION_NOT_FOUND:
|
||||||
// in this case, forward to 404 page.
|
// in this case, forward to 404 page.
|
||||||
$dispatcher->forward($this->_route_notfound);
|
$dispatcher->forward($this->_route_notfound);
|
||||||
return false;
|
return false;
|
||||||
|
|
|
||||||
|
|
@ -21,7 +21,7 @@ class CreateUserTable extends AbstractMigration
|
||||||
$table->addColumn('status', 'enum', [
|
$table->addColumn('status', 'enum', [
|
||||||
'null' => false,
|
'null' => false,
|
||||||
'default' => 'Active',
|
'default' => 'Active',
|
||||||
'values' => [ 'Active', 'Deleted', 'Suspended']
|
'values' => ['Active', 'Deleted', 'Suspended']
|
||||||
]);
|
]);
|
||||||
|
|
||||||
$table->addColumn('password', 'string', [
|
$table->addColumn('password', 'string', [
|
||||||
|
|
|
||||||
|
|
@ -11,11 +11,11 @@ class CreateCallbackTable extends AbstractMigration
|
||||||
$table->addColumn('public_id', 'string', [
|
$table->addColumn('public_id', 'string', [
|
||||||
'length' => 12,
|
'length' => 12,
|
||||||
'null' => false,
|
'null' => false,
|
||||||
])->addIndex('public_id', [ 'name' => 'UNIQUE_public_id', 'unique' => true ]);
|
])->addIndex('public_id', ['name' => 'UNIQUE_public_id', 'unique' => true]);
|
||||||
|
|
||||||
$table->addColumn('userid', 'integer', [
|
$table->addColumn('userid', 'integer', [
|
||||||
'null' => true,
|
'null' => true,
|
||||||
])->addForeignKey('userid', 'user', ['id'], [ 'constraint' => 'FK_user' ]);
|
])->addForeignKey('userid', 'user', ['id'], ['constraint' => 'FK_user']);
|
||||||
|
|
||||||
$table->addColumn('name', 'string', [
|
$table->addColumn('name', 'string', [
|
||||||
'length' => 64,
|
'length' => 64,
|
||||||
|
|
|
||||||
|
|
@ -10,8 +10,12 @@ class CreateRequestMetaTable extends AbstractMigration
|
||||||
$table = $this->table('request_meta');
|
$table = $this->table('request_meta');
|
||||||
|
|
||||||
$table->addColumn('callbackid', 'integer');
|
$table->addColumn('callbackid', 'integer');
|
||||||
$table->addForeignKey('callbackid', 'callback', [ 'id' ],
|
$table->addForeignKey(
|
||||||
[ 'constraint' => 'FK_callback' ]);
|
'callbackid',
|
||||||
|
'callback',
|
||||||
|
['id'],
|
||||||
|
['constraint' => 'FK_callback']
|
||||||
|
);
|
||||||
|
|
||||||
$table->addColumn('source_ip', 'string', [
|
$table->addColumn('source_ip', 'string', [
|
||||||
'limit' => 50,
|
'limit' => 50,
|
||||||
|
|
@ -21,7 +25,7 @@ class CreateRequestMetaTable extends AbstractMigration
|
||||||
$table->addColumn('method', 'enum', [
|
$table->addColumn('method', 'enum', [
|
||||||
'null' => false,
|
'null' => false,
|
||||||
'default' => 'GET',
|
'default' => 'GET',
|
||||||
'values' => [ 'GET', 'POST' ]
|
'values' => ['GET', 'POST']
|
||||||
]);
|
]);
|
||||||
|
|
||||||
$table->addColumn('uri', 'string', [
|
$table->addColumn('uri', 'string', [
|
||||||
|
|
|
||||||
|
|
@ -9,8 +9,12 @@ class CreateRequestObjectTable extends AbstractMigration
|
||||||
{
|
{
|
||||||
$table = $this->table('request_object');
|
$table = $this->table('request_object');
|
||||||
|
|
||||||
$table->addForeignKey('id', 'request_meta', ['id'],
|
$table->addForeignKey(
|
||||||
[ 'constraint' => 'FK_request_meta' ]);
|
'id',
|
||||||
|
'request_meta',
|
||||||
|
['id'],
|
||||||
|
['constraint' => 'FK_request_meta']
|
||||||
|
);
|
||||||
|
|
||||||
$table->addColumn('headers', 'blob', [
|
$table->addColumn('headers', 'blob', [
|
||||||
'null' => true,
|
'null' => true,
|
||||||
|
|
|
||||||
|
|
@ -8,11 +8,11 @@ class PasswordLink extends AbstractMigration
|
||||||
public function up()
|
public function up()
|
||||||
{
|
{
|
||||||
$this->table('password_link')
|
$this->table('password_link')
|
||||||
->addColumn('public_id', 'string', ['length' => 12 ])
|
->addColumn('public_id', 'string', ['length' => 12])
|
||||||
->addColumn('user_id', 'integer')
|
->addColumn('user_id', 'integer')
|
||||||
->addForeignKey('user_id', 'user', ['id'], [ 'constraint' => 'FK_password_link_user' ])
|
->addForeignKey('user_id', 'user', ['id'], ['constraint' => 'FK_password_link_user'])
|
||||||
->addColumn('date', 'datetime', [ 'default' => 'CURRENT_TIMESTAMP' ])
|
->addColumn('date', 'datetime', ['default' => 'CURRENT_TIMESTAMP'])
|
||||||
->addColumn('password', 'string', [ 'limit' => 255, 'null' => true ])
|
->addColumn('password', 'string', ['limit' => 255, 'null' => true])
|
||||||
->save();
|
->save();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -12,7 +12,7 @@ class UserSplitName extends AbstractMigration
|
||||||
// Rename "name" to "firstname" and add "lastname".
|
// Rename "name" to "firstname" and add "lastname".
|
||||||
$this->table('user')
|
$this->table('user')
|
||||||
->renameColumn('name', 'firstname')
|
->renameColumn('name', 'firstname')
|
||||||
->addColumn('lastname','string', [
|
->addColumn('lastname', 'string', [
|
||||||
'length' => 128,
|
'length' => 128,
|
||||||
'after' => 'firstname',
|
'after' => 'firstname',
|
||||||
'null' => true
|
'null' => true
|
||||||
|
|
@ -20,7 +20,7 @@ class UserSplitName extends AbstractMigration
|
||||||
->save();
|
->save();
|
||||||
|
|
||||||
// Update row data, moving everything after first space to from lastname.
|
// Update row data, moving everything after first space to from lastname.
|
||||||
foreach($this->fetchAll("SELECT `id`,`firstname` FROM `user`") as $row) {
|
foreach ($this->fetchAll("SELECT `id`,`firstname` FROM `user`") as $row) {
|
||||||
|
|
||||||
$builder = $this->getQueryBuilder()->update('user')
|
$builder = $this->getQueryBuilder()->update('user')
|
||||||
->where(['id' => $row['id']]);
|
->where(['id' => $row['id']]);
|
||||||
|
|
@ -31,7 +31,7 @@ class UserSplitName extends AbstractMigration
|
||||||
$pos = strpos($firstname, ' ');
|
$pos = strpos($firstname, ' ');
|
||||||
if ($pos !== false) {
|
if ($pos !== false) {
|
||||||
// Set everything after the first space to lastname.
|
// Set everything after the first space to lastname.
|
||||||
$builder->set('lastname', substr($firstname, $pos+1));
|
$builder->set('lastname', substr($firstname, $pos + 1));
|
||||||
|
|
||||||
// Remove everything after first space from firstname.
|
// Remove everything after first space from firstname.
|
||||||
$firstname = substr($firstname, 0, $pos);
|
$firstname = substr($firstname, 0, $pos);
|
||||||
|
|
|
||||||
|
|
@ -11,7 +11,7 @@ class UserType extends AbstractMigration
|
||||||
->addColumn('type', 'enum', [
|
->addColumn('type', 'enum', [
|
||||||
'null' => false,
|
'null' => false,
|
||||||
'default' => 'user',
|
'default' => 'user',
|
||||||
'values' => [ 'user', 'admin' ],
|
'values' => ['user', 'admin'],
|
||||||
'after' => 'regdate'
|
'after' => 'regdate'
|
||||||
])
|
])
|
||||||
->save();
|
->save();
|
||||||
|
|
|
||||||
|
|
@ -18,7 +18,7 @@ class Base extends Model
|
||||||
* @param boolean $allFields
|
* @param boolean $allFields
|
||||||
* @return bool
|
* @return bool
|
||||||
*/
|
*/
|
||||||
public function hasChanged($fieldName = null, bool $allFields = false) : bool
|
public function hasChanged($fieldName = null, bool $allFields = false): bool
|
||||||
{
|
{
|
||||||
return $this->hasSnapshotData() === false
|
return $this->hasSnapshotData() === false
|
||||||
|| parent::hasChanged($fieldName, $allFields);
|
|| parent::hasChanged($fieldName, $allFields);
|
||||||
|
|
|
||||||
|
|
@ -53,7 +53,7 @@ class Request extends Model
|
||||||
*/
|
*/
|
||||||
public function setHeaders($headers)
|
public function setHeaders($headers)
|
||||||
{
|
{
|
||||||
foreach($headers as $k => $v) {
|
foreach ($headers as $k => $v) {
|
||||||
|
|
||||||
if (strlen($v) < 1) {
|
if (strlen($v) < 1) {
|
||||||
unset($headers[$k]);
|
unset($headers[$k]);
|
||||||
|
|
|
||||||
|
|
@ -161,7 +161,7 @@ class RequestMeta extends Model
|
||||||
$query = (string) parse_url($this->getUri(), PHP_URL_QUERY);
|
$query = (string) parse_url($this->getUri(), PHP_URL_QUERY);
|
||||||
|
|
||||||
$ret = array();
|
$ret = array();
|
||||||
foreach(explode('&', $query) as $v) {
|
foreach (explode('&', $query) as $v) {
|
||||||
@list($k, $v) = explode('=', $v, 2);
|
@list($k, $v) = explode('=', $v, 2);
|
||||||
if (strlen($k) > 0) {
|
if (strlen($k) > 0) {
|
||||||
$ret[$k] = $v;
|
$ret[$k] = $v;
|
||||||
|
|
@ -211,7 +211,7 @@ class RequestMeta extends Model
|
||||||
{
|
{
|
||||||
$headers = $this->getHeaders();
|
$headers = $this->getHeaders();
|
||||||
|
|
||||||
foreach($headers as $k => $v) {
|
foreach ($headers as $k => $v) {
|
||||||
|
|
||||||
if ($k == 'Content-Length') {
|
if ($k == 'Content-Length') {
|
||||||
return $v;
|
return $v;
|
||||||
|
|
@ -224,7 +224,7 @@ class RequestMeta extends Model
|
||||||
{
|
{
|
||||||
$headers = $this->getHeaders();
|
$headers = $this->getHeaders();
|
||||||
|
|
||||||
foreach($headers as $k => $v) {
|
foreach ($headers as $k => $v) {
|
||||||
|
|
||||||
if ($k == 'Content-Type') {
|
if ($k == 'Content-Type') {
|
||||||
return substr($v, strrpos($v, '/') + 1);
|
return substr($v, strrpos($v, '/') + 1);
|
||||||
|
|
|
||||||
|
|
@ -61,7 +61,7 @@ class User extends Base
|
||||||
'message' => 'The username already exists.'
|
'message' => 'The username already exists.'
|
||||||
]),
|
]),
|
||||||
'email' => new CallbackValidator([
|
'email' => new CallbackValidator([
|
||||||
'callback' => function() {
|
'callback' => function () {
|
||||||
return $this->findFirstByEmail($this->getEmail()) === false;
|
return $this->findFirstByEmail($this->getEmail()) === false;
|
||||||
},
|
},
|
||||||
'message' => 'The email address already exists.'
|
'message' => 'The email address already exists.'
|
||||||
|
|
@ -69,7 +69,7 @@ class User extends Base
|
||||||
];
|
];
|
||||||
|
|
||||||
$validation = new Validation();
|
$validation = new Validation();
|
||||||
foreach($rules as $field => $validator) {
|
foreach ($rules as $field => $validator) {
|
||||||
|
|
||||||
// Only validate changed fields.
|
// Only validate changed fields.
|
||||||
if ($this->hasChanged($field)) {
|
if ($this->hasChanged($field)) {
|
||||||
|
|
@ -414,7 +414,7 @@ class User extends Base
|
||||||
{
|
{
|
||||||
return self::findFirst([
|
return self::findFirst([
|
||||||
"(email = :v: OR username = :v:) AND status != :s:",
|
"(email = :v: OR username = :v:) AND status != :s:",
|
||||||
"bind" => [ 'v' => $value, 's' => self::STATUS_DELETED ]
|
"bind" => ['v' => $value, 's' => self::STATUS_DELETED]
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -422,7 +422,7 @@ class User extends Base
|
||||||
{
|
{
|
||||||
return self::findFirst([
|
return self::findFirst([
|
||||||
"email = :email: AND status != :s:",
|
"email = :email: AND status != :s:",
|
||||||
"bind" => [ 'email' => $email, 's' => self::STATUS_DELETED ]
|
"bind" => ['email' => $email, 's' => self::STATUS_DELETED]
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -430,7 +430,7 @@ class User extends Base
|
||||||
{
|
{
|
||||||
return self::findFirst([
|
return self::findFirst([
|
||||||
"username = :username: AND status != :s:",
|
"username = :username: AND status != :s:",
|
||||||
"bind" => [ 'username' => $username, 's' => self::STATUS_DELETED ]
|
"bind" => ['username' => $username, 's' => self::STATUS_DELETED]
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -440,7 +440,7 @@ class User extends Base
|
||||||
|
|
||||||
return self::findFirst([
|
return self::findFirst([
|
||||||
"{$column}_id = :id: AND status != :s:",
|
"{$column}_id = :id: AND status != :s:",
|
||||||
"bind" => [ 'id' => $oauth->getId(), 's' => self::STATUS_DELETED ]
|
"bind" => ['id' => $oauth->getId(), 's' => self::STATUS_DELETED]
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -79,7 +79,7 @@ class UserActivation extends Base
|
||||||
* @param int $id
|
* @param int $id
|
||||||
* @return PasswordLink
|
* @return PasswordLink
|
||||||
*/
|
*/
|
||||||
public function setId(int $id) : UserActivation
|
public function setId(int $id): UserActivation
|
||||||
{
|
{
|
||||||
$this->id = $id;
|
$this->id = $id;
|
||||||
return $this;
|
return $this;
|
||||||
|
|
@ -97,7 +97,7 @@ class UserActivation extends Base
|
||||||
* @param string $public_id
|
* @param string $public_id
|
||||||
* @return UserActivation
|
* @return UserActivation
|
||||||
*/
|
*/
|
||||||
public function setActivationKey(string $key) : UserActivation
|
public function setActivationKey(string $key): UserActivation
|
||||||
{
|
{
|
||||||
$this->activation_key = $key;
|
$this->activation_key = $key;
|
||||||
return $this;
|
return $this;
|
||||||
|
|
@ -115,7 +115,7 @@ class UserActivation extends Base
|
||||||
* @param int $user_id
|
* @param int $user_id
|
||||||
* @return UserActivation
|
* @return UserActivation
|
||||||
*/
|
*/
|
||||||
public function setUserId(int $user_id) : UserActivation
|
public function setUserId(int $user_id): UserActivation
|
||||||
{
|
{
|
||||||
$this->user_id = $user_id;
|
$this->user_id = $user_id;
|
||||||
return $this;
|
return $this;
|
||||||
|
|
@ -133,7 +133,7 @@ class UserActivation extends Base
|
||||||
* @param string $password
|
* @param string $password
|
||||||
* @return UserActivation
|
* @return UserActivation
|
||||||
*/
|
*/
|
||||||
public function setPassword(string $password) : UserActivation
|
public function setPassword(string $password): UserActivation
|
||||||
{
|
{
|
||||||
$this->password = $password;
|
$this->password = $password;
|
||||||
return $this;
|
return $this;
|
||||||
|
|
@ -144,7 +144,7 @@ class UserActivation extends Base
|
||||||
*
|
*
|
||||||
* @return bool
|
* @return bool
|
||||||
*/
|
*/
|
||||||
public function isUsed() : bool
|
public function isUsed(): bool
|
||||||
{
|
{
|
||||||
return (bool) $this->used;
|
return (bool) $this->used;
|
||||||
}
|
}
|
||||||
|
|
@ -154,7 +154,7 @@ class UserActivation extends Base
|
||||||
*
|
*
|
||||||
* @return bool
|
* @return bool
|
||||||
*/
|
*/
|
||||||
public function isValid() : bool
|
public function isValid(): bool
|
||||||
{
|
{
|
||||||
// Used links are not valid.
|
// Used links are not valid.
|
||||||
if ($this->isUsed()) {
|
if ($this->isUsed()) {
|
||||||
|
|
@ -175,9 +175,9 @@ class UserActivation extends Base
|
||||||
public function beforeCreate()
|
public function beforeCreate()
|
||||||
{
|
{
|
||||||
// Creating a new link automatically removes old ones.
|
// Creating a new link automatically removes old ones.
|
||||||
$links = self::find(["user_id = ?0", 'bind' => [ $this->user_id ]]);
|
$links = self::find(["user_id = ?0", 'bind' => [$this->user_id]]);
|
||||||
|
|
||||||
foreach($links as $link) {
|
foreach ($links as $link) {
|
||||||
$link->delete();
|
$link->delete();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -39,9 +39,8 @@ abstract class Base implements ModuleDefinitionInterface
|
||||||
$dispatcher->setDefaultNamespace($this->_controllerNamespace);
|
$dispatcher->setDefaultNamespace($this->_controllerNamespace);
|
||||||
|
|
||||||
$di->get('view')->setViewsDir(array_merge(
|
$di->get('view')->setViewsDir(array_merge(
|
||||||
[ $this->_viewDir ],
|
[$this->_viewDir],
|
||||||
(array) $di->get('view')->getViewsDir()
|
(array) $di->get('view')->getViewsDir()
|
||||||
));
|
));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Reference in a new issue