public function getMyJourneyAction()
 {
     $this->view->layout()->disableLayout();
     $this->_helper->viewRenderer->setNoRender(true);
     $userId = $this->_getParam('userId');
     $gapperLocationM = new Application_Model_GapperLocation();
     $where = "user_id='{$userId}'";
     $order = "addedon desc";
     $gapperLocations = $gapperLocationM->fetchAll($where, $order);
     if (count($gapperLocations) > 0) {
         $i = 0;
         foreach ($gapperLocations as $location) {
             $coord[$i]['lat'] = $location->getLatitude();
             $coord[$i]['lng'] = $location->getLongitude();
             $coord[$i]['id'] = $location->getId();
             $i++;
         }
         $arrayResult = array('error' => 0, 'coord' => $coord);
     } else {
         $arrayResult = array('error' => 1);
     }
     echo Zend_Json::encode($arrayResult);
 }
Пример #2
0
 private function setModel($row)
 {
     $model = new Application_Model_GapperLocation();
     $model->setId($row->id)->setUserId($row->user_id)->setLongitude($row->longitude)->setLatitude($row->latitude)->setAddress($row->address)->setLatest($row->latest)->setCity($row->city)->setState($row->state)->setCountry($row->country)->setContinent($row->continent)->setRegion($row->region)->setAddedon($row->addedon);
     return $model;
 }
Пример #3
0
 public function getNearByUser($user_id, $distance = 5, $page_size = 6, $page = 1)
 {
     $gapperLocationM = new Application_Model_GapperLocation();
     $latestlocationresult = $gapperLocationM->fetchRow("user_id='{$user_id}' and latest='1'");
     if (false === $latestlocationresult) {
         return false;
     }
     $varLatitude = $latestlocationresult->getLatitude();
     $varLongitude = $latestlocationresult->getLongitude();
     $query = "SELECT gl.address, gl.latest, gl.user_id, sqrt(power(69.1*(gl.latitude - ({$varLatitude})),2)+ power(69.1*(gl.longitude-({$varLongitude}\t\t\t\t\t))*cos(gl.latitude/57.3),2)) as dist ,gl.latitude, gl.longitude FROM\n                                                                gapper_location gl  where gl.user_id<>'{$user_id}'  and gl.latest='1' group by gl.user_id,dist having dist<{$distance} order by dist\n                                                        ";
     $pageObj = new Base_Paginator();
     $paginator = $pageObj->fetchPageDataRaw($query, $page, $page_size);
     $returnArray = array();
     foreach ($paginator as $row) {
         /**
          * @Modified By : Mahipal Singh Adhikari
          * @Modified On : 15-Nov-2010
          * @Modification: check other users publish location privacy to display others users locations in MAP
          **/
         $view_map = false;
         $userNs = new Zend_Session_Namespace('members');
         $loggedin_id = $userNs->userId;
         $view_map = $this->checkUserPrivacySettings($row->user_id, $loggedin_id, 3);
         /*
         //now get user map permission settings
         $UserPermissionObj	= new Application_Model_UserPermission();
         $wherePerCond		= "user_id='{$row->user_id}' AND permission_id=3";
         $mapPermission		= $UserPermissionObj->fetchRow($wherePerCond);
         $permissionId		= $mapPermission->getId();
         $mapPermission		= $mapPermission->getFriendGroupId();
         //echo "<br />mapPermission=".$mapPermission." for id=".$row->user_id."<br />";
         if($mapPermission==1)
         {
         	$view_map = true; //display to public
         }
         else
         {
         	//now check logged in user connection type with other location users
         	$friend_id	=	$user_id; //looged in user id as friend id
         	
         	$friendM		= new Application_Model_Friend();
         	$friend_cond 	= "user_id='{$row->user_id}' AND friend_id='{$friend_id}' AND status='accept'";
         	$conTypeObj		= $friendM->fetchRow($friend_cond);
         	
                         //if logged in user connected with this user
         	if(false!==$conTypeObj)
         	{
         		$con_type		= $conTypeObj->getConnectionType();
         		//echo "<br />connection type=".$con_type."<br />";
         		
         		if($con_type=="friend" && ($mapPermission==2 || $mapPermission==4))
         		{
         			$view_map = true; //display to Friends & Family AND Friends, Family and Mates
         		}
         		else if($con_type=="family" && ($mapPermission==2 || $mapPermission==4))
         		{
         			$view_map = true; //display to Friends & Family AND Friends, Family and Mates
         		}
         		else if($con_type=="travelmate" && ($mapPermission==3 || $mapPermission==4))
         		{
         			$view_map = true; //display to Travel Mates AND Friends, Family and Mates
         		}
         		else
         		{
         			$view_map = false;
         		}
                         }//end if
         }//end else
         */
         //if user display map location is true then get user information
         if ($view_map) {
             $userM = new Application_Model_User();
             $userM = $userM->find($row->user_id);
             if (false !== $userM) {
                 $returnArray[] = array("user_id" => $row->user_id, "dist" => $row->dist, "longitude" => $row->longitude, "latitude" => $row->latitude, "address" => $row->address, 'thumnail' => $userM->getThumbnail(), 'firstName' => $userM->getFirstName(), 'lastName' => $userM->getLastName(), 'username' => $userM->getUsername(), 'thumbnail' => $userM->getThumbnail());
             }
         }
         //end of if
     }
     //end of foreach
     //var_dump($returnArray);exit;
     return $returnArray;
 }
