public function userstatsAction() { $fitnessPromotion = new FitnessPromotionCodes(); $fitnessUser = new FitnessUserGeneral(); $promotionUsers = new FitnessPromotionUsers(); //get the number of users registered through iphone and android $usersIphone = $fitnessUser->getIphoneUserCount(); $usersAndroid = $fitnessUser->getAndroidUserCount(); //get the users from website $usersWeb = $fitnessUser->getUserCount(); foreach ($usersWeb as $web) { $usersweb[] = $web['user_id']; } //get users who have used promotion codes $userspromo = array(); $usersPromotion = $promotionUsers->getPromotionUsers(); foreach ($usersPromotion as $promo) { $userspromo[] = $promo['user_id']; } $usersWebFinal = array_diff($usersweb, $userspromo); //get all promotion ids $promotionsIds = $fitnessPromotion->getCodes(); $i = 0; foreach ($promotionsIds as $ids) { $promotionsUsers[$i]['promotion_name'] = $ids['promotion_code']; $promoUsers = $promotionUsers->getUsersByCode($ids['id']); $promotionsUsers[$i]['promotion_users'] = $promoUsers[0]['count']; $i = $i + 1; } $this->view->usersIphone = $usersIphone['count']; $this->view->usersAndroid = $usersAndroid['count']; $this->view->usersWeb = count($usersWebFinal); $this->view->promotionData = $promotionsUsers; }