Initial Spark Install

This commit is contained in:
Deon George
2017-11-03 16:26:07 +11:00
commit b1a5807eb3
766 changed files with 128896 additions and 0 deletions

View File

@@ -0,0 +1 @@
Click here to reset your password: <a href="{{ $link = url('password/reset', $token).'?email='.urlencode($user->getEmailForPasswordReset()) }}"> {{ $link }} </a>

View File

@@ -0,0 +1,46 @@
@extends('spark::layouts.app')
@section('content')
<div class="container">
<div class="row">
<div class="col-md-8 col-md-offset-2">
<div class="panel panel-default">
<div class="panel-heading">Login Via Emergency Token</div>
<div class="panel-body">
@include('spark::shared.errors')
<!-- Warning Message -->
<div class="alert alert-warning">
After logging in via your emergency token, two-factor authentication will be
disabled for your account. If you would like to maintain two-factor
authentication security, you should re-enable it after logging in.
</div>
<form class="form-horizontal" role="form" method="POST" action="/login-via-emergency-token">
{{ csrf_field() }}
<!-- Emergency Token -->
<div class="form-group">
<label class="col-md-4 control-label">Emergency Token</label>
<div class="col-md-6">
<input type="password" class="form-control" name="token" autofocus>
</div>
</div>
<!-- Emergency Token Login Button -->
<div class="form-group">
<div class="col-md-8 col-md-offset-4">
<button type="submit" class="btn btn-primary">
<i class="fa fa-btn fa-sign-in"></i>Login
</button>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
@endsection

View File

@@ -0,0 +1,61 @@
@extends('spark::layouts.app')
@section('content')
<div class="container">
<div class="row">
<div class="col-md-8 col-md-offset-2">
<div class="panel panel-default">
<div class="panel-heading">Login</div>
<div class="panel-body">
@include('spark::shared.errors')
<form class="form-horizontal" role="form" method="POST" action="/login">
{{ csrf_field() }}
<!-- E-Mail Address -->
<div class="form-group">
<label class="col-md-4 control-label">E-Mail Address</label>
<div class="col-md-6">
<input type="email" class="form-control" name="email" value="{{ old('email') }}" autofocus>
</div>
</div>
<!-- Password -->
<div class="form-group">
<label class="col-md-4 control-label">Password</label>
<div class="col-md-6">
<input type="password" class="form-control" name="password">
</div>
</div>
<!-- Remember Me -->
<div class="form-group">
<div class="col-md-6 col-md-offset-4">
<div class="checkbox">
<label>
<input type="checkbox" name="remember"> Remember Me
</label>
</div>
</div>
</div>
<!-- Login Button -->
<div class="form-group">
<div class="col-md-8 col-md-offset-4">
<button type="submit" class="btn btn-primary">
<i class="fa m-r-xs fa-sign-in"></i>Login
</button>
<a class="btn btn-link" href="{{ url('/password/reset') }}">Forgot Your Password?</a>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
@endsection

View File

@@ -0,0 +1,50 @@
@extends('spark::layouts.app')
<!-- Main Content -->
@section('content')
<div class="container">
<div class="row">
<div class="col-md-8 col-md-offset-2">
<div class="panel panel-default">
<div class="panel-heading">Reset Password</div>
<div class="panel-body">
@if (session('status'))
<div class="alert alert-success">
{{ session('status') }}
</div>
@endif
<form class="form-horizontal" role="form" method="POST" action="{{ url('/password/email') }}">
{!! csrf_field() !!}
<!-- E-Mail Address -->
<div class="form-group{{ $errors->has('email') ? ' has-error' : '' }}">
<label class="col-md-4 control-label">E-Mail Address</label>
<div class="col-md-6">
<input type="email" class="form-control" name="email" value="{{ old('email') }}" autofocus>
@if ($errors->has('email'))
<span class="help-block">
{{ $errors->first('email') }}
</span>
@endif
</div>
</div>
<!-- Send Password Reset Link Button -->
<div class="form-group">
<div class="col-md-6 col-md-offset-4">
<button type="submit" class="btn btn-primary">
<i class="fa fa-btn fa-envelope"></i>Send Password Reset Link
</button>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
@endsection

View File

