//DB_Dataobject::debugLevel(5);
$this->sendAuthUserDetails();
exit;
-
+ }
+
+ if(!empty($_REQUEST['check_owner_company'])) {
+ $core_company = DB_DataObject::factory('core_company');
+ $core_company->comptype = 'OWNER';
+ $this->jok($core_company->count());
}
// might be an idea to disable this?!?
$this->switchPublicUser($_REQUEST['loginPublic']);
}
-
$this->jerr("INVALID REQUEST");
exit;
}
function logout()
{
$ff = class_exists('HTML_FlexyFramework2') ? HTML_FlexyFramework2::get() : HTML_FlexyFramework::get();
- //DB_DAtaObject::debugLevel(1);
+
+ //DB_DAtaObject::debugLevel(1);
$u = $this->getAuthUser();
//print_r($u);
if ($u) {
$tbl = empty($ff->Pman['authTable']) ? 'core_person' : $ff->Pman['authTable'];
$u = DB_DataObject::factory($tbl);
+ $s = DB_DataObject::factory('core_setting');
+ $require_oath = 1;
+ $require_oath = $s->lookup('core', 'two_factor_authentication_requirement');
+ if(!empty($require_oath)) {
+ if($require_oath->val == 0) {
+ $oath_require_val = 0;
+ }
+ }
+
if (!$u->isAuth()) {
-
- $this->jok(array('id' => 0)); // not logged in..
+ $this->jok(array(
+ 'id' => 0,
+ 'require_oath' => $oath_require_val
+ ));
exit;
}
+
//die("got here?");
$au = $u->getAuthUser();
}
-
function switchUser($id)
{
$tbl = empty($ff->Pman['authTable']) ? 'core_person' : $ff->Pman['authTable'];
$au = $u->getAuthUser();
-
// first check they have perms to do this..
if (!$au|| ($au->company()->comptype != 'OWNER') || !$this->hasPerm('Core.Person', 'E')) {
$this->jerr("User switching not permitted");
}
-
-
+
$u = DB_DataObject::factory($tbl);
$u->get($id);
if (!$u->active()) {
}
$u->login();
// we might need this later..
- $this->addEvent("SWITCH USER", false, $au->name . ' TO ' . $u->name);
+ $this->addEvent("SWITCH-USER", false, $au->name . ' TO ' . $u->name);
$this->jok("SWITCH");
}
{
//DB_DataObject::debugLevel(1);
- print_r($_REQUEST);exit;
-
if (!empty($_REQUEST['getAuthUser'])) {
$this->sendAuthUserDetails();
exit;
}
if(!empty($u->oath_key) && empty($_REQUEST['oath_password'])){
- $this->jerror('LOGIN-BAD','Your account require Two-Factor Authentication');
+ $this->jerror('LOGIN-BAD','Your account requires Two-Factor Authentication');
}
// check if config allows non-owner passwords.
exit;
}
- if(!empty($u->oath_key) && !$u->checkTwoFactorAuthentication(trim($_REQUEST['oath_password'],"\x10"))){
+ if(
+ !empty($u->oath_key) &&
+ !$u->checkTwoFactorAuthentication($_REQUEST['oath_password'])
+ ){
$this->jerror('LOGIN-BAD', 'You typed the wrong Username or Password (3)');
exit;
}
return $_SERVER['REMOTE_ADDR'];
}
-
-
}