/** * Partner törlése AJAX */ public function delete() { if ($this->request->is_ajax()) { if (Auth::hasAccess('client.delete')) { // a POST-ban kapott item_id egy tömb $id_arr = $this->request->get_post('item_id'); // a sikeres törlések számát tárolja $success_counter = 0; // a sikeresen törölt id-ket tartalmazó tömb $success_id = array(); // a sikertelen törlések számát tárolja $fail_counter = 0; // file helper példányosítás $file_helper = DI::get('file_helper'); foreach ($id_arr as $id) { //átalakítjuk a integer-ré a kapott adatot $id = (int) $id; //lekérdezzük a törlendő kép nevét, hogy törölhessük a szerverről $photo_name = $this->client_model->selectPicture($id); //rekord törlése $result = $this->client_model->delete($id); if ($result !== false) { // ha a törlési sql parancsban nincs hiba if ($result > 0) { //ha van feltöltött képe (az adatbázisban szerepel a file-név) if (!empty($photo_name)) { //kép file törlése a szerverről $file_helper->delete(Config::get('clientphoto.upload_path') . $photo_name); } //sikeres törlés $success_counter += $result; $success_id[] = $id; } else { //sikertelen törlés $fail_counter++; } } else { // ha a törlési sql parancsban hiba van $this->response->json(array('status' => 'error', 'message_error' => 'Adatbázis lekérdezési hiba!')); } } // üzenetek visszaadása $respond = array(); $respond['status'] = 'success'; if ($success_counter > 0) { $respond['message_success'] = 'Partner törölve.'; } if ($fail_counter > 0) { $respond['message_error'] = 'A partnert már töröltek!'; } // respond tömb visszaadása $this->response->json($respond); } else { $this->response->json(array('status' => 'error', 'message' => 'Nincs engedélye a művelet végrehajtásához!')); } } }
if (Auth::hasAccess('user.delete') && $user['id'] != $loggedin_user_id) { ?> <li><a class="delete_item" data-id="<?php echo $user['id']; ?> "> <i class="fa fa-trash"></i> Töröl</a></li> <?php } else { ?> <!-- <li class="disabled-link"><a class="disable-target" title="Nem törölhető"><i class="fa fa-trash"></i> Töröl</a></li> --> <?php } ?> <?php if (Auth::hasAccess('user.change_status') && $user['id'] != $loggedin_user_id) { ?> <?php if ($user['active'] == 1) { ?> <li><a class="change_status" data-id="<?php echo $user['id']; ?> " data-action="make_inactive"><i class="fa fa-ban"></i> Blokkol</a></li> <?php } ?> <?php if ($user['active'] == 0) { ?>
/** * Jogosultság ellenőrzése a template-ben * @param array $permission */ public function hasAccess($permission) { return Auth::hasAccess($permission, null); }
<div class="form-group"> <label for="password" class="control-label">Jelszó<span class="required">*</span></label> <input type="password" id="password" name="password" class="form-control input-xlarge"/> </div> <div class="form-group"> <label for="password_again" class="control-label">Jelszó ismétlése<span class="required">*</span></label> <input type="password" name="password_again" class="form-control input-xlarge" /> </div> </div> <!-- ****************************** JOGOSULTSÁGOK ***************************** --> <?php if (Auth::hasAccess('user.edit_roles')) { ?> <div id="tab_4_4" class="tab-pane"> <h3>Felhasználói jogosultság</h3> <div class="note note-info"> A felhasználói jogosultság (felhasználói csoport) megadásával beállítható, hogy a felhasználó mihez férhet hozzá, milyen műveleteket hajthat végre. </div> <div class="form-group"> <label><strong>Felhasználói csoportok</strong></label> <div class="radio-list"> <label> <input type="radio" name="user_group" value="1" <?php echo $user['role_id'] == 1 ? 'checked' : '';
/** * Slider törlése AJAX-al */ public function delete() { if ($this->request->is_ajax()) { if (Auth::hasAccess('slider.delete')) { // a POST-ban kapott item_id egy tömb $id_arr = $this->request->get_post('item_id'); // a sikeres törlések számát tárolja $success_counter = 0; // a sikeresen törölt id-ket tartalmazó tömb $success_id = array(); // a sikertelen törlések számát tárolja $fail_counter = 0; $file_helper = DI::get('file_helper'); $url_helper = DI::get('url_helper'); // bejárjuk a $id_arr tömböt és minden elemen végrehajtjuk a törlést foreach ($id_arr as $id) { //átalakítjuk a integer-ré a kapott adatot $id = (int) $id; //lekérdezzük a törlendő blog képének a nevét, hogy törölhessük a szerverről $photo_name = $this->slider_model->selectPicture($id); //blog törlése $result = $this->slider_model->delete($id); if ($result !== false) { // ha a törlési sql parancsban nincs hiba if ($result > 0) { //ha van feltöltött képe a bloghoz (az adatbázisban szerepel a file-név) if (!empty($photo_name)) { $picture_path = Config::get('slider.upload_path') . $photo_name; $thumb_picture_path = $url_helper->thumbPath($picture_path); $file_helper->delete(array($picture_path, $thumb_picture_path)); } //sikeres törlés $success_counter += $result; $success_id[] = $id; } else { //sikertelen törlés $fail_counter += 1; } } else { // ha a törlési sql parancsban hiba van $this->response->json(array('status' => 'error', 'message_error' => 'Hibas sql parancs: nem sikerult a DELETE lekerdezes az adatbazisbol!')); } } // üzenetek visszaadása $respond = array(); $respond['status'] = 'success'; if ($success_counter > 0) { $respond['message_success'] = 'A slide törölve.'; } if ($fail_counter > 0) { $respond['message_error'] = 'A slide-ot már töröltek!'; } // respond tömb visszaadása $this->response->json($respond); } else { $this->response->json(array('status' => 'error', 'message' => 'Nincs engedélye a művelet végrehajtásához!')); } } }
<a href="javascript:;" class="nav-link nav-toggle"> <i class="fa fa-users"></i> <span class="title">Felhasználók</span> <span class="arrow"></span> </a> <ul class="sub-menu"> <li class="nav-item <?php $this->menu_active('user', 'index'); ?> "> <a href="admin/user" class="nav-link "> <span class="title">Felhasználók listája</span> </a> </li> <?php if (Auth::hasAccess('user.insert')) { ?> <li class="nav-item <?php $this->menu_active('user', 'insert'); ?> "> <a href="admin/user/insert" class="nav-link "> <span class="title">Új felhasználó</span> </a> </li> <?php } ?> <li class="nav-item <?php $this->menu_active('user', 'profile'); ?>
/** * (AJAX) Az users táblában módosítja a user_active mező értékét * * @return void */ public function change_status() { if ($this->request->is_ajax()) { // jogosultság vizsgálat if (Auth::hasAccess('user.change_status')) { if ($this->request->has_post('action') && $this->request->has_post('id')) { $id = $this->request->get_post('id', 'integer'); $action = $this->request->get_post('action'); if ($action == 'make_active') { $result = $this->user_model->changeStatus($id, 1); if ($result !== false) { $this->response->json(array("status" => 'success', "message" => 'A felhasználó aktiválása megtörtént!')); } else { $this->response->json(array("status" => 'error', "message" => 'Adatbázis hiba! A felhasználó státusza nem változott meg!')); } } if ($action == 'make_inactive') { //ha a szuperadmint akarjuk blokkolni if ($this->user_model->is_user_superadmin($id)) { $this->response->json(array("status" => 'error', "message" => 'Szuperadminisztrátor nem blokkolható!')); return; } $result = $this->user_model->changeStatus($id, 0); if ($result !== false) { $this->response->json(array("status" => 'success', "message" => 'A felhasználó blokkolása megtörtént!')); } else { $this->response->json(array("status" => 'error', "message" => 'Adatbázis hiba! A felhasználó státusza nem változott meg!')); } } } else { $this->response->json(array("status" => 'error', "message" => 'unknown_error')); } } else { $this->response->json(array("status" => 'error', "message" => 'Nincs engedélye a művelet végrehajtásához.')); } } else { $this->response->redirect('admin/error'); } }