@@ -0,0 +1,74 @@
@extends('spark::layouts.app')
@section('content')
<div class="container">
<div class="row">
<div class="col-md-8 col-md-offset-2">
<div class="panel panel-default">
<div class="panel-heading">Reset Password</div>
<div class="panel-body">
<form class="form-horizontal" role="form" method="POST" action="{{ url('/password/reset') }}">
{!! csrf_field() !!}
<input type="hidden" name="token" value="{{ $token }}">
<!-- E-Mail Address -->
<div class="form-group{{ $errors->has('email') ? ' has-error' : '' }}">
<label class="col-md-4 control-label">E-Mail Address</label>
<div class="col-md-6">
<input type="email" class="form-control" name="email" value="{{ $email or old('email') }}" autofocus>
@if ($errors->has('email'))
<span class="help-block">
{{ $errors->first('email') }}
</span>
@endif
</div>
</div>
<!-- Password -->
<div class="form-group{{ $errors->has('password') ? ' has-error' : '' }}">
<label class="col-md-4 control-label">Password</label>
<div class="col-md-6">
<input type="password" class="form-control" name="password">
@if ($errors->has('password'))
<span class="help-block">
{{ $errors->first('password') }}
</span>
@endif
</div>
</div>
<!-- Password Confirmation -->
<div class="form-group{{ $errors->has('password_confirmation') ? ' has-error' : '' }}">
<label class="col-md-4 control-label">Confirm Password</label>
<div class="col-md-6">
<input type="password" class="form-control" name="password_confirmation">
@if ($errors->has('password_confirmation'))
<span class="help-block">
{{ $errors->first('password_confirmation') }}
</span>
@endif
</div>
</div>
<!-- Reset Button -->
<div class="form-group">
<div class="col-md-6 col-md-offset-4">
<button type="submit" class="btn btn-primary">
<i class="fa fa-btn fa-refresh"></i>Reset Password
</button>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
@endsection

View File

@@ -0,0 +1,91 @@
<!-- Address -->
<div class="form-group" :class="{'has-error': registerForm.errors.has('address')}">
<label class="col-md-4 control-label">Address</label>
<div class="col-sm-6">
<input type="text" class="form-control" v-model="registerForm.address" lazy>
<span class="help-block" v-show="registerForm.errors.has('address')">
@{{ registerForm.errors.get('address') }}
</span>
</div>
</div>
<!-- Address Line 2 -->
<div class="form-group" :class="{'has-error': registerForm.errors.has('address_line_2')}">
<label class="col-md-4 control-label">Address Line 2</label>
<div class="col-sm-6">
<input type="text" class="form-control" v-model="registerForm.address_line_2" lazy>
<span class="help-block" v-show="registerForm.errors.has('address_line_2')">
@{{ registerForm.errors.get('address_line_2') }}
</span>
</div>
</div>
<!-- City -->
<div class="form-group" :class="{'has-error': registerForm.errors.has('city')}">
<label class="col-md-4 control-label">City</label>
<div class="col-sm-6">
<input type="text" class="form-control" v-model.lazy="registerForm.city">
<span class="help-block" v-show="registerForm.errors.has('city')">
@{{ registerForm.errors.get('city') }}
</span>
</div>
</div>
<!-- State & ZIP Code -->
<div class="form-group" :class="{'has-error': registerForm.errors.has('state')}">
<label class="col-md-4 control-label">State & ZIP / Postal Code</label>
<!-- State -->
<div class="col-sm-3">
<input type="text" class="form-control" placeholder="State" v-model.lazy="registerForm.state">
<span class="help-block" v-show="registerForm.errors.has('state')">
@{{ registerForm.errors.get('state') }}
</span>
</div>
<!-- Zip Code -->
<div class="col-sm-3">
<input type="text" class="form-control" placeholder="Postal Code" v-model.lazy="registerForm.zip">
<span class="help-block" v-show="registerForm.errors.has('zip')">
@{{ registerForm.errors.get('zip') }}
</span>
</div>
</div>
<!-- Country -->
<div class="form-group" :class="{'has-error': registerForm.errors.has('country')}">
<label class="col-md-4 control-label">Country</label>
<div class="col-sm-6">
<select class="form-control" v-model.lazy="registerForm.country">
@foreach (app(Laravel\Spark\Repositories\Geography\CountryRepository::class)->all() as $key => $country)
<option value="{{ $key }}">{{ $country }}</option>
@endforeach
</select>
<span class="help-block" v-show="registerForm.errors.has('country')">
@{{ registerForm.errors.get('country') }}
</span>
</div>
</div>
<!-- European VAT ID -->
<div class="form-group" :class="{'has-error': registerForm.errors.has('vat_id')}" v-if="countryCollectsVat">
<label class="col-md-4 control-label">VAT ID</label>
<div class="col-sm-6">
<input type="text" class="form-control" v-model.lazy="registerForm.vat_id">
<span class="help-block" v-show="registerForm.errors.has('vat_id')">
@{{ registerForm.errors.get('vat_id') }}
</span>
</div>
</div>

