wordjelly-auth 0.0.3 → 0.0.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (202) hide show
  1. checksums.yaml +4 -4
  2. data/lib/auth/version.rb +1 -1
  3. data/spec/auth_test.rb +7 -0
  4. data/spec/controllers/auth/admin_create_users_controller_spec.rb +141 -0
  5. data/spec/controllers/auth/clients_controller_spec.rb +223 -0
  6. data/spec/controllers/auth/search_controller_spec.rb +5 -0
  7. data/spec/controllers/auth/shopping/discounts_controller_spec.rb +54 -0
  8. data/spec/controllers/auth/users/profiles_controller_spec.rb +5 -0
  9. data/spec/dummy/README.rdoc +28 -0
  10. data/spec/dummy/Rakefile +6 -0
  11. data/spec/dummy/app/assets/javascripts/activity.js +2 -0
  12. data/spec/dummy/app/assets/javascripts/application.js +16 -0
  13. data/spec/dummy/app/assets/javascripts/home.js +2 -0
  14. data/spec/dummy/app/assets/javascripts/pollymer.min.js +170 -0
  15. data/spec/dummy/app/assets/javascripts/tests.js +2 -0
  16. data/spec/dummy/app/assets/javascripts/topics.js +2 -0
  17. data/spec/dummy/app/assets/stylesheets/activity.css +4 -0
  18. data/spec/dummy/app/assets/stylesheets/application.scss +16 -0
  19. data/spec/dummy/app/assets/stylesheets/home.css +4 -0
  20. data/spec/dummy/app/assets/stylesheets/tests.css +4 -0
  21. data/spec/dummy/app/assets/stylesheets/topics.css +4 -0
  22. data/spec/dummy/app/controllers/activity_controller.rb +3 -0
  23. data/spec/dummy/app/controllers/admins/confirmations_controller.rb +28 -0
  24. data/spec/dummy/app/controllers/admins/omniauth_callbacks_controller.rb +28 -0
  25. data/spec/dummy/app/controllers/admins/passwords_controller.rb +32 -0
  26. data/spec/dummy/app/controllers/admins/registrations_controller.rb +60 -0
  27. data/spec/dummy/app/controllers/admins/sessions_controller.rb +5 -0
  28. data/spec/dummy/app/controllers/admins/unlocks_controller.rb +28 -0
  29. data/spec/dummy/app/controllers/application_controller.rb +49 -0
  30. data/spec/dummy/app/controllers/home_controller.rb +13 -0
  31. data/spec/dummy/app/controllers/otp_controller.rb +3 -0
  32. data/spec/dummy/app/controllers/shopping/cart_items_controller.rb +28 -0
  33. data/spec/dummy/app/controllers/shopping/carts_controller.rb +4 -0
  34. data/spec/dummy/app/controllers/shopping/discounts_controller.rb +3 -0
  35. data/spec/dummy/app/controllers/shopping/payments_controller.rb +5 -0
  36. data/spec/dummy/app/controllers/shopping/products_controller.rb +2 -0
  37. data/spec/dummy/app/controllers/tests_controller.rb +58 -0
  38. data/spec/dummy/app/controllers/topics_controller.rb +63 -0
  39. data/spec/dummy/app/controllers/users/sessions_controller.rb +3 -0
  40. data/spec/dummy/app/controllers/webhooks_controller.rb +13 -0
  41. data/spec/dummy/app/helpers/activity_helper.rb +2 -0
  42. data/spec/dummy/app/helpers/api/v1/token_auth_helper.rb +2 -0
  43. data/spec/dummy/app/helpers/application_helper.rb +2 -0
  44. data/spec/dummy/app/helpers/home_helper.rb +2 -0
  45. data/spec/dummy/app/helpers/tests_helper.rb +2 -0
  46. data/spec/dummy/app/helpers/topics_helper.rb +2 -0
  47. data/spec/dummy/app/mailers/application_mailer.rb +4 -0
  48. data/spec/dummy/app/mailers/new.rb +3 -0
  49. data/spec/dummy/app/models/activity.rb +3 -0
  50. data/spec/dummy/app/models/admin.rb +12 -0
  51. data/spec/dummy/app/models/noti.rb +48 -0
  52. data/spec/dummy/app/models/noti_response.rb +9 -0
  53. data/spec/dummy/app/models/shopping/cart.rb +3 -0
  54. data/spec/dummy/app/models/shopping/cart_item.rb +7 -0
  55. data/spec/dummy/app/models/shopping/discount.rb +3 -0
  56. data/spec/dummy/app/models/shopping/payment.rb +16 -0
  57. data/spec/dummy/app/models/shopping/product.rb +6 -0
  58. data/spec/dummy/app/models/test.rb +5 -0
  59. data/spec/dummy/app/models/topic.rb +75 -0
  60. data/spec/dummy/app/models/user.rb +95 -0
  61. data/spec/dummy/app/views/home/index.html.erb +6 -0
  62. data/spec/dummy/app/views/home/send_notification.html.erb +2 -0
  63. data/spec/dummy/app/views/layouts/application.html.erb +26 -0
  64. data/spec/dummy/app/views/layouts/mailer.html.erb +8 -0
  65. data/spec/dummy/app/views/layouts/mailer.text.erb +1 -0
  66. data/spec/dummy/app/views/new/notification.html.erb +1 -0
  67. data/spec/dummy/app/views/new/notification.text.erb +1 -0
  68. data/spec/dummy/app/views/shopping/_navigation_options.html.erb +1 -0
  69. data/spec/dummy/app/views/tests/_form.html.erb +25 -0
  70. data/spec/dummy/app/views/tests/edit.html.erb +6 -0
  71. data/spec/dummy/app/views/tests/index.html.erb +33 -0
  72. data/spec/dummy/app/views/tests/new.html.erb +5 -0
  73. data/spec/dummy/app/views/tests/show.html.erb +14 -0
  74. data/spec/dummy/app/views/topics/_form.html.erb +25 -0
  75. data/spec/dummy/app/views/topics/edit.html.erb +6 -0
  76. data/spec/dummy/app/views/topics/index.html.erb +29 -0
  77. data/spec/dummy/app/views/topics/new.html.erb +5 -0
  78. data/spec/dummy/app/views/topics/show.html.erb +14 -0
  79. data/spec/dummy/app/views/users/sessions/create.js.erb +6 -0
  80. data/spec/dummy/bin/bundle +3 -0
  81. data/spec/dummy/bin/rails +4 -0
  82. data/spec/dummy/bin/rake +4 -0
  83. data/spec/dummy/bin/setup +29 -0
  84. data/spec/dummy/config.ru +8 -0
  85. data/spec/dummy/config/application.rb +31 -0
  86. data/spec/dummy/config/boot.rb +5 -0
  87. data/spec/dummy/config/environment.rb +4 -0
  88. data/spec/dummy/config/environments/development.rb +57 -0
  89. data/spec/dummy/config/environments/production.rb +92 -0
  90. data/spec/dummy/config/environments/test.rb +44 -0
  91. data/spec/dummy/config/initializers/assets.rb +11 -0
  92. data/spec/dummy/config/initializers/aws.rb +15 -0
  93. data/spec/dummy/config/initializers/backtrace_silencers.rb +7 -0
  94. data/spec/dummy/config/initializers/cookies_serializer.rb +3 -0
  95. data/spec/dummy/config/initializers/devise.rb +273 -0
  96. data/spec/dummy/config/initializers/filter_parameter_logging.rb +4 -0
  97. data/spec/dummy/config/initializers/inflections.rb +16 -0
  98. data/spec/dummy/config/initializers/mime_types.rb +4 -0
  99. data/spec/dummy/config/initializers/preinitializer.rb +167 -0
  100. data/spec/dummy/config/initializers/redis.rb +9 -0
  101. data/spec/dummy/config/initializers/session_store.rb +3 -0
  102. data/spec/dummy/config/initializers/wrap_parameters.rb +9 -0
  103. data/spec/dummy/config/locales/devise.en.yml +62 -0
  104. data/spec/dummy/config/locales/en.yml +25 -0
  105. data/spec/dummy/config/mongoid.yml +142 -0
  106. data/spec/dummy/config/redis.yml +14 -0
  107. data/spec/dummy/config/routes.rb +38 -0
  108. data/spec/dummy/config/secrets.yml +22 -0
  109. data/spec/dummy/db/seeds.rb +48 -0
  110. data/spec/dummy/lib/admin/parameter_sanitizer.rb +9 -0
  111. data/spec/dummy/lib/assets/files/test_names.json +1 -0
  112. data/spec/dummy/lib/user/parameter_sanitizer.rb +8 -0
  113. data/spec/dummy/public/404.html +67 -0
  114. data/spec/dummy/public/422.html +67 -0
  115. data/spec/dummy/public/500.html +66 -0
  116. data/spec/dummy/public/favicon.ico +0 -0
  117. data/spec/dummy/shoryuken.yml +5 -0
  118. data/spec/dummy/sidekiq.yml +9 -0
  119. data/spec/dummy/sidekiq_prep.sh +6 -0
  120. data/spec/dummy/spec/controllers/activity_controller_spec.rb +5 -0
  121. data/spec/dummy/spec/controllers/tests_controller_spec.rb +141 -0
  122. data/spec/dummy/spec/factories/tests.rb +6 -0
  123. data/spec/dummy/spec/fixtures/new/send_notification +3 -0
  124. data/spec/dummy/spec/helpers/activity_helper_spec.rb +15 -0
  125. data/spec/dummy/spec/helpers/tests_helper_spec.rb +15 -0
  126. data/spec/dummy/spec/mailers/new_spec.rb +18 -0
  127. data/spec/dummy/spec/mailers/previews/new_preview.rb +13 -0
  128. data/spec/dummy/spec/models/test_spec.rb +5 -0
  129. data/spec/dummy/spec/requests/tests_spec.rb +10 -0
  130. data/spec/dummy/spec/routing/tests_routing_spec.rb +39 -0
  131. data/spec/dummy/spec/views/tests/edit.html.erb_spec.rb +21 -0
  132. data/spec/dummy/spec/views/tests/index.html.erb_spec.rb +22 -0
  133. data/spec/dummy/spec/views/tests/new.html.erb_spec.rb +21 -0
  134. data/spec/dummy/spec/views/tests/show.html.erb_spec.rb +16 -0
  135. data/spec/dummy/test/controllers/api/v1/token_auth_controller_test.rb +7 -0
  136. data/spec/dummy/test/controllers/home_controller_test.rb +9 -0
  137. data/spec/dummy/test/controllers/oauth_tests_controller_test.rb +7 -0
  138. data/spec/dummy/test/fixtures/oauth_tests.yml +11 -0
  139. data/spec/dummy/test/fixtures/users.yml +7 -0
  140. data/spec/dummy/test/models/oauth_test_test.rb +7 -0
  141. data/spec/dummy/test/models/user_test.rb +7 -0
  142. data/spec/factories/client_factory.rb +77 -0
  143. data/spec/features/additional_login_param_feature_spec.rb +63 -0
  144. data/spec/features/extension_spec.rb +680 -0
  145. data/spec/features/redirect_disable_spec.rb +74 -0
  146. data/spec/fixtures/auth/clients.yml +13 -0
  147. data/spec/helpers/auth/admin_create_users_helper_spec.rb +15 -0
  148. data/spec/helpers/auth/resource_helper_spec.rb +15 -0
  149. data/spec/helpers/auth/search_helper_spec.rb +15 -0
  150. data/spec/helpers/auth/users/profiles_helper_spec.rb +15 -0
  151. data/spec/integration/navigation_test.rb +8 -0
  152. data/spec/mailers/auth/notifier_spec.rb +5 -0
  153. data/spec/mailers/previews/auth/notifier_preview.rb +4 -0
  154. data/spec/models/auth/admin_create_user_spec.rb +5 -0
  155. data/spec/models/auth/client_test.rb +9 -0
  156. data/spec/models/auth/shopping/discount_spec.rb +5 -0
  157. data/spec/rails_helper.rb +70 -0
  158. data/spec/requests/admin/confirmation_request_spec.rb +164 -0
  159. data/spec/requests/admin/password_request_spec.rb +191 -0
  160. data/spec/requests/admin/registration_request_spec.rb +574 -0
  161. data/spec/requests/admin/session_request_spec.rb +352 -0
  162. data/spec/requests/admin/unlock_request_spec.rb +178 -0
  163. data/spec/requests/admin_create_user_request_spec.rb +303 -0
  164. data/spec/requests/background_job_request_spec.rb +28 -0
  165. data/spec/requests/cart_item_request_spec.rb +381 -0
  166. data/spec/requests/cart_request_spec.rb +451 -0
  167. data/spec/requests/client_request_spec.rb +65 -0
  168. data/spec/requests/discount_request_spec.rb +589 -0
  169. data/spec/requests/payment_request_spec.rb +1254 -0
  170. data/spec/requests/search_request_spec.rb +173 -0
  171. data/spec/requests/topic_request_spec.rb +138 -0
  172. data/spec/requests/user/additional_login_param_and_email_validation_spec.rb +673 -0
  173. data/spec/requests/user/confirmation_request_spec.rb +189 -0
  174. data/spec/requests/user/omniauth_callbacks_request_spec.rb +682 -0
  175. data/spec/requests/user/otp_basic_flow_request_spec.rb +512 -0
  176. data/spec/requests/user/password_request_spec.rb +216 -0
  177. data/spec/requests/user/registration_request_spec.rb +615 -0
  178. data/spec/requests/user/session_request_spec.rb +361 -0
  179. data/spec/requests/user/unlock_request_spec.rb +208 -0
  180. data/spec/routing/admin/admin_routes_spec.rb +15 -0
  181. data/spec/routing/auth/admin_create_users_routing_spec.rb +39 -0
  182. data/spec/routing/clients_controller_routes_spec.rb +75 -0
  183. data/spec/routing/engine_routes_spec.rb +16 -0
  184. data/spec/spec_helper.rb +138 -0
  185. data/spec/support/factory_girl.rb +3 -0
  186. data/spec/support/omniauth_macros.rb +195 -0
  187. data/spec/support/payumoney_support.rb +11 -0
  188. data/spec/support/sign_in_support.rb +361 -0
  189. data/spec/support/wait_for_ajax.rb +11 -0
  190. data/spec/views/auth/admin_create_users/edit.html.erb_spec.rb +14 -0
  191. data/spec/views/auth/admin_create_users/index.html.erb_spec.rb +14 -0
  192. data/spec/views/auth/admin_create_users/new.html.erb_spec.rb +14 -0
  193. data/spec/views/auth/admin_create_users/show.html.erb_spec.rb +11 -0
  194. data/spec/views/auth/shopping/discounts/create.html.erb_spec.rb +5 -0
  195. data/spec/views/auth/shopping/discounts/destroy.html.erb_spec.rb +5 -0
  196. data/spec/views/auth/shopping/discounts/edit.html.erb_spec.rb +5 -0
  197. data/spec/views/auth/shopping/discounts/index.html.erb_spec.rb +5 -0
  198. data/spec/views/auth/shopping/discounts/new.html.erb_spec.rb +5 -0
  199. data/spec/views/auth/shopping/discounts/show.html.erb_spec.rb +5 -0
  200. data/spec/views/auth/shopping/discounts/update.html.erb_spec.rb +5 -0
  201. data/spec/views/profile/show.html.erb_spec.rb +5 -0
  202. metadata +401 -3
