Blame view

src/app/backend/controllers/SpecialUsersController.php 4.26 KB
1ea3b987   Administrator   maby first commit
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
  <?php
  
  namespace controllers;
  
  
  class SpecialUsersController extends \Phalcon\Mvc\Controller
  {
      public function indexAction() {
          if( !$this->session->get('isAdminAuth') )
          {
              return $this->response->redirect([ 'for' => 'admin_login' ]);
          }
  
          $params         = $this->dispatcher->getParams();
          $page           = !empty( $params['page']  ) ? $params['page'] : 1;
          $data = $this->models->getSpecialUsers()->getAllData($page);
          $total = $this->models->getSpecialUsers()->countData();
  
          if( $total['0']['total'] > \config::get( 'limits/items') )
          {
              $paginate = $this->common->paginate(
                  [
                      'page'              => $page,
                      'items_per_page'    => \config::get( 'limits/admin_orders', 5),
                      'total_items'       => $total[0]['total'],
                      'url_for'           => [ 'for' => 'special_users_index_paged', 'page' => $page ],
                      'index_page'        => 'special_users_index'
                  ], true
              );
          }
          $this->view->setVars([
              'info' => $data,
              'paginate' => !empty($paginate['output']) ? $paginate['output'] : '' ,
          ]);
      }
  
      public function addAction() {
          if( !$this->session->get('isAdminAuth') )
          {
              return $this->response->redirect([ 'for' => 'admin_login' ]);
          }
  
          if( $this->request->isPost() )
          {
  
              $data['name']       = $this->request->getPost('name', 'string', NULL );
              $data['discount'] = $this->request->getPost('discount', 'string', NULL );
              $data['year_budget'] = $this->request->getPost('year_budget', 'string', NULL );
              $data['first_order'] = $this->request->getPost('first_order', 'string', NULL );
  
              if( !empty( $data ) && !isset($this->models->getSpecialUsers()->getOneDataByName($data['name'])['0']) )
              {
                  if( $this->models->getSpecialUsers()->addData( $data ) )
                  {
                      $this->flash->success( 'Сохранение прошло успешно' );
                      return $this->response->redirect([ 'for' => 'special_users_index' ]);
                  }
                  else
                  {
                      $this->flash->error( 'Произошла ошибка во время добавления. Повторите попытку позже' );
                  }
              }
              else {
                  $this->flash->error('Такая группа пользователей уже существует');
              }
          }
  
          $this->view->pick( 'special_users/addEdit' );
      }
  
      public function deleteAction($id) {
          if( !$this->session->get('isAdminAuth') )
          {
              return $this->response->redirect([ 'for' => 'admin_login' ]);
          }
          $this->models->getSpecialUsers()->deleteData($id);
  
          return $this->response->redirect([ 'for' => 'special_users_index' ]);
      }
  
      public function updateAction($id) {
          if( !$this->session->get('isAdminAuth') )
          {
              return $this->response->redirect([ 'for' => 'admin_login' ]);
          }
  
          if( $this->request->isPost() )
          {
  
              $data['discount'] = $this->request->getPost('discount', 'string', NULL );
              $data['year_budget'] = $this->request->getPost('year_budget', 'string', NULL );
              $data['first_order'] = $this->request->getPost('first_order', 'string', NULL );
  
              if( !empty( $data ) )
              {
                  if( $this->models->getSpecialUsers()->UpdateData( $data, $id ) )
                  {
                      $this->flash->success( 'Сохранение прошло успешно' );
                      return $this->response->redirect([ 'for' => 'special_users_index' ]);
                  }
                  else
                  {
                      $this->flash->error( 'Произошла ошибка во время обновления. Повторите попытку позже' );
                  }
              }
          }
  
          $data = $this->models->getSpecialUsers()->getOneData($id);
          $this->view->pick( 'special_users/addEdit' );
  
          $this->view->setVars([
              'page' => $data
          ]);
      }
  }