Ejemplo n.º 1
0
 public function addworkAction()
 {
     if ($this->isLoggedIn() == 0) {
         $this->_redirect('/admin/index');
     }
     $this->view->loginStatus = $this->isLoggedIn();
     $fitnessWorkouts = new FitnessWorkouts();
     $fitnessWorkoutsMulti = new FitnessWorkoutsMultilang();
     $fitnessExercises = new FitnessExerciseGeneral();
     $fitnessExercisesMulti = new FitnessExerciseGeneralMultilang();
     $fitnessTimeframes = new FitnessWorkoutTimeframes();
     $fitnessMembers = new FitnessUserMembership();
     $fitnessUnlockedWorkouts = new FitnessUserWorkoutsUnlocked();
     $fitnessUser = new FitnessUserGeneral();
     $listExercises = $fitnessExercises->selectRecordsWorkout();
     $exerciseArray = array();
     $i = 0;
     foreach ($listExercises as $exercise) {
         $exerciseArray[$i]["exercise_id"] = $exercise['workout_id'];
         $exerciseNameArray = $fitnessExercisesMulti->getWorkoutName($exercise['workout_id'], $this->getDefaultLanguage());
         $exerciseArray[$i]["exercise_name"] = $exerciseNameArray['workout_name'];
         $i = $i + 1;
     }
     $exerciseArray = $this->array_sort_by_column($exerciseArray, 'exercise_name');
     $this->view->listExercises = $exerciseArray;
     $this->view->listtimeframes = $fitnessTimeframes->listTimeframes();
     $workArray = array();
     $workMultiArray = array();
     if ($this->_request->isPost()) {
         //$workImage                      = $_FILES["work_image"]["name"];
         $workArray['work_name'] = $this->_request->getPost('work_name');
         $workArray['work_image_list'] = "";
         $workArray['work_exercises'] = rtrim($this->_request->getPost("exerciseslist"), ",");
         $workArray['work_duration'] = "";
         $workArray['work_recovery_time'] = "";
         $workArray['work_recovery_interval'] = "";
         $workArray['work_filter'] = rtrim($this->_request->getPost("filterlist"), ",");
         $workArray['description_small'] = $this->_request->getPost("description_small");
         $workArray['description_big'] = $this->_request->getPost("description_big");
         $workArray['work_level'] = $this->_request->getPost('work_level');
         // print_r($workArray);exit;
         $fitnessWorkouts->addData($workArray);
         $workID = $fitnessWorkouts->getLastWorkId();
         $workMultiArray['work_name'] = $this->_request->getPost('work_name');
         $workMultiArray['work_id'] = $workID['id'];
         $workMultiArray['lang_id'] = $this->getDefaultLanguage();
         $workMultiArray['description_small'] = $this->_request->getPost("description_small");
         $workMultiArray['description_big'] = $this->_request->getPost("description_big");
         $fitnessWorkoutsMulti->addData($workMultiArray);
         //check if members exists and add the workout to their unlocked list
         $memberData = $fitnessMembers->getAllMemberIds();
         $unlockedArray = array();
         foreach ($memberData as $userId) {
             $unlockedArray['user_id'] = $userId['user_id'];
             $unlockedArray['workout_id'] = $workID['id'];
             $unlockedArray['workout_purchase_status'] = "true";
             $unlockedArray['unlocked_date'] = date('Y-m-d');
             $unlockedArray['unlocked_status'] = 1;
             $fitnessUnlockedWorkouts->addData($unlockedArray);
         }
         $this->_redirect('/admin/listworks');
     }
 }
Ejemplo n.º 2
0
 /**
  * function that tracks the user free /trial period
  * @params user id
  * @author lekha
  * @date 3/22/2012
  * 
  */
 public function checkUserMembership()
 {
     $fitnessUser = new FitnessUserGeneral();
     $fitnessMembership = new FitnessUserMembership();
     $fitnessUnlocked = new FitnessUserWorkoutsUnlocked();
     $fitnessDone = new FitnessUserWorkoutsDone();
     $sess = new Zend_Session_Namespace('UserSession');
     $userDetails = $fitnessUser->getUserbyUsername($sess->username);
     $userMembership = $fitnessMembership->getUserMembership($userDetails['user_id']);
     //get user registration date from database only if user in trial period
     if ($userMembership['trial'] == 1) {
         $registrationDate = $userMembership['registration_date'];
         //get the number of days in the current month
         if ($userMembership['trial_period'] == 1) {
             $monthDays = cal_days_in_month(CAL_GREGORIAN, date('m'), date('Y'));
         } else {
             $monthdaysFirst = cal_days_in_month(CAL_GREGORIAN, date('m'), date('Y'));
             $monthdaysSecond = cal_days_in_month(CAL_GREGORIAN, date('m') + 1, date('Y'));
             $monthdaysThird = cal_days_in_month(CAL_GREGORIAN, date('m') + 2, date('Y'));
             $monthDays = $monthdaysFirst + $monthdaysSecond + $monthdaysThird;
         }
         $diff = $this->_date_diff(strtotime($registrationDate), time());
         $purchasedWorkouts = $fitnessUnlocked->getPurchasedWorkouts($userDetails['user_id']);
         foreach ($purchasedWorkouts as $purchased) {
             $pWorkouts[] = $purchased['workout_id'];
         }
         $implodedWorkouts = implode(",", $pWorkouts);
         if ($diff['days'] > $monthDays) {
             //$fitnessUnlocked->setLockStatus($userDetails['user_id'],0,$implodedWorkouts);
             //$fitnessDone->setLockStatus($userDetails['user_id'],0);
             return 0;
         } else {
             return 1;
         }
     } else {
         return 1;
     }
 }