deal_redemptions 0.0.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (185) hide show
  1. checksums.yaml +7 -0
  2. data/MIT-LICENSE +20 -0
  3. data/README.rdoc +3 -0
  4. data/Rakefile +30 -0
  5. data/app/assets/fonts/proximanova-light.eot +0 -0
  6. data/app/assets/fonts/proximanova-light.svg +542 -0
  7. data/app/assets/fonts/proximanova-light.ttf +0 -0
  8. data/app/assets/fonts/proximanova-light.woff +0 -0
  9. data/app/assets/fonts/proximanova-regular.eot +0 -0
  10. data/app/assets/fonts/proximanova-regular.svg +544 -0
  11. data/app/assets/fonts/proximanova-regular.ttf +0 -0
  12. data/app/assets/fonts/proximanova-regular.woff +0 -0
  13. data/app/assets/fonts/ss-glyphs.eot +0 -0
  14. data/app/assets/fonts/ss-glyphs.svg +17 -0
  15. data/app/assets/fonts/ss-glyphs.ttf +0 -0
  16. data/app/assets/fonts/ss-glyphs.woff +0 -0
  17. data/app/assets/images/admin/csv-demo.jpg +0 -0
  18. data/app/assets/images/deal-redemptions-logo.png +0 -0
  19. data/app/assets/javascripts/deal_redemptions/admin.js.coffee +77 -0
  20. data/app/assets/javascripts/deal_redemptions/application.js +17 -0
  21. data/app/assets/javascripts/deal_redemptions/redeem/redeem.js.coffee +49 -0
  22. data/app/assets/javascripts/deal_redemptions/redeem/redemption.js.coffee +41 -0
  23. data/app/assets/javascripts/deal_redemptions/redeem/validator.js.coffee +36 -0
  24. data/app/assets/javascripts/deal_redemptions/welcome.js.coffee +3 -0
  25. data/app/assets/stylesheets/deal_redemptions/admin.css.scss +505 -0
  26. data/app/assets/stylesheets/deal_redemptions/application.css.scss +57 -0
  27. data/app/assets/stylesheets/deal_redemptions/lib.css.scss +29 -0
  28. data/app/assets/stylesheets/deal_redemptions/redeem.css.scss +56 -0
  29. data/app/assets/stylesheets/deal_redemptions/welcome.css.scss +33 -0
  30. data/app/controllers/deal_redemptions/admin/companies_controller.rb +66 -0
  31. data/app/controllers/deal_redemptions/admin/dashboard_controller.rb +12 -0
  32. data/app/controllers/deal_redemptions/admin/import_controller.rb +47 -0
  33. data/app/controllers/deal_redemptions/admin/products_controller.rb +60 -0
  34. data/app/controllers/deal_redemptions/admin/redemptions_controller.rb +50 -0
  35. data/app/controllers/deal_redemptions/admin/sessions_controller.rb +26 -0
  36. data/app/controllers/deal_redemptions/admin/settings_controller.rb +14 -0
  37. data/app/controllers/deal_redemptions/admin/user_controller.rb +53 -0
  38. data/app/controllers/deal_redemptions/application_controller.rb +16 -0
  39. data/app/controllers/deal_redemptions/redeem_controller.rb +87 -0
  40. data/app/controllers/deal_redemptions/welcome_controller.rb +9 -0
  41. data/app/helpers/deal_redemptions/admin_helper.rb +30 -0
  42. data/app/helpers/deal_redemptions/application_helper.rb +8 -0
  43. data/app/helpers/deal_redemptions/redeem_helper.rb +4 -0
  44. data/app/helpers/deal_redemptions/welcome_helper.rb +4 -0
  45. data/app/mailers/deal_redemptions/admin_user_mailer.rb +11 -0
  46. data/app/mailers/deal_redemptions/redemption_mailer.rb +11 -0
  47. data/app/models/deal_redemptions/company.rb +27 -0
  48. data/app/models/deal_redemptions/mailing_list.rb +8 -0
  49. data/app/models/deal_redemptions/product.rb +18 -0
  50. data/app/models/deal_redemptions/redeem_code.rb +30 -0
  51. data/app/models/deal_redemptions/redemption.rb +14 -0
  52. data/app/models/deal_redemptions/redemptions/redeem.rb +21 -0
  53. data/app/models/deal_redemptions/user.rb +40 -0
  54. data/app/views/deal_redemptions/admin/companies/_form.html.haml +25 -0
  55. data/app/views/deal_redemptions/admin/companies/edit.html.haml +19 -0
  56. data/app/views/deal_redemptions/admin/companies/index.html.haml +32 -0
  57. data/app/views/deal_redemptions/admin/companies/new.html.haml +11 -0
  58. data/app/views/deal_redemptions/admin/dashboard/index.html.haml +4 -0
  59. data/app/views/deal_redemptions/admin/import/export_redemptions.csv.erb +1 -0
  60. data/app/views/deal_redemptions/admin/import/new.html.haml +54 -0
  61. data/app/views/deal_redemptions/admin/products/_form.html.haml +16 -0
  62. data/app/views/deal_redemptions/admin/products/edit.html.haml +18 -0
  63. data/app/views/deal_redemptions/admin/products/index.html.haml +26 -0
  64. data/app/views/deal_redemptions/admin/products/new.html.haml +11 -0
  65. data/app/views/deal_redemptions/admin/redemptions/index.html.haml +54 -0
  66. data/app/views/deal_redemptions/admin/redemptions/new.html.erb +5 -0
  67. data/app/views/deal_redemptions/admin/redemptions/show.html.haml +64 -0
  68. data/app/views/deal_redemptions/admin/sessions/new.html.haml +23 -0
  69. data/app/views/deal_redemptions/admin/settings/_new_user_modal.html.haml +38 -0
  70. data/app/views/deal_redemptions/admin/settings/index.html.haml +48 -0
  71. data/app/views/deal_redemptions/admin/shared/_sidebar.html.haml +16 -0
  72. data/app/views/deal_redemptions/admin/shared/_topbar.html.haml +5 -0
  73. data/app/views/deal_redemptions/admin_user_mailer/new_confirmation.html.erb +8 -0
  74. data/app/views/deal_redemptions/redeem/new.html.haml +112 -0
  75. data/app/views/deal_redemptions/redeem/thankyou.html.haml +6 -0
  76. data/app/views/deal_redemptions/redeem/validate_code.jbuilder +1 -0
  77. data/app/views/deal_redemptions/redemption_mailer/confirmation.html.erb +3 -0
  78. data/app/views/deal_redemptions/shared_partials/_powered.html.haml +4 -0
  79. data/app/views/deal_redemptions/welcome/index.html.haml +15 -0
  80. data/app/views/kaminari/_first_page.html.haml +9 -0
  81. data/app/views/kaminari/_gap.html.haml +8 -0
  82. data/app/views/kaminari/_last_page.html.haml +9 -0
  83. data/app/views/kaminari/_next_page.html.haml +9 -0
  84. data/app/views/kaminari/_page.html.haml +10 -0
  85. data/app/views/kaminari/_paginator.html.haml +18 -0
  86. data/app/views/kaminari/_prev_page.html.haml +9 -0
  87. data/app/views/layouts/deal_redemptions/admin/auth.html.erb +17 -0
  88. data/app/views/layouts/deal_redemptions/admin/default.html.erb +50 -0
  89. data/app/views/layouts/deal_redemptions/application.html.erb +16 -0
  90. data/config/config_engine_rake_file.rb +13 -0
  91. data/config/locales/en.yml +37 -0
  92. data/config/routes.rb +38 -0
  93. data/db/migrate/20140709234323_create_deal_redemptions_companies.rb +12 -0
  94. data/db/migrate/20140711183800_add_active_to_deal_redemptions_companies.rb +5 -0
  95. data/db/migrate/20140711222957_create_deal_redemptions_mailing_lists.rb +11 -0
  96. data/db/migrate/20140714165815_create_deal_redemptions_products.rb +10 -0
  97. data/db/migrate/20140714184807_create_deal_redemptions_redemptions.rb +20 -0
  98. data/db/migrate/20140715041757_create_deal_redemptions_redeem_codes.rb +13 -0
  99. data/db/migrate/20140718200319_create_deal_redemptions_users.rb +14 -0
  100. data/db/migrate/20140802010843_add_company_and_remove_transaction_to_redemption.rb +5 -0
  101. data/lib/deal_redemptions.rb +5 -0
  102. data/lib/deal_redemptions/admin/importer.rb +66 -0
  103. data/lib/deal_redemptions/admin_interface_domain.rb +11 -0
  104. data/lib/deal_redemptions/engine.rb +52 -0
  105. data/lib/deal_redemptions/version.rb +3 -0
  106. data/lib/tasks/deal_redemptions_tasks.rake +11 -0
  107. data/spec/controllers/deal_redemptions/admin/companies_controller_spec.rb +120 -0
  108. data/spec/controllers/deal_redemptions/admin/dashboard_controller_spec.rb +17 -0
  109. data/spec/controllers/deal_redemptions/admin/import_controller_spec.rb +32 -0
  110. data/spec/controllers/deal_redemptions/admin/products_controller_spec.rb +136 -0
  111. data/spec/controllers/deal_redemptions/admin/redemptions_controller_spec.rb +81 -0
  112. data/spec/controllers/deal_redemptions/admin/sessions_controller_spec.rb +15 -0
  113. data/spec/controllers/deal_redemptions/admin/settings_controller_spec.rb +28 -0
  114. data/spec/controllers/deal_redemptions/admin/user_controller_spec.rb +62 -0
  115. data/spec/controllers/deal_redemptions/redeem_controller_spec.rb +32 -0
  116. data/spec/controllers/deal_redemptions/welcome_controller_spec.rb +28 -0
  117. data/spec/dummy/README.rdoc +28 -0
  118. data/spec/dummy/Rakefile +6 -0
  119. data/spec/dummy/app/assets/javascripts/application.js +13 -0
  120. data/spec/dummy/app/assets/stylesheets/application.css +15 -0
  121. data/spec/dummy/app/controllers/application_controller.rb +5 -0
  122. data/spec/dummy/app/helpers/application_helper.rb +2 -0
  123. data/spec/dummy/app/views/layouts/application.html.erb +14 -0
  124. data/spec/dummy/bin/bundle +3 -0
  125. data/spec/dummy/bin/rails +4 -0
  126. data/spec/dummy/bin/rake +4 -0
  127. data/spec/dummy/config.ru +4 -0
  128. data/spec/dummy/config/application.rb +29 -0
  129. data/spec/dummy/config/boot.rb +5 -0
  130. data/spec/dummy/config/database.yml +25 -0
  131. data/spec/dummy/config/environment.rb +5 -0
  132. data/spec/dummy/config/environments/development.rb +37 -0
  133. data/spec/dummy/config/environments/production.rb +82 -0
  134. data/spec/dummy/config/environments/test.rb +39 -0
  135. data/spec/dummy/config/initializers/assets.rb +8 -0
  136. data/spec/dummy/config/initializers/backtrace_silencers.rb +7 -0
  137. data/spec/dummy/config/initializers/cookies_serializer.rb +3 -0
  138. data/spec/dummy/config/initializers/deal_redemptions.rb +13 -0
  139. data/spec/dummy/config/initializers/filter_parameter_logging.rb +4 -0
  140. data/spec/dummy/config/initializers/inflections.rb +16 -0
  141. data/spec/dummy/config/initializers/mime_types.rb +4 -0
  142. data/spec/dummy/config/initializers/session_store.rb +3 -0
  143. data/spec/dummy/config/initializers/wrap_parameters.rb +14 -0
  144. data/spec/dummy/config/locales/en.yml +23 -0
  145. data/spec/dummy/config/routes.rb +4 -0
  146. data/spec/dummy/config/secrets.yml +22 -0
  147. data/spec/dummy/db/development.sqlite3 +0 -0
  148. data/spec/dummy/db/schema.rb +85 -0
  149. data/spec/dummy/db/test.sqlite3 +0 -0
  150. data/spec/dummy/log/development.log +1464 -0
  151. data/spec/dummy/log/test.log +242034 -0
  152. data/spec/dummy/public/404.html +67 -0
  153. data/spec/dummy/public/422.html +67 -0
  154. data/spec/dummy/public/500.html +66 -0
  155. data/spec/dummy/public/favicon.ico +0 -0
  156. data/spec/dummy/tmp/cache/assets/development/sprockets/65dfde5f086fa3aca4c12e3ec1bab0e7 +0 -0
  157. data/spec/dummy/tmp/cache/assets/development/sprockets/d625417a15a40e26da10d62fd34927e1 +0 -0
  158. data/spec/factories/company.rb +21 -0
  159. data/spec/factories/deal_redemption_products.rb +9 -0
  160. data/spec/factories/deal_redemptions_redeem_codes.rb +11 -0
  161. data/spec/factories/deal_redemptions_redemptions.rb +51 -0
  162. data/spec/factories/deal_redemptions_users.rb +19 -0
  163. data/spec/factories/mailing_lists.rb +9 -0
  164. data/spec/mailers/deal_redemptions/admin_user_mailer_spec.rb +24 -0
  165. data/spec/mailers/deal_redemptions/redemption_mailer_spec.rb +24 -0
  166. data/spec/models/deal_redemptions/company_spec.rb +27 -0
  167. data/spec/models/deal_redemptions/mailing_list_spec.rb +14 -0
  168. data/spec/models/deal_redemptions/product_spec.rb +23 -0
  169. data/spec/models/deal_redemptions/redeem_code_spec.rb +57 -0
  170. data/spec/models/deal_redemptions/redemption_spec.rb +23 -0
  171. data/spec/models/deal_redemptions/redemptions/redeem_spec.rb +21 -0
  172. data/spec/models/deal_redemptions/user_spec.rb +39 -0
  173. data/spec/rails_helper.rb +43 -0
  174. data/spec/routing/deal_redemptions/admin/import_routing_spec.rb +21 -0
  175. data/spec/routing/deal_redemptions/admin/redemptions_routing_spec.rb +18 -0
  176. data/spec/routing/deal_redemptions/admin/user_controller_routing_spec.rb +11 -0
  177. data/spec/spec_helper.rb +31 -0
  178. data/spec/tasks/tasks_spec.rb +20 -0
  179. data/spec/views/deal_redemptions/admin/dashboard/index.html.erb_spec.rb +5 -0
  180. data/spec/views/deal_redemptions/admin/import/index.html.erb_spec.rb +5 -0
  181. data/spec/views/deal_redemptions/admin/sessions/index.html.erb_spec.rb +5 -0
  182. data/spec/views/deal_redemptions/admin/settings/index.html.erb_spec.rb +5 -0
  183. data/vendor/assets/javascripts/bootstrap-datepicker.js +474 -0
  184. data/vendor/assets/stylesheets/datepicker.css +182 -0
  185. metadata +485 -0
