Subversion Repositories SmartDukaan

Rev

Rev 17208 | Rev 17220 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 17208 Rev 17212
Line 26... Line 26...
26
 *
26
 *
27
 * @return void
27
 * @return void
28
 */
28
 */
29
	public function admin_index() {
29
	public function admin_index() {
30
		$this->NotificationCampaign->recursive = 0;
30
		$this->NotificationCampaign->recursive = 0;
-
 
31
		// $this->Paginator->settings = array('order' => array('id'=>'desc'),'fields'=>('NotificationCampaign.id'));
31
		$this->Paginator->settings = array('order' => array('id'=>'desc'));
32
		$this->Paginator->settings = array('order' => array('id'=>'desc'));
32
		$vari = $this->Paginator->paginate();
33
		$vari = $this->Paginator->paginate();
-
 
34
		// debug($vari);
33
		$checkArray=array();
35
		$checkArray=array();
-
 
36
		$id_set = '';
-
 
37
		foreach ($vari as $key => $row) {
-
 
38
			foreach ($row as $key => $value) {
-
 
39
				if($id_set == '')
-
 
40
				{
-
 
41
					$id_set = $value['id'];
-
 
42
				}
-
 
43
				else
-
 
44
				{
-
 
45
					$id_set = $id_set.','.$value['id'];
-
 
46
				}
-
 
47
			}
-
 
48
			
-
 
49
		}
-
 
50
 
-
 
51
		$url = Configure::read('nodeurl')."/getPushNotificationsStats/?campaigns=".$id_set;
-
 
52
		// echo $url;
-
 
53
		$result = $this->make_request($url,null);
-
 
54
		// echo "Idset", $id_set;
-
 
55
		// debug($result);
-
 
56
		// $campaign_array = array();
-
 
57
		// foreach ($vari as $key => $value) {
-
 
58
		// 	echo $value['NotificationCampaign']['id'];
-
 
59
 
-
 
60
		// }
-
 
61
		/*
34
		foreach ($vari as $key => $value) {
62
		foreach ($vari as $key => $value) {
35
			$cid=$value['NotificationCampaign']['id'];
63
			$cid=$value['NotificationCampaign']['id'];
36
			$sqlQuery = "SELECT status as status,notification_campaign_id,type,count(*) as count FROM pushnotifications group by notification_campaign_id, type,status";
64
			$sqlQuery = "SELECT status as status,notification_campaign_id,type,count(*) as count FROM pushnotifications group by notification_campaign_id, type,status";
37
			#$successQuery="SELECT count(*) as count from pushnotifications where status=1 and type='sent' and notification_campaign_id=$cid";
65
			#$successQuery="SELECT count(*) as count from pushnotifications where status=1 and type='sent' and notification_campaign_id=$cid";
38
			$successQuery="SELECT count(distinct p.user_id) as count from pushnotifications p join devices d on p.user_id=d.user_id where status=1 and type='sent' and notification_campaign_id='$cid'  and d.versioncode>=14";
66
			$successQuery="SELECT count(distinct p.user_id) as count from pushnotifications p join devices d on p.user_id=d.user_id where status=1 and type='sent' and notification_campaign_id='$cid'  and d.versioncode>=14";
39
			$resul=$this->NotificationCampaign->query($sqlQuery);	
67
			$resul=$this->NotificationCampaign->query($sqlQuery);	
40
			$success_result=$this->NotificationCampaign->query($successQuery);	
68
			$success_result=$this->NotificationCampaign->query($successQuery);	
41
			array_push($checkArray, $success_result[0][0]['count']);
69
			array_push($checkArray, $success_result[0][0]['count']);
42
		}
70
		}
-
 
71
		// debug($checkArray);
43
		$finalResult = array();
72
		$finalResult = array();
44
		foreach ($resul as $key => $value) {
73
		foreach ($resul as $key => $value) {
45
			$finalResult[$value['pushnotifications']['notification_campaign_id']][$value['pushnotifications']['type']]=$value[0]['count'];
74
			$finalResult[$value['pushnotifications']['notification_campaign_id']][$value['pushnotifications']['type']]=$value[0]['count'];
46
			$finalResult[$value['pushnotifications']['notification_campaign_id']][$value['pushnotifications']['status']]=$value[0]['count'];
75
			$finalResult[$value['pushnotifications']['notification_campaign_id']][$value['pushnotifications']['status']]=$value[0]['count'];
47
			//$finalResult[$value['pushnotifications']['notification_campaign_id']][$value['pushnotifications']['type']]=$value[0]['status'];			
76
			//$finalResult[$value['pushnotifications']['notification_campaign_id']][$value['pushnotifications']['type']]=$value[0]['status'];			
48
		}
77
		}
-
 
78
		// debug($finalResult);
-
 
79
		*/
49
		$this->set('notificationWithVersionCode', $checkArray);
80
		// $this->set('notificationWithVersionCode', $checkArray);
50
		$this->set('notificationCampaigns', $vari);
81
		$this->set('notificationCampaigns', $vari);
51
		$this->set('notificationCampaignsCount', $finalResult);
82
		//$this->set('notificationCampaignsCount', $finalResult);
52
 
-
 
-
 
83
		$this->set(compact('result'));
53
	}
84
	}
