public function subscribersAction()
 {
     $rmonth = "";
     $ryear = "";
     $seereportby = $this->request->getParam('reportby');
     if ($this->request->getParam('searchvaluehide') != '') {
         $searchvalue = $this->request->getParam('searchvaluehide');
     } else {
         $searchvalue = $this->request->getParam('searchvalue');
     }
     if ($seereportby == "month") {
         $rmonth = $this->request->getParam('monthMessageReport');
         $ryear = $this->request->getParam('yearMessageReport');
         if ($rmonth == 0 or $ryear == 0) {
             $monthstartdate = 0;
             $monthenddate = 0;
         } else {
             $monthstartdate = $ryear . "-" . $rmonth . "-1 00:00:00";
             $monthenddate = $ryear . "-" . $rmonth . "-30 00:00:00";
         }
     } elseif ($seereportby == "date") {
         $monthstartdate = date("Y-m-d", strtotime($this->request->getParam('starttime')));
         $monthenddate = date("Y-m-d", strtotime($this->request->getParam('endtime')));
     } elseif ($seereportby == "") {
         $monthstartdate = date('Y') . "-" . date('m') . "-1 00:00:00";
         $monthenddate = date('Y') . "-" . date('m') . "-30 00:00:00";
     }
     $reportObj = new Application_Model_Report();
     $pagenum = $this->request->getParam('page');
     if ($pagenum == '' or $pagenum == 0) {
         $pagenum = 1;
     }
     $arraystart = $pagenum * 5 - 5;
     $arrayend = $pagenum * 5;
     if ($this->request->getParam('reportuserid') != '') {
         $userid = $this->request->getParam('reportuserid');
     } else {
         $userid = $this->user->getId();
     }
     if ($reportObj->checkAdminUser($userid)) {
         $this->view->userTypeshowing = 'users';
         $subUsersArray = $reportObj->findChildEntityList($userid, 5, $searchvalue);
         //echo "<pre>"; print_r($subUsersArray); exit;
         $totalSubUsers = count($subUsersArray);
         foreach ($subUsersArray as $key => $row) {
             $username[$key] = $row['username'];
         }
         $orderby = $this->request->getParam('orderby');
         if ($orderby == 'ASC') {
             array_multisort($username, SORT_ASC, $subUsersArray);
         } elseif ($orderby == 'DESC') {
             array_multisort($username, SORT_DESC, $subUsersArray);
         }
         //echo "<pre>"; print_r($subUsersArray); exit;
         $this->view->sortOrderBy = $orderby;
         //$this->view->userlist = $subUsersArray;
         $allDetailsArray = array();
         foreach ($subUsersArray as $subUser) {
             $allDetailsArray[$subUser['childuserid']]['username'] = $subUser['username'];
             $allDetailsArray[$subUser['childuserid']]['totalKeywords'] = $reportObj->reportCountTotalKeywordByUserId($subUser['childuserid'], $monthstartdate, $monthenddate);
             $allDetailsArray[$subUser['childuserid']]['totalSubscribers'] = $reportObj->reportCountTotalSubscribersByUserId($subUser['childuserid']['childuserid'], $monthstartdate, $monthenddate);
             $allDetailsArray[$subUser['childuserid']]['totalOptins'] = $reportObj->reportCountTotalOptinsByUserId($subUser['childuserid'], $monthstartdate, $monthenddate);
             $allDetailsArray[$subUser['childuserid']]['totalOptouts'] = $reportObj->reportCountTotalOptoutsByUserId($subUser['childuserid'], $monthstartdate, $monthenddate);
             $allDetailsArray[$subUser['childuserid']]['totalCampaigns'] = $reportObj->reportCountTotalCampaignsByUserId($subUser['childuserid'], $monthstartdate, $monthenddate);
             $allDetailsArray[$subUser['childuserid']]['totalCampaignMessages'] = $reportObj->reportCountTotalCampaignMessagesByUserId($subUser['childuserid'], $monthstartdate, $monthenddate);
             $allDetailsArray[$subUser['childuserid']]['totaloutboundmessage'] = $reportObj->reportCountTotalMessagesByUserId($subUser['childuserid'], $monthstartdate, $monthenddate);
         }
         //echo "<pre>"; print_r($allDetailsArray); exit;
     } else {
         $this->view->userTypeshowing = 'locations';
         $subFoldersArray = $reportObj->findChildEntityList($userid, 4);
         //echo "<pre>"; print_r($subFoldersArray); echo exit;
         $totalSubUsers = count($subFoldersArray);
         for ($i = $arraystart; $i < $arrayend; $i++) {
             if (!empty($subFoldersArray[$i])) {
                 $allDetailsArray[$subFoldersArray[$i]['folderid']]['username'] = $subFoldersArray[$i]['foldername'];
                 $allDetailsArray[$subFoldersArray[$i]['folderid']]['totalKeywords'] = $subFoldersArray[$i]['totalkeywords'];
                 $allDetailsArray[$subFoldersArray[$i]['folderid']]['totalSubscribers'] = $reportObj->totalSubscribersByFolder($subFoldersArray[$i]['folderid'], $monthstartdate, $monthenddate);
                 $allDetailsArray[$subFoldersArray[$i]['folderid']]['totalOptins'] = $reportObj->totalOptinsByFolder($subFoldersArray[$i]['folderid'], $monthstartdate, $monthenddate);
                 $allDetailsArray[$subFoldersArray[$i]['folderid']]['totalOptouts'] = $reportObj->totalOptoutsByFolder($subFoldersArray[$i]['folderid'], $monthstartdate, $monthenddate);
                 $allDetailsArray[$subFoldersArray[$i]['folderid']]['totalCampaigns'] = $reportObj->totalCampaignByFolder($subFoldersArray[$i]['folderid'], $monthstartdate, $monthenddate);
                 $allDetailsArray[$subFoldersArray[$i]['folderid']]['totalCampaignMessages'] = $reportObj->getTotalCampaignMessagesByFolder($subFoldersArray[$i]['folderid'], $monthstartdate, $monthenddate);
                 $allDetailsArray[$subFoldersArray[$i]['folderid']]['totaloutboundmessage'] = $reportObj->getTotalOutboundMessages($subFoldersArray[$i]['folderid'], $monthstartdate, $monthenddate);
             }
         }
     }
     if (!empty($allDetailsArray)) {
         $allDetailsArray['total']['username'] = '******';
         $allDetailsArray['total']['totalKeywords'] = '<b>' . $reportObj->reportCountTotalKeywordByUserId($userid, $monthstartdate, $monthenddate) . '</b>';
         $allDetailsArray['total']['totalSubscribers'] = '<b>' . $reportObj->reportCountTotalSubscribersByUserId($userid, $monthstartdate, $monthenddate) . '</b>';
         $allDetailsArray['total']['totalOptins'] = '<b>' . $reportObj->reportCountTotalOptinsByUserId($userid, $monthstartdate, $monthenddate) . '</b>';
         $allDetailsArray['total']['totalOptouts'] = '<b>' . $reportObj->reportCountTotalOptoutsByUserId($userid, $monthstartdate, $monthenddate) . '</b>';
         $allDetailsArray['total']['totalCampaignMessages'] = '<b>' . $reportObj->reportCountTotalCampaignMessagesByUserId($userid, $monthstartdate, $monthenddate) . '</b>';
         $allDetailsArray['total']['totaloutboundmessage'] = '<b>' . $reportObj->reportCountTotalMessagesByUserId($userid, $monthstartdate, $monthenddate) . '</b>';
     }
     //echo "<pre>"; print_r($allDetailsArray); exit;
     $this->view->seeReportBy = $seereportby;
     $this->view->totalSubUsers = $totalSubUsers;
     $this->view->allDetailsArray = $allDetailsArray;
     $this->view->searchvalue = $searchvalue;
     $this->view->reportuserid = $userid;
     $this->view->starttime = $this->request->getParam('starttime');
     $this->view->endtime = $this->request->getParam('endtime');
     if ($this->request->getParam('shownumlist') != '') {
         $this->view->showNumList = $this->request->getParam('shownumlist');
     } else {
         $this->view->showNumList = 10;
     }
     if ($rmonth == '' or $ryear == '') {
         $this->view->monthSelected = date('m');
         $this->view->yearSelected = date('Y');
     } else {
         $this->view->monthSelected = $rmonth;
         $this->view->yearSelected = $ryear;
     }
 }