@@ -0,0 +1,182 @@
1
+ /*!
2
+ * Datepicker for Bootstrap
3
+ *
4
+ * Copyright 2012 Stefan Petre
5
+ * Licensed under the Apache License v2.0
6
+ * http://www.apache.org/licenses/LICENSE-2.0
7
+ *
8
+ */
9
+ .datepicker {
10
+ top: 0;
11
+ left: 0;
12
+ padding: 4px;
13
+ margin-top: 1px;
14
+ -webkit-border-radius: 4px;
15
+ -moz-border-radius: 4px;
16
+ border-radius: 4px;
17
+ /*.dow {
18
+ border-top: 1px solid #ddd !important;
19
+ }*/
20
+
21
+ }
22
+ .datepicker:before {
23
+ content: '';
24
+ display: inline-block;
25
+ border-left: 7px solid transparent;
26
+ border-right: 7px solid transparent;
27
+ border-bottom: 7px solid #ccc;
28
+ border-bottom-color: rgba(0, 0, 0, 0.2);
29
+ position: absolute;
30
+ top: -7px;
31
+ left: 6px;
32
+ }
33
+ .datepicker:after {
34
+ content: '';
35
+ display: inline-block;
36
+ border-left: 6px solid transparent;
37
+ border-right: 6px solid transparent;
38
+ border-bottom: 6px solid #ffffff;
39
+ position: absolute;
40
+ top: -6px;
41
+ left: 7px;
42
+ }
43
+ .datepicker > div {
44
+ display: none;
45
+ }
46
+ .datepicker table {
47
+ width: 100%;
48
+ margin: 0;
49
+ }
50
+ .datepicker td,
51
+ .datepicker th {
52
+ text-align: center;
53
+ width: 20px;
54
+ height: 20px;
55
+ -webkit-border-radius: 4px;
56
+ -moz-border-radius: 4px;
57
+ border-radius: 4px;
58
+ }
59
+ .datepicker td.day:hover {
60
+ background: #eeeeee;
61
+ cursor: pointer;
62
+ }
63
+ .datepicker td.day.disabled {
64
+ color: #eeeeee;
65
+ }
66
+ .datepicker td.old,
67
+ .datepicker td.new {
68
+ color: #999999;
69
+ }
70
+ .datepicker td.active,
71
+ .datepicker td.active:hover {
72
+ color: #ffffff;
73
+ background-color: #006dcc;
74
+ background-image: -moz-linear-gradient(top, #0088cc, #0044cc);
75
+ background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0044cc));
76
+ background-image: -webkit-linear-gradient(top, #0088cc, #0044cc);
77
+ background-image: -o-linear-gradient(top, #0088cc, #0044cc);
78
+ background-image: linear-gradient(to bottom, #0088cc, #0044cc);
79
+ background-repeat: repeat-x;
80
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc', endColorstr='#ff0044cc', GradientType=0);
81
+ border-color: #0044cc #0044cc #002a80;
82
+ border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
83
+ *background-color: #0044cc;
84
+ /* Darken IE7 buttons by default so they stand out more given they won't have borders */
85
+
86
+ filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
87
+ color: #fff;
88
+ text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
89
+ }
90
+ .datepicker td.active:hover,
91
+ .datepicker td.active:hover:hover,
92
+ .datepicker td.active:focus,
93
+ .datepicker td.active:hover:focus,
94
+ .datepicker td.active:active,
95
+ .datepicker td.active:hover:active,
96
+ .datepicker td.active.active,
97
+ .datepicker td.active:hover.active,
98
+ .datepicker td.active.disabled,
99
+ .datepicker td.active:hover.disabled,
100
+ .datepicker td.active[disabled],
101
+ .datepicker td.active:hover[disabled] {
102
+ color: #ffffff;
103
+ background-color: #0044cc;
104
+ *background-color: #003bb3;
105
+ }
106
+ .datepicker td.active:active,
107
+ .datepicker td.active:hover:active,
108
+ .datepicker td.active.active,
109
+ .datepicker td.active:hover.active {
110
+ background-color: #003399 \9;
111
+ }
112
+ .datepicker td span {
113
+ display: block;
114
+ width: 47px;
115
+ height: 54px;
116
+ line-height: 54px;
117
+ float: left;
118
+ margin: 2px;
119
+ cursor: pointer;
120
+ -webkit-border-radius: 4px;
121
+ -moz-border-radius: 4px;
122
+ border-radius: 4px;
123
+ }
124
+ .datepicker td span:hover {
125
+ background: #eeeeee;
126
+ }
127
+ .datepicker td span.active {
128
+ color: #ffffff;
129
+ background-color: #006dcc;
130
+ background-image: -moz-linear-gradient(top, #0088cc, #0044cc);
131
+ background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0044cc));
132
+ background-image: -webkit-linear-gradient(top, #0088cc, #0044cc);
133
+ background-image: -o-linear-gradient(top, #0088cc, #0044cc);
134
+ background-image: linear-gradient(to bottom, #0088cc, #0044cc);
135
+ background-repeat: repeat-x;
136
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc', endColorstr='#ff0044cc', GradientType=0);
137
+ border-color: #0044cc #0044cc #002a80;
138
+ border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
139
+ *background-color: #0044cc;
140
+ /* Darken IE7 buttons by default so they stand out more given they won't have borders */
141
+
142
+ filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
143
+ color: #fff;
144
+ text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
145
+ }
146
+ .datepicker td span.active:hover,
147
+ .datepicker td span.active:focus,
148
+ .datepicker td span.active:active,
149
+ .datepicker td span.active.active,
150
+ .datepicker td span.active.disabled,
151
+ .datepicker td span.active[disabled] {
152
+ color: #ffffff;
153
+ background-color: #0044cc;
154
+ *background-color: #003bb3;
155
+ }
156
+ .datepicker td span.active:active,
157
+ .datepicker td span.active.active {
158
+ background-color: #003399 \9;
159
+ }
160
+ .datepicker td span.old {
161
+ color: #999999;
162
+ }
163
+ .datepicker th.switch {
164
+ width: 145px;
165
+ }
166
+ .datepicker th.next,
167
+ .datepicker th.prev {
168
+ font-size: 21px;
169
+ }
170
+ .datepicker thead tr:first-child th {
171
+ cursor: pointer;
172
+ }
173
+ .datepicker thead tr:first-child th:hover {
174
+ background: #eeeeee;
175
+ }
176
+ .input-append.date .add-on i,
177
+ .input-prepend.date .add-on i {
178
+ display: block;
179
+ cursor: pointer;
180
+ width: 16px;
181
+ height: 16px;
182
+ }
metadata ADDED
@@ -0,0 +1,485 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: deal_redemptions
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.4
5
+ platform: ruby
6
+ authors:
7
+ - Allan Cutler
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2014-08-09 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rails
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ~>
18
+ - !ruby/object:Gem::Version
19
+ version: 4.1.4
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ~>
25
+ - !ruby/object:Gem::Version
26
+ version: 4.1.4
27
+ - !ruby/object:Gem::Dependency
28
+ name: bootstrap-sass
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - '>='
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - '>='
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: jquery-rails
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - '>='
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - '>='
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: sass-rails
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ~>
60
+ - !ruby/object:Gem::Version
61
+ version: 4.0.3
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ~>
67
+ - !ruby/object:Gem::Version
68
+ version: 4.0.3
69
+ - !ruby/object:Gem::Dependency
70
+ name: haml-rails
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - '>='
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ type: :runtime
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - '>='
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: kaminari
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - '>='
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ type: :runtime
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - '>='
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
97
+ - !ruby/object:Gem::Dependency
98
+ name: bcrypt
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ~>
102
+ - !ruby/object:Gem::Version
103
+ version: 3.1.7
104
+ type: :runtime
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ~>
109
+ - !ruby/object:Gem::Version
110
+ version: 3.1.7
111
+ - !ruby/object:Gem::Dependency
112
+ name: sqlite3
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - '>='
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
118
+ type: :development
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - '>='
123
+ - !ruby/object:Gem::Version
124
+ version: '0'
125
+ - !ruby/object:Gem::Dependency
126
+ name: rspec-rails
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - '>='
130
+ - !ruby/object:Gem::Version
131
+ version: '0'
132
+ type: :development
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - '>='
137
+ - !ruby/object:Gem::Version
138
+ version: '0'
139
+ - !ruby/object:Gem::Dependency
140
+ name: capybara
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - '>='
144
+ - !ruby/object:Gem::Version
145
+ version: '0'
146
+ type: :development
147
+ prerelease: false
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - '>='
151
+ - !ruby/object:Gem::Version
152
+ version: '0'
153
+ - !ruby/object:Gem::Dependency
154
+ name: factory_girl_rails
155
+ requirement: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - '>='
158
+ - !ruby/object:Gem::Version
159
+ version: '0'
160
+ type: :development
161
+ prerelease: false
162
+ version_requirements: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - '>='
165
+ - !ruby/object:Gem::Version
166
+ version: '0'
167
+ - !ruby/object:Gem::Dependency
168
+ name: database_cleaner
169
+ requirement: !ruby/object:Gem::Requirement
170
+ requirements:
171
+ - - '>='
172
+ - !ruby/object:Gem::Version
173
+ version: '0'
174
+ type: :development
175
+ prerelease: false
176
+ version_requirements: !ruby/object:Gem::Requirement
177
+ requirements:
178
+ - - '>='
179
+ - !ruby/object:Gem::Version
180
+ version: '0'
181
+ - !ruby/object:Gem::Dependency
182
+ name: shoulda-matchers
183
+ requirement: !ruby/object:Gem::Requirement
184
+ requirements:
185
+ - - '>='
186
+ - !ruby/object:Gem::Version
187
+ version: '0'
188
+ type: :development
189
+ prerelease: false
190
+ version_requirements: !ruby/object:Gem::Requirement
191
+ requirements:
192
+ - - '>='
193
+ - !ruby/object:Gem::Version
194
+ version: '0'
195
+ description: Ruby on Rails Engine to redeem deal site promotions.
196
+ email:
197
+ - iamcutler@icloud.com
198
+ executables: []
199
+ extensions: []
200
+ extra_rdoc_files: []
201
+ files:
202
+ - app/assets/fonts/proximanova-light.eot
203
+ - app/assets/fonts/proximanova-light.svg
204
+ - app/assets/fonts/proximanova-light.ttf
205
+ - app/assets/fonts/proximanova-light.woff
206
+ - app/assets/fonts/proximanova-regular.eot
207
+ - app/assets/fonts/proximanova-regular.svg
208
+ - app/assets/fonts/proximanova-regular.ttf
209
+ - app/assets/fonts/proximanova-regular.woff
210
+ - app/assets/fonts/ss-glyphs.eot
211
+ - app/assets/fonts/ss-glyphs.svg
212
+ - app/assets/fonts/ss-glyphs.ttf
213
+ - app/assets/fonts/ss-glyphs.woff
214
+ - app/assets/images/admin/csv-demo.jpg
215
+ - app/assets/images/deal-redemptions-logo.png
216
+ - app/assets/javascripts/deal_redemptions/admin.js.coffee
217
+ - app/assets/javascripts/deal_redemptions/application.js
218
+ - app/assets/javascripts/deal_redemptions/redeem/redeem.js.coffee
219
+ - app/assets/javascripts/deal_redemptions/redeem/redemption.js.coffee
220
+ - app/assets/javascripts/deal_redemptions/redeem/validator.js.coffee
221
+ - app/assets/javascripts/deal_redemptions/welcome.js.coffee
222
+ - app/assets/stylesheets/deal_redemptions/admin.css.scss
223
+ - app/assets/stylesheets/deal_redemptions/application.css.scss
224
+ - app/assets/stylesheets/deal_redemptions/lib.css.scss
225
+ - app/assets/stylesheets/deal_redemptions/redeem.css.scss
226
+ - app/assets/stylesheets/deal_redemptions/welcome.css.scss
227
+ - app/controllers/deal_redemptions/admin/companies_controller.rb
228
+ - app/controllers/deal_redemptions/admin/dashboard_controller.rb
229
+ - app/controllers/deal_redemptions/admin/import_controller.rb
230
+ - app/controllers/deal_redemptions/admin/products_controller.rb
231
+ - app/controllers/deal_redemptions/admin/redemptions_controller.rb
232
+ - app/controllers/deal_redemptions/admin/sessions_controller.rb
233
+ - app/controllers/deal_redemptions/admin/settings_controller.rb
234
+ - app/controllers/deal_redemptions/admin/user_controller.rb
235
+ - app/controllers/deal_redemptions/application_controller.rb
236
+ - app/controllers/deal_redemptions/redeem_controller.rb
237
+ - app/controllers/deal_redemptions/welcome_controller.rb
238
+ - app/helpers/deal_redemptions/admin_helper.rb
239
+ - app/helpers/deal_redemptions/application_helper.rb
240
+ - app/helpers/deal_redemptions/redeem_helper.rb
241
+ - app/helpers/deal_redemptions/welcome_helper.rb
242
+ - app/mailers/deal_redemptions/admin_user_mailer.rb
243
+ - app/mailers/deal_redemptions/redemption_mailer.rb
244
+ - app/models/deal_redemptions/company.rb
245
+ - app/models/deal_redemptions/mailing_list.rb
246
+ - app/models/deal_redemptions/product.rb
247
+ - app/models/deal_redemptions/redeem_code.rb
248
+ - app/models/deal_redemptions/redemption.rb
249
+ - app/models/deal_redemptions/redemptions/redeem.rb
250
+ - app/models/deal_redemptions/user.rb
251
+ - app/views/deal_redemptions/admin/companies/_form.html.haml
252
+ - app/views/deal_redemptions/admin/companies/edit.html.haml
253
+ - app/views/deal_redemptions/admin/companies/index.html.haml
254
+ - app/views/deal_redemptions/admin/companies/new.html.haml
255
+ - app/views/deal_redemptions/admin/dashboard/index.html.haml
256
+ - app/views/deal_redemptions/admin/import/export_redemptions.csv.erb
257
+ - app/views/deal_redemptions/admin/import/new.html.haml
258
+ - app/views/deal_redemptions/admin/products/_form.html.haml
259
+ - app/views/deal_redemptions/admin/products/edit.html.haml
260
+ - app/views/deal_redemptions/admin/products/index.html.haml
261
+ - app/views/deal_redemptions/admin/products/new.html.haml
262
+ - app/views/deal_redemptions/admin/redemptions/index.html.haml
263
+ - app/views/deal_redemptions/admin/redemptions/new.html.erb
264
+ - app/views/deal_redemptions/admin/redemptions/show.html.haml
265
+ - app/views/deal_redemptions/admin/sessions/new.html.haml
266
+ - app/views/deal_redemptions/admin/settings/_new_user_modal.html.haml
267
+ - app/views/deal_redemptions/admin/settings/index.html.haml
268
+ - app/views/deal_redemptions/admin/shared/_sidebar.html.haml
269
+ - app/views/deal_redemptions/admin/shared/_topbar.html.haml
270
+ - app/views/deal_redemptions/admin_user_mailer/new_confirmation.html.erb
271
+ - app/views/deal_redemptions/redeem/new.html.haml
272
+ - app/views/deal_redemptions/redeem/thankyou.html.haml
273
+ - app/views/deal_redemptions/redeem/validate_code.jbuilder
274
+ - app/views/deal_redemptions/redemption_mailer/confirmation.html.erb
275
+ - app/views/deal_redemptions/shared_partials/_powered.html.haml
276
+ - app/views/deal_redemptions/welcome/index.html.haml
277
+ - app/views/kaminari/_first_page.html.haml
278
+ - app/views/kaminari/_gap.html.haml
279
+ - app/views/kaminari/_last_page.html.haml
280
+ - app/views/kaminari/_next_page.html.haml
281
+ - app/views/kaminari/_page.html.haml
282
+ - app/views/kaminari/_paginator.html.haml
283
+ - app/views/kaminari/_prev_page.html.haml
284
+ - app/views/layouts/deal_redemptions/admin/auth.html.erb
285
+ - app/views/layouts/deal_redemptions/admin/default.html.erb
286
+ - app/views/layouts/deal_redemptions/application.html.erb
287
+ - config/config_engine_rake_file.rb
288
+ - config/locales/en.yml
289
+ - config/routes.rb
290
+ - db/migrate/20140709234323_create_deal_redemptions_companies.rb
291
+ - db/migrate/20140711183800_add_active_to_deal_redemptions_companies.rb
292
+ - db/migrate/20140711222957_create_deal_redemptions_mailing_lists.rb
293
+ - db/migrate/20140714165815_create_deal_redemptions_products.rb
294
+ - db/migrate/20140714184807_create_deal_redemptions_redemptions.rb
295
+ - db/migrate/20140715041757_create_deal_redemptions_redeem_codes.rb
296
+ - db/migrate/20140718200319_create_deal_redemptions_users.rb
297
+ - db/migrate/20140802010843_add_company_and_remove_transaction_to_redemption.rb
298
+ - lib/deal_redemptions/admin/importer.rb
299
+ - lib/deal_redemptions/admin_interface_domain.rb
300
+ - lib/deal_redemptions/engine.rb
301
+ - lib/deal_redemptions/version.rb
302
+ - lib/deal_redemptions.rb
303
+ - lib/tasks/deal_redemptions_tasks.rake
304
+ - vendor/assets/javascripts/bootstrap-datepicker.js
305
+ - vendor/assets/stylesheets/datepicker.css
306
+ - MIT-LICENSE
307
+ - Rakefile
308
+ - README.rdoc
309
+ - spec/controllers/deal_redemptions/admin/companies_controller_spec.rb
310
+ - spec/controllers/deal_redemptions/admin/dashboard_controller_spec.rb
311
+ - spec/controllers/deal_redemptions/admin/import_controller_spec.rb
312
+ - spec/controllers/deal_redemptions/admin/products_controller_spec.rb
313
+ - spec/controllers/deal_redemptions/admin/redemptions_controller_spec.rb
314
+ - spec/controllers/deal_redemptions/admin/sessions_controller_spec.rb
315
+ - spec/controllers/deal_redemptions/admin/settings_controller_spec.rb
316
+ - spec/controllers/deal_redemptions/admin/user_controller_spec.rb
317
+ - spec/controllers/deal_redemptions/redeem_controller_spec.rb
318
+ - spec/controllers/deal_redemptions/welcome_controller_spec.rb
319
+ - spec/dummy/app/assets/javascripts/application.js
320
+ - spec/dummy/app/assets/stylesheets/application.css
321
+ - spec/dummy/app/controllers/application_controller.rb
322
+ - spec/dummy/app/helpers/application_helper.rb
323
+ - spec/dummy/app/views/layouts/application.html.erb
324
+ - spec/dummy/bin/bundle
325
+ - spec/dummy/bin/rails
326
+ - spec/dummy/bin/rake
327
+ - spec/dummy/config/application.rb
328
+ - spec/dummy/config/boot.rb
329
+ - spec/dummy/config/database.yml
330
+ - spec/dummy/config/environment.rb
331
+ - spec/dummy/config/environments/development.rb
332
+ - spec/dummy/config/environments/production.rb
333
+ - spec/dummy/config/environments/test.rb
334
+ - spec/dummy/config/initializers/assets.rb
335
+ - spec/dummy/config/initializers/backtrace_silencers.rb
336
+ - spec/dummy/config/initializers/cookies_serializer.rb
337
+ - spec/dummy/config/initializers/deal_redemptions.rb
338
+ - spec/dummy/config/initializers/filter_parameter_logging.rb
339
+ - spec/dummy/config/initializers/inflections.rb
340
+ - spec/dummy/config/initializers/mime_types.rb
341
+ - spec/dummy/config/initializers/session_store.rb
342
+ - spec/dummy/config/initializers/wrap_parameters.rb
343
+ - spec/dummy/config/locales/en.yml
344
+ - spec/dummy/config/routes.rb
345
+ - spec/dummy/config/secrets.yml
346
+ - spec/dummy/config.ru
347
+ - spec/dummy/db/development.sqlite3
348
+ - spec/dummy/db/schema.rb
349
+ - spec/dummy/db/test.sqlite3
350
+ - spec/dummy/log/development.log
351
+ - spec/dummy/log/test.log
352
+ - spec/dummy/public/404.html
353
+ - spec/dummy/public/422.html
354
+ - spec/dummy/public/500.html
355
+ - spec/dummy/public/favicon.ico
356
+ - spec/dummy/Rakefile
357
+ - spec/dummy/README.rdoc
358
+ - spec/dummy/tmp/cache/assets/development/sprockets/65dfde5f086fa3aca4c12e3ec1bab0e7
359
+ - spec/dummy/tmp/cache/assets/development/sprockets/d625417a15a40e26da10d62fd34927e1
360
+ - spec/factories/company.rb
361
+ - spec/factories/deal_redemption_products.rb
362
+ - spec/factories/deal_redemptions_redeem_codes.rb
363
+ - spec/factories/deal_redemptions_redemptions.rb
364
+ - spec/factories/deal_redemptions_users.rb
365
+ - spec/factories/mailing_lists.rb
366
+ - spec/mailers/deal_redemptions/admin_user_mailer_spec.rb
367
+ - spec/mailers/deal_redemptions/redemption_mailer_spec.rb
368
+ - spec/models/deal_redemptions/company_spec.rb
369
+ - spec/models/deal_redemptions/mailing_list_spec.rb
370
+ - spec/models/deal_redemptions/product_spec.rb
371
+ - spec/models/deal_redemptions/redeem_code_spec.rb
372
+ - spec/models/deal_redemptions/redemption_spec.rb
373
+ - spec/models/deal_redemptions/redemptions/redeem_spec.rb
374
+ - spec/models/deal_redemptions/user_spec.rb
375
+ - spec/rails_helper.rb
376
+ - spec/routing/deal_redemptions/admin/import_routing_spec.rb
377
+ - spec/routing/deal_redemptions/admin/redemptions_routing_spec.rb
378
+ - spec/routing/deal_redemptions/admin/user_controller_routing_spec.rb
379
+ - spec/spec_helper.rb
380
+ - spec/tasks/tasks_spec.rb
381
+ - spec/views/deal_redemptions/admin/dashboard/index.html.erb_spec.rb
382
+ - spec/views/deal_redemptions/admin/import/index.html.erb_spec.rb
383
+ - spec/views/deal_redemptions/admin/sessions/index.html.erb_spec.rb
384
+ - spec/views/deal_redemptions/admin/settings/index.html.erb_spec.rb
385
+ homepage: https://github.com/iamcutler/deal-redemptions
386
+ licenses:
387
+ - MIT
388
+ metadata: {}
389
+ post_install_message:
390
+ rdoc_options: []
391
+ require_paths:
392
+ - lib
393
+ required_ruby_version: !ruby/object:Gem::Requirement
394
+ requirements:
395
+ - - '>='
396
+ - !ruby/object:Gem::Version
397
+ version: '0'
398
+ required_rubygems_version: !ruby/object:Gem::Requirement
399
+ requirements:
400
+ - - '>='
401
+ - !ruby/object:Gem::Version
402
+ version: '0'
403
+ requirements: []
404
+ rubyforge_project:
405
+ rubygems_version: 2.1.11
406
+ signing_key:
407
+ specification_version: 4
408
+ summary: Ruby on Rails Engine to redeem deal site promotions.
409
+ test_files:
410
+ - spec/controllers/deal_redemptions/admin/companies_controller_spec.rb
411
+ - spec/controllers/deal_redemptions/admin/dashboard_controller_spec.rb
412
+ - spec/controllers/deal_redemptions/admin/import_controller_spec.rb
413
+ - spec/controllers/deal_redemptions/admin/products_controller_spec.rb
414
+ - spec/controllers/deal_redemptions/admin/redemptions_controller_spec.rb
415
+ - spec/controllers/deal_redemptions/admin/sessions_controller_spec.rb
416
+ - spec/controllers/deal_redemptions/admin/settings_controller_spec.rb
417
+ - spec/controllers/deal_redemptions/admin/user_controller_spec.rb
418
+ - spec/controllers/deal_redemptions/redeem_controller_spec.rb
419
+ - spec/controllers/deal_redemptions/welcome_controller_spec.rb
420
+ - spec/dummy/app/assets/javascripts/application.js
421
+ - spec/dummy/app/assets/stylesheets/application.css
422
+ - spec/dummy/app/controllers/application_controller.rb
423
+ - spec/dummy/app/helpers/application_helper.rb
424
+ - spec/dummy/app/views/layouts/application.html.erb
425
+ - spec/dummy/bin/bundle
426
+ - spec/dummy/bin/rails
427
+ - spec/dummy/bin/rake
428
+ - spec/dummy/config/application.rb
429
+ - spec/dummy/config/boot.rb
430
+ - spec/dummy/config/database.yml
431
+ - spec/dummy/config/environment.rb
432
+ - spec/dummy/config/environments/development.rb
433
+ - spec/dummy/config/environments/production.rb
434
+ - spec/dummy/config/environments/test.rb
435
+ - spec/dummy/config/initializers/assets.rb
436
+ - spec/dummy/config/initializers/backtrace_silencers.rb
437
+ - spec/dummy/config/initializers/cookies_serializer.rb
438
+ - spec/dummy/config/initializers/deal_redemptions.rb
439
+ - spec/dummy/config/initializers/filter_parameter_logging.rb
440
+ - spec/dummy/config/initializers/inflections.rb
441
+ - spec/dummy/config/initializers/mime_types.rb
442
+ - spec/dummy/config/initializers/session_store.rb
443
+ - spec/dummy/config/initializers/wrap_parameters.rb
444
+ - spec/dummy/config/locales/en.yml
445
+ - spec/dummy/config/routes.rb
446
+ - spec/dummy/config/secrets.yml
447
+ - spec/dummy/config.ru
448
+ - spec/dummy/db/development.sqlite3
449
+ - spec/dummy/db/schema.rb
450
+ - spec/dummy/db/test.sqlite3
451
+ - spec/dummy/log/development.log
452
+ - spec/dummy/log/test.log
453
+ - spec/dummy/public/404.html
454
+ - spec/dummy/public/422.html
455
+ - spec/dummy/public/500.html
456
+ - spec/dummy/public/favicon.ico
457
+ - spec/dummy/Rakefile
458
+ - spec/dummy/README.rdoc
459
+ - spec/dummy/tmp/cache/assets/development/sprockets/65dfde5f086fa3aca4c12e3ec1bab0e7
460
+ - spec/dummy/tmp/cache/assets/development/sprockets/d625417a15a40e26da10d62fd34927e1
461
+ - spec/factories/company.rb
462
+ - spec/factories/deal_redemption_products.rb
463
+ - spec/factories/deal_redemptions_redeem_codes.rb
464
+ - spec/factories/deal_redemptions_redemptions.rb
465
+ - spec/factories/deal_redemptions_users.rb
466
+ - spec/factories/mailing_lists.rb
467
+ - spec/mailers/deal_redemptions/admin_user_mailer_spec.rb
468
+ - spec/mailers/deal_redemptions/redemption_mailer_spec.rb
469
+ - spec/models/deal_redemptions/company_spec.rb
470
+ - spec/models/deal_redemptions/mailing_list_spec.rb
471
+ - spec/models/deal_redemptions/product_spec.rb
472
+ - spec/models/deal_redemptions/redeem_code_spec.rb
473
+ - spec/models/deal_redemptions/redemption_spec.rb
474
+ - spec/models/deal_redemptions/redemptions/redeem_spec.rb
475
+ - spec/models/deal_redemptions/user_spec.rb
476
+ - spec/rails_helper.rb
477
+ - spec/routing/deal_redemptions/admin/import_routing_spec.rb
478
+ - spec/routing/deal_redemptions/admin/redemptions_routing_spec.rb
479
+ - spec/routing/deal_redemptions/admin/user_controller_routing_spec.rb
480
+ - spec/spec_helper.rb
481
+ - spec/tasks/tasks_spec.rb
482
+ - spec/views/deal_redemptions/admin/dashboard/index.html.erb_spec.rb
483
+ - spec/views/deal_redemptions/admin/import/index.html.erb_spec.rb
484
+ - spec/views/deal_redemptions/admin/sessions/index.html.erb_spec.rb
485
+ - spec/views/deal_redemptions/admin/settings/index.html.erb_spec.rb