| 15077 |
anikendra |
1 |
<h1>Admin Dashboard</h1>
|
| 15670 |
manas |
2 |
<?php $y=0;
|
|
|
3 |
for ($x = 0; $x < sizeof($userbase); $x++){
|
|
|
4 |
if($userbase[$x][0]['date']==$dailyVerifications[$y][0]['date']){
|
|
|
5 |
$userbase[$x][0]['verifyCount']=$dailyVerifications[$y][0]['count'];
|
|
|
6 |
$y++;
|
|
|
7 |
}else{
|
|
|
8 |
$userbase[$x][0]['verifyCount']='0';
|
|
|
9 |
}
|
|
|
10 |
}?>
|
| 15077 |
anikendra |
11 |
<div id="registrations_chart_div" style="width:1200; height:300"></div>
|
| 15654 |
anikendra |
12 |
<div id="activeusers_chart_div" style="width:1200; height:300"></div>
|
|
|
13 |
<div id="activebuyers_chart_div" style="width:1200; height:300"></div>
|
| 15077 |
anikendra |
14 |
<div id="clicks_chart_div" style="width:1200px; height:300px"></div>
|
|
|
15 |
<div id="orders_chart_div" style="width:1200px; height:300px"></div>
|
| 15093 |
anikendra |
16 |
<div id="brand_preferences_chart_div" style="width:1200px; height:300px"></div>
|
| 15128 |
anikendra |
17 |
<div class="row">
|
|
|
18 |
<div id="devices_chart_div" class="col-xs-6" style="width:400px; height:300px"></div>
|
|
|
19 |
<div id="preferences_chart_div" class="col-xs-6" style="width:400px; height:300px"></div>
|
|
|
20 |
</div>
|
| 16855 |
manas |
21 |
<div id="app_transactions_chart_div" style="width:1200px; height:300px"></div>
|
|
|
22 |
<div id="app_transactions_conversions_div" style="width:1200px; height:300px"></div>
|
| 16952 |
manas |
23 |
<div id="top_five_apps" style="width:1200px; height:300px"></div>
|
| 16855 |
manas |
24 |
|
| 15077 |
anikendra |
25 |
<script type="text/javascript" src="https://www.google.com/jsapi"></script>
|
|
|
26 |
<script type="text/javascript">
|
|
|
27 |
var dailysignups = [];
|
| 16855 |
manas |
28 |
var apptransactions=[];
|
|
|
29 |
var appconversions=[];
|
| 16945 |
anikendra |
30 |
var appinstalls=[];
|
|
|
31 |
|
|
|
32 |
<?php foreach ($appinstalls as $key => $value):?>
|
|
|
33 |
var temp = [];
|
|
|
34 |
temp.push(new Date('<?php echo $key;?>'));
|
|
|
35 |
<?php foreach ($apps as $appid => $app) :?>
|
|
|
36 |
<?php if(array_key_exists($appid, $value)):?>
|
|
|
37 |
temp.push(<?php echo $value[$appid];?>);
|
|
|
38 |
<?php else:?>
|
|
|
39 |
temp.push(0);
|
|
|
40 |
<?php endif;?>
|
|
|
41 |
<?php endforeach;?>
|
|
|
42 |
appinstalls.push(temp);
|
|
|
43 |
<?php endforeach;?>
|
| 16952 |
manas |
44 |
//console.log(appinstalls);
|
| 15077 |
anikendra |
45 |
<?php foreach ($userbase as $key => $value):?>
|
| 15670 |
manas |
46 |
var temp = [new Date('<?php echo $value[0]['date'];?>') , <?php echo $value[0]['count'];?>,<?php echo $value[0]['verifyCount'];?>];
|
| 15077 |
anikendra |
47 |
dailysignups.push(temp);
|
|
|
48 |
<?php endforeach;?>
|
| 16855 |
manas |
49 |
|
|
|
50 |
<?php foreach ($app_transactions_clicks_approved as $key => $value):?>
|
|
|
51 |
var temp1 = [new Date('<?php echo $value[0]['date'];?>') , <?php echo $value[0]['count'];?>,<?php echo $value[0]['approved'];?>];
|
|
|
52 |
apptransactions.push(temp1);
|
|
|
53 |
<?php endforeach;?>
|
|
|
54 |
|
|
|
55 |
<?php foreach ($app_transactions_percentage as $key => $value):?>
|
|
|
56 |
var temp = [new Date('<?php echo $value['x']['date'];?>'),<?php echo $value[0]['conversion'];?>];
|
|
|
57 |
appconversions.push(temp);
|
|
|
58 |
<?php endforeach;?>
|
|
|
59 |
|
| 15654 |
anikendra |
60 |
var dailyactiveusers = [];
|
|
|
61 |
<?php foreach ($activeUsers as $key => $value):?>
|
|
|
62 |
var temp = [new Date('<?php echo $value[0]['date'];?>') , <?php echo $value[0]['count'];?>];
|
|
|
63 |
dailyactiveusers.push(temp);
|
|
|
64 |
<?php endforeach;?>
|
|
|
65 |
var dailyactivebuyers = [];
|
|
|
66 |
<?php foreach ($activeBuyers as $key => $value):?>
|
|
|
67 |
var temp = [new Date('<?php echo $value[0]['date'];?>') , <?php echo $value[0]['count'];?>];
|
|
|
68 |
dailyactivebuyers.push(temp);
|
|
|
69 |
<?php endforeach;?>
|
| 15077 |
anikendra |
70 |
var dailyclicks = [];
|
|
|
71 |
<?php foreach ($clicks as $key => $value):?>
|
|
|
72 |
var temp = [new Date('<?php echo $value[0]['date'];?>') , <?php echo $value[0]['count'];?>];
|
|
|
73 |
dailyclicks.push(temp);
|
|
|
74 |
<?php endforeach;?>
|
|
|
75 |
var dailyorders = [];
|
|
|
76 |
<?php foreach ($orders as $key => $value):?>
|
|
|
77 |
var temp = [new Date('<?php echo $value[0]['date'];?>') , <?php echo $value[0]['count'];?>];
|
|
|
78 |
dailyorders.push(temp);
|
|
|
79 |
<?php endforeach;?>
|
|
|
80 |
var devices = [];
|
|
|
81 |
devices.push(['Version Code','Number of Devices']);
|
| 15607 |
anikendra |
82 |
<?php
|
|
|
83 |
foreach ($devices as $key => $value):?>
|
|
|
84 |
var temp = ["<?php echo $value['a']['versioncode'];?>" , <?php echo $value[0]['count'];?>];
|
| 15077 |
anikendra |
85 |
devices.push(temp);
|
| 15128 |
anikendra |
86 |
<?php endforeach;?>
|
| 15093 |
anikendra |
87 |
var brandpreferences = [];
|
|
|
88 |
<?php foreach ($preferences_set as $key => $value):?>
|
| 15128 |
anikendra |
89 |
var temp = [new Date("<?php echo $value[0]['date'];?>") , <?php echo $value[0]['count'];?>];
|
| 15093 |
anikendra |
90 |
brandpreferences.push(temp);
|
|
|
91 |
<?php endforeach;?>
|
| 15128 |
anikendra |
92 |
var preferences = [];
|
| 15193 |
anikendra |
93 |
preferences.push(['Preferences','Yes','No']);
|
|
|
94 |
preferences.push(['Brands',<?php echo $usersWithBrandPreferencesSet[0][0]['count'];?>,<?php echo ($totalUsers[0][0]['count'] - $usersWithBrandPreferencesSet[0][0]['count']);?>]);
|
| 15128 |
anikendra |
95 |
|
|
|
96 |
google.load('visualization', '1', {packages: ['corechart', 'line']});
|
| 15077 |
anikendra |
97 |
google.setOnLoadCallback(drawBasic);
|
|
|
98 |
|
|
|
99 |
function drawBasic() {
|
|
|
100 |
var data = new google.visualization.DataTable();
|
|
|
101 |
data.addColumn('date', 'Date');
|
|
|
102 |
data.addColumn('number', 'Signups');
|
| 15670 |
manas |
103 |
data.addColumn('number', 'Verifications');
|
| 15077 |
anikendra |
104 |
data.addRows(dailysignups);
|
|
|
105 |
var options1 = {
|
|
|
106 |
hAxis: {
|
|
|
107 |
title: 'Date',
|
|
|
108 |
},
|
|
|
109 |
vAxis: {
|
| 15128 |
anikendra |
110 |
title: 'Daily User activations'
|
| 15077 |
anikendra |
111 |
}
|
|
|
112 |
};
|
|
|
113 |
|
|
|
114 |
var chart1 = new google.visualization.LineChart(document.getElementById('registrations_chart_div'));
|
|
|
115 |
chart1.draw(data, options1);
|
|
|
116 |
|
| 16952 |
manas |
117 |
var topFive = new google.visualization.DataTable();
|
|
|
118 |
topFive.addColumn('date', 'Date');
|
|
|
119 |
<?php foreach ($apps as $key => $value):?>
|
|
|
120 |
topFive.addColumn('number',' <?php echo($value);?>');
|
|
|
121 |
<?php endforeach?>
|
|
|
122 |
topFive.addRows(appinstalls);
|
|
|
123 |
var options10 = {
|
|
|
124 |
hAxis: {
|
|
|
125 |
title: 'Date',
|
|
|
126 |
},
|
|
|
127 |
vAxis: {
|
| 16972 |
manas |
128 |
title: 'Top Five Apps'
|
| 16952 |
manas |
129 |
}
|
|
|
130 |
};
|
|
|
131 |
|
|
|
132 |
var chartTopFive = new google.visualization.LineChart(document.getElementById('top_five_apps'));
|
|
|
133 |
chartTopFive.draw(topFive,options10);
|
|
|
134 |
|
| 15077 |
anikendra |
135 |
var clicksdata = new google.visualization.DataTable();
|
|
|
136 |
clicksdata.addColumn('date', 'Date');
|
|
|
137 |
clicksdata.addColumn('number', 'Clicks');
|
|
|
138 |
clicksdata.addRows(dailyclicks);
|
|
|
139 |
var options2 = {
|
|
|
140 |
hAxis: {
|
|
|
141 |
title: 'Date',
|
|
|
142 |
},
|
|
|
143 |
vAxis: {
|
| 15128 |
anikendra |
144 |
title: 'Daily clicks'
|
| 15077 |
anikendra |
145 |
}
|
|
|
146 |
};
|
|
|
147 |
|
| 15654 |
anikendra |
148 |
var data = new google.visualization.DataTable();
|
|
|
149 |
data.addColumn('date', 'Date');
|
|
|
150 |
data.addColumn('number', 'Active Users');
|
|
|
151 |
data.addRows(dailyactiveusers);
|
|
|
152 |
var options_dau = {
|
|
|
153 |
hAxis: {
|
|
|
154 |
title: 'Date',
|
|
|
155 |
},
|
|
|
156 |
vAxis: {
|
|
|
157 |
title: 'Daily Active Users'
|
|
|
158 |
}
|
|
|
159 |
};
|
|
|
160 |
var chart_dau = new google.visualization.LineChart(document.getElementById('activeusers_chart_div'));
|
|
|
161 |
chart_dau.draw(data, options_dau);
|
|
|
162 |
|
|
|
163 |
var data = new google.visualization.DataTable();
|
|
|
164 |
data.addColumn('date', 'Date');
|
|
|
165 |
data.addColumn('number', 'Active Buyers');
|
|
|
166 |
data.addRows(dailyactivebuyers);
|
|
|
167 |
var options_dab = {
|
|
|
168 |
hAxis: {
|
|
|
169 |
title: 'Date',
|
|
|
170 |
},
|
|
|
171 |
vAxis: {
|
|
|
172 |
title: 'Daily Active Buyers'
|
|
|
173 |
}
|
|
|
174 |
};
|
|
|
175 |
var chart_dau = new google.visualization.LineChart(document.getElementById('activebuyers_chart_div'));
|
|
|
176 |
chart_dau.draw(data, options_dab);
|
|
|
177 |
|
| 16855 |
manas |
178 |
var appData = new google.visualization.DataTable();
|
|
|
179 |
appData.addColumn('date', 'Date');
|
|
|
180 |
appData.addColumn('number', 'Clicks');
|
|
|
181 |
appData.addColumn('number', 'Approved');
|
|
|
182 |
appData.addRows(apptransactions);
|
|
|
183 |
var options7 = {
|
|
|
184 |
hAxis: {
|
|
|
185 |
title: 'Date',
|
|
|
186 |
},
|
|
|
187 |
vAxis: {
|
|
|
188 |
title: 'Daily User Clicks and Conversion'
|
|
|
189 |
}
|
|
|
190 |
};
|
|
|
191 |
|
|
|
192 |
var chart7 = new google.visualization.LineChart(document.getElementById('app_transactions_chart_div'));
|
|
|
193 |
chart7.draw(appData, options7);
|
|
|
194 |
|
|
|
195 |
var appConversionData = new google.visualization.DataTable();
|
|
|
196 |
appConversionData.addColumn('date', 'Date');
|
|
|
197 |
appConversionData.addColumn('number', 'Conversion');
|
|
|
198 |
appConversionData.addRows(appconversions);
|
|
|
199 |
var options8 = {
|
|
|
200 |
hAxis: {
|
|
|
201 |
title: 'Date',
|
|
|
202 |
},
|
|
|
203 |
vAxis: {
|
|
|
204 |
title: 'Daily Conversion (In %s)'
|
|
|
205 |
}
|
|
|
206 |
};
|
|
|
207 |
|
|
|
208 |
var chart8 = new google.visualization.LineChart(document.getElementById('app_transactions_conversions_div'));
|
|
|
209 |
chart8.draw(appConversionData, options8);
|
|
|
210 |
|
|
|
211 |
|
| 15654 |
anikendra |
212 |
var clicksdata = new google.visualization.DataTable();
|
|
|
213 |
clicksdata.addColumn('date', 'Date');
|
|
|
214 |
clicksdata.addColumn('number', 'Clicks');
|
|
|
215 |
clicksdata.addRows(dailyclicks);
|
|
|
216 |
var options2 = {
|
|
|
217 |
hAxis: {
|
|
|
218 |
title: 'Date',
|
|
|
219 |
},
|
|
|
220 |
vAxis: {
|
|
|
221 |
title: 'Daily clicks'
|
|
|
222 |
}
|
|
|
223 |
};
|
|
|
224 |
|
| 15077 |
anikendra |
225 |
var chart2 = new google.visualization.LineChart(document.getElementById('clicks_chart_div'));
|
|
|
226 |
chart2.draw(clicksdata, options2);
|
|
|
227 |
|
|
|
228 |
var ordersdata = new google.visualization.DataTable();
|
|
|
229 |
ordersdata.addColumn('date', 'Date');
|
|
|
230 |
ordersdata.addColumn('number', 'Orders');
|
|
|
231 |
ordersdata.addRows(dailyorders);
|
|
|
232 |
var options3 = {
|
|
|
233 |
hAxis: {
|
|
|
234 |
title: 'Date',
|
|
|
235 |
},
|
|
|
236 |
vAxis: {
|
| 15128 |
anikendra |
237 |
title: 'Daily orders'
|
| 15077 |
anikendra |
238 |
}
|
|
|
239 |
};
|
|
|
240 |
|
|
|
241 |
var chart3 = new google.visualization.LineChart(document.getElementById('orders_chart_div'));
|
|
|
242 |
chart3.draw(ordersdata, options3);
|
|
|
243 |
|
| 15093 |
anikendra |
244 |
|
|
|
245 |
var brandpreferencesdata = new google.visualization.DataTable();
|
|
|
246 |
brandpreferencesdata.addColumn('date', 'Date');
|
|
|
247 |
brandpreferencesdata.addColumn('number', 'Brand Preferences Set');
|
| 15128 |
anikendra |
248 |
brandpreferencesdata.addRows(brandpreferences);
|
| 15093 |
anikendra |
249 |
var options5 = {
|
|
|
250 |
hAxis: {
|
|
|
251 |
title: 'Date',
|
|
|
252 |
},
|
|
|
253 |
vAxis: {
|
| 15128 |
anikendra |
254 |
title: 'Daily brand preferences'
|
| 15093 |
anikendra |
255 |
}
|
|
|
256 |
};
|
|
|
257 |
|
|
|
258 |
var chart5 = new google.visualization.LineChart(document.getElementById('brand_preferences_chart_div'));
|
|
|
259 |
chart5.draw(brandpreferencesdata, options5);
|
|
|
260 |
|
|
|
261 |
|
| 15128 |
anikendra |
262 |
var devicesdata = google.visualization.arrayToDataTable(devices);
|
|
|
263 |
var options4 = {
|
|
|
264 |
title: 'Version Codes'
|
|
|
265 |
};
|
|
|
266 |
var chart4 = new google.visualization.PieChart(document.getElementById('devices_chart_div'));
|
|
|
267 |
chart4.draw(devicesdata, options4);
|
|
|
268 |
|
|
|
269 |
var preferencesdata = google.visualization.arrayToDataTable(preferences);
|
| 15193 |
anikendra |
270 |
// var options6 = {
|
|
|
271 |
// title: 'Preferences Set'
|
|
|
272 |
// };
|
| 15128 |
anikendra |
273 |
var options6 = {
|
| 15193 |
anikendra |
274 |
title: 'Preferences Set',
|
|
|
275 |
chartArea: {width: '50%'},
|
|
|
276 |
isStacked: true,
|
|
|
277 |
hAxis: {
|
|
|
278 |
title: 'Total Users',
|
|
|
279 |
minValue: 0,
|
|
|
280 |
},
|
|
|
281 |
vAxis: {
|
|
|
282 |
title: 'Type'
|
|
|
283 |
}
|
| 15128 |
anikendra |
284 |
};
|
| 15193 |
anikendra |
285 |
var chart6 = new google.visualization.BarChart(document.getElementById('preferences_chart_div'));
|
| 15128 |
anikendra |
286 |
chart6.draw(preferencesdata, options6);
|
| 15077 |
anikendra |
287 |
}
|
| 16945 |
anikendra |
288 |
</script>
|