Ejemplo n.º 1
0
 /**
  * 	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!'));
         }
     }
 }
Ejemplo n.º 2
0
                    <li class="dropdown dropdown-user">
                        <a href="javascript:;" class="dropdown-toggle" data-toggle="dropdown" data-hover="dropdown" data-close-others="true">
                            <img alt="" class="img-circle" src="<?php 
echo $this->getConfig('user.upload_path') . Auth::getUser('photo');
?>
" />
                            <span class="username username-hide-on-mobile"><?php 
echo Auth::getUser('name');
?>
</span>
                            <i class="fa fa-angle-down"></i>
                        </a>
                        <ul class="dropdown-menu dropdown-menu-default">
                            <li>
                                <a href="admin/user/profile/<?php 
echo Auth::getUser('id');
?>
">
                                    <i class="fa fa-user"></i> Profilom </a>
                            </li>
                            <li class="divider"> </li>
                            <li>
                                <a href="admin/login/logout">
                                    <i class="fa fa-key"></i> Kijelentkezés </a>
                            </li>
                        </ul>
                    </li>
                    <!-- END USER LOGIN DROPDOWN -->
                </ul>
            </div>
            <!-- END TOP NAVIGATION MENU -->
Ejemplo n.º 3
0
    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) {
            ?>
Ejemplo n.º 4
0
										
									<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' : '';
Ejemplo n.º 5
0
 /**
  * Jogosultság ellenőrzése a template-ben
  * @param array $permission
  */
 public function hasAccess($permission)
 {
     return Auth::hasAccess($permission, null);
 }
Ejemplo n.º 6
0
 private function _loadController()
 {
     $router = DI::get('router');
     /* **************************************************** */
     /* *************** SITE ******************************* */
     /* **************************************************** */
     if (AREA == 'site') {
         $router->get('/', 'home@index');
         $router->set404('error@index');
     } elseif (AREA == 'admin') {
         $router->mount('/admin', function () use($router) {
             $router->before('GET|POST', '/?((?!login).)*', function () {
                 if (!Auth::check()) {
                     $response = DI::get('response');
                     $response->redirect('admin/login');
                 }
             });
             $router->get('/', 'home@index');
             $router->get('/home', 'home@index');
             // login logout
             $router->match('GET|POST', '/login', 'login@index');
             $router->get('/login/logout', 'login@logout');
             // pages
             $router->get('/pages', 'pages@index');
             $router->match('GET|POST', '/pages/update/:id', 'pages@update', array('id'));
             // content
             $router->get('/content', 'content@index');
             $router->match('GET|POST', '/content/edit/:id', 'content@edit', array('id'));
             // user
             $router->get('/user', 'user@index');
             $router->match('GET|POST', '/user/insert', 'user@insert');
             $router->match('GET|POST', '/user/profile/:id', 'user@profile', array('id'));
             $router->post('/user/delete', 'user@delete');
             $router->post('/user/change_status', 'user@change_status');
             $router->post('/user/user_img_upload/(upload)', 'user@user_img_upload', array('upload'));
             $router->post('/user/user_img_upload/(crop)', 'user@user_img_upload', array('crop'));
             $router->match('GET|POST', '/user/user_roles', 'user@user_roles');
             $router->match('GET|POST', '/user/edit_roles/:id', 'user@edit_roles', array('id'));
             // photo gallery
             $router->get('/photo-gallery', 'photo_gallery@index');
             $router->post('/photo-gallery/delete_photo', 'photo_gallery@delete_photo');
             $router->post('/photo-gallery/delete_category', 'photo_gallery@delete_category');
             $router->match('GET|POST', '/photo-gallery/insert', 'photo_gallery@insert');
             $router->match('GET|POST', '/photo-gallery/update/:id', 'photo_gallery@update', array('id'));
             $router->get('/photo-gallery/category', 'photo_gallery@category');
             // slider
             $router->get('/slider', 'slider@index');
             $router->post('/slider/delete', 'slider@delete');
             $router->match('GET|POST', '/slider/insert', 'slider@insert');
             $router->match('GET|POST', '/slider/update/:id', 'slider@update', array('id'));
             $router->post('/slider/order', 'slider@order');
             // testimonials
             $router->get('/testimonials', 'testimonials@index');
             $router->match('GET|POST', '/testimonials/insert', 'testimonials@insert');
             $router->match('GET|POST', '/testimonials/update/:id', 'testimonials@update', array('id'));
             $router->get('/testimonials/delete/:id', 'testimonials@delete', array('id'));
             // clients
             $router->get('/clients', 'clients@index');
             $router->post('/clients/client_img_upload/(upload)', 'clients@client_img_upload', array('upload'));
             $router->post('/clients/client_img_upload/(crop)', 'clients@client_img_upload', array('crop'));
             $router->post('/clients/delete', 'clients@delete');
             $router->match('GET|POST', '/clients/insert', 'clients@insert');
             $router->match('GET|POST', '/clients/update/:id', 'clients@update', array('id'));
             $router->post('/clients/order', 'clients@order');
             // file manager
             $router->get('/file_manager', 'file_manager@index');
             // settings
             $router->match('GET|POST', '/settings', 'settings@index');
             // user manual
             $router->get('/user-manual', 'user_manual@index');
             // languages
             $router->get('/languages', 'languages@index');
             $router->post('/languages/save', 'languages@save');
             // newsletter
             $router->get('/newsletter', 'newsletter@index');
             $router->get('/newsletter/newsletter_stats', 'newsletter@newsletter_stats');
             $router->post('/newsletter/delete', 'newsletter@delete');
             $router->match('GET|POST', '/newsletter/insert', 'newsletter@insert');
             $router->match('GET|POST', '/newsletter/update/:id', 'newsletter@update', array('id'));
             // blog
             $router->get('/blog', 'blog@index');
             $router->post('/blog/delete', 'blog@delete');
             $router->match('GET|POST', '/blog/insert', 'blog@insert');
             $router->match('GET|POST', '/blog/update/:id', 'blog@update', array('id'));
             $router->get('/blog/category', 'blog@category');
             $router->post('/blog/category_insert_update', 'blog@category_insert_update');
             $router->post('/blog/category_delete', 'blog@category_delete');
             // error
             $router->set404('error@index');
         });
     }
     // dispatcher objektum példányosítása
     $dispatcher = new \System\Libs\Dispatcher();
     // controller névtérének beállítása
     $dispatcher->setControllerNamespace('System\\' . ucfirst(AREA) . '\\Controller\\');
     // before útvonalak bejárása, a megadott elemek futtatása
     $before_callbacks = $router->runBefore();
     $dispatcher->dispatch($before_callbacks);
     // útvonalak bejárása, controller példányosítása, action indítása
     $callback = $router->run();
     $dispatcher->dispatch($callback);
 }