Пример #4
0
 public function indexAction()
 {
     if (isset($_SESSION['msg'])) {
         $this->view->msg = $_SESSION['msg'];
         unset($_SESSION['msg']);
     }
     $userNs = new Zend_Session_Namespace('members');
     $userId = $userNs->userId;
     $form = new Album_Form_Album();
     $objModelAlbum = new Album_Model_Album();
     $objModelGapperLocation = new Application_Model_GapperLocation();
     /*------------- GET GAPPER LOCATION ---------------*/
     $yesterday = mktime(0, 0, 0, date("m"), date("d") - 1, date("Y"));
     $whereGapperLocation = "user_id='{$userId}' and latest=1 AND addedon >= '{$yesterday}'";
     $arrGapperLocation = $objModelGapperLocation->fetchAll($whereGapperLocation);
     if (!empty($arrGapperLocation)) {
         $this->view->myLatitude = $arrGapperLocation[0]->latitude;
         $this->view->myLongitude = $arrGapperLocation[0]->longitude;
     } else {
         $this->view->myLatitude = "";
         $this->view->myLongitude = "";
     }
     /*-------------------------------------------------*/
     $elements = $form->getElements();
     $form->clearDecorators();
     foreach ($elements as $element) {
         $element->removeDecorator('label');
     }
     /*---------------------- GET USED PHOTO SIZE OF USER --------------------------*/
     $arrAlbumCapacity = $objModelAlbum->albumCapacity($userId);
     $this->view->capacityImage = $arrAlbumCapacity[0];
     $this->view->capacityPercent = $arrAlbumCapacity[1];
     $request = $this->getRequest();
     // Get posted value
     if ($request->isPost()) {
         $params = $request->getParams();
         // Get all posted value
         if ($form->isValid($params)) {
             $option['userId'] = $userId;
             // LoggedIn UserId
             $arrLatLang = explode(",", $params['latlang']);
             $latitude = substr($arrLatLang[0], 1, strlen($arrLatLang[0]));
             // Longitude of location
             $longitude = substr($arrLatLang[1], 0, -1);
             //	Latitude of location
             $option['name'] = $params['name'];
             $option['description'] = $params['description'];
             $option['location'] = $params['address'];
             $option['permission'] = $params['permissions'];
             $option['longitude'] = $longitude;
             $option['latitude'] = $latitude;
             $option['status'] = 1;
             $albumM = new Album_Model_Album($option);
             $album_id = $albumM->save();
             if ($album_id > 0) {
                 /*----- start tags--------*/
                 if ($params['tags'] != "" && $params['tags'] != 'Separate Tags by a comma. For example: \' Holiday, London, Travel\'') {
                     $arrTags = explode(",", $params['tags']);
                     foreach ($arrTags as $_tag) {
                         $_tag = trim($_tag);
                         $tagsM = new Application_Model_Tags();
                         $tag = $tagsM->fetchRow("tag='{$_tag}'");
                         if (false === $tag) {
                             $tagsM->setTag($_tag);
                             $tag_id = $tagsM->save();
                         } else {
                             $tag_id = $tag->getId();
                         }
                         $albumTagM = new Album_Model_AlbumTag();
                         $albumTagM->setAlbumId($album_id);
                         $albumTagM->setTagId($tag_id);
                         $albumTagM->save();
                     }
                 }
                 $redirectUrl = "/album/my-photos/album-photos/id/" . $album_id;
                 /*---------- end tags-------*/
                 //$this->_helper->redirector('index','create-album',"album");
                 $_SESSION['msg'] = "Album created successfully.";
                 $this->_redirect($redirectUrl);
                 $form->reset();
             } else {
                 $_SESSION['msg'] = "Faild to create Album. Please try again.";
                 $this->_redirect('/album/create-album');
             }
         }
     }
     $objModelUserPermission = new Application_Model_UserPermission();
     $whereUserPermission = "permission_id='5' AND user_id='{$userId}'";
     $arrUserPermission = $objModelUserPermission->fetchRow($whereUserPermission);
     $form->getElement('permissions')->setValue($arrUserPermission->friendGroupId);
     $this->view->form = $form;
 }
Пример #5
0
 public function updateMyLocationAction()
 {
     $this->_helper->layout->disableLayout();
     $this->_helper->viewRenderer->setNoRender(true);
     $userNs = new Zend_Session_Namespace('members');
     $userId = $userNs->userId;
     $location = new Application_Model_GapperLocation();
     $data['latest'] = 0;
     $location->getMapper()->getDbTable()->update($data, array('user_id = ?' => $userId));
     $params = $this->getRequest()->getParams();
     $params['userId'] = $userId;
     $params['latest'] = 1;
     $location = new Application_Model_GapperLocation($params);
     $id = $location->save();
     if ($id > 0) {
         $arrayResult = array("id" => $id, 'error' => 0);
     } else {
         $arrayResult = array('error' => 1);
     }
     echo Zend_Json::encode($arrayResult);
 }