public function create($catalog_id)
 {
     $rules = array('images' => 'required');
     $validator = Validator::make(Input::all(), $rules);
     if ($validator->fails()) {
         return Redirect::route(array('admin.newsletter.create', $catalog_id))->withErrors($validator)->With(Input::all());
     } else {
         $catalog = Catalog::find($catalog_id);
         $pictures = $catalog->pictures;
         $car = $catalog->car;
         $images = Input::get('images');
         $newsletter = new Newsletter();
         $newsletter->title = $catalog->title;
         $newsletter->images = $images;
         $newsletter->send_to = 0;
         $newsletter->user_id = Auth::user()->id;
         $newsletter->catalog_id = $catalog_id;
         $newsletter->save();
         $settingsEmail = Settings::where('key', '=', 'contact_email')->first();
         $settingsEmailName = Settings::where('key', '=', 'contact_name')->first();
         // Subscribers::find(8001) for testing
         $subscribers = Subscribers::all();
         foreach ($subscribers as $subscriber) {
             $data = array('subject' => $catalog->title, 'to' => $subscriber->email, 'to_name' => $subscriber->name, 'from_name' => $settingsEmailName->value, 'from' => $settingsEmail->value, 'catalog' => $catalog, 'images' => $images, 'car' => $car, 'pictures' => $pictures, 'user' => $subscriber);
             Mail::queue('emails.newsletter.html', $data, function ($message) use($data) {
                 $message->to($data['to'], $data['to_name'])->from($data['from'], $data['from_name'])->subject($data['subject']);
             });
         }
         return Redirect::route('admin.newsletter.index')->with('success', Lang::get('messages.newsletter_created'));
     }
     return Redirect::route('admin.newsletter.index')->with('success', Lang::get('messages.newsletter_created'));
 }
Beispiel #2
0
 public function Settings()
 {
     $data['user'] = Auth::user();
     if ($data['user']->access != 'Admin') {
         return 'Access Denied BITCH!!!';
     }
     if (Input::get('submit') == 'update') {
         Settings::where('name', 'default_chance')->update(['value' => Input::get('default_chance')]);
         Settings::where('name', 'blockchain_info_api_code')->update(['value' => Input::get('btc_api_code')]);
         Settings::where('name', 'test_mode')->update(['value' => Input::get('test_mode') ? true : false]);
         Coin::where('code', 'BTC')->update(['address' => Input::get('btc_address')]);
         Coin::where('code', 'AUR')->update(['address' => Input::get('aur_address')]);
         Coin::where('code', 'BTC')->update(['pot' => Input::get('btc_pot')]);
         Coin::where('code', 'AUR')->update(['pot' => Input::get('aur_pot')]);
         if (Input::get('accounts') > 0) {
             $user = User::find(Input::get('accounts'));
             $user->username = Input::get('u_username');
             $user->email = Input::get('u_email');
             $user->btc_wallet_balance = Input::get('u_btc_balance');
             $user->aur_wallet_balance = Input::get('u_aur_balance');
             $user->save();
         }
         return Redirect::to('/')->with('alert', "Global Settings Updated!!");
     } else {
         if (Input::get('submit') == 'delete') {
             $id = Input::get('accounts');
             DB::table('users')->where('id', $id)->delete();
             return Redirect::to('/')->with('alert', "Account '{$id}' Deleted");
         }
     }
 }
 public function sendMessage()
 {
     $encoded_values = Settings::where('key', 'chat')->first();
     $decoded_values = json_decode($encoded_values->value);
     $v_data = ["thread_id" => Input::get('thread_id'), "user_id" => Input::get('user_id'), "message" => Input::get('message'), "attachment" => Input::hasFile('attachment') ? \Str::lower(Input::file('attachment')->getClientOriginalExtension()) : ""];
     $v_rules = ["thread_id" => 'required', "user_id" => 'required', "message" => 'required', "attachment" => 'in:' . $decoded_values->chat_file_types];
     $v = Validator::make($v_data, $v_rules);
     if ($v->passes() && Input::get("user_id") > 0 && Input::get("thread_id") > 0) {
         $thread_message = new ThreadMessages();
         $thread_message->thread_id = Input::get('thread_id');
         $thread_message->sender_id = Input::get('user_id');
         $thread_message->message = Input::get('message');
         $thread_message->save();
         if (Input::hasFile('attachment') && Input::file('attachment')->getSize() <= $decoded_values->max_file_size * 1024 * 1024) {
             $ticket_attachment = new TicketAttachments();
             $ticket_attachment->thread_id = Input::get('thread_id');
             $ticket_attachment->message_id = $thread_message->id;
             $ticket_attachment->has_attachment = Input::hasFile('attachment');
             $ticket_attachment->attachment_path = Input::hasFile('attachment') ? Utils::fileUpload(Input::file('attachment'), 'attachments') : '';
             $ticket_attachment->save();
         }
         return json_encode(["result" => 1]);
     } else {
         return json_encode(["result" => 0]);
     }
 }
Beispiel #4
0
 public static function Value($name)
 {
     if (!Settings::where('name', $name)->pluck('value')) {
         Settings::insert(array('name' => $name, 'value' => 'null', 'created_at' => '', 'updated_at' => ''));
     }
     return Settings::where('name', $name)->pluck('value');
 }
 static function hasAnyMailchimpPermissions()
 {
     $settings = json_decode(\Settings::where('key', 'mailchimp')->pluck('value'));
     if ((Permissions::hasPermission('mailchimp.pair_email') || Permissions::hasPermission('mailchimp.all') || Permissions::hasPermission('mailchimp.delete')) && $settings->use_mailchimp) {
         return true;
     } else {
         return false;
     }
 }
 public static function getSettingValue($name)
 {
     $setting = Settings::where('name', $name)->get()->first();
     if (!empty($setting)) {
         return $setting->value;
     } else {
         return false;
     }
 }
 public function updateSettings()
 {
     $current_settings = Input::get('settings');
     $settings = Settings::where('user_id', '=', Auth::user()->id)->first();
     $settings->default_networks = json_encode($current_settings);
     $settings->schedule_id = Input::get('schedule');
     $settings->save();
     return Redirect::to('/settings')->with('message', array('type' => 'success', 'text' => 'Settings was updated!'));
 }
 /**
  * insert settings
  * @param $key
  * @param $value
  */
 public function set($name, $value)
 {
     $setting = Settings::where('name', $name)->first();
     if ($setting) {
         $setting->value = $value;
         $setting->save();
     } else {
         Settings::create(['name' => $name, 'value' => $value]);
     }
 }
Beispiel #9
0
 public static function getValue($key)
 {
     if (Cache::has($key)) {
         return Cache::get($key);
     }
     $val = Settings::where('name', '=', $key)->first();
     if ($val === null) {
         return null;
     }
     Cache::put($key, $val->value, self::TTL_CACHE);
     return $val->value;
 }
