wbase 0.0.4 → 0.0.5
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 +4 -4
- data/README.md +219 -2
- data/app/assets/javascripts/wbase/auth/bootstrap.min.js +7 -0
- data/app/assets/javascripts/wbase/auth/detect.js +7 -0
- data/app/assets/javascripts/wbase/auth/fastclick.js +841 -0
- data/app/assets/javascripts/wbase/auth/jquery.app.js +318 -0
- data/app/assets/javascripts/wbase/auth/jquery.blockUI.js +620 -0
- data/app/assets/javascripts/wbase/auth/jquery.core.js +323 -0
- data/app/assets/javascripts/wbase/auth/jquery.min.js +5 -0
- data/app/assets/javascripts/wbase/auth/jquery.nicescroll.js +113 -0
- data/app/assets/javascripts/wbase/auth/jquery.scrollTo.min.js +7 -0
- data/app/assets/javascripts/wbase/auth/jquery.slimscroll.js +474 -0
- data/app/assets/javascripts/wbase/auth/modernizr.min.js +1 -0
- data/app/assets/javascripts/wbase/auth/pace.min.js +2 -0
- data/app/assets/javascripts/wbase/auth/waves.js +498 -0
- data/app/assets/javascripts/wbase/auth/wow.min.js +2 -0
- data/app/assets/javascripts/wbase/auth.js +12 -0
- data/app/assets/stylesheets/wbase/auth/components.css +2362 -0
- data/app/assets/stylesheets/wbase/auth/core.css +2190 -0
- data/app/assets/stylesheets/wbase/auth/icons.css +12067 -0
- data/app/assets/stylesheets/wbase/auth/pages.css +2039 -0
- data/app/assets/stylesheets/wbase/auth/responsive.css +162 -0
- data/app/assets/stylesheets/wbase/auth/typicons.css +1370 -0
- data/app/assets/stylesheets/wbase/auth/variables.css +0 -0
- data/app/assets/stylesheets/wbase/auth.scss +9 -0
- data/app/controllers/wbase/application_controller.rb +13 -0
- data/app/controllers/wbase/mail_events_controller.rb +21 -0
- data/app/controllers/wbase/password_resets_controller.rb +43 -0
- data/app/controllers/wbase/sessions_controller.rb +35 -0
- data/app/controllers/wbase/static_pages_controller.rb +4 -0
- data/app/controllers/wbase/stripe_webhooks_controller.rb +54 -0
- data/app/controllers/wbase/subscriptions_controller.rb +50 -0
- data/app/controllers/wbase/users_controller.rb +65 -0
- data/app/helpers/wbase/auth_helper.rb +44 -0
- data/app/jobs/wbase/activate_drip_subscriber_job.rb +15 -0
- data/app/jobs/wbase/create_drip_subscriber_job.rb +13 -0
- data/app/jobs/wbase/dripable.rb +22 -0
- data/app/mailers/application_mailer.rb +4 -0
- data/app/mailers/wbase/admin_mailer.rb +35 -0
- data/app/mailers/wbase/password_reset_mailer.rb +20 -0
- data/app/models/wbase/mail_event.rb +21 -0
- data/app/models/wbase/plan.rb +26 -0
- data/app/models/wbase/ssl_verification.rb +21 -0
- data/app/models/wbase/stripe_webhook.rb +22 -0
- data/app/models/wbase/subscription.rb +47 -0
- data/app/models/wbase/userable.rb +85 -0
- data/app/services/wbase/mail_event_batch.rb +22 -0
- data/app/services/wbase/start_subscription.rb +81 -0
- data/app/views/layouts/mailer.html.erb +53 -0
- data/app/views/layouts/mailer.text.erb +1 -0
- data/app/views/layouts/wbase/_common_head.html.erb +46 -0
- data/app/views/layouts/wbase/auth.html.erb +23 -0
- data/app/views/layouts/wbase/landing.html.erb +9 -56
- data/app/views/shared/_errors.html.erb +10 -0
- data/app/views/wbase/admin_mailer/new_subscription.html.erb +33 -0
- data/app/views/wbase/admin_mailer/new_user.html.erb +7 -0
- data/app/views/wbase/password_reset_mailer/reset.html.erb +10 -0
- data/app/views/wbase/password_reset_mailer/reset.text.erb +5 -0
- data/app/views/wbase/password_resets/edit.html.erb +22 -0
- data/app/views/wbase/password_resets/new.html.erb +41 -0
- data/app/views/wbase/sessions/new.html.erb +58 -0
- data/app/views/wbase/static_pages/landing/_pricing.html.erb +6 -2
- data/app/views/wbase/static_pages/start.html.erb +1 -1
- data/app/views/wbase/static_pages/welcome.html.erb +1 -1
- data/app/views/wbase/subscriptions/edit.html.erb +2 -0
- data/app/views/wbase/subscriptions/new.html.erb +91 -0
- data/app/views/wbase/subscriptions/show.html.erb +2 -0
- data/app/views/wbase/users/_affiliate.html.erb +66 -0
- data/app/views/wbase/users/_plan.html.erb +11 -0
- data/app/views/wbase/users/_plans.html.erb +11 -0
- data/app/views/wbase/users/edit.html.erb +2 -0
- data/app/views/wbase/users/new.html.erb +38 -0
- data/app/views/wbase/users/show.html.erb +37 -0
- data/config/initializers/assets.rb +1 -3
- data/config/routes.rb +9 -0
- data/db/migrate/20161127212521_create_wbase_subscriptions.rb +17 -0
- data/db/migrate/20161127212831_create_wbase_plans.rb +15 -0
- data/db/migrate/20161127224117_create_wbase_ssl_verifications.rb +10 -0
- data/db/migrate/20161128022640_create_wbase_mail_events.rb +16 -0
- data/db/migrate/20161128031211_create_wbase_stripe_webhooks.rb +17 -0
- data/lib/wbase/engine.rb +37 -28
- data/lib/wbase/version.rb +1 -1
- data/test/controllers/wbase/mail_events_controller_test.rb +13 -0
- data/test/controllers/wbase/password_resets_controller_test.rb +13 -0
- data/test/controllers/wbase/sessions_controller_test.rb +13 -0
- data/test/controllers/wbase/stripe_webhooks_controller_test.rb +13 -0
- data/test/controllers/wbase/subscriptions_controller_test.rb +13 -0
- data/test/controllers/wbase/users_controller_test.rb +13 -0
- data/test/dummy/config/database.yml +4 -7
- data/test/dummy/db/development.sqlite3 +0 -0
- data/test/dummy/db/schema.rb +85 -0
- data/test/dummy/log/development.log +225 -0
- data/test/fixtures/wbase/mail_events.yml +38 -0
- data/test/fixtures/wbase/plans.yml +40 -0
- data/test/fixtures/wbase/stripe_webhooks.yml +41 -0
- data/test/fixtures/wbase/subscriptions.yml +46 -0
- data/test/jobs/wbase/activate_drip_subscriber_job_test.rb +9 -0
- data/test/jobs/wbase/create_drip_subscriber_job_job_test.rb +9 -0
- data/test/mailers/previews/wbase/admin_mailer_preview.rb +11 -0
- data/test/mailers/previews/wbase/password_reset_mailer_preview.rb +11 -0
- data/test/mailers/wbase/admin_mailer_test.rb +14 -0
- data/test/mailers/wbase/password_reset_mailer_test.rb +14 -0
- data/test/models/wbase/mail_event_test.rb +26 -0
- data/test/models/wbase/plan_test.rb +30 -0
- data/test/models/wbase/ssl_verification_test.rb +20 -0
- data/test/models/wbase/stripe_webhook_test.rb +27 -0
- data/test/models/wbase/subscription_test.rb +32 -0
- metadata +121 -12
- data/app/helpers/wbase/application_helper.rb +0 -4
- data/app/helpers/wbase/static_pages_helper.rb +0 -4
- data/app/views/wbase/static_pages/_map.html.erb +0 -17
- data/app/views/wbase/static_pages/_order_stats.html.erb +0 -28
- data/app/views/wbase/static_pages/_pricing.html.erb +0 -89
- data/app/views/wbase/static_pages/_stats.html.erb +0 -28
- data/app/views/wbase/static_pages/_testimonial.html.erb +0 -16
- data/app/views/wbase/static_pages/affiliate.html.erb +0 -54
- data/app/views/wbase/static_pages/faq.html.erb +0 -63
|
@@ -0,0 +1,225 @@
|
|
|
1
|
+
[1m[36m (1.1ms)[0m [1mCREATE TABLE "schema_migrations" ("version" varchar NOT NULL) [0m
|
|
2
|
+
[1m[35m (0.1ms)[0m select sqlite_version(*)
|
|
3
|
+
[1m[36m (0.9ms)[0m [1mCREATE UNIQUE INDEX "unique_schema_migrations" ON "schema_migrations" ("version")[0m
|
|
4
|
+
[1m[35mActiveRecord::SchemaMigration Load (0.1ms)[0m SELECT "schema_migrations".* FROM "schema_migrations"
|
|
5
|
+
Migrating to CreateWbaseSubscriptions (20161127212521)
|
|
6
|
+
[1m[36m (0.1ms)[0m [1mbegin transaction[0m
|
|
7
|
+
[1m[35m (0.3ms)[0m CREATE TABLE "wbase_subscriptions" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "stripe_id" varchar, "plan_id" integer, "last_four" varchar, "coupon_id" integer, "card_type" varchar, "current_price" integer, "user_id" integer, "paid_thru" datetime, "credit_card_token" varchar, "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL)
|
|
8
|
+
[1m[36mSQL (0.2ms)[0m [1mINSERT INTO "schema_migrations" ("version") VALUES (?)[0m [["version", "20161127212521"]]
|
|
9
|
+
[1m[35m (0.7ms)[0m commit transaction
|
|
10
|
+
[1m[36mActiveRecord::SchemaMigration Load (0.1ms)[0m [1mSELECT "schema_migrations".* FROM "schema_migrations"[0m
|
|
11
|
+
[1m[36mActiveRecord::SchemaMigration Load (0.1ms)[0m [1mSELECT "schema_migrations".* FROM "schema_migrations"[0m
|
|
12
|
+
[1m[36mActiveRecord::SchemaMigration Load (0.1ms)[0m [1mSELECT "schema_migrations".* FROM "schema_migrations"[0m
|
|
13
|
+
Migrating to CreateWbasePlans (20161127212831)
|
|
14
|
+
[1m[35m (0.1ms)[0m begin transaction
|
|
15
|
+
[1m[36m (0.4ms)[0m [1mCREATE TABLE "wbase_plans" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "name" varchar NOT NULL, "stripe_id" varchar NOT NULL, "price" integer NOT NULL, "interval" varchar DEFAULT 'monthly', "features" text, "highlight" boolean DEFAULT 'f', "display_order" integer DEFAULT 0, "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL) [0m
|
|
16
|
+
[1m[35m (0.0ms)[0m select sqlite_version(*)
|
|
17
|
+
[1m[36m (0.1ms)[0m [1mCREATE INDEX "index_wbase_plans_on_name" ON "wbase_plans" ("name")[0m
|
|
18
|
+
[1m[35m (0.1ms)[0m SELECT sql
|
|
19
|
+
FROM sqlite_master
|
|
20
|
+
WHERE name='index_wbase_plans_on_name' AND type='index'
|
|
21
|
+
UNION ALL
|
|
22
|
+
SELECT sql
|
|
23
|
+
FROM sqlite_temp_master
|
|
24
|
+
WHERE name='index_wbase_plans_on_name' AND type='index'
|
|
25
|
+
|
|
26
|
+
[1m[36m (0.1ms)[0m [1mCREATE INDEX "index_wbase_plans_on_stripe_id" ON "wbase_plans" ("stripe_id")[0m
|
|
27
|
+
[1m[35mSQL (0.1ms)[0m INSERT INTO "schema_migrations" ("version") VALUES (?) [["version", "20161127212831"]]
|
|
28
|
+
[1m[36m (1.1ms)[0m [1mcommit transaction[0m
|
|
29
|
+
[1m[35mActiveRecord::SchemaMigration Load (0.1ms)[0m SELECT "schema_migrations".* FROM "schema_migrations"
|
|
30
|
+
[1m[36m (0.1ms)[0m [1m SELECT sql
|
|
31
|
+
FROM sqlite_master
|
|
32
|
+
WHERE name='index_wbase_plans_on_stripe_id' AND type='index'
|
|
33
|
+
UNION ALL
|
|
34
|
+
SELECT sql
|
|
35
|
+
FROM sqlite_temp_master
|
|
36
|
+
WHERE name='index_wbase_plans_on_stripe_id' AND type='index'
|
|
37
|
+
[0m
|
|
38
|
+
[1m[35m (0.1ms)[0m SELECT sql
|
|
39
|
+
FROM sqlite_master
|
|
40
|
+
WHERE name='index_wbase_plans_on_name' AND type='index'
|
|
41
|
+
UNION ALL
|
|
42
|
+
SELECT sql
|
|
43
|
+
FROM sqlite_temp_master
|
|
44
|
+
WHERE name='index_wbase_plans_on_name' AND type='index'
|
|
45
|
+
|
|
46
|
+
[1m[36mActiveRecord::SchemaMigration Load (0.1ms)[0m [1mSELECT "schema_migrations".* FROM "schema_migrations"[0m
|
|
47
|
+
[1m[35m (0.1ms)[0m SELECT sql
|
|
48
|
+
FROM sqlite_master
|
|
49
|
+
WHERE name='index_wbase_plans_on_stripe_id' AND type='index'
|
|
50
|
+
UNION ALL
|
|
51
|
+
SELECT sql
|
|
52
|
+
FROM sqlite_temp_master
|
|
53
|
+
WHERE name='index_wbase_plans_on_stripe_id' AND type='index'
|
|
54
|
+
|
|
55
|
+
[1m[36m (0.1ms)[0m [1m SELECT sql
|
|
56
|
+
FROM sqlite_master
|
|
57
|
+
WHERE name='index_wbase_plans_on_name' AND type='index'
|
|
58
|
+
UNION ALL
|
|
59
|
+
SELECT sql
|
|
60
|
+
FROM sqlite_temp_master
|
|
61
|
+
WHERE name='index_wbase_plans_on_name' AND type='index'
|
|
62
|
+
[0m
|
|
63
|
+
[1m[36mActiveRecord::SchemaMigration Load (0.4ms)[0m [1mSELECT "schema_migrations".* FROM "schema_migrations"[0m
|
|
64
|
+
Migrating to CreateWbaseSslVerifications (20161127224117)
|
|
65
|
+
[1m[35m (0.1ms)[0m begin transaction
|
|
66
|
+
[1m[36m (0.5ms)[0m [1mCREATE TABLE "wbase_ssl_verifications" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "key" varchar, "value" varchar, "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL) [0m
|
|
67
|
+
[1m[35mSQL (0.2ms)[0m INSERT INTO "schema_migrations" ("version") VALUES (?) [["version", "20161127224117"]]
|
|
68
|
+
[1m[36m (0.7ms)[0m [1mcommit transaction[0m
|
|
69
|
+
[1m[35mActiveRecord::SchemaMigration Load (0.1ms)[0m SELECT "schema_migrations".* FROM "schema_migrations"
|
|
70
|
+
[1m[36m (0.1ms)[0m [1m SELECT sql
|
|
71
|
+
FROM sqlite_master
|
|
72
|
+
WHERE name='index_wbase_plans_on_stripe_id' AND type='index'
|
|
73
|
+
UNION ALL
|
|
74
|
+
SELECT sql
|
|
75
|
+
FROM sqlite_temp_master
|
|
76
|
+
WHERE name='index_wbase_plans_on_stripe_id' AND type='index'
|
|
77
|
+
[0m
|
|
78
|
+
[1m[35m (0.1ms)[0m SELECT sql
|
|
79
|
+
FROM sqlite_master
|
|
80
|
+
WHERE name='index_wbase_plans_on_name' AND type='index'
|
|
81
|
+
UNION ALL
|
|
82
|
+
SELECT sql
|
|
83
|
+
FROM sqlite_temp_master
|
|
84
|
+
WHERE name='index_wbase_plans_on_name' AND type='index'
|
|
85
|
+
|
|
86
|
+
[1m[36mActiveRecord::SchemaMigration Load (0.1ms)[0m [1mSELECT "schema_migrations".* FROM "schema_migrations"[0m
|
|
87
|
+
[1m[35m (0.1ms)[0m SELECT sql
|
|
88
|
+
FROM sqlite_master
|
|
89
|
+
WHERE name='index_wbase_plans_on_stripe_id' AND type='index'
|
|
90
|
+
UNION ALL
|
|
91
|
+
SELECT sql
|
|
92
|
+
FROM sqlite_temp_master
|
|
93
|
+
WHERE name='index_wbase_plans_on_stripe_id' AND type='index'
|
|
94
|
+
|
|
95
|
+
[1m[36m (0.1ms)[0m [1m SELECT sql
|
|
96
|
+
FROM sqlite_master
|
|
97
|
+
WHERE name='index_wbase_plans_on_name' AND type='index'
|
|
98
|
+
UNION ALL
|
|
99
|
+
SELECT sql
|
|
100
|
+
FROM sqlite_temp_master
|
|
101
|
+
WHERE name='index_wbase_plans_on_name' AND type='index'
|
|
102
|
+
[0m
|
|
103
|
+
[1m[36mActiveRecord::SchemaMigration Load (0.4ms)[0m [1mSELECT "schema_migrations".* FROM "schema_migrations"[0m
|
|
104
|
+
Migrating to CreateWbaseMailEvents (20161128022640)
|
|
105
|
+
[1m[35m (0.1ms)[0m begin transaction
|
|
106
|
+
[1m[36m (0.0ms)[0m [1mrollback transaction[0m
|
|
107
|
+
[1m[36mActiveRecord::SchemaMigration Load (0.1ms)[0m [1mSELECT "schema_migrations".* FROM "schema_migrations"[0m
|
|
108
|
+
Migrating to CreateWbaseMailEvents (20161128022640)
|
|
109
|
+
[1m[35m (0.1ms)[0m begin transaction
|
|
110
|
+
[1m[36m (0.0ms)[0m [1mrollback transaction[0m
|
|
111
|
+
[1m[36mActiveRecord::SchemaMigration Load (0.4ms)[0m [1mSELECT "schema_migrations".* FROM "schema_migrations"[0m
|
|
112
|
+
Migrating to CreateWbaseMailEvents (20161128022640)
|
|
113
|
+
[1m[35m (0.2ms)[0m begin transaction
|
|
114
|
+
[1m[36m (0.0ms)[0m [1mrollback transaction[0m
|
|
115
|
+
[1m[36mActiveRecord::SchemaMigration Load (0.4ms)[0m [1mSELECT "schema_migrations".* FROM "schema_migrations"[0m
|
|
116
|
+
[1m[35m (0.1ms)[0m SELECT sql
|
|
117
|
+
FROM sqlite_master
|
|
118
|
+
WHERE name='index_wbase_plans_on_stripe_id' AND type='index'
|
|
119
|
+
UNION ALL
|
|
120
|
+
SELECT sql
|
|
121
|
+
FROM sqlite_temp_master
|
|
122
|
+
WHERE name='index_wbase_plans_on_stripe_id' AND type='index'
|
|
123
|
+
|
|
124
|
+
[1m[36m (0.1ms)[0m [1m SELECT sql
|
|
125
|
+
FROM sqlite_master
|
|
126
|
+
WHERE name='index_wbase_plans_on_name' AND type='index'
|
|
127
|
+
UNION ALL
|
|
128
|
+
SELECT sql
|
|
129
|
+
FROM sqlite_temp_master
|
|
130
|
+
WHERE name='index_wbase_plans_on_name' AND type='index'
|
|
131
|
+
[0m
|
|
132
|
+
[1m[36m (4.3ms)[0m [1mCREATE TABLE "schema_migrations" ("version" character varying NOT NULL) [0m
|
|
133
|
+
[1m[35m (1.5ms)[0m CREATE UNIQUE INDEX "unique_schema_migrations" ON "schema_migrations" ("version")
|
|
134
|
+
[1m[36mActiveRecord::SchemaMigration Load (0.4ms)[0m [1mSELECT "schema_migrations".* FROM "schema_migrations"[0m
|
|
135
|
+
Migrating to CreateWbaseSubscriptions (20161127212521)
|
|
136
|
+
[1m[35m (0.1ms)[0m BEGIN
|
|
137
|
+
[1m[36m (5.8ms)[0m [1mCREATE TABLE "wbase_subscriptions" ("id" serial primary key, "stripe_id" character varying NOT NULL, "plan_id" integer NOT NULL, "last_four" character varying, "coupon_id" integer, "card_type" character varying, "current_price" integer, "user_id" integer NOT NULL, "paid_thru" timestamp, "credit_card_token" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL) [0m
|
|
138
|
+
[1m[35m (1.0ms)[0m CREATE INDEX "index_wbase_subscriptions_on_plan_id" ON "wbase_subscriptions" ("plan_id")
|
|
139
|
+
[1m[36m (0.9ms)[0m [1mCREATE INDEX "index_wbase_subscriptions_on_user_id" ON "wbase_subscriptions" ("user_id")[0m
|
|
140
|
+
[1m[35mSQL (0.4ms)[0m INSERT INTO "schema_migrations" ("version") VALUES ($1) [["version", "20161127212521"]]
|
|
141
|
+
[1m[36m (0.5ms)[0m [1mCOMMIT[0m
|
|
142
|
+
Migrating to CreateWbasePlans (20161127212831)
|
|
143
|
+
[1m[35m (0.3ms)[0m BEGIN
|
|
144
|
+
[1m[36m (4.3ms)[0m [1mCREATE TABLE "wbase_plans" ("id" serial primary key, "name" character varying NOT NULL, "stripe_id" character varying NOT NULL, "price" integer NOT NULL, "interval" character varying DEFAULT 'monthly', "features" text, "highlight" boolean DEFAULT 'f', "display_order" integer DEFAULT 0, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL) [0m
|
|
145
|
+
[1m[35m (0.9ms)[0m CREATE INDEX "index_wbase_plans_on_name" ON "wbase_plans" ("name")
|
|
146
|
+
[1m[36m (0.9ms)[0m [1mCREATE INDEX "index_wbase_plans_on_stripe_id" ON "wbase_plans" ("stripe_id")[0m
|
|
147
|
+
[1m[35mSQL (0.2ms)[0m INSERT INTO "schema_migrations" ("version") VALUES ($1) [["version", "20161127212831"]]
|
|
148
|
+
[1m[36m (0.4ms)[0m [1mCOMMIT[0m
|
|
149
|
+
Migrating to CreateWbaseSslVerifications (20161127224117)
|
|
150
|
+
[1m[35m (0.2ms)[0m BEGIN
|
|
151
|
+
[1m[36m (3.7ms)[0m [1mCREATE TABLE "wbase_ssl_verifications" ("id" serial primary key, "key" character varying NOT NULL, "value" character varying NOT NULL, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL) [0m
|
|
152
|
+
[1m[35mSQL (0.2ms)[0m INSERT INTO "schema_migrations" ("version") VALUES ($1) [["version", "20161127224117"]]
|
|
153
|
+
[1m[36m (0.4ms)[0m [1mCOMMIT[0m
|
|
154
|
+
Migrating to CreateWbaseMailEvents (20161128022640)
|
|
155
|
+
[1m[35m (0.3ms)[0m BEGIN
|
|
156
|
+
[1m[36m (5.0ms)[0m [1mCREATE TABLE "wbase_mail_events" ("id" serial primary key, "sg_message_id" character varying, "email" character varying, "timestamp" character varying, "smtp_id" character varying, "event" character varying, "data" json, "mail_eventable_id" integer, "mail_eventable_type" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL) [0m
|
|
157
|
+
[1m[35mSQL (0.1ms)[0m INSERT INTO "schema_migrations" ("version") VALUES ($1) [["version", "20161128022640"]]
|
|
158
|
+
[1m[36m (0.3ms)[0m [1mCOMMIT[0m
|
|
159
|
+
Migrating to CreateWbaseStripeWebhooks (20161128031211)
|
|
160
|
+
[1m[35m (0.2ms)[0m BEGIN
|
|
161
|
+
[1m[36m (5.2ms)[0m [1mCREATE TABLE "wbase_stripe_webhooks" ("id" serial primary key, "external_id" character varying, "object" character varying, "api_version" character varying, "created" timestamp, "data" json, "livemode" boolean, "pending_webhooks" integer, "external_type" character varying, "external_request" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL) [0m
|
|
162
|
+
[1m[35mSQL (0.1ms)[0m INSERT INTO "schema_migrations" ("version") VALUES ($1) [["version", "20161128031211"]]
|
|
163
|
+
[1m[36m (0.3ms)[0m [1mCOMMIT[0m
|
|
164
|
+
[1m[35mActiveRecord::SchemaMigration Load (0.2ms)[0m SELECT "schema_migrations".* FROM "schema_migrations"
|
|
165
|
+
[1m[36m (3.5ms)[0m [1mSELECT t2.oid::regclass::text AS to_table, a1.attname AS column, a2.attname AS primary_key, c.conname AS name, c.confupdtype AS on_update, c.confdeltype AS on_delete
|
|
166
|
+
FROM pg_constraint c
|
|
167
|
+
JOIN pg_class t1 ON c.conrelid = t1.oid
|
|
168
|
+
JOIN pg_class t2 ON c.confrelid = t2.oid
|
|
169
|
+
JOIN pg_attribute a1 ON a1.attnum = c.conkey[1] AND a1.attrelid = t1.oid
|
|
170
|
+
JOIN pg_attribute a2 ON a2.attnum = c.confkey[1] AND a2.attrelid = t2.oid
|
|
171
|
+
JOIN pg_namespace t3 ON c.connamespace = t3.oid
|
|
172
|
+
WHERE c.contype = 'f'
|
|
173
|
+
AND t1.relname = 'wbase_mail_events'
|
|
174
|
+
AND t3.nspname = ANY (current_schemas(false))
|
|
175
|
+
ORDER BY c.conname
|
|
176
|
+
[0m
|
|
177
|
+
[1m[35m (2.9ms)[0m SELECT t2.oid::regclass::text AS to_table, a1.attname AS column, a2.attname AS primary_key, c.conname AS name, c.confupdtype AS on_update, c.confdeltype AS on_delete
|
|
178
|
+
FROM pg_constraint c
|
|
179
|
+
JOIN pg_class t1 ON c.conrelid = t1.oid
|
|
180
|
+
JOIN pg_class t2 ON c.confrelid = t2.oid
|
|
181
|
+
JOIN pg_attribute a1 ON a1.attnum = c.conkey[1] AND a1.attrelid = t1.oid
|
|
182
|
+
JOIN pg_attribute a2 ON a2.attnum = c.confkey[1] AND a2.attrelid = t2.oid
|
|
183
|
+
JOIN pg_namespace t3 ON c.connamespace = t3.oid
|
|
184
|
+
WHERE c.contype = 'f'
|
|
185
|
+
AND t1.relname = 'wbase_plans'
|
|
186
|
+
AND t3.nspname = ANY (current_schemas(false))
|
|
187
|
+
ORDER BY c.conname
|
|
188
|
+
|
|
189
|
+
[1m[36m (3.0ms)[0m [1mSELECT t2.oid::regclass::text AS to_table, a1.attname AS column, a2.attname AS primary_key, c.conname AS name, c.confupdtype AS on_update, c.confdeltype AS on_delete
|
|
190
|
+
FROM pg_constraint c
|
|
191
|
+
JOIN pg_class t1 ON c.conrelid = t1.oid
|
|
192
|
+
JOIN pg_class t2 ON c.confrelid = t2.oid
|
|
193
|
+
JOIN pg_attribute a1 ON a1.attnum = c.conkey[1] AND a1.attrelid = t1.oid
|
|
194
|
+
JOIN pg_attribute a2 ON a2.attnum = c.confkey[1] AND a2.attrelid = t2.oid
|
|
195
|
+
JOIN pg_namespace t3 ON c.connamespace = t3.oid
|
|
196
|
+
WHERE c.contype = 'f'
|
|
197
|
+
AND t1.relname = 'wbase_ssl_verifications'
|
|
198
|
+
AND t3.nspname = ANY (current_schemas(false))
|
|
199
|
+
ORDER BY c.conname
|
|
200
|
+
[0m
|
|
201
|
+
[1m[35m (4.4ms)[0m SELECT t2.oid::regclass::text AS to_table, a1.attname AS column, a2.attname AS primary_key, c.conname AS name, c.confupdtype AS on_update, c.confdeltype AS on_delete
|
|
202
|
+
FROM pg_constraint c
|
|
203
|
+
JOIN pg_class t1 ON c.conrelid = t1.oid
|
|
204
|
+
JOIN pg_class t2 ON c.confrelid = t2.oid
|
|
205
|
+
JOIN pg_attribute a1 ON a1.attnum = c.conkey[1] AND a1.attrelid = t1.oid
|
|
206
|
+
JOIN pg_attribute a2 ON a2.attnum = c.confkey[1] AND a2.attrelid = t2.oid
|
|
207
|
+
JOIN pg_namespace t3 ON c.connamespace = t3.oid
|
|
208
|
+
WHERE c.contype = 'f'
|
|
209
|
+
AND t1.relname = 'wbase_stripe_webhooks'
|
|
210
|
+
AND t3.nspname = ANY (current_schemas(false))
|
|
211
|
+
ORDER BY c.conname
|
|
212
|
+
|
|
213
|
+
[1m[36m (3.2ms)[0m [1mSELECT t2.oid::regclass::text AS to_table, a1.attname AS column, a2.attname AS primary_key, c.conname AS name, c.confupdtype AS on_update, c.confdeltype AS on_delete
|
|
214
|
+
FROM pg_constraint c
|
|
215
|
+
JOIN pg_class t1 ON c.conrelid = t1.oid
|
|
216
|
+
JOIN pg_class t2 ON c.confrelid = t2.oid
|
|
217
|
+
JOIN pg_attribute a1 ON a1.attnum = c.conkey[1] AND a1.attrelid = t1.oid
|
|
218
|
+
JOIN pg_attribute a2 ON a2.attnum = c.confkey[1] AND a2.attrelid = t2.oid
|
|
219
|
+
JOIN pg_namespace t3 ON c.connamespace = t3.oid
|
|
220
|
+
WHERE c.contype = 'f'
|
|
221
|
+
AND t1.relname = 'wbase_subscriptions'
|
|
222
|
+
AND t3.nspname = ANY (current_schemas(false))
|
|
223
|
+
ORDER BY c.conname
|
|
224
|
+
[0m
|
|
225
|
+
[1m[36mActiveRecord::SchemaMigration Load (0.3ms)[0m [1mSELECT "schema_migrations".* FROM "schema_migrations"[0m
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
# == Schema Information
|
|
2
|
+
#
|
|
3
|
+
# Table name: wbase_mail_events
|
|
4
|
+
#
|
|
5
|
+
# id :integer not null, primary key
|
|
6
|
+
# sg_message_id :string
|
|
7
|
+
# email :string
|
|
8
|
+
# timestamp :string
|
|
9
|
+
# smtp_id :string
|
|
10
|
+
# event :string
|
|
11
|
+
# data :json
|
|
12
|
+
# mail_eventable_id :integer
|
|
13
|
+
# mail_eventable_type :string
|
|
14
|
+
# created_at :datetime not null
|
|
15
|
+
# updated_at :datetime not null
|
|
16
|
+
#
|
|
17
|
+
|
|
18
|
+
# Read about fixtures at http://api.rubyonrails.org/classes/ActiveRecord/FixtureSet.html
|
|
19
|
+
|
|
20
|
+
one:
|
|
21
|
+
sg_message_id: MyString
|
|
22
|
+
email: MyString
|
|
23
|
+
timestamp: MyString
|
|
24
|
+
smtp-id: MyString
|
|
25
|
+
event: MyString
|
|
26
|
+
data:
|
|
27
|
+
mail_eventable_id: 1
|
|
28
|
+
mail_eventable_type: MyString
|
|
29
|
+
|
|
30
|
+
two:
|
|
31
|
+
sg_message_id: MyString
|
|
32
|
+
email: MyString
|
|
33
|
+
timestamp: MyString
|
|
34
|
+
smtp-id: MyString
|
|
35
|
+
event: MyString
|
|
36
|
+
data:
|
|
37
|
+
mail_eventable_id: 1
|
|
38
|
+
mail_eventable_type: MyString
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# == Schema Information
|
|
2
|
+
#
|
|
3
|
+
# Table name: wbase_plans
|
|
4
|
+
#
|
|
5
|
+
# id :integer not null, primary key
|
|
6
|
+
# name :string not null
|
|
7
|
+
# stripe_id :string not null
|
|
8
|
+
# price :integer not null
|
|
9
|
+
# interval :string default("monthly")
|
|
10
|
+
# features :text
|
|
11
|
+
# highlight :boolean default(FALSE)
|
|
12
|
+
# display_order :integer default(0)
|
|
13
|
+
# created_at :datetime not null
|
|
14
|
+
# updated_at :datetime not null
|
|
15
|
+
#
|
|
16
|
+
# Indexes
|
|
17
|
+
#
|
|
18
|
+
# index_wbase_plans_on_name (name)
|
|
19
|
+
# index_wbase_plans_on_stripe_id (stripe_id)
|
|
20
|
+
#
|
|
21
|
+
|
|
22
|
+
# Read about fixtures at http://api.rubyonrails.org/classes/ActiveRecord/FixtureSet.html
|
|
23
|
+
|
|
24
|
+
one:
|
|
25
|
+
name: MyString
|
|
26
|
+
stripe_id: MyString
|
|
27
|
+
price: 1
|
|
28
|
+
interval: MyString
|
|
29
|
+
features: MyText
|
|
30
|
+
highlight: false
|
|
31
|
+
display_order: 1
|
|
32
|
+
|
|
33
|
+
two:
|
|
34
|
+
name: MyString
|
|
35
|
+
stripe_id: MyString
|
|
36
|
+
price: 1
|
|
37
|
+
interval: MyString
|
|
38
|
+
features: MyText
|
|
39
|
+
highlight: false
|
|
40
|
+
display_order: 1
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
# == Schema Information
|
|
2
|
+
#
|
|
3
|
+
# Table name: wbase_stripe_webhooks
|
|
4
|
+
#
|
|
5
|
+
# id :integer not null, primary key
|
|
6
|
+
# external_id :string
|
|
7
|
+
# object :string
|
|
8
|
+
# api_version :string
|
|
9
|
+
# created :datetime
|
|
10
|
+
# data :json
|
|
11
|
+
# livemode :boolean
|
|
12
|
+
# pending_webhooks :integer
|
|
13
|
+
# external_type :string
|
|
14
|
+
# external_request :string
|
|
15
|
+
# created_at :datetime not null
|
|
16
|
+
# updated_at :datetime not null
|
|
17
|
+
#
|
|
18
|
+
|
|
19
|
+
# Read about fixtures at http://api.rubyonrails.org/classes/ActiveRecord/FixtureSet.html
|
|
20
|
+
|
|
21
|
+
one:
|
|
22
|
+
external_id: MyString
|
|
23
|
+
object: MyString
|
|
24
|
+
api_version: MyString
|
|
25
|
+
created: 2016-11-27 19:12:11
|
|
26
|
+
data:
|
|
27
|
+
livemode: false
|
|
28
|
+
pending_webhooks: 1
|
|
29
|
+
external_type: MyString
|
|
30
|
+
external_request: MyString
|
|
31
|
+
|
|
32
|
+
two:
|
|
33
|
+
external_id: MyString
|
|
34
|
+
object: MyString
|
|
35
|
+
api_version: MyString
|
|
36
|
+
created: 2016-11-27 19:12:11
|
|
37
|
+
data:
|
|
38
|
+
livemode: false
|
|
39
|
+
pending_webhooks: 1
|
|
40
|
+
external_type: MyString
|
|
41
|
+
external_request: MyString
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
# == Schema Information
|
|
2
|
+
#
|
|
3
|
+
# Table name: wbase_subscriptions
|
|
4
|
+
#
|
|
5
|
+
# id :integer not null, primary key
|
|
6
|
+
# stripe_id :string not null
|
|
7
|
+
# plan_id :integer not null
|
|
8
|
+
# last_four :string
|
|
9
|
+
# coupon_id :integer
|
|
10
|
+
# card_type :string
|
|
11
|
+
# current_price :integer
|
|
12
|
+
# user_id :integer not null
|
|
13
|
+
# paid_thru :datetime
|
|
14
|
+
# credit_card_token :string
|
|
15
|
+
# created_at :datetime not null
|
|
16
|
+
# updated_at :datetime not null
|
|
17
|
+
#
|
|
18
|
+
# Indexes
|
|
19
|
+
#
|
|
20
|
+
# index_wbase_subscriptions_on_plan_id (plan_id)
|
|
21
|
+
# index_wbase_subscriptions_on_user_id (user_id)
|
|
22
|
+
#
|
|
23
|
+
|
|
24
|
+
# Read about fixtures at http://api.rubyonrails.org/classes/ActiveRecord/FixtureSet.html
|
|
25
|
+
|
|
26
|
+
one:
|
|
27
|
+
stripe_id: MyString
|
|
28
|
+
plan_id: 1
|
|
29
|
+
last_four: MyString
|
|
30
|
+
coupon_id: 1
|
|
31
|
+
card_type: MyString
|
|
32
|
+
current_price: 1
|
|
33
|
+
user_id: 1
|
|
34
|
+
paid_thru: 2016-11-27 13:25:21
|
|
35
|
+
credit_card_token: MyString
|
|
36
|
+
|
|
37
|
+
two:
|
|
38
|
+
stripe_id: MyString
|
|
39
|
+
plan_id: 1
|
|
40
|
+
last_four: MyString
|
|
41
|
+
coupon_id: 1
|
|
42
|
+
card_type: MyString
|
|
43
|
+
current_price: 1
|
|
44
|
+
user_id: 1
|
|
45
|
+
paid_thru: 2016-11-27 13:25:21
|
|
46
|
+
credit_card_token: MyString
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
module Wbase
|
|
2
|
+
# Preview all emails at http://localhost:3000/rails/mailers/admin_mailer
|
|
3
|
+
class AdminMailerPreview < ActionMailer::Preview
|
|
4
|
+
|
|
5
|
+
# Preview this email at http://localhost:3000/rails/mailers/admin_mailer/new_user
|
|
6
|
+
def new_user
|
|
7
|
+
AdminMailer.new_user
|
|
8
|
+
end
|
|
9
|
+
|
|
10
|
+
end
|
|
11
|
+
end
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
module Wbase
|
|
2
|
+
# Preview all emails at http://localhost:3000/rails/mailers/password_reset_mailer
|
|
3
|
+
class PasswordResetMailerPreview < ActionMailer::Preview
|
|
4
|
+
|
|
5
|
+
# Preview this email at http://localhost:3000/rails/mailers/password_reset_mailer/reset
|
|
6
|
+
def reset
|
|
7
|
+
PasswordResetMailer.reset
|
|
8
|
+
end
|
|
9
|
+
|
|
10
|
+
end
|
|
11
|
+
end
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
require 'test_helper'
|
|
2
|
+
|
|
3
|
+
module Wbase
|
|
4
|
+
class AdminMailerTest < ActionMailer::TestCase
|
|
5
|
+
test "new_user" do
|
|
6
|
+
mail = AdminMailer.new_user
|
|
7
|
+
assert_equal "New user", mail.subject
|
|
8
|
+
assert_equal ["to@example.org"], mail.to
|
|
9
|
+
assert_equal ["from@example.com"], mail.from
|
|
10
|
+
assert_match "Hi", mail.body.encoded
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
end
|
|
14
|
+
end
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
require 'test_helper'
|
|
2
|
+
|
|
3
|
+
module Wbase
|
|
4
|
+
class PasswordResetMailerTest < ActionMailer::TestCase
|
|
5
|
+
test "reset" do
|
|
6
|
+
mail = PasswordResetMailer.reset
|
|
7
|
+
assert_equal "Reset", mail.subject
|
|
8
|
+
assert_equal ["to@example.org"], mail.to
|
|
9
|
+
assert_equal ["from@example.com"], mail.from
|
|
10
|
+
assert_match "Hi", mail.body.encoded
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
end
|
|
14
|
+
end
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# == Schema Information
|
|
2
|
+
#
|
|
3
|
+
# Table name: wbase_mail_events
|
|
4
|
+
#
|
|
5
|
+
# id :integer not null, primary key
|
|
6
|
+
# sg_message_id :string
|
|
7
|
+
# email :string
|
|
8
|
+
# timestamp :string
|
|
9
|
+
# smtp_id :string
|
|
10
|
+
# event :string
|
|
11
|
+
# data :json
|
|
12
|
+
# mail_eventable_id :integer
|
|
13
|
+
# mail_eventable_type :string
|
|
14
|
+
# created_at :datetime not null
|
|
15
|
+
# updated_at :datetime not null
|
|
16
|
+
#
|
|
17
|
+
|
|
18
|
+
require 'test_helper'
|
|
19
|
+
|
|
20
|
+
module Wbase
|
|
21
|
+
class MailEventTest < ActiveSupport::TestCase
|
|
22
|
+
# test "the truth" do
|
|
23
|
+
# assert true
|
|
24
|
+
# end
|
|
25
|
+
end
|
|
26
|
+
end
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# == Schema Information
|
|
2
|
+
#
|
|
3
|
+
# Table name: wbase_plans
|
|
4
|
+
#
|
|
5
|
+
# id :integer not null, primary key
|
|
6
|
+
# name :string not null
|
|
7
|
+
# stripe_id :string not null
|
|
8
|
+
# price :integer not null
|
|
9
|
+
# interval :string default("monthly")
|
|
10
|
+
# features :text
|
|
11
|
+
# highlight :boolean default(FALSE)
|
|
12
|
+
# display_order :integer default(0)
|
|
13
|
+
# created_at :datetime not null
|
|
14
|
+
# updated_at :datetime not null
|
|
15
|
+
#
|
|
16
|
+
# Indexes
|
|
17
|
+
#
|
|
18
|
+
# index_wbase_plans_on_name (name)
|
|
19
|
+
# index_wbase_plans_on_stripe_id (stripe_id)
|
|
20
|
+
#
|
|
21
|
+
|
|
22
|
+
require 'test_helper'
|
|
23
|
+
|
|
24
|
+
module Wbase
|
|
25
|
+
class PlanTest < ActiveSupport::TestCase
|
|
26
|
+
# test "the truth" do
|
|
27
|
+
# assert true
|
|
28
|
+
# end
|
|
29
|
+
end
|
|
30
|
+
end
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# == Schema Information
|
|
2
|
+
#
|
|
3
|
+
# Table name: wbase_ssl_verifications
|
|
4
|
+
#
|
|
5
|
+
# id :integer not null, primary key
|
|
6
|
+
# key :string not null
|
|
7
|
+
# value :string not null
|
|
8
|
+
# created_at :datetime not null
|
|
9
|
+
# updated_at :datetime not null
|
|
10
|
+
#
|
|
11
|
+
|
|
12
|
+
require 'test_helper'
|
|
13
|
+
|
|
14
|
+
module Wbase
|
|
15
|
+
class SslVerificationTest < ActiveSupport::TestCase
|
|
16
|
+
# test "the truth" do
|
|
17
|
+
# assert true
|
|
18
|
+
# end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# == Schema Information
|
|
2
|
+
#
|
|
3
|
+
# Table name: wbase_stripe_webhooks
|
|
4
|
+
#
|
|
5
|
+
# id :integer not null, primary key
|
|
6
|
+
# external_id :string
|
|
7
|
+
# object :string
|
|
8
|
+
# api_version :string
|
|
9
|
+
# created :datetime
|
|
10
|
+
# data :json
|
|
11
|
+
# livemode :boolean
|
|
12
|
+
# pending_webhooks :integer
|
|
13
|
+
# external_type :string
|
|
14
|
+
# external_request :string
|
|
15
|
+
# created_at :datetime not null
|
|
16
|
+
# updated_at :datetime not null
|
|
17
|
+
#
|
|
18
|
+
|
|
19
|
+
require 'test_helper'
|
|
20
|
+
|
|
21
|
+
module Wbase
|
|
22
|
+
class StripeWebhookTest < ActiveSupport::TestCase
|
|
23
|
+
# test "the truth" do
|
|
24
|
+
# assert true
|
|
25
|
+
# end
|
|
26
|
+
end
|
|
27
|
+
end
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# == Schema Information
|
|
2
|
+
#
|
|
3
|
+
# Table name: wbase_subscriptions
|
|
4
|
+
#
|
|
5
|
+
# id :integer not null, primary key
|
|
6
|
+
# stripe_id :string not null
|
|
7
|
+
# plan_id :integer not null
|
|
8
|
+
# last_four :string
|
|
9
|
+
# coupon_id :integer
|
|
10
|
+
# card_type :string
|
|
11
|
+
# current_price :integer
|
|
12
|
+
# user_id :integer not null
|
|
13
|
+
# paid_thru :datetime
|
|
14
|
+
# credit_card_token :string
|
|
15
|
+
# created_at :datetime not null
|
|
16
|
+
# updated_at :datetime not null
|
|
17
|
+
#
|
|
18
|
+
# Indexes
|
|
19
|
+
#
|
|
20
|
+
# index_wbase_subscriptions_on_plan_id (plan_id)
|
|
21
|
+
# index_wbase_subscriptions_on_user_id (user_id)
|
|
22
|
+
#
|
|
23
|
+
|
|
24
|
+
require 'test_helper'
|
|
25
|
+
|
|
26
|
+
module Wbase
|
|
27
|
+
class SubscriptionTest < ActiveSupport::TestCase
|
|
28
|
+
# test "the truth" do
|
|
29
|
+
# assert true
|
|
30
|
+
# end
|
|
31
|
+
end
|
|
32
|
+
end
|