View File

@@ -0,0 +1,85 @@
@extends('spark::layouts.app')
@section('scripts')
<script src="https://js.braintreegateway.com/v2/braintree.js"></script>
@endsection
@section('content')
<spark-register-braintree inline-template>
<div>
<div class="spark-screen container">
<!-- Common Register Form Contents -->
@include('spark::auth.register-common')
<!-- Billing Information -->
<div class="row" v-show="selectedPlan && selectedPlan.price > 0">
<div class="col-md-8 col-md-offset-2">
<div class="panel panel-default">
<div class="panel-heading"><i class="fa fa-btn fa-credit-card"></i>Billing</div>
<div class="panel-body">
<!-- Generic 500 Level Error Message / Stripe Threw Exception -->
<div class="alert alert-danger" v-if="registerForm.errors.has('form')">
We had trouble validating your card. It's possible your card provider is preventing
us from charging the card. Please contact your card provider or customer support.
</div>
<form class="form-horizontal" role="form">
<!-- Braintree Container -->
<div id="braintree-container" class="m-b-sm"></div>
<!-- Coupon Code -->
<div class="form-group" :class="{'has-error': registerForm.errors.has('coupon')}" v-if="query.coupon">
<label for="number" class="col-md-4 control-label">Coupon Code</label>
<div class="col-sm-6">
<input type="text" class="form-control" name="coupon" v-model="registerForm.coupon">
<span class="help-block" v-show="registerForm.errors.has('coupon')">
@{{ registerForm.errors.get('coupon') }}
</span>
</div>
</div>
<!-- Terms And Conditions -->
<div class="form-group" :class="{'has-error': registerForm.errors.has('terms')}">
<div class="col-sm-6 col-sm-offset-4">
<div class="checkbox">
<label>
<input type="checkbox" v-model="registerForm.terms">
I Accept The <a href="/terms" target="_blank">Terms Of Service</a>
<span class="help-block" v-show="registerForm.errors.has('terms')">
<strong>@{{ registerForm.errors.get('terms') }}</strong>
</span>
</label>
</div>
</div>
</div>
<!-- Register Button -->
<div class="form-group">
<div class="col-sm-6 col-sm-offset-4">
<button type="submit" class="btn btn-primary" :disabled="registerForm.busy">
<span v-if="registerForm.busy">
<i class="fa fa-btn fa-spinner fa-spin"></i>Registering
</span>
<span v-else>
<i class="fa fa-btn fa-check-circle"></i>Register
</span>
</button>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
<!-- Plan Features Modal -->
@include('spark::modals.plan-details')
</div>
</spark-register-braintree>
@endsection

View File

