コード例 #1
0
 public function userRequestTrip()
 {
     $date = date("Y-m-d H:i:s");
     $time_limit = date("Y-m-d H:i:s", strtotime($date) - 3 * 60 * 60);
     $owner_id = Session::get('user_id');
     $current_request = Requests::where('owner_id', $owner_id)->where('is_cancelled', 0)->where('created_at', '>', $time_limit)->orderBy('created_at', 'desc')->where(function ($query) {
         $query->where('status', 0)->orWhere(function ($query_inner) {
             $query_inner->where('status', 1)->where('is_walker_rated', 0)->where('confirmed_walker', '>', 0);
         });
     })->first();
     if (!$current_request || $current_request->is_walker_rated == 1) {
         $payments = Payment::where('owner_id', Session::get('user_id'))->count();
         if ($payments != 0) {
             $types = ProviderType::all();
             return View::make('web.userRequestTrip')->with('title', 'Request Trip')->with('types', $types)->with('page', 'request-trip');
         } else {
             $message = "You should add atleast one credit card to request a Trip.";
             $type = "danger";
             return Redirect::to('/user/payments')->with('message', $message)->with('type', $type);
         }
     } else {
         $owner = Owner::find($owner_id);
         $type = ProviderType::find($current_request->type);
         $status = 0;
         if ($current_request->is_completed) {
             $status = 5;
         } elseif ($current_request->is_started) {
             $status = 4;
         } elseif ($current_request->is_walker_arrived) {
             $status = 3;
         } elseif ($current_request->is_walker_started) {
             $status = 2;
         } elseif ($current_request->confirmed_walker) {
             $status = 1;
         } else {
             if ($current_request->status == 1) {
                 $status = 6;
             }
         }
         if ($current_request->confirmed_walker) {
             $walker = Walker::find($current_request->confirmed_walker);
             $rating = DB::table('review_walker')->where('walker_id', '=', $current_request->confirmed_walker)->avg('rating') ?: 0;
             return View::make('web.userRequestTripStatus')->with('title', 'Trip Status')->with('page', 'trip-status')->with('request', $current_request)->with('user', $owner)->with('walker', $walker)->with('type', $type)->with('status', $status)->with('rating', $rating);
         } else {
             return View::make('web.userRequestTripStatus')->with('title', 'Trip Status')->with('page', 'trip-status')->with('request', $current_request)->with('user', $owner)->with('type', $type)->with('rating', 0)->with('status', $status);
         }
     }
 }
コード例 #2
0
 public function providerTripInProgress()
 {
     $date = date("Y-m-d H:i:s");
     $time_limit = date("Y-m-d H:i:s", strtotime($date) - 3 * 60 * 60);
     $walker_id = Session::get('walker_id');
     $current_request = Requests::where('confirmed_walker', $walker_id)->where('is_cancelled', 0)->where('created_at', '>', $time_limit)->orderBy('created_at', 'desc')->where(function ($query) {
         $query->where('status', 0)->orWhere(function ($query_inner) {
             $query_inner->where('status', 1);
         });
     })->first();
     if (!$current_request or Session::has('skipReviewProvider') or $current_request->is_dog_rated == 1) {
         /* $var = Keywords::where('id', 4)->first();
            $message = "You don't have any " . $var->keyword . "s currently in progress."; */
         $message = "You don't have any " . Config::get('app.generic_keywords.Trip') . "s currently in progress.";
         $type = "danger";
         $status = 6;
         return Redirect::to('/provider/trips')->with('message', $message)->with('type', $type)->with('status', $status);
     } else {
         $request_services = RequestServices::where('request_id', $current_request->id)->first();
         $owner = Owner::find($current_request->owner_id);
         $type = ProviderType::find($request_services->type);
         $status = 0;
         if ($current_request->is_dog_rated) {
             $status = 6;
         } elseif ($current_request->is_completed) {
             $status = 5;
         } elseif ($current_request->is_started) {
             $status = 4;
         } elseif ($current_request->is_walker_arrived) {
             $status = 3;
         } elseif ($current_request->is_walker_started) {
             $status = 2;
         } elseif ($current_request->confirmed_walker) {
             $status = 1;
         }
         if ($current_request->confirmed_walker) {
             $walker = Walker::find($current_request->confirmed_walker);
             /* $rating = DB::table('review_dog')->where('owner_id', '=', $current_request->owner_id)->avg('rating') ? : 0; */
             $rating = $owner->rate;
             /* $var = Keywords::where('id', 4)->first(); */
             return View::make('web.providerRequestTripStatus')->with('title', '' . Config::get('app.generic_keywords.Trip') . ' Status')->with('page', '' . Config::get('app.generic_keywords.Trip') . '-status')->with('request', $current_request)->with('user', $owner)->with('walker', $walker)->with('type', $type)->with('status', $status)->with('rating', $rating);
         }
     }
 }
