Latest updates from IceHrmPro

This commit is contained in:
Thilina Pituwala
2020-05-20 18:47:29 +02:00
parent 60c92d7935
commit 7453a58aad
18012 changed files with 2089245 additions and 10173 deletions

View File

@@ -5,6 +5,7 @@
*/
namespace Users\Admin\Api;
use Classes\PasswordManager;
use Users\Common\Model\User;
use Classes\IceResponse;
use Classes\SubActionManager;
@@ -31,7 +32,13 @@ class UsersActionManager extends SubActionManager
"Please save the user first"
);
}
$user->password = md5($req->pwd);
$passwordStrengthResponse = PasswordManager::isQualifiedPassword($req->pwd);
if ($passwordStrengthResponse->getStatus() === IceResponse::ERROR) {
return $passwordStrengthResponse;
}
$user->password = PasswordManager::createPasswordHash($req->pwd);
$ok = $user->Save();
if (!$ok) {
return new IceResponse(IceResponse::ERROR, $user->ErrorMsg());

View File

@@ -2,7 +2,9 @@
namespace Users\Admin\Api;
use Classes\AbstractModuleManager;
use Classes\Macaw;
use Users\Common\Model\User;
use Users\Rest\UserRestEndPoint;
class UsersAdminManager extends AbstractModuleManager
{
@@ -33,4 +35,12 @@ class UsersAdminManager extends AbstractModuleManager
$data['numberOfUsers'] = $user->Count("1 = 1");
return $data;
}
public function setupRestEndPoints()
{
Macaw::post(REST_API_PATH.'oauth/token', function ($pathParams) {
$userRestEndpoint = new UserRestEndPoint();
$userRestEndpoint->process('post', $pathParams, false);
});
}
}

View File

@@ -6,11 +6,16 @@
namespace Users\Common\Model;
use Classes\BaseService;
use Classes\ModuleAccess;
use Classes\ModuleAccessService;
use Classes\PermissionManager;
use Model\BaseModel;
use Classes\IceResponse;
class User extends BaseModel
{
public $table = 'Users';
public function getAdminAccess()
{
return array("get","element","save","delete");
@@ -45,19 +50,50 @@ class User extends BaseModel
$oldUser = new User();
$oldUser->Load("id = ?", array($obj->id));
if ($oldUser->user_level != $obj->user_level && $oldUser->user_level == 'Admin') {
$adminUsers = $userTemp->Find("user_level = ?", array("Admin"));
$adminUsers = $userTemp->Find("user_level = ?", array('Admin'));
if (count($adminUsers) == 1 && $adminUsers[0]->id == $obj->id) {
return new IceResponse(
IceResponse::ERROR,
"You are the only admin user for the application.
You are not allowed to revoke your admin rights"
'You are not allowed to revoke your admin rights'
);
}
}
}
$permissionManager = new PermissionManager();
if ($permissionManager->isRestrictedUserLevel($obj->user_level) && empty($obj->default_module)) {
return new IceResponse(
IceResponse::ERROR,
'Restricted users must always have a default module'
);
}
if (!empty($obj->default_module)
&& !ModuleAccessService::getInstance()->isModuleEnabledForUser($obj->default_module, $obj)
) {
return new IceResponse(
IceResponse::ERROR,
'Selected default module is not allowed for the user'
);
}
return new IceResponse(IceResponse::SUCCESS, "");
}
public $table = 'Users';
public function getModuleAccess()
{
return [
new ModuleAccess('users', 'admin'),
];
}
public function postProcessGetData($obj)
{
return BaseService::getInstance()->cleanUpUser($obj);
}
public function postProcessGetElement($obj)
{
return BaseService::getInstance()->cleanUpUser($obj);
}
}

View File

@@ -6,6 +6,7 @@
namespace Users\Common\Model;
use Classes\ModuleAccess;
use Model\BaseModel;
class UserRole extends BaseModel
@@ -20,5 +21,12 @@ class UserRole extends BaseModel
return array();
}
public function getModuleAccess()
{
return [
new ModuleAccess('users', 'admin'),
];
}
public $table = 'UserRoles';
}