Blame view

src/app/backend/controllers/DeliveryController.php 3.22 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
116
117
118
  <?php

  

  namespace controllers;

  

  ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

  

  class DeliveryController extends \Phalcon\Mvc\Controller

  {

      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;

          $sort = array(

              'id' => '10'

          );

          $data   = $this->models->getDelivery()->getAllData($page, '', '', $sort);

          $total  = $this->models->getDelivery()->countData($sort);

  

          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' => 'delivery_index_paged', 'page' => $page ],

                      'index_page'     => 'delivery_index'

                  ], true

              );

          }

  

          $this->view->setVars([

              'info'     => $data,

              'paginate' => !empty($paginate['output']) ? $paginate['output'] : '' ,

          ]);

      }

  

      function deleteAction($id)

      {

          if( !$this->session->get('isAdminAuth') )

          {

              return $this->response->redirect([ 'for' => 'admin_login' ]);

          }

  

          $this->models->getEventEmail()->deleteData($id);

  

          return $this->response->redirect([ 'for' => 'delivery_index' ]);

      }

  

  

  

      function moreInfoAction($id)

      {

          if( !$this->session->get('isAdminAuth') )

          {

              return $this->response->redirect([ 'for' => 'admin_login' ]);

          }

  

  

  

          $this->view->pick( 'delivery/addEdit' );

  

          $this->view->setVars([

  

          ]);

      }

  

      function updateAction($id)

      {

  

          if( !$this->session->get('isAdminAuth') )

          {

              return $this->response->redirect([ 'for' => 'admin_login' ]);

          }

  

          $this->MyMailer->getDeliveryStatus($id);

  

          $this->MyMailer->getCampaignDeliveryStats($id);

  

          $this->MyMailer->getCampaignAggregateStats($id);

  

          $this->MyMailer->getVisitedLinks($id);

  

  

  

  

  

          if( $this->MyMailer->updateDeliveryData($id))

          {

              $this->flash->success( 'Обновление прошло успешно' );

          }

          else

          {

              $this->flash->error( 'Произошла ошибка во время обновления.' );

          }

  

  

  

  

          return $this->response->redirect([ 'for' => 'delivery_index' ]);

  

      }

  

      public function getUsersLikeAction()

      {

          $like = $this->request->getPost('like', 'string', NULL );

          $users = $this->models->getCustomers()->getActiveUsers($like);

          $result = json_encode($users);

          $this->view->disableLevel(\Phalcon\Mvc\View::LEVEL_MAIN_LAYOUT);

          echo $result;

      }

  }