Beispiel #10
0
 public function post()
 {
     if (Input::has('api_key') && Input::has('content')) {
         $api_key = Input::get('api_key');
         $content = Input::get('content');
         $settings = Settings::where('api_key', '=', $api_key)->first();
         $user_id = $settings->user_id;
         $default_networks = json_decode($settings->default_networks, true);
         $schedule = Carbon::now();
         if (Input::has('queue')) {
             $schedule_id = $settings->schedule_id;
             $interval = Schedule::find($schedule_id);
             if ($interval->rule == 'add') {
                 $schedule = $current_datetime->modify('+ ' . $interval->period);
             } else {
                 if ($interval->rule == 'random') {
                     $current_day = date('d');
                     $from_datetime = Carbon::now();
                     $to_datetime = $from_datetime->copy()->modify('+ ' . $interval->period);
                     $days_to_add = $from_datetime->diffInDays($to_datetime);
                     $day = mt_rand($current_day, $current_day + $days_to_add);
                     $hour = mt_rand(1, 23);
                     $minute = mt_rand(0, 59);
                     $second = mt_rand(0, 59);
                     //year, month and timezone is null
                     $schedule = Carbon::create(null, null, $day, $hour, $minute, $second, null);
                 }
             }
             if (empty($schedule)) {
                 $schedule = $current_datetime->addHours(1);
             }
         }
         if (!empty($default_networks)) {
             $post = new Post();
             $post->user_id = $user_id;
             $post->content = $content;
             $post->date_time = $schedule;
             $post->save();
             $post_id = $post->id;
             foreach ($default_networks as $network_id) {
                 $post_network = new PostNetwork();
                 $post_network->user_id = $user_id;
                 $post_network->post_id = $post_id;
                 $post_network->network_id = $network_id;
                 $post_network->status = 1;
                 $post_network->save();
             }
             Queue::later($schedule, 'SendPost@fire', array('post_id' => $post_id));
             $response_data = array('type' => 'success', 'text' => 'Your post was scheduled! It will be published on ' . $schedule->format('l jS \\o\\f F \\a\\t h:i A'));
             return $response_data;
         }
     }
 }
 /**
  * Update the specified resource in storage.
  *
  * @param  int  $id
  * @return Response
  */
 public function update($id)
 {
     if (ACL::checkUserPermission('settings.index') == false) {
         return Redirect::action('dashboard');
     }
     $settings = Settings::where('id', $id)->find($id);
     $settings->display_name = Input::get('display_name');
     $settings->value = Input::get('value');
     $settings->updated_at = date('Y-m-d H:i:s');
     if ($settings->save()) {
         $messageType = 'success';
         $message = 'Setting edit success';
     } else {
         $messageType = 'error';
         $message = 'Setting edit failed';
     }
     return Redirect::action('settings.index')->with($messageType, $message);
 }
 public function siteSettings()
 {
     if ($_POST) {
         $input = Input::all();
         foreach ($input as $key => $val) {
             if ($key == '_token' || $key == 'savesettings') {
                 continue;
             }
             if ($setting = Settings::where('name', $key)->first()) {
                 $setting->value = $val;
             } else {
                 $setting = new Settings();
                 $setting->name = $key;
                 $setting->value = htmlspecialchars($val);
             }
             $setting->save();
         }
         return Redirect::to('admin/site');
     }
     $settings = Settings::all();
     $this->layout->content = View::make('admin.settings')->with('settings', $settings);
 }