コード例 #3
0
 public function update_provider_type()
 {
     $id = Input::get('id');
     $name = ucwords(trim(Input::get('name')));
     $base_distance = trim(Input::get('base_distance'));
     if ($base_distance == "" || $base_distance == 0) {
         $base_distance = 1;
     }
     $base_price = trim(Input::get('base_price'));
     if ($base_price == "" || $base_price == 0) {
         $base_price = 0;
     }
     $distance_price = trim(Input::get('distance_price'));
     if ($distance_price == "" || $distance_price == 0) {
         $distance_price = 0;
     }
     $time_price = trim(Input::get('time_price'));
     if ($time_price == "" || $time_price == 0) {
         $time_price = 0;
     }
     $max_size = trim(Input::get('max_size'));
     if ($max_size == "" || $max_size == 0) {
         $max_size = 0;
     }
     $is_default = Input::get('is_default');
     $is_visible = trim(Input::get('is_visible'));
     if ($is_default) {
         if ($is_default == 1) {
             ProviderType::where('is_default', 1)->update(array('is_default' => 0));
         }
     } else {
         $is_default = 0;
     }
     if ($id == 0) {
         $providers_type = new ProviderType();
     } else {
         $providers_type = ProviderType::find($id);
     }
     if (Input::hasFile('icon')) {
         // Upload File
         $file_name = time();
         $file_name .= rand();
         $ext = Input::file('icon')->getClientOriginalExtension();
         Input::file('icon')->move(public_path() . "/uploads", $file_name . "." . $ext);
         $local_url = $file_name . "." . $ext;
         // Upload to S3
         if (Config::get('app.s3_bucket') != "") {
             $s3 = App::make('aws')->get('s3');
             $pic = $s3->putObject(array('Bucket' => Config::get('app.s3_bucket'), 'Key' => $file_name, 'SourceFile' => public_path() . "/uploads/" . $local_url));
             $s3->putObjectAcl(array('Bucket' => Config::get('app.s3_bucket'), 'Key' => $file_name, 'ACL' => 'public-read'));
             $s3_url = $s3->getObjectUrl(Config::get('app.s3_bucket'), $file_name);
         } else {
             $s3_url = asset_url() . '/uploads/' . $local_url;
         }
         if (isset($providers_type->icon)) {
             if ($providers_type->icon != "") {
                 $icon = $providers_type->icon;
                 unlink_image($icon);
             }
         }
         $providers_type->icon = $s3_url;
     }
     $providers_type->name = $name;
     $providers_type->base_distance = $base_distance;
     $providers_type->base_price = $base_price;
     $providers_type->price_per_unit_distance = $distance_price;
     $providers_type->price_per_unit_time = $time_price;
     $providers_type->max_size = $max_size;
     $providers_type->is_default = $is_default;
     $providers_type->is_visible = $is_visible;
     $providers_type->save();
     return Redirect::to("/admin/provider-type/edit/{$providers_type->id}?success=1");
 }
