Merge pull request #5263 from samuelsov/CRM-15947
[civicrm-core.git] / CRM / Member / Page / DashBoard.php
CommitLineData
6a488035
TO
1<?php
2/*
3 +--------------------------------------------------------------------+
39de6fd5 4 | CiviCRM version 4.6 |
6a488035 5 +--------------------------------------------------------------------+
06b69b18 6 | Copyright CiviCRM LLC (c) 2004-2014 |
6a488035
TO
7 +--------------------------------------------------------------------+
8 | This file is a part of CiviCRM. |
9 | |
10 | CiviCRM is free software; you can copy, modify, and distribute it |
11 | under the terms of the GNU Affero General Public License |
12 | Version 3, 19 November 2007 and the CiviCRM Licensing Exception. |
13 | |
14 | CiviCRM is distributed in the hope that it will be useful, but |
15 | WITHOUT ANY WARRANTY; without even the implied warranty of |
16 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. |
17 | See the GNU Affero General Public License for more details. |
18 | |
19 | You should have received a copy of the GNU Affero General Public |
20 | License and the CiviCRM Licensing Exception along |
21 | with this program; if not, contact CiviCRM LLC |
22 | at info[AT]civicrm[DOT]org. If you have questions about the |
23 | GNU Affero General Public License or the licensing of CiviCRM, |
24 | see the CiviCRM license FAQ at http://civicrm.org/licensing |
25 +--------------------------------------------------------------------+
d25dd0ee 26 */
6a488035
TO
27
28/**
29 *
30 * @package CRM
06b69b18 31 * @copyright CiviCRM LLC (c) 2004-2014
6a488035
TO
32 * $Id$
33 *
34 */
35
36/**
37 * Page for displaying list of Payment-Instrument
38 */
39class CRM_Member_Page_DashBoard extends CRM_Core_Page {
40
41 /**
42 * Heart of the viewing process. The runner gets all the meta data for
43 * the contact and calls the appropriate type of page to view.
44 *
45 * @return void
6a488035 46 */
00be9182 47 public function preProcess() {
46c91013
E
48
49 //CRM-13901 don't show dashboard to contacts with limited view writes & it does not relect
50 //what they have access to
51 //@todo implement acls on dashboard querys (preferably via api to enhance that at the same time)
22e263ad 52 if (!CRM_Core_Permission::check(array('view all contacts', 'edit all contacts'))) {
46c91013
E
53 $this->showMembershipSummary = FALSE;
54 $this->assign('membershipSummary', FALSE);
55 return;
56 }
57 $this->assign('membershipSummary', TRUE);
6a488035
TO
58 CRM_Utils_System::setTitle(ts('CiviMember'));
59 $membershipSummary = array();
4e636a74
AH
60 $preMonth = date("Y-m-d", mktime(0, 0, 0, date("m") - 1, 01, date("Y")));
61 $preMonthEnd = date("Y-m-t", mktime(0, 0, 0, date("m") - 1, 01, date("Y")));
6a488035
TO
62
63 $preMonthYear = mktime(0, 0, 0, substr($preMonth, 4, 2), 1, substr($preMonth, 0, 4));
64
4e636a74
AH
65 $today = getdate();
66 $date = CRM_Utils_Date::getToday();
6a488035
TO
67 $isCurrentMonth = 0;
68
4e636a74 69 // You can force the dashboard to display based upon a certain date
6a488035 70 $ym = CRM_Utils_Array::value('date', $_GET);
8ef12e64 71
6a488035
TO
72 if ($ym) {
73 if (preg_match('/^\d{6}$/', $ym) == 0 ||
74 !checkdate(substr($ym, 4, 2), 1, substr($ym, 0, 4)) ||
75 substr($ym, 0, 1) == 0
76 ) {
77 CRM_Core_Error::fatal(ts('Invalid date query "%1" in URL (valid syntax is yyyymm).', array(1 => $ym)));
78 }
79
80 $isPreviousMonth = 0;
4e636a74
AH
81 $isCurrentMonth = substr($ym, 0, 4) == $today['year'] && substr($ym, 4, 2) == $today['mon'];
82 $ymd = date('Y-m-d', mktime(0, 0, -1, substr($ym, 4, 2) + 1, 1, substr($ym, 0, 4)));
83 $monthStartTs = mktime(0, 0, 0, substr($ym, 4, 2), 1, substr($ym, 0, 4));
84 $current = CRM_Utils_Date::customFormat($date, '%Y-%m-%d');
85 $ym = substr($ym, 0, 4) . '-' . substr($ym, 4, 2);
6a488035
TO
86 }
87 else {
4e636a74
AH
88 $ym = sprintf("%04d-%02d", $today['year'], $today['mon']);
89 $ymd = sprintf("%04d-%02d-%02d", $today['year'], $today['mon'], $today['mday']);
90 $monthStartTs = mktime(0, 0, 0, $today['mon'], 1, $today['year']);
91 $current = CRM_Utils_Date::customFormat($date, '%Y-%m-%d');
92 $isCurrentMonth = 1;
6a488035
TO
93 $isPreviousMonth = 1;
94 }
4e636a74
AH
95 $monthStart = $ym . '-01';
96 $yearStart = substr($ym, 0, 4) . '-01-01';
6a488035
TO
97
98 $membershipTypes = CRM_Member_BAO_MembershipType::getMembershipTypes(FALSE);
99 // added
100 //$membership = new CRM_Member_BAO_Membership;
101
102 foreach ($membershipTypes as $key => $value) {
103
b09fe5ed 104 $membershipSummary[$key]['premonth']['new'] = array(
353ffa53 105 'count' => CRM_Member_BAO_Membership::getMembershipJoins($key, $preMonth, $preMonthEnd),
6a488035
TO
106 'name' => $value,
107 );
108
b09fe5ed 109 $membershipSummary[$key]['premonth']['renew'] = array(
353ffa53 110 'count' => CRM_Member_BAO_Membership::getMembershipRenewals($key, $preMonth, $preMonthEnd),
6a488035
TO
111 'name' => $value,
112 );
113
b09fe5ed 114 $membershipSummary[$key]['premonth']['total'] = array(
353ffa53 115 'count' => CRM_Member_BAO_Membership::getMembershipStarts($key, $preMonth, $preMonthEnd),
6a488035
TO
116 'name' => $value,
117 );
118
b09fe5ed 119 $membershipSummary[$key]['month']['new'] = array(
353ffa53 120 'count' => CRM_Member_BAO_Membership::getMembershipJoins($key, $monthStart, $ymd),
6a488035
TO
121 'name' => $value,
122 );
123
b09fe5ed 124 $membershipSummary[$key]['month']['renew'] = array(
353ffa53 125 'count' => CRM_Member_BAO_Membership::getMembershipRenewals($key, $monthStart, $ymd),
6a488035
TO
126 'name' => $value,
127 );
128
b09fe5ed 129 $membershipSummary[$key]['month']['total'] = array(
353ffa53 130 'count' => CRM_Member_BAO_Membership::getMembershipStarts($key, $monthStart, $ymd),
6a488035
TO
131 'name' => $value,
132 );
133
b09fe5ed 134 $membershipSummary[$key]['year']['new'] = array(
353ffa53 135 'count' => CRM_Member_BAO_Membership::getMembershipJoins($key, $yearStart, $ymd),
6a488035
TO
136 'name' => $value,
137 );
138
b09fe5ed 139 $membershipSummary[$key]['year']['renew'] = array(
353ffa53 140 'count' => CRM_Member_BAO_Membership::getMembershipRenewals($key, $yearStart, $ymd),
6a488035
TO
141 'name' => $value,
142 );
143
b09fe5ed 144 $membershipSummary[$key]['year']['total'] = array(
353ffa53 145 'count' => CRM_Member_BAO_Membership::getMembershipStarts($key, $yearStart, $ymd),
6a488035
TO
146 'name' => $value,
147 );
148
b09fe5ed 149 $membershipSummary[$key]['current']['total'] = array(
353ffa53 150 'count' => CRM_Member_BAO_Membership::getMembershipCount($key, $current),
6a488035
TO
151 'name' => $value,
152 );
153
154 $membershipSummary[$key]['total']['total'] = array('count' => CRM_Member_BAO_Membership::getMembershipCount($key, $ymd));
155
156 //LCD also get summary stats for membership owners
b09fe5ed 157 $membershipSummary[$key]['premonth_owner']['premonth_owner'] = array(
353ffa53 158 'count' => CRM_Member_BAO_Membership::getMembershipStarts($key, $preMonth, $preMonthEnd, 0, 1),
6a488035
TO
159 'name' => $value,
160 );
161
b09fe5ed 162 $membershipSummary[$key]['month_owner']['month_owner'] = array(
353ffa53 163 'count' => CRM_Member_BAO_Membership::getMembershipStarts($key, $monthStart, $ymd, 0, 1),
6a488035
TO
164 'name' => $value,
165 );
166
b09fe5ed 167 $membershipSummary[$key]['year_owner']['year_owner'] = array(
353ffa53 168 'count' => CRM_Member_BAO_Membership::getMembershipStarts($key, $yearStart, $ymd, 0, 1),
6a488035
TO
169 'name' => $value,
170 );
171
b09fe5ed 172 $membershipSummary[$key]['current_owner']['current_owner'] = array(
353ffa53 173 'count' => CRM_Member_BAO_Membership::getMembershipCount($key, $current, 0, 1),
6a488035
TO
174 'name' => $value,
175 );
176
177 $membershipSummary[$key]['total_owner']['total_owner'] = array('count' => CRM_Member_BAO_Membership::getMembershipCount($key, $ymd, 0, 1));
178 //LCD end
179 }
180
6a488035
TO
181 $status = CRM_Member_BAO_MembershipStatus::getMembershipStatusCurrent();
182 $status = implode(',', $status);
183
e70a7fc0
TO
184 /*@codingStandardsIgnoreStart
185 Disabled for lack of appropriate search
8ef12e64 186
4e636a74
AH
187 The Membership search isn't able to properly filter by join or renewal events.
188 Until that works properly, the subtotals shouldn't get links.
8ef12e64 189
6a488035
TO
190 foreach ($membershipSummary as $typeID => $details) {
191 foreach ($details as $key => $value) {
192 switch ($key) {
193 case 'premonth':
194 $membershipSummary[$typeID][$key]['new']['url'] = CRM_Utils_System::url('civicrm/member/search', "reset=1&force=1&status=$status&type=$typeID&join=$preMonth&joinEnd=$preMonthEnd&start=$preMonth&end=$preMonthEnd");
195 $membershipSummary[$typeID][$key]['renew']['url'] = CRM_Utils_System::url('civicrm/member/search', "reset=1&force=1&status=$status&type=$typeID&joinEnd=$prePreMonthEnd&start=$preMonth&end=$preMonthEnd");
196 $membershipSummary[$typeID][$key]['total']['url'] = CRM_Utils_System::url('civicrm/member/search', "reset=1&force=1&status=$status&type=$typeID&start=$preMonth&end=$preMonthEnd");
197 break;
198
199 case 'month':
200 $membershipSummary[$typeID][$key]['new']['url'] = CRM_Utils_System::url('civicrm/member/search', "reset=1&force=1&status=$status&type=$typeID&join=$monthStart&joinEnd=$ymd&start=$monthStart&end=$ymd");
201 $membershipSummary[$typeID][$key]['renew']['url'] = CRM_Utils_System::url('civicrm/member/search', "reset=1&force=1&status=$status&type=$typeID&joinEnd=$preMonthStart&start=$monthStart&end=$ymd");
202 $membershipSummary[$typeID][$key]['total']['url'] = CRM_Utils_System::url('civicrm/member/search', "reset=1&force=1&status=$status&type=$typeID&start=$monthStart&end=$ymd");
203 break;
204
205 case 'year':
206 $membershipSummary[$typeID][$key]['new']['url'] = CRM_Utils_System::url('civicrm/member/search', "reset=1&force=1&status=$status&type=$typeID&join=$yearStart&joinEnd=$ymd&start=$yearStart&end=$ymd");
207 $membershipSummary[$typeID][$key]['renew']['url'] = CRM_Utils_System::url('civicrm/member/search', "reset=1&force=1&status=$status&type=$typeID&joinEnd=$preYearStart&start=$yearStart&end=$ymd");
208 $membershipSummary[$typeID][$key]['total']['url'] = CRM_Utils_System::url('civicrm/member/search', "reset=1&force=1&status=$status&type=$typeID&start=$yearStart&end=$ymd");
209 break;
210
211 case 'current':
212 $membershipSummary[$typeID][$key]['total']['url'] = CRM_Utils_System::url('civicrm/member/search', "reset=1&force=1&status=$status&type=$typeID");
213 break;
214
215 case 'total':
216 if (!$isCurrentMonth) {
217 $membershipSummary[$typeID][$key]['total']['url'] = CRM_Utils_System::url('civicrm/member/search',
218 "reset=1&force=1&start=&end=$ymd&status=$status&type=$typeID"
219 );
220 }
221 else {
222 $membershipSummary[$typeID][$key]['total']['url'] = CRM_Utils_System::url('civicrm/member/search',
223 "reset=1&force=1&status=$status"
224 );
225 }
226 break;
227
228 //LCD add owner urls
229
230 case 'premonth_owner':
231 $membershipSummary[$typeID][$key]['premonth_owner']['url'] = CRM_Utils_System::url('civicrm/member/search', "reset=1&force=1&status=$status&type=$typeID&start=$preMonth&end=$preMonthEnd&owner=1");
232 break;
233
234 case 'month_owner':
235 $membershipSummary[$typeID][$key]['month_owner']['url'] = CRM_Utils_System::url('civicrm/member/search', "reset=1&force=1&status=$status&type=$typeID&start=$monthStart&end=$ymd&owner=1");
236 break;
237
238 case 'year_owner':
239 $membershipSummary[$typeID][$key]['year_owner']['url'] = CRM_Utils_System::url('civicrm/member/search', "reset=1&force=1&status=$status&type=$typeID&start=$yearStart&end=$ymd&owner=1");
240 break;
241
242 case 'current_owner':
243 $membershipSummary[$typeID][$key]['current_owner']['url'] = CRM_Utils_System::url('civicrm/member/search', "reset=1&force=1&status=$status&type=$typeID&owner=1");
244 break;
245
246 case 'total_owner':
247 if (!$isCurrentMonth) {
248 $membershipSummary[$typeID][$key]['total_owner']['url'] = CRM_Utils_System::url('civicrm/member/search', "reset=1&force=1&start=&end=$ymd&status=$status&type=$typeID&owner=1");
249 }
250 else {
251 $membershipSummary[$typeID][$key]['total_owner']['url'] = CRM_Utils_System::url('civicrm/member/search', "reset=1&force=1&status=$status&owner=1");
252 }
253 break;
254 //LCD end
255 }
256 }
257 }
e70a7fc0 258 @codingStandardsIgnoreEnd */
8ef12e64 259
4e636a74 260 // Temporary replacement for current totals column
8ef12e64 261
4e636a74
AH
262 foreach ($membershipSummary as $typeID => $details) {
263 if (!$isCurrentMonth) {
264 $membershipSummary[$typeID]['total']['total']['url'] = CRM_Utils_System::url('civicrm/member/search',
265 "reset=1&force=1&start=&end=$ymd&status=$status&type=$typeID"
266 );
267 $membershipSummary[$typeID]['total_owner']['total_owner']['url'] = CRM_Utils_System::url('civicrm/member/search', "reset=1&force=1&start=&end=$ymd&status=$status&type=$typeID&owner=1");
268 }
269 else {
270 $membershipSummary[$typeID]['total']['total']['url'] = CRM_Utils_System::url('civicrm/member/search',
271 "reset=1&force=1&status=$status"
272 );
273 $membershipSummary[$typeID]['total_owner']['total_owner']['url'] = CRM_Utils_System::url('civicrm/member/search', "reset=1&force=1&status=$status&owner=1");
274 }
275 $membershipSummary[$typeID]['current']['total']['url'] = CRM_Utils_System::url('civicrm/member/search', "reset=1&force=1&status=$status&type=$typeID");
276 $membershipSummary[$typeID]['current_owner']['current_owner']['url'] = CRM_Utils_System::url('civicrm/member/search', "reset=1&force=1&status=$status&type=$typeID&owner=1");
277 }
6a488035
TO
278
279 $totalCount = array();
280
281 $newCountPreMonth = $newCountMonth = $newCountYear = 0;
282 $renewCountPreMonth = $renewCountMonth = $renewCountYear = 0;
283
284 $totalCountPreMonth = $totalCountMonth = $totalCountYear = $totalCountCurrent = $totalCountTotal = 0;
285 $totalCountPreMonth_owner = $totalCountMonth_owner = $totalCountYear_owner = $totalCountCurrent_owner = $totalCountTotal_owner = 0;
286 foreach ($membershipSummary as $key => $value) {
353ffa53 287 $newCountPreMonth = $newCountPreMonth + $value['premonth']['new']['count'];
6a488035
TO
288 $renewCountPreMonth = $renewCountPreMonth + $value['premonth']['renew']['count'];
289 $totalCountPreMonth = $totalCountPreMonth + $value['premonth']['total']['count'];
353ffa53
TO
290 $newCountMonth = $newCountMonth + $value['month']['new']['count'];
291 $renewCountMonth = $renewCountMonth + $value['month']['renew']['count'];
292 $totalCountMonth = $totalCountMonth + $value['month']['total']['count'];
293 $newCountYear = $newCountYear + $value['year']['new']['count'];
294 $renewCountYear = $renewCountYear + $value['year']['renew']['count'];
295 $totalCountYear = $totalCountYear + $value['year']['total']['count'];
296 $totalCountCurrent = $totalCountCurrent + $value['current']['total']['count'];
297 $totalCountTotal = $totalCountTotal + $value['total']['total']['count'];
6a488035
TO
298
299 //LCD add owner values
300 $totalCountPreMonth_owner = $totalCountPreMonth_owner + $value['premonth_owner']['premonth_owner']['count'];
301 $totalCountMonth_owner = $totalCountMonth_owner + $value['month_owner']['month_owner']['count'];
302 $totalCountYear_owner = $totalCountYear_owner + $value['year_owner']['year_owner']['count'];
303 $totalCountCurrent_owner = $totalCountCurrent_owner + $value['current_owner']['current_owner']['count'];
304 $totalCountTotal_owner = $totalCountTotal_owner + $value['total_owner']['total_owner']['count'];
305 }
306
307 $totalCount['premonth']['new'] = array(
308 'count' => $newCountPreMonth,
0370ad20
AH
309 //'url' => CRM_Utils_System::url('civicrm/activity/search',
310 // "reset=1&force=1&signupType=1&dateLow=$preMonth&dateHigh=$preMonthEnd"
311 //),
6a488035
TO
312 );
313
314 $totalCount['premonth']['renew'] = array(
315 'count' => $renewCountPreMonth,
0370ad20
AH
316 //'url' => CRM_Utils_System::url('civicrm/activity/search',
317 // "reset=1&force=1&signupType=2&dateLow=$preMonth&dateHigh=$preMonthEnd"
318 //),
6a488035
TO
319 );
320
321 $totalCount['premonth']['total'] = array(
322 'count' => $totalCountPreMonth,
0370ad20
AH
323 //'url' => CRM_Utils_System::url('civicrm/activity/search',
324 // "reset=1&force=1&signupType=3&dateLow=$preMonth&dateHigh=$preMonthEnd"
325 //),
6a488035
TO
326 );
327
328 $totalCount['month']['new'] = array(
329 'count' => $newCountMonth,
0370ad20
AH
330 //'url' => CRM_Utils_System::url('civicrm/activity/search',
331 // "reset=1&force=1&signupType=1&dateLow=$monthStart&dateHigh=$ymd"
332 //),
6a488035
TO
333 );
334
335 $totalCount['month']['renew'] = array(
336 'count' => $renewCountMonth,
0370ad20
AH
337 //'url' => CRM_Utils_System::url('civicrm/activity/search',
338 // "reset=1&force=1&signupType=2&dateLow=$monthStart&dateHigh=$ymd"
339 //),
6a488035
TO
340 );
341
342 $totalCount['month']['total'] = array(
343 'count' => $totalCountMonth,
0370ad20
AH
344 //'url' => CRM_Utils_System::url('civicrm/activity/search',
345 // "reset=1&force=1&signupType=3&dateLow=$monthStart&dateHigh=$ymd"
346 //),
6a488035
TO
347 );
348
349 $totalCount['year']['new'] = array(
350 'count' => $newCountYear,
0370ad20
AH
351 //'url' => CRM_Utils_System::url('civicrm/activity/search',
352 // "reset=1&force=1&signupType=1&dateLow=$yearStart&dateHigh=$ymd"
353 //),
6a488035
TO
354 );
355
356 $totalCount['year']['renew'] = array(
357 'count' => $renewCountYear,
0370ad20
AH
358 //'url' => CRM_Utils_System::url('civicrm/activity/search',
359 // "reset=1&force=1&signupType=2&dateLow=$yearStart&dateHigh=$ymd"
360 //),
6a488035
TO
361 );
362
363 $totalCount['year']['total'] = array(
364 'count' => $totalCountYear,
0370ad20
AH
365 //'url' => CRM_Utils_System::url('civicrm/activity/search',
366 // "reset=1&force=1&signupType=3&dateLow=$yearStart&dateHigh=$ymd"
367 //),
6a488035
TO
368 );
369
370 $totalCount['current']['total'] = array(
371 'count' => $totalCountCurrent,
372 'url' => CRM_Utils_System::url('civicrm/member/search',
373 "reset=1&force=1&status=$status"
374 ),
375 );
376
377 $totalCount['total']['total'] = array(
378 'count' => $totalCountTotal,
379 'url' => CRM_Utils_System::url('civicrm/member/search',
380 "reset=1&force=1&status=$status"
381 ),
382 );
383
384 if (!$isCurrentMonth) {
385 $totalCount['total']['total'] = array(
386 'count' => $totalCountTotal,
387 'url' => CRM_Utils_System::url('civicrm/member/search',
388 "reset=1&force=1&status=$status&start=&end=$ymd"
389 ),
390 );
391 }
392
4e636a74
AH
393 // Activity search also unable to handle owner vs. inherited
394
6a488035
TO
395 //LCD add owner values
396 $totalCount['premonth_owner']['premonth_owner'] = array(
397 'count' => $totalCountPreMonth_owner,
353ffa53 398 // 'url' => CRM_Utils_System::url('civicrm/member/search', "reset=1&force=1&status=$status&start=$preMonth&end=$preMonthEnd&owner=1"),
6a488035
TO
399 );
400
401 $totalCount['month_owner']['month_owner'] = array(
402 'count' => $totalCountMonth_owner,
353ffa53 403 // 'url' => CRM_Utils_System::url('civicrm/member/search', "reset=1&force=1&status=$status&start=$monthStart&end=$ymd&owner=1"),
6a488035
TO
404 );
405
406 $totalCount['year_owner']['year_owner'] = array(
407 'count' => $totalCountYear_owner,
353ffa53 408 // 'url' => CRM_Utils_System::url('civicrm/member/search', "reset=1&force=1&status=$status&start=$yearStart&end=$ymd&owner=1"),
6a488035
TO
409 );
410
411 $totalCount['current_owner']['current_owner'] = array(
412 'count' => $totalCountCurrent_owner,
353ffa53 413 // 'url' => CRM_Utils_System::url('civicrm/member/search', "reset=1&force=1&status=$status&owner=1"),
6a488035
TO
414 );
415
416 $totalCount['total_owner']['total_owner'] = array(
417 'count' => $totalCountTotal_owner,
353ffa53 418 // 'url' => CRM_Utils_System::url('civicrm/member/search', "reset=1&force=1&status=$status&owner=1"),
6a488035
TO
419 );
420
421 if (!$isCurrentMonth) {
422 $totalCount['total_owner']['total_owner'] = array(
423 'count' => $totalCountTotal_owner,
353ffa53 424 // 'url' => CRM_Utils_System::url('civicrm/member/search', "reset=1&force=1&status=$status&start=&end=$ymd&owner=1"),
6a488035
TO
425 );
426 }
427 //LCD end
428
429 $this->assign('membershipSummary', $membershipSummary);
430 $this->assign('totalCount', $totalCount);
431 $this->assign('month', date('F', $monthStartTs));
432 $this->assign('year', date('Y', $monthStartTs));
0370ad20 433 $this->assign('premonth', date('F', strtotime($preMonth)));
6a488035
TO
434 $this->assign('currentMonth', date('F'));
435 $this->assign('currentYear', date('Y'));
436 $this->assign('isCurrent', $isCurrentMonth);
437 $this->assign('preMonth', $isPreviousMonth);
438 }
439
440 /**
dc195289 441 * the main function that is called when the page loads,
6a488035
TO
442 * it decides the which action has to be taken for the page.
443 *
76e7a76c 444 * @return null
6a488035 445 */
00be9182 446 public function run() {
6a488035
TO
447 $this->preProcess();
448
449 $controller = new CRM_Core_Controller_Simple('CRM_Member_Form_Search', ts('Member'), NULL);
450 $controller->setEmbedded(TRUE);
451 $controller->reset();
452 $controller->set('limit', 20);
453 $controller->set('force', 1);
454 $controller->set('context', 'dashboard');
455 $controller->process();
456 $controller->run();
457
458 return parent::run();
459 }
96025800 460
6a488035 461}