54
 
85
 
55
/**
86
/**
56
 * admin_view method
87
 * admin_view method
57
 *
88
 *
Line 65... Line 96...
65
		}
96
		}
66
		$sort = $this->request->query('type');
97
		$sort = $this->request->query('type');
67
		$direction = $this->request->query('order');
98
		$direction = $this->request->query('order');
68
		$options = array('conditions' => array('NotificationCampaign.' . $this->NotificationCampaign->primaryKey => $id));
99
		$options = array('conditions' => array('NotificationCampaign.' . $this->NotificationCampaign->primaryKey => $id));
69
		$userData=$this->NotificationCampaign->find('first', $options);
100
		$userData=$this->NotificationCampaign->find('first', $options);
-
 
101
		// $userActions = array();
-
 
102
		// foreach ($userData['Pushnotification'] as $key => $value) {
-
 
103
		// 	if($value['type']=='sent'){
-
 
104
		// 	$userActions[$value['user_id']][$value['type']] = $value['created'];
-
 
105
		// 	$userActions[$value['user_id']]['status'] =$value['status'];
-
 
106
		// 	}else{
-
 
107
		// 		$userActions[$value['user_id']][$value['type']] = $value['response_time'];
-
 
108
		// 	}
-
 
109
		// 	 //debug($value);
-
 
110
		// }
-
 
111
 
70
		$userActions = array();
112
		$userActions = array();
-
 
113
		$url = Configure::read('nodeurl')."/getPushNotificationByCampaignId/?notification_campaign_id=".$id;
-
 
114
		// echo $url;
-
 
115
		$result = $this->make_request($url,null);
71
		foreach ($userData['Pushnotification'] as $key => $value) {
116
		foreach ($result as $key => $value) {
72
			if($value['type']=='sent'){
117
			if($value['type']=='sent'){
-
 
118
				$epoch = $value['created'];
-
 
119
				$dt = date('Y-m-d H:i:s', $epoch);
-
 
120
				// echo $dt->format('Y-m-d H:i:s');
73
			$userActions[$value['user_id']][$value['type']] = $value['created'];
121
				$userActions[$value['user_id']][$value['type']] = $dt;//$value['created'];
74
			$userActions[$value['user_id']]['status'] =$value['status'];
122
				$userActions[$value['user_id']]['status'] =$value['status'];
75
			}else{
123
			}else{
-
 
124
				$epoch = $value['response_time'];
-
 
125
				$dt = date('Y-m-d H:i:s', $epoch);
76
				$userActions[$value['user_id']][$value['type']] = $value['response_time'];
126
				$userActions[$value['user_id']][$value['type']] = $dt;//$value['response_time'];
77
			}
127
			}
78
			 //debug($value);
128
			 //debug($value);
79
		}
129
		}
-
 
130
		// debug($userData);
-
 
131
		// debug($result);
-
 
132
		// debug($userActions);
-
 
133
		// debug($userAct);
-
 
134
		
-
 
135
		// $this->set(compact('result'));
-
 
136
 
80
		$cid=$userData['NotificationCampaign']['id'];
137
		$cid=$userData['NotificationCampaign']['id'];
81
		$sqlQuery = "SELECT status as status,notification_campaign_id,type,count(*) as count FROM pushnotifications where notification_campaign_id=$cid group by type,status";
138
		$sqlQuery = "SELECT status as status,notification_campaign_id,type,count(*) as count FROM pushnotifications where notification_campaign_id=$cid group by type,status";
82
		$resul=$this->NotificationCampaign->query($sqlQuery);	
139
		$resul=$this->NotificationCampaign->query($sqlQuery);	
83
		$finalResult = array();
140
		$finalResult = array();	
84
		foreach ($resul as $key => $value) {
141
		foreach ($resul as $key => $value) {
85
			$finalResult[$value['pushnotifications']['notification_campaign_id']][$value['pushnotifications']['type']]=$value[0]['count'];
142
			$finalResult[$value['pushnotifications']['notification_campaign_id']][$value['pushnotifications']['type']]=$value[0]['count'];
86
			$finalResult[$value['pushnotifications']['notification_campaign_id']][$value['pushnotifications']['status']]=$value[0]['count'];
143
			$finalResult[$value['pushnotifications']['notification_campaign_id']][$value['pushnotifications']['status']]=$value[0]['count'];
87
			//$finalResult[$value['pushnotifications']['notification_campaign_id']][$value['pushnotifications']['type']]=$value[0]['status'];			
144
			//$finalResult[$value['pushnotifications']['notification_campaign_id']][$value['pushnotifications']['type']]=$value[0]['status'];			
88
		}
145
		}
89
		//debug($finalResult);
146
		
90
		$this->set('notificationData', $userData);
147
		$this->set('notificationData', $userData);
91
		$this->set('notificationCampaign', $userActions);
148
		$this->set('notificationCampaign', $userActions);
92
		$this->set('notificationCount', $finalResult);
149
		$this->set('notificationCount', $finalResult);
93
	}
150
	}
94
 
151
 
Line 151... Line 208...
151
		} else {
208
		} else {
152
			$this->Session->setFlash(__('The notification campaign could not be deleted. Please, try again.'));
209
			$this->Session->setFlash(__('The notification campaign could not be deleted. Please, try again.'));
153
		}
210
		}
154
		return $this->redirect(array('action' => 'index'));
211
		return $this->redirect(array('action' => 'index'));
155
	}
212
	}
-
 
213
	// $this->set(compact('result'));
156
	
214
	// 
157
	public function admin_show($id = null,$type=null,$status=null) {
215
	public function admin_show($id = null,$type=null,$status=null) {
158
		$sqlQuery = "SELECT * FROM pushnotifications where notification_campaign_id=$id and type='$type' and status=$status" ;
216
		// $sqlQuery = "SELECT * FROM pushnotifications where notification_campaign_id=$id and type='$type' and status=$status" ;
-
 
217
		
159
		$resul=$this->NotificationCampaign->query($sqlQuery);
218
		// $resul=$this->NotificationCampaign->query($sqlQuery1ry);
-
 
219
		$url = Configure::read('nodeurl')."/getPushNotificationDetailsByType/?type=".$type."&notification_campaign_id=".$id."&status=".$status;//remove hardcoded value
-
 
220
		// echo $url;
-
 
221
		$result = $this->make_request($url,null);
160
		
222
		
161
		$sqlQuery1 = "SELECT * FROM notification_campaigns where id=$id" ;
223
		$sqlQuery1 = "SELECT * FROM notification_campaigns where id=$id" ;
162
		$resultData=$this->NotificationCampaign->query($sqlQuery1);
224
		$resultData=$this->NotificationCampaign->query($sqlQuery1);
163
		
225
 
-
 
226
		$this->set(compact('result'));
164
		$this->set('data', $resul);
227
		// $this->set('data', $result);
165
		$this->set('notificationData', $resultData);
228
		$this->set('notificationData', $resultData);
166
	}
229
	}
167
 
230
 
168
	public function admin_user($id = null) {
231
	public function admin_user($id = null) {
169
		$sqlQuery = "SELECT * FROM pushnotifications where user_id=$id order by id desc" ;
232
		$sqlQuery = "SELECT * FROM pushnotifications where user_id=$id order by id desc" ;