コード例 #4
0
 public function userRequestTrip()
 {
     $date = date("Y-m-d H:i:s");
     $time_limit = date("Y-m-d H:i:s", strtotime($date) - 3 * 60 * 60);
     $owner_id = Session::get('user_id');
     $get_value = Settings::where('key', 'provider_selection')->first();
     //$selection = $get_value->value;
     $get_dest = Settings::where('key', 'get_destination')->first();
     //$destination = $get_dest->value;
     $current_request = Requests::where('owner_id', $owner_id)->where('is_cancelled', 0)->where('created_at', '>', $time_limit)->orderBy('created_at', 'desc')->where(function ($query) {
         $query->where('status', 0)->orWhere(function ($query_inner) {
             $query_inner->where('status', 1)->where('confirmed_walker', '>', 0);
         });
     })->first();
     if (!$current_request or Session::has('skipReview') or $current_request->is_walker_rated == 1) {
         // array to store all allowed payments
         $payment_options = array();
         $payments = Payment::where('owner_id', Session::get('user_id'))->count();
         if ($payments) {
             $payment_options['stored_cards'] = 1;
         } else {
             $payment_options['stored_cards'] = 0;
         }
         $codsett = Settings::where('key', 'cod')->first();
         //if ($codsett->value == 1) {
         //    $payment_options['cod'] = 1;
         //} else {
         //    $payment_options['cod'] = 0;
         //}
         $paypalsett = Settings::where('key', 'paypal')->first();
         //if ($paypalsett->value == 1) {
         //    $payment_options['paypal'] = 1;
         // } else {
         //    $payment_options['paypal'] = 0;
         //}
         Log::info('payment_options = ' . print_r($payment_options, true));
         /* $var = Keywords::where('id', 4)->first(); */
         $types = ProviderType::where('is_visible', '=', 1)->get();
         return View::make('web.userRequestTrip')->with('title', 'Request ' . Config::get('app.generic_keywords.Trip') . '')->with('types', $types)->with('selection', '')->with('destination', '')->with('payment_option', $payment_options)->with('page', 'request-trip');
     } else {
         $owner = Owner::find($owner_id);
         $type = ProviderType::find($current_request->type);
         $status = 0;
         $payment_mode = $current_request->payment_mode;
         if ($current_request->is_walker_rated) {
             $status = 6;
         } elseif ($current_request->is_completed) {
             $status = 5;
         } elseif ($current_request->is_started) {
             $status = 4;
         } elseif ($current_request->is_walker_arrived) {
             $status = 3;
         } elseif ($current_request->is_walker_started) {
             $status = 2;
         } elseif ($current_request->confirmed_walker) {
             $status = 1;
         } else {
             if ($current_request->status == 1) {
                 $status = 7;
             }
         }
         $walker_detail = WalkLocation::where('request_id', $current_request->id)->orderBy('created_at', 'desc')->first();
         $eta = Settings::where('key', '=', 'get_destination')->first();
         $eta_value = $eta->value;
         if ($walker_detail) {
             $walker_detail = $walker_detail;
         } else {
             $walker_detail = '';
         }
         /* $var = Keywords::where('id', 4)->first(); */
         if ($current_request->confirmed_walker) {
             $walker = Walker::find($current_request->confirmed_walker);
             /* $rating = DB::table('review_walker')->where('walker_id', '=', $current_request->confirmed_walker)->avg('rating') ? : 0; */
             $rating = $walker->rate;
             return View::make('web.userRequestTripStatus')->with('title', '' . Config::get('app.generic_keywords.Trip') . ' Status')->with('page', '' . Config::get('app.generic_keywords.Trip') . '-status')->with('request', $current_request)->with('user', $owner)->with('walker', $walker)->with('type', $type)->with('walker_detail', $walker_detail)->with('destination', $destination)->with('status', $status)->with('eta_value', $eta_value)->with('payment_mode', $payment_mode)->with('rating', $rating);
         } else {
             return View::make('web.userRequestTripStatus')->with('title', '' . Config::get('app.generic_keywords.Trip') . ' Status')->with('page', '' . Config::get('app.generic_keywords.Trip') . '-status')->with('request', $current_request)->with('user', $owner)->with('type', $type)->with('walker_detail', $walker_detail)->with('destination', $destination)->with('rating', 0)->with('eta_value', $eta_value)->with('payment_mode', $payment_mode)->with('status', $status);
         }
     }
 }