Beispiel #13
0
function send_notifications($id, $type, $title, $message, $is_imp = NULL)
{
    Log::info('push notification');
    $settings = Settings::where('key', 'push_notification')->first();
    $push_notification = $settings->value;
    if ($type == 'walker') {
        $user = Walker::find($id);
    } else {
        $user = Owner::find($id);
    }
    if ($push_notification == 1 || $is_imp == "imp") {
        if ($user->device_type == 'ios') {
            /* WARNING:- you can't pass devicetoken as string in GCM or IOS push
             * you have to pass array of devicetoken even thow it's only one device's token. */
            /* send_ios_push("E146C7DCCA5EBD49803278B3EE0C1825EF0FA6D6F0B1632A19F783CB02B2617B",$title,$message,$type); */
            send_ios_push($user->device_token, $title, $message, $type);
        } else {
            $message = json_encode($message);
            send_android_push($user->device_token, $title, $message);
        }
    }
}
 public function get_nearby()
 {
     $latitude = Input::get('latitude');
     $longitude = Input::get('longitude');
     $typestring = Input::get('type');
     $settings = Settings::where('key', 'default_search_radius')->first();
     $distance = $settings->value;
     $settings = Settings::where('key', 'default_distance_unit')->first();
     //$unit = $settings->value;
     //if ($unit == 0) {
     //     $multiply = 1.609344;
     //} elseif ($unit == 1) {
     $multiply = 1;
     // }
     if ($typestring == "") {
         $query = "SELECT " . "walker.id, " . "walker.first_name, " . "walker.last_name, " . "walker.latitude, " . "walker.longitude, " . "ROUND(" . $multiply . " * 3956 * acos( cos( radians('{$latitude}') ) * " . "cos( radians(latitude) ) * " . "cos( radians(longitude) - radians('{$longitude}') ) + " . "sin( radians('{$latitude}') ) * " . "sin( radians(latitude) ) ) ,8) as distance " . "from walker " . "where is_available = 1 and " . "is_active = 1 and " . "is_approved = 1 and " . "ROUND((" . $multiply . " * 3956 * acos( cos( radians('{$latitude}') ) * " . "cos( radians(latitude) ) * " . "cos( radians(longitude) - radians('{$longitude}') ) + " . "sin( radians('{$latitude}') ) * " . "sin( radians(latitude) ) ) ) ,8) <= {$distance} " . "order by distance";
     } else {
         $query = "SELECT " . "walker.id, " . "walker.first_name, " . "walker.last_name, " . "walker.latitude, " . "walker.longitude, " . "ROUND(" . $multiply . " * 3956 * acos( cos( radians('{$latitude}') ) * " . "cos( radians(walker.latitude) ) * " . "cos( radians(walker.longitude) - radians('{$longitude}') ) + " . "sin( radians('{$latitude}') ) * " . "sin( radians(walker.latitude) ) ) ,8) as distance " . "from walker " . "JOIN walker_services " . "where walker.is_available = 1 and " . "walker.is_active = 1 and " . "walker.is_approved = 1 and " . "ROUND((" . $multiply . " * 3956 * acos( cos( radians('{$latitude}') ) * " . "cos( radians(walker.latitude) ) * " . "cos( radians(walker.longitude) - radians('{$longitude}') ) + " . "sin( radians('{$latitude}') ) * " . "sin( radians(walker.latitude) ) ) ) ,8) <= {$distance} and " . "walker.id = walker_services.provider_id and " . "walker_services.type = {$typestring} " . "order by distance";
     }
     $walkers = DB::select(DB::raw($query));
     // return $walkers;
     foreach ($walkers as $key) {
         echo "<option value=" . $key->id . ">" . $key->first_name . " " . $key->last_name . "</option>";
     }
 }
 public function userForgotPassword()
 {
     $email = Input::get('email');
     $owner = Owner::where('email', $email)->first();
     if ($owner) {
         $new_password = time();
         $new_password .= rand();
         $new_password = sha1($new_password);
         $new_password = substr($new_password, 0, 8);
         $owner->password = Hash::make($new_password);
         $owner->save();
         // send email
         $settings = Settings::where('key', 'email_forgot_password')->first();
         $pattern = $settings->value;
         $pattern = str_replace('%password%', $new_password, $pattern);
         $subject = "Your New Password";
         email_notification($owner->id, 'owner', $pattern, $subject);
         return Redirect::to('user/signin')->with('success', 'password reseted successfully. Please check your inbox for new password.');
     } else {
         return Redirect::to('user/signin')->with('error', 'This email ID is not registered with us');
     }
 }
 public function get_completed_requests()
 {
     $walker_id = Input::get('id');
     $token = Input::get('token');
     $from = Input::get('from_date');
     // 2015-03-11 07:45:01
     $to_date = Input::get('to_date');
     //2015-03-11 07:45:01
     $validator = Validator::make(array('walker_id' => $walker_id, 'token' => $token), array('walker_id' => 'required|integer', 'token' => 'required'));
     if ($validator->fails()) {
         $error_messages = $validator->messages()->all();
         $response_array = array('success' => false, 'error' => 'Invalid Input', 'error_code' => 401, 'error_messages' => $error_messages);
         $response_code = 200;
     } else {
         $is_admin = $this->isAdmin($token);
         if ($walker_data = $this->getWalkerData($walker_id, $token, $is_admin)) {
             // check for token validity
             if (is_token_active($walker_data->token_expiry) || $is_admin) {
                 if ($from != "" && $to_date != "") {
                     $request_data = DB::table('request')->where('request.confirmed_walker', $walker_id)->where('request.is_completed', 1)->where('request_start_time', '>', $from)->where('request_start_time', '<', $to_date)->leftJoin('owner', 'request.owner_id', '=', 'owner.id')->leftJoin('request_services', 'request_services.request_id', '=', 'request.id')->select('request.*', 'request.request_start_time', 'request.transfer_amount', 'owner.first_name', 'owner.last_name', 'owner.phone', 'owner.email', 'owner.picture', 'owner.bio', 'request.distance', 'request.time', 'request.promo_code', 'request_services.base_price', 'request_services.distance_cost', 'request_services.time_cost', 'request.total')->get();
                 } else {
                     $request_data = DB::table('request')->where('request.confirmed_walker', $walker_id)->where('request.is_completed', 1)->leftJoin('owner', 'request.owner_id', '=', 'owner.id')->leftJoin('request_services', 'request_services.request_id', '=', 'request.id')->select('request.*', 'request.request_start_time', 'request.transfer_amount', 'owner.first_name', 'owner.last_name', 'owner.phone', 'owner.email', 'owner.picture', 'owner.bio', 'request.distance', 'request.time', 'request.promo_code', 'request_services.base_price', 'request_services.distance_cost', 'request_services.time_cost', 'request.total')->get();
                 }
                 $requests = array();
                 $settings = Settings::where('key', 'default_distance_unit')->first();
                 /* $setbase_price = Settings::where('key', 'base_price')->first();
                    $setdistance_price = Settings::where('key', 'price_per_unit_distance')->first();
                    $settime_price = Settings::where('key', 'price_per_unit_time')->first(); */
                 $unit = $settings->value;
                 if ($unit == 0) {
                     $unit_set = 'kms';
                 } elseif ($unit == 1) {
                     $unit_set = 'miles';
                 }
                 $walker = Walker::where('id', $walker_id)->first();
                 foreach ($request_data as $data) {
                     $discount = 0;
                     if ($data->promo_id != "") {
                         $promo_code = PromoCodes::where('id', $data->promo_id)->first();
                         if (isset($promo_code->id)) {
                             $promo_value = $promo_code->value;
                             $promo_type = $promo_code->type;
                             if ($promo_type == 1) {
                                 // Percent Discount
                                 $discount = $data->total * $promo_value / 100;
                             } elseif ($promo_type == 2) {
                                 // Absolute Discount
                                 $discount = $promo_value;
                             }
                         }
                     }
                     $is_multiple_service = Settings::where('key', 'allow_multiple_service')->first();
                     if ($is_multiple_service->value == 0) {
                         $requestserv = RequestServices::where('request_id', $data->id)->first();
                         $request_typ = ProviderType::where('id', '=', $requestserv->type)->first();
                         $request['id'] = $data->id;
                         $request['date'] = $data->request_start_time;
                         $request['distance'] = (string) $data->distance;
                         $request['unit'] = $unit_set;
                         $request['time'] = $data->time;
                         $request['base_distance'] = $request_typ->base_distance;
                         /* $currency = Keywords::where('alias', 'Currency')->first();
                            $request['currency'] = $currency->keyword; */
                         $request['currency'] = Config::get('app.generic_keywords.Currency');
                         if ($requestserv->base_price != 0) {
                             $request['base_price'] = currency_converted($requestserv->base_price);
                             $request['distance_cost'] = currency_converted($requestserv->distance_cost);
                             $request['time_cost'] = currency_converted($requestserv->time_cost);
                         } else {
                             /* $setbase_price = Settings::where('key', 'base_price')->first();
                                $request['base_price'] = currency_converted($setbase_price->value);
                                $setdistance_price = Settings::where('key', 'price_per_unit_distance')->first();
                                $request['distance_cost'] = currency_converted($setdistance_price->value);
                                $settime_price = Settings::where('key', 'price_per_unit_time')->first();
                                $request['time_cost'] = currency_converted($settime_price->value); */
                             $request['base_price'] = currency_converted($request_typ->base_price);
                             $request['distance_cost'] = currency_converted($request_typ->price_per_unit_distance);
                             $request['time_cost'] = currency_converted($request_typ->price_per_unit_time);
                         }
                         $admins = Admin::first();
                         $request['walker']['email'] = $walker->email;
                         $request['admin']['email'] = $admins->username;
                         if ($data->transfer_amount != 0) {
                             $request['walker']['amount'] = currency_converted($data->total - $data->transfer_amount);
                             $request['admin']['amount'] = currency_converted($data->transfer_amount);
                         } else {
                             $request['walker']['amount'] = currency_converted($data->transfer_amount);
                             $request['admin']['amount'] = currency_converted($data->total - $data->transfer_amount);
                         }
                         $request['total'] = currency_converted($data->total + $data->ledger_payment + $discount);
                         $rserv = RequestServices::where('request_id', $data->id)->get();
                         $typs = array();
                         $typi = array();
                         $typp = array();
                         $total_price = 0;
                         foreach ($rserv as $typ) {
                             $typ1 = ProviderType::where('id', $typ->type)->first();
                             $typ_price = ProviderServices::where('provider_id', $data->confirmed_walker)->where('type', $typ->type)->first();
                             if ($typ_price->base_price > 0) {
                                 $typp1 = 0.0;
                                 $typp1 = $typ_price->base_price;
                             } elseif ($typ_price->price_per_unit_distance > 0) {
                                 $typp1 = 0.0;
                                 foreach ($rserv as $key) {
                                     $typp1 = $typp1 + $key->distance_cost;
                                 }
                             } else {
                                 $typp1 = 0.0;
                             }
                             $typs['name'] = $typ1->name;
                             $typs['price'] = currency_converted($typp1);
                             $total_price = $total_price + $typp1;
                             array_push($typi, $typs);
                         }
                         $request['type'] = $typi;
                     } else {
                         $request['id'] = $data->id;
                         $request['date'] = $data->request_start_time;
                         $request['distance'] = (string) $data->distance;
                         $request['unit'] = $unit_set;
                         $request['time'] = $data->time;
                         /* $currency = Keywords::where('alias', 'Currency')->first();
                            $request['currency'] = $currency->keyword; */
                         $request['currency'] = Config::get('app.generic_keywords.Currency');
                         //print_r($data);
                         $rserv = RequestServices::where('request_id', $data->id)->get();
                         $typs = array();
                         $typi = array();
                         $typp = array();
                         $total_price = 0;
                         foreach ($rserv as $typ) {
                             $typ1 = ProviderType::where('id', $typ->type)->first();
                             $typ_price = ProviderServices::where('provider_id', $data->confirmed_walker)->where('type', $typ->type)->first();
                             if ($typ_price->base_price > 0) {
                                 $typp1 = 0.0;
                                 $typp1 = $typ_price->base_price;
                             } elseif ($typ_price->price_per_unit_distance > 0) {
                                 $typp1 = 0.0;
                                 foreach ($rserv as $key) {
                                     $typp1 = $typp1 + $key->distance_cost;
                                 }
                             } else {
                                 $typp1 = 0.0;
                             }
                             $typs['name'] = $typ1->name;
                             $typs['price'] = currency_converted($typp1);
                             $total_price = $total_price + $typp1;
                             array_push($typi, $typs);
                         }
                         $request['type'] = $data->{$typi};
                         //  print_r($typp1);
                         //print_r($request);
                         $base_price = 0;
                         $distance_cost = 0;
                         $time_cost = 0;
                         foreach ($rserv as $key) {
                             $base_price = $base_price + $key->base_price;
                             $distance_cost = $distance_cost + $key->distance_cost;
                             $time_cost = $time_cost + $key->time_cost;
                         }
                         $request['base_price'] = currency_converted($base_price);
                         $request['distance_cost'] = currency_converted($distance_cost);
                         $request['time_cost'] = currency_converted($time_cost);
                         $request['total'] = currency_converted($total_price);
                     }
                     /* path */
                     $id = $data->id;
                     $locations = WalkLocation::where('request_id', $data->id)->orderBy('id')->get();
                     $start = $end = $map = "";
                     if (count($locations) >= 1) {
                         $start = WalkLocation::where('request_id', $id)->orderBy('id')->first();
                         $end = WalkLocation::where('request_id', $id)->orderBy('id', 'desc')->first();
                         $map = "https://maps-api-ssl.google.com/maps/api/staticmap?size=249x249&scale=2&markers=shadow:true|scale:2|icon:http://d1a3f4spazzrp4.cloudfront.net/receipt-new/marker-start@2x.png|{$start->latitude},{$start->longitude}&markers=shadow:false|scale:2|icon:http://d1a3f4spazzrp4.cloudfront.net/receipt-new/marker-finish@2x.png|{$end->latitude},{$end->longitude}&path=color:0x2dbae4ff|weight:4";
                         foreach ($locations as $location) {
                             $map .= "|{$location->latitude},{$location->longitude}";
                         }
                         /* $map.="&key=" . Config::get('app.gcm_browser_key'); */
                     }
                     $request['start_lat'] = "";
                     if (isset($start->latitude)) {
                         $request['start_lat'] = $start->latitude;
                     }
                     $request['start_long'] = "";
                     if (isset($start->longitude)) {
                         $request['start_long'] = $start->longitude;
                     }
                     $request['end_lat'] = "";
                     if (isset($end->latitude)) {
                         $request['end_lat'] = $end->latitude;
                     }
                     $request['end_long'] = "";
                     if (isset($end->longitude)) {
                         $request['end_long'] = $end->longitude;
                     }
                     $request['map_url'] = $map;
                     /* path END */
                     /* $request['owner']['first_name'] = $data->first_name;
                        $request['owner']['last_name'] = $data->last_name;
                        $request['owner']['phone'] = $data->phone;
                        $request['owner']['email'] = $data->email;
                        $request['owner']['picture'] = $data->picture;
                        $request['owner']['bio'] = $data->bio;
                        $request['owner']['payment_opt'] = $data->payment_mode; */
                     $request['base_price'] = currency_converted($data->base_price);
                     $request['distance_cost'] = currency_converted($data->distance_cost);
                     $request['time_cost'] = currency_converted($data->time_cost);
                     $request['total'] = currency_converted($data->total - $data->ledger_payment - $data->promo_payment);
                     $request['main_total'] = currency_converted($data->total);
                     $request['referral_bonus'] = currency_converted($data->ledger_payment);
                     $request['promo_bonus'] = currency_converted($data->promo_payment);
                     $request['payment_type'] = $data->payment_mode;
                     $request['is_paid'] = $data->is_paid;
                     $request['promo_id'] = $data->promo_id;
                     $request['promo_code'] = $data->promo_code;
                     $request['owner']['first_name'] = $data->first_name;
                     $request['owner']['last_name'] = $data->last_name;
                     $request['owner']['phone'] = $data->phone;
                     $request['owner']['email'] = $data->email;
                     $request['owner']['picture'] = $data->picture;
                     $request['owner']['bio'] = $data->bio;
                     $request['owner']['payment_opt'] = $data->payment_mode;
                     array_push($requests, $request);
                 }
                 $response_array = array('success' => true, 'requests' => $requests);
                 $response_code = 200;
             } else {
                 $response_array = array('success' => false, 'error' => 'Token Expired', 'error_code' => 405);
                 $response_code = 200;
             }
         } else {
             if ($is_admin) {
                 /* $var = Keywords::where('id', 1)->first();
                    $response_array = array('success' => false, 'error' => '' . $var->keyword . ' ID not Found', 'error_code' => 410); */
                 $response_array = array('success' => false, 'error' => '' . Config::get('app.generic_keywords.Provider') . ' ID not Found', 'error_code' => 410);
             } else {
                 $response_array = array('success' => false, 'error' => 'Not a valid token', 'error_code' => 406);
             }
             $response_code = 200;
         }
     }
     $response = Response::json($response_array, $response_code);
     return $response;
 }
 public function schedule_request()
 {
     $time = date("Y-m-d H:i:s");
     $query = "SELECT id,owner_id,current_walker,TIMESTAMPDIFF(SECOND,request_start_time, '{$time}') as diff from request where status = 0 and is_cancelled = 0";
     $results = DB::select(DB::raw($query));
     foreach ($results as $result) {
         $settings = Settings::where('key', 'provider_timeout')->first();
         $timeout = $settings->value;
         if ($result->diff >= $timeout) {
             // Archiving Old Walker
             RequestMeta::where('request_id', '=', $result->id)->where('walker_id', '=', $result->current_walker)->update(array('status' => 2));
             $request_meta = RequestMeta::where('request_id', '=', $result->id)->where('status', '=', 0)->orderBy('created_at')->first();
             // update request
             if (isset($request_meta->walker_id)) {
                 // assign new walker
                 Requests::where('id', '=', $result->id)->update(array('current_walker' => $request_meta->walker_id, 'request_start_time' => date("Y-m-d H:i:s")));
                 // Send Notification
                 $walker = Walker::find($request_meta->walker_id);
                 $owner_data = Owner::find($result->owner_id);
                 $msg_array = array();
                 $msg_array['request_id'] = $result->id;
                 $msg_array['id'] = $request_meta->walker_id;
                 if ($walker) {
                     $msg_array['token'] = $walker->token;
                 }
                 $msg_array['client_profile'] = array();
                 $msg_array['client_profile']['name'] = $owner_data->first_name . " " . $owner_data->last_name;
                 $msg_array['client_profile']['picture'] = $owner_data->picture;
                 $msg_array['client_profile']['bio'] = $owner_data->bio;
                 $msg_array['client_profile']['address'] = $owner_data->address;
                 $msg_array['client_profile']['phone'] = $owner_data->phone;
                 $title = "New Request";
                 $message = $msg_array;
                 send_notifications($request_meta->walker_id, "walker", $title, $message);
             } else {
                 // request ended
                 Requests::where('id', '=', $result->id)->update(array('current_walker' => 0, 'status' => 1));
                 $settings = Settings::where('key', 'sms_request_unanswered')->first();
                 $pattern = $settings->value;
                 $pattern = str_replace('%id%', $result->id, $pattern);
                 sms_notification(1, 'admin', $pattern);
                 // send email
                 $settings = Settings::where('key', 'email_request_unanswered')->first();
                 $pattern = $settings->value;
                 $pattern = str_replace('%id%', $result->id, $pattern);
                 $pattern = str_replace('%url%', web_url() . "/admin/request/map/" . $result->id, $pattern);
                 $subject = "New Request Unansweres";
                 email_notification(1, 'admin', $pattern, $subject);
             }
         }
     }
 }
 public function payment_details()
 {
     $braintree_environment = Config::get('app.braintree_environment');
     $braintree_merchant_id = Config::get('app.braintree_merchant_id');
     $braintree_public_key = Config::get('app.braintree_public_key');
     $braintree_private_key = Config::get('app.braintree_private_key');
     $braintree_cse = Config::get('app.braintree_cse');
     $twillo_account_sid = Config::get('app.twillo_account_sid');
     $twillo_auth_token = Config::get('app.twillo_auth_token');
     $twillo_number = Config::get('app.twillo_number');
     $stripe_publishable_key = Config::get('app.stripe_publishable_key');
     $default_payment = Config::get('app.default_payment');
     $stripe_secret_key = Config::get('app.stripe_secret_key');
     $mail_driver = Config::get('mail.mail_driver');
     $email_name = Config::get('mail.from.name');
     $email_address = Config::get('mail.from.address');
     $mandrill_secret = Config::get('services.mandrill_secret');
     $install = array('braintree_environment' => $braintree_environment, 'braintree_merchant_id' => $braintree_merchant_id, 'braintree_public_key' => $braintree_public_key, 'braintree_private_key' => $braintree_private_key, 'braintree_cse' => $braintree_cse, 'twillo_account_sid' => $twillo_account_sid, 'twillo_auth_token' => $twillo_auth_token, 'twillo_number' => $twillo_number, 'stripe_publishable_key' => $stripe_publishable_key, 'stripe_secret_key' => $stripe_secret_key, 'mail_driver' => $mail_driver, 'email_address' => $email_address, 'email_name' => $email_name, 'mandrill_secret' => $mandrill_secret, 'default_payment' => $default_payment);
     $start_date = Input::get('start_date');
     $end_date = Input::get('end_date');
     $submit = Input::get('submit');
     $walker_id = Input::get('walker_id');
     $owner_id = Input::get('owner_id');
     $status = Input::get('status');
     $start_time = date("Y-m-d H:i:s", strtotime($start_date));
     $end_time = date("Y-m-d H:i:s", strtotime($end_date));
     $start_date = date("Y-m-d", strtotime($start_date));
     $end_date = date("Y-m-d", strtotime($end_date));
     $query = DB::table('request')->leftJoin('owner', 'request.owner_id', '=', 'owner.id')->leftJoin('walker', 'request.confirmed_walker', '=', 'walker.id')->leftJoin('walker_type', 'walker.type', '=', 'walker_type.id');
     if (Input::get('start_date') && Input::get('end_date')) {
         $query = $query->where('request_start_time', '>=', $start_time)->where('request_start_time', '<=', $end_time);
     }
     if (Input::get('walker_id') && Input::get('walker_id') != 0) {
         $query = $query->where('request.confirmed_walker', '=', $walker_id);
     }
     if (Input::get('owner_id') && Input::get('owner_id') != 0) {
         $query = $query->where('request.owner_id', '=', $owner_id);
     }
     if (Input::get('status') && Input::get('status') != 0) {
         if ($status == 1) {
             $query = $query->where('request.is_completed', '=', 1);
         } else {
             $query = $query->where('request.is_cancelled', '=', 1);
         }
     } else {
         $query = $query->where(function ($que) {
             $que->where('request.is_completed', '=', 1)->orWhere('request.is_cancelled', '=', 1);
         });
     }
     /* $walks = $query->select('request.request_start_time', 'walker_type.name as type', 'request.ledger_payment', 'request.card_payment', 'owner.first_name as owner_first_name', 'owner.last_name as owner_last_name', 'walker.first_name as walker_first_name', 'walker.last_name as walker_last_name', 'owner.id as owner_id', 'walker.id as walker_id', 'request.id as id', 'request.created_at as date', 'request.*', 'request.is_walker_arrived', 'request.payment_mode', 'request.is_completed', 'request.is_paid', 'request.is_walker_started', 'request.confirmed_walker'
        , 'request.status', 'request.time', 'request.distance', 'request.total', 'request.is_cancelled');
        $walks = $walks->paginate(10); */
     $walks = $query->select('request.request_start_time', 'walker_type.name as type', 'request.ledger_payment', 'request.card_payment', 'owner.first_name as owner_first_name', 'owner.last_name as owner_last_name', 'walker.first_name as walker_first_name', 'walker.last_name as walker_last_name', 'owner.id as owner_id', 'walker.id as walker_id', 'request.id as id', 'request.created_at as date', 'request.is_started', 'request.is_walker_arrived', 'request.payment_mode', 'request.is_completed', 'request.is_paid', 'request.is_walker_started', 'request.confirmed_walker', 'request.promo_id', 'request.promo_code', 'request.status', 'request.time', 'request.distance', 'request.total', 'request.is_cancelled', 'request.promo_payment');
     $walks = $walks->orderBy('id', 'DESC')->paginate(10);
     $query = DB::table('request')->leftJoin('owner', 'request.owner_id', '=', 'owner.id')->leftJoin('walker', 'request.confirmed_walker', '=', 'walker.id')->leftJoin('walker_type', 'walker.type', '=', 'walker_type.id');
     if (Input::get('start_date') && Input::get('end_date')) {
         $query = $query->where('request_start_time', '>=', $start_time)->where('request_start_time', '<=', $end_time);
     }
     if (Input::get('walker_id') && Input::get('walker_id') != 0) {
         $query = $query->where('request.confirmed_walker', '=', $walker_id);
     }
     if (Input::get('owner_id') && Input::get('owner_id') != 0) {
         $query = $query->where('request.owner_id', '=', $owner_id);
     }
     $completed_rides = $query->where('request.is_completed', 1)->count();
     $query = DB::table('request')->leftJoin('owner', 'request.owner_id', '=', 'owner.id')->leftJoin('walker', 'request.confirmed_walker', '=', 'walker.id')->leftJoin('walker_type', 'walker.type', '=', 'walker_type.id');
     if (Input::get('start_date') && Input::get('end_date')) {
         $query = $query->where('request_start_time', '>=', $start_time)->where('request_start_time', '<=', $end_time);
     }
     if (Input::get('walker_id') && Input::get('walker_id') != 0) {
         $query = $query->where('request.confirmed_walker', '=', $walker_id);
     }
     if (Input::get('owner_id') && Input::get('owner_id') != 0) {
         $query = $query->where('request.owner_id', '=', $owner_id);
     }
     $cancelled_rides = $query->where('request.is_cancelled', 1)->count();
     $query = DB::table('request')->leftJoin('owner', 'request.owner_id', '=', 'owner.id')->leftJoin('walker', 'request.confirmed_walker', '=', 'walker.id')->leftJoin('walker_type', 'walker.type', '=', 'walker_type.id');
     if (Input::get('start_date') && Input::get('end_date')) {
         $query = $query->where('request_start_time', '>=', $start_time)->where('request_start_time', '<=', $end_time);
     }
     if (Input::get('walker_id') && Input::get('walker_id') != 0) {
         $query = $query->where('request.confirmed_walker', '=', $walker_id);
     }
     if (Input::get('owner_id') && Input::get('owner_id') != 0) {
         $query = $query->where('request.owner_id', '=', $owner_id);
     }
     $card_payment = $query->where('request.is_completed', 1)->sum('request.card_payment');
     $query = DB::table('request')->leftJoin('owner', 'request.owner_id', '=', 'owner.id')->leftJoin('walker', 'request.confirmed_walker', '=', 'walker.id')->leftJoin('walker_type', 'walker.type', '=', 'walker_type.id');
     if (Input::get('start_date') && Input::get('end_date')) {
         $query = $query->where('request_start_time', '>=', $start_time)->where('request_start_time', '<=', $end_time);
     }
     if (Input::get('walker_id') && Input::get('walker_id') != 0) {
         $query = $query->where('request.confirmed_walker', '=', $walker_id);
     }
     if (Input::get('owner_id') && Input::get('owner_id') != 0) {
         $query = $query->where('request.owner_id', '=', $owner_id);
     }
     $credit_payment = $query->where('request.is_completed', 1)->sum('request.ledger_payment');
     $cash_payment = $query->where('request.payment_mode', 1)->sum('request.total');
     if (Input::get('submit') && Input::get('submit') == 'Download_Report') {
         header('Content-Type: text/csv; charset=utf-8');
         header('Content-Disposition: attachment; filename=data.csv');
         $handle = fopen('php://output', 'w');
         $settings = Settings::where('key', 'default_distance_unit')->first();
         $unit = $settings->value;
         if ($unit == 0) {
             $unit_set = 'kms';
         } elseif ($unit == 1) {
             $unit_set = 'miles';
         }
         fputcsv($handle, array('ID', 'Date', 'Type of Service', 'Provider', 'Owner', 'Distance (' . $unit_set . ')', 'Time (Minutes)', 'Payment Mode', 'Earning', 'Referral Bonus', 'Promotional Bonus', 'Card Payment'));
         foreach ($walks as $request) {
             $pay_mode = "Card Payment";
             if ($request->payment_mode == 1) {
                 $pay_mode = "Cash Payment";
             }
             fputcsv($handle, array($request->id, date('l, F d Y h:i A', strtotime($request->request_start_time)), $request->type, $request->walker_first_name . " " . $request->walker_last_name, $request->owner_first_name . " " . $request->owner_last_name, sprintf2($request->distance, 2), sprintf2($request->time, 2), $pay_mode, sprintf2($request->total, 2), sprintf2($request->ledger_payment, 2), sprintf2($request->promo_payment, 2), sprintf2($request->card_payment, 2)));
         }
         fputcsv($handle, array());
         fputcsv($handle, array());
         fputcsv($handle, array('Total Trips', $completed_rides + $cancelled_rides));
         fputcsv($handle, array('Completed Trips', $completed_rides));
         fputcsv($handle, array('Cancelled Trips', $cancelled_rides));
         fputcsv($handle, array('Total Payments', sprintf2($credit_payment + $card_payment, 2)));
         fputcsv($handle, array('Card Payment', sprintf2($card_payment, 2)));
         fputcsv($handle, array('Credit Payment', $credit_payment));
         fclose($handle);
         $headers = array('Content-Type' => 'text/csv');
     } else {
         /* $currency_selected = Keywords::where('alias', 'Currency')->first();
            $currency_sel = $currency_selected->keyword; */
         $currency_sel = Config::get('app.generic_keywords.Currency');
         $walkers = Walker::paginate(10);
         $owners = Owner::paginate(10);
         $payment_default = ucfirst(Config::get('app.default_payment'));
         $title = ucwords(trans('customize.payment_details'));
         /* 'Payments' */
         return View::make('payment')->with('title', $title)->with('page', 'payments')->with('walks', $walks)->with('owners', $owners)->with('walkers', $walkers)->with('completed_rides', $completed_rides)->with('cancelled_rides', $cancelled_rides)->with('card_payment', $card_payment)->with('install', $install)->with('currency_sel', $currency_sel)->with('cash_payment', $cash_payment)->with('credit_payment', $credit_payment)->with('payment_default', $payment_default);
     }
 }
 public function forgot_password()
 {
     $type = Input::get('type');
     $email = Input::get('email');
     if ($type == 1) {
         // Walker
         $walker_data = Walker::where('email', $email)->first();
         if ($walker_data) {
             $walker = Walker::find($walker_data->id);
             $new_password = time();
             $new_password .= rand();
             $new_password = sha1($new_password);
             $new_password = substr($new_password, 0, 8);
             $walker->password = Hash::make($new_password);
             $walker->save();
             // send email
             $settings = Settings::where('key', 'email_forgot_password')->first();
             $pattern = $settings->value;
             $pattern = str_replace('%password%', $new_password, $pattern);
             $subject = "Your New Password";
             email_notification($walker->id, 'walker', $pattern, $subject);
             $response_array = array();
             $response_array['success'] = true;
             $response_code = 200;
             $response = Response::json($response_array, $response_code);
             return $response;
         } else {
             $response_array = array('success' => false, 'error' => 'This Email is not Registered', 'error_code' => 425);
             $response_code = 200;
             $response = Response::json($response_array, $response_code);
             return $response;
         }
     } else {
         $owner_data = Owner::where('email', $email)->first();
         if ($owner_data) {
             $owner = Owner::find($owner_data->id);
             $new_password = time();
             $new_password .= rand();
             $new_password = sha1($new_password);
             $new_password = substr($new_password, 0, 8);
             $owner->password = Hash::make($new_password);
             $owner->save();
             $settings = Settings::where('key', 'email_forgot_password')->first();
             $pattern = $settings->value;
             $pattern = str_replace('%password%', $new_password, $pattern);
             $subject = "Your New Password";
             email_notification($owner->id, 'owner', $pattern, $subject);
             $response_array = array();
             $response_array['success'] = true;
             $response_code = 200;
             $response = Response::json($response_array, $response_code);
             return $response;
         } else {
             $response_array = array('success' => false, 'error' => 'This Email is not Registered', 'error_code' => 425);
             $response_code = 200;
             $response = Response::json($response_array, $response_code);
             return $response;
         }
     }
 }
 public function detailsContact($id)
 {
     $rules = array('name' => 'required|min:3', 'email' => 'required|email|min:3', 'message' => 'required|min:10');
     $page = Page::where('type', '=', 3)->first();
     $entry = Catalog::find($id);
     $validator = Validator::make(Input::all(), $rules);
     if ($validator->fails()) {
         return View::make('front.pages.details')->withErrors($validator)->with(Input::all())->with(['entry' => $entry, 'page' => $page]);
     } else {
         $settingsEmail = Settings::where('key', '=', 'contact_email')->first();
         $settingsEmailName = Settings::where('key', '=', 'contact_name')->first();
         $data = array('subject' => 'Inventory contact Classiccarseurope.eu', 'to' => $settingsEmail->value, 'to_name' => $settingsEmailName->value, 'from_message' => Input::get('message'), 'from_name' => Input::get('name'), 'from' => Input::get('email'), 'phone' => Input::get('phone'));
         Mail::send('emails.front.contact', $data, function ($message) use($data) {
             $message->to($data['to'], $data['to_name'])->from($data['from'], $data['from_name'])->subject($data['subject']);
         });
         return View::make('front.pages.details')->with(['entry' => $entry, 'page' => $page, 'message' => 'Mail send successfully']);
     }
 }
 /**
  * Post settings
  * @param type Settings $set 
  * @param type Request $request 
  * @return type view
  */
 public function PostSettings(Settings $set, Request $request)
 {
     $settings = $set->where('id', '1')->first();
     $pass = $request->input('password');
     $password = Crypt::encrypt($pass);
     $settings->password = $password;
     try {
         $settings->save();
     } catch (Exception $e) {
         return redirect()->back()->with('fails', $e->errorInfo[2]);
     }
     if (Input::file('logo')) {
         $name = Input::file('logo')->getClientOriginalName();
         $destinationPath = 'dist/logo';
         $fileName = rand(00, 9999) . '.' . $name;
         Input::file('logo')->move($destinationPath, $fileName);
         $settings->logo = $fileName;
         $settings->save();
     }
     try {
         $settings->fill($request->except('logo', 'password'))->save();
         return redirect()->back()->with('success', 'Settings updated Successfully');
     } catch (Exception $e) {
         return redirect()->back()->with('fails', $e->errorInfo[2]);
     }
 }
 public function payment_options_allowed()
 {
     $token = Input::get('token');
     $owner_id = Input::get('id');
     $validator = Validator::make(array('token' => $token, 'owner_id' => $owner_id), array('token' => 'required', 'owner_id' => 'required|integer'));
     if ($validator->fails()) {
         $error_messages = $validator->messages()->all();
         $response_array = array('success' => false, 'error' => 'Invalid Input', 'error_code' => 401, 'error_messages' => $error_messages);
         $response_code = 200;
     } else {
         $is_admin = $this->isAdmin($token);
         if ($owner_data = $this->getOwnerData($owner_id, $token, $is_admin)) {
             // check for token validity
             if (is_token_active($owner_data->token_expiry)) {
                 // Payment options allowed
                 $payment_options = array();
                 $payments = Payment::where('owner_id', $owner_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));
                 /* SEND REFERRAL & PROMO INFO */
                 $settings = Settings::where('key', 'referral_code_activation')->first();
                 $referral_code_activation = $settings->value;
                 if ($referral_code_activation) {
                     $referral_code_activation_txt = "referral on";
                 } else {
                     $referral_code_activation_txt = "referral off";
                 }
                 $settings = Settings::where('key', 'promotional_code_activation')->first();
                 $promotional_code_activation = $settings->value;
                 if ($promotional_code_activation) {
                     $promotional_code_activation_txt = "promo on";
                 } else {
                     $promotional_code_activation_txt = "promo off";
                 }
                 /* SEND REFERRAL & PROMO INFO */
                 // Promo code allowed
                 /* $promosett = Settings::where('key', 'promo_code')->first(); */
                 if ($promotional_code_activation == 1) {
                     $promo_allow = 1;
                 } else {
                     $promo_allow = 0;
                 }
                 $response_array = array('success' => true, 'payment_options' => $payment_options, 'promo_allow' => $promo_allow, 'is_referral_active' => $referral_code_activation, 'is_referral_active_txt' => $referral_code_activation_txt, 'is_promo_active' => $promotional_code_activation, 'is_promo_active_txt' => $promotional_code_activation_txt);
             } else {
                 /* $var = Keywords::where('id', 2)->first();
                    $response_array = array('success' => false, 'error' => '' . $var->keyword . ' ID not Found', 'error_code' => 410); */
                 $response_array = array('success' => false, 'error' => '' . Config::get('app.generic_keywords.User') . ' ID not Found', 'error_code' => 410);
             }
         } else {
             $response_array = array('success' => false, 'error' => 'Not a valid token', 'error_code' => 406);
         }
         $response_code = 200;
     }
     $response = Response::json($response_array, $response_code);
     return $response;
 }
 public function get_provider_list()
 {
     $latitude = Input::get('usr_lat');
     $longitude = Input::get('user_long');
     $validator = Validator::make(array('usr_lat' => $latitude, 'user_long' => $longitude), array('usr_lat' => 'required', 'user_long' => 'required'));
     if ($validator->fails()) {
         $error_messages = $validator->messages()->all();
         $response_array = array('success' => false, 'error' => 'Invalid Input', 'error_code' => 401, 'error_messages' => $error_messages);
         $response_code = 200;
     } else {
         $setbase_price = Settings::where('key', 'base_price')->first();
         $settings = Settings::where('key', 'default_search_radius')->first();
         $distance = $settings->value;
         $settings = Settings::where('key', 'default_distance_unit')->first();
         $unit = $settings->value;
         if ($unit == 0) {
             $multiply = 1.609344;
         } elseif ($unit == 1) {
             $multiply = 1;
         }
         $query = "SELECT *, " . "ROUND(" . $multiply . " * 3956 * acos( cos( radians('{$latitude}') ) * " . "cos( radians(latitude) ) * " . "cos( radians(longitude) - radians('{$longitude}') ) + " . "sin( radians('{$latitude}') ) * " . "sin( radians(latitude) ) ) ,8) as distance " . "from walker " . "where is_available = 1 and " . "is_active = 1 and " . "is_approved = 1 and " . "ROUND((" . $multiply . " * 3956 * acos( cos( radians('{$latitude}') ) * " . "cos( radians(latitude) ) * " . "cos( radians(longitude) - radians('{$longitude}') ) + " . "sin( radians('{$latitude}') ) * " . "sin( radians(latitude) ) ) ) ,8) <= {$distance} " . "order by distance " . "LIMIT 5";
         $walkers_list = DB::select(DB::raw($query));
         $walker_data = array();
         if ($walkers_list) {
             foreach ($walkers_list as $walkers) {
                 $walker_list = array();
                 $walker_list['id'] = $walkers->id;
                 $walker_list['first_name'] = $walkers->first_name;
                 $walker_list['last_name'] = $walkers->last_name;
                 $walker_list['phone'] = $walkers->phone;
                 $walker_list['email'] = $walkers->email;
                 $walker_list['bio'] = $walkers->bio;
                 $walker_list['address'] = $walkers->address;
                 $walker_list['state'] = $walkers->state;
                 $walker_list['country'] = $walkers->country;
                 $walker_list['zipcode'] = $walkers->zipcode;
                 $walker_list['latitude'] = $walkers->latitude;
                 $walker_list['longitude'] = $walkers->longitude;
                 $walker_list['type'] = $walkers->type;
                 $walker_list['car_model'] = $walkers->car_model;
                 $walker_list['car_number'] = $walkers->car_number;
                 $walker_list['bearing'] = $walkers->bearing;
                 $walker_list['rate'] = $walkers->rate;
                 $walker_list['num_rating'] = $walkers->rate_count;
                 $walker_list['picture'] = $walkers->picture;
                 $typ_price = ProviderServices::where('provider_id', $walkers->id)->get();
                 $base = '';
                 foreach ($typ_price as $key) {
                     $base = $base + $key->base_price;
                 }
                 $walker_list['base_price'] = $base;
                 array_push($walker_data, $walker_list);
             }
             if (!empty($walker_data)) {
                 $response_array = array('success' => true, 'walker_list' => $walker_data);
             } else {
                 $response_array = array('success' => false, 'error' => 'No ' . Config::get('app.generic_keywords.Provider') . ' found around you.', 'error_code' => 411, 'walker_list' => $walker_data);
             }
             $response_code = 200;
         } else {
             $response_array = array('success' => false, 'error' => 'No ' . Config::get('app.generic_keywords.Provider') . ' found around you.', 'error_code' => 411, 'walker_list' => $walker_data);
             $response_code = 201;
         }
     }
     $response = Response::json($response_array, $response_code);
     return $response;
 }
 public function get_completed_requests()
 {
     $walker_id = Input::get('id');
     $token = Input::get('token');
     $validator = Validator::make(array('walker_id' => $walker_id, 'token' => $token), array('walker_id' => 'required|integer', 'token' => 'required'));
     if ($validator->fails()) {
         $error_messages = $validator->messages()->all();
         $response_array = array('success' => false, 'error' => 'Invalid Input', 'error_code' => 401, 'error_messages' => $error_messages);
         $response_code = 200;
     } else {
         $is_admin = $this->isAdmin($token);
         if ($walker_data = $this->getWalkerData($walker_id, $token, $is_admin)) {
             // check for token validity
             if (is_token_active($walker_data->token_expiry) || $is_admin) {
                 $request_data = DB::table('request')->where('request.confirmed_walker', $walker_id)->where('request.is_completed', 1)->leftJoin('owner', 'request.owner_id', '=', 'owner.id')->select('request.id', 'request.request_start_time', 'owner.first_name', 'owner.last_name', 'owner.phone', 'owner.email', 'owner.picture', 'owner.bio', 'request.distance', 'request.time', 'request.base_price', 'request.distance_cost', 'request.time_cost', 'request.total')->get();
                 $requests = array();
                 $settings = Settings::where('key', 'default_distance_unit')->first();
                 $unit = $settings->value;
                 foreach ($request_data as $data) {
                     $request['id'] = $data->id;
                     $request['date'] = $data->request_start_time;
                     $request['distance'] = convert($data->distance, $unit);
                     $request['time'] = $data->time;
                     $request['base_price'] = $data->base_price;
                     $request['distance_cost'] = $data->distance_cost;
                     $request['time_cost'] = $data->time_cost;
                     $request['total'] = $data->total;
                     $request['owner']['first_name'] = $data->first_name;
                     $request['owner']['last_name'] = $data->last_name;
                     $request['owner']['phone'] = $data->phone;
                     $request['owner']['email'] = $data->email;
                     $request['owner']['picture'] = $data->picture;
                     $request['owner']['bio'] = $data->bio;
                     array_push($requests, $request);
                 }
                 $response_array = array('success' => true, 'requests' => $requests);
                 $response_code = 200;
             } else {
                 $response_array = array('success' => false, 'error' => 'Token Expired', 'error_code' => 405);
                 $response_code = 200;
             }
         } else {
             if ($is_admin) {
                 $response_array = array('success' => false, 'error' => 'Walker ID not Found', 'error_code' => 410);
             } else {
                 $response_array = array('success' => false, 'error' => 'Not a valid token', 'error_code' => 406);
             }
             $response_code = 200;
         }
     }
     $response = Response::json($response_array, $response_code);
     return $response;
 }
