diff --git a/.env.example b/.env.example index fa2b9699..a92ffd61 100644 --- a/.env.example +++ b/.env.example @@ -12,6 +12,10 @@ DB_DATABASE=attendize DB_USERNAME=attendize DB_PASSWORD=attendize +DEFAULT_DATE_FORMAT="Y-m-d" +DEFAULT_TIME_FORMAT="H:i" +DEFAULT_DATETIME_FORMAT="Y-m-d H:i" + # https://github.com/NitMedia/wkhtml2pdf#driver-types WKHTML2PDF_BIN_FILE=wkhtmltopdf-amd64 @@ -25,6 +29,7 @@ MAIL_PASSWORD= MAIL_USERNAME= GOOGLE_ANALYTICS_ID= +GOOGLE_MAPS_GEOCODING_KEY= TWITTER_WIDGET_ID= diff --git a/.gitignore b/.gitignore index 0d41cbc4..9a99193a 100644 --- a/.gitignore +++ b/.gitignore @@ -11,3 +11,6 @@ installed /composer.phar _ide_helper.php *.swp + +# Do not include backup lang files +resources/lang/*/[a-zA-Z]*20[0-9][0-9][0-1][0-9][0-3][0-9]_[0-2][0-9][0-5][0-9][0-5][0-9].php \ No newline at end of file diff --git a/app/Helpers/macros.php b/app/Helpers/macros.php index e075fc38..bbd33df2 100644 --- a/app/Helpers/macros.php +++ b/app/Helpers/macros.php @@ -42,13 +42,13 @@ Form::macro('styledFile', function ($name, $multiple = false) {
- Browse… + '.trans("basic.browse").'…
diff --git a/app/Http/Controllers/EventAttendeesController.php b/app/Http/Controllers/EventAttendeesController.php index c4e23b93..9ceefb48 100644 --- a/app/Http/Controllers/EventAttendeesController.php +++ b/app/Http/Controllers/EventAttendeesController.php @@ -92,7 +92,7 @@ class EventAttendeesController extends MyBaseController * @todo This is a bit hackish */ if ($event->tickets->count() === 0) { - return ''; + return ''; } return view('ManageEvent.Modals.InviteAttendee', [ @@ -117,8 +117,8 @@ class EventAttendeesController extends MyBaseController ]; $messages = [ - 'ticket_id.exists' => 'The ticket you have selected does not exist', - 'ticket_id.required' => 'The ticket field is required. ', + 'ticket_id.exists' => trans("Controllers.ticket_not_exists_error"), + 'ticket_id.required' => trans("Controllers.ticket_field_required_error"), ]; $validator = Validator::make($request->all(), $rules, $messages); @@ -198,7 +198,7 @@ class EventAttendeesController extends MyBaseController $this->dispatch(new SendAttendeeInvite($attendee)); } - session()->flash('message', 'Attendee Successfully Invited'); + session()->flash('message', trans("Controllers.attendee_successfully_invited")); DB::commit(); @@ -216,7 +216,7 @@ class EventAttendeesController extends MyBaseController return response()->json([ 'status' => 'error', - 'error' => 'An error occurred while inviting this attendee. Please try again.' + 'error' => trans("Controllers.attendee_exception") ]); } @@ -238,7 +238,7 @@ class EventAttendeesController extends MyBaseController * @todo This is a bit hackish */ if ($event->tickets->count() === 0) { - return ''; + return ''; } return view('ManageEvent.Modals.ImportAttendee', [ @@ -263,7 +263,7 @@ class EventAttendeesController extends MyBaseController ]; $messages = [ - 'ticket_id.exists' => 'The ticket you have selected does not exist', + 'ticket_id.exists' => trans("Controllers.ticket_not_exists_error"), ]; $validator = Validator::make($request->all(), $rules, $messages); @@ -445,13 +445,13 @@ class EventAttendeesController extends MyBaseController $message->to($attendee->event->organiser->email, $attendee->event->organiser->name) ->from(config('attendize.outgoing_email_noreply'), $attendee->event->organiser->name) ->replyTo($attendee->event->organiser->email, $attendee->event->organiser->name) - ->subject($data['subject'] . '[ORGANISER COPY]'); + ->subject($data['subject'] . trans("Email.organiser_copy")); }); } return response()->json([ 'status' => 'success', - 'message' => 'Message Successfully Sent', + 'message' => trans("Controllers.message_successfully_sent"), ]); } @@ -635,8 +635,8 @@ class EventAttendeesController extends MyBaseController ]; $messages = [ - 'ticket_id.exists' => 'The ticket you have selected does not exist', - 'ticket_id.required' => 'The ticket field is required. ', + 'ticket_id.exists' => trans("Controllers.ticket_not_exists_error"), + 'ticket_id.required' => trans("Controllers.ticket_field_required_error"), ]; $validator = Validator::make($request->all(), $rules, $messages); @@ -651,7 +651,7 @@ class EventAttendeesController extends MyBaseController $attendee = Attendee::scope()->findOrFail($attendee_id); $attendee->update($request->all()); - session()->flash('message', 'Successfully Updated Attendee'); + session()->flash('message',trans("Controllers.successfully_updated_attendee")); return response()->json([ 'status' => 'success', @@ -697,7 +697,7 @@ class EventAttendeesController extends MyBaseController if ($attendee->is_cancelled) { return response()->json([ 'status' => 'success', - 'message' => 'Attendee Already Cancelled', + 'message' => trans("Controllers.attendee_already_cancelled"), ]); } @@ -723,7 +723,7 @@ class EventAttendeesController extends MyBaseController $message->to($attendee->email, $attendee->full_name) ->from(config('attendize.outgoing_email_noreply'), $attendee->event->organiser->name) ->replyTo($attendee->event->organiser->email, $attendee->event->organiser->name) - ->subject('Your ticket has been cancelled'); + ->subject(trans("Email.your_ticket_cancelled")); }); } @@ -763,7 +763,7 @@ class EventAttendeesController extends MyBaseController $message->to($attendee->email, $attendee->full_name) ->from(config('attendize.outgoing_email_noreply'), $attendee->event->organiser->name) ->replyTo($attendee->event->organiser->email, $attendee->event->organiser->name) - ->subject('You have received a refund from ' . $attendee->event->organiser->name); + ->subject(trans("Email.refund_from_name", ["name"=>$attendee->event->organiser->name])); }); } else { $error_message = $response->getMessage(); @@ -771,7 +771,7 @@ class EventAttendeesController extends MyBaseController } catch (\Exception $e) { \Log::error($e); - $error_message = 'There has been a problem processing your refund. Please check your information and try again.'; + $error_message = trans("Controllers.refund_exception"); } } @@ -783,7 +783,7 @@ class EventAttendeesController extends MyBaseController ]); } - session()->flash('message', 'Successfully Cancelled Attenddee'); + session()->flash('message', trans("Controllers.successfully_cancelled_attendee")); return response()->json([ 'status' => 'success', @@ -826,7 +826,7 @@ class EventAttendeesController extends MyBaseController return response()->json([ 'status' => 'success', - 'message' => 'Ticket Successfully Resent', + 'message' => trans("Controllers.ticket_successfully_resent"), ]); } diff --git a/app/Http/Controllers/EventCheckInController.php b/app/Http/Controllers/EventCheckInController.php index 362ef1e7..2cbcf94c 100644 --- a/app/Http/Controllers/EventCheckInController.php +++ b/app/Http/Controllers/EventCheckInController.php @@ -115,7 +115,7 @@ class EventCheckInController extends MyBaseController return response()->json([ 'status' => 'success', 'checked' => $checking, - 'message' => 'Attendee Successfully Checked ' . (($checking == 'in') ? 'In' : 'Out'), + 'message' => (($checking == 'in') ? trans("Controllers.attendee_successfully_checked_in") : trans("Controllers.attendee_successfully_checked_out")), 'id' => $attendee->id, ]); } @@ -153,7 +153,7 @@ class EventCheckInController extends MyBaseController if (is_null($attendee)) { return response()->json([ 'status' => 'error', - 'message' => "Invalid Ticket! Please try again." + 'message' => trans("Controllers.invalid_ticket_error") ]); } @@ -177,7 +177,7 @@ class EventCheckInController extends MyBaseController if ($attendee->has_arrived) { return response()->json([ 'status' => 'error', - 'message' => 'Attendee already checked in at ' . $attendee->arrival_time->format('H:i A, F j') . $appendedText + 'message' => trans("Controllers.attendee_already_checked_in", ["time"=> $attendee->arrival_time->format(env("DEFAULT_DATETIME_FORMAT"))]) . $appendedText ]); } @@ -185,7 +185,7 @@ class EventCheckInController extends MyBaseController return response()->json([ 'status' => 'success', - 'message' => 'Success !
Name: ' . $attendee->first_name . ' ' . $attendee->last_name . '
Reference: ' . $attendee->reference . '
Ticket: ' . $attendee->ticket . '.' . $appendedText + 'message' => trans("Controllers.attendee_check_in_success", ["name"=>$attendee->first_name." ".$attendee->last_name, "ref"=>$attendee->reference, "ticket"=>$attendee->ticket]).$appendedText ]); } @@ -208,7 +208,7 @@ class EventCheckInController extends MyBaseController ]); return response()->json([ - 'message' => $updateRowsCount . ' Attendee(s) Checked in.' + 'message' => trans("Controllers.num_attendees_checked_in", ["num"=>$updateRowsCount]) ]); } diff --git a/app/Http/Controllers/EventCheckoutController.php b/app/Http/Controllers/EventCheckoutController.php index 995927fd..b83fd0fa 100644 --- a/app/Http/Controllers/EventCheckoutController.php +++ b/app/Http/Controllers/EventCheckoutController.php @@ -738,6 +738,11 @@ class EventCheckoutController extends Controller if (!$order) { abort(404); } + $images = []; + $imgs = $order->event->images; + foreach ($imgs as $img) { + $images[] = base64_encode(file_get_contents(public_path($img->image_path))); + } $data = [ 'order' => $order, @@ -746,7 +751,7 @@ class EventCheckoutController extends Controller 'attendees' => $order->attendees, 'css' => file_get_contents(public_path('assets/stylesheet/ticket.css')), 'image' => base64_encode(file_get_contents(public_path($order->event->organiser->full_logo_path))), - + 'images' => $images, ]; if ($request->get('download') == '1') { diff --git a/app/Http/Controllers/EventController.php b/app/Http/Controllers/EventController.php index d34acf6a..29489e3d 100644 --- a/app/Http/Controllers/EventController.php +++ b/app/Http/Controllers/EventController.php @@ -103,7 +103,7 @@ class EventController extends MyBaseController 'organiser_email' => ['required', 'email'], ]; $messages = [ - 'organiser_name.required' => 'You must give a name for the event organiser.', + 'organiser_name.required' => trans("Controllers.no_organiser_name_error"), ]; $validator = Validator::make($request->all(), $rules, $messages); @@ -128,7 +128,7 @@ class EventController extends MyBaseController } else { /* Somethings gone horribly wrong */ return response()->json([ 'status' => 'error', - 'messages' => 'There was an issue finding the organiser.', + 'messages' => trans("Controllers.organiser_other_error"), ]); } @@ -165,7 +165,7 @@ class EventController extends MyBaseController return response()->json([ 'status' => 'error', - 'messages' => 'Whoops! There was a problem creating your event. Please try again.', + 'messages' => trans("Controllers.event_create_exception"), ]); } @@ -307,7 +307,7 @@ class EventController extends MyBaseController return response()->json([ 'status' => 'success', 'id' => $event->id, - 'message' => 'Event Successfully Updated', + 'message' => trans("Controllers.event_successfully_updated"), 'redirectUrl' => '', ]); } @@ -342,7 +342,7 @@ class EventController extends MyBaseController } return response()->json([ - 'error' => 'There was a problem uploading your image.', + 'error' => trans("Controllers.image_upload_error"), ]); } } diff --git a/app/Http/Controllers/EventCustomizeController.php b/app/Http/Controllers/EventCustomizeController.php index e29413f8..252924ae 100644 --- a/app/Http/Controllers/EventCustomizeController.php +++ b/app/Http/Controllers/EventCustomizeController.php @@ -108,7 +108,7 @@ class EventCustomizeController extends MyBaseController return response()->json([ 'status' => 'success', - 'message' => 'Social Settings Successfully Updated', + 'message' => trans("Controllers.social_settings_successfully_updated"), ]); } @@ -132,7 +132,7 @@ class EventCustomizeController extends MyBaseController 'is_1d_barcode_enabled' => ['required'], ]; $messages = [ - 'ticket_bg_color.required' => 'Please enter a background color.', + 'ticket_bg_color.required' => trans("Controllers.please_enter_a_background_color"), ]; $validator = Validator::make($request->all(), $rules, $messages); @@ -174,9 +174,9 @@ class EventCustomizeController extends MyBaseController 'organiser_fee_fixed' => ['numeric', 'between:0,100'], ]; $messages = [ - 'organiser_fee_percentage.numeric' => 'Please enter a value between 0 and 100', - 'organiser_fee_fixed.numeric' => 'Please check the format. It should be in the format 0.00.', - 'organiser_fee_fixed.between' => 'Please enter a value between 0 and 100.', + 'organiser_fee_percentage.numeric' => trans("validation.between.numeric", ["attribute"=>trans("Fees.service_fee_percentage"), "min"=>0, "max"=>100]), + 'organiser_fee_fixed.numeric' => trans("validation.date_format", ["attribute"=>trans("Fees.service_fee_fixed_price"), "format"=>"0.00"]), + 'organiser_fee_fixed.between' => trans("validation.between.numeric", ["attribute"=>trans("Fees.service_fee_fixed_price"), "min"=>0, "max"=>100]), ]; $validator = Validator::make($request->all(), $rules, $messages); @@ -194,7 +194,7 @@ class EventCustomizeController extends MyBaseController return response()->json([ 'status' => 'success', - 'message' => 'Order Page Successfully Updated', + 'message' => trans("Controllers.order_page_successfully_updated"), ]); } @@ -230,7 +230,7 @@ class EventCustomizeController extends MyBaseController return response()->json([ 'status' => 'success', - 'message' => 'Order Page Successfully Updated', + 'message' => trans("Controllers.order_page_successfully_updated"), ]); } @@ -249,8 +249,8 @@ class EventCustomizeController extends MyBaseController 'bg_image_path' => ['mimes:jpeg,jpg,png', 'max:4000'], ]; $messages = [ - 'bg_image_path.mimes' => 'Please ensure you are uploading an image (JPG, PNG, JPEG)', - 'bg_image_path.max' => 'Please ensure the image is not larger than 2.5MB', + 'bg_image_path.mimes' => trans("validation.mimes", ["attribute"=>trans("Event.event_image"), "values"=>"JPEG, JPG, PNG"]), + 'bg_image_path.max' => trans("validation.max.file", ["attribute"=>trans("Event.event_image"), "max"=>2500]), ]; $validator = Validator::make($request->all(), $rules, $messages); @@ -302,7 +302,7 @@ class EventCustomizeController extends MyBaseController return response()->json([ 'status' => 'success', - 'message' => 'Event Page Successfully Updated', + 'message' => trans("Controllers.event_page_successfully_updated"), 'runThis' => 'document.getElementById(\'previewIframe\').contentWindow.location.reload(true);', ]); } diff --git a/app/Http/Controllers/EventOrdersController.php b/app/Http/Controllers/EventOrdersController.php index 31f11fcd..f306196c 100644 --- a/app/Http/Controllers/EventOrdersController.php +++ b/app/Http/Controllers/EventOrdersController.php @@ -179,7 +179,7 @@ class EventOrdersController extends MyBaseController $order->update(); - \Session::flash('message', 'The order has been updated'); + \Session::flash('message', trans("Controllers.the_order_has_been_updated")); return response()->json([ 'status' => 'success', @@ -201,7 +201,7 @@ class EventOrdersController extends MyBaseController 'refund_amount' => ['numeric'], ]; $messages = [ - 'refund_amount.integer' => 'Refund amount must only contain numbers.', + 'refund_amount.integer' => trans("Controllers.refund_only_numbers_error"), ]; $validator = Validator::make($request->all(), $rules, $messages); @@ -223,18 +223,18 @@ class EventOrdersController extends MyBaseController if ($refund_order && $order->payment_gateway->can_refund) { if (!$order->transaction_id) { - $error_message = 'Sorry, this order cannot be refunded.'; + $error_message = trans("Controllers.order_cant_be_refunded"); } if ($order->is_refunded) { - $error_message = 'This order has already been refunded'; + $error_message = trans("Controllers.order_already_refunded"); } elseif ($order->organiser_amount == 0) { - $error_message = 'Nothing to refund'; + $error_message = trans("Controllers.nothing_to_refund"); } elseif ($refund_type !== 'full' && $refund_amount > round(($order->organiser_amount - $order->amount_refunded), 2) ) { - $error_message = 'The maximum amount you can refund is ' . (money($order->organiser_amount - $order->amount_refunded, - $order->event->currency)); + $error_message = trans("Controllers.maximum_refund_amount", ["money"=>(money($order->organiser_amount - $order->amount_refunded, + $order->event->currency))]); } if (!$error_message) { try { @@ -273,7 +273,7 @@ class EventOrdersController extends MyBaseController $order->save(); } catch (\Exeption $e) { Log::error($e); - $error_message = 'There has been a problem processing your refund. Please check your information and try again.'; + $error_message = trans("Controllers.refund_exception"); } } @@ -305,9 +305,17 @@ class EventOrdersController extends MyBaseController } } } - - \Session::flash('message', - (!$refund_amount && !$attendees) ? 'Nothing To Do' : 'Successfully ' . ($refund_order ? ' Refunded Order' : ' ') . ($attendees && $refund_order ? ' & ' : '') . ($attendees ? 'Cancelled Attendee(s)' : '')); + if(!$refund_amount && !$attendees) + $msg = trans("Controllers.nothing_to_do"); + else { + if($attendees && $refund_order) + $msg = trans("Controllers.successfully_refunded_and_cancelled"); + else if($refund_order) + $msg = trans("Controllers.successfully_refunded_order"); + else if($attendees) + $msg = trans("Controllers.successfully_cancelled_attendees"); + } + \Session::flash('message', $msg); return response()->json([ 'status' => 'success', @@ -336,6 +344,8 @@ class EventOrdersController extends MyBaseController $excel->sheet('orders_sheet_1', function ($sheet) use ($event) { \DB::connection()->setFetchMode(\PDO::FETCH_ASSOC); + $yes = strtoupper(trans("basic.yes")); + $no = strtoupper(trans("basic.no")); $data = DB::table('orders') ->where('orders.event_id', '=', $event->id) ->where('orders.event_id', '=', $event->id) @@ -345,8 +355,8 @@ class EventOrdersController extends MyBaseController 'orders.email', 'orders.order_reference', 'orders.amount', - \DB::raw("(CASE WHEN orders.is_refunded = 1 THEN 'YES' ELSE 'NO' END) AS `orders.is_refunded`"), - \DB::raw("(CASE WHEN orders.is_partially_refunded = 1 THEN 'YES' ELSE 'NO' END) AS `orders.is_partially_refunded`"), + \DB::raw("(CASE WHEN orders.is_refunded = 1 THEN '$yes' ELSE '$no' END) AS `orders.is_refunded`"), + \DB::raw("(CASE WHEN orders.is_partially_refunded = 1 THEN '$yes' ELSE '$no' END) AS `orders.is_partially_refunded`"), 'orders.amount_refunded', 'orders.created_at', ])->get(); @@ -356,15 +366,15 @@ class EventOrdersController extends MyBaseController // Add headings to first row $sheet->row(1, [ - 'First Name', - 'Last Name', - 'Email', - 'Order Reference', - 'Amount', - 'Fully Refunded', - 'Partially Refunded', - 'Amount Refunded', - 'Order Date', + trans("Attendee.first_name"), + trans("Attendee.last_name"), + trans("Attendee.email"), + trans("Order.order_ref"), + trans("Order.amount"), + trans("Order.fully_refunded"), + trans("Order.partially_refunded"), + trans("Order.amount_refunded"), + trans("Order.order_date"), ]); // Set gray background on first row @@ -440,13 +450,13 @@ class EventOrdersController extends MyBaseController $message->to($order->event->organiser->email) ->from(config('attendize.outgoing_email_noreply'), $order->event->organiser->name) ->replyTo($order->event->organiser->email, $order->event->organiser->name) - ->subject($data['subject'] . ' [Organiser copy]'); + ->subject($data['subject'] . trans("Email.organiser_copy")); }); } return response()->json([ 'status' => 'success', - 'message' => 'Message Successfully Sent', + 'message' => trans("Controllers.message_successfully_sent"), ]); } @@ -466,7 +476,7 @@ class EventOrdersController extends MyBaseController $order->save(); - session()->flash('message', 'Order Payment Status Successfully Updated'); + session()->flash('message', trans("Controllers.order_payment_status_successfully_updated")); return response()->json([ 'status' => 'success', diff --git a/app/Http/Controllers/EventQrcodeCheckInController.php b/app/Http/Controllers/EventQrcodeCheckInController.php index 8df1f33e..98cdc7bf 100644 --- a/app/Http/Controllers/EventQrcodeCheckInController.php +++ b/app/Http/Controllers/EventQrcodeCheckInController.php @@ -59,7 +59,7 @@ class EventQrcodeCheckInController extends Controller ])->first(); if (is_null($attendee)) { - return response()->json(['status' => 'error', 'message' => "Invalid Ticket! Please try again."]); + return response()->json(['status' => 'error', 'message' => trans("Controllers.invalid_ticket_error")]); } $relatedAttendesCount = Attendee::where('id', '!=', $attendee->id) @@ -72,13 +72,13 @@ class EventQrcodeCheckInController extends Controller if ($relatedAttendesCount >= 1) { $confirmOrderTicketsRoute = route('confirmCheckInOrderTickets', [$event->id, $attendee->order_id]); - $appendedText = '

' . csrf_field() . '
'; + $appendedText = '

' . csrf_field() . '
'; } if ($attendee->has_arrived) { return response()->json([ 'status' => 'error', - 'message' => 'Warning: This attendee has already been checked in at ' . $attendee->arrival_time->format('H:i A, F j') . '.' . $appendedText + 'message' => trans("Controllers.attendee_already_checked_in", ["time"=>$attendee->arrival_time->format(env("DEFAULT_DATETIME_FORMAT"))]) . $appendedText ]); } @@ -86,7 +86,7 @@ class EventQrcodeCheckInController extends Controller return response()->json([ 'status' => 'success', - 'message' => 'Success !
Name: ' . $attendee->first_name . ' ' . $attendee->last_name . '
Reference: ' . $attendee->reference . '
Ticket: ' . $attendee->ticket . '.' . $appendedText + 'message' => trans("Controllers.attendee_check_in_success", ["name"=> $attendee->first_name.' '.$attendee->last_name, "ref"=>$attendee->reference, "ticket"=>$attendee->ticket]). $appendedText ]); } @@ -108,7 +108,7 @@ class EventQrcodeCheckInController extends Controller ->update(['has_arrived' => true, 'arrival_time' => Carbon::now()]); return response()->json([ - 'message' => $updateRowsCount . ' Attendee(s) Checked in.' + 'message' => trans("Controllers.num_attendees_checked_in", ["num"=>$updateRowsCount]) ]); } } diff --git a/app/Http/Controllers/EventSurveyController.php b/app/Http/Controllers/EventSurveyController.php index 98f783d6..57af4ae0 100644 --- a/app/Http/Controllers/EventSurveyController.php +++ b/app/Http/Controllers/EventSurveyController.php @@ -99,11 +99,11 @@ class EventSurveyController extends MyBaseController $event->questions()->attach($question->id); - session()->flash('message', 'Successfully Created Question'); + session()->flash('message', trans("Controllers.successfully_created_question")); return response()->json([ 'status' => 'success', - 'message' => 'Refreshing..', + 'message' => trans("Controllers.refreshing"), 'redirectUrl' => '', ]); } @@ -178,11 +178,11 @@ class EventSurveyController extends MyBaseController $question->tickets()->sync($ticket_ids); - session()->flash('message', 'Successfully Edited Question'); + session()->flash('message', trans("Controllers.successfully_edited_question")); return response()->json([ 'status' => 'success', - 'message' => 'Refreshing..', + 'message' => trans("Controllers.refreshing"), 'redirectUrl' => '', ]); @@ -205,11 +205,11 @@ class EventSurveyController extends MyBaseController if ($question->delete()) { - session()->flash('message', 'Question Successfully Deleted'); + session()->flash('message', trans("Controllers.successfully_deleted_question")); return response()->json([ 'status' => 'success', - 'message' => 'Refreshing..', + 'message' => trans("Controllers.refreshing"), 'redirectUrl' => '', ]); } @@ -217,7 +217,7 @@ class EventSurveyController extends MyBaseController return response()->json([ 'status' => 'error', 'id' => $question->id, - 'message' => 'This question can\'t be deleted.', + 'message' => trans("Controllers.this_question_cant_be_deleted"), ]); } @@ -259,7 +259,7 @@ class EventSurveyController extends MyBaseController { Excel::create('answers-as-of-' . date('d-m-Y-g.i.a'), function ($excel) use ($event_id) { - $excel->setTitle('Survey Answers'); + $excel->setTitle(trans("Controllers.survey_answers")); // Chain the setters $excel->setCreator(config('attendize.app_name')) @@ -296,7 +296,7 @@ class EventSurveyController extends MyBaseController if ($question->save()) { return response()->json([ 'status' => 'success', - 'message' => 'Question Successfully Updated', + 'message' => trans("Controllers.successfully_updated_question"), 'id' => $question->id, ]); } @@ -304,7 +304,7 @@ class EventSurveyController extends MyBaseController return response()->json([ 'status' => 'error', 'id' => $question->id, - 'message' => 'Whoops! Looks like something went wrong. Please try again.', + 'message' => trans("basic.whoops"), ]); } @@ -329,7 +329,7 @@ class EventSurveyController extends MyBaseController return response()->json([ 'status' => 'success', - 'message' => 'Question Order Successfully Updated', + 'message' => trans("Controllers.successfully_updated_question_order"), ]); } } diff --git a/app/Http/Controllers/EventTicketsController.php b/app/Http/Controllers/EventTicketsController.php index cefc8b88..c00580cc 100644 --- a/app/Http/Controllers/EventTicketsController.php +++ b/app/Http/Controllers/EventTicketsController.php @@ -22,11 +22,11 @@ class EventTicketsController extends MyBaseController public function showTickets(Request $request, $event_id) { $allowed_sorts = [ - 'created_at' => 'Creation date', - 'title' => 'Ticket title', - 'quantity_sold' => 'Quantity sold', - 'sales_volume' => 'Sales volume', - 'sort_order' => 'Custom Sort Order', + 'created_at' => trans("Controllers.sort.created_at"), + 'title' => trans("Controllers.sort.title"), + 'quantity_sold' => trans("Controllers.sort.quantity_sold"), + 'sales_volume' => trans("Controllers.sort.sales_volume"), + 'sort_order' => trans("Controllers.sort.sort_order"), ]; // Getting get parameters. @@ -118,7 +118,7 @@ class EventTicketsController extends MyBaseController return response()->json([ 'status' => 'success', 'id' => $ticket->id, - 'message' => 'Refreshing...', + 'message' => trans("Controllers.refreshing"), 'redirectUrl' => route('showEventTickets', [ 'event_id' => $event_id, ]), @@ -142,7 +142,7 @@ class EventTicketsController extends MyBaseController if ($ticket->save()) { return response()->json([ 'status' => 'success', - 'message' => 'Ticket Successfully Updated', + 'message' => trans("Controllers.ticket_successfully_updated"), 'id' => $ticket->id, ]); } @@ -154,7 +154,7 @@ class EventTicketsController extends MyBaseController return response()->json([ 'status' => 'error', 'id' => $ticket->id, - 'message' => 'Whoops! Looks like something went wrong. Please try again.', + 'message' => trans("Controllers.whoops"), ]); } @@ -176,7 +176,7 @@ class EventTicketsController extends MyBaseController if ($ticket->quantity_sold > 0) { return response()->json([ 'status' => 'error', - 'message' => 'Sorry, you can\'t delete this ticket as some have already been sold', + 'message' => trans("Controllers.cant_delete_ticket_when_sold"), 'id' => $ticket->id, ]); } @@ -184,7 +184,7 @@ class EventTicketsController extends MyBaseController if ($ticket->delete()) { return response()->json([ 'status' => 'success', - 'message' => 'Ticket Successfully Deleted', + 'message' => trans("Controllers.ticket_successfully_deleted"), 'id' => $ticket->id, ]); } @@ -196,7 +196,7 @@ class EventTicketsController extends MyBaseController return response()->json([ 'status' => 'error', 'id' => $ticket->id, - 'message' => 'Whoops! Looks like something went wrong. Please try again.', + 'message' => trans("Controllers.whoops"), ]); } @@ -219,7 +219,7 @@ class EventTicketsController extends MyBaseController 'integer', 'min:' . ($ticket->quantity_sold + $ticket->quantity_reserved) ]; - $validation_messages['quantity_available.min'] = 'Quantity available can\'t be less the amount sold or reserved.'; + $validation_messages['quantity_available.min'] = trans("Controllers.quantity_min_error"); $ticket->rules = $validation_rules + $ticket->rules; $ticket->messages = $validation_messages + $ticket->messages; @@ -248,7 +248,7 @@ class EventTicketsController extends MyBaseController return response()->json([ 'status' => 'success', 'id' => $ticket->id, - 'message' => 'Refreshing...', + 'message' => trans("Controllers.refreshing"), 'redirectUrl' => route('showEventTickets', [ 'event_id' => $event_id, ]), @@ -275,7 +275,7 @@ class EventTicketsController extends MyBaseController return response()->json([ 'status' => 'success', - 'message' => 'Ticket Order Successfully Updated', + 'message' => trans("Controllers.ticket_order_successfully_updated"), ]); } } diff --git a/app/Http/Controllers/EventViewController.php b/app/Http/Controllers/EventViewController.php index 48a54461..6e5c0a4e 100644 --- a/app/Http/Controllers/EventViewController.php +++ b/app/Http/Controllers/EventViewController.php @@ -116,12 +116,12 @@ class EventViewController extends Controller $message->to($event->organiser->email, $event->organiser->name) ->from(config('attendize.outgoing_email_noreply'), $data['sender_name']) ->replyTo($data['sender_email'], $data['sender_name']) - ->subject('Message Regarding: ' . $event->title); + ->subject(trans("Email.message_regarding_event", ["event"=>$event->title])); }); return response()->json([ 'status' => 'success', - 'message' => 'Message Successfully Sent', + 'message' => trans("Controllers.message_successfully_sent"), ]); } diff --git a/app/Http/Controllers/InstallerController.php b/app/Http/Controllers/InstallerController.php index ae413fd0..7fc90e48 100644 --- a/app/Http/Controllers/InstallerController.php +++ b/app/Http/Controllers/InstallerController.php @@ -75,7 +75,7 @@ class InstallerController extends Controller * Attempts to install the system * * @param Request $request - * @return \Illuminate\Http\RedirectResponse + * @return \Illuminate\Http\RedirectResponse|array */ public function postInstaller(Request $request) { @@ -106,39 +106,61 @@ class InstallerController extends Controller if ($is_db_valid === 'yes') { return [ 'status' => 'success', - 'message' => 'Success, Your connection works!', + 'message' => trans("Installer.connection_success"), 'test' => 1, ]; } return [ 'status' => 'error', - 'message' => 'Unable to connect! Please check your settings', + 'message' => trans("Installer.connection_failure"), 'test' => 1, ]; } - $config = "APP_ENV=production\n" . - "APP_DEBUG=false\n" . - "APP_URL={$app_url}\n" . - "APP_KEY={$app_key}\n" . - "DB_TYPE={$database['type']}\n" . - "DB_HOST={$database['host']}\n" . - "DB_DATABASE={$database['name']}\n" . - "DB_USERNAME={$database['username']}\n" . - "DB_PASSWORD={$database['password']}\n\n" . - "MAIL_DRIVER={$mail['driver']}\n" . - "MAIL_PORT={$mail['port']}\n" . - "MAIL_ENCRYPTION={$mail['encryption']}\n" . - "MAIL_HOST={$mail['host']}\n" . - "MAIL_USERNAME={$mail['username']}\n" . - "MAIL_FROM_NAME=\"{$mail['from_name']}\"\n" . - "MAIL_FROM_ADDRESS={$mail['from_address']}\n" . - "WKHTML2PDF_BIN_FILE=wkhtmltopdf-amd64\n" . - "MAIL_PASSWORD={$mail['password']}\n\n"; + $config_string = file_get_contents(base_path() . '/.env.example'); + $config_temp = explode("\n", $config_string); + foreach($config_temp as $key=>$row) + $config_temp[$key] = explode("=", $row, 2); + $config = [ + "APP_ENV" => "production", + "APP_DEBUG" => "false", + "APP_URL" => $app_url, + "APP_KEY" => $app_key, + "DB_TYPE" => $database['type'], + "DB_HOST" => $database['host'], + "DB_DATABASE" => $database['name'], + "DB_USERNAME" => $database['username'], + "DB_PASSWORD" => $database['password'], + "MAIL_DRIVER" => $mail['driver'], + "MAIL_PORT" => $mail['port'], + "MAIL_ENCRYPTION" => $mail['encryption'], + "MAIL_HOST" => $mail['host'], + "MAIL_USERNAME" => $mail['username'], + "MAIL_FROM_NAME" => $mail['from_name'], + "MAIL_FROM_ADDRESS" => $mail['from_address'], + "MAIL_PASSWORD" => $mail['password'], + ]; + foreach($config as $key=>$val) { + $set = false; + foreach($config_temp as $rownum=>$row) { + if($row[0]==$key) { + $config_temp[$rownum][1] = $val; + $set = true; + } + } + if(!$set) + $config_temp[] = [$key, $val]; + } + $config_string = ""; + foreach($config_temp as $row) + if(count($row)>1) + $config_string .= implode("=", $row)."\n"; + else + $config_string .= implode("", $row)."\n"; $fp = fopen(base_path() . '/.env', 'w'); - fwrite($fp, $config); + fwrite($fp, $config_string); fclose($fp); Config::set('database.default', $database['type']); diff --git a/app/Http/Controllers/ManageAccountController.php b/app/Http/Controllers/ManageAccountController.php index 723de830..00a149e6 100644 --- a/app/Http/Controllers/ManageAccountController.php +++ b/app/Http/Controllers/ManageAccountController.php @@ -42,7 +42,7 @@ class ManageAccountController extends MyBaseController public function showStripeReturn() { - $error_message = 'There was an error connecting your Stripe account. Please try again.'; + $error_message = trans("Controllers.stripe_error"); if (Input::get('error') || !Input::get('code')) { \Session::flash('message', $error_message); @@ -79,7 +79,7 @@ class ManageAccountController extends MyBaseController $account->save(); - \Session::flash('message', 'You have successfully connected your Stripe account.'); + \Session::flash('message', trans("Controllers.stripe_success")); return redirect()->route('showEventsDashboard'); } @@ -111,7 +111,7 @@ class ManageAccountController extends MyBaseController return response()->json([ 'status' => 'success', 'id' => $account->id, - 'message' => 'Account Successfully Updated', + 'message' => trans("Controllers.account_successfully_updated"), ]); } @@ -157,7 +157,7 @@ class ManageAccountController extends MyBaseController return response()->json([ 'status' => 'success', 'id' => $account_payment_gateway->id, - 'message' => 'Payment Information Successfully Updated', + 'message' => trans("Controllers.payment_information_successfully_updated"), ]); } @@ -173,9 +173,9 @@ class ManageAccountController extends MyBaseController ]; $messages = [ - 'email.email' => 'Please enter a valid E-mail address.', - 'email.required' => 'E-mail address is required.', - 'email.unique' => 'E-mail already in use for this account.', + 'email.email' => trans("Controllers.error.email.email"), + 'email.required' => trans("Controllers.error.email.required"), + 'email.unique' => trans("Controllers.error.email.unique"), ]; $validation = Validator::make(Input::all(), $rules, $messages); @@ -205,12 +205,12 @@ class ManageAccountController extends MyBaseController Mail::send('Emails.inviteUser', $data, function ($message) use ($data) { $message->to($data['user']->email) - ->subject($data['inviter']->first_name . ' ' . $data['inviter']->last_name . ' added you to an ' . config('attendize.app_name') . ' account.'); + ->subject(trans("Email.invite_user", ["name"=>$data['inviter']->first_name . ' ' . $data['inviter']->last_name, "app"=>config('attendize.app_name')])); }); return response()->json([ 'status' => 'success', - 'message' => 'Success! ' . $user->email . ' has been sent further instructions.', + 'message' => trans("Controllers.success_name_has_received_instruction", ["name"=>$user->email]), ]); } diff --git a/app/Http/Controllers/MyBaseController.php b/app/Http/Controllers/MyBaseController.php index 807eb09e..a320e9d3 100644 --- a/app/Http/Controllers/MyBaseController.php +++ b/app/Http/Controllers/MyBaseController.php @@ -27,7 +27,7 @@ class MyBaseController extends Controller */ 'DateFormat' => 'dd-MM-yyyy', 'DateTimeFormat' => 'dd-MM-yyyy hh:mm', - 'GenericErrorMessage' => 'Whoops! An unknown error has occurred. Please try again or contact support if the problem persists.' + 'GenericErrorMessage' => trans("Controllers.whoops"), ]); /* diff --git a/app/Http/Controllers/OrganiserController.php b/app/Http/Controllers/OrganiserController.php index 66e8fe42..a9261025 100644 --- a/app/Http/Controllers/OrganiserController.php +++ b/app/Http/Controllers/OrganiserController.php @@ -67,11 +67,11 @@ class OrganiserController extends MyBaseController $organiser->save(); - session()->flash('message', 'Successfully Created Organiser.'); + session()->flash('message', trans("Controllers.successfully_created_organiser")); return response()->json([ 'status' => 'success', - 'message' => 'Refreshing..', + 'message' => trans("Controllers.refreshing"), 'redirectUrl' => route('showOrganiserEvents', [ 'organiser_id' => $organiser->id, 'first_run' => 1 diff --git a/app/Http/Controllers/OrganiserCustomizeController.php b/app/Http/Controllers/OrganiserCustomizeController.php index 3df67885..a50b8c37 100644 --- a/app/Http/Controllers/OrganiserCustomizeController.php +++ b/app/Http/Controllers/OrganiserCustomizeController.php @@ -64,7 +64,7 @@ class OrganiserCustomizeController extends MyBaseController $organiser->save(); - session()->flash('message', 'Successfully Updated Organiser'); + session()->flash('message', trans("Controllers.successfully_updated_organiser")); return response()->json([ 'status' => 'success', @@ -89,8 +89,8 @@ class OrganiserCustomizeController extends MyBaseController 'page_text_color' => ['required'], ]; $messages = [ - 'page_header_bg_color.required' => 'Please enter a header background color.', - 'page_bg_color.required' => 'Please enter a background color.', + 'page_header_bg_color.required' => trans("Controllers.error.page_header_bg_color.required"), + 'page_bg_color.required' => trans("Controllers.error.page_bg_color.required"), ]; $validator = Validator::make($request->all(), $rules, $messages); @@ -110,7 +110,7 @@ class OrganiserCustomizeController extends MyBaseController return response()->json([ 'status' => 'success', - 'message' => 'Organiser Design Successfully Updated', + 'message' => trans("Controllers.organiser_design_successfully_updated"), ]); } } diff --git a/app/Http/Controllers/RemindersController.php b/app/Http/Controllers/RemindersController.php index d8884e57..bee00663 100644 --- a/app/Http/Controllers/RemindersController.php +++ b/app/Http/Controllers/RemindersController.php @@ -37,7 +37,7 @@ class RemindersController extends Controller */ protected function getEmailSubject() { - return isset($this->subject) ? $this->subject : 'Your Password Reset Link'; + return isset($this->subject) ? $this->subject : trans("Controllers.your_password_reset_link"); } /** @@ -115,7 +115,7 @@ class RemindersController extends Controller switch ($response) { case PasswordBroker::PASSWORD_RESET: - \Session::flash('message', 'Password Successfully Reset'); + \Session::flash('message', trans("Controllers.password_successfully_reset")); return redirect(route('login')); diff --git a/app/Http/Controllers/UserController.php b/app/Http/Controllers/UserController.php index 3fee4f12..40e5739a 100644 --- a/app/Http/Controllers/UserController.php +++ b/app/Http/Controllers/UserController.php @@ -44,12 +44,12 @@ class UserController extends Controller ]; $messages = [ - 'email.email' => 'Please enter a valid E-mail address.', - 'email.required' => 'E-mail address is required.', - 'password.passcheck' => 'This password is incorrect.', - 'email.unique' => 'This E-mail is already in use.', - 'first_name.required' => 'Please enter your first name.', - 'last_name.required' => 'Please enter your last name.', + 'email.email' => trans("Controllers.error.email.email"), + 'email.required' => trans("Controllers.error.email.required"), + 'password.passcheck' => trans("Controllers.error.password.passcheck"), + 'email.unique' => trans("Controllers.error.email.unique"), + 'first_name.required' => trans("Controllers.error.first_name.required"), + 'last_name.required' => trans("Controllers.error.last_name.required"), ]; $validation = Validator::make($request->all(), $rules, $messages); @@ -75,7 +75,7 @@ class UserController extends Controller return response()->json([ 'status' => 'success', - 'message' => 'Successfully Saved Details', + 'message' => trans("Controllers.successfully_saved_details"), ]); } } diff --git a/app/Http/Controllers/UserLoginController.php b/app/Http/Controllers/UserLoginController.php index eb3dbabb..46b54a08 100644 --- a/app/Http/Controllers/UserLoginController.php +++ b/app/Http/Controllers/UserLoginController.php @@ -54,13 +54,13 @@ class UserLoginController extends Controller if (empty($email) || empty($password)) { return Redirect::back() - ->with(['message' => 'Please fill in your email and password', 'failed' => true]) + ->with(['message' => trans("Controllers.fill_email_and_password"), 'failed' => true]) ->withInput(); } if ($this->auth->attempt(['email' => $email, 'password' => $password], true) === false) { return Redirect::back() - ->with(['message' => 'Your username/password combination was incorrect', 'failed' => true]) + ->with(['message' => trans("Controllers.login_password_incorrect"), 'failed' => true]) ->withInput(); } diff --git a/app/Http/Controllers/UserSignupController.php b/app/Http/Controllers/UserSignupController.php index da5613c9..605e7b01 100644 --- a/app/Http/Controllers/UserSignupController.php +++ b/app/Http/Controllers/UserSignupController.php @@ -66,7 +66,7 @@ class UserSignupController extends Controller ['first_name' => $user->first_name, 'confirmation_code' => $user->confirmation_code], function ($message) use ($request) { $message->to($request->get('email'), $request->get('first_name')) - ->subject('Thank you for registering for Attendize'); + ->subject(trans("Email.attendize_register")); }); } @@ -87,7 +87,7 @@ class UserSignupController extends Controller if (!$user) { return view('Public.Errors.Generic', [ - 'message' => 'The confirmation code is missing or malformed.', + 'message' => trans("Controllers.confirmation_malformed"), ]); } @@ -95,7 +95,7 @@ class UserSignupController extends Controller $user->confirmation_code = null; $user->save(); - session()->flash('message', 'Success! Your email is now verified. You can now login.'); + session()->flash('message', trans("Controllers.confirmation_successful")); return redirect()->route('login'); } diff --git a/app/Http/Kernel.php b/app/Http/Kernel.php index 33611077..271d83ba 100644 --- a/app/Http/Kernel.php +++ b/app/Http/Kernel.php @@ -55,5 +55,9 @@ class Kernel extends HttpKernel 'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class, 'first.run' => \App\Http\Middleware\FirstRunMiddleware::class, 'installed' => \App\Http\Middleware\CheckInstalled::class, + 'localize' => \Mcamara\LaravelLocalization\Middleware\LaravelLocalizationRoutes::class, + 'localizationRedirect' => \Mcamara\LaravelLocalization\Middleware\LaravelLocalizationRedirectFilter::class, + 'localeSessionRedirect' => \Mcamara\LaravelLocalization\Middleware\LocaleSessionRedirect::class, + 'localeViewPath' => \Mcamara\LaravelLocalization\Middleware\LaravelLocalizationViewPath::class, ]; } diff --git a/app/Http/routes.php b/app/Http/routes.php index 4d7bdebe..d9332d78 100644 --- a/app/Http/routes.php +++ b/app/Http/routes.php @@ -1,727 +1,746 @@ 'showInstaller', - 'uses' => 'InstallerController@showInstaller', -]); - -Route::post('install', [ - 'as' => 'postInstaller', - 'uses' => 'InstallerController@postInstaller', -]); - -/* - * Stripe connect return - */ -Route::any('payment/return/stripe', [ - 'as' => 'showStripeReturn', - 'uses' => 'ManageAccountController@showStripeReturn', -]); - -/* - * Logout - */ -Route::any('/logout', [ - 'uses' => 'UserLogoutController@doLogout', - 'as' => 'logout', -]); - -Route::group(['middleware' => ['installed']], function () { +Route::group( + [ + 'prefix' => LaravelLocalization::setLocale(), + 'middleware' => [ 'localeSessionRedirect', 'localizationRedirect', 'localeViewPath' ] + ], function() { + /* + * Include our API routes file + */ + include_once('api_routes.php'); /* - * Login + * ------------------------- + * Installer + * ------------------------- */ - Route::get('/login', [ - 'as' => 'login', - 'uses' => 'UserLoginController@showLogin', - ]); - Route::post('/login', 'UserLoginController@postLogin'); - - /* - * Forgot password - */ - Route::get('login/forgot-password', [ - 'as' => 'forgotPassword', - 'uses' => 'RemindersController@getRemind', + Route::get('install', [ + 'as' => 'showInstaller', + 'uses' => 'InstallerController@showInstaller', ]); - Route::post('login/forgot-password', [ - 'as' => 'postForgotPassword', - 'uses' => 'RemindersController@postRemind', + Route::post('install', [ + 'as' => 'postInstaller', + 'uses' => 'InstallerController@postInstaller', ]); /* - * Reset Password + * Stripe connect return */ - Route::get('login/reset-password/{token}', [ - 'as' => 'showResetPassword', - 'uses' => 'RemindersController@getReset', - ]); - - Route::post('login/reset-password', [ - 'as' => 'postResetPassword', - 'uses' => 'RemindersController@postReset', + Route::any('payment/return/stripe', [ + 'as' => 'showStripeReturn', + 'uses' => 'ManageAccountController@showStripeReturn', ]); /* - * Registration / Account creation + * Logout */ - Route::get('/signup', [ - 'uses' => 'UserSignupController@showSignup', - 'as' => 'showSignup', - ]); - Route::post('/signup', 'UserSignupController@postSignup'); - - /* - * Confirm Email - */ - Route::get('signup/confirm_email/{confirmation_code}', [ - 'as' => 'confirmEmail', - 'uses' => 'UserSignupController@confirmEmail', - ]); -}); - -/* - * Public organiser page routes - */ -Route::group(['prefix' => 'o'], function () { - - Route::get('/{organiser_id}/{organier_slug?}', [ - 'as' => 'showOrganiserHome', - 'uses' => 'OrganiserViewController@showOrganiserHome', - ]); - -}); - -/* - * Public event page routes - */ -Route::group(['prefix' => 'e'], function () { - - /* - * Embedded events - */ - Route::get('/{event_id}/embed', [ - 'as' => 'showEmbeddedEventPage', - 'uses' => 'EventViewEmbeddedController@showEmbeddedEvent', - ]); - - Route::get('/{event_id}/calendar.ics', [ - 'as' => 'downloadCalendarIcs', - 'uses' => 'EventViewController@showCalendarIcs', - ]); - - Route::get('/{event_id}/{event_slug?}', [ - 'as' => 'showEventPage', - 'uses' => 'EventViewController@showEventHome', - ]); - - Route::post('/{event_id}/contact_organiser', [ - 'as' => 'postContactOrganiser', - 'uses' => 'EventViewController@postContactOrganiser', - ]); - - /* - * Used for previewing designs in the backend. Doesn't log page views etc. - */ - Route::get('/{event_id}/preview', [ - 'as' => 'showEventPagePreview', - 'uses' => 'EventViewController@showEventHomePreview', - ]); - - Route::post('{event_id}/checkout/', [ - 'as' => 'postValidateTickets', - 'uses' => 'EventCheckoutController@postValidateTickets', - ]); - - Route::get('{event_id}/checkout/create', [ - 'as' => 'showEventCheckout', - 'uses' => 'EventCheckoutController@showEventCheckout', - ]); - - Route::get('{event_id}/checkout/success', [ - 'as' => 'showEventCheckoutPaymentReturn', - 'uses' => 'EventCheckoutController@showEventCheckoutPaymentReturn', + Route::any('/logout', [ + 'uses' => 'UserLogoutController@doLogout', + 'as' => 'logout', ]); - Route::post('{event_id}/checkout/create', [ - 'as' => 'postCreateOrder', - 'uses' => 'EventCheckoutController@postCreateOrder', - ]); -}); - -/* - * Public view order routes - */ -Route::get('order/{order_reference}', [ - 'as' => 'showOrderDetails', - 'uses' => 'EventCheckoutController@showOrderDetails', -]); - -Route::get('order/{order_reference}/tickets', [ - 'as' => 'showOrderTickets', - 'uses' => 'EventCheckoutController@showOrderTickets', -]); - -/* - * Backend routes - */ -Route::group(['middleware' => ['auth', 'first.run']], function () { - - /* - * Edit User - */ - Route::group(['prefix' => 'user'], function () { - - Route::get('/', [ - 'as' => 'showEditUser', - 'uses' => 'UserController@showEditUser', - ]); - Route::post('/', [ - 'as' => 'postEditUser', - 'uses' => 'UserController@postEditUser', - ]); - - }); - - /* - * Manage account - */ - Route::group(['prefix' => 'account'], function () { - - Route::get('/', [ - 'as' => 'showEditAccount', - 'uses' => 'ManageAccountController@showEditAccount', - ]); - - Route::post('/', [ - 'as' => 'postEditAccount', - 'uses' => 'ManageAccountController@postEditAccount', - ]); - Route::post('/edit_payment', [ - 'as' => 'postEditAccountPayment', - 'uses' => 'ManageAccountController@postEditAccountPayment', - ]); - - Route::post('invite_user', [ - 'as' => 'postInviteUser', - 'uses' => 'ManageAccountController@postInviteUser', - ]); - - }); - - Route::get('select_organiser', [ - 'as' => 'showSelectOrganiser', - 'uses' => 'OrganiserController@showSelectOrganiser', + Route::get('/terms_and_conditions', [ + 'as' => 'termsAndConditions', + function () { + return 'TODO: add terms and cond'; + } ]); - /* - * Organiser routes - */ - Route::group(['prefix' => 'organiser'], function () { - Route::get('{organiser_id}/dashboard', [ - 'as' => 'showOrganiserDashboard', - 'uses' => 'OrganiserDashboardController@showDashboard', - ]); - Route::get('{organiser_id}/events', [ - 'as' => 'showOrganiserEvents', - 'uses' => 'OrganiserEventsController@showEvents', - ]); - Route::get('{organiser_id}/customize', [ - 'as' => 'showOrganiserCustomize', - 'uses' => 'OrganiserCustomizeController@showCustomize', - ]); - Route::post('{organiser_id}/customize', [ - 'as' => 'postEditOrganiser', - 'uses' => 'OrganiserCustomizeController@postEditOrganiser', - ]); - - Route::get('create', [ - 'as' => 'showCreateOrganiser', - 'uses' => 'OrganiserController@showCreateOrganiser', - ]); - Route::post('create', [ - 'as' => 'postCreateOrganiser', - 'uses' => 'OrganiserController@postCreateOrganiser', - ]); - - Route::post('{organiser_id}/page_design', [ - 'as' => 'postEditOrganiserPageDesign', - 'uses' => 'OrganiserCustomizeController@postEditOrganiserPageDesign' - ]); - }); - - /* - * Events dashboard - */ - Route::group(['prefix' => 'events'], function () { + Route::group(['middleware' => ['installed']], function () { /* - * ---------- - * Create Event - * ---------- + * Login */ - Route::get('/create', [ - 'as' => 'showCreateEvent', - 'uses' => 'EventController@showCreateEvent', + Route::get('/login', [ + 'as' => 'login', + 'uses' => 'UserLoginController@showLogin', + ]); + Route::post('/login', 'UserLoginController@postLogin'); + + /* + * Forgot password + */ + Route::get('login/forgot-password', [ + 'as' => 'forgotPassword', + 'uses' => 'RemindersController@getRemind', ]); - Route::post('/create', [ - 'as' => 'postCreateEvent', - 'uses' => 'EventController@postCreateEvent', + Route::post('login/forgot-password', [ + 'as' => 'postForgotPassword', + 'uses' => 'RemindersController@postRemind', + ]); + + /* + * Reset Password + */ + Route::get('login/reset-password/{token}', [ + 'as' => 'showResetPassword', + 'uses' => 'RemindersController@getReset', + ]); + + Route::post('login/reset-password', [ + 'as' => 'postResetPassword', + 'uses' => 'RemindersController@postReset', + ]); + + /* + * Registration / Account creation + */ + Route::get('/signup', [ + 'uses' => 'UserSignupController@showSignup', + 'as' => 'showSignup', + ]); + Route::post('/signup', 'UserSignupController@postSignup'); + + /* + * Confirm Email + */ + Route::get('signup/confirm_email/{confirmation_code}', [ + 'as' => 'confirmEmail', + 'uses' => 'UserSignupController@confirmEmail', ]); }); /* - * Upload event images + * Public organiser page routes */ - Route::post('/upload_image', [ - 'as' => 'postUploadEventImage', - 'uses' => 'EventController@postUploadEventImage', + Route::group(['prefix' => 'o'], function () { + + Route::get('/{organiser_id}/{organier_slug?}', [ + 'as' => 'showOrganiserHome', + 'uses' => 'OrganiserViewController@showOrganiserHome', + ]); + + }); + + /* + * Public event page routes + */ + Route::group(['prefix' => 'e'], function () { + + /* + * Embedded events + */ + Route::get('/{event_id}/embed', [ + 'as' => 'showEmbeddedEventPage', + 'uses' => 'EventViewEmbeddedController@showEmbeddedEvent', + ]); + + Route::get('/{event_id}/calendar.ics', [ + 'as' => 'downloadCalendarIcs', + 'uses' => 'EventViewController@showCalendarIcs', + ]); + + Route::get('/{event_id}/{event_slug?}', [ + 'as' => 'showEventPage', + 'uses' => 'EventViewController@showEventHome', + ]); + + Route::post('/{event_id}/contact_organiser', [ + 'as' => 'postContactOrganiser', + 'uses' => 'EventViewController@postContactOrganiser', + ]); + + /* + * Used for previewing designs in the backend. Doesn't log page views etc. + */ + Route::get('/{event_id}/preview', [ + 'as' => 'showEventPagePreview', + 'uses' => 'EventViewController@showEventHomePreview', + ]); + + Route::post('{event_id}/checkout/', [ + 'as' => 'postValidateTickets', + 'uses' => 'EventCheckoutController@postValidateTickets', + ]); + + Route::get('{event_id}/checkout/create', [ + 'as' => 'showEventCheckout', + 'uses' => 'EventCheckoutController@showEventCheckout', + ]); + + Route::get('{event_id}/checkout/success', [ + 'as' => 'showEventCheckoutPaymentReturn', + 'uses' => 'EventCheckoutController@showEventCheckoutPaymentReturn', + ]); + + + Route::post('{event_id}/checkout/create', [ + 'as' => 'postCreateOrder', + 'uses' => 'EventCheckoutController@postCreateOrder', + ]); + }); + + /* + * Public view order routes + */ + Route::get('order/{order_reference}', [ + 'as' => 'showOrderDetails', + 'uses' => 'EventCheckoutController@showOrderDetails', + ]); + + Route::get('order/{order_reference}/tickets', [ + 'as' => 'showOrderTickets', + 'uses' => 'EventCheckoutController@showOrderTickets', ]); /* - * Event management routes + * Backend routes */ - Route::group(['prefix' => 'event'], function () { + Route::group(['middleware' => ['auth', 'first.run']], function () { /* - * Dashboard + * Edit User */ - Route::get('{event_id}/dashboard/', [ - 'as' => 'showEventDashboard', - 'uses' => 'EventDashboardController@showDashboard', - ] - ); + Route::group(['prefix' => 'user'], function () { - Route::get('{event_id}', function ($event_id) { - return Redirect::route('showEventDashboard', [ - 'event_id' => $event_id, + Route::get('/', [ + 'as' => 'showEditUser', + 'uses' => 'UserController@showEditUser', + ]); + Route::post('/', [ + 'as' => 'postEditUser', + 'uses' => 'UserController@postEditUser', + ]); + + }); + + /* + * Manage account + */ + Route::group(['prefix' => 'account'], function () { + + Route::get('/', [ + 'as' => 'showEditAccount', + 'uses' => 'ManageAccountController@showEditAccount', + ]); + + Route::post('/', [ + 'as' => 'postEditAccount', + 'uses' => 'ManageAccountController@postEditAccount', + ]); + Route::post('/edit_payment', [ + 'as' => 'postEditAccountPayment', + 'uses' => 'ManageAccountController@postEditAccountPayment', + ]); + + Route::post('invite_user', [ + 'as' => 'postInviteUser', + 'uses' => 'ManageAccountController@postInviteUser', + ]); + + }); + + Route::get('select_organiser', [ + 'as' => 'showSelectOrganiser', + 'uses' => 'OrganiserController@showSelectOrganiser', + ]); + + /* + * Organiser routes + */ + Route::group(['prefix' => 'organiser'], function () { + + Route::get('{organiser_id}/dashboard', [ + 'as' => 'showOrganiserDashboard', + 'uses' => 'OrganiserDashboardController@showDashboard', + ]); + Route::get('{organiser_id}/events', [ + 'as' => 'showOrganiserEvents', + 'uses' => 'OrganiserEventsController@showEvents', + ]); + + Route::get('{organiser_id}/customize', [ + 'as' => 'showOrganiserCustomize', + 'uses' => 'OrganiserCustomizeController@showCustomize', + ]); + Route::post('{organiser_id}/customize', [ + 'as' => 'postEditOrganiser', + 'uses' => 'OrganiserCustomizeController@postEditOrganiser', + ]); + + Route::get('create', [ + 'as' => 'showCreateOrganiser', + 'uses' => 'OrganiserController@showCreateOrganiser', + ]); + Route::post('create', [ + 'as' => 'postCreateOrganiser', + 'uses' => 'OrganiserController@postCreateOrganiser', + ]); + + Route::post('{organiser_id}/page_design', [ + 'as' => 'postEditOrganiserPageDesign', + 'uses' => 'OrganiserCustomizeController@postEditOrganiserPageDesign' ]); }); /* - * @todo Move to a controller + * Events dashboard */ - Route::get('{event_id}/go_live', [ - 'as' => 'MakeEventLive', - function ($event_id) { - $event = \App\Models\Event::scope()->findOrFail($event_id); - $event->is_live = 1; - $event->save(); - \Session::flash('message', - 'Event Successfully Made Live! You can undo this action in event settings page.'); + Route::group(['prefix' => 'events'], function () { + /* + * ---------- + * Create Event + * ---------- + */ + Route::get('/create', [ + 'as' => 'showCreateEvent', + 'uses' => 'EventController@showCreateEvent', + ]); + + Route::post('/create', [ + 'as' => 'postCreateEvent', + 'uses' => 'EventController@postCreateEvent', + ]); + }); + + /* + * Upload event images + */ + Route::post('/upload_image', [ + 'as' => 'postUploadEventImage', + 'uses' => 'EventController@postUploadEventImage', + ]); + + /* + * Event management routes + */ + Route::group(['prefix' => 'event'], function () { + + /* + * Dashboard + */ + Route::get('{event_id}/dashboard/', [ + 'as' => 'showEventDashboard', + 'uses' => 'EventDashboardController@showDashboard', + ] + ); + + Route::get('{event_id}', function ($event_id) { return Redirect::route('showEventDashboard', [ 'event_id' => $event_id, ]); - } - ]); + }); - /* - * ------- - * Tickets - * ------- - */ - Route::get('{event_id}/tickets/', [ - 'as' => 'showEventTickets', - 'uses' => 'EventTicketsController@showTickets', - ]); - Route::get('{event_id}/tickets/edit/{ticket_id}', [ - 'as' => 'showEditTicket', - 'uses' => 'EventTicketsController@showEditTicket', - ]); - Route::post('{event_id}/tickets/edit/{ticket_id}', [ - 'as' => 'postEditTicket', - 'uses' => 'EventTicketsController@postEditTicket', - ]); - Route::get('{event_id}/tickets/create', [ - 'as' => 'showCreateTicket', - 'uses' => 'EventTicketsController@showCreateTicket', - ]); - Route::post('{event_id}/tickets/create', [ - 'as' => 'postCreateTicket', - 'uses' => 'EventTicketsController@postCreateTicket', - ]); - Route::post('{event_id}/tickets/delete', [ - 'as' => 'postDeleteTicket', - 'uses' => 'EventTicketsController@postDeleteTicket', - ]); - Route::post('{event_id}/tickets/pause', [ - 'as' => 'postPauseTicket', - 'uses' => 'EventTicketsController@postPauseTicket', - ]); - Route::post('{event_id}/tickets/order', [ - 'as' => 'postUpdateTicketsOrder', - 'uses' => 'EventTicketsController@postUpdateTicketsOrder', - ]); + /* + * @todo Move to a controller + */ + Route::get('{event_id}/go_live', [ + 'as' => 'MakeEventLive', + function ($event_id) { + $event = \App\Models\Event::scope()->findOrFail($event_id); + $event->is_live = 1; + $event->save(); + \Session::flash('message', + 'Event Successfully Made Live! You can undo this action in event settings page.'); - /* - * Ticket questions - */ - Route::get('{event_id}/tickets/questions', [ - 'as' => 'showTicketQuestions', - 'uses' => 'EventTicketQuestionsController@showQuestions', - ]); - Route::post('{event_id}/tickets/questions/create', [ - 'as' => 'postCreateQuestion', - 'uses' => 'EventTicketQuestionsController@postCreateQuestion', - ]); + return Redirect::route('showEventDashboard', [ + 'event_id' => $event_id, + ]); + } + ]); - /* - * ------- - * Attendees - * ------- - */ - Route::get('{event_id}/attendees/', [ - 'as' => 'showEventAttendees', - 'uses' => 'EventAttendeesController@showAttendees', - ]); + /* + * ------- + * Tickets + * ------- + */ + Route::get('{event_id}/tickets/', [ + 'as' => 'showEventTickets', + 'uses' => 'EventTicketsController@showTickets', + ]); + Route::get('{event_id}/tickets/edit/{ticket_id}', [ + 'as' => 'showEditTicket', + 'uses' => 'EventTicketsController@showEditTicket', + ]); + Route::post('{event_id}/tickets/edit/{ticket_id}', [ + 'as' => 'postEditTicket', + 'uses' => 'EventTicketsController@postEditTicket', + ]); + Route::get('{event_id}/tickets/create', [ + 'as' => 'showCreateTicket', + 'uses' => 'EventTicketsController@showCreateTicket', + ]); + Route::post('{event_id}/tickets/create', [ + 'as' => 'postCreateTicket', + 'uses' => 'EventTicketsController@postCreateTicket', + ]); + Route::post('{event_id}/tickets/delete', [ + 'as' => 'postDeleteTicket', + 'uses' => 'EventTicketsController@postDeleteTicket', + ]); + Route::post('{event_id}/tickets/pause', [ + 'as' => 'postPauseTicket', + 'uses' => 'EventTicketsController@postPauseTicket', + ]); + Route::post('{event_id}/tickets/order', [ + 'as' => 'postUpdateTicketsOrder', + 'uses' => 'EventTicketsController@postUpdateTicketsOrder', + ]); - Route::get('{event_id}/attendees/message', [ - 'as' => 'showMessageAttendees', - 'uses' => 'EventAttendeesController@showMessageAttendees', - ]); + /* + * Ticket questions + */ + Route::get('{event_id}/tickets/questions', [ + 'as' => 'showTicketQuestions', + 'uses' => 'EventTicketQuestionsController@showQuestions', + ]); + Route::post('{event_id}/tickets/questions/create', [ + 'as' => 'postCreateQuestion', + 'uses' => 'EventTicketQuestionsController@postCreateQuestion', + ]); - Route::post('{event_id}/attendees/message', [ - 'as' => 'postMessageAttendees', - 'uses' => 'EventAttendeesController@postMessageAttendees', - ]); + /* + * ------- + * Attendees + * ------- + */ + Route::get('{event_id}/attendees/', [ + 'as' => 'showEventAttendees', + 'uses' => 'EventAttendeesController@showAttendees', + ]); - Route::get('{event_id}/attendees/single_message', [ - 'as' => 'showMessageAttendee', - 'uses' => 'EventAttendeesController@showMessageAttendee', - ]); + Route::get('{event_id}/attendees/message', [ + 'as' => 'showMessageAttendees', + 'uses' => 'EventAttendeesController@showMessageAttendees', + ]); - Route::post('{event_id}/attendees/single_message', [ - 'as' => 'postMessageAttendee', - 'uses' => 'EventAttendeesController@postMessageAttendee', - ]); + Route::post('{event_id}/attendees/message', [ + 'as' => 'postMessageAttendees', + 'uses' => 'EventAttendeesController@postMessageAttendees', + ]); - Route::get('{event_id}/attendees/resend_ticket', [ - 'as' => 'showResendTicketToAttendee', - 'uses' => 'EventAttendeesController@showResendTicketToAttendee', - ]); + Route::get('{event_id}/attendees/single_message', [ + 'as' => 'showMessageAttendee', + 'uses' => 'EventAttendeesController@showMessageAttendee', + ]); - Route::post('{event_id}/attendees/resend_ticket', [ - 'as' => 'postResendTicketToAttendee', - 'uses' => 'EventAttendeesController@postResendTicketToAttendee', - ]); + Route::post('{event_id}/attendees/single_message', [ + 'as' => 'postMessageAttendee', + 'uses' => 'EventAttendeesController@postMessageAttendee', + ]); - Route::get('{event_id}/attendees/invite', [ - 'as' => 'showInviteAttendee', - 'uses' => 'EventAttendeesController@showInviteAttendee', - ]); + Route::get('{event_id}/attendees/resend_ticket', [ + 'as' => 'showResendTicketToAttendee', + 'uses' => 'EventAttendeesController@showResendTicketToAttendee', + ]); - Route::post('{event_id}/attendees/invite', [ - 'as' => 'postInviteAttendee', - 'uses' => 'EventAttendeesController@postInviteAttendee', - ]); + Route::post('{event_id}/attendees/resend_ticket', [ + 'as' => 'postResendTicketToAttendee', + 'uses' => 'EventAttendeesController@postResendTicketToAttendee', + ]); - Route::get('{event_id}/attendees/import', [ - 'as' => 'showImportAttendee', - 'uses' => 'EventAttendeesController@showImportAttendee', - ]); + Route::get('{event_id}/attendees/invite', [ + 'as' => 'showInviteAttendee', + 'uses' => 'EventAttendeesController@showInviteAttendee', + ]); - Route::post('{event_id}/attendees/import', [ - 'as' => 'postImportAttendee', - 'uses' => 'EventAttendeesController@postImportAttendee', - ]); + Route::post('{event_id}/attendees/invite', [ + 'as' => 'postInviteAttendee', + 'uses' => 'EventAttendeesController@postInviteAttendee', + ]); - Route::get('{event_id}/attendees/print', [ - 'as' => 'showPrintAttendees', - 'uses' => 'EventAttendeesController@showPrintAttendees', - ]); + Route::get('{event_id}/attendees/import', [ + 'as' => 'showImportAttendee', + 'uses' => 'EventAttendeesController@showImportAttendee', + ]); - Route::get('{event_id}/attendees/{attendee_id}/export_ticket', [ - 'as' => 'showExportTicket', - 'uses' => 'EventAttendeesController@showExportTicket', - ]); + Route::post('{event_id}/attendees/import', [ + 'as' => 'postImportAttendee', + 'uses' => 'EventAttendeesController@postImportAttendee', + ]); - Route::get('{event_id}/attendees/{attendee_id}/ticket', [ - 'as' => 'showAttendeeTicket', - 'uses' => 'EventAttendeesController@showAttendeeTicket', - ]); + Route::get('{event_id}/attendees/print', [ + 'as' => 'showPrintAttendees', + 'uses' => 'EventAttendeesController@showPrintAttendees', + ]); - Route::get('{event_id}/attendees/export/{export_as?}', [ - 'as' => 'showExportAttendees', - 'uses' => 'EventAttendeesController@showExportAttendees', - ]); + Route::get('{event_id}/attendees/{attendee_id}/export_ticket', [ + 'as' => 'showExportTicket', + 'uses' => 'EventAttendeesController@showExportTicket', + ]); - Route::get('{event_id}/attendees/{attendee_id}/edit', [ - 'as' => 'showEditAttendee', - 'uses' => 'EventAttendeesController@showEditAttendee', - ]); - Route::post('{event_id}/attendees/{attendee_id}/edit', [ - 'as' => 'postEditAttendee', - 'uses' => 'EventAttendeesController@postEditAttendee', - ]); + Route::get('{event_id}/attendees/{attendee_id}/ticket', [ + 'as' => 'showAttendeeTicket', + 'uses' => 'EventAttendeesController@showAttendeeTicket', + ]); - Route::get('{event_id}/attendees/{attendee_id}/cancel', [ - 'as' => 'showCancelAttendee', - 'uses' => 'EventAttendeesController@showCancelAttendee', - ]); - Route::post('{event_id}/attendees/{attendee_id}/cancel', [ - 'as' => 'postCancelAttendee', - 'uses' => 'EventAttendeesController@postCancelAttendee', - ]); + Route::get('{event_id}/attendees/export/{export_as?}', [ + 'as' => 'showExportAttendees', + 'uses' => 'EventAttendeesController@showExportAttendees', + ]); - /* - * ------- - * Orders - * ------- - */ - Route::get('{event_id}/orders/', [ - 'as' => 'showEventOrders', - 'uses' => 'EventOrdersController@showOrders', - ]); + Route::get('{event_id}/attendees/{attendee_id}/edit', [ + 'as' => 'showEditAttendee', + 'uses' => 'EventAttendeesController@showEditAttendee', + ]); + Route::post('{event_id}/attendees/{attendee_id}/edit', [ + 'as' => 'postEditAttendee', + 'uses' => 'EventAttendeesController@postEditAttendee', + ]); - Route::get('order/{order_id}', [ - 'as' => 'showManageOrder', - 'uses' => 'EventOrdersController@manageOrder', - ]); + Route::get('{event_id}/attendees/{attendee_id}/cancel', [ + 'as' => 'showCancelAttendee', + 'uses' => 'EventAttendeesController@showCancelAttendee', + ]); + Route::post('{event_id}/attendees/{attendee_id}/cancel', [ + 'as' => 'postCancelAttendee', + 'uses' => 'EventAttendeesController@postCancelAttendee', + ]); - Route::post('order/{order_id}/resend', [ - 'as' => 'resendOrder', - 'uses' => 'EventOrdersController@resendOrder', - ]); + /* + * ------- + * Orders + * ------- + */ + Route::get('{event_id}/orders/', [ + 'as' => 'showEventOrders', + 'uses' => 'EventOrdersController@showOrders', + ]); - Route::get('order/{order_id}/show/edit', [ - 'as' => 'showEditOrder', - 'uses' => 'EventOrdersController@showEditOrder', - ]); + Route::get('order/{order_id}', [ + 'as' => 'showManageOrder', + 'uses' => 'EventOrdersController@manageOrder', + ]); - Route::post('order/{order_id}/edit', [ - 'as' => 'postOrderEdit', - 'uses' => 'EventOrdersController@postEditOrder', - ]); + Route::post('order/{order_id}/resend', [ + 'as' => 'resendOrder', + 'uses' => 'EventOrdersController@resendOrder', + ]); - Route::get('order/{order_id}/cancel', [ - 'as' => 'showCancelOrder', - 'uses' => 'EventOrdersController@showCancelOrder', - ]); + Route::get('order/{order_id}/show/edit', [ + 'as' => 'showEditOrder', + 'uses' => 'EventOrdersController@showEditOrder', + ]); - Route::post('order/{order_id}/cancel', [ - 'as' => 'postCancelOrder', - 'uses' => 'EventOrdersController@postCancelOrder', - ]); + Route::post('order/{order_id}/edit', [ + 'as' => 'postOrderEdit', + 'uses' => 'EventOrdersController@postEditOrder', + ]); - Route::post('order/{order_id}/mark_payment_received', [ - 'as' => 'postMarkPaymentReceived', - 'uses' => 'EventOrdersController@postMarkPaymentReceived', - ]); + Route::get('order/{order_id}/cancel', [ + 'as' => 'showCancelOrder', + 'uses' => 'EventOrdersController@showCancelOrder', + ]); - Route::get('{event_id}/orders/export/{export_as?}', [ - 'as' => 'showExportOrders', - 'uses' => 'EventOrdersController@showExportOrders', - ]); - Route::get('{event_id}/orders/message', [ - 'as' => 'showMessageOrder', - 'uses' => 'EventOrdersController@showMessageOrder', - ]); + Route::post('order/{order_id}/cancel', [ + 'as' => 'postCancelOrder', + 'uses' => 'EventOrdersController@postCancelOrder', + ]); - Route::post('{event_id}/orders/message', [ - 'as' => 'postMessageOrder', - 'uses' => 'EventOrdersController@postMessageOrder', - ]); + Route::post('order/{order_id}/mark_payment_received', [ + 'as' => 'postMarkPaymentReceived', + 'uses' => 'EventOrdersController@postMarkPaymentReceived', + ]); - /* - * ------- - * Edit Event - * ------- - */ - Route::post('{event_id}/customize', [ - 'as' => 'postEditEvent', - 'uses' => 'EventController@postEditEvent', - ]); + Route::get('{event_id}/orders/export/{export_as?}', [ + 'as' => 'showExportOrders', + 'uses' => 'EventOrdersController@showExportOrders', + ]); + Route::get('{event_id}/orders/message', [ + 'as' => 'showMessageOrder', + 'uses' => 'EventOrdersController@showMessageOrder', + ]); - /* - * ------- - * Customize Design etc. - * ------- - */ - Route::get('{event_id}/customize', [ - 'as' => 'showEventCustomize', - 'uses' => 'EventCustomizeController@showCustomize', - ]); + Route::post('{event_id}/orders/message', [ + 'as' => 'postMessageOrder', + 'uses' => 'EventOrdersController@postMessageOrder', + ]); - Route::get('{event_id}/customize/{tab?}', [ - 'as' => 'showEventCustomizeTab', - 'uses' => 'EventCustomizeController@showCustomize', - ]); + /* + * ------- + * Edit Event + * ------- + */ + Route::post('{event_id}/customize', [ + 'as' => 'postEditEvent', + 'uses' => 'EventController@postEditEvent', + ]); - Route::post('{event_id}/customize/order_page', [ - 'as' => 'postEditEventOrderPage', - 'uses' => 'EventCustomizeController@postEditEventOrderPage', - ]); - Route::post('{event_id}/customize/design', [ - 'as' => 'postEditEventDesign', - 'uses' => 'EventCustomizeController@postEditEventDesign', - ]); - Route::post('{event_id}/customize/ticket_design', [ - 'as' => 'postEditEventTicketDesign', - 'uses' => 'EventCustomizeController@postEditEventTicketDesign', - ]); - Route::post('{event_id}/customize/social', [ - 'as' => 'postEditEventSocial', - 'uses' => 'EventCustomizeController@postEditEventSocial', - ]); + /* + * ------- + * Customize Design etc. + * ------- + */ + Route::get('{event_id}/customize', [ + 'as' => 'showEventCustomize', + 'uses' => 'EventCustomizeController@showCustomize', + ]); - Route::post('{event_id}/customize/fees', [ - 'as' => 'postEditEventFees', - 'uses' => 'EventCustomizeController@postEditEventFees', - ]); + Route::get('{event_id}/customize/{tab?}', [ + 'as' => 'showEventCustomizeTab', + 'uses' => 'EventCustomizeController@showCustomize', + ]); + + Route::post('{event_id}/customize/order_page', [ + 'as' => 'postEditEventOrderPage', + 'uses' => 'EventCustomizeController@postEditEventOrderPage', + ]); + Route::post('{event_id}/customize/design', [ + 'as' => 'postEditEventDesign', + 'uses' => 'EventCustomizeController@postEditEventDesign', + ]); + Route::post('{event_id}/customize/ticket_design', [ + 'as' => 'postEditEventTicketDesign', + 'uses' => 'EventCustomizeController@postEditEventTicketDesign', + ]); + Route::post('{event_id}/customize/social', [ + 'as' => 'postEditEventSocial', + 'uses' => 'EventCustomizeController@postEditEventSocial', + ]); + + Route::post('{event_id}/customize/fees', [ + 'as' => 'postEditEventFees', + 'uses' => 'EventCustomizeController@postEditEventFees', + ]); - /* - * ------- - * Event Widget page - * ------- - */ - Route::get('{event_id}/widgets', [ - 'as' => 'showEventWidgets', - 'uses' => 'EventWidgetsController@showEventWidgets', - ]); + /* + * ------- + * Event Widget page + * ------- + */ + Route::get('{event_id}/widgets', [ + 'as' => 'showEventWidgets', + 'uses' => 'EventWidgetsController@showEventWidgets', + ]); - /* - * ------- - * Event Survey page - * ------- - */ - Route::get('{event_id}/surveys', [ - 'as' => 'showEventSurveys', - 'uses' => 'EventSurveyController@showEventSurveys', - ]); - Route::get('{event_id}/question/create', [ - 'as' => 'showCreateEventQuestion', - 'uses' => 'EventSurveyController@showCreateEventQuestion' - ]); + /* + * ------- + * Event Survey page + * ------- + */ + Route::get('{event_id}/surveys', [ + 'as' => 'showEventSurveys', + 'uses' => 'EventSurveyController@showEventSurveys', + ]); + Route::get('{event_id}/question/create', [ + 'as' => 'showCreateEventQuestion', + 'uses' => 'EventSurveyController@showCreateEventQuestion' + ]); - Route::post('{event_id}/question/create', [ - 'as' => 'postCreateEventQuestion', - 'uses' => 'EventSurveyController@postCreateEventQuestion' - ]); + Route::post('{event_id}/question/create', [ + 'as' => 'postCreateEventQuestion', + 'uses' => 'EventSurveyController@postCreateEventQuestion' + ]); - Route::get('{event_id}/question/{question_id}', [ - 'as' => 'showEditEventQuestion', - 'uses' => 'EventSurveyController@showEditEventQuestion' - ]); + Route::get('{event_id}/question/{question_id}', [ + 'as' => 'showEditEventQuestion', + 'uses' => 'EventSurveyController@showEditEventQuestion' + ]); - Route::post('{event_id}/question/{question_id}', [ - 'as' => 'postEditEventQuestion', - 'uses' => 'EventSurveyController@postEditEventQuestion' - ]); + Route::post('{event_id}/question/{question_id}', [ + 'as' => 'postEditEventQuestion', + 'uses' => 'EventSurveyController@postEditEventQuestion' + ]); - Route::post('{event_id}/question/delete/{question_id}', [ - 'as' => 'postDeleteEventQuestion', - 'uses' => 'EventSurveyController@postDeleteEventQuestion' - ]); + Route::post('{event_id}/question/delete/{question_id}', [ + 'as' => 'postDeleteEventQuestion', + 'uses' => 'EventSurveyController@postDeleteEventQuestion' + ]); - Route::get('{event_id}/question/{question_id}/answers', [ - 'as' => 'showEventQuestionAnswers', - 'uses' => 'EventSurveyController@showEventQuestionAnswers', - ]); + Route::get('{event_id}/question/{question_id}/answers', [ + 'as' => 'showEventQuestionAnswers', + 'uses' => 'EventSurveyController@showEventQuestionAnswers', + ]); - Route::post('{event_id}/questions/update_order', [ - 'as' => 'postUpdateQuestionsOrder', - 'uses' => 'EventSurveyController@postUpdateQuestionsOrder' - ]); + Route::post('{event_id}/questions/update_order', [ + 'as' => 'postUpdateQuestionsOrder', + 'uses' => 'EventSurveyController@postUpdateQuestionsOrder' + ]); - Route::get('{event_id}/answers/export/{export_as?}', [ - 'as' => 'showExportAnswers', - 'uses' => 'EventSurveyController@showExportAnswers', - ]); + Route::get('{event_id}/answers/export/{export_as?}', [ + 'as' => 'showExportAnswers', + 'uses' => 'EventSurveyController@showExportAnswers', + ]); - Route::post('{event_id}/question/{question_id}/enable', [ - 'as' => 'postEnableQuestion', - 'uses' => 'EventSurveyController@postEnableQuestion', - ]); + Route::post('{event_id}/question/{question_id}/enable', [ + 'as' => 'postEnableQuestion', + 'uses' => 'EventSurveyController@postEnableQuestion', + ]); - /* - * ------- - * Check In App - * ------- - */ - Route::get('{event_id}/check_in', [ - 'as' => 'showChechIn', - 'uses' => 'EventCheckInController@showCheckIn', - ]); - Route::post('{event_id}/check_in/search', [ - 'as' => 'postCheckInSearch', - 'uses' => 'EventCheckInController@postCheckInSearch', - ]); - Route::post('{event_id}/check_in/', [ - 'as' => 'postCheckInAttendee', - 'uses' => 'EventCheckInController@postCheckInAttendee', - ]); + /* + * ------- + * Check In App + * ------- + */ + Route::get('{event_id}/check_in', [ + 'as' => 'showChechIn', + 'uses' => 'EventCheckInController@showCheckIn', + ]); + Route::post('{event_id}/check_in/search', [ + 'as' => 'postCheckInSearch', + 'uses' => 'EventCheckInController@postCheckInSearch', + ]); + Route::post('{event_id}/check_in/', [ + 'as' => 'postCheckInAttendee', + 'uses' => 'EventCheckInController@postCheckInAttendee', + ]); - Route::post('{event_id}/qrcode_check_in', [ - 'as' => 'postQRCodeCheckInAttendee', - 'uses' => 'EventCheckInController@postCheckInAttendeeQr', - ]); + Route::post('{event_id}/qrcode_check_in', [ + 'as' => 'postQRCodeCheckInAttendee', + 'uses' => 'EventCheckInController@postCheckInAttendeeQr', + ]); - Route::post('{event_id}/confirm_order_tickets/{order_id}', [ - 'as' => 'confirmCheckInOrderTickets', - 'uses' => 'EventCheckInController@confirmOrderTicketsQr', - ]); + Route::post('{event_id}/confirm_order_tickets/{order_id}', [ + 'as' => 'confirmCheckInOrderTickets', + 'uses' => 'EventCheckInController@confirmOrderTicketsQr', + ]); - /* - * ------- - * QRCode Check In App - * ------- + /* + * ------- + * QRCode Check In App + * ------- - Route::get('{event_id}/qrcode_check_in', [ - 'as' => 'showQRCodeChechIn', - 'uses' => 'EventQrcodeCheckInController@showCheckIn', - ]); + Route::get('{event_id}/qrcode_check_in', [ + 'as' => 'showQRCodeChechIn', + 'uses' => 'EventQrcodeCheckInController@showCheckIn', + ]); - Route::post('{event_id}/qrcode_check_in', [ - 'as' => 'postQRCodeCheckInAttendee', - 'uses' => 'EventQrcodeCheckInController@postCheckInAttendee', - ]); + Route::post('{event_id}/qrcode_check_in', [ + 'as' => 'postQRCodeCheckInAttendee', + 'uses' => 'EventQrcodeCheckInController@postCheckInAttendee', + ]); - Route::match(['PUT', 'PATCH'], '{event_id}/confirm_order_tickets/{order_id}', [ - 'as' => 'confirmCheckInOrderTickets', - 'uses' => 'EventQrcodeCheckInController@confirmOrderTickets', - ]); - */ + Route::match(['PUT', 'PATCH'], '{event_id}/confirm_order_tickets/{order_id}', [ + 'as' => 'confirmCheckInOrderTickets', + 'uses' => 'EventQrcodeCheckInController@confirmOrderTickets', + ]); + */ - /* - * ------- - * Promote - * ------- - */ - Route::get('{event_id}/promote', [ - 'as' => 'showEventPromote', - 'uses' => 'EventPromoteController@showPromote', - ]); + /* + * ------- + * Promote + * ------- + */ + Route::get('{event_id}/promote', [ + 'as' => 'showEventPromote', + 'uses' => 'EventPromoteController@showPromote', + ]); + }); }); + + Route::get('/', function () { + return Redirect::route('showSelectOrganiser'); + // I prefer it that way: + // return Redirect::route('showOrganiserHome', ["organiser_id"=>1]); + }); + + Route::get('/terms_and_conditions', [ + 'as' => 'termsAndConditions', + function () { + return 'TODO: add terms and cond'; + } + ]); + }); -Route::get('/', function () { - return Redirect::route('showSelectOrganiser'); -}); - -Route::get('/terms_and_conditions', [ - 'as' => 'termsAndConditions', - function () { - return 'TODO: add terms and cond'; - } -]); - diff --git a/app/Jobs/GenerateTicket.php b/app/Jobs/GenerateTicket.php index 81ee0893..e7f48d05 100644 --- a/app/Jobs/GenerateTicket.php +++ b/app/Jobs/GenerateTicket.php @@ -60,8 +60,10 @@ class GenerateTicket extends Job implements ShouldQueue $attendees = $query->get(); $image_path = $event->organiser->full_logo_path; - if ($event->images->first() != null) { - $image_path = $event->images()->first()->image_path; + $images = []; + $imgs = $order->event->images; + foreach ($imgs as $img) { + $images[] = base64_encode(file_get_contents(public_path($img->image_path))); } $data = [ @@ -70,6 +72,7 @@ class GenerateTicket extends Job implements ShouldQueue 'attendees' => $attendees, 'css' => file_get_contents(public_path('assets/stylesheet/ticket.css')), 'image' => base64_encode(file_get_contents(public_path($image_path))), + 'images' => $images, ]; PDF::setOutputMode('F'); // force to file diff --git a/app/Mailers/AttendeeMailer.php b/app/Mailers/AttendeeMailer.php index 974b7893..c8648d1c 100644 --- a/app/Mailers/AttendeeMailer.php +++ b/app/Mailers/AttendeeMailer.php @@ -23,7 +23,7 @@ class AttendeeMailer extends Mailer Mail::send('Mailers.TicketMailer.SendAttendeeTicket', $data, function ($message) use ($attendee) { $message->to($attendee->email); - $message->subject('Your ticket for the event ' . $attendee->order->event->title); + $message->subject(trans("Email.your_ticket_for_event", ["event" => $attendee->order->event->title])); $file_name = $attendee->reference; $file_path = public_path(config('attendize.event_pdf_tickets_path')) . '/' . $file_name . '.pdf'; @@ -81,7 +81,7 @@ class AttendeeMailer extends Mailer Mail::queue('Mailers.TicketMailer.SendAttendeeInvite', $data, function ($message) use ($attendee) { $message->to($attendee->email); - $message->subject('Your ticket for the event ' . $attendee->order->event->title); + $message->subject(trans("Email.your_ticket_for_event", ["event" => $attendee->order->event->title])); $file_name = $attendee->getReferenceAttribute(); $file_path = public_path(config('attendize.event_pdf_tickets_path')) . '/' . $file_name . '.pdf'; diff --git a/app/Mailers/OrderMailer.php b/app/Mailers/OrderMailer.php index 19282622..eab2efcb 100644 --- a/app/Mailers/OrderMailer.php +++ b/app/Mailers/OrderMailer.php @@ -25,14 +25,13 @@ class OrderMailer { Log::info("Sending ticket to: " . $order->email); - $data = [ 'order' => $order, ]; Mail::send('Mailers.TicketMailer.SendOrderTickets', $data, function ($message) use ($order) { $message->to($order->email); - $message->subject('Your tickets for the event ' . $order->event->title); + $message->subject(trans("Controllers.tickets_for_event", ["event"=>$order->event->title])); $file_name = $order->order_reference; $file_path = public_path(config('attendize.event_pdf_tickets_path')) . '/' . $file_name . '.pdf'; diff --git a/app/Models/Event.php b/app/Models/Event.php index 8ab98f43..93880e3a 100644 --- a/app/Models/Event.php +++ b/app/Models/Event.php @@ -309,7 +309,8 @@ class Event extends MyBaseModel */ public function getEventUrlAttribute() { - return URL::to('/') . '/e/' . $this->id . '/' . Str::slug($this->title); + return route("showEventPage", ["event_id"=>$this->id, "event_slug"=>Str::slug($this->title)]); + //return URL::to('/') . '/e/' . $this->id . '/' . Str::slug($this->title); } /** diff --git a/app/Providers/AppServiceProvider.php b/app/Providers/AppServiceProvider.php index 78815cb4..889a61d3 100644 --- a/app/Providers/AppServiceProvider.php +++ b/app/Providers/AppServiceProvider.php @@ -30,5 +30,8 @@ class AppServiceProvider extends ServiceProvider $this->app->bind( 'Illuminate\Contracts\Auth\Registrar', 'App\Services\Registrar' ); + if ($this->app->environment() !== 'production') { // or local or whatever + $this->app->register(\Potsky\LaravelLocalizationHelpers\LaravelLocalizationHelpersServiceProvider::class); + } } } diff --git a/bootstrap/app.php b/bootstrap/app.php index 22712ffe..249b6ada 100644 --- a/bootstrap/app.php +++ b/bootstrap/app.php @@ -40,7 +40,6 @@ $app->singleton( 'Illuminate\Contracts\Debug\ExceptionHandler', 'App\Exceptions\Handler' ); - /* |-------------------------------------------------------------------------- | Return The Application diff --git a/composer.json b/composer.json index f494c718..fba0ed47 100644 --- a/composer.json +++ b/composer.json @@ -28,7 +28,9 @@ "laracasts/utilities": "^2.1", "predis/predis": "~1.0", "guzzlehttp/guzzle": "^6.2", - "omnipay/migs": "^2.1" + "omnipay/migs": "^2.1", + "mcamara/laravel-localization": "^1.2", + "potsky/laravel-localization-helpers": "2.3.*" }, "require-dev": { "phpunit/phpunit": "~4.0", @@ -73,5 +75,12 @@ }, "config": { "preferred-install": "dist" + }, + "extra" : { + "laravel" : { + "dont-discover" : [ + "potsky/laravel-localization-helpers" + ] + } } } diff --git a/composer.lock b/composer.lock index 7d113a13..f0201a7b 100644 --- a/composer.lock +++ b/composer.lock @@ -4,27 +4,30 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file", "This file is @generated automatically" ], - "hash": "7b1126b16006b172d42d088ccd9ff54e", - "content-hash": "a5aca37d7aaec7360f32b22ffabb7bb2", + "content-hash": "89a6668b4e954f6a6e229978385a9ea0", "packages": [ { "name": "aws/aws-sdk-php", - "version": "3.18.18", + "version": "3.54.4", "source": { "type": "git", "url": "https://github.com/aws/aws-sdk-php.git", - "reference": "68b9d0b7e007782bc0f2633cdf5a4a6bf08aaafc" + "reference": "6642a13df7ddcccf19e66c744c5bfae5b61e9e85" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/68b9d0b7e007782bc0f2633cdf5a4a6bf08aaafc", - "reference": "68b9d0b7e007782bc0f2633cdf5a4a6bf08aaafc", + "url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/6642a13df7ddcccf19e66c744c5bfae5b61e9e85", + "reference": "6642a13df7ddcccf19e66c744c5bfae5b61e9e85", "shasum": "" }, "require": { - "guzzlehttp/guzzle": "~5.3|~6.0.1|~6.1", + "ext-json": "*", + "ext-pcre": "*", + "ext-simplexml": "*", + "ext-spl": "*", + "guzzlehttp/guzzle": "^5.3.1|^6.2.1", "guzzlehttp/promises": "~1.0", - "guzzlehttp/psr7": "~1.0", + "guzzlehttp/psr7": "^1.4.1", "mtdowling/jmespath.php": "~2.2", "php": ">=5.5" }, @@ -34,13 +37,9 @@ "behat/behat": "~3.0", "doctrine/cache": "~1.4", "ext-dom": "*", - "ext-json": "*", "ext-openssl": "*", - "ext-pcre": "*", - "ext-simplexml": "*", - "ext-spl": "*", "nette/neon": "^2.3", - "phpunit/phpunit": "~4.0|~5.0", + "phpunit/phpunit": "^4.8.35|^5.4.3", "psr/cache": "^1.0" }, "suggest": { @@ -85,24 +84,24 @@ "s3", "sdk" ], - "time": "2016-06-14 20:35:03" + "time": "2018-04-10T22:11:31+00:00" }, { "name": "classpreloader/classpreloader", - "version": "3.0.0", + "version": "3.2.0", "source": { "type": "git", "url": "https://github.com/ClassPreloader/ClassPreloader.git", - "reference": "9b10b913c2bdf90c3d2e0d726b454fb7f77c552a" + "reference": "4729e438e0ada350f91148e7d4bb9809342575ff" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/ClassPreloader/ClassPreloader/zipball/9b10b913c2bdf90c3d2e0d726b454fb7f77c552a", - "reference": "9b10b913c2bdf90c3d2e0d726b454fb7f77c552a", + "url": "https://api.github.com/repos/ClassPreloader/ClassPreloader/zipball/4729e438e0ada350f91148e7d4bb9809342575ff", + "reference": "4729e438e0ada350f91148e7d4bb9809342575ff", "shasum": "" }, "require": { - "nikic/php-parser": "^1.0|^2.0", + "nikic/php-parser": "^1.0|^2.0|^3.0", "php": ">=5.5.9" }, "require-dev": { @@ -111,7 +110,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "3.0-dev" + "dev-master": "3.2-dev" } }, "autoload": { @@ -139,138 +138,7 @@ "class", "preload" ], - "time": "2015-11-09 22:51:51" - }, - { - "name": "dingo/api", - "version": "dev-master", - "source": { - "type": "git", - "url": "https://github.com/dingo/api.git", - "reference": "242411efbb9f01104a00b780c4defb2c18a45856" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/dingo/api/zipball/242411efbb9f01104a00b780c4defb2c18a45856", - "reference": "242411efbb9f01104a00b780c4defb2c18a45856", - "shasum": "" - }, - "require": { - "dingo/blueprint": "0.2.*", - "doctrine/annotations": "1.2.*", - "illuminate/routing": "5.1.* || 5.2.* || 5.3.*", - "illuminate/support": "5.1.* || 5.2.* || 5.3.*", - "league/fractal": ">=0.12.0", - "php": "^5.5.9 || ^7.0" - }, - "require-dev": { - "illuminate/auth": "5.1.* || 5.2.* || 5.3.*", - "illuminate/cache": "5.1.* || 5.2.* || 5.3.*", - "illuminate/console": "5.1.* || 5.2.* || 5.3.*", - "illuminate/database": "5.1.* || 5.2.* || 5.3.*", - "illuminate/events": "5.1.* || 5.2.* || 5.3.*", - "illuminate/filesystem": "5.1.* || 5.2.* || 5.3.*", - "illuminate/log": "5.1.* || 5.2.* || 5.3.*", - "illuminate/pagination": "5.1.* || 5.2.* || 5.3.*", - "laravel/lumen-framework": "5.1.* || 5.2.*", - "lucadegasperi/oauth2-server-laravel": "5.0.*", - "mockery/mockery": "~0.9", - "phpunit/phpunit": "^4.8 || ^5.0", - "squizlabs/php_codesniffer": "~2.0", - "tymon/jwt-auth": "1.0.*" - }, - "suggest": { - "lucadegasperi/oauth2-server-laravel": "Protect your API with OAuth 2.0.", - "tymon/jwt-auth": "Protect your API with JSON Web Tokens." - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0-dev" - } - }, - "autoload": { - "psr-4": { - "Dingo\\Api\\": "src/" - }, - "files": [ - "src/helpers.php" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Jason Lewis", - "email": "jason.lewis1991@gmail.com" - } - ], - "description": "A RESTful API package for the Laravel and Lumen frameworks.", - "keywords": [ - "api", - "dingo", - "laravel", - "restful" - ], - "time": "2016-09-02 05:51:07" - }, - { - "name": "dingo/blueprint", - "version": "v0.2.0", - "source": { - "type": "git", - "url": "https://github.com/dingo/blueprint.git", - "reference": "d37fb7433aeadb3d40d5e790978c3c8d229d0e7d" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/dingo/blueprint/zipball/d37fb7433aeadb3d40d5e790978c3c8d229d0e7d", - "reference": "d37fb7433aeadb3d40d5e790978c3c8d229d0e7d", - "shasum": "" - }, - "require": { - "doctrine/annotations": "1.2.*", - "illuminate/filesystem": "5.1.* || 5.2.* || 5.3.*", - "illuminate/support": "5.1.* || 5.2.* || 5.3.*", - "php": ">=5.5.9", - "phpdocumentor/reflection-docblock": "3.1.*" - }, - "require-dev": { - "phpunit/phpunit": "~4.0", - "squizlabs/php_codesniffer": "~2.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "0.2-dev" - } - }, - "autoload": { - "psr-4": { - "Dingo\\Blueprint\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Jason Lewis", - "email": "jason.lewis1991@gmail.com" - } - ], - "description": "API Blueprint documentation generator.", - "keywords": [ - "api", - "blueprint", - "dingo", - "docs", - "laravel" - ], - "time": "2016-08-30 03:27:49" + "time": "2017-12-10T11:40:39+00:00" }, { "name": "dnoegel/php-xdg-base-dir", @@ -303,75 +171,7 @@ "MIT" ], "description": "implementation of xdg base directory specification for php", - "time": "2014-10-24 07:27:01" - }, - { - "name": "doctrine/annotations", - "version": "v1.2.7", - "source": { - "type": "git", - "url": "https://github.com/doctrine/annotations.git", - "reference": "f25c8aab83e0c3e976fd7d19875f198ccf2f7535" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/doctrine/annotations/zipball/f25c8aab83e0c3e976fd7d19875f198ccf2f7535", - "reference": "f25c8aab83e0c3e976fd7d19875f198ccf2f7535", - "shasum": "" - }, - "require": { - "doctrine/lexer": "1.*", - "php": ">=5.3.2" - }, - "require-dev": { - "doctrine/cache": "1.*", - "phpunit/phpunit": "4.*" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.3.x-dev" - } - }, - "autoload": { - "psr-0": { - "Doctrine\\Common\\Annotations\\": "lib/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Roman Borschel", - "email": "roman@code-factory.org" - }, - { - "name": "Benjamin Eberlei", - "email": "kontakt@beberlei.de" - }, - { - "name": "Guilherme Blanco", - "email": "guilhermeblanco@gmail.com" - }, - { - "name": "Jonathan Wage", - "email": "jonwage@gmail.com" - }, - { - "name": "Johannes Schmitt", - "email": "schmittjoh@gmail.com" - } - ], - "description": "Docblock Annotations Parser", - "homepage": "http://www.doctrine-project.org", - "keywords": [ - "annotations", - "docblock", - "parser" - ], - "time": "2015-08-31 12:32:49" + "time": "2014-10-24T07:27:01+00:00" }, { "name": "doctrine/inflector", @@ -438,61 +238,7 @@ "singularize", "string" ], - "time": "2015-11-06 14:35:42" - }, - { - "name": "doctrine/lexer", - "version": "v1.0.1", - "source": { - "type": "git", - "url": "https://github.com/doctrine/lexer.git", - "reference": "83893c552fd2045dd78aef794c31e694c37c0b8c" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/doctrine/lexer/zipball/83893c552fd2045dd78aef794c31e694c37c0b8c", - "reference": "83893c552fd2045dd78aef794c31e694c37c0b8c", - "shasum": "" - }, - "require": { - "php": ">=5.3.2" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0.x-dev" - } - }, - "autoload": { - "psr-0": { - "Doctrine\\Common\\Lexer\\": "lib/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Roman Borschel", - "email": "roman@code-factory.org" - }, - { - "name": "Guilherme Blanco", - "email": "guilhermeblanco@gmail.com" - }, - { - "name": "Johannes Schmitt", - "email": "schmittjoh@gmail.com" - } - ], - "description": "Base library for a lexer that can be used in Top-Down, Recursive Descent Parsers.", - "homepage": "http://www.doctrine-project.org", - "keywords": [ - "lexer", - "parser" - ], - "time": "2014-09-09 13:34:57" + "time": "2015-11-06T14:35:42+00:00" }, { "name": "dompdf/dompdf", @@ -500,24 +246,25 @@ "source": { "type": "git", "url": "https://github.com/dompdf/dompdf.git", - "reference": "8db6e1478e11b4e2bd0753c903dabe375b58ac3b" + "reference": "2e643732cdb61fb09f867a15f2ae4e224503d1b0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/dompdf/dompdf/zipball/e4b49285f8c7165f31b5cc6395a5ee1bbc35144a", - "reference": "8db6e1478e11b4e2bd0753c903dabe375b58ac3b", + "url": "https://api.github.com/repos/dompdf/dompdf/zipball/2e643732cdb61fb09f867a15f2ae4e224503d1b0", + "reference": "2e643732cdb61fb09f867a15f2ae4e224503d1b0", "shasum": "" }, "require": { "ext-dom": "*", "ext-gd": "*", "ext-mbstring": "*", - "phenx/php-font-lib": "0.4.*", - "phenx/php-svg-lib": "0.1.*", - "php": ">=5.3.0" + "phenx/php-font-lib": "0.5.*", + "phenx/php-svg-lib": "0.3.*", + "php": ">=5.4.0" }, "require-dev": { - "phpunit/phpunit": "3.7.*" + "phpunit/phpunit": "4.8.*", + "squizlabs/php_codesniffer": "2.*" }, "type": "library", "extra": { @@ -553,22 +300,29 @@ ], "description": "DOMPDF is a CSS 2.1 compliant HTML to PDF converter", "homepage": "https://github.com/dompdf/dompdf", - "time": "2016-05-12 04:19:17" + "time": "2018-04-08T15:07:27+00:00" }, { "name": "erusev/parsedown", - "version": "1.6.0", + "version": "1.7.1", "source": { "type": "git", "url": "https://github.com/erusev/parsedown.git", - "reference": "3ebbd730b5c2cf5ce78bc1bf64071407fc6674b7" + "reference": "92e9c27ba0e74b8b028b111d1b6f956a15c01fc1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/erusev/parsedown/zipball/3ebbd730b5c2cf5ce78bc1bf64071407fc6674b7", - "reference": "3ebbd730b5c2cf5ce78bc1bf64071407fc6674b7", + "url": "https://api.github.com/repos/erusev/parsedown/zipball/92e9c27ba0e74b8b028b111d1b6f956a15c01fc1", + "reference": "92e9c27ba0e74b8b028b111d1b6f956a15c01fc1", "shasum": "" }, + "require": { + "ext-mbstring": "*", + "php": ">=5.3.0" + }, + "require-dev": { + "phpunit/phpunit": "^4.8.35" + }, "type": "library", "autoload": { "psr-0": { @@ -592,25 +346,28 @@ "markdown", "parser" ], - "time": "2015-10-04 16:44:32" + "time": "2018-03-08T01:11:30+00:00" }, { "name": "ezyang/htmlpurifier", - "version": "v4.7.0", + "version": "v4.10.0", "source": { "type": "git", "url": "https://github.com/ezyang/htmlpurifier.git", - "reference": "ae1828d955112356f7677c465f94f7deb7d27a40" + "reference": "d85d39da4576a6934b72480be6978fb10c860021" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/ezyang/htmlpurifier/zipball/ae1828d955112356f7677c465f94f7deb7d27a40", - "reference": "ae1828d955112356f7677c465f94f7deb7d27a40", + "url": "https://api.github.com/repos/ezyang/htmlpurifier/zipball/d85d39da4576a6934b72480be6978fb10c860021", + "reference": "d85d39da4576a6934b72480be6978fb10c860021", "shasum": "" }, "require": { "php": ">=5.2" }, + "require-dev": { + "simpletest/simpletest": "^1.1" + }, "type": "library", "autoload": { "psr-0": { @@ -636,7 +393,7 @@ "keywords": [ "html" ], - "time": "2015-08-05 01:03:42" + "time": "2018-02-23T01:58:20+00:00" }, { "name": "filp/whoops", @@ -694,7 +451,65 @@ "whoops", "zf2" ], - "time": "2015-06-29 05:42:04" + "time": "2015-06-29T05:42:04+00:00" + }, + { + "name": "friendsofphp/php-cs-fixer", + "version": "v1.13.3", + "source": { + "type": "git", + "url": "https://github.com/FriendsOfPHP/PHP-CS-Fixer.git", + "reference": "387e4c86c9dc0e1e4c475291fc114ec45b98e624" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/FriendsOfPHP/PHP-CS-Fixer/zipball/387e4c86c9dc0e1e4c475291fc114ec45b98e624", + "reference": "387e4c86c9dc0e1e4c475291fc114ec45b98e624", + "shasum": "" + }, + "require": { + "ext-tokenizer": "*", + "php": "^5.3.6 || >=7.0 <7.2", + "sebastian/diff": "^1.1", + "symfony/console": "^2.3 || ^3.0", + "symfony/event-dispatcher": "^2.1 || ^3.0", + "symfony/filesystem": "^2.1 || ^3.0", + "symfony/finder": "^2.1 || ^3.0", + "symfony/process": "^2.3 || ^3.0", + "symfony/stopwatch": "^2.5 || ^3.0" + }, + "conflict": { + "hhvm": "<3.9" + }, + "require-dev": { + "phpunit/phpunit": "^4.5|^5", + "satooshi/php-coveralls": "^1.0" + }, + "bin": [ + "php-cs-fixer" + ], + "type": "application", + "autoload": { + "psr-4": { + "Symfony\\CS\\": "Symfony/CS/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Dariusz Rumiński", + "email": "dariusz.ruminski@gmail.com" + }, + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + } + ], + "description": "A tool to automatically fix PHP code style", + "time": "2017-09-11T14:11:16+00:00" }, { "name": "guzzle/guzzle", @@ -789,36 +604,40 @@ "rest", "web service" ], - "time": "2015-03-18 18:23:50" + "abandoned": "guzzlehttp/guzzle", + "time": "2015-03-18T18:23:50+00:00" }, { "name": "guzzlehttp/guzzle", - "version": "6.2.0", + "version": "6.3.2", "source": { "type": "git", "url": "https://github.com/guzzle/guzzle.git", - "reference": "d094e337976dff9d8e2424e8485872194e768662" + "reference": "68d0ea14d5a3f42a20e87632a5f84931e2709c90" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/guzzle/zipball/d094e337976dff9d8e2424e8485872194e768662", - "reference": "d094e337976dff9d8e2424e8485872194e768662", + "url": "https://api.github.com/repos/guzzle/guzzle/zipball/68d0ea14d5a3f42a20e87632a5f84931e2709c90", + "reference": "68d0ea14d5a3f42a20e87632a5f84931e2709c90", "shasum": "" }, "require": { - "guzzlehttp/promises": "~1.0", - "guzzlehttp/psr7": "~1.1", - "php": ">=5.5.0" + "guzzlehttp/promises": "^1.0", + "guzzlehttp/psr7": "^1.4", + "php": ">=5.5" }, "require-dev": { "ext-curl": "*", - "phpunit/phpunit": "~4.0", - "psr/log": "~1.0" + "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.4", + "psr/log": "^1.0" + }, + "suggest": { + "psr/log": "Required for using the Log middleware" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "6.2-dev" + "dev-master": "6.3-dev" } }, "autoload": { @@ -851,32 +670,32 @@ "rest", "web service" ], - "time": "2016-03-21 20:02:09" + "time": "2018-03-26T16:33:04+00:00" }, { "name": "guzzlehttp/promises", - "version": "1.2.0", + "version": "v1.3.1", "source": { "type": "git", "url": "https://github.com/guzzle/promises.git", - "reference": "c10d860e2a9595f8883527fa0021c7da9e65f579" + "reference": "a59da6cf61d80060647ff4d3eb2c03a2bc694646" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/promises/zipball/c10d860e2a9595f8883527fa0021c7da9e65f579", - "reference": "c10d860e2a9595f8883527fa0021c7da9e65f579", + "url": "https://api.github.com/repos/guzzle/promises/zipball/a59da6cf61d80060647ff4d3eb2c03a2bc694646", + "reference": "a59da6cf61d80060647ff4d3eb2c03a2bc694646", "shasum": "" }, "require": { "php": ">=5.5.0" }, "require-dev": { - "phpunit/phpunit": "~4.0" + "phpunit/phpunit": "^4.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.0-dev" + "dev-master": "1.4-dev" } }, "autoload": { @@ -902,20 +721,20 @@ "keywords": [ "promise" ], - "time": "2016-05-18 16:56:05" + "time": "2016-12-20T10:07:11+00:00" }, { "name": "guzzlehttp/psr7", - "version": "1.3.0", + "version": "1.4.2", "source": { "type": "git", "url": "https://github.com/guzzle/psr7.git", - "reference": "31382fef2889136415751badebbd1cb022a4ed72" + "reference": "f5b8a8512e2b58b0071a7280e39f14f72e05d87c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/psr7/zipball/31382fef2889136415751badebbd1cb022a4ed72", - "reference": "31382fef2889136415751badebbd1cb022a4ed72", + "url": "https://api.github.com/repos/guzzle/psr7/zipball/f5b8a8512e2b58b0071a7280e39f14f72e05d87c", + "reference": "f5b8a8512e2b58b0071a7280e39f14f72e05d87c", "shasum": "" }, "require": { @@ -931,7 +750,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.0-dev" + "dev-master": "1.4-dev" } }, "autoload": { @@ -951,16 +770,23 @@ "name": "Michael Dowling", "email": "mtdowling@gmail.com", "homepage": "https://github.com/mtdowling" + }, + { + "name": "Tobias Schultze", + "homepage": "https://github.com/Tobion" } ], - "description": "PSR-7 message implementation", + "description": "PSR-7 message implementation that also provides common utility methods", "keywords": [ "http", "message", + "request", + "response", "stream", - "uri" + "uri", + "url" ], - "time": "2016-04-13 19:56:01" + "time": "2017-03-20T17:10:46+00:00" }, { "name": "intervention/image", @@ -968,12 +794,12 @@ "source": { "type": "git", "url": "https://github.com/Intervention/image.git", - "reference": "22088b04728a039bd1fc32f7e79a89a118b78698" + "reference": "a54d1e9e6af2815c5ec24972d1d9209c677ce452" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Intervention/image/zipball/4064a980324f6c3bfa2bd981dfb247afa705ec3c", - "reference": "22088b04728a039bd1fc32f7e79a89a118b78698", + "url": "https://api.github.com/repos/Intervention/image/zipball/a54d1e9e6af2815c5ec24972d1d9209c677ce452", + "reference": "a54d1e9e6af2815c5ec24972d1d9209c677ce452", "shasum": "" }, "require": { @@ -983,7 +809,7 @@ }, "require-dev": { "mockery/mockery": "~0.9.2", - "phpunit/phpunit": "3.*" + "phpunit/phpunit": "^4.8 || ^5.7" }, "suggest": { "ext-gd": "to use GD library based image processing.", @@ -994,6 +820,14 @@ "extra": { "branch-alias": { "dev-master": "2.3-dev" + }, + "laravel": { + "providers": [ + "Intervention\\Image\\ImageServiceProvider" + ], + "aliases": { + "Image": "Intervention\\Image\\Facades\\Image" + } } }, "autoload": { @@ -1008,8 +842,8 @@ "authors": [ { "name": "Oliver Vogel", - "email": "oliver@olivervogel.net", - "homepage": "http://olivervogel.net/" + "email": "oliver@olivervogel.com", + "homepage": "http://olivervogel.com/" } ], "description": "Image handling and manipulation library with support for Laravel integration", @@ -1022,62 +856,20 @@ "thumbnail", "watermark" ], - "time": "2016-04-26 14:08:40" - }, - { - "name": "ircmaxell/password-compat", - "version": "v1.0.4", - "source": { - "type": "git", - "url": "https://github.com/ircmaxell/password_compat.git", - "reference": "5c5cde8822a69545767f7c7f3058cb15ff84614c" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/ircmaxell/password_compat/zipball/5c5cde8822a69545767f7c7f3058cb15ff84614c", - "reference": "5c5cde8822a69545767f7c7f3058cb15ff84614c", - "shasum": "" - }, - "require-dev": { - "phpunit/phpunit": "4.*" - }, - "type": "library", - "autoload": { - "files": [ - "lib/password.php" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Anthony Ferrara", - "email": "ircmaxell@php.net", - "homepage": "http://blog.ircmaxell.com" - } - ], - "description": "A compatibility library for the proposed simplified password hashing algorithm: https://wiki.php.net/rfc/password_hash", - "homepage": "https://github.com/ircmaxell/password_compat", - "keywords": [ - "hashing", - "password" - ], - "time": "2014-11-20 16:49:30" + "time": "2017-09-21T16:33:42+00:00" }, { "name": "iron-io/iron_core", - "version": "1.0.1", + "version": "1.0.2", "source": { "type": "git", "url": "https://github.com/iron-io/iron_core_php.git", - "reference": "07f400f36eb4a29e8759abe1c81922a019f801dc" + "reference": "26be2d67a39f86f023247fe72f00a7b00786452f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/iron-io/iron_core_php/zipball/07f400f36eb4a29e8759abe1c81922a019f801dc", - "reference": "07f400f36eb4a29e8759abe1c81922a019f801dc", + "url": "https://api.github.com/repos/iron-io/iron_core_php/zipball/26be2d67a39f86f023247fe72f00a7b00786452f", + "reference": "26be2d67a39f86f023247fe72f00a7b00786452f", "shasum": "" }, "require": { @@ -1117,7 +909,7 @@ "iron", "iron_core" ], - "time": "2016-02-02 11:49:32" + "time": "2018-03-01T18:36:55+00:00" }, { "name": "iron-io/iron_mq", @@ -1166,7 +958,7 @@ "iron", "iron_mq" ], - "time": "2015-02-12 20:05:42" + "time": "2015-02-12T20:05:42+00:00" }, { "name": "jakub-onderka/php-console-color", @@ -1209,7 +1001,7 @@ "homepage": "http://www.acci.cz" } ], - "time": "2014-04-08 15:00:19" + "time": "2014-04-08T15:00:19+00:00" }, { "name": "jakub-onderka/php-console-highlighter", @@ -1253,24 +1045,24 @@ "homepage": "http://www.acci.cz/" } ], - "time": "2015-04-20 18:58:01" + "time": "2015-04-20T18:58:01+00:00" }, { "name": "jeremeamia/SuperClosure", - "version": "2.2.0", + "version": "2.4.0", "source": { "type": "git", "url": "https://github.com/jeremeamia/super_closure.git", - "reference": "29a88be2a4846d27c1613aed0c9071dfad7b5938" + "reference": "5707d5821b30b9a07acfb4d76949784aaa0e9ce9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/jeremeamia/super_closure/zipball/29a88be2a4846d27c1613aed0c9071dfad7b5938", - "reference": "29a88be2a4846d27c1613aed0c9071dfad7b5938", + "url": "https://api.github.com/repos/jeremeamia/super_closure/zipball/5707d5821b30b9a07acfb4d76949784aaa0e9ce9", + "reference": "5707d5821b30b9a07acfb4d76949784aaa0e9ce9", "shasum": "" }, "require": { - "nikic/php-parser": "^1.2|^2.0", + "nikic/php-parser": "^1.2|^2.0|^3.0|^4.0", "php": ">=5.4", "symfony/polyfill-php56": "^1.0" }, @@ -1280,7 +1072,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.2-dev" + "dev-master": "2.4-dev" } }, "autoload": { @@ -1311,7 +1103,7 @@ "serialize", "tokenizer" ], - "time": "2015-12-05 17:17:57" + "time": "2018-03-21T22:21:57+00:00" }, { "name": "laracasts/utilities", @@ -1355,20 +1147,20 @@ "javascript", "laravel" ], - "time": "2015-10-01 05:16:28" + "time": "2015-10-01T05:16:28+00:00" }, { "name": "laravel/framework", - "version": "v5.2.38", + "version": "v5.2.45", "source": { "type": "git", "url": "https://github.com/laravel/framework.git", - "reference": "e211a37eab49a124996ad9150f9e1bdfb52aa048" + "reference": "2a79f920d5584ec6df7cf996d922a742d11095d1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/framework/zipball/e211a37eab49a124996ad9150f9e1bdfb52aa048", - "reference": "e211a37eab49a124996ad9150f9e1bdfb52aa048", + "url": "https://api.github.com/repos/laravel/framework/zipball/2a79f920d5584ec6df7cf996d922a742d11095d1", + "reference": "2a79f920d5584ec6df7cf996d922a742d11095d1", "shasum": "" }, "require": { @@ -1425,7 +1217,8 @@ "illuminate/support": "self.version", "illuminate/translation": "self.version", "illuminate/validation": "self.version", - "illuminate/view": "self.version" + "illuminate/view": "self.version", + "tightenco/collect": "self.version" }, "require-dev": { "aws/aws-sdk-php": "~3.0", @@ -1448,7 +1241,7 @@ "pusher/pusher-php-server": "Required to use the Pusher broadcast driver (~2.0).", "symfony/css-selector": "Required to use some of the crawler integration testing tools (2.8.*|3.0.*).", "symfony/dom-crawler": "Required to use most of the crawler integration testing tools (2.8.*|3.0.*).", - "symfony/psr-http-message-bridge": "Required to psr7 bridging features (0.2.*)." + "symfony/psr-http-message-bridge": "Required to use psr7 bridging features (0.2.*)." }, "type": "library", "extra": { @@ -1484,20 +1277,20 @@ "framework", "laravel" ], - "time": "2016-06-14 01:20:40" + "time": "2016-08-26T11:44:52+00:00" }, { "name": "laravel/socialite", - "version": "v2.0.17", + "version": "v2.0.21", "source": { "type": "git", "url": "https://github.com/laravel/socialite.git", - "reference": "81d39cde2226f7548d8d1aa99405278c87e50737" + "reference": "c4e4337e5b70149fdbefbb95b2c9e93d0749c413" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/socialite/zipball/81d39cde2226f7548d8d1aa99405278c87e50737", - "reference": "81d39cde2226f7548d8d1aa99405278c87e50737", + "url": "https://api.github.com/repos/laravel/socialite/zipball/c4e4337e5b70149fdbefbb95b2c9e93d0749c413", + "reference": "c4e4337e5b70149fdbefbb95b2c9e93d0749c413", "shasum": "" }, "require": { @@ -1510,7 +1303,7 @@ }, "require-dev": { "mockery/mockery": "~0.9", - "phpunit/phpunit": "~4.0" + "phpunit/phpunit": "~4.0|~5.0" }, "type": "library", "extra": { @@ -1538,20 +1331,20 @@ "laravel", "oauth" ], - "time": "2016-05-27 12:42:05" + "time": "2017-03-27T21:32:28+00:00" }, { "name": "laravelcollective/html", - "version": "v5.2.4", + "version": "v5.2.6", "source": { "type": "git", "url": "https://github.com/LaravelCollective/html.git", - "reference": "3a312d39ffe37da0f57b602618b61fd07c1fcec5" + "reference": "4f6701c7c3f6ff2aee1f4ed205ed6820e1e3048e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/LaravelCollective/html/zipball/3a312d39ffe37da0f57b602618b61fd07c1fcec5", - "reference": "3a312d39ffe37da0f57b602618b61fd07c1fcec5", + "url": "https://api.github.com/repos/LaravelCollective/html/zipball/4f6701c7c3f6ff2aee1f4ed205ed6820e1e3048e", + "reference": "4f6701c7c3f6ff2aee1f4ed205ed6820e1e3048e", "shasum": "" }, "require": { @@ -1592,47 +1385,48 @@ ], "description": "HTML and Form Builders for the Laravel Framework", "homepage": "http://laravelcollective.com", - "time": "2016-01-27 22:29:54" + "time": "2017-05-21T18:02:21+00:00" }, { "name": "league/flysystem", - "version": "1.0.24", + "version": "1.0.44", "source": { "type": "git", "url": "https://github.com/thephpleague/flysystem.git", - "reference": "9aca859a303fdca30370f42b8c611d9cf0dedf4b" + "reference": "168dbe519737221dc87d17385cde33073881fd02" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/flysystem/zipball/9aca859a303fdca30370f42b8c611d9cf0dedf4b", - "reference": "9aca859a303fdca30370f42b8c611d9cf0dedf4b", + "url": "https://api.github.com/repos/thephpleague/flysystem/zipball/168dbe519737221dc87d17385cde33073881fd02", + "reference": "168dbe519737221dc87d17385cde33073881fd02", "shasum": "" }, "require": { - "php": ">=5.4.0" + "php": ">=5.5.9" }, "conflict": { "league/flysystem-sftp": "<1.0.6" }, "require-dev": { "ext-fileinfo": "*", - "mockery/mockery": "~0.9", - "phpspec/phpspec": "^2.2", - "phpunit/phpunit": "~4.8 || ~5.0" + "phpspec/phpspec": "^3.4", + "phpunit/phpunit": "^5.7" }, "suggest": { "ext-fileinfo": "Required for MimeType", + "ext-ftp": "Allows you to use FTP server storage", + "ext-openssl": "Allows you to use FTPS server storage", "league/flysystem-aws-s3-v2": "Allows you to use S3 storage with AWS SDK v2", "league/flysystem-aws-s3-v3": "Allows you to use S3 storage with AWS SDK v3", "league/flysystem-azure": "Allows you to use Windows Azure Blob storage", "league/flysystem-cached-adapter": "Flysystem adapter decorator for metadata caching", - "league/flysystem-copy": "Allows you to use Copy.com storage", - "league/flysystem-dropbox": "Allows you to use Dropbox storage", "league/flysystem-eventable-filesystem": "Allows you to use EventableFilesystem", "league/flysystem-rackspace": "Allows you to use Rackspace Cloud Files", "league/flysystem-sftp": "Allows you to use SFTP server storage via phpseclib", "league/flysystem-webdav": "Allows you to use WebDAV storage", - "league/flysystem-ziparchive": "Allows you to use ZipArchive adapter" + "league/flysystem-ziparchive": "Allows you to use ZipArchive adapter", + "spatie/flysystem-dropbox": "Allows you to use Dropbox storage", + "srmklive/flysystem-dropbox-v2": "Allows you to use Dropbox storage for PHP 5 applications" }, "type": "library", "extra": { @@ -1675,25 +1469,25 @@ "sftp", "storage" ], - "time": "2016-06-03 19:11:39" + "time": "2018-04-06T09:58:14+00:00" }, { "name": "league/flysystem-aws-s3-v3", - "version": "1.0.12", + "version": "1.0.19", "source": { "type": "git", "url": "https://github.com/thephpleague/flysystem-aws-s3-v3.git", - "reference": "d9c27edda5b4b2840c3f602d4ce6fbfeaab10e5a" + "reference": "f135691ef6761542af301b7c9880f140fb12dc74" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/flysystem-aws-s3-v3/zipball/d9c27edda5b4b2840c3f602d4ce6fbfeaab10e5a", - "reference": "d9c27edda5b4b2840c3f602d4ce6fbfeaab10e5a", + "url": "https://api.github.com/repos/thephpleague/flysystem-aws-s3-v3/zipball/f135691ef6761542af301b7c9880f140fb12dc74", + "reference": "f135691ef6761542af301b7c9880f140fb12dc74", "shasum": "" }, "require": { "aws/aws-sdk-php": "^3.0.0", - "league/flysystem": "~1.0", + "league/flysystem": "^1.0.40", "php": ">=5.5.0" }, "require-dev": { @@ -1722,93 +1516,30 @@ } ], "description": "Flysystem adapter for the AWS S3 SDK v3.x", - "time": "2016-06-06 11:18:47" - }, - { - "name": "league/fractal", - "version": "0.14.0", - "source": { - "type": "git", - "url": "https://github.com/thephpleague/fractal.git", - "reference": "56ad8933fbb40328ca3321c84143b2c16186eebf" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/thephpleague/fractal/zipball/56ad8933fbb40328ca3321c84143b2c16186eebf", - "reference": "56ad8933fbb40328ca3321c84143b2c16186eebf", - "shasum": "" - }, - "require": { - "php": ">=5.4" - }, - "require-dev": { - "illuminate/contracts": "~5.0", - "mockery/mockery": "~0.9", - "pagerfanta/pagerfanta": "~1.0.0", - "phpunit/phpunit": "~4.0", - "squizlabs/php_codesniffer": "~1.5", - "zendframework/zend-paginator": "~2.3" - }, - "suggest": { - "illuminate/pagination": "The Illuminate Pagination component.", - "pagerfanta/pagerfanta": "Pagerfanta Paginator", - "zendframework/zend-paginator": "Zend Framework Paginator" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "0.13-dev" - } - }, - "autoload": { - "psr-4": { - "League\\Fractal\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Phil Sturgeon", - "email": "me@philsturgeon.uk", - "homepage": "http://philsturgeon.uk/", - "role": "Developer" - } - ], - "description": "Handle the output of complex data structures ready for API output.", - "homepage": "http://fractal.thephpleague.com/", - "keywords": [ - "api", - "json", - "league", - "rest" - ], - "time": "2016-07-21 09:56:14" + "time": "2018-03-27T20:33:59+00:00" }, { "name": "league/oauth1-client", - "version": "1.6.1", + "version": "1.7.0", "source": { "type": "git", "url": "https://github.com/thephpleague/oauth1-client.git", - "reference": "cef3ceda13c78f89c323e4d5e6301c0eb7cea422" + "reference": "fca5f160650cb74d23fc11aa570dd61f86dcf647" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/oauth1-client/zipball/cef3ceda13c78f89c323e4d5e6301c0eb7cea422", - "reference": "cef3ceda13c78f89c323e4d5e6301c0eb7cea422", + "url": "https://api.github.com/repos/thephpleague/oauth1-client/zipball/fca5f160650cb74d23fc11aa570dd61f86dcf647", + "reference": "fca5f160650cb74d23fc11aa570dd61f86dcf647", "shasum": "" }, "require": { - "guzzle/guzzle": "3.*", - "php": ">=5.3.0" + "guzzlehttp/guzzle": "^6.0", + "php": ">=5.5.0" }, "require-dev": { - "mockery/mockery": "~0.9", - "phpunit/phpunit": "~4.0", - "squizlabs/php_codesniffer": "~2.0" + "mockery/mockery": "^0.9", + "phpunit/phpunit": "^4.0", + "squizlabs/php_codesniffer": "^2.0" }, "type": "library", "extra": { @@ -1848,42 +1579,42 @@ "tumblr", "twitter" ], - "time": "2015-10-23 04:02:07" + "time": "2016-08-17T00:36:58+00:00" }, { "name": "maatwebsite/excel", - "version": "v2.0.9", + "version": "2.0.11", "source": { "type": "git", "url": "https://github.com/Maatwebsite/Laravel-Excel.git", - "reference": "bd9428da19fb3de9bbdd80f18f31b744485dc250" + "reference": "731487fda0e3e26c8701d8ee1aafc7b7429a95ce" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Maatwebsite/Laravel-Excel/zipball/bd9428da19fb3de9bbdd80f18f31b744485dc250", - "reference": "bd9428da19fb3de9bbdd80f18f31b744485dc250", + "url": "https://api.github.com/repos/Maatwebsite/Laravel-Excel/zipball/731487fda0e3e26c8701d8ee1aafc7b7429a95ce", + "reference": "731487fda0e3e26c8701d8ee1aafc7b7429a95ce", "shasum": "" }, "require": { - "illuminate/cache": "~5.0|~5.1", - "illuminate/config": "~5.0|~5.1", - "illuminate/filesystem": "~5.0|~5.1", - "illuminate/support": "~5.0|~5.1", + "illuminate/cache": "5.0.*|5.1.*|5.2.*", + "illuminate/config": "5.0.*|5.1.*|5.2.*", + "illuminate/filesystem": "5.0.*|5.1.*|5.2.*", + "illuminate/support": "5.0.*|5.1.*|5.2.*", "nesbot/carbon": "~1.0", - "php": ">=5.3.0", - "phpoffice/phpexcel": "~1.8.0", + "php": ">=5.4", + "phpoffice/phpexcel": "1.8.*", "tijsverkoyen/css-to-inline-styles": "~1.5" }, "require-dev": { "mockery/mockery": "~0.9", - "orchestra/testbench": "~3.0.0", - "phpseclib/phpseclib": ">=0.3.7", + "orchestra/testbench": "3.0.*", + "phpseclib/phpseclib": "~1.0", "phpunit/phpunit": "~4.0" }, "suggest": { - "illuminate/http": "~5.0|~5.1", - "illuminate/routing": "~5.0|~5.1", - "illuminate/view": "~5.0|~5.1" + "illuminate/http": "5.0.*|5.1.*|5.2.*", + "illuminate/routing": "5.0.*|5.1.*|5.2.*", + "illuminate/view": "5.0.*|5.1.*|5.2.*" }, "type": "library", "autoload": { @@ -1915,7 +1646,7 @@ "import", "laravel" ], - "time": "2015-10-26 10:15:37" + "time": "2018-01-10T11:58:21+00:00" }, { "name": "maxhoffmann/parsedown-laravel", @@ -1960,37 +1691,99 @@ "parsedown", "php" ], - "time": "2013-12-13 23:54:04" + "time": "2013-12-13T23:54:04+00:00" }, { - "name": "mews/purifier", - "version": "2.0.5", + "name": "mcamara/laravel-localization", + "version": "v1.2.6", "source": { "type": "git", - "url": "https://github.com/mewebstudio/Purifier.git", - "reference": "73c8b50c5626a5d0e416ceea745587d582d10455" + "url": "https://github.com/mcamara/laravel-localization.git", + "reference": "2177e05d5cf35efea3a43c0f1785a3edd816347f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/mewebstudio/Purifier/zipball/73c8b50c5626a5d0e416ceea745587d582d10455", - "reference": "73c8b50c5626a5d0e416ceea745587d582d10455", + "url": "https://api.github.com/repos/mcamara/laravel-localization/zipball/2177e05d5cf35efea3a43c0f1785a3edd816347f", + "reference": "2177e05d5cf35efea3a43c0f1785a3edd816347f", "shasum": "" }, "require": { - "ezyang/htmlpurifier": "4.7.*", - "illuminate/config": "~5.1", - "illuminate/filesystem": "~5.1", - "php": ">=5.4" + "laravel/framework": "~5.2", + "php": ">=5.6.0" }, "require-dev": { + "orchestra/testbench-browser-kit": "~3.4", + "phpunit/phpunit": "5.4.*" + }, + "type": "library", + "autoload": { + "classmap": [], + "psr-0": { + "Mcamara\\LaravelLocalization": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Marc Cámara", + "email": "mcamara88@gmail.com", + "role": "Developer" + } + ], + "description": "Easy localization for Laravel", + "homepage": "https://github.com/mcamara/laravel-localization", + "keywords": [ + "laravel", + "localization", + "php" + ], + "time": "2017-05-18T10:22:35+00:00" + }, + { + "name": "mews/purifier", + "version": "2.1.0", + "source": { + "type": "git", + "url": "https://github.com/mewebstudio/Purifier.git", + "reference": "7333435c9842e207f3381b7319b63122f8c9403e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/mewebstudio/Purifier/zipball/7333435c9842e207f3381b7319b63122f8c9403e", + "reference": "7333435c9842e207f3381b7319b63122f8c9403e", + "shasum": "" + }, + "require": { + "ezyang/htmlpurifier": "4.10.*", + "illuminate/config": "5.0.* || 5.1.* || 5.2.* || 5.3.* || 5.4.* || 5.5.* || 5.6.*", + "illuminate/filesystem": "5.0.* || 5.1.* || 5.2.* || 5.3.* || 5.4.* || 5.5.* || 5.6.*", + "illuminate/support": "5.0.* || 5.1.* || 5.2.* || 5.3.* || 5.4.* || 5.5.* || 5.6.*", + "php": ">=5.5.9" + }, + "require-dev": { + "graham-campbell/testbench": "^3.2", "mockery/mockery": "0.9.*", - "phpunit/phpunit": "~4.1" + "phpunit/phpunit": "^4.8|^5.0", + "scrutinizer/ocular": "^1.3" }, "suggest": { "laravel/framework": "To test the Laravel bindings", "laravel/lumen-framework": "To test the Lumen bindings" }, "type": "package", + "extra": { + "laravel": { + "providers": [ + "Mews\\Purifier\\PurifierServiceProvider" + ], + "aliases": { + "Purifier": "Mews\\Purifier\\Facades\\Purifier" + } + } + }, "autoload": { "psr-4": { "Mews\\Purifier\\": "src/" @@ -2022,7 +1815,7 @@ "security", "xss" ], - "time": "2016-04-26 15:21:32" + "time": "2018-03-21T12:29:49+00:00" }, { "name": "milon/barcode", @@ -2030,17 +1823,17 @@ "source": { "type": "git", "url": "https://github.com/milon/barcode.git", - "reference": "ab3f273a91359c0c8d0335826bc82dfb7e9ddefe" + "reference": "2a17de5f20ea9c23eb9924c00c74861a044886ef" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/milon/barcode/zipball/ab3f273a91359c0c8d0335826bc82dfb7e9ddefe", - "reference": "ab3f273a91359c0c8d0335826bc82dfb7e9ddefe", + "url": "https://api.github.com/repos/milon/barcode/zipball/2a17de5f20ea9c23eb9924c00c74861a044886ef", + "reference": "2a17de5f20ea9c23eb9924c00c74861a044886ef", "shasum": "" }, "require": { "illuminate/support": "5.*", - "php": ">=5.4.0" + "php": ">=5.6.0" }, "type": "library", "autoload": { @@ -2055,7 +1848,7 @@ "authors": [ { "name": "Nuruzzaman Milon", - "email": "milon521@gmail.com" + "email": "contact@milon.im" } ], "description": "Barcode generator like Qr Code , PDF417,C39, C39+,C39E,C39E+,C93,S25,S25+,I25,I25+,C128,C128A,C128B,C128C,2-Digits UPC-Based Extention,5-Digits UPC-Based Extention,EAN 8,EAN 13,UPC-A,UPC-E,MSI (Variation of Plessey code) ", @@ -2071,20 +1864,20 @@ "qr code", "qrcode" ], - "time": "2016-06-07 04:15:43" + "time": "2018-02-19T08:30:08+00:00" }, { "name": "monolog/monolog", - "version": "1.19.0", + "version": "1.23.0", "source": { "type": "git", "url": "https://github.com/Seldaek/monolog.git", - "reference": "5f56ed5212dc509c8dc8caeba2715732abb32dbf" + "reference": "fd8c787753b3a2ad11bc60c063cff1358a32a3b4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Seldaek/monolog/zipball/5f56ed5212dc509c8dc8caeba2715732abb32dbf", - "reference": "5f56ed5212dc509c8dc8caeba2715732abb32dbf", + "url": "https://api.github.com/repos/Seldaek/monolog/zipball/fd8c787753b3a2ad11bc60c063cff1358a32a3b4", + "reference": "fd8c787753b3a2ad11bc60c063cff1358a32a3b4", "shasum": "" }, "require": { @@ -2095,7 +1888,7 @@ "psr/log-implementation": "1.0.0" }, "require-dev": { - "aws/aws-sdk-php": "^2.4.9", + "aws/aws-sdk-php": "^2.4.9 || ^3.0", "doctrine/couchdb": "~1.0@dev", "graylog2/gelf-php": "~1.0", "jakub-onderka/php-parallel-lint": "0.9", @@ -2103,9 +1896,9 @@ "php-console/php-console": "^3.1.3", "phpunit/phpunit": "~4.5", "phpunit/phpunit-mock-objects": "2.3.0", - "raven/raven": "^0.13", "ruflin/elastica": ">=0.90 <3.0", - "swiftmailer/swiftmailer": "~5.3" + "sentry/sentry": "^0.13", + "swiftmailer/swiftmailer": "^5.3|^6.0" }, "suggest": { "aws/aws-sdk-php": "Allow sending log messages to AWS services like DynamoDB", @@ -2116,9 +1909,9 @@ "mongodb/mongodb": "Allow sending log messages to a MongoDB server via PHP Driver", "php-amqplib/php-amqplib": "Allow sending log messages to an AMQP server using php-amqplib", "php-console/php-console": "Allow sending log messages to Google Chrome", - "raven/raven": "Allow sending log messages to a Sentry server", "rollbar/rollbar": "Allow sending log messages to Rollbar", - "ruflin/elastica": "Allow sending log messages to an Elastic Search server" + "ruflin/elastica": "Allow sending log messages to an Elastic Search server", + "sentry/sentry": "Allow sending log messages to a Sentry server" }, "type": "library", "extra": { @@ -2149,20 +1942,20 @@ "logging", "psr-3" ], - "time": "2016-04-12 18:29:35" + "time": "2017-06-19T01:22:40+00:00" }, { "name": "mtdowling/cron-expression", - "version": "v1.1.0", + "version": "v1.2.1", "source": { "type": "git", "url": "https://github.com/mtdowling/cron-expression.git", - "reference": "c9ee7886f5a12902b225a1a12f36bb45f9ab89e5" + "reference": "9504fa9ea681b586028adaaa0877db4aecf32bad" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/mtdowling/cron-expression/zipball/c9ee7886f5a12902b225a1a12f36bb45f9ab89e5", - "reference": "c9ee7886f5a12902b225a1a12f36bb45f9ab89e5", + "url": "https://api.github.com/repos/mtdowling/cron-expression/zipball/9504fa9ea681b586028adaaa0877db4aecf32bad", + "reference": "9504fa9ea681b586028adaaa0877db4aecf32bad", "shasum": "" }, "require": { @@ -2173,8 +1966,8 @@ }, "type": "library", "autoload": { - "psr-0": { - "Cron": "src/" + "psr-4": { + "Cron\\": "src/Cron/" } }, "notification-url": "https://packagist.org/downloads/", @@ -2193,20 +1986,20 @@ "cron", "schedule" ], - "time": "2016-01-26 21:23:30" + "time": "2017-01-23T04:29:33+00:00" }, { "name": "mtdowling/jmespath.php", - "version": "2.3.0", + "version": "2.4.0", "source": { "type": "git", "url": "https://github.com/jmespath/jmespath.php.git", - "reference": "192f93e43c2c97acde7694993ab171b3de284093" + "reference": "adcc9531682cf87dfda21e1fd5d0e7a41d292fac" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/jmespath/jmespath.php/zipball/192f93e43c2c97acde7694993ab171b3de284093", - "reference": "192f93e43c2c97acde7694993ab171b3de284093", + "url": "https://api.github.com/repos/jmespath/jmespath.php/zipball/adcc9531682cf87dfda21e1fd5d0e7a41d292fac", + "reference": "adcc9531682cf87dfda21e1fd5d0e7a41d292fac", "shasum": "" }, "require": { @@ -2248,30 +2041,36 @@ "json", "jsonpath" ], - "time": "2016-01-05 18:25:05" + "time": "2016-12-03T22:08:25+00:00" }, { "name": "nesbot/carbon", - "version": "1.21.0", + "version": "1.25.0", "source": { "type": "git", "url": "https://github.com/briannesbitt/Carbon.git", - "reference": "7b08ec6f75791e130012f206e3f7b0e76e18e3d7" + "reference": "cbcf13da0b531767e39eb86e9687f5deba9857b4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/7b08ec6f75791e130012f206e3f7b0e76e18e3d7", - "reference": "7b08ec6f75791e130012f206e3f7b0e76e18e3d7", + "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/cbcf13da0b531767e39eb86e9687f5deba9857b4", + "reference": "cbcf13da0b531767e39eb86e9687f5deba9857b4", "shasum": "" }, "require": { - "php": ">=5.3.0", - "symfony/translation": "~2.6|~3.0" + "php": ">=5.3.9", + "symfony/translation": "~2.6 || ~3.0 || ~4.0" }, "require-dev": { - "phpunit/phpunit": "~4.0|~5.0" + "friendsofphp/php-cs-fixer": "~2", + "phpunit/phpunit": "^4.8.35 || ^5.7" }, "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.23-dev" + } + }, "autoload": { "psr-4": { "Carbon\\": "src/Carbon/" @@ -2295,20 +2094,20 @@ "datetime", "time" ], - "time": "2015-11-04 20:07:17" + "time": "2018-03-19T15:50:49+00:00" }, { "name": "nikic/php-parser", - "version": "v2.1.0", + "version": "v2.1.1", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "47b254ea51f1d6d5dc04b9b299e88346bf2369e3" + "reference": "4dd659edadffdc2143e4753df655d866dbfeedf0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/47b254ea51f1d6d5dc04b9b299e88346bf2369e3", - "reference": "47b254ea51f1d6d5dc04b9b299e88346bf2369e3", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/4dd659edadffdc2143e4753df655d866dbfeedf0", + "reference": "4dd659edadffdc2143e4753df655d866dbfeedf0", "shasum": "" }, "require": { @@ -2346,7 +2145,7 @@ "parser", "php" ], - "time": "2016-04-19 13:41:41" + "time": "2016-09-16T12:04:44+00:00" }, { "name": "nitmedia/wkhtml2pdf", @@ -2354,12 +2153,12 @@ "source": { "type": "git", "url": "https://github.com/NitMedia/wkhtml2pdf.git", - "reference": "59d46d6dbda7d54efd045aed8bef0f05a63abd90" + "reference": "586df81dcbeb75b092dc35f9e8b3ef940d66e05a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/NitMedia/wkhtml2pdf/zipball/59d46d6dbda7d54efd045aed8bef0f05a63abd90", - "reference": "59d46d6dbda7d54efd045aed8bef0f05a63abd90", + "url": "https://api.github.com/repos/NitMedia/wkhtml2pdf/zipball/586df81dcbeb75b092dc35f9e8b3ef940d66e05a", + "reference": "586df81dcbeb75b092dc35f9e8b3ef940d66e05a", "shasum": "" }, "require": { @@ -2394,7 +2193,7 @@ "wkhtml2pdf", "wkhtmltopdf" ], - "time": "2016-05-11 19:00:35" + "time": "2017-03-06T14:34:44+00:00" }, { "name": "omnipay/bitpay", @@ -2452,7 +2251,7 @@ "pay", "payment" ], - "time": "2016-04-07 02:53:36" + "time": "2016-04-07T02:53:36+00:00" }, { "name": "omnipay/coinbase", @@ -2460,12 +2259,12 @@ "source": { "type": "git", "url": "https://github.com/thephpleague/omnipay-coinbase.git", - "reference": "69c4f07d88ef3bdb2b42cd90234b358b641dfa29" + "reference": "1046f0a40de69281d413ac191689e8c1329b76d4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/omnipay-coinbase/zipball/69c4f07d88ef3bdb2b42cd90234b358b641dfa29", - "reference": "69c4f07d88ef3bdb2b42cd90234b358b641dfa29", + "url": "https://api.github.com/repos/thephpleague/omnipay-coinbase/zipball/1046f0a40de69281d413ac191689e8c1329b76d4", + "reference": "1046f0a40de69281d413ac191689e8c1329b76d4", "shasum": "" }, "require": { @@ -2509,38 +2308,40 @@ "pay", "payment" ], - "time": "2015-03-06 05:35:39" + "time": "2017-07-01T03:37:43+00:00" }, { "name": "omnipay/common", - "version": "v2.5.0", + "version": "2.5.2", "source": { "type": "git", "url": "https://github.com/thephpleague/omnipay-common.git", - "reference": "550138529e850143af7a87eab8cfe16e72a2f768" + "reference": "54910f2ece6b1be64f5e53e2111dd1254d50ee49" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/omnipay-common/zipball/550138529e850143af7a87eab8cfe16e72a2f768", - "reference": "550138529e850143af7a87eab8cfe16e72a2f768", + "url": "https://api.github.com/repos/thephpleague/omnipay-common/zipball/54910f2ece6b1be64f5e53e2111dd1254d50ee49", + "reference": "54910f2ece6b1be64f5e53e2111dd1254d50ee49", "shasum": "" }, "require": { "guzzle/guzzle": "~3.9", "php": ">=5.3.2", - "symfony/http-foundation": "~2.1" + "symfony/http-foundation": "~2.1|~3.0" }, "require-dev": { - "omnipay/tests": "~2.0" + "omnipay/tests": "~2.0", + "squizlabs/php_codesniffer": "~1.5" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0.x-dev" + "dev-master": "2.5.x-dev" }, "gateways": [ "AuthorizeNet_AIM", "AuthorizeNet_SIM", + "Buckaroo_CreditCard", "Buckaroo_Ideal", "Buckaroo_PayPal", "CardSave", @@ -2605,20 +2406,78 @@ "payment", "purchase" ], - "time": "2016-03-10 03:03:17" + "time": "2016-11-07T06:10:23+00:00" }, { - "name": "omnipay/paypal", - "version": "v2.5.4", + "name": "omnipay/migs", + "version": "v2.2.2", "source": { "type": "git", - "url": "https://github.com/thephpleague/omnipay-paypal.git", - "reference": "3d39ab63f9c1e31893ec61bbab9eda98df5f1a6f" + "url": "https://github.com/thephpleague/omnipay-migs.git", + "reference": "0f79c818a150e73497efbe5e097ac4377d8f9717" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/omnipay-paypal/zipball/3d39ab63f9c1e31893ec61bbab9eda98df5f1a6f", - "reference": "3d39ab63f9c1e31893ec61bbab9eda98df5f1a6f", + "url": "https://api.github.com/repos/thephpleague/omnipay-migs/zipball/0f79c818a150e73497efbe5e097ac4377d8f9717", + "reference": "0f79c818a150e73497efbe5e097ac4377d8f9717", + "shasum": "" + }, + "require": { + "omnipay/common": "~2.0" + }, + "require-dev": { + "omnipay/tests": "~2.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Omnipay\\Migs\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Adrian Macneil", + "email": "adrian@adrianmacneil.com" + }, + { + "name": "Omnipay Contributors", + "homepage": "https://github.com/thephpleague/omnipay-migs/contributors" + } + ], + "description": "MIGS driver for the Omnipay payment processing library", + "homepage": "https://github.com/thephpleague/omnipay-migs", + "keywords": [ + "gateway", + "mastercard internet gateway service", + "merchant", + "migs", + "omnipay", + "pay", + "payment" + ], + "time": "2017-06-07T07:52:47+00:00" + }, + { + "name": "omnipay/paypal", + "version": "v2.6.4", + "source": { + "type": "git", + "url": "https://github.com/thephpleague/omnipay-paypal.git", + "reference": "9e44c31a7038d4a23232b3739b602e8842106c4e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/thephpleague/omnipay-paypal/zipball/9e44c31a7038d4a23232b3739b602e8842106c4e", + "reference": "9e44c31a7038d4a23232b3739b602e8842106c4e", "shasum": "" }, "require": { @@ -2663,20 +2522,20 @@ "paypal", "purchase" ], - "time": "2016-03-25 10:40:17" + "time": "2017-11-10T08:10:43+00:00" }, { "name": "omnipay/stripe", - "version": "v2.3.3", + "version": "V2.4.7", "source": { "type": "git", "url": "https://github.com/thephpleague/omnipay-stripe.git", - "reference": "0ea7a647ee01e29c152814e11c2ea6307e5b0db9" + "reference": "26a33414a75939af75064022112005d5e51fc9ea" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/omnipay-stripe/zipball/0ea7a647ee01e29c152814e11c2ea6307e5b0db9", - "reference": "0ea7a647ee01e29c152814e11c2ea6307e5b0db9", + "url": "https://api.github.com/repos/thephpleague/omnipay-stripe/zipball/26a33414a75939af75064022112005d5e51fc9ea", + "reference": "26a33414a75939af75064022112005d5e51fc9ea", "shasum": "" }, "require": { @@ -2720,20 +2579,20 @@ "payment", "stripe" ], - "time": "2016-04-26 08:34:50" + "time": "2017-07-14T09:22:01+00:00" }, { "name": "paragonie/random_compat", - "version": "v1.4.1", + "version": "v1.4.3", "source": { "type": "git", "url": "https://github.com/paragonie/random_compat.git", - "reference": "c7e26a21ba357863de030f0b9e701c7d04593774" + "reference": "9b3899e3c3ddde89016f576edb8c489708ad64cd" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/paragonie/random_compat/zipball/c7e26a21ba357863de030f0b9e701c7d04593774", - "reference": "c7e26a21ba357863de030f0b9e701c7d04593774", + "url": "https://api.github.com/repos/paragonie/random_compat/zipball/9b3899e3c3ddde89016f576edb8c489708ad64cd", + "reference": "9b3899e3c3ddde89016f576edb8c489708ad64cd", "shasum": "" }, "require": { @@ -2768,26 +2627,29 @@ "pseudorandom", "random" ], - "time": "2016-03-18 20:34:03" + "time": "2018-04-04T21:48:54+00:00" }, { "name": "phenx/php-font-lib", - "version": "0.4", + "version": "0.5.1", "source": { "type": "git", "url": "https://github.com/PhenX/php-font-lib.git", - "reference": "b8af0cacdc3cbf1e41a586fcb78f506f4121a088" + "reference": "760148820110a1ae0936e5cc35851e25a938bc97" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/PhenX/php-font-lib/zipball/b8af0cacdc3cbf1e41a586fcb78f506f4121a088", - "reference": "b8af0cacdc3cbf1e41a586fcb78f506f4121a088", + "url": "https://api.github.com/repos/PhenX/php-font-lib/zipball/760148820110a1ae0936e5cc35851e25a938bc97", + "reference": "760148820110a1ae0936e5cc35851e25a938bc97", "shasum": "" }, + "require-dev": { + "phpunit/phpunit": "^4.8" + }, "type": "library", "autoload": { - "psr-0": { - "FontLib\\": "src/" + "psr-4": { + "FontLib\\": "src/FontLib" } }, "notification-url": "https://packagist.org/downloads/", @@ -2802,22 +2664,28 @@ ], "description": "A library to read, parse, export and make subsets of different types of font files.", "homepage": "https://github.com/PhenX/php-font-lib", - "time": "2015-05-06 20:02:39" + "time": "2017-09-13T16:14:37+00:00" }, { "name": "phenx/php-svg-lib", - "version": "0.1", + "version": "v0.3", "source": { "type": "git", "url": "https://github.com/PhenX/php-svg-lib.git", - "reference": "b419766515b3426c6da74b0e29e93d71c4f17099" + "reference": "a85f7fe9fe08d093a4a8583cdd306b553ff918aa" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/PhenX/php-svg-lib/zipball/b419766515b3426c6da74b0e29e93d71c4f17099", - "reference": "b419766515b3426c6da74b0e29e93d71c4f17099", + "url": "https://api.github.com/repos/PhenX/php-svg-lib/zipball/a85f7fe9fe08d093a4a8583cdd306b553ff918aa", + "reference": "a85f7fe9fe08d093a4a8583cdd306b553ff918aa", "shasum": "" }, + "require": { + "sabberworm/php-css-parser": "8.1.*" + }, + "require-dev": { + "phpunit/phpunit": "~5.0" + }, "type": "library", "autoload": { "psr-0": { @@ -2836,153 +2704,7 @@ ], "description": "A library to read, parse and export to PDF SVG files.", "homepage": "https://github.com/PhenX/php-svg-lib", - "time": "2015-05-06 18:49:49" - }, - { - "name": "phpdocumentor/reflection-common", - "version": "1.0", - "source": { - "type": "git", - "url": "https://github.com/phpDocumentor/ReflectionCommon.git", - "reference": "144c307535e82c8fdcaacbcfc1d6d8eeb896687c" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/ReflectionCommon/zipball/144c307535e82c8fdcaacbcfc1d6d8eeb896687c", - "reference": "144c307535e82c8fdcaacbcfc1d6d8eeb896687c", - "shasum": "" - }, - "require": { - "php": ">=5.5" - }, - "require-dev": { - "phpunit/phpunit": "^4.6" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "phpDocumentor\\Reflection\\": [ - "src" - ] - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Jaap van Otterdijk", - "email": "opensource@ijaap.nl" - } - ], - "description": "Common reflection classes used by phpdocumentor to reflect the code structure", - "homepage": "http://www.phpdoc.org", - "keywords": [ - "FQSEN", - "phpDocumentor", - "phpdoc", - "reflection", - "static analysis" - ], - "time": "2015-12-27 11:43:31" - }, - { - "name": "phpdocumentor/reflection-docblock", - "version": "3.1.0", - "source": { - "type": "git", - "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git", - "reference": "9270140b940ff02e58ec577c237274e92cd40cdd" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/9270140b940ff02e58ec577c237274e92cd40cdd", - "reference": "9270140b940ff02e58ec577c237274e92cd40cdd", - "shasum": "" - }, - "require": { - "php": ">=5.5", - "phpdocumentor/reflection-common": "^1.0@dev", - "phpdocumentor/type-resolver": "^0.2.0", - "webmozart/assert": "^1.0" - }, - "require-dev": { - "mockery/mockery": "^0.9.4", - "phpunit/phpunit": "^4.4" - }, - "type": "library", - "autoload": { - "psr-4": { - "phpDocumentor\\Reflection\\": [ - "src/" - ] - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Mike van Riel", - "email": "me@mikevanriel.com" - } - ], - "description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.", - "time": "2016-06-10 09:48:41" - }, - { - "name": "phpdocumentor/type-resolver", - "version": "0.2", - "source": { - "type": "git", - "url": "https://github.com/phpDocumentor/TypeResolver.git", - "reference": "b39c7a5b194f9ed7bd0dd345c751007a41862443" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/b39c7a5b194f9ed7bd0dd345c751007a41862443", - "reference": "b39c7a5b194f9ed7bd0dd345c751007a41862443", - "shasum": "" - }, - "require": { - "php": ">=5.5", - "phpdocumentor/reflection-common": "^1.0" - }, - "require-dev": { - "mockery/mockery": "^0.9.4", - "phpunit/phpunit": "^5.2||^4.8.24" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "phpDocumentor\\Reflection\\": [ - "src/" - ] - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Mike van Riel", - "email": "me@mikevanriel.com" - } - ], - "time": "2016-06-10 07:14:17" + "time": "2017-05-24T10:07:27+00:00" }, { "name": "phpoffice/phpexcel", @@ -3039,20 +2761,116 @@ "xls", "xlsx" ], - "time": "2015-05-01 07:00:55" + "abandoned": "phpoffice/phpspreadsheet", + "time": "2015-05-01T07:00:55+00:00" }, { - "name": "predis/predis", - "version": "v1.1.0", + "name": "potsky/laravel-localization-helpers", + "version": "v2.3.5", "source": { "type": "git", - "url": "https://github.com/nrk/predis.git", - "reference": "0e17edbefb50c6cbd1acc4a6f6ef06399deb1af2" + "url": "https://github.com/potsky/laravel-localization-helpers.git", + "reference": "7df8037adb52c0decb8898d68ede77ac18cd189e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nrk/predis/zipball/0e17edbefb50c6cbd1acc4a6f6ef06399deb1af2", - "reference": "0e17edbefb50c6cbd1acc4a6f6ef06399deb1af2", + "url": "https://api.github.com/repos/potsky/laravel-localization-helpers/zipball/7df8037adb52c0decb8898d68ede77ac18cd189e", + "reference": "7df8037adb52c0decb8898d68ede77ac18cd189e", + "shasum": "" + }, + "require": { + "friendsofphp/php-cs-fixer": "^1.11", + "illuminate/support": "5.2.*", + "potsky/microsoft-translator-php-sdk": "*" + }, + "require-dev": { + "mockery/mockery": "^0.9", + "orchestra/testbench": "3.2.*", + "phpunit/phpunit": "^4.0|^5.0", + "satooshi/php-coveralls": "dev-master" + }, + "type": "library", + "autoload": { + "classmap": [ + "src/migrations" + ], + "psr-0": { + "Potsky\\LaravelLocalizationHelpers\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "GPL-3.0+" + ], + "authors": [ + { + "name": "Potsky" + } + ], + "description": "An artisan command package for easy translation management", + "time": "2017-03-17T17:26:25+00:00" + }, + { + "name": "potsky/microsoft-translator-php-sdk", + "version": "v0.0.3", + "source": { + "type": "git", + "url": "https://github.com/potsky/microsoft-translator-php-sdk.git", + "reference": "a8bdfd53a246965bb2958da3257502a4a68a33fe" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/potsky/microsoft-translator-php-sdk/zipball/a8bdfd53a246965bb2958da3257502a4a68a33fe", + "reference": "a8bdfd53a246965bb2958da3257502a4a68a33fe", + "shasum": "" + }, + "require": { + "ext-curl": "*" + }, + "require-dev": { + "mockery/mockery": "^0.9", + "phpunit/phpunit": "^5.0", + "satooshi/php-coveralls": "dev-master" + }, + "type": "library", + "autoload": { + "psr-0": { + "MicrosoftTranslator": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "potsky", + "role": "Developer" + } + ], + "description": "PHP SDK for Microsoft Translator", + "homepage": "https://github.com/potsky/microsoft-translator-php-sdk", + "keywords": [ + "azure", + "microsoft", + "php", + "sdk", + "translation" + ], + "time": "2017-09-25T08:54:00+00:00" + }, + { + "name": "predis/predis", + "version": "v1.1.1", + "source": { + "type": "git", + "url": "https://github.com/nrk/predis.git", + "reference": "f0210e38881631afeafb56ab43405a92cafd9fd1" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nrk/predis/zipball/f0210e38881631afeafb56ab43405a92cafd9fd1", + "reference": "f0210e38881631afeafb56ab43405a92cafd9fd1", "shasum": "" }, "require": { @@ -3089,20 +2907,20 @@ "predis", "redis" ], - "time": "2016-06-01 22:06:21" + "time": "2016-06-16T16:22:20+00:00" }, { "name": "psr/http-message", - "version": "1.0", + "version": "1.0.1", "source": { "type": "git", "url": "https://github.com/php-fig/http-message.git", - "reference": "85d63699f0dbedb190bbd4b0d2b9dc707ea4c298" + "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/http-message/zipball/85d63699f0dbedb190bbd4b0d2b9dc707ea4c298", - "reference": "85d63699f0dbedb190bbd4b0d2b9dc707ea4c298", + "url": "https://api.github.com/repos/php-fig/http-message/zipball/f6561bf28d520154e4b0ec72be95418abe6d9363", + "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363", "shasum": "" }, "require": { @@ -3130,6 +2948,7 @@ } ], "description": "Common interface for HTTP messages", + "homepage": "https://github.com/php-fig/http-message", "keywords": [ "http", "http-message", @@ -3138,26 +2957,34 @@ "request", "response" ], - "time": "2015-05-04 20:22:00" + "time": "2016-08-06T14:39:51+00:00" }, { "name": "psr/log", - "version": "1.0.0", + "version": "1.0.2", "source": { "type": "git", "url": "https://github.com/php-fig/log.git", - "reference": "fe0936ee26643249e916849d48e3a51d5f5e278b" + "reference": "4ebe3a8bf773a19edfe0a84b6585ba3d401b724d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/log/zipball/fe0936ee26643249e916849d48e3a51d5f5e278b", - "reference": "fe0936ee26643249e916849d48e3a51d5f5e278b", + "url": "https://api.github.com/repos/php-fig/log/zipball/4ebe3a8bf773a19edfe0a84b6585ba3d401b724d", + "reference": "4ebe3a8bf773a19edfe0a84b6585ba3d401b724d", "shasum": "" }, + "require": { + "php": ">=5.3.0" + }, "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, "autoload": { - "psr-0": { - "Psr\\Log\\": "" + "psr-4": { + "Psr\\Log\\": "Psr/Log/" } }, "notification-url": "https://packagist.org/downloads/", @@ -3171,12 +2998,13 @@ } ], "description": "Common interface for logging libraries", + "homepage": "https://github.com/php-fig/log", "keywords": [ "log", "psr", "psr-3" ], - "time": "2012-12-21 11:40:51" + "time": "2016-10-10T12:19:37+00:00" }, { "name": "psy/psysh", @@ -3248,27 +3076,124 @@ "interactive", "shell" ], - "time": "2016-03-09 05:03:14" + "time": "2016-03-09T05:03:14+00:00" }, { - "name": "swiftmailer/swiftmailer", - "version": "v5.4.2", + "name": "sabberworm/php-css-parser", + "version": "8.1.0", "source": { "type": "git", - "url": "https://github.com/swiftmailer/swiftmailer.git", - "reference": "d8db871a54619458a805229a057ea2af33c753e8" + "url": "https://github.com/sabberworm/PHP-CSS-Parser.git", + "reference": "850cbbcbe7fbb155387a151ea562897a67e242ef" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/swiftmailer/swiftmailer/zipball/d8db871a54619458a805229a057ea2af33c753e8", - "reference": "d8db871a54619458a805229a057ea2af33c753e8", + "url": "https://api.github.com/repos/sabberworm/PHP-CSS-Parser/zipball/850cbbcbe7fbb155387a151ea562897a67e242ef", + "reference": "850cbbcbe7fbb155387a151ea562897a67e242ef", + "shasum": "" + }, + "require": { + "php": ">=5.3.2" + }, + "require-dev": { + "phpunit/phpunit": "*" + }, + "type": "library", + "autoload": { + "psr-0": { + "Sabberworm\\CSS": "lib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Raphael Schweikert" + } + ], + "description": "Parser for CSS Files written in PHP", + "homepage": "http://www.sabberworm.com/blog/2010/6/10/php-css-parser", + "keywords": [ + "css", + "parser", + "stylesheet" + ], + "time": "2016-07-19T19:14:21+00:00" + }, + { + "name": "sebastian/diff", + "version": "1.4.3", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/diff.git", + "reference": "7f066a26a962dbe58ddea9f72a4e82874a3975a4" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/7f066a26a962dbe58ddea9f72a4e82874a3975a4", + "reference": "7f066a26a962dbe58ddea9f72a4e82874a3975a4", + "shasum": "" + }, + "require": { + "php": "^5.3.3 || ^7.0" + }, + "require-dev": { + "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.4-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Kore Nordmann", + "email": "mail@kore-nordmann.de" + }, + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + } + ], + "description": "Diff implementation", + "homepage": "https://github.com/sebastianbergmann/diff", + "keywords": [ + "diff" + ], + "time": "2017-05-22T07:24:03+00:00" + }, + { + "name": "swiftmailer/swiftmailer", + "version": "v5.4.9", + "source": { + "type": "git", + "url": "https://github.com/swiftmailer/swiftmailer.git", + "reference": "7ffc1ea296ed14bf8260b6ef11b80208dbadba91" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/swiftmailer/swiftmailer/zipball/7ffc1ea296ed14bf8260b6ef11b80208dbadba91", + "reference": "7ffc1ea296ed14bf8260b6ef11b80208dbadba91", "shasum": "" }, "require": { "php": ">=5.3.3" }, "require-dev": { - "mockery/mockery": "~0.9.1,<0.9.4" + "mockery/mockery": "~0.9.1", + "symfony/phpunit-bridge": "~3.2" }, "type": "library", "extra": { @@ -3295,26 +3220,26 @@ } ], "description": "Swiftmailer, free feature-rich PHP mailer", - "homepage": "http://swiftmailer.org", + "homepage": "https://swiftmailer.symfony.com", "keywords": [ "email", "mail", "mailer" ], - "time": "2016-05-01 08:45:47" + "time": "2018-01-23T07:37:21+00:00" }, { "name": "symfony/console", - "version": "v3.0.7", + "version": "v3.0.9", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "382fc9ed852edabd6133e34f8549d7a7d99db115" + "reference": "926061e74229e935d3c5b4e9ba87237316c6693f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/382fc9ed852edabd6133e34f8549d7a7d99db115", - "reference": "382fc9ed852edabd6133e34f8549d7a7d99db115", + "url": "https://api.github.com/repos/symfony/console/zipball/926061e74229e935d3c5b4e9ba87237316c6693f", + "reference": "926061e74229e935d3c5b4e9ba87237316c6693f", "shasum": "" }, "require": { @@ -3361,29 +3286,29 @@ ], "description": "Symfony Console Component", "homepage": "https://symfony.com", - "time": "2016-06-06 15:08:35" + "time": "2016-07-30T07:22:48+00:00" }, { "name": "symfony/css-selector", - "version": "v3.1.0", + "version": "v3.4.8", "source": { "type": "git", "url": "https://github.com/symfony/css-selector.git", - "reference": "e17f386efef7258ac671c24e727673abd086b0cf" + "reference": "519a80d7c1d95c6cc0b67f686d15fe27c6910de0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/css-selector/zipball/e17f386efef7258ac671c24e727673abd086b0cf", - "reference": "e17f386efef7258ac671c24e727673abd086b0cf", + "url": "https://api.github.com/repos/symfony/css-selector/zipball/519a80d7c1d95c6cc0b67f686d15fe27c6910de0", + "reference": "519a80d7c1d95c6cc0b67f686d15fe27c6910de0", "shasum": "" }, "require": { - "php": ">=5.5.9" + "php": "^5.5.9|>=7.0.8" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "3.1-dev" + "dev-master": "3.4-dev" } }, "autoload": { @@ -3414,20 +3339,20 @@ ], "description": "Symfony CssSelector Component", "homepage": "https://symfony.com", - "time": "2016-03-04 07:56:56" + "time": "2018-03-19T22:32:39+00:00" }, { "name": "symfony/debug", - "version": "v3.0.7", + "version": "v3.0.9", "source": { "type": "git", "url": "https://github.com/symfony/debug.git", - "reference": "e67e1552dd7313df1cf6535cb606751899e0e727" + "reference": "697c527acd9ea1b2d3efac34d9806bf255278b0a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/debug/zipball/e67e1552dd7313df1cf6535cb606751899e0e727", - "reference": "e67e1552dd7313df1cf6535cb606751899e0e727", + "url": "https://api.github.com/repos/symfony/debug/zipball/697c527acd9ea1b2d3efac34d9806bf255278b0a", + "reference": "697c527acd9ea1b2d3efac34d9806bf255278b0a", "shasum": "" }, "require": { @@ -3471,20 +3396,20 @@ ], "description": "Symfony Debug Component", "homepage": "https://symfony.com", - "time": "2016-06-06 15:08:35" + "time": "2016-07-30T07:22:48+00:00" }, { "name": "symfony/event-dispatcher", - "version": "v2.8.7", + "version": "v2.8.38", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher.git", - "reference": "2a6b8713f8bdb582058cfda463527f195b066110" + "reference": "9b69aad7d4c086dc94ebade2d5eb9145da5dac8c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/2a6b8713f8bdb582058cfda463527f195b066110", - "reference": "2a6b8713f8bdb582058cfda463527f195b066110", + "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/9b69aad7d4c086dc94ebade2d5eb9145da5dac8c", + "reference": "9b69aad7d4c086dc94ebade2d5eb9145da5dac8c", "shasum": "" }, "require": { @@ -3492,7 +3417,7 @@ }, "require-dev": { "psr/log": "~1.0", - "symfony/config": "~2.0,>=2.0.5|~3.0.0", + "symfony/config": "^2.0.5|~3.0.0", "symfony/dependency-injection": "~2.6|~3.0.0", "symfony/expression-language": "~2.6|~3.0.0", "symfony/stopwatch": "~2.3|~3.0.0" @@ -3531,20 +3456,69 @@ ], "description": "Symfony EventDispatcher Component", "homepage": "https://symfony.com", - "time": "2016-06-06 11:11:27" + "time": "2018-04-06T07:35:03+00:00" }, { - "name": "symfony/finder", - "version": "v3.0.7", + "name": "symfony/filesystem", + "version": "v3.4.8", "source": { "type": "git", - "url": "https://github.com/symfony/finder.git", - "reference": "39e5f3d533d07b5416b9d7aad53a27f939d4f811" + "url": "https://github.com/symfony/filesystem.git", + "reference": "253a4490b528597aa14d2bf5aeded6f5e5e4a541" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/finder/zipball/39e5f3d533d07b5416b9d7aad53a27f939d4f811", - "reference": "39e5f3d533d07b5416b9d7aad53a27f939d4f811", + "url": "https://api.github.com/repos/symfony/filesystem/zipball/253a4490b528597aa14d2bf5aeded6f5e5e4a541", + "reference": "253a4490b528597aa14d2bf5aeded6f5e5e4a541", + "shasum": "" + }, + "require": { + "php": "^5.5.9|>=7.0.8" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.4-dev" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Component\\Filesystem\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony Filesystem Component", + "homepage": "https://symfony.com", + "time": "2018-02-22T10:48:49+00:00" + }, + { + "name": "symfony/finder", + "version": "v3.0.9", + "source": { + "type": "git", + "url": "https://github.com/symfony/finder.git", + "reference": "3eb4e64c6145ef8b92adefb618a74ebdde9e3fe9" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/finder/zipball/3eb4e64c6145ef8b92adefb618a74ebdde9e3fe9", + "reference": "3eb4e64c6145ef8b92adefb618a74ebdde9e3fe9", "shasum": "" }, "require": { @@ -3580,35 +3554,33 @@ ], "description": "Symfony Finder Component", "homepage": "https://symfony.com", - "time": "2016-05-13 18:03:36" + "time": "2016-06-29T05:40:00+00:00" }, { "name": "symfony/http-foundation", - "version": "v2.8.7", + "version": "v3.0.9", "source": { "type": "git", "url": "https://github.com/symfony/http-foundation.git", - "reference": "744dae663ffcfa21d8a111fb63541954199acbb2" + "reference": "49ba00f8ede742169cb6b70abe33243f4d673f82" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-foundation/zipball/744dae663ffcfa21d8a111fb63541954199acbb2", - "reference": "744dae663ffcfa21d8a111fb63541954199acbb2", + "url": "https://api.github.com/repos/symfony/http-foundation/zipball/49ba00f8ede742169cb6b70abe33243f4d673f82", + "reference": "49ba00f8ede742169cb6b70abe33243f4d673f82", "shasum": "" }, "require": { - "php": ">=5.3.9", - "symfony/polyfill-mbstring": "~1.1", - "symfony/polyfill-php54": "~1.0", - "symfony/polyfill-php55": "~1.0" + "php": ">=5.5.9", + "symfony/polyfill-mbstring": "~1.1" }, "require-dev": { - "symfony/expression-language": "~2.4|~3.0.0" + "symfony/expression-language": "~2.8|~3.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.8-dev" + "dev-master": "3.0-dev" } }, "autoload": { @@ -3635,20 +3607,20 @@ ], "description": "Symfony HttpFoundation Component", "homepage": "https://symfony.com", - "time": "2016-06-06 11:11:27" + "time": "2016-07-17T13:54:30+00:00" }, { "name": "symfony/http-kernel", - "version": "v3.0.7", + "version": "v3.0.9", "source": { "type": "git", "url": "https://github.com/symfony/http-kernel.git", - "reference": "97cc1c15e3406e7a2adf14ad6b0e41a04d4a6fc4" + "reference": "d97ba4425e36e79c794e7d14ff36f00f081b37b3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-kernel/zipball/97cc1c15e3406e7a2adf14ad6b0e41a04d4a6fc4", - "reference": "97cc1c15e3406e7a2adf14ad6b0e41a04d4a6fc4", + "url": "https://api.github.com/repos/symfony/http-kernel/zipball/d97ba4425e36e79c794e7d14ff36f00f081b37b3", + "reference": "d97ba4425e36e79c794e7d14ff36f00f081b37b3", "shasum": "" }, "require": { @@ -3656,7 +3628,7 @@ "psr/log": "~1.0", "symfony/debug": "~2.8|~3.0", "symfony/event-dispatcher": "~2.8|~3.0", - "symfony/http-foundation": "~2.8|~3.0" + "symfony/http-foundation": "~2.8.8|~3.0.8|~3.1.2|~3.2" }, "conflict": { "symfony/config": "<2.8" @@ -3717,20 +3689,20 @@ ], "description": "Symfony HttpKernel Component", "homepage": "https://symfony.com", - "time": "2016-06-06 16:52:35" + "time": "2016-07-30T09:10:37+00:00" }, { "name": "symfony/polyfill-mbstring", - "version": "v1.2.0", + "version": "v1.7.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-mbstring.git", - "reference": "dff51f72b0706335131b00a7f49606168c582594" + "reference": "78be803ce01e55d3491c1397cf1c64beb9c1b63b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/dff51f72b0706335131b00a7f49606168c582594", - "reference": "dff51f72b0706335131b00a7f49606168c582594", + "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/78be803ce01e55d3491c1397cf1c64beb9c1b63b", + "reference": "78be803ce01e55d3491c1397cf1c64beb9c1b63b", "shasum": "" }, "require": { @@ -3742,7 +3714,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.2-dev" + "dev-master": "1.7-dev" } }, "autoload": { @@ -3776,134 +3748,20 @@ "portable", "shim" ], - "time": "2016-05-18 14:26:46" - }, - { - "name": "symfony/polyfill-php54", - "version": "v1.2.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-php54.git", - "reference": "34d761992f6f2cc6092cc0e5e93f38b53ba5e4f1" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php54/zipball/34d761992f6f2cc6092cc0e5e93f38b53ba5e4f1", - "reference": "34d761992f6f2cc6092cc0e5e93f38b53ba5e4f1", - "shasum": "" - }, - "require": { - "php": ">=5.3.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.2-dev" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Polyfill\\Php54\\": "" - }, - "files": [ - "bootstrap.php" - ], - "classmap": [ - "Resources/stubs" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill backporting some PHP 5.4+ features to lower PHP versions", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "polyfill", - "portable", - "shim" - ], - "time": "2016-05-18 14:26:46" - }, - { - "name": "symfony/polyfill-php55", - "version": "v1.2.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-php55.git", - "reference": "bf2ff9ad6be1a4772cb873e4eea94d70daa95c6d" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php55/zipball/bf2ff9ad6be1a4772cb873e4eea94d70daa95c6d", - "reference": "bf2ff9ad6be1a4772cb873e4eea94d70daa95c6d", - "shasum": "" - }, - "require": { - "ircmaxell/password-compat": "~1.0", - "php": ">=5.3.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.2-dev" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Polyfill\\Php55\\": "" - }, - "files": [ - "bootstrap.php" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill backporting some PHP 5.5+ features to lower PHP versions", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "polyfill", - "portable", - "shim" - ], - "time": "2016-05-18 14:26:46" + "time": "2018-01-30T19:27:44+00:00" }, { "name": "symfony/polyfill-php56", - "version": "v1.2.0", + "version": "v1.7.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php56.git", - "reference": "3edf57a8fbf9a927533344cef65ad7e1cf31030a" + "reference": "ebc999ce5f14204c5150b9bd15f8f04e621409d8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php56/zipball/3edf57a8fbf9a927533344cef65ad7e1cf31030a", - "reference": "3edf57a8fbf9a927533344cef65ad7e1cf31030a", + "url": "https://api.github.com/repos/symfony/polyfill-php56/zipball/ebc999ce5f14204c5150b9bd15f8f04e621409d8", + "reference": "ebc999ce5f14204c5150b9bd15f8f04e621409d8", "shasum": "" }, "require": { @@ -3913,7 +3771,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.2-dev" + "dev-master": "1.7-dev" } }, "autoload": { @@ -3946,20 +3804,20 @@ "portable", "shim" ], - "time": "2016-05-18 14:26:46" + "time": "2018-01-30T19:27:44+00:00" }, { "name": "symfony/polyfill-util", - "version": "v1.2.0", + "version": "v1.7.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-util.git", - "reference": "ef830ce3d218e622b221d6bfad42c751d974bf99" + "reference": "e17c808ec4228026d4f5a8832afa19be85979563" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-util/zipball/ef830ce3d218e622b221d6bfad42c751d974bf99", - "reference": "ef830ce3d218e622b221d6bfad42c751d974bf99", + "url": "https://api.github.com/repos/symfony/polyfill-util/zipball/e17c808ec4228026d4f5a8832afa19be85979563", + "reference": "e17c808ec4228026d4f5a8832afa19be85979563", "shasum": "" }, "require": { @@ -3968,7 +3826,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.2-dev" + "dev-master": "1.7-dev" } }, "autoload": { @@ -3998,20 +3856,20 @@ "polyfill", "shim" ], - "time": "2016-05-18 14:26:46" + "time": "2018-01-31T18:08:44+00:00" }, { "name": "symfony/process", - "version": "v3.0.7", + "version": "v3.0.9", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "bf6e2d1fa8b93fdd7cca6b684c0ea213cf0255dd" + "reference": "768debc5996f599c4372b322d9061dba2a4bf505" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/bf6e2d1fa8b93fdd7cca6b684c0ea213cf0255dd", - "reference": "bf6e2d1fa8b93fdd7cca6b684c0ea213cf0255dd", + "url": "https://api.github.com/repos/symfony/process/zipball/768debc5996f599c4372b322d9061dba2a4bf505", + "reference": "768debc5996f599c4372b322d9061dba2a4bf505", "shasum": "" }, "require": { @@ -4047,20 +3905,20 @@ ], "description": "Symfony Process Component", "homepage": "https://symfony.com", - "time": "2016-06-06 11:33:26" + "time": "2016-07-28T11:13:34+00:00" }, { "name": "symfony/routing", - "version": "v3.0.7", + "version": "v3.0.9", "source": { "type": "git", "url": "https://github.com/symfony/routing.git", - "reference": "c780454838a1131adc756d737a4b4cc1d18f8c64" + "reference": "9038984bd9c05ab07280121e9e10f61a7231457b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/routing/zipball/c780454838a1131adc756d737a4b4cc1d18f8c64", - "reference": "c780454838a1131adc756d737a4b4cc1d18f8c64", + "url": "https://api.github.com/repos/symfony/routing/zipball/9038984bd9c05ab07280121e9e10f61a7231457b", + "reference": "9038984bd9c05ab07280121e9e10f61a7231457b", "shasum": "" }, "require": { @@ -4122,20 +3980,69 @@ "uri", "url" ], - "time": "2016-05-30 06:58:27" + "time": "2016-06-29T05:40:00+00:00" }, { - "name": "symfony/translation", - "version": "v3.0.7", + "name": "symfony/stopwatch", + "version": "v3.4.8", "source": { "type": "git", - "url": "https://github.com/symfony/translation.git", - "reference": "2b0aacaa613c0ec1ad8046f972d8abdcb19c1db7" + "url": "https://github.com/symfony/stopwatch.git", + "reference": "eb17cfa072cab26537ac37e9c4ece6c0361369af" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation/zipball/2b0aacaa613c0ec1ad8046f972d8abdcb19c1db7", - "reference": "2b0aacaa613c0ec1ad8046f972d8abdcb19c1db7", + "url": "https://api.github.com/repos/symfony/stopwatch/zipball/eb17cfa072cab26537ac37e9c4ece6c0361369af", + "reference": "eb17cfa072cab26537ac37e9c4ece6c0361369af", + "shasum": "" + }, + "require": { + "php": "^5.5.9|>=7.0.8" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.4-dev" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Component\\Stopwatch\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony Stopwatch Component", + "homepage": "https://symfony.com", + "time": "2018-02-17T14:55:25+00:00" + }, + { + "name": "symfony/translation", + "version": "v3.0.9", + "source": { + "type": "git", + "url": "https://github.com/symfony/translation.git", + "reference": "eee6c664853fd0576f21ae25725cfffeafe83f26" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/translation/zipball/eee6c664853fd0576f21ae25725cfffeafe83f26", + "reference": "eee6c664853fd0576f21ae25725cfffeafe83f26", "shasum": "" }, "require": { @@ -4186,20 +4093,20 @@ ], "description": "Symfony Translation Component", "homepage": "https://symfony.com", - "time": "2016-06-06 11:33:26" + "time": "2016-07-30T07:22:48+00:00" }, { "name": "symfony/var-dumper", - "version": "v3.0.7", + "version": "v3.0.9", "source": { "type": "git", "url": "https://github.com/symfony/var-dumper.git", - "reference": "d8bb851da153d97abe7c2b71a65dee19f324bcf7" + "reference": "1f7e071aafc6676fcb6e3f0497f87c2397247377" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/var-dumper/zipball/d8bb851da153d97abe7c2b71a65dee19f324bcf7", - "reference": "d8bb851da153d97abe7c2b71a65dee19f324bcf7", + "url": "https://api.github.com/repos/symfony/var-dumper/zipball/1f7e071aafc6676fcb6e3f0497f87c2397247377", + "reference": "1f7e071aafc6676fcb6e3f0497f87c2397247377", "shasum": "" }, "require": { @@ -4249,7 +4156,7 @@ "debug", "dump" ], - "time": "2016-05-24 10:03:10" + "time": "2016-07-26T08:03:56+00:00" }, { "name": "tijsverkoyen/css-to-inline-styles", @@ -4296,7 +4203,54 @@ ], "description": "CssToInlineStyles is a class that enables you to convert HTML-pages/files into HTML-pages/files with inline styles. This is very useful when you're sending emails.", "homepage": "https://github.com/tijsverkoyen/CssToInlineStyles", - "time": "2015-12-08 16:14:14" + "time": "2015-12-08T16:14:14+00:00" + }, + { + "name": "tolerance/tolerance", + "version": "0.4.2", + "source": { + "type": "git", + "url": "https://github.com/Tolerance/Tolerance.git", + "reference": "9723e73c25333bf2decb9b6eda7d1036465b7a85" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Tolerance/Tolerance/zipball/9723e73c25333bf2decb9b6eda7d1036465b7a85", + "reference": "9723e73c25333bf2decb9b6eda7d1036465b7a85", + "shasum": "" + }, + "replace": { + "sroze/tolerance": "self.version" + }, + "require-dev": { + "beberlei/metrics": "^2.1", + "behat/behat": "~3.1.0rc1", + "behat/symfony2-extension": "^2.1", + "csa/guzzle-bundle": "~2.0@dev", + "guzzlehttp/promises": "^1.3", + "jms/aop-bundle": "^1.2", + "jms/serializer-bundle": "^1.1", + "php-amqplib/rabbitmq-bundle": "^1.8", + "php-http/client-common": "^1.4", + "php-http/mock-client": "^0.3.3", + "phpspec/phpspec": "~2.5", + "phpunit/phpunit": "^5.1", + "ruflin/elastica": "^3.0", + "simple-bus/rabbitmq-bundle-bridge": "^3.0", + "symfony/symfony": "~2.8|~3.0" + }, + "type": "library", + "autoload": { + "psr-0": { + "Tolerance\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "Fault tolerance library and micro-services helpers", + "time": "2017-10-06T12:21:00+00:00" }, { "name": "vinelab/http", @@ -4304,17 +4258,18 @@ "source": { "type": "git", "url": "https://github.com/Vinelab/http.git", - "reference": "26974a6f2c635795aed893f9aa0f87118f137d95" + "reference": "2b164821c0c4e7f15c3c92cb45bb4053509ed3cc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Vinelab/http/zipball/30b6f71c127dbc213e56d1d07c4bfeca8224604f", - "reference": "26974a6f2c635795aed893f9aa0f87118f137d95", + "url": "https://api.github.com/repos/Vinelab/http/zipball/2b164821c0c4e7f15c3c92cb45bb4053509ed3cc", + "reference": "2b164821c0c4e7f15c3c92cb45bb4053509ed3cc", "shasum": "" }, "require": { "illuminate/support": "*", - "php": ">=5.4" + "php": ">=5.6.4", + "tolerance/tolerance": "^0.4.0" }, "require-dev": { "mockery/mockery": "0.9.*", @@ -4346,20 +4301,20 @@ "laravel", "xml" ], - "time": "2015-12-09 08:57:51" + "time": "2017-10-24T08:34:56+00:00" }, { "name": "vlucas/phpdotenv", - "version": "v2.3.0", + "version": "v2.4.0", "source": { "type": "git", "url": "https://github.com/vlucas/phpdotenv.git", - "reference": "9ca5644c536654e9509b9d257f53c58630eb2a6a" + "reference": "3cc116adbe4b11be5ec557bf1d24dc5e3a21d18c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/9ca5644c536654e9509b9d257f53c58630eb2a6a", - "reference": "9ca5644c536654e9509b9d257f53c58630eb2a6a", + "url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/3cc116adbe4b11be5ec557bf1d24dc5e3a21d18c", + "reference": "3cc116adbe4b11be5ec557bf1d24dc5e3a21d18c", "shasum": "" }, "require": { @@ -4371,7 +4326,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.3-dev" + "dev-master": "2.4-dev" } }, "autoload": { @@ -4396,83 +4351,36 @@ "env", "environment" ], - "time": "2016-06-14 14:14:52" - }, - { - "name": "webmozart/assert", - "version": "1.0.2", - "source": { - "type": "git", - "url": "https://github.com/webmozart/assert.git", - "reference": "30eed06dd6bc88410a4ff7f77b6d22f3ce13dbde" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/webmozart/assert/zipball/30eed06dd6bc88410a4ff7f77b6d22f3ce13dbde", - "reference": "30eed06dd6bc88410a4ff7f77b6d22f3ce13dbde", - "shasum": "" - }, - "require": { - "php": ">=5.3.3" - }, - "require-dev": { - "phpunit/phpunit": "^4.6" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0-dev" - } - }, - "autoload": { - "psr-4": { - "Webmozart\\Assert\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Bernhard Schussek", - "email": "bschussek@gmail.com" - } - ], - "description": "Assertions to validate method input/output with nice error messages.", - "keywords": [ - "assert", - "check", - "validate" - ], - "time": "2015-08-24 13:29:44" + "time": "2016-09-01T10:05:43+00:00" } ], "packages-dev": [ { "name": "barryvdh/laravel-ide-helper", - "version": "v2.2.0", + "version": "v2.4.3", "source": { "type": "git", "url": "https://github.com/barryvdh/laravel-ide-helper.git", - "reference": "a9484c67d1305e9e2c71d2dfaaed6639200d874c" + "reference": "5c304db44fba8e9c4aa0c09739e59f7be7736fdd" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/barryvdh/laravel-ide-helper/zipball/a9484c67d1305e9e2c71d2dfaaed6639200d874c", - "reference": "a9484c67d1305e9e2c71d2dfaaed6639200d874c", + "url": "https://api.github.com/repos/barryvdh/laravel-ide-helper/zipball/5c304db44fba8e9c4aa0c09739e59f7be7736fdd", + "reference": "5c304db44fba8e9c4aa0c09739e59f7be7736fdd", "shasum": "" }, "require": { "barryvdh/reflection-docblock": "^2.0.4", - "illuminate/console": "^5.0,<5.4", - "illuminate/filesystem": "^5.0,<5.4", - "illuminate/support": "^5.0,<5.4", + "illuminate/console": "^5.0,<5.7", + "illuminate/filesystem": "^5.0,<5.7", + "illuminate/support": "^5.0,<5.7", "php": ">=5.4.0", "symfony/class-loader": "^2.3|^3.0" }, "require-dev": { "doctrine/dbal": "~2.3", + "illuminate/config": "^5.0,<5.7", + "illuminate/view": "^5.0,<5.7", "phpunit/phpunit": "4.*", "scrutinizer/ocular": "~1.1", "squizlabs/php_codesniffer": "~2.3" @@ -4483,7 +4391,12 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.1-dev" + "dev-master": "2.3-dev" + }, + "laravel": { + "providers": [ + "Barryvdh\\LaravelIdeHelper\\IdeHelperServiceProvider" + ] } }, "autoload": { @@ -4513,7 +4426,7 @@ "phpstorm", "sublime" ], - "time": "2016-06-13 19:36:24" + "time": "2018-02-08T07:56:07+00:00" }, { "name": "barryvdh/reflection-docblock", @@ -4562,20 +4475,88 @@ "email": "mike.vanriel@naenius.com" } ], - "time": "2016-06-13 19:28:20" + "time": "2016-06-13T19:28:20+00:00" }, { - "name": "doctrine/cache", - "version": "v1.6.0", + "name": "doctrine/annotations", + "version": "v1.4.0", "source": { "type": "git", - "url": "https://github.com/doctrine/cache.git", - "reference": "f8af318d14bdb0eff0336795b428b547bd39ccb6" + "url": "https://github.com/doctrine/annotations.git", + "reference": "54cacc9b81758b14e3ce750f205a393d52339e97" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/cache/zipball/f8af318d14bdb0eff0336795b428b547bd39ccb6", - "reference": "f8af318d14bdb0eff0336795b428b547bd39ccb6", + "url": "https://api.github.com/repos/doctrine/annotations/zipball/54cacc9b81758b14e3ce750f205a393d52339e97", + "reference": "54cacc9b81758b14e3ce750f205a393d52339e97", + "shasum": "" + }, + "require": { + "doctrine/lexer": "1.*", + "php": "^5.6 || ^7.0" + }, + "require-dev": { + "doctrine/cache": "1.*", + "phpunit/phpunit": "^5.7" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.4.x-dev" + } + }, + "autoload": { + "psr-4": { + "Doctrine\\Common\\Annotations\\": "lib/Doctrine/Common/Annotations" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Jonathan Wage", + "email": "jonwage@gmail.com" + }, + { + "name": "Johannes Schmitt", + "email": "schmittjoh@gmail.com" + } + ], + "description": "Docblock Annotations Parser", + "homepage": "http://www.doctrine-project.org", + "keywords": [ + "annotations", + "docblock", + "parser" + ], + "time": "2017-02-24T16:22:25+00:00" + }, + { + "name": "doctrine/cache", + "version": "v1.6.2", + "source": { + "type": "git", + "url": "https://github.com/doctrine/cache.git", + "reference": "eb152c5100571c7a45470ff2a35095ab3f3b900b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/cache/zipball/eb152c5100571c7a45470ff2a35095ab3f3b900b", + "reference": "eb152c5100571c7a45470ff2a35095ab3f3b900b", "shasum": "" }, "require": { @@ -4632,32 +4613,33 @@ "cache", "caching" ], - "time": "2015-12-31 16:37:02" + "time": "2017-07-22T12:49:21+00:00" }, { "name": "doctrine/collections", - "version": "v1.3.0", + "version": "v1.4.0", "source": { "type": "git", "url": "https://github.com/doctrine/collections.git", - "reference": "6c1e4eef75f310ea1b3e30945e9f06e652128b8a" + "reference": "1a4fb7e902202c33cce8c55989b945612943c2ba" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/collections/zipball/6c1e4eef75f310ea1b3e30945e9f06e652128b8a", - "reference": "6c1e4eef75f310ea1b3e30945e9f06e652128b8a", + "url": "https://api.github.com/repos/doctrine/collections/zipball/1a4fb7e902202c33cce8c55989b945612943c2ba", + "reference": "1a4fb7e902202c33cce8c55989b945612943c2ba", "shasum": "" }, "require": { - "php": ">=5.3.2" + "php": "^5.6 || ^7.0" }, "require-dev": { - "phpunit/phpunit": "~4.0" + "doctrine/coding-standard": "~0.1@dev", + "phpunit/phpunit": "^5.7" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.2.x-dev" + "dev-master": "1.3.x-dev" } }, "autoload": { @@ -4698,20 +4680,20 @@ "collections", "iterator" ], - "time": "2015-04-14 22:21:58" + "time": "2017-01-03T10:49:41+00:00" }, { "name": "doctrine/common", - "version": "v2.6.1", + "version": "v2.7.3", "source": { "type": "git", "url": "https://github.com/doctrine/common.git", - "reference": "a579557bc689580c19fee4e27487a67fe60defc0" + "reference": "4acb8f89626baafede6ee5475bc5844096eba8a9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/common/zipball/a579557bc689580c19fee4e27487a67fe60defc0", - "reference": "a579557bc689580c19fee4e27487a67fe60defc0", + "url": "https://api.github.com/repos/doctrine/common/zipball/4acb8f89626baafede6ee5475bc5844096eba8a9", + "reference": "4acb8f89626baafede6ee5475bc5844096eba8a9", "shasum": "" }, "require": { @@ -4720,10 +4702,10 @@ "doctrine/collections": "1.*", "doctrine/inflector": "1.*", "doctrine/lexer": "1.*", - "php": "~5.5|~7.0" + "php": "~5.6|~7.0" }, "require-dev": { - "phpunit/phpunit": "~4.8|~5.0" + "phpunit/phpunit": "^5.4.6" }, "type": "library", "extra": { @@ -4771,29 +4753,29 @@ "persistence", "spl" ], - "time": "2015-12-25 13:18:31" + "time": "2017-07-22T08:35:12+00:00" }, { "name": "doctrine/dbal", - "version": "v2.5.4", + "version": "v2.5.13", "source": { "type": "git", "url": "https://github.com/doctrine/dbal.git", - "reference": "abbdfd1cff43a7b99d027af3be709bc8fc7d4769" + "reference": "729340d8d1eec8f01bff708e12e449a3415af873" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/dbal/zipball/abbdfd1cff43a7b99d027af3be709bc8fc7d4769", - "reference": "abbdfd1cff43a7b99d027af3be709bc8fc7d4769", + "url": "https://api.github.com/repos/doctrine/dbal/zipball/729340d8d1eec8f01bff708e12e449a3415af873", + "reference": "729340d8d1eec8f01bff708e12e449a3415af873", "shasum": "" }, "require": { - "doctrine/common": ">=2.4,<2.7-dev", + "doctrine/common": ">=2.4,<2.8-dev", "php": ">=5.3.2" }, "require-dev": { "phpunit/phpunit": "4.*", - "symfony/console": "2.*" + "symfony/console": "2.*||^3.0" }, "suggest": { "symfony/console": "For helpful console commands such as SQL execution and import of files." @@ -4842,7 +4824,7 @@ "persistence", "queryobject" ], - "time": "2016-01-05 22:11:12" + "time": "2017-07-22T20:44:48+00:00" }, { "name": "doctrine/instantiator", @@ -4896,33 +4878,89 @@ "constructor", "instantiate" ], - "time": "2015-06-14 21:17:01" + "time": "2015-06-14T21:17:01+00:00" }, { - "name": "fzaninotto/faker", - "version": "v1.6.0", + "name": "doctrine/lexer", + "version": "v1.0.1", "source": { "type": "git", - "url": "https://github.com/fzaninotto/Faker.git", - "reference": "44f9a286a04b80c76a4e5fb7aad8bb539b920123" + "url": "https://github.com/doctrine/lexer.git", + "reference": "83893c552fd2045dd78aef794c31e694c37c0b8c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/fzaninotto/Faker/zipball/44f9a286a04b80c76a4e5fb7aad8bb539b920123", - "reference": "44f9a286a04b80c76a4e5fb7aad8bb539b920123", + "url": "https://api.github.com/repos/doctrine/lexer/zipball/83893c552fd2045dd78aef794c31e694c37c0b8c", + "reference": "83893c552fd2045dd78aef794c31e694c37c0b8c", "shasum": "" }, "require": { - "php": "^5.3.3|^7.0" - }, - "require-dev": { - "ext-intl": "*", - "phpunit/phpunit": "~4.0", - "squizlabs/php_codesniffer": "~1.5" + "php": ">=5.3.2" }, "type": "library", "extra": { - "branch-alias": [] + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-0": { + "Doctrine\\Common\\Lexer\\": "lib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Johannes Schmitt", + "email": "schmittjoh@gmail.com" + } + ], + "description": "Base library for a lexer that can be used in Top-Down, Recursive Descent Parsers.", + "homepage": "http://www.doctrine-project.org", + "keywords": [ + "lexer", + "parser" + ], + "time": "2014-09-09T13:34:57+00:00" + }, + { + "name": "fzaninotto/faker", + "version": "v1.7.1", + "source": { + "type": "git", + "url": "https://github.com/fzaninotto/Faker.git", + "reference": "d3ed4cc37051c1ca52d22d76b437d14809fc7e0d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/fzaninotto/Faker/zipball/d3ed4cc37051c1ca52d22d76b437d14809fc7e0d", + "reference": "d3ed4cc37051c1ca52d22d76b437d14809fc7e0d", + "shasum": "" + }, + "require": { + "php": "^5.3.3 || ^7.0" + }, + "require-dev": { + "ext-intl": "*", + "phpunit/phpunit": "^4.0 || ^5.0", + "squizlabs/php_codesniffer": "^1.5" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.8-dev" + } }, "autoload": { "psr-4": { @@ -4944,7 +4982,153 @@ "faker", "fixtures" ], - "time": "2016-04-29 12:21:54" + "time": "2017-08-15T16:48:10+00:00" + }, + { + "name": "phpdocumentor/reflection-common", + "version": "1.0.1", + "source": { + "type": "git", + "url": "https://github.com/phpDocumentor/ReflectionCommon.git", + "reference": "21bdeb5f65d7ebf9f43b1b25d404f87deab5bfb6" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phpDocumentor/ReflectionCommon/zipball/21bdeb5f65d7ebf9f43b1b25d404f87deab5bfb6", + "reference": "21bdeb5f65d7ebf9f43b1b25d404f87deab5bfb6", + "shasum": "" + }, + "require": { + "php": ">=5.5" + }, + "require-dev": { + "phpunit/phpunit": "^4.6" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "phpDocumentor\\Reflection\\": [ + "src" + ] + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jaap van Otterdijk", + "email": "opensource@ijaap.nl" + } + ], + "description": "Common reflection classes used by phpdocumentor to reflect the code structure", + "homepage": "http://www.phpdoc.org", + "keywords": [ + "FQSEN", + "phpDocumentor", + "phpdoc", + "reflection", + "static analysis" + ], + "time": "2017-09-11T18:02:19+00:00" + }, + { + "name": "phpdocumentor/reflection-docblock", + "version": "3.3.2", + "source": { + "type": "git", + "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git", + "reference": "bf329f6c1aadea3299f08ee804682b7c45b326a2" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/bf329f6c1aadea3299f08ee804682b7c45b326a2", + "reference": "bf329f6c1aadea3299f08ee804682b7c45b326a2", + "shasum": "" + }, + "require": { + "php": "^5.6 || ^7.0", + "phpdocumentor/reflection-common": "^1.0.0", + "phpdocumentor/type-resolver": "^0.4.0", + "webmozart/assert": "^1.0" + }, + "require-dev": { + "mockery/mockery": "^0.9.4", + "phpunit/phpunit": "^4.4" + }, + "type": "library", + "autoload": { + "psr-4": { + "phpDocumentor\\Reflection\\": [ + "src/" + ] + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Mike van Riel", + "email": "me@mikevanriel.com" + } + ], + "description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.", + "time": "2017-11-10T14:09:06+00:00" + }, + { + "name": "phpdocumentor/type-resolver", + "version": "0.4.0", + "source": { + "type": "git", + "url": "https://github.com/phpDocumentor/TypeResolver.git", + "reference": "9c977708995954784726e25d0cd1dddf4e65b0f7" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/9c977708995954784726e25d0cd1dddf4e65b0f7", + "reference": "9c977708995954784726e25d0cd1dddf4e65b0f7", + "shasum": "" + }, + "require": { + "php": "^5.5 || ^7.0", + "phpdocumentor/reflection-common": "^1.0" + }, + "require-dev": { + "mockery/mockery": "^0.9.4", + "phpunit/phpunit": "^5.2||^4.8.24" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "phpDocumentor\\Reflection\\": [ + "src/" + ] + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Mike van Riel", + "email": "me@mikevanriel.com" + } + ], + "time": "2017-07-14T14:27:02+00:00" }, { "name": "phpspec/php-diff", @@ -4978,20 +5162,20 @@ } ], "description": "A comprehensive library for generating differences between two hashable objects (strings or arrays).", - "time": "2013-11-01 13:02:21" + "time": "2013-11-01T13:02:21+00:00" }, { "name": "phpspec/phpspec", - "version": "2.5.0", + "version": "2.5.8", "source": { "type": "git", "url": "https://github.com/phpspec/phpspec.git", - "reference": "385ecb015e97c13818074f1517928b24d4a26067" + "reference": "d8a153dcb52f929b448c0bf2cc19c7388951adb1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpspec/phpspec/zipball/385ecb015e97c13818074f1517928b24d4a26067", - "reference": "385ecb015e97c13818074f1517928b24d4a26067", + "url": "https://api.github.com/repos/phpspec/phpspec/zipball/d8a153dcb52f929b448c0bf2cc19c7388951adb1", + "reference": "d8a153dcb52f929b448c0bf2cc19c7388951adb1", "shasum": "" }, "require": { @@ -5000,16 +5184,16 @@ "php": ">=5.3.3", "phpspec/php-diff": "~1.0.0", "phpspec/prophecy": "~1.4", - "sebastian/exporter": "~1.0", - "symfony/console": "~2.3|~3.0", + "sebastian/exporter": "~1.0|~2.0|^3.0", + "symfony/console": "~2.3|~3.0,!=3.2.8", "symfony/event-dispatcher": "~2.1|~3.0", "symfony/finder": "~2.1|~3.0", "symfony/process": "^2.6|~3.0", "symfony/yaml": "~2.1|~3.0" }, "require-dev": { - "behat/behat": "^3.0.11", - "bossa/phpspec2-expect": "~1.0", + "behat/behat": "^3.0.11,!=3.3.1", + "ciaranmcnulty/versionbasedtestskipper": "^0.2.1", "phpunit/phpunit": "~4.4", "symfony/filesystem": "~2.1|~3.0" }, @@ -5022,7 +5206,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.2.x-dev" + "dev-master": "2.5.x-dev" } }, "autoload": { @@ -5056,36 +5240,37 @@ "testing", "tests" ], - "time": "2016-03-20 20:34:32" + "time": "2017-07-29T17:19:38+00:00" }, { "name": "phpspec/prophecy", - "version": "v1.6.1", + "version": "1.7.5", "source": { "type": "git", "url": "https://github.com/phpspec/prophecy.git", - "reference": "58a8137754bc24b25740d4281399a4a3596058e0" + "reference": "dfd6be44111a7c41c2e884a336cc4f461b3b2401" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpspec/prophecy/zipball/58a8137754bc24b25740d4281399a4a3596058e0", - "reference": "58a8137754bc24b25740d4281399a4a3596058e0", + "url": "https://api.github.com/repos/phpspec/prophecy/zipball/dfd6be44111a7c41c2e884a336cc4f461b3b2401", + "reference": "dfd6be44111a7c41c2e884a336cc4f461b3b2401", "shasum": "" }, "require": { "doctrine/instantiator": "^1.0.2", "php": "^5.3|^7.0", - "phpdocumentor/reflection-docblock": "^2.0|^3.0.2", - "sebastian/comparator": "^1.1", - "sebastian/recursion-context": "^1.0" + "phpdocumentor/reflection-docblock": "^2.0|^3.0.2|^4.0", + "sebastian/comparator": "^1.1|^2.0", + "sebastian/recursion-context": "^1.0|^2.0|^3.0" }, "require-dev": { - "phpspec/phpspec": "^2.0" + "phpspec/phpspec": "^2.5|^3.2", + "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.5" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.6.x-dev" + "dev-master": "1.7.x-dev" } }, "autoload": { @@ -5118,7 +5303,7 @@ "spy", "stub" ], - "time": "2016-06-07 08:13:47" + "time": "2018-02-19T10:16:54+00:00" }, { "name": "phpunit/php-code-coverage", @@ -5180,20 +5365,20 @@ "testing", "xunit" ], - "time": "2015-10-06 15:47:00" + "time": "2015-10-06T15:47:00+00:00" }, { "name": "phpunit/php-file-iterator", - "version": "1.4.1", + "version": "1.4.5", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-file-iterator.git", - "reference": "6150bf2c35d3fc379e50c7602b75caceaa39dbf0" + "reference": "730b01bc3e867237eaac355e06a36b85dd93a8b4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/6150bf2c35d3fc379e50c7602b75caceaa39dbf0", - "reference": "6150bf2c35d3fc379e50c7602b75caceaa39dbf0", + "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/730b01bc3e867237eaac355e06a36b85dd93a8b4", + "reference": "730b01bc3e867237eaac355e06a36b85dd93a8b4", "shasum": "" }, "require": { @@ -5227,7 +5412,7 @@ "filesystem", "iterator" ], - "time": "2015-06-21 13:08:43" + "time": "2017-11-27T13:52:08+00:00" }, { "name": "phpunit/php-text-template", @@ -5268,29 +5453,34 @@ "keywords": [ "template" ], - "time": "2015-06-21 13:50:34" + "time": "2015-06-21T13:50:34+00:00" }, { "name": "phpunit/php-timer", - "version": "1.0.8", + "version": "1.0.9", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-timer.git", - "reference": "38e9124049cf1a164f1e4537caf19c99bf1eb260" + "reference": "3dcf38ca72b158baf0bc245e9184d3fdffa9c46f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/38e9124049cf1a164f1e4537caf19c99bf1eb260", - "reference": "38e9124049cf1a164f1e4537caf19c99bf1eb260", + "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/3dcf38ca72b158baf0bc245e9184d3fdffa9c46f", + "reference": "3dcf38ca72b158baf0bc245e9184d3fdffa9c46f", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": "^5.3.3 || ^7.0" }, "require-dev": { - "phpunit/phpunit": "~4|~5" + "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.0" }, "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0-dev" + } + }, "autoload": { "classmap": [ "src/" @@ -5312,20 +5502,20 @@ "keywords": [ "timer" ], - "time": "2016-05-12 18:03:57" + "time": "2017-02-26T11:10:40+00:00" }, { "name": "phpunit/php-token-stream", - "version": "1.4.8", + "version": "1.4.12", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-token-stream.git", - "reference": "3144ae21711fb6cac0b1ab4cbe63b75ce3d4e8da" + "reference": "1ce90ba27c42e4e44e6d8458241466380b51fa16" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/3144ae21711fb6cac0b1ab4cbe63b75ce3d4e8da", - "reference": "3144ae21711fb6cac0b1ab4cbe63b75ce3d4e8da", + "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/1ce90ba27c42e4e44e6d8458241466380b51fa16", + "reference": "1ce90ba27c42e4e44e6d8458241466380b51fa16", "shasum": "" }, "require": { @@ -5361,20 +5551,20 @@ "keywords": [ "tokenizer" ], - "time": "2015-09-15 10:49:45" + "time": "2017-12-04T08:55:13+00:00" }, { "name": "phpunit/phpunit", - "version": "4.8.26", + "version": "4.8.36", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "fc1d8cd5b5de11625979125c5639347896ac2c74" + "reference": "46023de9a91eec7dfb06cc56cb4e260017298517" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/fc1d8cd5b5de11625979125c5639347896ac2c74", - "reference": "fc1d8cd5b5de11625979125c5639347896ac2c74", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/46023de9a91eec7dfb06cc56cb4e260017298517", + "reference": "46023de9a91eec7dfb06cc56cb4e260017298517", "shasum": "" }, "require": { @@ -5390,7 +5580,7 @@ "phpunit/php-text-template": "~1.2", "phpunit/php-timer": "^1.0.6", "phpunit/phpunit-mock-objects": "~2.3", - "sebastian/comparator": "~1.1", + "sebastian/comparator": "~1.2.2", "sebastian/diff": "~1.2", "sebastian/environment": "~1.3", "sebastian/exporter": "~1.2", @@ -5433,7 +5623,7 @@ "testing", "xunit" ], - "time": "2016-05-17 03:09:28" + "time": "2017-06-21T08:07:12+00:00" }, { "name": "phpunit/phpunit-mock-objects", @@ -5489,26 +5679,26 @@ "mock", "xunit" ], - "time": "2015-10-02 06:51:40" + "time": "2015-10-02T06:51:40+00:00" }, { "name": "sebastian/comparator", - "version": "1.2.0", + "version": "1.2.4", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/comparator.git", - "reference": "937efb279bd37a375bcadf584dec0726f84dbf22" + "reference": "2b7424b55f5047b47ac6e5ccb20b2aea4011d9be" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/937efb279bd37a375bcadf584dec0726f84dbf22", - "reference": "937efb279bd37a375bcadf584dec0726f84dbf22", + "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/2b7424b55f5047b47ac6e5ccb20b2aea4011d9be", + "reference": "2b7424b55f5047b47ac6e5ccb20b2aea4011d9be", "shasum": "" }, "require": { "php": ">=5.3.3", "sebastian/diff": "~1.2", - "sebastian/exporter": "~1.2" + "sebastian/exporter": "~1.2 || ~2.0" }, "require-dev": { "phpunit/phpunit": "~4.4" @@ -5553,79 +5743,27 @@ "compare", "equality" ], - "time": "2015-07-26 15:48:44" - }, - { - "name": "sebastian/diff", - "version": "1.4.1", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/diff.git", - "reference": "13edfd8706462032c2f52b4b862974dd46b71c9e" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/13edfd8706462032c2f52b4b862974dd46b71c9e", - "reference": "13edfd8706462032c2f52b4b862974dd46b71c9e", - "shasum": "" - }, - "require": { - "php": ">=5.3.3" - }, - "require-dev": { - "phpunit/phpunit": "~4.8" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.4-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Kore Nordmann", - "email": "mail@kore-nordmann.de" - }, - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - } - ], - "description": "Diff implementation", - "homepage": "https://github.com/sebastianbergmann/diff", - "keywords": [ - "diff" - ], - "time": "2015-12-08 07:14:41" + "time": "2017-01-29T09:50:25+00:00" }, { "name": "sebastian/environment", - "version": "1.3.7", + "version": "1.3.8", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/environment.git", - "reference": "4e8f0da10ac5802913afc151413bc8c53b6c2716" + "reference": "be2c607e43ce4c89ecd60e75c6a85c126e754aea" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/4e8f0da10ac5802913afc151413bc8c53b6c2716", - "reference": "4e8f0da10ac5802913afc151413bc8c53b6c2716", + "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/be2c607e43ce4c89ecd60e75c6a85c126e754aea", + "reference": "be2c607e43ce4c89ecd60e75c6a85c126e754aea", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": "^5.3.3 || ^7.0" }, "require-dev": { - "phpunit/phpunit": "~4.4" + "phpunit/phpunit": "^4.8 || ^5.0" }, "type": "library", "extra": { @@ -5655,20 +5793,20 @@ "environment", "hhvm" ], - "time": "2016-05-17 03:18:57" + "time": "2016-08-18T05:49:44+00:00" }, { "name": "sebastian/exporter", - "version": "1.2.1", + "version": "1.2.2", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/exporter.git", - "reference": "7ae5513327cb536431847bcc0c10edba2701064e" + "reference": "42c4c2eec485ee3e159ec9884f95b431287edde4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/7ae5513327cb536431847bcc0c10edba2701064e", - "reference": "7ae5513327cb536431847bcc0c10edba2701064e", + "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/42c4c2eec485ee3e159ec9884f95b431287edde4", + "reference": "42c4c2eec485ee3e159ec9884f95b431287edde4", "shasum": "" }, "require": { @@ -5676,12 +5814,13 @@ "sebastian/recursion-context": "~1.0" }, "require-dev": { + "ext-mbstring": "*", "phpunit/phpunit": "~4.4" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.2.x-dev" + "dev-master": "1.3.x-dev" } }, "autoload": { @@ -5721,7 +5860,7 @@ "export", "exporter" ], - "time": "2015-06-21 07:55:53" + "time": "2016-06-17T09:04:28+00:00" }, { "name": "sebastian/global-state", @@ -5772,20 +5911,20 @@ "keywords": [ "global state" ], - "time": "2015-10-12 03:26:01" + "time": "2015-10-12T03:26:01+00:00" }, { "name": "sebastian/recursion-context", - "version": "1.0.2", + "version": "1.0.5", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/recursion-context.git", - "reference": "913401df809e99e4f47b27cdd781f4a258d58791" + "reference": "b19cc3298482a335a95f3016d2f8a6950f0fbcd7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/913401df809e99e4f47b27cdd781f4a258d58791", - "reference": "913401df809e99e4f47b27cdd781f4a258d58791", + "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/b19cc3298482a335a95f3016d2f8a6950f0fbcd7", + "reference": "b19cc3298482a335a95f3016d2f8a6950f0fbcd7", "shasum": "" }, "require": { @@ -5825,7 +5964,7 @@ ], "description": "Provides functionality to recursively process PHP variables", "homepage": "http://www.github.com/sebastianbergmann/recursion-context", - "time": "2015-11-11 19:50:13" + "time": "2016-10-03T07:41:43+00:00" }, { "name": "sebastian/version", @@ -5860,27 +5999,27 @@ ], "description": "Library that helps with managing the version number of Git-hosted PHP projects", "homepage": "https://github.com/sebastianbergmann/version", - "time": "2015-06-21 13:59:46" + "time": "2015-06-21T13:59:46+00:00" }, { "name": "symfony/class-loader", - "version": "v3.1.0", + "version": "v3.4.8", "source": { "type": "git", "url": "https://github.com/symfony/class-loader.git", - "reference": "6ebc60f69a6df4b3cf5ad6f260ba4edf5957ea05" + "reference": "e63c12699822bb3b667e7216ba07fbcc3a3e203e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/class-loader/zipball/6ebc60f69a6df4b3cf5ad6f260ba4edf5957ea05", - "reference": "6ebc60f69a6df4b3cf5ad6f260ba4edf5957ea05", + "url": "https://api.github.com/repos/symfony/class-loader/zipball/e63c12699822bb3b667e7216ba07fbcc3a3e203e", + "reference": "e63c12699822bb3b667e7216ba07fbcc3a3e203e", "shasum": "" }, "require": { - "php": ">=5.5.9" + "php": "^5.5.9|>=7.0.8" }, "require-dev": { - "symfony/finder": "~2.8|~3.0", + "symfony/finder": "~2.8|~3.0|~4.0", "symfony/polyfill-apcu": "~1.1" }, "suggest": { @@ -5889,7 +6028,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "3.1-dev" + "dev-master": "3.4-dev" } }, "autoload": { @@ -5916,28 +6055,28 @@ ], "description": "Symfony ClassLoader Component", "homepage": "https://symfony.com", - "time": "2016-03-30 10:41:47" + "time": "2018-01-03T07:37:34+00:00" }, { "name": "symfony/dom-crawler", - "version": "v3.1.0", + "version": "v3.4.8", "source": { "type": "git", "url": "https://github.com/symfony/dom-crawler.git", - "reference": "12aa63fd41b060d2bee9a34623d29eda70bc8fe3" + "reference": "1a4cffeb059226ff6bee9f48acb388faf674afff" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/12aa63fd41b060d2bee9a34623d29eda70bc8fe3", - "reference": "12aa63fd41b060d2bee9a34623d29eda70bc8fe3", + "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/1a4cffeb059226ff6bee9f48acb388faf674afff", + "reference": "1a4cffeb059226ff6bee9f48acb388faf674afff", "shasum": "" }, "require": { - "php": ">=5.5.9", + "php": "^5.5.9|>=7.0.8", "symfony/polyfill-mbstring": "~1.0" }, "require-dev": { - "symfony/css-selector": "~2.8|~3.0" + "symfony/css-selector": "~2.8|~3.0|~4.0" }, "suggest": { "symfony/css-selector": "" @@ -5945,7 +6084,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "3.1-dev" + "dev-master": "3.4-dev" } }, "autoload": { @@ -5972,29 +6111,35 @@ ], "description": "Symfony DomCrawler Component", "homepage": "https://symfony.com", - "time": "2016-05-13 15:49:09" + "time": "2018-03-19T22:32:39+00:00" }, { "name": "symfony/yaml", - "version": "v3.1.0", + "version": "v3.3.16", "source": { "type": "git", "url": "https://github.com/symfony/yaml.git", - "reference": "eca51b7b65eb9be6af88ad7cc91685f1556f5c9a" + "reference": "af615970e265543a26ee712c958404eb9b7ac93d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/yaml/zipball/eca51b7b65eb9be6af88ad7cc91685f1556f5c9a", - "reference": "eca51b7b65eb9be6af88ad7cc91685f1556f5c9a", + "url": "https://api.github.com/repos/symfony/yaml/zipball/af615970e265543a26ee712c958404eb9b7ac93d", + "reference": "af615970e265543a26ee712c958404eb9b7ac93d", "shasum": "" }, "require": { - "php": ">=5.5.9" + "php": "^5.5.9|>=7.0.8" + }, + "require-dev": { + "symfony/console": "~2.8|~3.0" + }, + "suggest": { + "symfony/console": "For validating YAML files using the lint command" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "3.1-dev" + "dev-master": "3.3-dev" } }, "autoload": { @@ -6021,7 +6166,57 @@ ], "description": "Symfony Yaml Component", "homepage": "https://symfony.com", - "time": "2016-05-26 21:46:24" + "time": "2018-01-20T15:04:53+00:00" + }, + { + "name": "webmozart/assert", + "version": "1.3.0", + "source": { + "type": "git", + "url": "https://github.com/webmozart/assert.git", + "reference": "0df1908962e7a3071564e857d86874dad1ef204a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/webmozart/assert/zipball/0df1908962e7a3071564e857d86874dad1ef204a", + "reference": "0df1908962e7a3071564e857d86874dad1ef204a", + "shasum": "" + }, + "require": { + "php": "^5.3.3 || ^7.0" + }, + "require-dev": { + "phpunit/phpunit": "^4.6", + "sebastian/version": "^1.0.1" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.3-dev" + } + }, + "autoload": { + "psr-4": { + "Webmozart\\Assert\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Bernhard Schussek", + "email": "bschussek@gmail.com" + } + ], + "description": "Assertions to validate method input/output with nice error messages.", + "keywords": [ + "assert", + "check", + "validate" + ], + "time": "2018-01-29T19:49:41+00:00" } ], "aliases": [], @@ -6034,8 +6229,7 @@ "vinelab/http": 20, "maxhoffmann/parsedown-laravel": 20, "omnipay/bitpay": 20, - "omnipay/coinbase": 20, - "dingo/api": 20 + "omnipay/coinbase": 20 }, "prefer-stable": false, "prefer-lowest": false, diff --git a/config/app.php b/config/app.php index 531ba341..01fbe4c4 100644 --- a/config/app.php +++ b/config/app.php @@ -170,6 +170,8 @@ return [ MaxHoffmann\Parsedown\ParsedownServiceProvider::class, Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class, Laracasts\Utilities\JavaScript\JavaScriptServiceProvider::class, + Mcamara\LaravelLocalization\LaravelLocalizationServiceProvider::class, + Potsky\LaravelLocalizationHelpers\LaravelLocalizationHelpersServiceProvider::class, ], /* @@ -233,6 +235,7 @@ return [ 'Markdown' => MaxHoffmann\Parsedown\ParsedownFacade::class, 'Omnipay' => Omnipay\Omnipay::class, // 'Omnipay' => Omnipay\Omnipay::class, + 'LaravelLocalization' => Mcamara\LaravelLocalization\Facades\LaravelLocalization::class, ], ]; diff --git a/config/attendize.php b/config/attendize.php index 8b54c57e..db0fd810 100644 --- a/config/attendize.php +++ b/config/attendize.php @@ -30,7 +30,7 @@ return [ 'fallback_organiser_logo_url' => '/assets/images/logo-dark.png', 'cdn_url' => '', - 'checkout_timeout_after' => env('CHECKOUT_TIMEOUT_AFTER', 10), #minutes + 'checkout_timeout_after' => env('CHECKOUT_TIMEOUT_AFTER', 30), #minutes 'ticket_status_before_sale_date' => 3, 'ticket_status_on_sale' => 4, @@ -57,9 +57,9 @@ return [ 'default_timezone' => 30, #Europe/Dublin 'default_currency' => 2, #Euro - 'default_date_format' => 'j M, Y', - 'default_date_picker_format' => 'd M, yyyy', - 'default_datetime_format' => 'F j, Y, g:i a', + 'default_date_format' => 'Y-m-d', + 'default_date_picker_format' => 'Y-m-d', + 'default_datetime_format' => 'Y-m-d, H:i', 'default_query_cache' => 120, #Minutes 'default_locale' => 'en', 'default_payment_gateway' => 1, #Stripe=1 Paypal=2 BitPay=3 MIGS=4 diff --git a/config/laravel-localization-helpers.php b/config/laravel-localization-helpers.php new file mode 100644 index 00000000..f65dd2a7 --- /dev/null +++ b/config/laravel-localization-helpers.php @@ -0,0 +1,24 @@ + 'stripe', + + // Add in each gateway here + 'gateways' => [ + 'paypal' => [ + 'driver' => 'PayPal_Express', + 'options' => [ + 'solutionType' => '', + 'landingPage' => '', + 'headerImageUrl' => '', + ], + ], + 'stripe' => [ + 'driver' => 'Stripe', + 'options' => [], + ], + ], + +]; diff --git a/config/laravellocalization.php b/config/laravellocalization.php new file mode 100644 index 00000000..89dc2cb7 --- /dev/null +++ b/config/laravellocalization.php @@ -0,0 +1,317 @@ + [ + //'ace' => ['name' => 'Achinese', 'script' => 'Latn', 'native' => 'Aceh', 'regional' => ''], + //'af' => ['name' => 'Afrikaans', 'script' => 'Latn', 'native' => 'Afrikaans', 'regional' => 'af_ZA'], + //'agq' => ['name' => 'Aghem', 'script' => 'Latn', 'native' => 'Aghem', 'regional' => ''], + //'ak' => ['name' => 'Akan', 'script' => 'Latn', 'native' => 'Akan', 'regional' => 'ak_GH'], + //'an' => ['name' => 'Aragonese', 'script' => 'Latn', 'native' => 'aragonés', 'regional' => 'an_ES'], + //'cch' => ['name' => 'Atsam', 'script' => 'Latn', 'native' => 'Atsam', 'regional' => ''], + //'gn' => ['name' => 'Guaraní', 'script' => 'Latn', 'native' => 'Avañe’ẽ', 'regional' => ''], + //'ae' => ['name' => 'Avestan', 'script' => 'Latn', 'native' => 'avesta', 'regional' => ''], + //'ay' => ['name' => 'Aymara', 'script' => 'Latn', 'native' => 'aymar aru', 'regional' => 'ay_PE'], + //'az' => ['name' => 'Azerbaijani (Latin)', 'script' => 'Latn', 'native' => 'azərbaycanca', 'regional' => 'az_AZ'], + //'id' => ['name' => 'Indonesian', 'script' => 'Latn', 'native' => 'Bahasa Indonesia', 'regional' => 'id_ID'], + //'ms' => ['name' => 'Malay', 'script' => 'Latn', 'native' => 'Bahasa Melayu', 'regional' => 'ms_MY'], + //'bm' => ['name' => 'Bambara', 'script' => 'Latn', 'native' => 'bamanakan', 'regional' => ''], + //'jv' => ['name' => 'Javanese (Latin)', 'script' => 'Latn', 'native' => 'Basa Jawa', 'regional' => ''], + //'su' => ['name' => 'Sundanese', 'script' => 'Latn', 'native' => 'Basa Sunda', 'regional' => ''], + //'bh' => ['name' => 'Bihari', 'script' => 'Latn', 'native' => 'Bihari', 'regional' => ''], + //'bi' => ['name' => 'Bislama', 'script' => 'Latn', 'native' => 'Bislama', 'regional' => ''], + //'nb' => ['name' => 'Norwegian Bokmål', 'script' => 'Latn', 'native' => 'Bokmål', 'regional' => 'nb_NO'], + //'bs' => ['name' => 'Bosnian', 'script' => 'Latn', 'native' => 'bosanski', 'regional' => 'bs_BA'], + //'br' => ['name' => 'Breton', 'script' => 'Latn', 'native' => 'brezhoneg', 'regional' => 'br_FR'], + //'ca' => ['name' => 'Catalan', 'script' => 'Latn', 'native' => 'català', 'regional' => 'ca_ES'], + //'ch' => ['name' => 'Chamorro', 'script' => 'Latn', 'native' => 'Chamoru', 'regional' => ''], + //'ny' => ['name' => 'Chewa', 'script' => 'Latn', 'native' => 'chiCheŵa', 'regional' => ''], + //'kde' => ['name' => 'Makonde', 'script' => 'Latn', 'native' => 'Chimakonde', 'regional' => ''], + //'sn' => ['name' => 'Shona', 'script' => 'Latn', 'native' => 'chiShona', 'regional' => ''], + //'co' => ['name' => 'Corsican', 'script' => 'Latn', 'native' => 'corsu', 'regional' => ''], + //'cy' => ['name' => 'Welsh', 'script' => 'Latn', 'native' => 'Cymraeg', 'regional' => 'cy_GB'], + //'da' => ['name' => 'Danish', 'script' => 'Latn', 'native' => 'dansk', 'regional' => 'da_DK'], + //'se' => ['name' => 'Northern Sami', 'script' => 'Latn', 'native' => 'davvisámegiella', 'regional' => 'se_NO'], + //'de' => ['name' => 'German', 'script' => 'Latn', 'native' => 'Deutsch', 'regional' => 'de_DE'], + //'luo' => ['name' => 'Luo', 'script' => 'Latn', 'native' => 'Dholuo', 'regional' => ''], + //'nv' => ['name' => 'Navajo', 'script' => 'Latn', 'native' => 'Diné bizaad', 'regional' => ''], + //'dua' => ['name' => 'Duala', 'script' => 'Latn', 'native' => 'duálá', 'regional' => ''], + //'et' => ['name' => 'Estonian', 'script' => 'Latn', 'native' => 'eesti', 'regional' => 'et_EE'], + //'na' => ['name' => 'Nauru', 'script' => 'Latn', 'native' => 'Ekakairũ Naoero', 'regional' => ''], + //'guz' => ['name' => 'Ekegusii', 'script' => 'Latn', 'native' => 'Ekegusii', 'regional' => ''], + 'en' => ['name' => 'English', 'script' => 'Latn', 'native' => 'English', 'regional' => 'en_GB'], + //'en-AU' => ['name' => 'Australian English', 'script' => 'Latn', 'native' => 'Australian English', 'regional' => 'en_AU'], + //'en-GB' => ['name' => 'British English', 'script' => 'Latn', 'native' => 'British English', 'regional' => 'en_GB'], + //'en-US' => ['name' => 'U.S. English', 'script' => 'Latn', 'native' => 'U.S. English', 'regional' => 'en_US'], + //'es' => ['name' => 'Spanish', 'script' => 'Latn', 'native' => 'español', 'regional' => 'es_ES'], + //'eo' => ['name' => 'Esperanto', 'script' => 'Latn', 'native' => 'esperanto', 'regional' => ''], + //'eu' => ['name' => 'Basque', 'script' => 'Latn', 'native' => 'euskara', 'regional' => 'eu_ES'], + //'ewo' => ['name' => 'Ewondo', 'script' => 'Latn', 'native' => 'ewondo', 'regional' => ''], + //'ee' => ['name' => 'Ewe', 'script' => 'Latn', 'native' => 'eʋegbe', 'regional' => ''], + //'fil' => ['name' => 'Filipino', 'script' => 'Latn', 'native' => 'Filipino', 'regional' => 'fil_PH'], + //'fr' => ['name' => 'French', 'script' => 'Latn', 'native' => 'français', 'regional' => 'fr_FR'], + //'fr-CA' => ['name' => 'Canadian French', 'script' => 'Latn', 'native' => 'français canadien', 'regional' => 'fr_CA'], + //'fy' => ['name' => 'Western Frisian', 'script' => 'Latn', 'native' => 'frysk', 'regional' => 'fy_DE'], + //'fur' => ['name' => 'Friulian', 'script' => 'Latn', 'native' => 'furlan', 'regional' => 'fur_IT'], + //'fo' => ['name' => 'Faroese', 'script' => 'Latn', 'native' => 'føroyskt', 'regional' => 'fo_FO'], + //'gaa' => ['name' => 'Ga', 'script' => 'Latn', 'native' => 'Ga', 'regional' => ''], + //'ga' => ['name' => 'Irish', 'script' => 'Latn', 'native' => 'Gaeilge', 'regional' => 'ga_IE'], + //'gv' => ['name' => 'Manx', 'script' => 'Latn', 'native' => 'Gaelg', 'regional' => 'gv_GB'], + //'sm' => ['name' => 'Samoan', 'script' => 'Latn', 'native' => 'Gagana fa’a Sāmoa', 'regional' => ''], + //'gl' => ['name' => 'Galician', 'script' => 'Latn', 'native' => 'galego', 'regional' => 'gl_ES'], + //'ki' => ['name' => 'Kikuyu', 'script' => 'Latn', 'native' => 'Gikuyu', 'regional' => ''], + //'gd' => ['name' => 'Scottish Gaelic', 'script' => 'Latn', 'native' => 'Gàidhlig', 'regional' => 'gd_GB'], + //'ha' => ['name' => 'Hausa', 'script' => 'Latn', 'native' => 'Hausa', 'regional' => 'ha_NG'], + //'bez' => ['name' => 'Bena', 'script' => 'Latn', 'native' => 'Hibena', 'regional' => ''], + //'ho' => ['name' => 'Hiri Motu', 'script' => 'Latn', 'native' => 'Hiri Motu', 'regional' => ''], + //'hr' => ['name' => 'Croatian', 'script' => 'Latn', 'native' => 'hrvatski', 'regional' => 'hr_HR'], + //'bem' => ['name' => 'Bemba', 'script' => 'Latn', 'native' => 'Ichibemba', 'regional' => 'bem_ZM'], + //'io' => ['name' => 'Ido', 'script' => 'Latn', 'native' => 'Ido', 'regional' => ''], + //'ig' => ['name' => 'Igbo', 'script' => 'Latn', 'native' => 'Igbo', 'regional' => 'ig_NG'], + //'rn' => ['name' => 'Rundi', 'script' => 'Latn', 'native' => 'Ikirundi', 'regional' => ''], + //'ia' => ['name' => 'Interlingua', 'script' => 'Latn', 'native' => 'interlingua', 'regional' => 'ia_FR'], + //'iu-Latn' => ['name' => 'Inuktitut (Latin)', 'script' => 'Latn', 'native' => 'Inuktitut', 'regional' => 'iu_CA'], + //'sbp' => ['name' => 'Sileibi', 'script' => 'Latn', 'native' => 'Ishisangu', 'regional' => ''], + //'nd' => ['name' => 'North Ndebele', 'script' => 'Latn', 'native' => 'isiNdebele', 'regional' => ''], + //'nr' => ['name' => 'South Ndebele', 'script' => 'Latn', 'native' => 'isiNdebele', 'regional' => 'nr_ZA'], + //'xh' => ['name' => 'Xhosa', 'script' => 'Latn', 'native' => 'isiXhosa', 'regional' => 'xh_ZA'], + //'zu' => ['name' => 'Zulu', 'script' => 'Latn', 'native' => 'isiZulu', 'regional' => 'zu_ZA'], + //'it' => ['name' => 'Italian', 'script' => 'Latn', 'native' => 'italiano', 'regional' => 'it_IT'], + //'ik' => ['name' => 'Inupiaq', 'script' => 'Latn', 'native' => 'Iñupiaq', 'regional' => 'ik_CA'], + //'dyo' => ['name' => 'Jola-Fonyi', 'script' => 'Latn', 'native' => 'joola', 'regional' => ''], + //'kea' => ['name' => 'Kabuverdianu', 'script' => 'Latn', 'native' => 'kabuverdianu', 'regional' => ''], + //'kaj' => ['name' => 'Jju', 'script' => 'Latn', 'native' => 'Kaje', 'regional' => ''], + //'mh' => ['name' => 'Marshallese', 'script' => 'Latn', 'native' => 'Kajin M̧ajeļ', 'regional' => 'mh_MH'], + //'kl' => ['name' => 'Kalaallisut', 'script' => 'Latn', 'native' => 'kalaallisut', 'regional' => 'kl_GL'], + //'kln' => ['name' => 'Kalenjin', 'script' => 'Latn', 'native' => 'Kalenjin', 'regional' => ''], + //'kr' => ['name' => 'Kanuri', 'script' => 'Latn', 'native' => 'Kanuri', 'regional' => ''], + //'kcg' => ['name' => 'Tyap', 'script' => 'Latn', 'native' => 'Katab', 'regional' => ''], + //'kw' => ['name' => 'Cornish', 'script' => 'Latn', 'native' => 'kernewek', 'regional' => 'kw_GB'], + //'naq' => ['name' => 'Nama', 'script' => 'Latn', 'native' => 'Khoekhoegowab', 'regional' => ''], + //'rof' => ['name' => 'Rombo', 'script' => 'Latn', 'native' => 'Kihorombo', 'regional' => ''], + //'kam' => ['name' => 'Kamba', 'script' => 'Latn', 'native' => 'Kikamba', 'regional' => ''], + //'kg' => ['name' => 'Kongo', 'script' => 'Latn', 'native' => 'Kikongo', 'regional' => ''], + //'jmc' => ['name' => 'Machame', 'script' => 'Latn', 'native' => 'Kimachame', 'regional' => ''], + //'rw' => ['name' => 'Kinyarwanda', 'script' => 'Latn', 'native' => 'Kinyarwanda', 'regional' => 'rw_RW'], + //'asa' => ['name' => 'Kipare', 'script' => 'Latn', 'native' => 'Kipare', 'regional' => ''], + //'rwk' => ['name' => 'Rwa', 'script' => 'Latn', 'native' => 'Kiruwa', 'regional' => ''], + //'saq' => ['name' => 'Samburu', 'script' => 'Latn', 'native' => 'Kisampur', 'regional' => ''], + //'ksb' => ['name' => 'Shambala', 'script' => 'Latn', 'native' => 'Kishambaa', 'regional' => ''], + //'swc' => ['name' => 'Congo Swahili', 'script' => 'Latn', 'native' => 'Kiswahili ya Kongo', 'regional' => ''], + //'sw' => ['name' => 'Swahili', 'script' => 'Latn', 'native' => 'Kiswahili', 'regional' => 'sw_KE'], + //'dav' => ['name' => 'Dawida', 'script' => 'Latn', 'native' => 'Kitaita', 'regional' => ''], + //'teo' => ['name' => 'Teso', 'script' => 'Latn', 'native' => 'Kiteso', 'regional' => ''], + //'khq' => ['name' => 'Koyra Chiini', 'script' => 'Latn', 'native' => 'Koyra ciini', 'regional' => ''], + //'ses' => ['name' => 'Songhay', 'script' => 'Latn', 'native' => 'Koyraboro senni', 'regional' => ''], + //'mfe' => ['name' => 'Morisyen', 'script' => 'Latn', 'native' => 'kreol morisien', 'regional' => ''], + //'ht' => ['name' => 'Haitian', 'script' => 'Latn', 'native' => 'Kreyòl ayisyen', 'regional' => 'ht_HT'], + //'kj' => ['name' => 'Kuanyama', 'script' => 'Latn', 'native' => 'Kwanyama', 'regional' => ''], + //'ksh' => ['name' => 'Kölsch', 'script' => 'Latn', 'native' => 'Kölsch', 'regional' => ''], + //'ebu' => ['name' => 'Kiembu', 'script' => 'Latn', 'native' => 'Kĩembu', 'regional' => ''], + //'mer' => ['name' => 'Kimîîru', 'script' => 'Latn', 'native' => 'Kĩmĩrũ', 'regional' => ''], + //'lag' => ['name' => 'Langi', 'script' => 'Latn', 'native' => 'Kɨlaangi', 'regional' => ''], + //'lah' => ['name' => 'Lahnda', 'script' => 'Latn', 'native' => 'Lahnda', 'regional' => ''], + //'la' => ['name' => 'Latin', 'script' => 'Latn', 'native' => 'latine', 'regional' => ''], + //'lv' => ['name' => 'Latvian', 'script' => 'Latn', 'native' => 'latviešu', 'regional' => 'lv_LV'], + //'to' => ['name' => 'Tongan', 'script' => 'Latn', 'native' => 'lea fakatonga', 'regional' => ''], + //'lt' => ['name' => 'Lithuanian', 'script' => 'Latn', 'native' => 'lietuvių', 'regional' => 'lt_LT'], + //'li' => ['name' => 'Limburgish', 'script' => 'Latn', 'native' => 'Limburgs', 'regional' => 'li_BE'], + //'ln' => ['name' => 'Lingala', 'script' => 'Latn', 'native' => 'lingála', 'regional' => ''], + //'lg' => ['name' => 'Ganda', 'script' => 'Latn', 'native' => 'Luganda', 'regional' => 'lg_UG'], + //'luy' => ['name' => 'Oluluyia', 'script' => 'Latn', 'native' => 'Luluhia', 'regional' => ''], + //'lb' => ['name' => 'Luxembourgish', 'script' => 'Latn', 'native' => 'Lëtzebuergesch', 'regional' => 'lb_LU'], + //'hu' => ['name' => 'Hungarian', 'script' => 'Latn', 'native' => 'magyar', 'regional' => 'hu_HU'], + //'mgh' => ['name' => 'Makhuwa-Meetto', 'script' => 'Latn', 'native' => 'Makua', 'regional' => ''], + //'mg' => ['name' => 'Malagasy', 'script' => 'Latn', 'native' => 'Malagasy', 'regional' => 'mg_MG'], + //'mt' => ['name' => 'Maltese', 'script' => 'Latn', 'native' => 'Malti', 'regional' => 'mt_MT'], + //'mtr' => ['name' => 'Mewari', 'script' => 'Latn', 'native' => 'Mewari', 'regional' => ''], + //'mua' => ['name' => 'Mundang', 'script' => 'Latn', 'native' => 'Mundang', 'regional' => ''], + //'mi' => ['name' => 'Māori', 'script' => 'Latn', 'native' => 'Māori', 'regional' => 'mi_NZ'], + //'nl' => ['name' => 'Dutch', 'script' => 'Latn', 'native' => 'Nederlands', 'regional' => 'nl_NL'], + //'nmg' => ['name' => 'Kwasio', 'script' => 'Latn', 'native' => 'ngumba', 'regional' => ''], + //'yav' => ['name' => 'Yangben', 'script' => 'Latn', 'native' => 'nuasue', 'regional' => ''], + //'nn' => ['name' => 'Norwegian Nynorsk', 'script' => 'Latn', 'native' => 'nynorsk', 'regional' => 'nn_NO'], + //'oc' => ['name' => 'Occitan', 'script' => 'Latn', 'native' => 'occitan', 'regional' => 'oc_FR'], + //'ang' => ['name' => 'Old English', 'script' => 'Runr', 'native' => 'Old English', 'regional' => ''], + //'xog' => ['name' => 'Soga', 'script' => 'Latn', 'native' => 'Olusoga', 'regional' => ''], + //'om' => ['name' => 'Oromo', 'script' => 'Latn', 'native' => 'Oromoo', 'regional' => 'om_ET'], + //'ng' => ['name' => 'Ndonga', 'script' => 'Latn', 'native' => 'OshiNdonga', 'regional' => ''], + //'hz' => ['name' => 'Herero', 'script' => 'Latn', 'native' => 'Otjiherero', 'regional' => ''], + //'uz-Latn' => ['name' => 'Uzbek (Latin)', 'script' => 'Latn', 'native' => 'oʼzbekcha', 'regional' => 'uz_UZ'], + //'nds' => ['name' => 'Low German', 'script' => 'Latn', 'native' => 'Plattdüütsch', 'regional' => 'nds_DE'], + 'pl' => ['name' => 'Polish', 'script' => 'Latn', 'native' => 'polski', 'regional' => 'pl_PL'], + //'pt' => ['name' => 'Portuguese', 'script' => 'Latn', 'native' => 'português', 'regional' => 'pt_PT'], + //'pt-BR' => ['name' => 'Brazilian Portuguese', 'script' => 'Latn', 'native' => 'português do Brasil', 'regional' => 'pt_BR'], + //'ff' => ['name' => 'Fulah', 'script' => 'Latn', 'native' => 'Pulaar', 'regional' => 'ff_SN'], + //'pi' => ['name' => 'Pahari-Potwari', 'script' => 'Latn', 'native' => 'Pāli', 'regional' => ''], + //'aa' => ['name' => 'Afar', 'script' => 'Latn', 'native' => 'Qafar', 'regional' => 'aa_ER'], + //'ty' => ['name' => 'Tahitian', 'script' => 'Latn', 'native' => 'Reo Māohi', 'regional' => ''], + //'ksf' => ['name' => 'Bafia', 'script' => 'Latn', 'native' => 'rikpa', 'regional' => ''], + //'ro' => ['name' => 'Romanian', 'script' => 'Latn', 'native' => 'română', 'regional' => 'ro_RO'], + //'cgg' => ['name' => 'Chiga', 'script' => 'Latn', 'native' => 'Rukiga', 'regional' => ''], + //'rm' => ['name' => 'Romansh', 'script' => 'Latn', 'native' => 'rumantsch', 'regional' => ''], + //'qu' => ['name' => 'Quechua', 'script' => 'Latn', 'native' => 'Runa Simi', 'regional' => ''], + //'nyn' => ['name' => 'Nyankole', 'script' => 'Latn', 'native' => 'Runyankore', 'regional' => ''], + //'ssy' => ['name' => 'Saho', 'script' => 'Latn', 'native' => 'Saho', 'regional' => ''], + //'sc' => ['name' => 'Sardinian', 'script' => 'Latn', 'native' => 'sardu', 'regional' => 'sc_IT'], + //'de-CH' => ['name' => 'Swiss High German', 'script' => 'Latn', 'native' => 'Schweizer Hochdeutsch', 'regional' => 'de_CH'], + //'gsw' => ['name' => 'Swiss German', 'script' => 'Latn', 'native' => 'Schwiizertüütsch', 'regional' => ''], + //'trv' => ['name' => 'Taroko', 'script' => 'Latn', 'native' => 'Seediq', 'regional' => ''], + //'seh' => ['name' => 'Sena', 'script' => 'Latn', 'native' => 'sena', 'regional' => ''], + //'nso' => ['name' => 'Northern Sotho', 'script' => 'Latn', 'native' => 'Sesotho sa Leboa', 'regional' => 'nso_ZA'], + //'st' => ['name' => 'Southern Sotho', 'script' => 'Latn', 'native' => 'Sesotho', 'regional' => 'st_ZA'], + //'tn' => ['name' => 'Tswana', 'script' => 'Latn', 'native' => 'Setswana', 'regional' => 'tn_ZA'], + //'sq' => ['name' => 'Albanian', 'script' => 'Latn', 'native' => 'shqip', 'regional' => 'sq_AL'], + //'sid' => ['name' => 'Sidamo', 'script' => 'Latn', 'native' => 'Sidaamu Afo', 'regional' => 'sid_ET'], + //'ss' => ['name' => 'Swati', 'script' => 'Latn', 'native' => 'Siswati', 'regional' => 'ss_ZA'], + //'sk' => ['name' => 'Slovak', 'script' => 'Latn', 'native' => 'slovenčina', 'regional' => 'sk_SK'], + //'sl' => ['name' => 'Slovene', 'script' => 'Latn', 'native' => 'slovenščina', 'regional' => 'sl_SI'], + //'so' => ['name' => 'Somali', 'script' => 'Latn', 'native' => 'Soomaali', 'regional' => 'so_SO'], + //'sr-Latn' => ['name' => 'Serbian (Latin)', 'script' => 'Latn', 'native' => 'Srpski', 'regional' => 'sr_RS'], + //'sh' => ['name' => 'Serbo-Croatian', 'script' => 'Latn', 'native' => 'srpskohrvatski', 'regional' => ''], + //'fi' => ['name' => 'Finnish', 'script' => 'Latn', 'native' => 'suomi', 'regional' => 'fi_FI'], + //'sv' => ['name' => 'Swedish', 'script' => 'Latn', 'native' => 'svenska', 'regional' => 'sv_SE'], + //'sg' => ['name' => 'Sango', 'script' => 'Latn', 'native' => 'Sängö', 'regional' => ''], + //'tl' => ['name' => 'Tagalog', 'script' => 'Latn', 'native' => 'Tagalog', 'regional' => 'tl_PH'], + //'tzm-Latn' => ['name' => 'Central Atlas Tamazight (Latin)', 'script' => 'Latn', 'native' => 'Tamazight', 'regional' => ''], + //'kab' => ['name' => 'Kabyle', 'script' => 'Latn', 'native' => 'Taqbaylit', 'regional' => 'kab_DZ'], + //'twq' => ['name' => 'Tasawaq', 'script' => 'Latn', 'native' => 'Tasawaq senni', 'regional' => ''], + //'shi' => ['name' => 'Tachelhit (Latin)', 'script' => 'Latn', 'native' => 'Tashelhit', 'regional' => ''], + //'nus' => ['name' => 'Nuer', 'script' => 'Latn', 'native' => 'Thok Nath', 'regional' => ''], + //'vi' => ['name' => 'Vietnamese', 'script' => 'Latn', 'native' => 'Tiếng Việt', 'regional' => 'vi_VN'], + //'tg-Latn' => ['name' => 'Tajik (Latin)', 'script' => 'Latn', 'native' => 'tojikī', 'regional' => 'tg_TJ'], + //'lu' => ['name' => 'Luba-Katanga', 'script' => 'Latn', 'native' => 'Tshiluba', 'regional' => 've_ZA'], + //'ve' => ['name' => 'Venda', 'script' => 'Latn', 'native' => 'Tshivenḓa', 'regional' => ''], + //'tw' => ['name' => 'Twi', 'script' => 'Latn', 'native' => 'Twi', 'regional' => ''], + //'tr' => ['name' => 'Turkish', 'script' => 'Latn', 'native' => 'Türkçe', 'regional' => 'tr_TR'], + //'ale' => ['name' => 'Aleut', 'script' => 'Latn', 'native' => 'Unangax tunuu', 'regional' => ''], + //'ca-valencia' => ['name' => 'Valencian', 'script' => 'Latn', 'native' => 'valencià', 'regional' => ''], + //'vai-Latn' => ['name' => 'Vai (Latin)', 'script' => 'Latn', 'native' => 'Viyamíĩ', 'regional' => ''], + //'vo' => ['name' => 'Volapük', 'script' => 'Latn', 'native' => 'Volapük', 'regional' => ''], + //'fj' => ['name' => 'Fijian', 'script' => 'Latn', 'native' => 'vosa Vakaviti', 'regional' => ''], + //'wa' => ['name' => 'Walloon', 'script' => 'Latn', 'native' => 'Walon', 'regional' => 'wa_BE'], + //'wae' => ['name' => 'Walser', 'script' => 'Latn', 'native' => 'Walser', 'regional' => 'wae_CH'], + //'wen' => ['name' => 'Sorbian', 'script' => 'Latn', 'native' => 'Wendic', 'regional' => ''], + //'wo' => ['name' => 'Wolof', 'script' => 'Latn', 'native' => 'Wolof', 'regional' => 'wo_SN'], + //'ts' => ['name' => 'Tsonga', 'script' => 'Latn', 'native' => 'Xitsonga', 'regional' => 'ts_ZA'], + //'dje' => ['name' => 'Zarma', 'script' => 'Latn', 'native' => 'Zarmaciine', 'regional' => ''], + //'yo' => ['name' => 'Yoruba', 'script' => 'Latn', 'native' => 'Èdè Yorùbá', 'regional' => 'yo_NG'], + //'de-AT' => ['name' => 'Austrian German', 'script' => 'Latn', 'native' => 'Österreichisches Deutsch', 'regional' => 'de_AT'], + //'is' => ['name' => 'Icelandic', 'script' => 'Latn', 'native' => 'íslenska', 'regional' => 'is_IS'], + //'cs' => ['name' => 'Czech', 'script' => 'Latn', 'native' => 'čeština', 'regional' => 'cs_CZ'], + //'bas' => ['name' => 'Basa', 'script' => 'Latn', 'native' => 'Ɓàsàa', 'regional' => ''], + //'mas' => ['name' => 'Masai', 'script' => 'Latn', 'native' => 'ɔl-Maa', 'regional' => ''], + //'haw' => ['name' => 'Hawaiian', 'script' => 'Latn', 'native' => 'ʻŌlelo Hawaiʻi', 'regional' => ''], + //'el' => ['name' => 'Greek', 'script' => 'Grek', 'native' => 'Ελληνικά', 'regional' => 'el_GR'], + //'uz' => ['name' => 'Uzbek (Cyrillic)', 'script' => 'Cyrl', 'native' => 'Ўзбек', 'regional' => 'uz_UZ'], + //'az-Cyrl' => ['name' => 'Azerbaijani (Cyrillic)', 'script' => 'Cyrl', 'native' => 'Азәрбајҹан', 'regional' => 'uz_UZ'], + //'ab' => ['name' => 'Abkhazian', 'script' => 'Cyrl', 'native' => 'Аҧсуа', 'regional' => ''], + //'os' => ['name' => 'Ossetic', 'script' => 'Cyrl', 'native' => 'Ирон', 'regional' => 'os_RU'], + //'ky' => ['name' => 'Kyrgyz', 'script' => 'Cyrl', 'native' => 'Кыргыз', 'regional' => 'ky_KG'], + //'sr' => ['name' => 'Serbian (Cyrillic)', 'script' => 'Cyrl', 'native' => 'Српски', 'regional' => 'sr_RS'], + //'av' => ['name' => 'Avaric', 'script' => 'Cyrl', 'native' => 'авар мацӀ', 'regional' => ''], + //'ady' => ['name' => 'Adyghe', 'script' => 'Cyrl', 'native' => 'адыгэбзэ', 'regional' => ''], + //'ba' => ['name' => 'Bashkir', 'script' => 'Cyrl', 'native' => 'башҡорт теле', 'regional' => ''], + //'be' => ['name' => 'Belarusian', 'script' => 'Cyrl', 'native' => 'беларуская', 'regional' => 'be_BY'], + //'bg' => ['name' => 'Bulgarian', 'script' => 'Cyrl', 'native' => 'български', 'regional' => 'bg_BG'], + //'kv' => ['name' => 'Komi', 'script' => 'Cyrl', 'native' => 'коми кыв', 'regional' => ''], + //'mk' => ['name' => 'Macedonian', 'script' => 'Cyrl', 'native' => 'македонски', 'regional' => 'mk_MK'], + //'mn' => ['name' => 'Mongolian (Cyrillic)', 'script' => 'Cyrl', 'native' => 'монгол', 'regional' => 'mn_MN'], + //'ce' => ['name' => 'Chechen', 'script' => 'Cyrl', 'native' => 'нохчийн мотт', 'regional' => 'ce_RU'], + //'ru' => ['name' => 'Russian', 'script' => 'Cyrl', 'native' => 'русский', 'regional' => 'ru_RU'], + //'sah' => ['name' => 'Yakut', 'script' => 'Cyrl', 'native' => 'саха тыла', 'regional' => ''], + //'tt' => ['name' => 'Tatar', 'script' => 'Cyrl', 'native' => 'татар теле', 'regional' => 'tt_RU'], + //'tg' => ['name' => 'Tajik (Cyrillic)', 'script' => 'Cyrl', 'native' => 'тоҷикӣ', 'regional' => 'tg_TJ'], + //'tk' => ['name' => 'Turkmen', 'script' => 'Cyrl', 'native' => 'түркменче', 'regional' => 'tk_TM'], + //'uk' => ['name' => 'Ukrainian', 'script' => 'Cyrl', 'native' => 'українська', 'regional' => 'uk_UA'], + //'cv' => ['name' => 'Chuvash', 'script' => 'Cyrl', 'native' => 'чӑваш чӗлхи', 'regional' => 'cv_RU'], + //'cu' => ['name' => 'Church Slavic', 'script' => 'Cyrl', 'native' => 'ѩзыкъ словѣньскъ', 'regional' => ''], + //'kk' => ['name' => 'Kazakh', 'script' => 'Cyrl', 'native' => 'қазақ тілі', 'regional' => 'kk_KZ'], + //'hy' => ['name' => 'Armenian', 'script' => 'Armn', 'native' => 'Հայերեն', 'regional' => 'hy_AM'], + //'yi' => ['name' => 'Yiddish', 'script' => 'Hebr', 'native' => 'ייִדיש', 'regional' => 'yi_US'], + //'he' => ['name' => 'Hebrew', 'script' => 'Hebr', 'native' => 'עברית', 'regional' => 'he_IL'], + //'ug' => ['name' => 'Uyghur', 'script' => 'Arab', 'native' => 'ئۇيغۇرچە', 'regional' => 'ug_CN'], + //'ur' => ['name' => 'Urdu', 'script' => 'Arab', 'native' => 'اردو', 'regional' => 'ur_PK'], + //'ar' => ['name' => 'Arabic', 'script' => 'Arab', 'native' => 'العربية', 'regional' => 'ar_AE'], + //'uz-Arab' => ['name' => 'Uzbek (Arabic)', 'script' => 'Arab', 'native' => 'اۉزبېک', 'regional' => ''], + //'tg-Arab' => ['name' => 'Tajik (Arabic)', 'script' => 'Arab', 'native' => 'تاجیکی', 'regional' => 'tg_TJ'], + //'sd' => ['name' => 'Sindhi', 'script' => 'Arab', 'native' => 'سنڌي', 'regional' => 'sd_IN'], + //'fa' => ['name' => 'Persian', 'script' => 'Arab', 'native' => 'فارسی', 'regional' => 'fa_IR'], + //'pa-Arab' => ['name' => 'Punjabi (Arabic)', 'script' => 'Arab', 'native' => 'پنجاب', 'regional' => 'pa_IN'], + //'ps' => ['name' => 'Pashto', 'script' => 'Arab', 'native' => 'پښتو', 'regional' => 'ps_AF'], + //'ks' => ['name' => 'Kashmiri (Arabic)', 'script' => 'Arab', 'native' => 'کأشُر', 'regional' => 'ks_IN'], + //'ku' => ['name' => 'Kurdish', 'script' => 'Arab', 'native' => 'کوردی', 'regional' => 'ku_TR'], + //'dv' => ['name' => 'Divehi', 'script' => 'Thaa', 'native' => 'ދިވެހިބަސް', 'regional' => 'dv_MV'], + //'ks-Deva' => ['name' => 'Kashmiri (Devaganari)', 'script' => 'Deva', 'native' => 'कॉशुर', 'regional' => 'ks_IN'], + //'kok' => ['name' => 'Konkani', 'script' => 'Deva', 'native' => 'कोंकणी', 'regional' => 'kok_IN'], + //'doi' => ['name' => 'Dogri', 'script' => 'Deva', 'native' => 'डोगरी', 'regional' => 'doi_IN'], + //'ne' => ['name' => 'Nepali', 'script' => 'Deva', 'native' => 'नेपाली', 'regional' => ''], + //'pra' => ['name' => 'Prakrit', 'script' => 'Deva', 'native' => 'प्राकृत', 'regional' => ''], + //'brx' => ['name' => 'Bodo', 'script' => 'Deva', 'native' => 'बड़ो', 'regional' => 'brx_IN'], + //'bra' => ['name' => 'Braj', 'script' => 'Deva', 'native' => 'ब्रज भाषा', 'regional' => ''], + //'mr' => ['name' => 'Marathi', 'script' => 'Deva', 'native' => 'मराठी', 'regional' => 'mr_IN'], + //'mai' => ['name' => 'Maithili', 'script' => 'Tirh', 'native' => 'मैथिली', 'regional' => 'mai_IN'], + //'raj' => ['name' => 'Rajasthani', 'script' => 'Deva', 'native' => 'राजस्थानी', 'regional' => ''], + //'sa' => ['name' => 'Sanskrit', 'script' => 'Deva', 'native' => 'संस्कृतम्', 'regional' => 'sa_IN'], + //'hi' => ['name' => 'Hindi', 'script' => 'Deva', 'native' => 'हिन्दी', 'regional' => 'hi_IN'], + //'as' => ['name' => 'Assamese', 'script' => 'Beng', 'native' => 'অসমীয়া', 'regional' => 'as_IN'], + //'bn' => ['name' => 'Bengali', 'script' => 'Beng', 'native' => 'বাংলা', 'regional' => 'bn_BD'], + //'mni' => ['name' => 'Manipuri', 'script' => 'Beng', 'native' => 'মৈতৈ', 'regional' => 'mni_IN'], + //'pa' => ['name' => 'Punjabi (Gurmukhi)', 'script' => 'Guru', 'native' => 'ਪੰਜਾਬੀ', 'regional' => 'pa_IN'], + //'gu' => ['name' => 'Gujarati', 'script' => 'Gujr', 'native' => 'ગુજરાતી', 'regional' => 'gu_IN'], + //'or' => ['name' => 'Oriya', 'script' => 'Orya', 'native' => 'ଓଡ଼ିଆ', 'regional' => 'or_IN'], + //'ta' => ['name' => 'Tamil', 'script' => 'Taml', 'native' => 'தமிழ்', 'regional' => 'ta_IN'], + //'te' => ['name' => 'Telugu', 'script' => 'Telu', 'native' => 'తెలుగు', 'regional' => 'te_IN'], + //'kn' => ['name' => 'Kannada', 'script' => 'Knda', 'native' => 'ಕನ್ನಡ', 'regional' => 'kn_IN'], + //'ml' => ['name' => 'Malayalam', 'script' => 'Mlym', 'native' => 'മലയാളം', 'regional' => 'ml_IN'], + //'si' => ['name' => 'Sinhala', 'script' => 'Sinh', 'native' => 'සිංහල', 'regional' => 'si_LK'], + //'th' => ['name' => 'Thai', 'script' => 'Thai', 'native' => 'ไทย', 'regional' => 'th_TH'], + //'lo' => ['name' => 'Lao', 'script' => 'Laoo', 'native' => 'ລາວ', 'regional' => 'lo_LA'], + //'bo' => ['name' => 'Tibetan', 'script' => 'Tibt', 'native' => 'པོད་སྐད་', 'regional' => 'bo_IN'], + //'dz' => ['name' => 'Dzongkha', 'script' => 'Tibt', 'native' => 'རྫོང་ཁ', 'regional' => 'dz_BT'], + //'my' => ['name' => 'Burmese', 'script' => 'Mymr', 'native' => 'မြန်မာဘာသာ', 'regional' => 'my_MM'], + //'ka' => ['name' => 'Georgian', 'script' => 'Geor', 'native' => 'ქართული', 'regional' => 'ka_GE'], + //'byn' => ['name' => 'Blin', 'script' => 'Ethi', 'native' => 'ብሊን', 'regional' => 'byn_ER'], + //'tig' => ['name' => 'Tigre', 'script' => 'Ethi', 'native' => 'ትግረ', 'regional' => 'tig_ER'], + //'ti' => ['name' => 'Tigrinya', 'script' => 'Ethi', 'native' => 'ትግርኛ', 'regional' => 'ti_ET'], + //'am' => ['name' => 'Amharic', 'script' => 'Ethi', 'native' => 'አማርኛ', 'regional' => 'am_ET'], + //'wal' => ['name' => 'Wolaytta', 'script' => 'Ethi', 'native' => 'ወላይታቱ', 'regional' => 'wal_ET'], + //'chr' => ['name' => 'Cherokee', 'script' => 'Cher', 'native' => 'ᏣᎳᎩ', 'regional' => ''], + //'iu' => ['name' => 'Inuktitut (Canadian Aboriginal Syllabics)', 'script' => 'Cans', 'native' => 'ᐃᓄᒃᑎᑐᑦ', 'regional' => 'iu_CA'], + //'oj' => ['name' => 'Ojibwa', 'script' => 'Cans', 'native' => 'ᐊᓂᔑᓈᐯᒧᐎᓐ', 'regional' => ''], + //'cr' => ['name' => 'Cree', 'script' => 'Cans', 'native' => 'ᓀᐦᐃᔭᐍᐏᐣ', 'regional' => ''], + //'km' => ['name' => 'Khmer', 'script' => 'Khmr', 'native' => 'ភាសាខ្មែរ', 'regional' => 'km_KH'], + //'mn-Mong' => ['name' => 'Mongolian (Mongolian)', 'script' => 'Mong', 'native' => 'ᠮᠣᠨᠭᠭᠣᠯ ᠬᠡᠯᠡ', 'regional' => 'mn_MN'], + //'shi-Tfng' => ['name' => 'Tachelhit (Tifinagh)', 'script' => 'Tfng', 'native' => 'ⵜⴰⵎⴰⵣⵉⵖⵜ', 'regional' => ''], + //'tzm' => ['name' => 'Central Atlas Tamazight (Tifinagh)','script' => 'Tfng', 'native' => 'ⵜⴰⵎⴰⵣⵉⵖⵜ', 'regional' => ''], + //'yue' => ['name' => 'Yue', 'script' => 'Hant', 'native' => '廣州話', 'regional' => 'yue_HK'], + //'ja' => ['name' => 'Japanese', 'script' => 'Jpan', 'native' => '日本語', 'regional' => 'ja_JP'], + //'zh' => ['name' => 'Chinese (Simplified)', 'script' => 'Hans', 'native' => '简体中文', 'regional' => 'zh_CN'], + //'zh-Hant' => ['name' => 'Chinese (Traditional)', 'script' => 'Hant', 'native' => '繁體中文', 'regional' => 'zh_CN'], + //'ii' => ['name' => 'Sichuan Yi', 'script' => 'Yiii', 'native' => 'ꆈꌠꉙ', 'regional' => ''], + //'vai' => ['name' => 'Vai (Vai)', 'script' => 'Vaii', 'native' => 'ꕙꔤ', 'regional' => ''], + //'jv-Java' => ['name' => 'Javanese (Javanese)', 'script' => 'Java', 'native' => 'ꦧꦱꦗꦮ', 'regional' => ''], + //'ko' => ['name' => 'Korean', 'script' => 'Hang', 'native' => '한국어', 'regional' => 'ko_KR'], + ], + + // Negotiate for the user locale using the Accept-Language header if it's not defined in the URL? + // If false, system will take app.php locale attribute + 'useAcceptLanguageHeader' => false, + + // If LaravelLocalizationRedirectFilter is active and hideDefaultLocaleInURL + // is true, the url would not have the default application language + // + // IMPORTANT - When hideDefaultLocaleInURL is set to true, the unlocalized root is treated as the applications default locale "app.locale". + // Because of this language negotiation using the Accept-Language header will NEVER occur when hideDefaultLocaleInURL is true. + // + 'hideDefaultLocaleInURL' => true, + + // If you want to display the locales in particular order in the language selector you should write the order here. + //CAUTION: Please consider using the appropriate locale code otherwise it will not work + //Example: 'localesOrder' => ['es','en'], + 'localesOrder' => ["en", "pl"], + +]; diff --git a/public/assets/images/backup.xcf b/public/assets/images/backup.xcf new file mode 100644 index 00000000..dcf74ddd Binary files /dev/null and b/public/assets/images/backup.xcf differ diff --git a/public/assets/javascript/app-public.js b/public/assets/javascript/app-public.js index a6b12a06..83ccd158 100644 --- a/public/assets/javascript/app-public.js +++ b/public/assets/javascript/app-public.js @@ -28,8 +28,7 @@ $(function() { } toggleSubmitDisabled($submitButton); - showMessage('Whoops!, it looks like the server returned an error.\n\ - Please try again, or contact the webmaster if the problem persists.'); + showMessage(lang("whoops")); }, success: function(data, statusText, xhr, $form) { var $submitButton = $form.find('input[type=submit]'); @@ -86,17 +85,17 @@ $(function() { if (!Stripe.validateCardNumber($cardNumber.val())) { - showFormError($cardNumber, 'The credit card number appears to be invalid.'); + showFormError($cardNumber, lang("credit_card_error")); noErrors = false; } if (!Stripe.validateCVC($cvcNumber.val())) { - showFormError($cvcNumber, 'The CVC number appears to be invalid.'); + showFormError($cardNumber, lang("cvc_error")); noErrors = false; } if (!Stripe.validateExpiry($expiryMonth.val(), $expiryYear.val())) { - showFormError($expiryMonth, 'The expiration date appears to be invalid.'); + showFormError($cardNumber, lang("expiry_error")); showFormError($expiryYear, ''); noErrors = false; } @@ -113,7 +112,10 @@ $(function() { if (response.error) { clearFormErrors($('.payment-form')); - showFormError($('*[data-stripe=' + response.error.param + ']', $('.payment-form')), response.error.message); + if(response.error.param.length>0) + showFormError($('*[data-stripe=' + response.error.param + ']', $('.payment-form')), response.error.message); + else + showMessage(response.error.message); toggleSubmitDisabled($submitButton); } else { var token = response.id; @@ -123,7 +125,7 @@ $(function() { }); } else { - showMessage('Please check your card details and try again.'); + showMessage(lang("card_validation_error")); toggleSubmitDisabled($submitButton); } @@ -221,7 +223,7 @@ function toggleSubmitDisabled($submitButton) { $submitButton.data('original-text', $submitButton.val()) .attr('disabled', true) .addClass('disabled') - .val('Just a second...'); + .val(lang("processing")); } /** @@ -284,18 +286,18 @@ function setCountdown($element, seconds) { function updateTimer() { msLeft = endTime - (+new Date); if (msLeft < 1000) { - alert("You have run out of time! You will have to restart the order process."); + alert(lang("time_run_out")); location.reload(); } else { if (msLeft < 120000 && !twoMinWarningShown) { - showMessage("You only have 2 minutes left to complete this order!"); + showMessage(lang("just_2_minutes")); twoMinWarningShown = true; } time = new Date(msLeft); mins = time.getUTCMinutes(); - $element.html('' + mins + ' minutes and ' + twoDigits(time.getUTCSeconds()) + ' seconds'); + $element.html('' + mins + ':' + twoDigits(time.getUTCSeconds()) + ''); setTimeout(updateTimer, time.getUTCMilliseconds() + 500); } } diff --git a/public/assets/javascript/app.js b/public/assets/javascript/app.js index 98941a9e..79b6db79 100644 --- a/public/assets/javascript/app.js +++ b/public/assets/javascript/app.js @@ -142,6 +142,7 @@ $(function () { $button = $(this); $('.modal').remove(); + $('.modal-backdrop').remove(); $('html').addClass('working'); $.ajax({ @@ -172,7 +173,7 @@ $(function () { } }).done().fail(function (data) { $('html').removeClass('working'); - showMessage('Whoops!, something has gone wrong.

' + data.status + ' ' + data.statusText); + showMessage(lang("whoops_and_error", {"code": data.status, "error": data.statusText})); }); e.preventDefault(); @@ -455,7 +456,7 @@ function removeQuestionOption(removeBtn) if (tbody.find('tr').length > 1) { removeBtn.parents('tr').remove(); } else { - alert('You must have at least one option.'); + alert(lang("at_least_one_option")); } } diff --git a/public/assets/javascript/backend.js b/public/assets/javascript/backend.js index a2d4ae42..68a81bdf 100644 --- a/public/assets/javascript/backend.js +++ b/public/assets/javascript/backend.js @@ -9122,6 +9122,7 @@ $.cf = { $button = $(this); $('.modal').remove(); + $('.modal-backdrop').remove(); $('html').addClass('working'); $.ajax({ @@ -9152,7 +9153,7 @@ $.cf = { } }).done().fail(function (data) { $('html').removeClass('working'); - showMessage('Whoops!, something has gone wrong.

' + data.status + ' ' + data.statusText); + showMessage(lang("whoops_and_error", {"code": data.status, "error": data.statusText})); }); e.preventDefault(); @@ -9435,7 +9436,7 @@ function removeQuestionOption(removeBtn) if (tbody.find('tr').length > 1) { removeBtn.parents('tr').remove(); } else { - alert('You must have at least one option.'); + alert(lang("at_least_one_option")); } } diff --git a/public/assets/javascript/check_in.js b/public/assets/javascript/check_in.js index 18a4af6f..cdd50b8e 100644 --- a/public/assets/javascript/check_in.js +++ b/public/assets/javascript/check_in.js @@ -31,6 +31,7 @@ var checkinApp = new Vue({ this.$http.post(Attendize.checkInSearchRoute, {q: this.searchTerm}).then(function (res) { this.attendees = res.data; this.searchResultsCount = (Object.keys(res.data).length); + console.log('Succesfully fetched attendees') }, function () { console.log('Failed to fetch attendees') }); @@ -81,7 +82,7 @@ var checkinApp = new Vue({ this.scanResultType = res.data.status; }, function (response) { - this.scanResultMessage = 'Something went wrong! Refresh the page and try again'; + this.scanResultMessage = lang("whoops2"); }); }, @@ -113,16 +114,18 @@ var checkinApp = new Vue({ navigator.getUserMedia({video: true, audio: false}, function (stream) { that.stream = stream; - - if (window.webkitURL) { - that.videoElement.src = window.webkitURL.createObjectURL(stream); - } else { + console.log(stream); + if (that.videoElement.mozSrcObject !== undefined) { // works on firefox now that.videoElement.mozSrcObject = stream; - } + } else if(window.URL) { // and chrome, but must use https + var objectURL = window.URL.createObjectURL(stream); + that.videoElement.src = objectURL || stream; + }; that.videoElement.play(); }, function () { /* error*/ + alert(lang("checkin_init_error")); }); this.isInit = true; diff --git a/public/assets/javascript/frontend.js b/public/assets/javascript/frontend.js index 71d665f1..3b24fdb2 100644 --- a/public/assets/javascript/frontend.js +++ b/public/assets/javascript/frontend.js @@ -4596,8 +4596,7 @@ function log() { } toggleSubmitDisabled($submitButton); - showMessage('Whoops!, it looks like the server returned an error.\n\ - Please try again, or contact the webmaster if the problem persists.'); + showMessage(lang("whoops")); }, success: function(data, statusText, xhr, $form) { var $submitButton = $form.find('input[type=submit]'); @@ -4654,17 +4653,17 @@ function log() { if (!Stripe.validateCardNumber($cardNumber.val())) { - showFormError($cardNumber, 'The credit card number appears to be invalid.'); + showFormError($cardNumber, lang("credit_card_error")); noErrors = false; } if (!Stripe.validateCVC($cvcNumber.val())) { - showFormError($cvcNumber, 'The CVC number appears to be invalid.'); + showFormError($cardNumber, lang("cvc_error")); noErrors = false; } if (!Stripe.validateExpiry($expiryMonth.val(), $expiryYear.val())) { - showFormError($expiryMonth, 'The expiration date appears to be invalid.'); + showFormError($cardNumber, lang("expiry_error")); showFormError($expiryYear, ''); noErrors = false; } @@ -4681,7 +4680,10 @@ function log() { if (response.error) { clearFormErrors($('.payment-form')); - showFormError($('*[data-stripe=' + response.error.param + ']', $('.payment-form')), response.error.message); + if(response.error.param.length>0) + showFormError($('*[data-stripe=' + response.error.param + ']', $('.payment-form')), response.error.message); + else + showMessage(response.error.message); toggleSubmitDisabled($submitButton); } else { var token = response.id; @@ -4691,7 +4693,7 @@ function log() { }); } else { - showMessage('Please check your card details and try again.'); + showMessage(lang("card_validation_error")); toggleSubmitDisabled($submitButton); } @@ -4789,7 +4791,7 @@ function toggleSubmitDisabled($submitButton) { $submitButton.data('original-text', $submitButton.val()) .attr('disabled', true) .addClass('disabled') - .val('Just a second...'); + .val(lang("processing")); } /** @@ -4852,18 +4854,18 @@ function setCountdown($element, seconds) { function updateTimer() { msLeft = endTime - (+new Date); if (msLeft < 1000) { - alert("You have run out of time! You will have to restart the order process."); + alert(lang("time_run_out")); location.reload(); } else { if (msLeft < 120000 && !twoMinWarningShown) { - showMessage("You only have 2 minutes left to complete this order!"); + showMessage(lang("just_2_minutes")); twoMinWarningShown = true; } time = new Date(msLeft); mins = time.getUTCMinutes(); - $element.html('' + mins + ' minutes and ' + twoDigits(time.getUTCSeconds()) + ' seconds'); + $element.html('' + mins + ':' + twoDigits(time.getUTCSeconds()) + ''); setTimeout(updateTimer, time.getUTCMilliseconds() + 500); } } diff --git a/public/assets/javascript/frontend.min.js b/public/assets/javascript/frontend.min.js index 16dd0da2..ec9abc08 100644 --- a/public/assets/javascript/frontend.min.js +++ b/public/assets/javascript/frontend.min.js @@ -1,4 +1,4 @@ -/*! Attendize - v1.0.0 - 2015-03-16 */function toggleSubmitDisabled($submitButton){return $submitButton.hasClass("disabled")?void $submitButton.attr("disabled",!1).removeClass("disabled").val($submitButton.data("original-text")):void $submitButton.data("original-text",$submitButton.val()).attr("disabled",!0).addClass("disabled").val("Just a second...")}function clearFormErrors($form){$($form).find(".error.help-block").remove(),$($form).find(":input").parent().removeClass("has-error")}function showFormError($formElement,message){$formElement.after('
'+message+"
").parent().addClass("has-error")}function showMessage(message){humane.log(message,{timeout:2500})}function hideMessage(){humane.remove()}function setCountdown($element,seconds){function twoDigits(n){return 9>=n?"0"+n:n}function updateTimer(){msLeft=endTime-+new Date,1e3>msLeft?(alert("You've run out of time! You'll have to restart the order process."),location.reload()):(12e4>msLeft&&!twoMinWarningShown&&(showMessage("You only have 2 minutes left to complete this order!"),twoMinWarningShown=!0),time=new Date(msLeft),mins=time.getUTCMinutes(),$element.html(""+mins+" minutes and "+twoDigits(time.getUTCSeconds())+" seconds"),setTimeout(updateTimer,time.getUTCMilliseconds()+500))}var endTime,mins,msLeft,time,twoMinWarningShown=!1;endTime=+new Date+1e3*seconds+500,updateTimer()}if(function(window,undefined){function isArraylike(obj){var length=obj.length,type=jQuery.type(obj);return jQuery.isWindow(obj)?!1:1===obj.nodeType&&length?!0:"array"===type||"function"!==type&&(0===length||"number"==typeof length&&length>0&&length-1 in obj)}function createOptions(options){var object=optionsCache[options]={};return jQuery.each(options.match(core_rnotwhite)||[],function(_,flag){object[flag]=!0}),object}function internalData(elem,name,data,pvt){if(jQuery.acceptData(elem)){var thisCache,ret,internalKey=jQuery.expando,getByName="string"==typeof name,isNode=elem.nodeType,cache=isNode?jQuery.cache:elem,id=isNode?elem[internalKey]:elem[internalKey]&&internalKey;if(id&&cache[id]&&(pvt||cache[id].data)||!getByName||data!==undefined)return id||(isNode?elem[internalKey]=id=core_deletedIds.pop()||jQuery.guid++:id=internalKey),cache[id]||(cache[id]={},isNode||(cache[id].toJSON=jQuery.noop)),("object"==typeof name||"function"==typeof name)&&(pvt?cache[id]=jQuery.extend(cache[id],name):cache[id].data=jQuery.extend(cache[id].data,name)),thisCache=cache[id],pvt||(thisCache.data||(thisCache.data={}),thisCache=thisCache.data),data!==undefined&&(thisCache[jQuery.camelCase(name)]=data),getByName?(ret=thisCache[name],null==ret&&(ret=thisCache[jQuery.camelCase(name)])):ret=thisCache,ret}}function internalRemoveData(elem,name,pvt){if(jQuery.acceptData(elem)){var i,l,thisCache,isNode=elem.nodeType,cache=isNode?jQuery.cache:elem,id=isNode?elem[jQuery.expando]:jQuery.expando;if(cache[id]){if(name&&(thisCache=pvt?cache[id]:cache[id].data)){jQuery.isArray(name)?name=name.concat(jQuery.map(name,jQuery.camelCase)):name in thisCache?name=[name]:(name=jQuery.camelCase(name),name=name in thisCache?[name]:name.split(" "));for(i=0,l=name.length;l>i;i++)delete thisCache[name[i]];if(!(pvt?isEmptyDataObject:jQuery.isEmptyObject)(thisCache))return}(pvt||(delete cache[id].data,isEmptyDataObject(cache[id])))&&(isNode?jQuery.cleanData([elem],!0):jQuery.support.deleteExpando||cache!=cache.window?delete cache[id]:cache[id]=null)}}}function dataAttr(elem,key,data){if(data===undefined&&1===elem.nodeType){var name="data-"+key.replace(rmultiDash,"-$1").toLowerCase();if(data=elem.getAttribute(name),"string"==typeof data){try{data="true"===data?!0:"false"===data?!1:"null"===data?null:+data+""===data?+data:rbrace.test(data)?jQuery.parseJSON(data):data}catch(e){}jQuery.data(elem,key,data)}else data=undefined}return data}function isEmptyDataObject(obj){var name;for(name in obj)if(("data"!==name||!jQuery.isEmptyObject(obj[name]))&&"toJSON"!==name)return!1;return!0}function returnTrue(){return!0}function returnFalse(){return!1}function sibling(cur,dir){do cur=cur[dir];while(cur&&1!==cur.nodeType);return cur}function winnow(elements,qualifier,keep){if(qualifier=qualifier||0,jQuery.isFunction(qualifier))return jQuery.grep(elements,function(elem,i){var retVal=!!qualifier.call(elem,i,elem);return retVal===keep});if(qualifier.nodeType)return jQuery.grep(elements,function(elem){return elem===qualifier===keep});if("string"==typeof qualifier){var filtered=jQuery.grep(elements,function(elem){return 1===elem.nodeType});if(isSimple.test(qualifier))return jQuery.filter(qualifier,filtered,!keep);qualifier=jQuery.filter(qualifier,filtered)}return jQuery.grep(elements,function(elem){return jQuery.inArray(elem,qualifier)>=0===keep})}function createSafeFragment(document){var list=nodeNames.split("|"),safeFrag=document.createDocumentFragment();if(safeFrag.createElement)for(;list.length;)safeFrag.createElement(list.pop());return safeFrag}function findOrAppend(elem,tag){return elem.getElementsByTagName(tag)[0]||elem.appendChild(elem.ownerDocument.createElement(tag))}function disableScript(elem){var attr=elem.getAttributeNode("type");return elem.type=(attr&&attr.specified)+"/"+elem.type,elem}function restoreScript(elem){var match=rscriptTypeMasked.exec(elem.type);return match?elem.type=match[1]:elem.removeAttribute("type"),elem}function setGlobalEval(elems,refElements){for(var elem,i=0;null!=(elem=elems[i]);i++)jQuery._data(elem,"globalEval",!refElements||jQuery._data(refElements[i],"globalEval"))}function cloneCopyEvent(src,dest){if(1===dest.nodeType&&jQuery.hasData(src)){var type,i,l,oldData=jQuery._data(src),curData=jQuery._data(dest,oldData),events=oldData.events;if(events){delete curData.handle,curData.events={};for(type in events)for(i=0,l=events[type].length;l>i;i++)jQuery.event.add(dest,type,events[type][i])}curData.data&&(curData.data=jQuery.extend({},curData.data))}}function fixCloneNodeIssues(src,dest){var nodeName,e,data;if(1===dest.nodeType){if(nodeName=dest.nodeName.toLowerCase(),!jQuery.support.noCloneEvent&&dest[jQuery.expando]){data=jQuery._data(dest);for(e in data.events)jQuery.removeEvent(dest,e,data.handle);dest.removeAttribute(jQuery.expando)}"script"===nodeName&&dest.text!==src.text?(disableScript(dest).text=src.text,restoreScript(dest)):"object"===nodeName?(dest.parentNode&&(dest.outerHTML=src.outerHTML),jQuery.support.html5Clone&&src.innerHTML&&!jQuery.trim(dest.innerHTML)&&(dest.innerHTML=src.innerHTML)):"input"===nodeName&&manipulation_rcheckableType.test(src.type)?(dest.defaultChecked=dest.checked=src.checked,dest.value!==src.value&&(dest.value=src.value)):"option"===nodeName?dest.defaultSelected=dest.selected=src.defaultSelected:("input"===nodeName||"textarea"===nodeName)&&(dest.defaultValue=src.defaultValue)}}function getAll(context,tag){var elems,elem,i=0,found=typeof context.getElementsByTagName!==core_strundefined?context.getElementsByTagName(tag||"*"):typeof context.querySelectorAll!==core_strundefined?context.querySelectorAll(tag||"*"):undefined;if(!found)for(found=[],elems=context.childNodes||context;null!=(elem=elems[i]);i++)!tag||jQuery.nodeName(elem,tag)?found.push(elem):jQuery.merge(found,getAll(elem,tag));return tag===undefined||tag&&jQuery.nodeName(context,tag)?jQuery.merge([context],found):found}function fixDefaultChecked(elem){manipulation_rcheckableType.test(elem.type)&&(elem.defaultChecked=elem.checked)}function vendorPropName(style,name){if(name in style)return name;for(var capName=name.charAt(0).toUpperCase()+name.slice(1),origName=name,i=cssPrefixes.length;i--;)if(name=cssPrefixes[i]+capName,name in style)return name;return origName}function isHidden(elem,el){return elem=el||elem,"none"===jQuery.css(elem,"display")||!jQuery.contains(elem.ownerDocument,elem)}function showHide(elements,show){for(var display,elem,hidden,values=[],index=0,length=elements.length;length>index;index++)elem=elements[index],elem.style&&(values[index]=jQuery._data(elem,"olddisplay"),display=elem.style.display,show?(values[index]||"none"!==display||(elem.style.display=""),""===elem.style.display&&isHidden(elem)&&(values[index]=jQuery._data(elem,"olddisplay",css_defaultDisplay(elem.nodeName)))):values[index]||(hidden=isHidden(elem),(display&&"none"!==display||!hidden)&&jQuery._data(elem,"olddisplay",hidden?display:jQuery.css(elem,"display"))));for(index=0;length>index;index++)elem=elements[index],elem.style&&(show&&"none"!==elem.style.display&&""!==elem.style.display||(elem.style.display=show?values[index]||"":"none"));return elements}function setPositiveNumber(elem,value,subtract){var matches=rnumsplit.exec(value);return matches?Math.max(0,matches[1]-(subtract||0))+(matches[2]||"px"):value}function augmentWidthOrHeight(elem,name,extra,isBorderBox,styles){for(var i=extra===(isBorderBox?"border":"content")?4:"width"===name?1:0,val=0;4>i;i+=2)"margin"===extra&&(val+=jQuery.css(elem,extra+cssExpand[i],!0,styles)),isBorderBox?("content"===extra&&(val-=jQuery.css(elem,"padding"+cssExpand[i],!0,styles)),"margin"!==extra&&(val-=jQuery.css(elem,"border"+cssExpand[i]+"Width",!0,styles))):(val+=jQuery.css(elem,"padding"+cssExpand[i],!0,styles),"padding"!==extra&&(val+=jQuery.css(elem,"border"+cssExpand[i]+"Width",!0,styles)));return val}function getWidthOrHeight(elem,name,extra){var valueIsBorderBox=!0,val="width"===name?elem.offsetWidth:elem.offsetHeight,styles=getStyles(elem),isBorderBox=jQuery.support.boxSizing&&"border-box"===jQuery.css(elem,"boxSizing",!1,styles);if(0>=val||null==val){if(val=curCSS(elem,name,styles),(0>val||null==val)&&(val=elem.style[name]),rnumnonpx.test(val))return val;valueIsBorderBox=isBorderBox&&(jQuery.support.boxSizingReliable||val===elem.style[name]),val=parseFloat(val)||0}return val+augmentWidthOrHeight(elem,name,extra||(isBorderBox?"border":"content"),valueIsBorderBox,styles)+"px"}function css_defaultDisplay(nodeName){var doc=document,display=elemdisplay[nodeName];return display||(display=actualDisplay(nodeName,doc),"none"!==display&&display||(iframe=(iframe||jQuery("