mirror of
https://git.imnavajas.es/jjimenez/safekat.git
synced 2025-07-25 22:52:08 +00:00
82 lines
2.6 KiB
PHP
82 lines
2.6 KiB
PHP
<?php
|
|
|
|
namespace App\Controllers;
|
|
|
|
|
|
use App\Models\UserModel;
|
|
use App\Models\UserGroupModel;
|
|
use App\Models\GroupUserModel;
|
|
|
|
class Test extends BaseController
|
|
{
|
|
|
|
private $user_model;
|
|
private $group_user_model;
|
|
private $group_model;
|
|
|
|
function __construct()
|
|
{
|
|
$this->user_model = new UserModel();
|
|
$this->group_user_model = new GroupUserModel();
|
|
$this->group_model = new UserGroupModel();
|
|
}
|
|
|
|
public function index()
|
|
{
|
|
/////////////////////////////////7
|
|
// Join groups access rules
|
|
/*$user_token = "a4a60f9f064218b09cf108418e585507";
|
|
$groups = $this->group_user_model
|
|
->select('token_group')
|
|
->where('token_user', $user_token)->findAll();
|
|
|
|
if(sizeof($groups)>0){
|
|
$rules = html_entity_decode($this->group_model->select('rules')->where('token',$groups[0]['token_group'])->first()['rules']);
|
|
}
|
|
for ($i = 1; $i<sizeof($groups); $i++) {
|
|
echo var_dump($this->group_model->select('rules')->where('token',$groups[$i]['token_group'])->first()['rules']);
|
|
$rules = json_encode(
|
|
array_merge(
|
|
json_decode($rules, true),
|
|
json_decode($this->group_model->select('rules')->where('token',$groups[$i]['token_group'])->first()['rules'], true)
|
|
)
|
|
);
|
|
} */
|
|
|
|
|
|
$rules1 = '{"token":["token"],"Group":["index","add","edit","store","delete"],"My":["index","notification","notification_view"],"Notification":["index","add","store","delete"],"Profile":["index","store"],"User":["index","add","edit","store","delete"]}';
|
|
|
|
$rules2 = '{"token":["token"],"Activity":["index"],"Group":["edit"],"My":["notification"]}';
|
|
$new_rules = [];
|
|
|
|
echo '<pre>';
|
|
var_dump($rules1);
|
|
var_dump(json_decode($rules1, true));
|
|
echo '</pre>';
|
|
|
|
|
|
foreach (json_decode($rules1, true) as $key => $value){
|
|
if (array_key_exists($key, json_decode($rules2, true))){
|
|
$value2 = json_decode($rules2, true)[$key];
|
|
$new_rules[$key] = array_unique(array_merge($value, $value2));
|
|
}
|
|
else{
|
|
$new_rules[$key]= $value;
|
|
}
|
|
}
|
|
foreach (json_decode($rules2, true) as $key2 => $value2){
|
|
if (!array_key_exists($key2, json_decode($rules1, true))){
|
|
$new_rules[$key2] = $value2;
|
|
}
|
|
}
|
|
|
|
echo '<pre>';
|
|
var_dump($new_rules);
|
|
echo '</pre>';
|
|
|
|
|
|
|
|
|
|
}
|
|
}
|