Beispiel #25
0
 public static function ShadowDays()
 {
     return Settings::where('Key', '=', 'ShadowDays')->firstOrFail()->Value;
 }
 /**
  * Reverse the migrations.
  *
  * @return void
  */
 public function down()
 {
     Settings::where('key', 'chat')->delete();
 }
 /**
  * changeBackgroundEnabled
  * --------------------------------------------------
  * @param (array) ($postData) The POST data
  * @return Changes the background enabled option
  * --------------------------------------------------
  */
 private function changeBackgroundEnabled($postData)
 {
     /* Initialize status */
     $status = TRUE;
     /* Get the user and necessary object(s) */
     $user = Auth::user();
     $settings = Settings::where('user_id', $user->id)->first();
     /* Get the new attribute(s) */
     $newattr = $postData['background'];
     /* Change the attribute(s) */
     $settings->background_enabled = (bool) $newattr;
     /* Save object(s) */
     $settings->save();
     /* Return */
     /* AJAX CALL */
     if (Request::ajax()) {
         if ($status) {
             /* Everything OK, return empty json */
             return Response::json(array('success' => 'You successfully modified your background settings.'));
         } else {
             /* Something went wrong, send error */
             return Response::json(array('error' => 'Something went wrong with changing your background settings. Please try again.'));
         }
         /* POST */
     } else {
         if ($status) {
             return Redirect::route('settings.settings')->with('success', 'You successfully modified your background settings.');
         } else {
             return Redirect::route('settings.settings')->with('error', 'Something went wrong with changing your background settings. Please try again.');
         }
     }
 }
