cambios de legacytables3

This commit is contained in:
Jaime Jiménez
2023-05-16 12:59:12 +02:00
parent ea0c714550
commit 5a0b82dcbb
58 changed files with 2955 additions and 468 deletions

View File

@ -72,6 +72,7 @@ class login extends BaseController
public function authenticate()
{
$session = session();
$settings = $session->get('settings');
@ -185,6 +186,7 @@ class login extends BaseController
if(!$login->status){
$session->setFlashdata('toast', ['error',lang("App.login_alert"),lang("App.login_alert_disabled_access")]);
return redirect()->to('/login');
}
// Get access rules
@ -194,29 +196,44 @@ class login extends BaseController
->where('token_user',$login->token)->findAll();
if (sizeof($groups)>1){
$rules = $this->group_model->select('rules')->where('token',$groups[0])->first()->rules;
$rules = json_decode(html_entity_decode($rules), true);
if($rules==null){
// group doesn't exists now -> then delete from group-user
$groups = $this->group_user_model
->where('token_group',$groups[0])
->delete();
}
for ($i=1; $i<sizeof($groups); $i++){
$temp_rules = $this->group_model->select('rules')->where('token',$groups[$i])->first()->rules;
foreach ($rules as $key => $value){
if (array_key_exists($key, json_decode(html_entity_decode($temp_rules), true))){
$value2 = json_decode(html_entity_decode($temp_rules), true)[$key];
$rules[$key] = array_unique(array_merge($value, $value2));
$temp_rules = $this->group_model->select('rules')->where('token',$groups[$i])->first();
if($temp_rules==null){
// group doesn't exists now -> then delete from group-user
$groups = $this->group_user_model
->where('token_group',$groups[$i])
->delete();
}
else{
$temp_rules=$temp_rules->rules;
foreach ($rules as $key => $value){
if (array_key_exists($key, json_decode(html_entity_decode($temp_rules), true))){
$value2 = json_decode(html_entity_decode($temp_rules), true)[$key];
$rules[$key] = array_unique(array_merge($value, $value2));
}
else{
$rules[$key]= $value;
}
}
else{
$rules[$key]= $value;
}
}
foreach (json_decode(html_entity_decode($temp_rules), true) as $key2 => $value2){
if (!array_key_exists($key2, $rules)){
$rules[$key2] = $value2;
foreach (json_decode(html_entity_decode($temp_rules), true) as $key2 => $value2){
if (!array_key_exists($key2, $rules)){
$rules[$key2] = $value2;
}
}
}
}
}
else{
$rules = $this->group_model->select('rules')->where('token',$groups[0])->first();
$rules = json_decode($this->group_model->select('rules')->where('token',$groups[0])->first()->rules);
}
@ -509,7 +526,6 @@ class login extends BaseController
$session = session();
if(!empty($token) && $session->get('settings')['forgot_password']??false){
$pass_recovery = $this->pass_recovery_model->where('token',$token)->where('changed',false)->first();
if($pass_recovery != null){
$data['token'] = $token;
$data['user'] = $pass_recovery['user'];
@ -552,7 +568,7 @@ class login extends BaseController
if($user != null){
$phpass = new PasswordHash(8, true);
$this->user_model->save([
'id_user' => $user->id_user,
'id_user' => $user['id_user'],
'password' => $phpass->HashPassword($listPost['password'])
]);
$this->pass_recovery_model->save([