/Application/Admin/Controllers/Campaign.php

https://gitlab.com/hoanghung.dev/aloads · PHP · 104 lines · 83 code · 10 blank · 11 comment · 24 complexity · c335ae49cd18af0dd2d53d1a598991f7 MD5 · raw file

  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * User: ductoan1991
  5. * Date: 01/05/2015
  6. * Time: 06:54 CH
  7. */
  8. namespace Application\Admin\Controllers;
  9. use Application\Admin\Models\Campaigns;
  10. class Campaign extends Base
  11. {
  12. public function index(){
  13. $campaignModel = new Campaigns();
  14. $adType = $this->_request->getParam('adType');
  15. $query = urldecode($this->_request->getParam('query'));
  16. //if(!empty($query)) $this->redirect(sprintf('?adType=%s&%s',$adType,$query));
  17. /*elseif($adType) $this->redirect('?adType='.$adType);*/
  18. $page = $this->_request->getParam('page',1);
  19. $limit = 10;
  20. $params['select'] = '*';
  21. if(isset($query)){
  22. parse_str($query,$queryArr);
  23. $params = array_merge($params,$queryArr);
  24. }
  25. if(!empty($adType)) $params['adType'] = $adType;
  26. $params['page'] = $page;
  27. $params['order_by'] = 'campaignId DESC';
  28. $params['limit'] = $limit;
  29. $data = $campaignModel->getDataArr($params);
  30. $total = $campaignModel->getCount($params);
  31. if(empty($data)) $this->_flash->danger('Không có dữ liệu !');
  32. $this->view->data = $data;
  33. /*echo "<pre>";
  34. print_r($data);exit;*/
  35. $this->view->total = $total;
  36. $this->view->paging = $this->getPaging($total,$page,$limit,5);
  37. $this->view->countColumn = $campaignModel->getCountColumn($params);
  38. $this->displayLayout('default', $this->render());
  39. }
  40. public function add(){
  41. $campaignModel = new Campaigns();
  42. $this->view->countColumn = $campaignModel->getCountColumn();
  43. if($this->_request->isPost()){
  44. $data = array();
  45. foreach($this->_request->getPosts() as $field=>$value){
  46. if($value == 'on') $data[$field] = 1;else $data[$field] = $value;
  47. }
  48. $data['packageAppFilter'] = ($this->_request->getPost('packageAppFilter') != null)?json_encode($this->_request->getPost('packageAppFilter')):'["all"]';
  49. $data['filterCountry'] = ($this->_request->getPost('filterCountry') != null)?json_encode($this->_request->getPost('filterCountry')):'["all"]';
  50. $data['mobileIdFilter'] = ($this->_request->getPost('mobileIdFilter') != null)?json_encode($this->_request->getPost('mobileIdFilter')):'["all"]';
  51. $data['startCampaign'] = date('Y-m-d H:i:s',strtotime($this->_request->getPost('startCampaign')));
  52. $data['endCampaign'] = date('Y-m-d H:i:s',strtotime($this->_request->getPost('endCampaign')));
  53. $data['createdAt'] = $data['updatedAt'] = date('Y-m-d H:i:s');
  54. //echo "<pre>";print_r($data);echo "</pre>";exit;
  55. if($campaignModel->insert($data) == true) $this->_flash->success("Thêm mới Campaign thành công ! <a href='/campaign' class='btn btn-info btn-xs' title='Về trang quản lý'>Campaign Manage</a>&nbsp;<a href='/campaign-add' class='btn btn-primary btn-xs' title='Thêm Campaign khác'>Add More</a>");
  56. else $this->_flash->danger("Thêm mới Campaign không thành công !");
  57. unset($data);
  58. }
  59. $this->displayLayout('default',$this->render());
  60. }
  61. public function edit(){
  62. $campaignModel = new Campaigns();
  63. $id = $this->_request->getParam('id');
  64. $this->view->countColumn = $campaignModel->getCountColumn();
  65. if($this->_request->isPost()){
  66. $data = array();
  67. foreach($this->_request->getPosts() as $field=>$value){
  68. if($value == 'on') $data[$field] = 1;else $data[$field] = $value;
  69. }
  70. $data['hiddenAd'] = ($this->_request->getPost('hiddenAd') != null)?1:0;
  71. $data['hasButtonCancel'] = ($this->_request->getPost('hasButtonCancel') != null)?1:0;
  72. $data['packageAppFilter'] = ($this->_request->getPost('packageAppFilter') != null)?json_encode($this->_request->getPost('packageAppFilter')):'["all"]';
  73. $data['filterCountry'] = ($this->_request->getPost('filterCountry') != null)?json_encode($this->_request->getPost('filterCountry')):'["all"]';
  74. $data['mobileIdFilter'] = ($this->_request->getPost('mobileIdFilter') != null)?json_encode($this->_request->getPost('mobileIdFilter')):'["all"]';
  75. $data['startCampaign'] = date('Y-m-d H:i:s',strtotime($this->_request->getPost('startCampaign')));
  76. $data['endCampaign'] = date('Y-m-d H:i:s',strtotime($this->_request->getPost('endCampaign')));
  77. $data['updatedAt'] = date('Y-m-d H:i:s');
  78. if(is_array($data)){
  79. if($campaignModel->update($data,'campaignId = :cateId',array(':cateId'=>$id)) == true) $this->_flash->success("Cập nhật Campaign thành công ! <a href='/campaign' class='btn btn-info btn-xs' title='Về trang quản lý'>Campaign Manage</a>&nbsp;<a href='/campaign-add' class='btn btn-primary btn-xs' title='Thêm Campaign khác'>Add More</a>");
  80. else $this->_flash->danger("Cập nhật Campaign không thành công !");
  81. unset($data);
  82. }
  83. }
  84. $this->view->data = $campaignModel->getOne('campaignId = :id',array(':id'=>$id));
  85. $this->displayLayout('default',$this->render());
  86. }
  87. public function actDelete(){
  88. $campaignModel = new Campaigns();
  89. $id = $this->_request->getPost('id');
  90. $data = $campaignModel->delete('campaignId = :id',array(':id'=>$id));
  91. print $data;
  92. exit;
  93. }
  94. }