Beispiel #28
0
$app->add(new \Slim\Middleware\SessionCookie(array('secret' => 'h5/4jc/)$3kfè4()487HD3d')));
// Make a new connection
use Illuminate\Database\Capsule\Manager as Capsule;
if (file_exists(ROOT . 'config' . DS . 'database.config.php')) {
    $capsule = new Capsule();
    $capsule->addConnection(include ROOT . "config" . DS . 'database.config.php');
    $capsule->bootEloquent();
    $capsule->setAsGlobal();
    $app->db = $capsule;
} else {
    die("<pre>Rename 'config/database.config.php.install' to 'config/database.config.php' and configure your connection</pre>");
}
/**
 * Extract settings from db
 */
$settings = Settings::where('id', '=', 1)->first();
/*
$settings->language = "en-US";
$settings->template = "default";
*/
$settings->base_url = $app->request->getUrl() . $app->request->getScriptName();
/**
 * Set template directory
 */
$app->config(array("templates.path" => TEMPLATEDIR . $settings->template . DS));
/**
 * Add some twig extensions for multilanguage support
 */
$app->view->parserExtensions = array(new \Slim\Views\TwigExtension(), new Twig_Extension_StringLoader());
/**
 * Get language
 public function password_changed($recipient_email, $recipient_name, $data, $use_mailchimp = false, $send_mail = true)
 {
     $subject = "Password changed . If you have not requested then please contact admin";
     //$data['name'] = $user->name;
     if ($use_mailchimp) {
         $view = 'emails.users.mailchimp_view';
     } else {
         $settings = json_decode(\Settings::where('key', 'mailchimp')->pluck('value'));
         if ($settings->use_mailchimp) {
             $paired = \PairedTemplates::where('view', 'emails.users.password_changed')->first();
             if (!empty($paired)) {
                 $template = $this->mailchimp->getTemplate($paired->template_id);
                 $file_path = app_path() . "/views/emails/users/mailchimp_view.blade.php";
                 \File::put($file_path, $template['preview']);
                 $view = 'emails.users.mailchimp_view';
             } else {
                 $view = 'emails.users.password_changed';
             }
         } else {
             $view = 'emails.users.password_changed';
         }
     }
     if ($send_mail) {
         $this->sendTo($recipient_email, $recipient_name, $subject, $view, $data);
     } else {
         return $data;
     }
 }
 public function updated($recipient_email, $recipient_name, $data, $use_mailchimp = false, $send_mail = true)
 {
     $subject = "Ticket #" . $data['ticket_id'] . " , Status - " . $data['ticket_status_txt'] . " , Your ticket have been updated . Please login to dashboard to view";
     if ($use_mailchimp) {
         $view = 'emails.tickets.mailchimp_view';
     } else {
         $settings = json_decode(\Settings::where('key', 'mailchimp')->pluck('value'));
         if ($settings->use_mailchimp) {
             $paired = \PairedTemplates::where('view', 'emails.tickets.ticket_updated')->first();
             if (!empty($paired)) {
                 $template = $this->mailchimp->getTemplate($paired->template_id);
                 $file_path = app_path() . "/views/emails/users/mailchimp_view.blade.php";
                 \File::put($file_path, $template['preview']);
                 $view = 'emails.users.mailchimp_view';
             } else {
                 $view = 'emails.tickets.ticket_updated';
             }
         } else {
             $view = 'emails.tickets.ticket_updated';
         }
     }
     if ($send_mail) {
         $this->sendTo($recipient_email, $recipient_name, $subject, $view, $data);
     } else {
         return $data;
     }
 }