コード例 #1
0
ファイル: messages.php プロジェクト: arp19690/newtravel
 public function mark_previous_messages_as_read($latest_message_id, $me_user_id, $other_user_id)
 {
     $model = new Common_model();
     $where_cond_arr = array('message_user_from' => $other_user_id, 'message_user_to' => $me_user_id, 'message_id <= ' => $latest_message_id);
     return $model->updateData(TABLE_MESSAGES, array('message_read' => '1'), $where_cond_arr);
 }
コード例 #2
0
ファイル: index.php プロジェクト: arp19690/newtravel
 public function facebookAuth($connect = FALSE)
 {
     if ($this->input->get('code')) {
         $this->load->library("SocialLib");
         $model = new Common_model();
         $socialLib = new SocialLib();
         $facebook_user_obj = $socialLib->getFacebookUserObject();
         if ($facebook_user_obj['status'] == 'success') {
             if (!empty($facebook_user_obj['data'])) {
                 $facebook_id = $facebook_user_obj['data']['id'];
                 $facebook_access_token = $facebook_user_obj['accessToken'];
                 if ($connect == FALSE) {
                     if (isset($facebook_user_obj['data']['email'])) {
                         $facebook_name = $facebook_user_obj['data']['name'];
                         $facebook_email = $facebook_user_obj['data']['email'];
                         $is_exists = $model->is_exists('user_password', TABLE_USERS, array('user_email' => $facebook_email, 'user_facebook_id' => $facebook_id));
                         if (empty($is_exists)) {
                             // get user profile picture here
                             $facebook_image_url = getFacebookUserImageSource($facebook_id, NULL, USER_IMG_WIDTH);
                             $new_image_path = USER_IMG_PATH . '/' . getEncryptedString($facebook_id . time()) . '.jpg';
                             copy($facebook_image_url, $new_image_path);
                             $user_password = md5($facebook_id . time());
                             $data_array = array('user_fullname' => addslashes($facebook_name), 'user_email' => $facebook_email, 'user_facebook_id' => $facebook_id, 'user_facebook_accesstoken' => $facebook_access_token, 'user_facebook_array' => json_encode($facebook_user_obj), 'user_created_on' => date('Y-m-d H:i:s'), 'user_ipaddress' => USER_IP, 'user_useragent' => USER_AGENT, 'user_password' => $user_password, 'user_username' => getUniqueUsernameFromEmail($facebook_email), 'user_profile_picture' => $new_image_path);
                             $model->insertData(TABLE_USERS, $data_array);
                             $this->session->set_flashdata('success', 'Welcome aboard, ' . $facebook_name);
                         } else {
                             $user_password = $is_exists[0]['user_password'];
                         }
                         // loggin user in
                         $this->load->library('Login_auth');
                         $login_auth = new Login_auth();
                         $login_auth->login($facebook_email, $user_password, base_url('my-account'), base_url('login'));
                     } else {
                         $this->session->set_flashdata('error', 'Email required when logging in with Facebook');
                         redirect(base_url('login'));
                     }
                 } elseif ($connect == 'connect' && isset($this->session->userdata['user_id'])) {
                     $user_id = $this->session->userdata['user_id'];
                     $next_url = base_url('my-account');
                     $is_exists = $model->is_exists('user_id', TABLE_USERS, array('user_id !=' => $user_id, 'user_facebook_id' => $facebook_id));
                     if (empty($is_exists)) {
                         $data_array = array('user_facebook_id' => $facebook_id, 'user_facebook_accesstoken' => $facebook_access_token, 'user_facebook_array' => json_encode($facebook_user_obj));
                         $model->updateData(TABLE_USERS, $data_array, array('user_id' => $this->session->userdata['user_id']));
                         $this->session->set_flashdata('success', 'Facebook account connected successfully');
                         if ($this->input->get('next')) {
                             $next_url = $this->input->get('next');
                         }
                     } else {
                         $this->session->set_flashdata('error', 'Another user already exists with this Facebook account');
                     }
                     redirect($next_url);
                 }
             } else {
                 $this->session->set_flashdata('error', 'An error occurred. Please try again.');
                 redirect(base_url('login'));
             }
         } else {
             $this->session->set_flashdata('error', $facebook_user_obj['data']);
             redirect(base_url('login'));
         }
     } else {
         display_404_page();
     }
 }