コード例 #5
0
 public function providerTripInProgress()
 {
     $date = date("Y-m-d H:i:s");
     $time_limit = date("Y-m-d H:i:s", strtotime($date) - 3 * 60 * 60);
     $walker_id = Session::get('walker_id');
     $current_request = Requests::where('confirmed_walker', $walker_id)->where('is_cancelled', 0)->where('created_at', '>', $time_limit)->orderBy('created_at', 'desc')->where(function ($query) {
         $query->where('status', 0)->orWhere(function ($query_inner) {
             $query_inner->where('status', 1)->where('is_dog_rated', 0);
         });
     })->first();
     if (!$current_request || $current_request->is_dog_rated == 1) {
         $message = "You don't have any trips currently in progress.";
         $type = "danger";
         return Redirect::to('/provider/trips')->with('message', $message)->with('type', $type);
     } else {
         $owner = Owner::find($current_request->owner_id);
         $type = ProviderType::find($current_request->type);
         $status = 0;
         if ($current_request->is_completed) {
             $status = 5;
         } elseif ($current_request->is_started) {
             $status = 4;
         } elseif ($current_request->is_walker_arrived) {
             $status = 3;
         } elseif ($current_request->is_walker_started) {
             $status = 2;
         } elseif ($current_request->confirmed_walker) {
             $status = 1;
         }
         if ($current_request->confirmed_walker) {
             $walker = Walker::find($current_request->confirmed_walker);
             $rating = DB::table('review_dog')->where('owner_id', '=', $current_request->owner_id)->avg('rating') ?: 0;
             return View::make('web.providerRequestTripStatus')->with('title', 'Trip Status')->with('page', 'trip-status')->with('request', $current_request)->with('user', $owner)->with('walker', $walker)->with('type', $type)->with('status', $status)->with('rating', $rating);
         }
     }
 }
コード例 #6
0
 public function update_provider_type()
 {
     $id = Input::get('id');
     $name = Input::get('name');
     $is_default = Input::get('is_default');
     if ($is_default) {
         if ($is_default == 1) {
             ProviderType::where('is_default', 1)->update(array('is_default' => 0));
         }
     } else {
         $is_default = 0;
     }
     if ($id == 0) {
         $providers_type = new ProviderType();
     } else {
         $providers_type = ProviderType::find($id);
     }
     if (Input::hasFile('icon')) {
         // Upload File
         $file_name = time();
         $file_name .= rand();
         $ext = Input::file('icon')->getClientOriginalExtension();
         Input::file('icon')->move(public_path() . "/uploads", $file_name . "." . $ext);
         $local_url = $file_name . "." . $ext;
         // Upload to S3
         if (Config::get('app.s3_bucket') != "") {
             $s3 = App::make('aws')->get('s3');
             $pic = $s3->putObject(array('Bucket' => Config::get('app.s3_bucket'), 'Key' => $file_name, 'SourceFile' => public_path() . "/uploads/" . $local_url));
             $s3->putObjectAcl(array('Bucket' => Config::get('app.s3_bucket'), 'Key' => $file_name, 'ACL' => 'public-read'));
             $s3_url = $s3->getObjectUrl(Config::get('app.s3_bucket'), $file_name);
         } else {
             $s3_url = asset_url() . '/uploads/' . $local_url;
         }
         $providers_type->icon = $s3_url;
     }
     $providers_type->name = $name;
     $providers_type->is_default = $is_default;
     $providers_type->save();
     return Redirect::to("/admin/provider-type/edit/{$providers_type->id}?success=1");
 }