voltar 0.0.23
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/MIT-LICENSE +20 -0
- data/README.rdoc +3 -0
- data/Rakefile +37 -0
- data/app/assets/fonts/FontAwesome.otf +0 -0
- data/app/assets/fonts/Simple-Line-Icons.eot +0 -0
- data/app/assets/fonts/Simple-Line-Icons.svg +1369 -0
- data/app/assets/fonts/Simple-Line-Icons.ttf +0 -0
- data/app/assets/fonts/Simple-Line-Icons.woff +0 -0
- data/app/assets/fonts/fontawesome-webfont.eot +0 -0
- data/app/assets/fonts/fontawesome-webfont.svg +520 -0
- data/app/assets/fonts/fontawesome-webfont.ttf +0 -0
- data/app/assets/fonts/fontawesome-webfont.woff +0 -0
- data/app/assets/fonts/glyphicons-halflings-regular.eot +0 -0
- data/app/assets/fonts/glyphicons-halflings-regular.svg +229 -0
- data/app/assets/fonts/glyphicons-halflings-regular.ttf +0 -0
- data/app/assets/fonts/glyphicons-halflings-regular.woff +0 -0
- data/app/assets/fonts/sourcesanspro/sourcesanspro-bold.woff +0 -0
- data/app/assets/fonts/sourcesanspro/sourcesanspro-light.woff +0 -0
- data/app/assets/fonts/sourcesanspro/sourcesanspro.woff +0 -0
- data/app/assets/javascripts/voltar/app.js +203 -0
- data/app/assets/javascripts/voltar/application.js +33 -0
- data/app/assets/javascripts/voltar/controllers/app_ctrl.js.erb +673 -0
- data/app/assets/javascripts/voltar/directives/app_directives.js +345 -0
- data/app/assets/javascripts/voltar/factories/app_services.js +255 -0
- data/app/assets/javascripts/voltar/stripe.js.coffee +2 -0
- data/app/assets/stylesheets/voltar/app.css +4990 -0
- data/app/assets/stylesheets/voltar/application.css +23 -0
- data/app/assets/stylesheets/voltar/voltar.css.scss +93 -0
- data/app/controllers/voltar/application_controller.rb +4 -0
- data/app/controllers/voltar/dashboard_controller.rb +11 -0
- data/app/helpers/voltar/application_helper.rb +4 -0
- data/app/views/layouts/voltar/application.html.erb +40 -0
- data/app/views/voltar/account/_billing.html.erb +552 -0
- data/app/views/voltar/account/_locations.html.erb +135 -0
- data/app/views/voltar/account/_managers.html +134 -0
- data/app/views/voltar/account/_password.html.erb +57 -0
- data/app/views/voltar/account/_profile.html.erb +84 -0
- data/app/views/voltar/dashboard/index.html.erb +0 -0
- data/app/views/voltar/inventory/_delete_dialog.html.erb +16 -0
- data/app/views/voltar/inventory/_edit.html.erb +244 -0
- data/app/views/voltar/inventory/_index.html.erb +160 -0
- data/app/views/voltar/inventory/_mark_as_sold_dialog.html.erb +26 -0
- data/app/views/voltar/shared/_keen_js.html.haml +11 -0
- data/app/views/voltar/shared/_voltar_app.html.erb +83 -0
- data/app/views/voltar/shared/_voltar_aside.html.erb +71 -0
- data/app/views/voltar/shared/_voltar_footer.html.erb +13 -0
- data/app/views/voltar/shared/_voltar_header.html.erb +156 -0
- data/app/views/voltar/shared/app/_country_province_select.html +19 -0
- data/app/views/voltar/shared/app/_dashboard.html.erb +243 -0
- data/app/views/voltar/shared/app/_notifications.html.erb +13 -0
- data/app/views/voltar/shared/app/_spinner.html.erb +8 -0
- data/config/routes.rb +4 -0
- data/lib/tasks/voltar_tasks.rake +4 -0
- data/lib/voltar.rb +5 -0
- data/lib/voltar/engine.rb +15 -0
- data/lib/voltar/version.rb +3 -0
- data/test/dummy/README.rdoc +28 -0
- data/test/dummy/Rakefile +6 -0
- data/test/dummy/app/assets/javascripts/application.js +13 -0
- data/test/dummy/app/assets/stylesheets/application.css +15 -0
- data/test/dummy/app/controllers/application_controller.rb +5 -0
- data/test/dummy/app/helpers/application_helper.rb +2 -0
- data/test/dummy/app/views/layouts/application.html.erb +14 -0
- data/test/dummy/bin/bundle +3 -0
- data/test/dummy/bin/rails +4 -0
- data/test/dummy/bin/rake +4 -0
- data/test/dummy/bin/setup +29 -0
- data/test/dummy/config.ru +4 -0
- data/test/dummy/config/application.rb +26 -0
- data/test/dummy/config/boot.rb +5 -0
- data/test/dummy/config/database.yml +25 -0
- data/test/dummy/config/environment.rb +5 -0
- data/test/dummy/config/environments/development.rb +41 -0
- data/test/dummy/config/environments/production.rb +76 -0
- data/test/dummy/config/environments/test.rb +39 -0
- data/test/dummy/config/initializers/assets.rb +11 -0
- data/test/dummy/config/initializers/backtrace_silencers.rb +7 -0
- data/test/dummy/config/initializers/cookies_serializer.rb +3 -0
- data/test/dummy/config/initializers/filter_parameter_logging.rb +4 -0
- data/test/dummy/config/initializers/inflections.rb +16 -0
- data/test/dummy/config/initializers/mime_types.rb +4 -0
- data/test/dummy/config/initializers/session_store.rb +3 -0
- data/test/dummy/config/initializers/wrap_parameters.rb +14 -0
- data/test/dummy/config/locales/en.yml +23 -0
- data/test/dummy/config/routes.rb +4 -0
- data/test/dummy/config/secrets.yml +22 -0
- data/test/dummy/log/development.log +0 -0
- data/test/dummy/public/404.html +67 -0
- data/test/dummy/public/422.html +67 -0
- data/test/dummy/public/500.html +66 -0
- data/test/dummy/public/favicon.ico +0 -0
- data/test/integration/navigation_test.rb +10 -0
- data/test/test_helper.rb +15 -0
- data/test/voltar_test.rb +7 -0
- data/vendor/assets/images/voltar/a0.jpg +0 -0
- data/vendor/assets/images/voltar/a1.jpg +0 -0
- data/vendor/assets/images/voltar/a10.jpg +0 -0
- data/vendor/assets/images/voltar/a2.jpg +0 -0
- data/vendor/assets/images/voltar/a3.jpg +0 -0
- data/vendor/assets/images/voltar/a4.jpg +0 -0
- data/vendor/assets/images/voltar/a5.jpg +0 -0
- data/vendor/assets/images/voltar/a6.jpg +0 -0
- data/vendor/assets/images/voltar/a7.jpg +0 -0
- data/vendor/assets/images/voltar/a8.jpg +0 -0
- data/vendor/assets/images/voltar/a9.jpg +0 -0
- data/vendor/assets/images/voltar/b0.jpg +0 -0
- data/vendor/assets/images/voltar/b1.jpg +0 -0
- data/vendor/assets/images/voltar/b2.jpg +0 -0
- data/vendor/assets/images/voltar/b3.jpg +0 -0
- data/vendor/assets/images/voltar/b4.jpg +0 -0
- data/vendor/assets/images/voltar/b5.jpg +0 -0
- data/vendor/assets/images/voltar/c0.jpg +0 -0
- data/vendor/assets/images/voltar/c1.jpg +0 -0
- data/vendor/assets/images/voltar/c2.jpg +0 -0
- data/vendor/assets/images/voltar/c3.jpg +0 -0
- data/vendor/assets/images/voltar/c4.jpg +0 -0
- data/vendor/assets/images/voltar/c5.jpg +0 -0
- data/vendor/assets/images/voltar/chosen-sprite.png +0 -0
- data/vendor/assets/images/voltar/chosen-sprite@2x.png +0 -0
- data/vendor/assets/images/voltar/logo.png +0 -0
- data/vendor/assets/images/voltar/p0.jpg +0 -0
- data/vendor/assets/javascripts/voltar/angular-animate.js +1689 -0
- data/vendor/assets/javascripts/voltar/angular-contenteditable.js +98 -0
- data/vendor/assets/javascripts/voltar/angular-cookies.js +206 -0
- data/vendor/assets/javascripts/voltar/angular-sanitize.js +647 -0
- data/vendor/assets/javascripts/voltar/angular-ui-router.js +3658 -0
- data/vendor/assets/javascripts/voltar/angular.js +22024 -0
- data/vendor/assets/javascripts/voltar/chosen.jquery.min.js +2 -0
- data/vendor/assets/javascripts/voltar/easypiechart/jquery.easy-pie-chart.js +209 -0
- data/vendor/assets/javascripts/voltar/flot/jquery.flot.min.js +29 -0
- data/vendor/assets/javascripts/voltar/flot/jquery.flot.orderBars.js +187 -0
- data/vendor/assets/javascripts/voltar/flot/jquery.flot.pie.min.js +56 -0
- data/vendor/assets/javascripts/voltar/flot/jquery.flot.resize.js +60 -0
- data/vendor/assets/javascripts/voltar/flot/jquery.flot.spline.js +212 -0
- data/vendor/assets/javascripts/voltar/flot/jquery.flot.tooltip.min.js +12 -0
- data/vendor/assets/javascripts/voltar/jquery.min.js +5 -0
- data/vendor/assets/javascripts/voltar/moment.js +2856 -0
- data/vendor/assets/javascripts/voltar/ngStorage.js +103 -0
- data/vendor/assets/javascripts/voltar/ocLazyLoad.js +906 -0
- data/vendor/assets/javascripts/voltar/smart-table.min.js +1 -0
- data/vendor/assets/javascripts/voltar/sparkline/jquery.sparkline.min.js +2 -0
- data/vendor/assets/javascripts/voltar/toaster.js +185 -0
- data/vendor/assets/javascripts/voltar/ui-bootstrap-tpls.js +4116 -0
- data/vendor/assets/javascripts/voltar/ui-jq.js +86 -0
- data/vendor/assets/javascripts/voltar/ui-load.js +93 -0
- data/vendor/assets/javascripts/voltar/ui-validate.js +119 -0
- data/vendor/assets/stylesheets/voltar/animate.css +1098 -0
- data/vendor/assets/stylesheets/voltar/bootstrap.css +6202 -0
- data/vendor/assets/stylesheets/voltar/chosen.css +399 -0
- data/vendor/assets/stylesheets/voltar/font-awesome.min.css +4 -0
- data/vendor/assets/stylesheets/voltar/font.css +18 -0
- data/vendor/assets/stylesheets/voltar/simple-line-icons.css +526 -0
- data/vendor/assets/stylesheets/voltar/toaster.css +213 -0
- metadata +333 -0
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* This is a manifest file that'll be compiled into application.css, which will include all the files
|
|
3
|
+
* listed below.
|
|
4
|
+
*
|
|
5
|
+
* Any CSS and SCSS file within this directory, lib/assets/stylesheets, vendor/assets/stylesheets,
|
|
6
|
+
* or vendor/assets/stylesheets of plugins, if any, can be referenced here using a relative path.
|
|
7
|
+
*
|
|
8
|
+
* You're free to add application-wide styles to this file and they'll appear at the bottom of the
|
|
9
|
+
* compiled file so the styles you add here take precedence over styles defined in any styles
|
|
10
|
+
* defined in the other CSS/SCSS files in this directory. It is generally better to create a new
|
|
11
|
+
* file per style scope.
|
|
12
|
+
*
|
|
13
|
+
*= require voltar/bootstrap
|
|
14
|
+
*= require voltar/animate
|
|
15
|
+
*= require voltar/font-awesome.min
|
|
16
|
+
*= require voltar/simple-line-icons
|
|
17
|
+
*= require skeuocard.reset
|
|
18
|
+
*= require skeuocard
|
|
19
|
+
*= require voltar/font
|
|
20
|
+
*= require voltar/toaster
|
|
21
|
+
*= require voltar/app
|
|
22
|
+
*= require voltar/voltar
|
|
23
|
+
*/
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
.plans {
|
|
2
|
+
.thick-border-success {
|
|
3
|
+
border: 1px solid #27C24C;
|
|
4
|
+
}
|
|
5
|
+
.thick-border-info {
|
|
6
|
+
border: 1px solid #23B7E5;
|
|
7
|
+
}
|
|
8
|
+
.thick-border-warning {
|
|
9
|
+
border: 1px solid #FACE00;
|
|
10
|
+
}
|
|
11
|
+
.thick-border-danger {
|
|
12
|
+
border: 1px solid #F05050;
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
.btn-file {
|
|
17
|
+
position: relative;
|
|
18
|
+
overflow: hidden;
|
|
19
|
+
}
|
|
20
|
+
.btn-file input[type=file] {
|
|
21
|
+
position: absolute;
|
|
22
|
+
top: 0;
|
|
23
|
+
right: 0;
|
|
24
|
+
min-width: 100%;
|
|
25
|
+
min-height: 100%;
|
|
26
|
+
font-size: 100px;
|
|
27
|
+
text-align: right;
|
|
28
|
+
filter: alpha(opacity=0);
|
|
29
|
+
opacity: 0;
|
|
30
|
+
outline: none;
|
|
31
|
+
background: white;
|
|
32
|
+
cursor: inherit;
|
|
33
|
+
display: block;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
.image-row {
|
|
37
|
+
img.thumbnail {
|
|
38
|
+
height: 125px;
|
|
39
|
+
width: 100%;
|
|
40
|
+
margin-bottom: 0px;
|
|
41
|
+
}
|
|
42
|
+
.col-sm-4 {
|
|
43
|
+
margin: 10px 0px;
|
|
44
|
+
}
|
|
45
|
+
.opaque {
|
|
46
|
+
opacity: 0.4;
|
|
47
|
+
}
|
|
48
|
+
.no-radius {
|
|
49
|
+
border-radius: 0px;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
.spinner {
|
|
54
|
+
width: 40px;
|
|
55
|
+
height: 40px;
|
|
56
|
+
top: 100px;
|
|
57
|
+
position: relative;
|
|
58
|
+
margin: 100px auto;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
.double-bounce1, .double-bounce2 {
|
|
62
|
+
width: 100%;
|
|
63
|
+
height: 100%;
|
|
64
|
+
border-radius: 50%;
|
|
65
|
+
background-color: #333;
|
|
66
|
+
opacity: 0.6;
|
|
67
|
+
position: absolute;
|
|
68
|
+
top: 0;
|
|
69
|
+
left: 0;
|
|
70
|
+
|
|
71
|
+
-webkit-animation: bounce 2.0s infinite ease-in-out;
|
|
72
|
+
animation: bounce 2.0s infinite ease-in-out;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
.double-bounce2 {
|
|
76
|
+
-webkit-animation-delay: -1.0s;
|
|
77
|
+
animation-delay: -1.0s;
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
@-webkit-keyframes bounce {
|
|
81
|
+
0%, 100% { -webkit-transform: scale(0.0) }
|
|
82
|
+
50% { -webkit-transform: scale(1.0) }
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
@keyframes bounce {
|
|
86
|
+
0%, 100% {
|
|
87
|
+
transform: scale(0.0);
|
|
88
|
+
-webkit-transform: scale(0.0);
|
|
89
|
+
} 50% {
|
|
90
|
+
transform: scale(1.0);
|
|
91
|
+
-webkit-transform: scale(1.0);
|
|
92
|
+
}
|
|
93
|
+
}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="en" data-ng-app="voltar">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="utf-8" />
|
|
5
|
+
<title>Dealer Dashboard | Shopbuses</title>
|
|
6
|
+
<meta name="description" content="shopbuses, dealer, admin, portal, buses for sale, inventory" />
|
|
7
|
+
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1" />
|
|
8
|
+
<meta name="stripe-key" content="<%= ENV['STRIPE_PUBLIC_KEY'] %>" >
|
|
9
|
+
|
|
10
|
+
<%= stylesheet_link_tag 'voltar/application.css' %>
|
|
11
|
+
<%= javascript_include_tag "https://js.stripe.com/v1/" %>
|
|
12
|
+
<%= javascript_include_tag 'voltar/application.js' %>
|
|
13
|
+
</head>
|
|
14
|
+
<body>
|
|
15
|
+
|
|
16
|
+
<div class="app app-header-fixed app-aside-fixed app-aside-dock" id="app" ui-view></div>
|
|
17
|
+
<toaster-container toaster-options="{ 'timeOut': '30000' }"></toaster-container>
|
|
18
|
+
|
|
19
|
+
<%= render partial: 'voltar/shared/voltar_app' %>
|
|
20
|
+
<%= render partial: 'voltar/shared/app/dashboard' %>
|
|
21
|
+
<%= render partial: 'voltar/shared/app/country_province_select' %>
|
|
22
|
+
|
|
23
|
+
<%= render partial: 'voltar/inventory/index' %>
|
|
24
|
+
<%= render partial: 'voltar/inventory/edit' %>
|
|
25
|
+
<%= render partial: 'voltar/inventory/delete_dialog' %>
|
|
26
|
+
<%= render partial: 'voltar/inventory/mark_as_sold_dialog' %>
|
|
27
|
+
|
|
28
|
+
<%= render partial: 'voltar/account/profile' %>
|
|
29
|
+
<%= render partial: 'voltar/account/password' %>
|
|
30
|
+
<%= render partial: 'voltar/account/locations' %>
|
|
31
|
+
<%= render partial: 'voltar/account/managers' %>
|
|
32
|
+
<%= render partial: 'voltar/account/billing' %>
|
|
33
|
+
|
|
34
|
+
<%= render partial: 'voltar/shared/keen_js' %>
|
|
35
|
+
<%= render partial: 'voltar/shared/app/spinner' %>
|
|
36
|
+
<%= render partial: 'voltar/shared/voltar_header' %>
|
|
37
|
+
<%= render partial: 'voltar/shared/voltar_aside' %>
|
|
38
|
+
|
|
39
|
+
</body>
|
|
40
|
+
</html>
|
|
@@ -0,0 +1,552 @@
|
|
|
1
|
+
<script type="text/ng-template" id='billing.html'>
|
|
2
|
+
|
|
3
|
+
<div class="bg-light lter b-b wrapper-md">
|
|
4
|
+
<h1 class="m-n font-thin h3">Billing</h1>
|
|
5
|
+
<small class="text-muted">Manage your billing details here</small>
|
|
6
|
+
</div>
|
|
7
|
+
|
|
8
|
+
<div class="wrapper-md" data-ng-controller="BillingController">
|
|
9
|
+
|
|
10
|
+
<tabset class="tab-container">
|
|
11
|
+
<tab>
|
|
12
|
+
<tab-heading>
|
|
13
|
+
<i class='fa fa-file-text-o'></i> Invoices
|
|
14
|
+
</tab-heading>
|
|
15
|
+
|
|
16
|
+
<div>
|
|
17
|
+
|
|
18
|
+
<div class='table-responsive'>
|
|
19
|
+
<table class='table table-striped b-t b-light'>
|
|
20
|
+
<thead>
|
|
21
|
+
<tr>
|
|
22
|
+
<th>Invoice ID</th>
|
|
23
|
+
<th>Date</th>
|
|
24
|
+
<th>Total</th>
|
|
25
|
+
</tr>
|
|
26
|
+
</thead>
|
|
27
|
+
|
|
28
|
+
<tbody>
|
|
29
|
+
<tr data-ng-repeat="invoice in invoices">
|
|
30
|
+
<td>{{invoice.invoice}}</td>
|
|
31
|
+
<td>{{invoice.created * 1000 | date:'medium' }}</td>
|
|
32
|
+
<td>{{invoice.amount/100 | currency}}</td>
|
|
33
|
+
</tr>
|
|
34
|
+
</tbody>
|
|
35
|
+
|
|
36
|
+
</table>
|
|
37
|
+
</div>
|
|
38
|
+
|
|
39
|
+
</div>
|
|
40
|
+
|
|
41
|
+
</tab>
|
|
42
|
+
|
|
43
|
+
<tab>
|
|
44
|
+
<tab-heading>
|
|
45
|
+
<i class='fa fa-map-marker'></i> Plans
|
|
46
|
+
</tab-heading>
|
|
47
|
+
|
|
48
|
+
<div data-ng-controller='PlansController' class='plans'>
|
|
49
|
+
|
|
50
|
+
<div class="row no-gutter">
|
|
51
|
+
<div class="col-lg-3 col-md-4 col-sm-6">
|
|
52
|
+
<div class="panel b-a" data-ng-class=" { 'thick-border-success': currentPlan.name == 'trial' } ">
|
|
53
|
+
<div class="panel-heading wrapper-xs bg-success no-border">
|
|
54
|
+
</div>
|
|
55
|
+
<div class="wrapper text-center b-b b-light" data-ng-class="{ 'bg-success': currentPlan.name == 'trial' }">
|
|
56
|
+
<h4 class="text-u-c m-b-none">TRIAL</h4>
|
|
57
|
+
<h2 class="m-t-none">
|
|
58
|
+
<sup class="pos-rlt" style="top:-22px"></sup>
|
|
59
|
+
<span class="text-2x text-lt">FREE</span>
|
|
60
|
+
<br/>
|
|
61
|
+
<span class="text-xs"> for 30 days</span>
|
|
62
|
+
</h2>
|
|
63
|
+
</div>
|
|
64
|
+
<ul class="list-group text-center no-borders m-t-sm">
|
|
65
|
+
<li class="list-group-item">
|
|
66
|
+
<i class="icon-check text-success m-r-xs"></i> 1 Location
|
|
67
|
+
</li>
|
|
68
|
+
<li class="list-group-item">
|
|
69
|
+
<i class="icon-check text-success m-r-xs"></i> Custom Dashboard
|
|
70
|
+
</li>
|
|
71
|
+
<li class="list-group-item">
|
|
72
|
+
<i class="icon-check text-success m-r-xs"></i> Inventory Management
|
|
73
|
+
</li>
|
|
74
|
+
<li class="list-group-item">
|
|
75
|
+
<i class="icon-check text-success m-r-xs"></i> Lead Manager
|
|
76
|
+
</li>
|
|
77
|
+
<li class="list-group-item">
|
|
78
|
+
<i class="icon-close text-danger m-r-xs"></i> <span class="text-l-t">Analytics</span>
|
|
79
|
+
</li>
|
|
80
|
+
<li class="list-group-item">
|
|
81
|
+
<i class="icon-close text-danger m-r-xs"></i> <span class="text-l-t">Social Media Integration</span>
|
|
82
|
+
</li>
|
|
83
|
+
<li class="list-group-item">
|
|
84
|
+
<i class="icon-close text-danger m-r-xs"></i> <span class="text-l-t">Multiuser</span>
|
|
85
|
+
</li>
|
|
86
|
+
<li class="list-group-item">
|
|
87
|
+
<i class="icon-close text-danger m-r-xs"></i> <span class="text-l-t">Support</span>
|
|
88
|
+
</li>
|
|
89
|
+
<li class="list-group-item">
|
|
90
|
+
<i class="icon-close text-danger m-r-xs"></i> <span class="text-l-t">1-800 Call Tracking</span>
|
|
91
|
+
</li>
|
|
92
|
+
<li class="list-group-item">
|
|
93
|
+
<i class="icon-close text-danger m-r-xs"></i> <span class="text-l-t">Automated Reports</span>
|
|
94
|
+
</li>
|
|
95
|
+
<li class="list-group-item">
|
|
96
|
+
<i class="icon-close text-danger m-r-xs"></i> <span class="text-l-t">Commercial Exports</span>
|
|
97
|
+
</li>
|
|
98
|
+
<li class="list-group-item">
|
|
99
|
+
<i class="icon-close text-danger m-r-xs"></i> <span class="text-l-t">Live Chat</span>
|
|
100
|
+
</li>
|
|
101
|
+
<li class="list-group-item">
|
|
102
|
+
<i class="icon-close text-danger m-r-xs"></i> <span class="text-l-t">Video Marketing</span>
|
|
103
|
+
</li>
|
|
104
|
+
</ul>
|
|
105
|
+
<div class="panel-footer text-center">
|
|
106
|
+
<div class="panel-footer text-center">
|
|
107
|
+
<a href="" class="btn btn-default font-bold m" data-ng-show="currentPlan.name == 'trial'">
|
|
108
|
+
<i class='fa fa-check'></i>
|
|
109
|
+
Your Current Plan
|
|
110
|
+
</a>
|
|
111
|
+
<a href="" class="btn btn-success font-bold m" data-ng-click="selectPlan('trial')" data-ng-show="currentPlan.name != 'trial'">Select Plan</a>
|
|
112
|
+
</div>
|
|
113
|
+
</div>
|
|
114
|
+
</div>
|
|
115
|
+
</div>
|
|
116
|
+
|
|
117
|
+
<div class="col-lg-3 col-md-4 col-sm-6">
|
|
118
|
+
<div class="panel b-a" data-ng-class=" { 'thick-border-info': currentPlan.name == 'basic' } ">
|
|
119
|
+
<div class="panel-heading wrapper-xs bg-info no-border">
|
|
120
|
+
</div>
|
|
121
|
+
<div class="wrapper text-center b-b b-light" data-ng-class="{ 'bg-info': currentPlan.name == 'basic' }">
|
|
122
|
+
<h4 class="text-u-c m-b-none">BASIC</h4>
|
|
123
|
+
<h2 class="m-t-none">
|
|
124
|
+
<sup class="pos-rlt" style="top:-22px">$</sup>
|
|
125
|
+
<span class="text-2x text-lt">897</span>
|
|
126
|
+
<span class="text-xs">/ mo</span>
|
|
127
|
+
<br/>
|
|
128
|
+
<span class="text-xs">Best value!</span>
|
|
129
|
+
</h2>
|
|
130
|
+
</div>
|
|
131
|
+
<ul class="list-group text-center no-borders m-t-sm">
|
|
132
|
+
<li class="list-group-item">
|
|
133
|
+
<i class="icon-check text-success m-r-xs"></i> 1 Location
|
|
134
|
+
</li>
|
|
135
|
+
<li class="list-group-item">
|
|
136
|
+
<i class="icon-check text-success m-r-xs"></i> Custom Dashboard
|
|
137
|
+
</li>
|
|
138
|
+
<li class="list-group-item">
|
|
139
|
+
<i class="icon-check text-success m-r-xs"></i> Inventory Management
|
|
140
|
+
</li>
|
|
141
|
+
<li class="list-group-item">
|
|
142
|
+
<i class="icon-check text-success m-r-xs"></i> Lead Manager
|
|
143
|
+
</li>
|
|
144
|
+
<li class="list-group-item">
|
|
145
|
+
<i class="icon-check text-success m-r-xs"></i> Analytics
|
|
146
|
+
</li>
|
|
147
|
+
<li class="list-group-item">
|
|
148
|
+
<i class="icon-check text-success m-r-xs"></i> Social Media Integration
|
|
149
|
+
</li>
|
|
150
|
+
<li class="list-group-item">
|
|
151
|
+
<i class="icon-close text-danger m-r-xs"></i> <span class="text-l-t">Multiuser</span>
|
|
152
|
+
</li>
|
|
153
|
+
<li class="list-group-item">
|
|
154
|
+
<i class="icon-close text-danger m-r-xs"></i> <span class="text-l-t">Support</span>
|
|
155
|
+
</li>
|
|
156
|
+
<li class="list-group-item">
|
|
157
|
+
<i class="icon-close text-danger m-r-xs"></i> <span class="text-l-t">1-800 Call Tracking</span>
|
|
158
|
+
</li>
|
|
159
|
+
<li class="list-group-item">
|
|
160
|
+
<i class="icon-close text-danger m-r-xs"></i> <span class="text-l-t">Automated Reports</span>
|
|
161
|
+
</li>
|
|
162
|
+
<li class="list-group-item">
|
|
163
|
+
<i class="icon-close text-danger m-r-xs"></i> <span class="text-l-t">Commercial Exports</span>
|
|
164
|
+
</li>
|
|
165
|
+
<li class="list-group-item">
|
|
166
|
+
<i class="icon-close text-danger m-r-xs"></i> <span class="text-l-t">Live Chat</span>
|
|
167
|
+
</li>
|
|
168
|
+
<li class="list-group-item">
|
|
169
|
+
<i class="icon-close text-danger m-r-xs"></i> <span class="text-l-t">Video Marketing</span>
|
|
170
|
+
</li>
|
|
171
|
+
</ul>
|
|
172
|
+
<div class="panel-footer text-center">
|
|
173
|
+
<div class="panel-footer text-center">
|
|
174
|
+
<a href="" class="btn btn-default font-bold m" data-ng-show="currentPlan.name == 'basic'">
|
|
175
|
+
<i class='fa fa-check'></i>
|
|
176
|
+
Your Current Plan
|
|
177
|
+
</a>
|
|
178
|
+
<a href="" class="btn btn-info font-bold m" data-ng-click="selectPlan('basic')" data-ng-show="currentPlan.name != 'basic'">Select Plan</a>
|
|
179
|
+
</div>
|
|
180
|
+
</div>
|
|
181
|
+
</div>
|
|
182
|
+
</div>
|
|
183
|
+
|
|
184
|
+
<div class="col-lg-3 col-md-4 col-sm-6">
|
|
185
|
+
<div class="panel b-a" data-ng-class=" { 'thick-border-warning': currentPlan.name == 'pro' } ">
|
|
186
|
+
<div class="panel-heading wrapper-xs bg-warning dker no-border">
|
|
187
|
+
|
|
188
|
+
</div>
|
|
189
|
+
<div class="wrapper text-center m-l-n-xxs m-r-n-xxs b-b b-light" data-ng-class="{ 'bg-warning': currentPlan.name == 'pro' }">
|
|
190
|
+
<h4 class="text-u-c m-b-none">PRO</h4>
|
|
191
|
+
<h2 class="m-t-none">
|
|
192
|
+
<sup class="pos-rlt" style="top:-22px">$</sup>
|
|
193
|
+
<span class="text-2x text-lt">1297</span>
|
|
194
|
+
<span class="text-xs">/ mo</span>
|
|
195
|
+
<br/>
|
|
196
|
+
<span class="text-xs">Recommended!</span>
|
|
197
|
+
</h2>
|
|
198
|
+
</div>
|
|
199
|
+
<ul class="list-group text-center no-borders m-t-sm">
|
|
200
|
+
<li class="list-group-item">
|
|
201
|
+
<i class="icon-check text-success m-r-xs"></i> 1 ($500/mo per additional)
|
|
202
|
+
</li>
|
|
203
|
+
<li class="list-group-item">
|
|
204
|
+
<i class="icon-check text-success m-r-xs"></i> Custom Dashboard
|
|
205
|
+
</li>
|
|
206
|
+
<li class="list-group-item">
|
|
207
|
+
<i class="icon-check text-success m-r-xs"></i> Inventory Management
|
|
208
|
+
</li>
|
|
209
|
+
<li class="list-group-item">
|
|
210
|
+
<i class="icon-check text-success m-r-xs"></i> Lead Manager
|
|
211
|
+
</li>
|
|
212
|
+
<li class="list-group-item">
|
|
213
|
+
<i class="icon-check text-success m-r-xs"></i> Analytics
|
|
214
|
+
</li>
|
|
215
|
+
<li class="list-group-item">
|
|
216
|
+
<i class="icon-check text-success m-r-xs"></i> Social Media Integration
|
|
217
|
+
</li>
|
|
218
|
+
<li class="list-group-item">
|
|
219
|
+
<i class="icon-check text-success m-r-xs"></i> Multiuser
|
|
220
|
+
</li>
|
|
221
|
+
<li class="list-group-item">
|
|
222
|
+
<i class="icon-check text-success m-r-xs"></i> Email Support
|
|
223
|
+
</li>
|
|
224
|
+
<li class="list-group-item">
|
|
225
|
+
<i class="icon-check text-success m-r-xs"></i> 1-800 Call Tracking (200 minutes)
|
|
226
|
+
</li>
|
|
227
|
+
<li class="list-group-item">
|
|
228
|
+
<i class="icon-check text-success m-r-xs"></i> Automated Reports
|
|
229
|
+
</li>
|
|
230
|
+
<li class="list-group-item">
|
|
231
|
+
<i class="icon-close text-danger m-r-xs"></i> <span class="text-l-t">Commercial Exports</span>
|
|
232
|
+
</li>
|
|
233
|
+
<li class="list-group-item">
|
|
234
|
+
<i class="icon-close text-danger m-r-xs"></i> <span class="text-l-t">Live Chat</span>
|
|
235
|
+
</li>
|
|
236
|
+
<li class="list-group-item">
|
|
237
|
+
<i class="icon-close text-danger m-r-xs"></i> <span class="text-l-t">Video Marketing</span>
|
|
238
|
+
</li>
|
|
239
|
+
</ul>
|
|
240
|
+
<div class="panel-footer text-center">
|
|
241
|
+
<div class="panel-footer text-center">
|
|
242
|
+
<a href="" class="btn btn-default font-bold m" data-ng-show="currentPlan.name == 'pro'">
|
|
243
|
+
<i class='fa fa-check'></i>
|
|
244
|
+
Your Current Plan
|
|
245
|
+
</a>
|
|
246
|
+
<a href="" class="btn btn-warning font-bold m" data-ng-click="selectPlan('pro')" data-ng-show="currentPlan.name != 'pro'">Select Plan</a>
|
|
247
|
+
</div>
|
|
248
|
+
</div>
|
|
249
|
+
</div>
|
|
250
|
+
</div>
|
|
251
|
+
|
|
252
|
+
<div class="col-lg-3 col-md-4 col-sm-6 hidden-md">
|
|
253
|
+
<div class="panel b-a" data-ng-class=" { 'thick-border-danger': currentPlan.name == 'ultimate' } ">
|
|
254
|
+
<div class="panel-heading wrapper-xs bg-danger no-border">
|
|
255
|
+
|
|
256
|
+
</div>
|
|
257
|
+
<div class="wrapper text-center b-b b-light" data-ng-class="{ 'bg-danger': currentPlan.name == 'ultimate' }">
|
|
258
|
+
<h4 class="text-u-c m-b-none">ULTIMATE</h4>
|
|
259
|
+
<h2 class="m-t-none">
|
|
260
|
+
<sup class="pos-rlt" style="top:-22px">$</sup>
|
|
261
|
+
<span class="text-2x text-lt">2497</span>
|
|
262
|
+
<span class="text-xs">/ mo</span>
|
|
263
|
+
<br/>
|
|
264
|
+
<span class="text-xs">For established Businesses!</span>
|
|
265
|
+
</h2>
|
|
266
|
+
</div>
|
|
267
|
+
<ul class="list-group text-center no-borders m-t-sm">
|
|
268
|
+
<li class="list-group-item">
|
|
269
|
+
<i class="icon-check text-success m-r-xs"></i> 1 ($500/mo per additional)
|
|
270
|
+
</li>
|
|
271
|
+
<li class="list-group-item">
|
|
272
|
+
<i class="icon-check text-success m-r-xs"></i> Custom Dashboard
|
|
273
|
+
</li>
|
|
274
|
+
<li class="list-group-item">
|
|
275
|
+
<i class="icon-check text-success m-r-xs"></i> Inventory Management
|
|
276
|
+
</li>
|
|
277
|
+
<li class="list-group-item">
|
|
278
|
+
<i class="icon-check text-success m-r-xs"></i> Lead Manager
|
|
279
|
+
</li>
|
|
280
|
+
<li class="list-group-item">
|
|
281
|
+
<i class="icon-check text-success m-r-xs"></i> Analytics
|
|
282
|
+
</li>
|
|
283
|
+
<li class="list-group-item">
|
|
284
|
+
<i class="icon-check text-success m-r-xs"></i> Social Media Integration
|
|
285
|
+
</li>
|
|
286
|
+
<li class="list-group-item">
|
|
287
|
+
<i class="icon-check text-success m-r-xs"></i> Multiuser
|
|
288
|
+
</li>
|
|
289
|
+
<li class="list-group-item">
|
|
290
|
+
<i class="icon-check text-success m-r-xs"></i> Email + Phone Support
|
|
291
|
+
</li>
|
|
292
|
+
<li class="list-group-item">
|
|
293
|
+
<i class="icon-check text-success m-r-xs"></i> 1-800 Call Tracking (500 minutes)
|
|
294
|
+
</li>
|
|
295
|
+
<li class="list-group-item">
|
|
296
|
+
<i class="icon-check text-success m-r-xs"></i> Automated Reports
|
|
297
|
+
</li>
|
|
298
|
+
<li class="list-group-item">
|
|
299
|
+
<i class="icon-check text-success m-r-xs"></i> Commercial Exports
|
|
300
|
+
</li>
|
|
301
|
+
<li class="list-group-item">
|
|
302
|
+
<i class="icon-check text-success m-r-xs"></i> Live Chat
|
|
303
|
+
</li>
|
|
304
|
+
<li class="list-group-item">
|
|
305
|
+
<i class="icon-check text-success m-r-xs"></i> Video Marketing
|
|
306
|
+
</li>
|
|
307
|
+
</ul>
|
|
308
|
+
<div class="panel-footer text-center">
|
|
309
|
+
<div class="panel-footer text-center">
|
|
310
|
+
<a href="" class="btn btn-default font-bold m" data-ng-show="currentPlan.name == 'ultimate'">
|
|
311
|
+
<i class='fa fa-check'></i>
|
|
312
|
+
Your Current Plan
|
|
313
|
+
</a>
|
|
314
|
+
<a href="" class="btn btn-danger font-bold m" data-ng-click="selectPlan('ultimate')" data-ng-show="currentPlan.name != 'ultimate'">Select Plan</a>
|
|
315
|
+
</div>
|
|
316
|
+
</div>
|
|
317
|
+
</div>
|
|
318
|
+
</div>
|
|
319
|
+
</div>
|
|
320
|
+
|
|
321
|
+
</div> <!-- End PlansController -->
|
|
322
|
+
</tab>
|
|
323
|
+
|
|
324
|
+
<tab>
|
|
325
|
+
<tab-heading>
|
|
326
|
+
<i class='fa fa-credit-card'></i> Credit Cards
|
|
327
|
+
</tab-heading>
|
|
328
|
+
|
|
329
|
+
<div>
|
|
330
|
+
|
|
331
|
+
<div class='row'>
|
|
332
|
+
<div class='col-lg-6'>
|
|
333
|
+
<div class="panel panel-default">
|
|
334
|
+
|
|
335
|
+
<div class='panel-heading font-bold'>
|
|
336
|
+
<span>Credit Cards on File:</span>
|
|
337
|
+
<button class="btn btn-primary btn-xs pull-right" data-ng-click="addCreditCard()">
|
|
338
|
+
<i class="fa fa-plus"></i>
|
|
339
|
+
Add New Card
|
|
340
|
+
</button>
|
|
341
|
+
</div>
|
|
342
|
+
|
|
343
|
+
<div class="panel-body">
|
|
344
|
+
<div class='table table-responsive'>
|
|
345
|
+
|
|
346
|
+
<table class='table table-responsive table-striped'>
|
|
347
|
+
<thead>
|
|
348
|
+
<tr>
|
|
349
|
+
<th>Card Type</th>
|
|
350
|
+
<th>Card Holder Name</th>
|
|
351
|
+
<th>Last 4 Digits</th>
|
|
352
|
+
<th>Expiry Date</th>
|
|
353
|
+
<th>Actions</th>
|
|
354
|
+
</tr>
|
|
355
|
+
</thead>
|
|
356
|
+
|
|
357
|
+
<tbody>
|
|
358
|
+
<tr data-ng-repeat='card in dealer.stripe_customer.cards.data'>
|
|
359
|
+
<td>
|
|
360
|
+
{{card.type}}
|
|
361
|
+
</td>
|
|
362
|
+
<td>
|
|
363
|
+
{{card.name}}
|
|
364
|
+
<span class="label bg-info" data-ng-show='card.id == dealer.stripe_customer.default_card'>Primary</span>
|
|
365
|
+
</td>
|
|
366
|
+
<td>{{card.last4}}</td>
|
|
367
|
+
<td>{{card.exp_month}}/{{card.exp_year}}</td>
|
|
368
|
+
<td>
|
|
369
|
+
<div class='btn-group'>
|
|
370
|
+
<button type='button' class='btn btn-default btn-xs' data-ng-click='editCreditCard(card)' >
|
|
371
|
+
<i class='fa fa-edit'></i>
|
|
372
|
+
</button>
|
|
373
|
+
<button type='button' class='btn btn-default btn-xs' data-ng-hide='card.id == dealer.stripe_customer.default_card' data-ng-click='makePrimary(card)' >
|
|
374
|
+
Make Primary
|
|
375
|
+
</button>
|
|
376
|
+
</div>
|
|
377
|
+
</td>
|
|
378
|
+
</tr>
|
|
379
|
+
</tbody>
|
|
380
|
+
</table>
|
|
381
|
+
|
|
382
|
+
</div>
|
|
383
|
+
</div>
|
|
384
|
+
</div>
|
|
385
|
+
</div>
|
|
386
|
+
|
|
387
|
+
<div class='col-lg-6' data-ng-show='showEditForm'>
|
|
388
|
+
|
|
389
|
+
<div class="panel panel-default">
|
|
390
|
+
<div class='panel-heading font-bold'>
|
|
391
|
+
<span>Credit Card Details</span>
|
|
392
|
+
|
|
393
|
+
<button class='btn btn-primary btn-xs pull-right' type='submit' data-ng-click='updateCard()'>
|
|
394
|
+
Update Card
|
|
395
|
+
</button>
|
|
396
|
+
|
|
397
|
+
<button class='btn btn-dark btn-xs pull-right m-l-sm' type='submit' data-ng-click='cancelCardEdit()'>
|
|
398
|
+
Cancel
|
|
399
|
+
</button>
|
|
400
|
+
|
|
401
|
+
</div>
|
|
402
|
+
|
|
403
|
+
<div class="panel-body">
|
|
404
|
+
|
|
405
|
+
<div class='alert alert-info'>
|
|
406
|
+
<span>You cannot update the credit card number or CVC of an existing card. If you need to change those details, chances are you need to add a new card to your account.</span>
|
|
407
|
+
</div>
|
|
408
|
+
|
|
409
|
+
<form name='updateCreditCard'>
|
|
410
|
+
|
|
411
|
+
<div class='form-group'>
|
|
412
|
+
<label>Name</label>
|
|
413
|
+
<input type='text' class='form-control' data-ng-model='currentCard.name'>
|
|
414
|
+
</div>
|
|
415
|
+
|
|
416
|
+
<div class='form-group'>
|
|
417
|
+
<label>Expiry Month</label>
|
|
418
|
+
<input type='text' class='form-control' data-ng-model='currentCard.exp_month'>
|
|
419
|
+
</div>
|
|
420
|
+
|
|
421
|
+
<div class='form-group'>
|
|
422
|
+
<label>Expiry Year</label>
|
|
423
|
+
<input type='text' class='form-control' data-ng-model='currentCard.exp_year'>
|
|
424
|
+
</div>
|
|
425
|
+
|
|
426
|
+
<div class='form-group'>
|
|
427
|
+
<label>Street Address</label>
|
|
428
|
+
<input type='text' class='form-control' data-ng-model='currentCard.address_line1'>
|
|
429
|
+
</div>
|
|
430
|
+
|
|
431
|
+
<div class='form-group'>
|
|
432
|
+
<label>City</label>
|
|
433
|
+
<input type='text' class='form-control' data-ng-model='currentCard.address_city'>
|
|
434
|
+
</div>
|
|
435
|
+
|
|
436
|
+
<div class='form-group'>
|
|
437
|
+
<label>State/Province</label>
|
|
438
|
+
<input type='text' class='form-control' data-ng-model='currentCard.address_state'>
|
|
439
|
+
</div>
|
|
440
|
+
|
|
441
|
+
<div class='form-group'>
|
|
442
|
+
<label>Zip/Postal Code</label>
|
|
443
|
+
<input type='text' class='form-control' data-ng-model='currentCard.address_zip'>
|
|
444
|
+
</div>
|
|
445
|
+
|
|
446
|
+
<div class='form-group'>
|
|
447
|
+
<label>Country</label>
|
|
448
|
+
<input type='text' class='form-control' data-ng-model='currentCard.address_country'>
|
|
449
|
+
</div>
|
|
450
|
+
</form>
|
|
451
|
+
</div>
|
|
452
|
+
</div>
|
|
453
|
+
</div>
|
|
454
|
+
|
|
455
|
+
|
|
456
|
+
<div class='col-lg-6' data-ng-show='showAddCardForm' >
|
|
457
|
+
|
|
458
|
+
<div class='panel panel-default'>
|
|
459
|
+
<div class='panel-heading font-bold'>
|
|
460
|
+
<span>Add New Card</span>
|
|
461
|
+
|
|
462
|
+
<button class='btn btn-primary btn-xs pull-right' type='submit' data-ng-click='addNewCard()'>
|
|
463
|
+
Add Card
|
|
464
|
+
</button>
|
|
465
|
+
|
|
466
|
+
<button class='btn btn-dark btn-xs pull-right m-l-sm' type='submit' data-ng-click='cancelCardEdit()'>
|
|
467
|
+
Cancel
|
|
468
|
+
</button>
|
|
469
|
+
</div>
|
|
470
|
+
|
|
471
|
+
<div class='panel-body'>
|
|
472
|
+
|
|
473
|
+
<div class='alert alert-danger' data-ng-show='stripeError'>
|
|
474
|
+
<span>{{stripeError.message}}</span>
|
|
475
|
+
</div>
|
|
476
|
+
|
|
477
|
+
|
|
478
|
+
<form name='creditCardForm'>
|
|
479
|
+
<center>
|
|
480
|
+
<div class="credit-card-input no-js" id="skeuocard">
|
|
481
|
+
<p class="no-support-warning">
|
|
482
|
+
Either you have Javascript disabled, or you are using an unsupported browser, amigo! Thats why you are seeing this old-school credit card input form instead of a fancy new Skeuocard. On the other hand, at least you know it gracefully degrades...
|
|
483
|
+
</p>
|
|
484
|
+
<label for="cc_type">Card Type</label>
|
|
485
|
+
<select name="cc_type" >
|
|
486
|
+
<option value="">...</option>
|
|
487
|
+
<option value="Visa" data-sc-type='visa'>Visa</option>
|
|
488
|
+
<option value="Discover" data-sc-type='discover'>Discover</option>
|
|
489
|
+
<option value="MasterCard" data-sc-type='mastercard'>MasterCard</option>
|
|
490
|
+
<option value="JCB" data-sc-type='jcb'>JCB</option>
|
|
491
|
+
<option value="Diners Club" data-sc-type='dinersclubintl'>Diners Club</option>
|
|
492
|
+
<option value="American Express" data-sc-type='amex'>American Express</option>
|
|
493
|
+
<option value="maestro">Maestro</option>
|
|
494
|
+
<option value="unionpay">China UnionPay</option>
|
|
495
|
+
</select>
|
|
496
|
+
<label for="cc_number">Card Number</label>
|
|
497
|
+
<input type="text" name="cc_number" id="cc_number" maxlength="19" size="19" >
|
|
498
|
+
<label for="cc_exp_month">Expiration Month</label>
|
|
499
|
+
<input type="text" name="cc_exp_month" id="cc_exp_month" placeholder="00" >
|
|
500
|
+
<label for="cc_exp_year" >Expiration Year</label>
|
|
501
|
+
<input type="text" name="cc_exp_year" id="cc_exp_year" placeholder="00" >
|
|
502
|
+
<label for="cc_name">Cardholders Name</label>
|
|
503
|
+
<input type="text" name="cc_name" id="cc_name" placeholder="John Doe" data-ng-model='sample.name' >
|
|
504
|
+
<label for="cc_cvc">Card Validation Code</label>
|
|
505
|
+
<input type="text" name="cc_cvc" id="cc_cvc" placeholder="123" maxlength="3" size="3">
|
|
506
|
+
</div>
|
|
507
|
+
</center>
|
|
508
|
+
|
|
509
|
+
<div class='form-group'>
|
|
510
|
+
<label>Street Address</label>
|
|
511
|
+
<input type='text' class='form-control' id='address_line1'>
|
|
512
|
+
</div>
|
|
513
|
+
|
|
514
|
+
<div class='form-group'>
|
|
515
|
+
<label>City</label>
|
|
516
|
+
<input type='text' class='form-control' id='address_city'>
|
|
517
|
+
</div>
|
|
518
|
+
|
|
519
|
+
<div class='form-group'>
|
|
520
|
+
<label>State/Province</label>
|
|
521
|
+
<input type='text' class='form-control' id='address_state'>
|
|
522
|
+
</div>
|
|
523
|
+
|
|
524
|
+
<div class='form-group'>
|
|
525
|
+
<label>Zip/Postal Code</label>
|
|
526
|
+
<input type='text' class='form-control' id='address_zip'>
|
|
527
|
+
</div>
|
|
528
|
+
|
|
529
|
+
<div class='form-group'>
|
|
530
|
+
<label>Country</label>
|
|
531
|
+
<input type='text' class='form-control' id='address_country'>
|
|
532
|
+
</div>
|
|
533
|
+
|
|
534
|
+
</form>
|
|
535
|
+
|
|
536
|
+
</div>
|
|
537
|
+
</div>
|
|
538
|
+
</div>
|
|
539
|
+
|
|
540
|
+
|
|
541
|
+
|
|
542
|
+
</div>
|
|
543
|
+
|
|
544
|
+
|
|
545
|
+
</div>
|
|
546
|
+
|
|
547
|
+
</tab>
|
|
548
|
+
</tabset>
|
|
549
|
+
|
|
550
|
+
</div>
|
|
551
|
+
|
|
552
|
+
</script>
|