@@ -0,0 +1,119 @@
<form class="form-horizontal" role="form">
@if (Spark::usesTeams() && Spark::onlyTeamPlans())
<!-- Team Name -->
<div class="form-group" :class="{'has-error': registerForm.errors.has('team')}" v-if=" ! invitation">
<label class="col-md-4 control-label">{{ ucfirst(Spark::teamString()) }} Name</label>
<div class="col-md-6">
<input type="text" class="form-control" name="team" v-model="registerForm.team" autofocus>
<span class="help-block" v-show="registerForm.errors.has('team')">
@{{ registerForm.errors.get('team') }}
</span>
</div>
</div>
@if (Spark::teamsIdentifiedByPath())
<!-- Team Slug (Only Shown When Using Paths For Teams) -->
<div class="form-group" :class="{'has-error': registerForm.errors.has('team_slug')}" v-if=" ! invitation">
<label class="col-md-4 control-label">{{ ucfirst(Spark::teamString()) }} Slug</label>
<div class="col-md-6">
<input type="text" class="form-control" name="team_slug" v-model="registerForm.team_slug" autofocus>
<p class="help-block" v-show=" ! registerForm.errors.has('team_slug')">
This slug is used to identify your {{ Spark::teamString() }} in URLs.
</p>
<span class="help-block" v-show="registerForm.errors.has('team_slug')">
@{{ registerForm.errors.get('team_slug') }}
</span>
</div>
</div>
@endif
@endif
<!-- Name -->
<div class="form-group" :class="{'has-error': registerForm.errors.has('name')}">
<label class="col-md-4 control-label">Name</label>
<div class="col-md-6">
<input type="text" class="form-control" name="name" v-model="registerForm.name" autofocus>
<span class="help-block" v-show="registerForm.errors.has('name')">
@{{ registerForm.errors.get('name') }}
</span>
</div>
</div>
<!-- E-Mail Address -->
<div class="form-group" :class="{'has-error': registerForm.errors.has('email')}">
<label class="col-md-4 control-label">E-Mail Address</label>
<div class="col-md-6">
<input type="email" class="form-control" name="email" v-model="registerForm.email">
<span class="help-block" v-show="registerForm.errors.has('email')">
@{{ registerForm.errors.get('email') }}
</span>
</div>
</div>
<!-- Password -->
<div class="form-group" :class="{'has-error': registerForm.errors.has('password')}">
<label class="col-md-4 control-label">Password</label>
<div class="col-md-6">
<input type="password" class="form-control" name="password" v-model="registerForm.password">
<span class="help-block" v-show="registerForm.errors.has('password')">
@{{ registerForm.errors.get('password') }}
</span>
</div>
</div>
<!-- Password Confirmation -->
<div class="form-group" :class="{'has-error': registerForm.errors.has('password_confirmation')}">
<label class="col-md-4 control-label">Confirm Password</label>
<div class="col-md-6">
<input type="password" class="form-control" name="password_confirmation" v-model="registerForm.password_confirmation">
<span class="help-block" v-show="registerForm.errors.has('password_confirmation')">
@{{ registerForm.errors.get('password_confirmation') }}
</span>
</div>
</div>
<!-- Terms And Conditions -->
<div v-if=" ! selectedPlan || selectedPlan.price == 0">
<div class="form-group" :class="{'has-error': registerForm.errors.has('terms')}">
<div class="col-md-6 col-md-offset-4">
<div class="checkbox">
<label>
<input type="checkbox" name="terms" v-model="registerForm.terms">
I Accept The <a href="/terms" target="_blank">Terms Of Service</a>
</label>
<span class="help-block" v-show="registerForm.errors.has('terms')">
@{{ registerForm.errors.get('terms') }}
</span>
</div>
</div>
</div>
<div class="form-group">
<div class="col-md-6 col-md-offset-4">
<button class="btn btn-primary" @click.prevent="register" :disabled="registerForm.busy">
<span v-if="registerForm.busy">
<i class="fa fa-btn fa-spinner fa-spin"></i>Registering
</span>
<span v-else>
<i class="fa fa-btn fa-check-circle"></i>Register
</span>
</button>
</div>
</div>
</div>
</form>

View File