@@ -0,0 +1,6 @@
1
+ class Shopping::Product < Auth::Shopping::Product
2
+
3
+ create_es_index(INDEX_DEFINITION)
4
+
5
+
6
+ end
@@ -0,0 +1,5 @@
1
+ class Test < Auth::Shopping::CartItem
2
+ field :test_time, type: DateTime
3
+ field :description, type: String
4
+ field :sample_type, type: String
5
+ end
@@ -0,0 +1,75 @@
1
+ class Topic
2
+ include Mongoid::Document
3
+ include Mongoid::Elasticsearch
4
+ elasticsearch!
5
+ field :name, type: String
6
+ field :place, type: String
7
+ field :gar, type: Array, default: []
8
+ field :has, type: Hash, default: {}
9
+
10
+
11
+ def self.agg
12
+
13
+ Topic.collection.aggregate([
14
+
15
+ {
16
+ "$match" => {
17
+ "$or" => [
18
+ {
19
+ "gar" => "hello"
20
+ },
21
+ {
22
+ "name" => "eminem"
23
+ }
24
+ ]
25
+ }
26
+ },
27
+ {
28
+ "$project" => {
29
+ "gar" => {
30
+ "$filter" => {
31
+ "input" => "$gar",
32
+ "as" => "gar",
33
+ "cond" => { "$eq" => [ "$$gar", "hello" ] }
34
+ }
35
+ }
36
+ }
37
+ }
38
+
39
+ ])
40
+
41
+ end
42
+
43
+
44
+ def self.mailgun
45
+
46
+ ##########
47
+
48
+ # First, instantiate the Mailgun Client with your API key
49
+ mg_client = Mailgun::Client.new 'key-6263360b078081b625182ff17d7a92fd'
50
+
51
+ # Define your message parameters
52
+ message_params = { from: 'bob@sending_domain.com',
53
+ to: 'bhargav.r.raut@gmail.com',
54
+ subject: 'The Ruby SDK is awesome!',
55
+ text: 'It is really easy to send a message!'
56
+ }
57
+
58
+ # Send your message through the client
59
+ result = mg_client.send_message('sandboxc0248205473845c3a998e44941ee503e.mailgun.org', message_params).to_h!
60
+
61
+ puts result.to_s
62
+
63
+ end
64
+
65
+ def self.delay
66
+ message = Auth.configuration.mailer_class.constantize.notification(nil,nil)
67
+ puts message.class.name
68
+ puts message.message.class.name
69
+ message.message_id = "here-is-my-test-message-id"
70
+ r = message.deliver
71
+ puts r.class.name
72
+ puts r.message_id
73
+ end
74
+
75
+ end
@@ -0,0 +1,95 @@
1
+ class User < Auth::User
2
+ include Mongoid::Document
3
+ include Auth::Concerns::UserConcern
4
+ include Auth::Concerns::SmsOtpConcern
5
+
6
+
7
+ field :name, type: String
8
+
9
+ create_es_index(INDEX_DEFINITION)
10
+
11
+ ##FUNCTION OVERRIDEN FROM THE USER CONCERN TO FORMAT AND PARSE THE ADDITIONAL_LOGIN_PARAM.
12
+ ##here we are processing it assuming it is a mobile number
13
+ ##the regex is the same one used on the javascript side as well.
14
+ def additional_login_param_format
15
+
16
+ if !additional_login_param.blank?
17
+
18
+ if additional_login_param =~/^([0]\+[0-9]{1,5})?([7-9][0-9]{9})$/
19
+
20
+ else
21
+
22
+ errors.add(:additional_login_param,"please enter a valid mobile number")
23
+ end
24
+ end
25
+ end
26
+
27
+ ################
28
+ ##
29
+ ## OVERRIDE SMS OTP METHODS
30
+ ## auth/app/models/auth/concerns/sms_otp_concern.rb
31
+ ##
32
+ ################
33
+ def send_sms_otp
34
+ super
35
+ OtpJob.perform_later([self.class.name.to_s,self.id.to_s,"send_sms_otp"])
36
+
37
+ end
38
+
39
+ def verify_sms_otp(otp)
40
+
41
+ super(otp)
42
+ ## will need to pass the request_send_password_link here. as well.
43
+ OtpJob.perform_later([self.class.name.to_s,self.id.to_s,"verify_sms_otp",JSON.generate({:otp => otp})])
44
+
45
+ end
46
+
47
+ def check_otp_errors
48
+ ## should make a call to the two factor otp check_errors class method, passing in self.
49
+ Auth::TwoFactorOtp.resource = self
50
+ Auth::TwoFactorOtp.check_errors
51
+ end
52
+
53
+ =begin
54
+ def send_reset_password_instructions
55
+ token = set_reset_password_token
56
+ send_reset_password_instructions_notification(token)
57
+ puts "token is: #{token}"
58
+ token
59
+ end
60
+ =end
61
+ ## only will work as long as you specify a default queue adapter at the application level, otherwise defaults to inline which basically means that it will block till email is sent.
62
+ ## refer: https://github.com/mperham/sidekiq/wiki/Active-Job#active-job-setup
63
+ def send_devise_notification(notification, *args)
64
+ puts "sending devise notification."
65
+ devise_mailer.send(notification, self, *args).deliver_later
66
+ end
67
+
68
+ def send_reset_password_link
69
+ super.tap do |r|
70
+ if r
71
+ notification = Noti.new
72
+ resource_ids = {}
73
+ resource_ids[User.name] = [self.resource_id]
74
+ notification.resource_ids = JSON.generate(resource_ids)
75
+ notification.objects[:payment_id] = r
76
+ notification.save
77
+ Auth::Notify.send_notification(notification)
78
+
79
+ else
80
+ puts "no r."
81
+
82
+ end
83
+ end
84
+ end
85
+
86
+ ##############
87
+ ##
88
+ ##
89
+ ## END OVERRIDE.
90
+ ##
91
+ ###############
92
+
93
+
94
+
95
+ end
@@ -0,0 +1,6 @@
1
+ <h1>Home#index</h1>
2
+ <p>Find me in app/views/home/index.html.erb</p>
3
+ <%= link_to "send_notification", send_notification_path %>
4
+ <%= link_to "test", omniauth_failure_path_for(User.new) %>
5
+ <%= link_to "see all products", shopping_products_path %>
6
+
@@ -0,0 +1,2 @@
1
+ The notificaiton should be sent <%= Time.now.to_s %>
2
+
@@ -0,0 +1,26 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <title><%= Auth.configuration.brand_name %></title>
5
+ <!-- to include stylesheet and javascripts from the engine use auth/application -->
6
+ <%= stylesheet_link_tag "application", media: "all" %>
7
+ <%= stylesheet_link_tag "https://fonts.googleapis.com/icon?family=Material+Icons", media: "all" %>
8
+ <%= javascript_include_tag "application" %>
9
+ <%= csrf_meta_tags %>
10
+ </head>
11
+ <body>
12
+
13
+ <!-- now here calling content for will change the things that need to be changed -->
14
+ <%= content_for(:personalization_nav_links) do %>
15
+ <%= render :partial => "shopping/navigation_options.html.erb" %>
16
+ <% end %>
17
+
18
+ <%= render :partial => "layouts/auth/navbar/navbar.html.erb" %>
19
+
20
+ <div class="container">
21
+ <%= yield %>
22
+ </div>
23
+
24
+ <%= render :partial => "layouts/auth/modals.html.erb" %>
25
+ </body>
26
+ </html>
@@ -0,0 +1,8 @@
1
+ <html>
2
+ <head>
3
+
4
+ </head>
5
+ <body>
6
+ <%= yield %>
7
+ </body>
8
+ </html>
@@ -0,0 +1 @@
1
+ <%= yield %>
@@ -0,0 +1 @@
1
+ <%= render :partial => @notification.email_partial %>
@@ -0,0 +1 @@
1
+ notification.text.erb
@@ -0,0 +1,25 @@
1
+ <%= form_for(@test) do |f| %>
2
+ <% if @test.errors.any? %>
3
+ <div id="error_explanation">
4
+ <h2><%= pluralize(@test.errors.count, "error") %> prohibited this test from being saved:</h2>
5
+
6
+ <ul>
7
+ <% @test.errors.full_messages.each do |message| %>
8
+ <li><%= message %></li>
9
+ <% end %>
10
+ </ul>
11
+ </div>
12
+ <% end %>
13
+
14
+ <div class="field">
15
+ <%= f.label :price %><br>
16
+ <%= f.text_field :price %>
17
+ </div>
18
+ <div class="field">
19
+ <%= f.label :name %><br>
20
+ <%= f.text_area :name %>
21
+ </div>
22
+ <div class="actions">
23
+ <%= f.submit %>
24
+ </div>
25
+ <% end %>
@@ -0,0 +1,6 @@
1
+ <h1>Editing Test</h1>
2
+
3
+ <%= render 'form' %>
4
+
5
+ <%= link_to 'Show', @test %> |
6
+ <%= link_to 'Back', tests_path %>
@@ -0,0 +1,33 @@
1
+ <p id="notice"><%= notice %></p>
2
+
3
+ <h1>Listing Tests</h1>
4
+
5
+ <table class="bordered">
6
+ <thead>
7
+ <tr>
8
+ <th>Price</th>
9
+ <th>Name</th>
10
+ <th>Description</th>
11
+ <th colspan="3"></th>
12
+ </tr>
13
+ </thead>
14
+
15
+ <tbody>
16
+ <% @tests.each do |test| %>
17
+ <tr>
18
+ <td>Rs.<%= test.price %></td>
19
+ <td><%= test.name %></td>
20
+ <td><%= test.description %></td>
21
+ <td><%= link_to 'Show', test %></td>
22
+ <td><%= link_to 'Edit', edit_test_path(test) %></td>
23
+ <td><%= link_to 'Add to Cart',shopping_cart_items_path({:cart_item => Shopping::CartItem.new(test.attributes)}), method: :post %></td>
24
+ <td></td>
25
+ <td><%= link_to 'Destroy', test, method: :delete, data: { confirm: 'Are you sure?' } %></td>
26
+ </tr>
27
+ <% end %>
28
+ </tbody>
29
+ </table>
30
+
31
+ <br>
32
+
33
+ <%= link_to 'New Test', new_test_path %>
@@ -0,0 +1,5 @@
1
+ <h1>New Test</h1>
2
+
3
+ <%= render 'form' %>
4
+
5
+ <%= link_to 'Back', tests_path %>
@@ -0,0 +1,14 @@
1
+ <p id="notice"><%= notice %></p>
2
+
3
+ <p>
4
+ <strong>Price:</strong>
5
+ <%= @test.price %>
6
+ </p>
7
+
8
+ <p>
9
+ <strong>Name:</strong>
10
+ <%= @test.name %>
11
+ </p>
12
+
13
+ <%= link_to 'Edit', edit_test_path(@test) %> |
14
+ <%= link_to 'Back', tests_path %>
@@ -0,0 +1,25 @@
1
+ <%= form_for(@topic) do |f| %>
2
+ <% if @topic.errors.any? %>
3
+ <div id="error_explanation">
4
+ <h2><%= pluralize(@topic.errors.count, "error") %> prohibited this topic from being saved:</h2>
5
+
6
+ <ul>
7
+ <% @topic.errors.full_messages.each do |message| %>
8
+ <li><%= message %></li>
9
+ <% end %>
10
+ </ul>
11
+ </div>
12
+ <% end %>
13
+
14
+ <div class="field">
15
+ <%= f.label :name %><br>
16
+ <%= f.text_area :name %>
17
+ </div>
18
+ <div class="field">
19
+ <%= f.label :place %><br>
20
+ <%= f.text_area :place %>
21
+ </div>
22
+ <div class="actions">
23
+ <%= f.submit %>
24
+ </div>
25
+ <% end %>
@@ -0,0 +1,6 @@
1
+ <h1>Editing Topic</h1>
2
+
3
+ <%= render 'form' %>
4
+
5
+ <%= link_to 'Show', @topic %> |
6
+ <%= link_to 'Back', topics_path %>
@@ -0,0 +1,29 @@
1
+ <p id="notice"><%= notice %></p>
2
+
3
+ <h1>Listing Topics</h1>
4
+
5
+ <table>
6
+ <thead>
7
+ <tr>
8
+ <th>Name</th>
9
+ <th>Place</th>
10
+ <th colspan="3"></th>
11
+ </tr>
12
+ </thead>
13
+
14
+ <tbody>
15
+ <% @topics.each do |topic| %>
16
+ <tr>
17
+ <td><%= topic.name %></td>
18
+ <td><%= topic.place %></td>
19
+ <td><%= link_to 'Show', topic %></td>
20
+ <td><%= link_to 'Edit', edit_topic_path(topic) %></td>
21
+ <td><%= link_to 'Destroy', topic, method: :delete, data: { confirm: 'Are you sure?' } %></td>
22
+ </tr>
23
+ <% end %>
24
+ </tbody>
25
+ </table>
26
+
27
+ <br>
28
+
29
+ <%= link_to 'New Topic', new_topic_path %>
@@ -0,0 +1,5 @@
1
+ <h1>New Topic</h1>
2
+
3
+ <%= render 'form' %>
4
+
5
+ <%= link_to 'Back', topics_path %>
@@ -0,0 +1,14 @@
1
+ <p id="notice"><%= notice %></p>
2
+
3
+ <p>
4
+ <strong>Name:</strong>
5
+ <%= @topic.name %>
6
+ </p>
7
+
8
+ <p>
9
+ <strong>Place:</strong>
10
+ <%= @topic.place %>
11
+ </p>
12
+
13
+ <%= link_to 'Edit', edit_topic_path(@topic) %> |
14
+ <%= link_to 'Back', topics_path %>
@@ -0,0 +1,6 @@
1
+ mark_all_input_fields_valid();
2
+ $("#personalization").html("<%= escape_javascript(render partial: 'layouts/auth/navbar/personalization.html.erb') %>");
3
+ $("#personalization_nav_links").html("<%= escape_javascript(render partial: 'shopping/navigation_options.html.erb') %>");
4
+ $("#login_title").html("Sign In Successfull !").show();
5
+ $("#login_content").html("<%= escape_javascript(render partial:'auth/modals/sign_in_success_content.html.erb' ) %>").show();
6
+ $("#login_footer").html("<%= escape_javascript(render partial: 'auth/modals/login_navigation_options.html.erb') %>").hide();
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env ruby
2
+ ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../Gemfile', __FILE__)
3
+ load Gem.bin_path('bundler', 'bundle')
@@ -0,0 +1,4 @@
1
+ #!/usr/bin/env ruby
2
+ APP_PATH = File.expand_path('../../config/application', __FILE__)
3
+ require_relative '../config/boot'
4
+ require 'rails/commands'
@@ -0,0 +1,4 @@
1
+ #!/usr/bin/env ruby
2
+ require_relative '../config/boot'
3
+ require 'rake'
4
+ Rake.application.run