コード例 #3
0
ファイル: user.php プロジェクト: arp19690/newtravel
 public function changeProfilePicture()
 {
     if (isset($this->session->userdata['user_id']) && !empty($_FILES) && $_FILES['user_img']['size'] > 0 && $_FILES['user_img']['error'] == 0) {
         $model = new Common_model();
         $user_id = $this->session->userdata['user_id'];
         $user_record = $model->fetchSelectedData('user_profile_picture, user_username', TABLE_USERS, array('user_id' => $user_id));
         $user_record = $user_record[0];
         $redirect_url = base_url('my-account');
         if ($this->input->post('next')) {
             $redirect_url = $this->input->post('next');
         }
         $source = $_FILES['user_img']['tmp_name'];
         $destination = USER_IMG_PATH . "/" . getEncryptedString($user_id . time()) . ".jpg";
         $this->load->library('SimpleImage');
         $simpleImage = new SimpleImage();
         $simpleImage->uploadImage($source, $destination, USER_IMG_WIDTH, USER_IMG_HEIGHT);
         //            removing older picture
         @unlink($user_record['user_profile_picture']);
         $model->updateData(TABLE_USERS, array('user_profile_picture' => $destination), array('user_id' => $user_id));
         $this->session->set_flashdata('success', '<strong>Success!</strong> Your profile picture has been changed');
         // updating redis keys now
         $this->redis_functions->set_user_profile_data($user_record['user_username']);
         redirect($redirect_url);
     } else {
         redirect(base_url('login'));
     }
 }
コード例 #4
0
ファイル: payments.php プロジェクト: arp19690/newtravel
 public function add_post_to_featured($post_id, $pfm_id)
 {
     $model = new Common_model();
     $user_id = $this->session->userdata['user_id'];
     $is_valid = $model->fetchSelectedData('post_id', TABLE_POSTS, array('post_id' => $post_id, 'post_user_id' => $user_id));
     if (!empty($is_valid)) {
         $featured_plan_details = $model->fetchSelectedData('pfm_hours', TABLE_FEATURED_MASTER, array('pfm_id' => $pfm_id));
         $featured_hours = $featured_plan_details[0]['pfm_hours'];
         $start_timestamp = time();
         $end_timestamp = $start_timestamp + $featured_hours * 60 * 60;
         // disabling all the previous featured post for same post id
         $model->updateData(TABLE_POST_FEATURED, array('pf_status' => '0'), array('pf_post_id' => $post_id));
         $data_array = array('pf_post_id' => $post_id, 'pf_start_date' => date('Y-m-d H:i:s', $start_timestamp), 'pf_end_date' => date('Y-m-d H:i:s', $end_timestamp), 'pf_pfm_id' => $pfm_id, 'pf_created_on' => date('Y-m-d H:i:s'));
         return $model->insertData(TABLE_POST_FEATURED, $data_array);
     } else {
         return FALSE;
     }
 }
コード例 #5
0
ファイル: trip.php プロジェクト: arp19690/newtravel
 public function add_to_wishlist($post_url_key)
 {
     if (isset($this->session->userdata['user_id'])) {
         $user_id = $this->session->userdata['user_id'];
         $model = new Common_model();
         $is_owner = $model->fetchSelectedData('post_id', TABLE_POSTS, array('post_user_id' => $user_id, 'post_url_key' => $post_url_key));
         if (!empty($is_owner)) {
             $this->session->set_flashdata('error', 'Sorry, you cannot add your own trip to your wishlist');
         } else {
             $redis_functions = new Redisfunctions();
             $post_details = $redis_functions->get_trip_details($post_url_key);
             $is_exists = $model->fetchSelectedData('wishlist_id', TABLE_WISHLIST, array('wishlist_post_id' => $post_details['post_id'], 'wishlist_user_id' => $user_id, 'wishlist_status' => '1'));
             if (!empty($is_exists)) {
                 $model->updateData(TABLE_WISHLIST, array('wishlist_status' => '0'), array('wishlist_id' => $is_exists[0]['wishlist_id']));
                 $this->session->set_flashdata('error', 'Trip removed from your wishlist');
             } else {
                 $data_array = array('wishlist_user_id' => $user_id, 'wishlist_post_id' => $post_details['post_id'], 'wishlist_created_on' => date('Y-m-d H:i:s'), 'wishlist_ipaddress' => USER_IP, 'wishlist_useragent' => USER_AGENT);
                 $model->insertData(TABLE_WISHLIST, $data_array);
                 $this->session->set_flashdata('success', 'Trip added to your wishlist');
             }
             // updating user redis key
             $redis_functions->set_user_profile_data($this->session->userdata['user_username']);
         }
         redirect(getTripUrl($post_url_key));
     } else {
         display_404_page();
     }
 }
コード例 #6
0
ファイル: custom_model.php プロジェクト: arp19690/newtravel
 public function verify_trip_status($url_key)
 {
     $model = new Common_model();
     $post_details = $this->get_trip_detail($url_key);
     if (!empty($post_details)) {
         if (isset($this->session->userdata["user_id"]) && $post_details['post_user_id'] == @$this->session->userdata["user_id"]) {
             $post_published = '1';
             $required_keys = array('post_title' => 'Please enter a title', 'post_url_key' => 'Please enter a title', 'post_regions' => 'Please enter your itinerary information');
             foreach ($required_keys as $key => $error_message) {
                 if (isset($post_details[$key])) {
                     if (empty($post_details[$key])) {
                         $post_published = '0';
                         $this->session->set_flashdata('error', $error_message);
                         break;
                     }
                 }
             }
             $model->updateData(TABLE_POSTS, array('post_published' => $post_published), array('post_url_key' => $url_key));
         }
     }
     return TRUE;
 }