@@ -0,0 +1,175 @@
<!-- Coupon -->
<div class="row" v-if="coupon">
<div class="col-md-8 col-md-offset-2">
<div class="panel panel-success">
<div class="panel-heading">Discount</div>
<div class="panel-body">
The coupon's @{{ discount }} discount will be applied to your subscription!
</div>
</div>
</div>
</div>
<!-- Invalid Coupon -->
<div class="row" v-if="invalidCoupon">
<div class="col-md-8 col-md-offset-2">
<div class="alert alert-danger">
Whoops! This coupon code is invalid.
</div>
</div>
</div>
<!-- Invitation -->
<div class="row" v-if="invitation">
<div class="col-md-8 col-md-offset-2">
<div class="alert alert-success">
We found your invitation to the <strong>@{{ invitation.team.name }}</strong> {{ Spark::teamString() }}!
</div>
</div>
</div>
<!-- Invalid Invitation -->
<div class="row" v-if="invalidInvitation">
<div class="col-md-8 col-md-offset-2">
<div class="alert alert-danger">
Whoops! This invitation code is invalid.
</div>
</div>
</div>
<!-- Plan Selection -->
<div class="row" v-if="paidPlans.length > 0">
<div class="col-md-8 col-md-offset-2">
<div class="panel panel-default">
<div class="panel-heading">
<div class="pull-left" :class="{'btn-table-align': hasMonthlyAndYearlyPlans}">
Subscription
</div>
<!-- Interval Selector Button Group -->
<div class="pull-right">
<div class="btn-group" v-if="hasMonthlyAndYearlyPlans" style="padding-top: 2px;">
<!-- Monthly Plans -->
<button type="button" class="btn btn-default"
@click="showMonthlyPlans"
:class="{'active': showingMonthlyPlans}">
Monthly
</button>
<!-- Yearly Plans -->
<button type="button" class="btn btn-default"
@click="showYearlyPlans"
:class="{'active': showingYearlyPlans}">
Yearly
</button>
</div>
</div>
<div class="clearfix"></div>
</div>
<div class="panel-body spark-row-list">
<!-- Plan Error Message - In General Will Never Be Shown -->
<div class="alert alert-danger" v-if="registerForm.errors.has('plan')">
@{{ registerForm.errors.get('plan') }}
</div>
<!-- European VAT Notice -->
@if (Spark::collectsEuropeanVat())
<p class="p-b-md">
All subscription plan prices are excluding applicable VAT.
</p>
@endif
<table class="table table-borderless m-b-none">
<thead></thead>
<tbody>
<tr v-for="plan in plansForActiveInterval">
<!-- Plan Name -->
<td>
<div class="btn-table-align" @click="showPlanDetails(plan)">
<span style="cursor: pointer;">
<strong>@{{ plan.name }}</strong>
</span>
</div>
</td>
<!-- Plan Features Button -->
<td>
<button class="btn btn-default m-l-sm" @click="showPlanDetails(plan)">
<i class="fa fa-btn fa-star-o"></i>Plan Features
</button>
</td>
<!-- Plan Price -->
<td>
<div class="btn-table-align">
<span v-if="plan.price == 0">
Free
</span>
<span v-else>
@{{ plan.price | currency }} / @{{ plan.interval | capitalize }}
</span>
</div>
</td>
<!-- Trial Days -->
<td>
<div class="btn-table-align" v-if="plan.trialDays">
@{{ plan.trialDays}} Day Trial
</div>
</td>
<!-- Plan Select Button -->
<td class="text-right">
<button class="btn btn-primary btn-plan" v-if="isSelected(plan)" disabled>
<i class="fa fa-btn fa-check"></i>Selected
</button>
<button class="btn btn-primary-outline btn-plan" @click="selectPlan(plan)" v-else>
Select
</button>
</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
<!-- Basic Profile -->
<div class="row">
<div class="col-md-8 col-md-offset-2">
<div class="panel panel-default">
<div class="panel-heading">
<span v-if="paidPlans.length > 0">
Profile
</span>
<span v-else>
Register
</span>
</div>
<div class="panel-body">
<!-- Generic Error Message -->
<div class="alert alert-danger" v-if="registerForm.errors.has('form')">
@{{ registerForm.errors.get('form') }}
</div>
<!-- Invitation Code Error -->
<div class="alert alert-danger" v-if="registerForm.errors.has('invitation')">
@{{ registerForm.errors.get('invitation') }}
</div>
<!-- Registration Form -->
@include('spark::auth.register-common-form')
</div>
</div>
</div>
</div>

View File