Ejemplo n.º 7
0
 /**
  * Felhasználó engedélyének ellenőrzése a megadott művlethez 
  * 
  * @param string $permission    egy művelet neve pl.: delete_user 
  * @param string $target_url    egy átirányítási hely, ha nincs engedély 
  * @return void
  */
 public static function hasAccess($permission, $target_url = null)
 {
     //$instance = self::instance();
     $instance = DI::get('auth');
     // !!!! ha nincs a permissions táblában a megadott permission, akkor automatikusan engedélyezve lesz
     /*
     if (!$instance->checkPermission($permission)) {
        return true;
     }
     */
     // ha még nincsenek lekérdezve a felhasználó permission-jai
     if (is_null($instance->permissions)) {
         if (Auth::isUserLoggedIn()) {
             $role_id = $instance->getRoleId();
             $instance->permissions = $role_id == 1 ? '*' : $instance->getRolePerms($role_id);
             //$instance->permissions = $instance->getRolePerms($role_id);
         } else {
             $instance->permissions = array();
         }
     }
     if ($instance->_checkAccess($permission)) {
         return true;
     } else {
         if (!is_null($target_url)) {
             $instance->_accessDenied($permission, $target_url);
         }
         return false;
     }
 }
Ejemplo n.º 8
0
 /**
  *  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!'));
         }
     }
 }
Ejemplo n.º 9
0
                <?php 
}
?>
                <li class="nav-item <?php 
$this->menu_active('user', 'profile');
?>
 ">
                    <a href="admin/user/profile/<?php 
echo Auth::getUser('id');
?>
" class="nav-link ">
                        <span class="title">Profilom</span>
                    </a>
                </li>
                <?php 
if (Auth::isSuperadmin()) {
    ?>
                <li class="nav-item <?php 
    $this->menu_active('user', 'user_roles|edit_roles');
    ?>
 ">
                    <a href="admin/user/user_roles" class="nav-link ">
                        <span class="title">Csoportok</span>
                    </a>
                </li>
                <?php 
}
?>
            </ul>
        </li>
Ejemplo n.º 10
0
 /**
  * (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');
     }
 }