Some minor internal fixes
This commit is contained in:
parent
6d914ff290
commit
fc5cea470a
@ -98,7 +98,7 @@ abstract class lnApp_Auth_ORM extends Kohana_Auth_ORM {
|
||||
* @return boolean TRUE if authorised, FALSE if not.
|
||||
*/
|
||||
public function authorised(Model_Account $ao) {
|
||||
return (($uo = $this->get_user()) AND $uo->loaded() AND ($uo == $ao OR in_array($ao->id,$uo->RTM->customers($uo->RTM))));
|
||||
return (($uo = $this->get_user()) AND $uo->loaded() AND ($uo == $ao OR ($uo->admin > $ao->admin)));
|
||||
}
|
||||
|
||||
public function get_groups() {
|
||||
@ -158,7 +158,8 @@ abstract class lnApp_Auth_ORM extends Kohana_Auth_ORM {
|
||||
|
||||
// If we are not a valid user object, then we are not logged in
|
||||
if (is_object($uo) AND ($uo instanceof Model_Account) AND $uo->loaded())
|
||||
$status = TRUE;
|
||||
if (empty($role) OR ($role <= $uo->admin))
|
||||
$status = TRUE;
|
||||
|
||||
return $status;
|
||||
}
|
||||
|
@ -68,7 +68,15 @@ abstract class lnApp_Controller_TemplateDefault extends Kohana_Controller_Templa
|
||||
* @uses meta
|
||||
*/
|
||||
public function before() {
|
||||
$this->ao = Auth::instance()->get_user();
|
||||
if ($this->auth_required) {
|
||||
if (! count($this->secure_actions) OR (! isset($this->secure_actions[Request::current()->action()])))
|
||||
throw HTTP_Exception::factory(403,'Class has no security defined :class, or no security configured for :method',array(':class'=>get_class($this),':method'=>Request::current()->action()));
|
||||
|
||||
$this->ao = Auth::instance()->get_user();
|
||||
|
||||
if (! is_null($this->ao) AND (is_string($this->ao)))
|
||||
throw HTTP_Exception::factory(501,'Account doesnt exist :account ?',array(':account'=>(is_string($this->ao) OR is_null($this->ao)) ? $this->ao : Auth::instance()->get_user()->id));
|
||||
}
|
||||
|
||||
// Actions that start with ajax, should only be ajax
|
||||
if (! Kohana::$config->load('debug')->ajax AND preg_match('/^ajax/',Request::current()->action()) AND ! Request::current()->is_ajax())
|
||||
@ -82,7 +90,7 @@ abstract class lnApp_Controller_TemplateDefault extends Kohana_Controller_Templa
|
||||
return;
|
||||
}
|
||||
|
||||
if ($this->ao AND $this->ao->loaded() AND ! $this->ao->activated() AND ($this->request->controller() != 'Account' OR $this->request->action() != 'activate'))
|
||||
if ($this->ao AND is_object($this->ao) AND $this->ao->loaded() AND ! $this->ao->activated() AND ($this->request->controller() != 'Account' OR $this->request->action() != 'activate'))
|
||||
HTTP::redirect('login/activate');
|
||||
|
||||
// Check user auth and role
|
||||
|
@ -22,6 +22,9 @@ abstract class lnApp_Form extends Kohana_Form {
|
||||
return '%s';
|
||||
}
|
||||
|
||||
if (! isset($attributes['class']))
|
||||
$attributes['class'] = 'form-control';
|
||||
|
||||
$output = '';
|
||||
|
||||
$output .= '<div class="form-group">';
|
||||
@ -43,9 +46,9 @@ abstract class lnApp_Form extends Kohana_Form {
|
||||
}
|
||||
|
||||
$classdiv = FALSE;
|
||||
if (isset($attributes['class'])) {
|
||||
$output .= sprintf('<div class="%s">',$attributes['class']);
|
||||
unset($attributes['class']);
|
||||
if (isset($attributes['divclass'])) {
|
||||
$output .= sprintf('<div class="%s">',$attributes['divclass']);
|
||||
unset($attributes['divclass']);
|
||||
$classdiv = TRUE;
|
||||
}
|
||||
|
||||
@ -84,7 +87,7 @@ abstract class lnApp_Form extends Kohana_Form {
|
||||
* @usedby Form::image
|
||||
*/
|
||||
public static function input($name,$value=NULL,array $attributes=NULL) {
|
||||
return (isset($attributes['type']) AND $attributes['type'] == 'hidden') ? parent::input($name,$value,$attributes) : sprintf(self::_controlgroup($name,$attributes),parent::input($name,$value,Arr::merge($attributes,array('class'=>'form-control'))));
|
||||
return (isset($attributes['type']) AND $attributes['type'] == 'hidden') ? parent::input($name,$value,$attributes) : sprintf(self::_controlgroup($name,$attributes),parent::input($name,$value,$attributes));
|
||||
}
|
||||
|
||||
public static function select($name,array $options=NULL,$selected=NULL,array $attributes=NULL) {
|
||||
|
@ -10,20 +10,21 @@
|
||||
* @license http://dev.leenooks.net/license.html
|
||||
*/
|
||||
class lnApp_Menu {
|
||||
public static function items($type) {
|
||||
public static function items($type,array $list=array()) {
|
||||
$result = array();
|
||||
|
||||
if (empty(URL::$method_directory[$type]))
|
||||
return NULL;
|
||||
|
||||
$list = Kohana::list_files('classes/Controller/'.ucfirst($type));
|
||||
if (! $list)
|
||||
$list = Kohana::list_files('classes/Controller/'.ucfirst($type));
|
||||
|
||||
// This will be used a lot!
|
||||
$ext_length = strlen(EXT);
|
||||
|
||||
foreach ($list as $name => $path)
|
||||
if (is_array($path)) {
|
||||
$result += self::items($path);
|
||||
$result += self::items($type,$path);
|
||||
|
||||
} elseif (substr($name, -$ext_length) === EXT) {
|
||||
// Remove "classes/" and the extension
|
||||
|
6
views/errors/400.php
Normal file
6
views/errors/400.php
Normal file
@ -0,0 +1,6 @@
|
||||
<h1>Oops!</h1>
|
||||
<h2>400 Bad Request?</h2>
|
||||
<?php echo $message; ?>
|
||||
<div class="error-details">
|
||||
Sorry, the request couldnt be actioned.
|
||||
</div>
|
Reference in New Issue
Block a user