App\Ninja\Mailers\ContactMailer::sendLicensePaymentConfirmation PHP Method

sendLicensePaymentConfirmation() public method

public sendLicensePaymentConfirmation ( $name, $email, $amount, $license, $productId )
$name
$email
$amount
$license
$productId
    public function sendLicensePaymentConfirmation($name, $email, $amount, $license, $productId)
    {
        $view = 'license_confirmation';
        $subject = trans('texts.payment_subject');
        if ($productId == PRODUCT_ONE_CLICK_INSTALL) {
            $license = "Softaculous install license: {$license}";
        } elseif ($productId == PRODUCT_INVOICE_DESIGNS) {
            $license = "Invoice designs license: {$license}";
        } elseif ($productId == PRODUCT_WHITE_LABEL) {
            $license = "White label license: {$license}";
        }
        $data = ['client' => $name, 'amount' => Utils::formatMoney($amount, DEFAULT_CURRENCY, DEFAULT_COUNTRY), 'license' => $license];
        $this->sendTo($email, CONTACT_EMAIL, CONTACT_NAME, $subject, $view, $data);
    }

Usage Example

 /**
  * @return \Illuminate\Contracts\View\View
  */
 public function do_license_payment()
 {
     $testMode = Session::get('test_mode') === 'true';
     $rules = ['first_name' => 'required', 'last_name' => 'required', 'email' => 'required', 'card_number' => 'required', 'expiration_month' => 'required', 'expiration_year' => 'required', 'cvv' => 'required', 'address1' => 'required', 'city' => 'required', 'state' => 'required', 'postal_code' => 'required', 'country_id' => 'required'];
     $validator = Validator::make(Input::all(), $rules);
     if ($validator->fails()) {
         return redirect()->to('license')->withErrors($validator)->withInput();
     }
     $account = $this->accountRepo->getNinjaAccount();
     $account->load('account_gateways.gateway');
     $accountGateway = $account->getGatewayByType(GATEWAY_TYPE_CREDIT_CARD);
     try {
         $affiliate = Affiliate::find(Session::get('affiliate_id'));
         if ($testMode) {
             $ref = 'TEST_MODE';
         } else {
             $details = self::getLicensePaymentDetails(Input::all(), $affiliate);
             $gateway = Omnipay::create($accountGateway->gateway->provider);
             $gateway->initialize((array) $accountGateway->getConfig());
             $response = $gateway->purchase($details)->send();
             $ref = $response->getTransactionReference();
             if (!$response->isSuccessful() || !$ref) {
                 $this->error('License', $response->getMessage(), $accountGateway);
                 return redirect()->to('license')->withInput();
             }
         }
         $licenseKey = Utils::generateLicense();
         $license = new License();
         $license->first_name = Input::get('first_name');
         $license->last_name = Input::get('last_name');
         $license->email = Input::get('email');
         $license->transaction_reference = $ref;
         $license->license_key = $licenseKey;
         $license->affiliate_id = Session::get('affiliate_id');
         $license->product_id = Session::get('product_id');
         $license->save();
         $data = ['message' => $affiliate->payment_subtitle, 'license' => $licenseKey, 'hideHeader' => true, 'productId' => $license->product_id, 'price' => $affiliate->price];
         $name = "{$license->first_name} {$license->last_name}";
         $this->contactMailer->sendLicensePaymentConfirmation($name, $license->email, $affiliate->price, $license->license_key, $license->product_id);
         if (Session::has('return_url')) {
             $data['redirectTo'] = Session::get('return_url') . "?license_key={$license->license_key}&product_id=" . Session::get('product_id');
             $data['message'] = 'Redirecting to ' . Session::get('return_url');
         }
         return View::make('public.license', $data);
     } catch (\Exception $e) {
         $this->error('License-Uncaught', false, $accountGateway, $e);
         return redirect()->to('license')->withInput();
     }
 }