From 701f6c385131c3b0eaedbf890dc5e5187676f5ef Mon Sep 17 00:00:00 2001 From: Hillel Coren Date: Tue, 9 May 2017 13:18:03 +0300 Subject: [PATCH] Fix white label purchases with PayPal --- app/Http/Controllers/NinjaController.php | 28 +++++++++++++++++++ app/Http/Middleware/VerifyCsrfToken.php | 2 +- app/Http/routes.php | 2 ++ .../views/partials/white_label.blade.php | 6 +++- 4 files changed, 36 insertions(+), 2 deletions(-) diff --git a/app/Http/Controllers/NinjaController.php b/app/Http/Controllers/NinjaController.php index 3dce07391e98..dd25b4c58dcb 100644 --- a/app/Http/Controllers/NinjaController.php +++ b/app/Http/Controllers/NinjaController.php @@ -7,6 +7,7 @@ use App\Models\Country; use App\Models\License; use App\Ninja\Mailers\ContactMailer; use App\Ninja\Repositories\AccountRepository; +use App\Libraries\CurlUtils; use Auth; use Cache; use CreditCard; @@ -290,4 +291,31 @@ class NinjaController extends BaseController return RESULT_SUCCESS; } + + public function purchaseWhiteLabel() + { + if (Utils::isNinja()) { + return redirect('/'); + } + + $user = Auth::user(); + $url = NINJA_APP_URL . '/buy_now'; + $contactKey = $user->primaryAccount()->account_key; + + $data = [ + 'account_key' => NINJA_LICENSE_ACCOUNT_KEY, + 'contact_key' => $contactKey, + 'product_id' => PRODUCT_WHITE_LABEL, + 'first_name' => Auth::user()->first_name, + 'last_name' => Auth::user()->last_name, + 'email' => Auth::user()->email, + 'return_link' => true, + ]; + + if ($url = CurlUtils::post($url, $data)) { + return redirect($url); + } else { + return redirect()->back()->withError(trans('texts.error_refresh_page')); + } + } } diff --git a/app/Http/Middleware/VerifyCsrfToken.php b/app/Http/Middleware/VerifyCsrfToken.php index 2a8b178f5952..dd4e78ebf731 100644 --- a/app/Http/Middleware/VerifyCsrfToken.php +++ b/app/Http/Middleware/VerifyCsrfToken.php @@ -21,7 +21,7 @@ class VerifyCsrfToken extends BaseVerifier 'hook/email_bounced', 'reseller_stats', 'payment_hook/*', - 'buy_now/*', + 'buy_now*', 'hook/bot/*', ]; diff --git a/app/Http/routes.php b/app/Http/routes.php index 1eb7c8f3d34a..02c7aaa539ec 100644 --- a/app/Http/routes.php +++ b/app/Http/routes.php @@ -235,7 +235,9 @@ Route::group(['middleware' => ['lookup:user', 'auth:user']], function () { Route::post('bluevine/signup', 'BlueVineController@signup'); Route::get('bluevine/hide_message', 'BlueVineController@hideMessage'); Route::get('bluevine/completed', 'BlueVineController@handleCompleted'); + Route::get('white_label/hide_message', 'NinjaController@hideWhiteLabelMessage'); + Route::get('white_label/purchase', 'NinjaController@purchaseWhiteLabel'); Route::get('reports', 'ReportController@showReports'); Route::post('reports', 'ReportController@showReports'); diff --git a/resources/views/partials/white_label.blade.php b/resources/views/partials/white_label.blade.php index 39a7afbe95fc..ad26c2eec668 100644 --- a/resources/views/partials/white_label.blade.php +++ b/resources/views/partials/white_label.blade.php @@ -93,7 +93,11 @@ } function buyProduct(affiliateKey, productId) { - window.open('{{ Utils::isNinjaDev() ? '' : NINJA_APP_URL }}/buy_now/?account_key={{ NINJA_LICENSE_ACCOUNT_KEY }}&product_id=' + productId + '&contact_key={{ Auth::user()->primaryAccount()->account_key }}' + '&redirect_url=' + window.location.href); + + location.href = "{{ url('white_label/purchase') }}"; + + //window.open('{{ Utils::isNinjaDev() ? '' : NINJA_APP_URL }}/buy_now/?account_key={{ NINJA_LICENSE_ACCOUNT_KEY }}&product_id=' + productId + '&contact_key={{ Auth::user()->primaryAccount()->account_key }}' + '&redirect_url=' + window.location.href); + /* var url = '{{ Utils::isNinjaDev() ? '' : NINJA_APP_URL }}/buy_now/'; $.ajax({