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,19 @@
1
+ - page_title "#{@company.name}"
2
+ - admin_page_title "<i class=\"companies\"></i> #{link_to 'Companies', admin_companies_path} / #{@company.name}".html_safe
3
+
4
+ .row
5
+ .col-md-4
6
+ %h3 Edit existing company
7
+ Make modifications to an existing deal site.
8
+ %hr
9
+
10
+ %h4 Want to remove this company?
11
+ %h5 Click the button below. You can <strong>NOT</strong> undo this action.
12
+ %h5 You can make a company unactive so customers can't redeem as an alternative.
13
+
14
+ = button_to 'Delete Company', admin_company_path, method: :delete, class: 'btn btn-danger', onclick: 'if(!confirm("Are you sure you want to delete this company?")) return false;'
15
+ %hr
16
+
17
+
18
+ .col-md-8
19
+ = render 'form'
@@ -0,0 +1,32 @@
1
+ - page_title 'Companies'
2
+ - admin_page_title '<i class="companies"></i> Companies'.html_safe
3
+
4
+ .row
5
+ .col-md-12
6
+ = link_to 'New Company', new_admin_company_path, class: 'btn btn-primary pull-right'
7
+ %hr
8
+
9
+ %table{class: 'table default'}
10
+ %thead
11
+ %tr
12
+ %td
13
+ Name:
14
+ %td
15
+ URL:
16
+ %td
17
+ Slug:
18
+ %td
19
+ Active:
20
+ %tbody
21
+ - @companies.each do |c|
22
+ %tr
23
+ %td
24
+ = link_to c.name, edit_admin_company_path(c.id)
25
+ %td
26
+ = c.url
27
+ %td
28
+ = c.slug
29
+ %td
30
+ = c.active == 1 ? 'Yes' : 'No'
31
+
32
+ = paginate @companies
@@ -0,0 +1,11 @@
1
+ - page_title "New Company"
2
+ - admin_page_title "<i class=\"companies\"></i> #{link_to 'Companies', admin_companies_path} / New Company".html_safe
3
+
4
+ .row
5
+ .col-md-4
6
+ %h3 New company
7
+ Add new deal site for customers to redeem.
8
+ %hr
9
+
10
+ .col-md-8
11
+ = render 'form'
@@ -0,0 +1,4 @@
1
+ - page_title 'Dashboard'
2
+ - admin_page_title '<i class="dashboard"></i> Dashboard'.html_safe
3
+
4
+ Hello World
@@ -0,0 +1 @@
1
+ <%= @redemptions %>
@@ -0,0 +1,54 @@
1
+ - page_title 'Import/Export'
2
+ - admin_page_title '<i class="import"></i> Import/Export'.html_safe
3
+
4
+ .row
5
+ .col-md-4
6
+ %h3 Upload Redemption Codes
7
+ Upload redemption codes via CSV format
8
+ %hr
9
+ %span{style: "font-family: 'ProximaNovaRegular'"} Format:
10
+ %br
11
+ Upload CSV file with each code in a new row. No headers are needed.
12
+ %i{class: 'question csv-tip', data: {toggle: 'tooltip', title: 'Testing tip', placement: 'top'}}
13
+
14
+ .col-md-8
15
+ = form_tag '', multipart: true do
16
+ .form-group
17
+ = label_tag :company
18
+ = select_tag :company, options_from_collection_for_select(@companies, 'id', 'name'), class: 'form-control'
19
+
20
+ .form-group
21
+ = label_tag :product
22
+ = select_tag :product, options_from_collection_for_select(@products, 'id', 'name'), class: 'form-control'
23
+
24
+ .form-group
25
+ = label_tag :file, 'CSV File'
26
+ = file_field_tag :file
27
+
28
+ .form-group
29
+ = submit_tag 'Submit', class: 'btn btn-primary pull-right'
30
+
31
+ %hr
32
+
33
+ .row
34
+ .col-md-4
35
+ %h3 Export
36
+ Export existing redemptions
37
+
38
+ %hr
39
+
40
+ .col-md-8
41
+ = form_tag admin_export_redemptions_path(format: :csv), method: 'get' do
42
+ .row-fluid
43
+ .col-md-6
44
+ .form-group
45
+ %label Start Date:
46
+ %input{class: 'form-control', name: 'exportStartDate', id: 'exportStartDate', value: Time.now.strftime('%Y-%m-%d'), readonly: 'readonly' }
47
+
48
+ .col-md-6
49
+ .form-group
50
+ %label End Date:
51
+ %input{class: 'form-control', name: 'exportEndDate', id: 'exportEndDate', value: Time.now.strftime('%Y-%m-%d'), readonly: 'readonly' }
52
+
53
+ .form-group
54
+ = submit_tag 'Export', name: nil, class: 'btn btn-primary pull-right'
@@ -0,0 +1,16 @@
1
+ - if @product.errors.any?
2
+ .alert.alert-danger
3
+ %ul
4
+ - @product.errors.full_messages.each do |msg|
5
+ %li
6
+ = msg
7
+
8
+ = form_for [:admin, @product] do |f|
9
+ .form-group
10
+ = f.label :name, 'Name:'
11
+ = f.text_field :name, class: 'form-control'
12
+ .form-group
13
+ = f.label :url, 'URL:'
14
+ = f.text_field :url, class: 'form-control'
15
+ .form-group.pull-right
16
+ = f.submit @product.new_record? ? "Create Product" : "Edit Product", class: 'btn btn-primary'
@@ -0,0 +1,18 @@
1
+ - page_title "#{@product.name}"
2
+ - admin_page_title "<i class=\"products\"></i> #{link_to 'Products', admin_products_path} / #{@product.name}".html_safe
3
+
4
+ .row
5
+ .col-md-4
6
+ %h3 Edit existing product
7
+ Make modifications to an existing product.
8
+ %hr
9
+
10
+ %h4 Want to remove this product?
11
+ %h5 Click the button below. You can <strong>NOT</strong> undo this action.
12
+
13
+ = button_to 'Delete Product', admin_product_path, method: :delete, class: 'btn btn-danger', onclick: 'if(!confirm("Are you sure you want to delete this product?")) return false;'
14
+ %hr
15
+
16
+
17
+ .col-md-8
18
+ = render 'form'
@@ -0,0 +1,26 @@
1
+ - page_title 'Products'
2
+ - admin_page_title '<i class="products"></i> Products'.html_safe
3
+
4
+ .row
5
+ .col-md-12
6
+ = link_to 'New Product', new_admin_product_path, class: 'btn btn-primary pull-right'
7
+ %hr
8
+
9
+ - if @products.count > 0
10
+ %table{class: 'table default'}
11
+ %thead
12
+ %tr
13
+ %td
14
+ Name:
15
+ %tbody
16
+ - @products.each do |c|
17
+ %tr
18
+ %td
19
+ = link_to c.name, edit_admin_product_path(c.id)
20
+
21
+ = paginate @products
22
+
23
+ - else
24
+ .no-current-products
25
+ %i.products.clearfix
26
+ No Current Products
@@ -0,0 +1,11 @@
1
+ - page_title "New Product"
2
+ - admin_page_title "<i class=\"products\"></i> #{link_to 'Products', admin_products_path} / New Product".html_safe
3
+
4
+ .row
5
+ .col-md-4
6
+ %h3 New product
7
+ Add new product to track with redemption codes
8
+ %hr
9
+
10
+ .col-md-8
11
+ = render 'form'
@@ -0,0 +1,54 @@
1
+ - page_title 'Redemptions'
2
+ - admin_page_title '<i class="redemptions"></i> Redemptions'.html_safe
3
+
4
+ %hr
5
+
6
+ .row.clearfix
7
+ .col-md-4
8
+ = form_tag '', method: 'get', class: 'search-redemptions pull-right' do
9
+ .col-md-8.padding-right-5
10
+ .form-group
11
+ = search_field_tag '', '', name: 'search', class: 'form-control', placeholder: 'Search by name:'
12
+ .col-md-4.padding-left-5
13
+ .form-group
14
+ = button_tag 'Search', name: nil, class: 'btn btn-primary'
15
+ .col-md-8
16
+
17
+ %hr
18
+
19
+ - if @redemptions.empty?
20
+
21
+ .no-current-redemptions
22
+ %i.redemptions.clearfix
23
+ No redemptions were found
24
+
25
+ - else
26
+
27
+ %table{id: 'redemptions', class: 'table default'}
28
+ %thead
29
+ %tr
30
+ %td
31
+ id
32
+ %td
33
+ Name:
34
+ %td
35
+ Email:
36
+ %td
37
+ Company:
38
+ %td
39
+ Redeemed Date:
40
+ %tbody
41
+ - @redemptions.each do |redemption|
42
+ %tr
43
+ %td
44
+ = link_to "##{redemption.id}", admin_redemption_path(redemption.id)
45
+ %td
46
+ = link_to "#{redemption.first_name} #{redemption.last_name}", admin_redemption_path(redemption.id)
47
+ %td
48
+ = redemption.email_address
49
+ %td
50
+ = redemption.company.name
51
+ %td
52
+ = redemption.created_at.strftime "%m-%d-%Y"
53
+
54
+ = paginate @redemptions
@@ -0,0 +1,5 @@
1
+ <h1>New admin_redemption</h1>
2
+
3
+ <%= render 'form' %>
4
+
5
+ <%= link_to 'Back', admin_redemptions_path %>
@@ -0,0 +1,64 @@
1
+ - page_title "Redemption ##{@redemption.id}"
2
+ - admin_page_title "<i class=\"redemptions\"></i> #{link_to 'Redemptions', admin_redemptions_path} / ##{@redemption.id}".html_safe
3
+
4
+ .row-fluid
5
+ .col-md-8.description-wrapper
6
+ .row
7
+ %header
8
+ Redemption Information:
9
+
10
+ .row.redemption-description
11
+ .col-md-6
12
+ %strong{class: 'title'} Name:
13
+ = "#{@redemption.first_name} #{@redemption.last_name}"
14
+ .col-md-6
15
+ %strong{class: 'title'} Email Address:
16
+ = @redemption.email_address
17
+ .col-md-6
18
+ %strong{class: 'title'} Phone:
19
+ = @redemption.phone
20
+ .col-md-6
21
+ %strong{class: 'title'} Address 1:
22
+ = @redemption.address1
23
+ .col-md-6
24
+ %strong{class: 'title'} Address 2:
25
+ = @redemption.address2
26
+ .col-md-6
27
+ %strong{class: 'title'} City:
28
+ = @redemption.city
29
+ .col-md-6
30
+ %strong{class: 'title'} State:
31
+ = @redemption.state
32
+ .col-md-6
33
+ %strong{class: 'title'} Zip Code:
34
+ = @redemption.zip_code
35
+ .col-md-12
36
+ %strong{class: 'title'} Country:
37
+ = @redemption.country
38
+ .col-md-12
39
+ %strong{class: 'title'} Comments:
40
+ = @redemption.comments
41
+
42
+
43
+ .col-md-4.redemption-right-col
44
+ .col-md-12.description-wrapper
45
+ .row
46
+ %header
47
+ Company:
48
+
49
+ .row-fluid{style: 'padding: 10px 0;'}
50
+ = label_tag 'Name:'
51
+ = link_to @redemption.company.name, edit_admin_company_path(@redemption.company.id)
52
+
53
+ .col-md-12.description-wrapper
54
+ .row
55
+ %header
56
+ Codes Redeemed:
57
+
58
+ .row.redemption-description
59
+ - @redemption.redeem_code.each do |c|
60
+ - if c.redeemed?
61
+ .col-md-12
62
+ = label_tag 'Code:'
63
+ = c.code
64
+
@@ -0,0 +1,23 @@
1
+ .login-heading
2
+ %h1= DealRedemptions.config.site_name
3
+
4
+ .login-subheading
5
+ %h4 Login to manage your redemptions
6
+
7
+ .login-container
8
+ - if flash.any?
9
+ .alert.alert-danger
10
+ %ul
11
+ - flash.each do |name, msg|
12
+ %li= msg
13
+
14
+ .login-form
15
+ = form_tag admin_sessions_path do
16
+ .form-input
17
+ = text_field_tag :email, params[:email], placeholder: 'Email Address:', required: 'required'
18
+
19
+ %hr
20
+
21
+ .form-input
22
+ = password_field_tag :password, placeholder: 'Password:', required: 'required'
23
+ = submit_tag 'Login'
@@ -0,0 +1,38 @@
1
+ -# New user modal
2
+ .modal.fade{id: 'newUserModal', tabindex: '-1', role: 'dialog', aria: {labelledby: 'newUserModalLabel', hidden: true}}
3
+ .modal-dialog
4
+ .modal-content
5
+ .modal-header
6
+ %button{type: 'button', class: 'close', data: {dismiss: 'modal'}}
7
+ %span{aria: {hidden: true}} &times;
8
+ %span{class: 'sr-only'} Close
9
+
10
+ %h4{class: 'modal-title', id: 'newUserModalLabel'} New Staff User
11
+
12
+ = form_for [:admin, @new_user], url: admin_user_index_path do |f|
13
+ .modal-body
14
+ .row
15
+ .col-md-6
16
+ .form-group
17
+ = f.label :first_name, 'First Name:', class: 'control-label'
18
+ = f.text_field :first_name, class: 'form-control', required: 'required'
19
+ .col-md-6
20
+ .form-group
21
+ = f.label :last_name, 'Last Name:', class: 'control-label'
22
+ = f.text_field :last_name, class: 'form-control', required: 'required'
23
+ .col-md-12
24
+ .form-group
25
+ = f.label :email, 'Email Address:', class: 'control-label'
26
+ = f.email_field :email, class: 'form-control', required: 'required'
27
+ .col-md-6
28
+ .form-group
29
+ = f.label :password
30
+ = f.password_field :password, class: 'form-control', required: 'required'
31
+ .col-md-6
32
+ .form-group
33
+ = f.label :password_confirmation
34
+ = f.password_field :password_confirmation, class: 'form-control', required: 'required'
35
+
36
+ .modal-footer
37
+ %button{type: 'button', class: 'btn btn-default', data: {dismiss: 'modal'}} Cancel
38
+ = f.submit 'Add User', name: nil, class: 'btn btn-primary'
@@ -0,0 +1,48 @@
1
+ - page_title 'Settings'
2
+ - admin_page_title '<i class="settings"></i> Settings'.html_safe
3
+
4
+ .row
5
+ .col-md-4
6
+ %h3 Application Settings
7
+ %h5 Make modifications to your redemption's application.
8
+ %hr
9
+
10
+ .col-md-8
11
+ %h3 Change My Password:
12
+ = form_for [:admin, @current_admin_user], name: 'updateAdminPassword' do |f|
13
+ .row
14
+ .col-md-6
15
+ .form-group
16
+ = f.label :password
17
+ = f.password_field :password, class: 'form-control'
18
+ .col-md-6
19
+ .form-group
20
+ = f.label :password_confirmation
21
+ = f.password_field :password_confirmation, class: 'form-control'
22
+ .col-md-12
23
+ = submit_tag 'Submit', name: nil, class: 'btn btn-primary pull-right'
24
+
25
+ %hr
26
+ .row
27
+ .col-md-8
28
+ %h3 Staff Users:
29
+ .col-md-4
30
+ = link_to 'New User', '', class: 'btn btn-default pull-right', data: { toggle: 'modal', target: '#newUserModal' }
31
+
32
+ %table{class: 'table default'}
33
+ %thead
34
+ %tr
35
+ %td Name:
36
+ %td Email:
37
+ %td Last Login Date:
38
+ %td
39
+ %tbody
40
+ - @users.each do |u|
41
+ %tr
42
+ %td= "#{u.first_name} #{u.last_name}"
43
+ %td= u.email
44
+ %td= u.last_login.strftime "%m-%d-%Y"
45
+ %td= button_to 'Delete', admin_user_path(u.id), class: 'remove-btn pull-right', method: :delete, onclick: 'if(!confirm("Are you sure you want to delete this user? This can NOT be undone!")) return false;' if u.id != current_admin_user.id
46
+
47
+
48
+ = render 'new_user_modal'