Initial import of Din Beste Hjelper site
CodeIgniter 3 app for dinbestehjelper.no. Excludes vendor/, local backup folders (new/, archive/, archived/) and DB dumps (*.sql) via .gitignore. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01P16ttGUge8zj91dm6WrmEb
This commit is contained in:
@@ -0,0 +1,233 @@
|
||||
<?php
|
||||
defined('BASEPATH') OR exit('No direct script access allowed');
|
||||
|
||||
class UserManagement extends CI_Controller {
|
||||
|
||||
/**
|
||||
* Index Page for this controller.
|
||||
*
|
||||
* Maps to the following URL
|
||||
* http://example.com/index.php/welcome
|
||||
* - or -
|
||||
* http://example.com/index.php/welcome/index
|
||||
* - or -
|
||||
* Since this controller is set as the default controller in
|
||||
* config/routes.php, it's displayed at http://example.com/
|
||||
*
|
||||
* So any other public methods not prefixed with an underscore will
|
||||
* map to /index.php/welcome/<method_name>
|
||||
* @see https://codeigniter.com/user_guide/general/urls.html
|
||||
*/
|
||||
public function index(){
|
||||
$this->load->helper('url');
|
||||
$this->load->model('User_model');
|
||||
$this->load->model('Log_model');
|
||||
$this->load->model('Module_model');
|
||||
|
||||
if(isset($_SESSION['username'])){
|
||||
$data['currentUser'] = $this->User_model->getUserByUsername($_SESSION['username']);
|
||||
$data['activeModules'] = $this->Module_model->getModulesByPermissionSlug($data['currentUser']->permission_slug);
|
||||
$data['message'] = '';
|
||||
$data['message_class'] = '';
|
||||
$data['pageTitle'] = 'Felhasználó kezelése';
|
||||
|
||||
if($this->User_model->is_user_admin($_SESSION['username'])){
|
||||
$data['activeModules'] = $this->Module_model->getAllModule();
|
||||
}
|
||||
else{
|
||||
$data['activeModules'] = $this->Module_model->getUserModules($data['currentUser']->user_id);
|
||||
}
|
||||
|
||||
$selectedModule = $this->Module_model->getModuleBySlug('user-management');
|
||||
if($this->Module_model->user_can_access_this_module($selectedModule->module_slug, $data['currentUser']->user_id) || $data['currentUser']->permission_slug == 'admin'){
|
||||
//delete user
|
||||
if(isset($_GET['delete-user'])){
|
||||
$selectedUser = $this->User_model->getUserById($_GET['delete-user']);
|
||||
$this->Log_model->addLog('users', $data['currentUser']->username.' törölte a(z) '.$selectedUser->username.' felhasználót', $data['currentUser']->username);
|
||||
$this->User_model->deleteUser($_GET['delete-user']);
|
||||
header('Location:'.site_url().'user-management');
|
||||
}
|
||||
$data['users'] = $this->User_model->getAllUser();
|
||||
$this->load->view('pages/user-management',$data);
|
||||
|
||||
}
|
||||
else{
|
||||
header("Location:".SITEURL."dashboard");
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
else{
|
||||
header("Location:".SITEURL."login");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public function add_new_user(){
|
||||
$this->load->helper('url');
|
||||
$this->load->model('User_model');
|
||||
$this->load->model('Log_model');
|
||||
$this->load->model('Module_model');
|
||||
|
||||
if(isset($_SESSION['username'])){
|
||||
$data['currentUser'] = $this->User_model->getUserByUsername($_SESSION['username']);
|
||||
$data['activeModules'] = $this->Module_model->getModulesByPermissionSlug($data['currentUser']->permission_slug);
|
||||
$data['message'] = '';
|
||||
$data['message_class'] = '';
|
||||
$data['pageTitle'] = 'Felhasználó létrehozása';
|
||||
|
||||
if($this->User_model->is_user_admin($_SESSION['username'])){
|
||||
$data['activeModules'] = $this->Module_model->getAllModule();
|
||||
}
|
||||
else{
|
||||
$data['activeModules'] = $this->Module_model->getUserModules($data['currentUser']->user_id);
|
||||
}
|
||||
|
||||
$selectedModule = $this->Module_model->getModuleBySlug('user-management');
|
||||
if($this->Module_model->user_can_access_this_module($selectedModule->module_slug, $data['currentUser']->user_id) || $data['currentUser']->permission_slug == 'admin'){
|
||||
$data['permissions'] = $this->User_model->getAllUserPermission();
|
||||
|
||||
|
||||
$this->load->view('pages/add-new-user',$data);
|
||||
}
|
||||
else{
|
||||
header("Location:".SITEURL."home");
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
else{
|
||||
header("Location:".SITEURL."login");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public function modify_user($user_id=''){
|
||||
$this->load->helper('url');
|
||||
$this->load->model('User_model');
|
||||
$this->load->model('Log_model');
|
||||
$this->load->model('Module_model');
|
||||
|
||||
if(isset($_SESSION['username'])){
|
||||
$data['currentUser'] = $this->User_model->getUserByUsername($_SESSION['username']);
|
||||
$data['activeModules'] = $this->Module_model->getModulesByPermissionSlug($data['currentUser']->permission_slug);
|
||||
$data['message'] = '';
|
||||
$data['message_class'] = '';
|
||||
$data['pageTitle'] = 'Felhasználók';
|
||||
|
||||
if($this->User_model->is_user_admin($_SESSION['username'])){
|
||||
$data['activeModules'] = $this->Module_model->getAllModule();
|
||||
}
|
||||
else{
|
||||
$data['activeModules'] = $this->Module_model->getUserModules($data['currentUser']->user_id);
|
||||
}
|
||||
|
||||
$selectedModule = $this->Module_model->getModuleBySlug('user-management');
|
||||
if($this->Module_model->user_can_access_this_module($selectedModule->module_slug, $data['currentUser']->user_id) || $data['currentUser']->permission_slug == 'admin'){
|
||||
|
||||
$data['selectedUser'] = $this->User_model->getUserById($user_id);
|
||||
$data['permissions'] = $this->User_model->getAllUserPermission();
|
||||
$this->load->view('pages/modify-user',$data);
|
||||
}
|
||||
else{
|
||||
header("Location:".SITEURL."home");
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
else{
|
||||
header("Location:".SITEURL."login");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public function user_process(){
|
||||
$this->load->helper('url');
|
||||
$this->load->model('User_model');
|
||||
$this->load->model('Log_model');
|
||||
$this->load->model('Module_model');
|
||||
|
||||
if(isset($_SESSION['username'])){
|
||||
$data['currentUser'] = $this->User_model->getUserByUsername($_SESSION['username']);
|
||||
$data['activeModules'] = $this->Module_model->getModulesByPermissionSlug($data['currentUser']->permission_slug);
|
||||
$data['message'] = '';
|
||||
$data['message_class'] = '';
|
||||
$data['pageTitle'] = 'Felhasználók';
|
||||
|
||||
$selectedModule = $this->Module_model->getModuleBySlug('user-management');
|
||||
if($this->Module_model->user_can_access_this_module($selectedModule->module_slug, $data['currentUser']->user_id) || $data['currentUser']->permission_slug == 'admin'){
|
||||
|
||||
//update user
|
||||
if(isset($_POST['updateUser'])){
|
||||
$userArray = array(
|
||||
'username' => $_POST['username'],
|
||||
'fullname' => $_POST['fullname'],
|
||||
'permission_slug' => $_POST['permission_slug'],
|
||||
'is_enabled' => $_POST['is_enabled'],
|
||||
'user_notes' => $_POST['user_notes']
|
||||
);
|
||||
|
||||
if($_POST['password'] != ''){
|
||||
$userArray['password'] = $_POST['password'];
|
||||
}
|
||||
|
||||
$this->User_model->updateUser($_POST['user_id'], $userArray);
|
||||
|
||||
$userArray['permission_slug'] = $this->User_model->getPermissionBySlug($userArray['permission_slug'])->permission_name;
|
||||
|
||||
if($_POST['password'] != ''){
|
||||
$userArray['password'] = '****';
|
||||
}
|
||||
|
||||
$userArray['is_enabled'] = $userArray['is_enabled']?'aktív':'letiltva';
|
||||
$userArray['user_notes'] = $userArray['user_notes'] != ''?$userArray['user_notes']:'nincs megjegyzés';
|
||||
|
||||
$this->Log_model->addLog('users', $data['currentUser']->username.' módosította a(z) '.$_POST['username'].' adatait ('.implode(', ', $userArray).')', $data['currentUser']->username);
|
||||
}
|
||||
|
||||
//add new user
|
||||
if(isset($_POST['addNewUser'])){
|
||||
$userArray = array(
|
||||
'username' => $_POST['username'],
|
||||
'password' => $_POST['password'],
|
||||
'fullname' => $_POST['fullname'],
|
||||
'permission_slug' => $_POST['permission_slug'],
|
||||
'is_enabled' => $_POST['is_enabled'],
|
||||
'user_notes' => $_POST['user_notes']
|
||||
);
|
||||
|
||||
$this->User_model->addNewUser($userArray);
|
||||
$userArray['permission_id'] = $this->User_model->getpermissionBySlug($userArray['permission_slug'])->permission_slug;
|
||||
$userArray['is_enabled'] = $userArray['is_enabled']?'aktív':'letiltva';
|
||||
$userArray['user_notes'] = $userArray['user_notes'] != ''?$userArray['user_notes']:'nincs megjegyzés';
|
||||
$userArray['password'] = '****';
|
||||
$this->Log_model->addLog('users', $data['currentUser']->username.' létrehoza a(z) '.$_POST['username'].' felhasználót ('.implode(', ', $userArray).')', $data['currentUser']->username);
|
||||
}
|
||||
|
||||
header("Location:".SITEURL."user-management");
|
||||
//$this->load->view('pages/user-process',$data);
|
||||
|
||||
}
|
||||
else{
|
||||
header("Location:".SITEURL."home");
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
else{
|
||||
header("Location:".SITEURL."login");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user