@@ -0,0 +1,166 @@
@extends('spark::layouts.app')
@section('scripts')
<script src="https://js.stripe.com/v2/"></script>
@endsection
@section('content')
<spark-register-stripe inline-template>
<div>
<div class="spark-screen container">
<!-- Common Register Form Contents -->
@include('spark::auth.register-common')
<!-- Billing Information -->
<div class="row" v-if="selectedPlan && selectedPlan.price > 0">
<div class="col-md-8 col-md-offset-2">
<div class="panel panel-default">
<div class="panel-heading">Billing Information</div>
<div class="panel-body">
<!-- Generic 500 Level Error Message / Stripe Threw Exception -->
<div class="alert alert-danger" v-if="registerForm.errors.has('form')">
We had trouble validating your card. It's possible your card provider is preventing
us from charging the card. Please contact your card provider or customer support.
</div>
<form class="form-horizontal" role="form">
<!-- Billing Address Fields -->
@if (Spark::collectsBillingAddress())
<h2><i class="fa fa-btn fa-map-marker"></i>Billing Address</h2>
@include('spark::auth.register-address')
<h2><i class="fa fa-btn fa-credit-card"></i>Credit Card</h2>
@endif
<!-- Cardholder's Name -->
<div class="form-group">
<label for="name" class="col-md-4 control-label">Cardholder's Name</label>
<div class="col-md-6">
<input type="text" class="form-control" name="name" v-model="cardForm.name">
</div>
</div>
<!-- Card Number -->
<div class="form-group" :class="{'has-error': cardForm.errors.has('number')}">
<label class="col-md-4 control-label">Card Number</label>
<div class="col-md-6">
<input type="text" class="form-control" name="number" data-stripe="number" v-model="cardForm.number">
<span class="help-block" v-show="cardForm.errors.has('number')">
@{{ cardForm.errors.get('number') }}
</span>
</div>
</div>
<!-- Security Code -->
<div class="form-group">
<label class="col-md-4 control-label">Security Code</label>
<div class="col-md-6">
<input type="text" class="form-control" name="cvc" data-stripe="cvc" v-model="cardForm.cvc">
</div>
</div>
<!-- Expiration -->
<div class="form-group">
<label class="col-md-4 control-label">Expiration</label>
<!-- Month -->
<div class="col-md-3">
<input type="text" class="form-control" name="month"
placeholder="MM" maxlength="2" data-stripe="exp-month" v-model="cardForm.month">
</div>
<!-- Year -->
<div class="col-md-3">
<input type="text" class="form-control" name="year"
placeholder="YYYY" maxlength="4" data-stripe="exp-year" v-model="cardForm.year">
</div>
</div>
<!-- ZIP Code -->
<div class="form-group" :class="{'has-error': registerForm.errors.has('zip')}" v-if=" ! spark.collectsBillingAddress">
<label class="col-md-4 control-label">ZIP / Postal Code</label>
<div class="col-md-6">
<input type="text" class="form-control" name="zip" v-model="registerForm.zip">
<span class="help-block" v-show="registerForm.errors.has('zip')">
@{{ registerForm.errors.get('zip') }}
</span>
</div>
</div>
<!-- Coupon Code -->
<div class="form-group" :class="{'has-error': registerForm.errors.has('coupon')}" v-if="query.coupon">
<label class="col-md-4 control-label">Coupon Code</label>
<div class="col-md-6">
<input type="text" class="form-control" name="coupon" v-model="registerForm.coupon">
<span class="help-block" v-show="registerForm.errors.has('coupon')">
@{{ registerForm.errors.get('coupon') }}
</span>
</div>
</div>
<!-- Terms And Conditions -->
<div class="form-group" :class="{'has-error': registerForm.errors.has('terms')}">
<div class="col-md-6 col-md-offset-4">
<div class="checkbox">
<label>
<input type="checkbox" v-model="registerForm.terms">
I Accept The <a href="/terms" target="_blank">Terms Of Service</a>
<span class="help-block" v-show="registerForm.errors.has('terms')">
<strong>@{{ registerForm.errors.get('terms') }}</strong>
</span>
</label>
</div>
</div>
</div>
<!-- Tax / Price Information -->
<div class="form-group" v-if="spark.collectsEuropeanVat && countryCollectsVat && selectedPlan">
<label class="col-md-4 control-label">&nbsp;</label>
<div class="col-md-6">
<div class="alert alert-info" style="margin: 0;">
<strong>Tax:</strong> @{{ taxAmount(selectedPlan) | currency }}
<br><br>
<strong>Total Price Including Tax:</strong>
@{{ priceWithTax(selectedPlan) | currency }} / @{{ selectedPlan.interval | capitalize }}
</div>
</div>
</div>
<!-- Register Button -->
<div class="form-group">
<div class="col-md-6 col-md-offset-4">
<button type="submit" class="btn btn-primary" @click.prevent="register" :disabled="registerForm.busy">
<span v-if="registerForm.busy">
<i class="fa fa-btn fa-spinner fa-spin"></i>Registering
</span>
<span v-else>
<i class="fa fa-btn fa-check-circle"></i>Register
</span>
</button>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
<!-- Plan Features Modal -->
@include('spark::modals.plan-details')
</div>
</spark-register-stripe>
@endsection

View File

@@ -0,0 +1,5 @@
@if (Spark::billsUsingStripe())
@include('spark::auth.register-stripe')
@else
@include('spark::auth.register-braintree')
@endif

View File

@@ -0,0 +1,43 @@
@extends('spark::layouts.app')
@section('content')
<div class="container">
<div class="row">
<div class="col-md-8 col-md-offset-2">
<div class="panel panel-default">
<div class="panel-heading">Two-Factor Authentication</div>
<div class="panel-body">
@include('spark::shared.errors')
<form class="form-horizontal" role="form" method="POST" action="/login/token">
{{ csrf_field() }}
<!-- Token -->
<div class="form-group">
<label class="col-md-4 control-label">Authentication Token</label>
<div class="col-md-6">
<input type="text" class="form-control" name="token" autofocus>
</div>
</div>
<!-- Verify Button -->
<div class="form-group">
<div class="col-md-6 col-md-offset-4">
<button type="submit" class="btn btn-primary">
Verify
</button>
<a class="btn btn-link" href="{{ url('login-via-emergency-token') }}">
Lost Your Device?
</a>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
@endsection