user_stamp 3.0.2 → 4.0.0

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.
Files changed (128) hide show
  1. checksums.yaml +4 -4
  2. data/MIT-LICENSE +2 -2
  3. data/README.rdoc +3 -3
  4. data/Rakefile +6 -9
  5. data/config/routes.rb +22 -21
  6. data/lib/generators/user_stamp/USAGE +5 -6
  7. data/lib/generators/user_stamp/templates/user_stamp.template +16 -21
  8. data/lib/generators/user_stamp/user_stamp_generator.rb +23 -23
  9. data/lib/user_stamp.rb +23 -22
  10. data/lib/user_stamp/app_controller.rb +22 -24
  11. data/lib/user_stamp/config.rb +29 -33
  12. data/lib/user_stamp/engine.rb +27 -28
  13. data/lib/user_stamp/user.rb +23 -24
  14. data/lib/user_stamp/user_stamp.rb +33 -35
  15. data/lib/user_stamp/version.rb +23 -22
  16. data/test/dummy/README.rdoc +15 -248
  17. data/test/dummy/Rakefile +1 -2
  18. data/test/dummy/app/assets/javascripts/application.js +4 -6
  19. data/test/dummy/app/assets/stylesheets/application.css +6 -4
  20. data/test/dummy/app/assets/stylesheets/scaffold.css +56 -0
  21. data/test/dummy/app/controllers/application_controller.rb +5 -30
  22. data/test/dummy/app/controllers/materials_controller.rb +27 -51
  23. data/test/dummy/app/controllers/products_controller.rb +27 -51
  24. data/test/dummy/app/helpers/application_helper.rb +0 -26
  25. data/test/dummy/app/helpers/materials_helper.rb +0 -26
  26. data/test/dummy/app/helpers/products_helper.rb +0 -26
  27. data/test/dummy/app/models/material.rb +2 -33
  28. data/test/dummy/app/models/product.rb +3 -30
  29. data/test/dummy/app/models/user.rb +0 -30
  30. data/test/dummy/app/views/layouts/application.html.erb +2 -2
  31. data/test/dummy/app/views/materials/_form.html.erb +9 -9
  32. data/test/dummy/app/views/materials/edit.html.erb +2 -2
  33. data/test/dummy/app/views/materials/index.html.erb +27 -23
  34. data/test/dummy/app/views/materials/new.html.erb +1 -2
  35. data/test/dummy/app/views/materials/show.html.erb +4 -8
  36. data/test/dummy/app/views/products/_form.html.erb +6 -6
  37. data/test/dummy/app/views/products/edit.html.erb +1 -1
  38. data/test/dummy/app/views/products/index.html.erb +26 -22
  39. data/test/dummy/app/views/products/new.html.erb +1 -1
  40. data/test/dummy/app/views/products/show.html.erb +4 -5
  41. data/test/dummy/bin/bundle +3 -0
  42. data/test/dummy/bin/rails +4 -0
  43. data/test/dummy/bin/rake +4 -0
  44. data/test/dummy/bin/setup +29 -0
  45. data/test/dummy/config.ru +2 -2
  46. data/test/dummy/config/application.rb +2 -35
  47. data/test/dummy/config/boot.rb +4 -9
  48. data/test/dummy/config/database.yml +8 -8
  49. data/test/dummy/config/environment.rb +3 -3
  50. data/test/dummy/config/environments/development.rb +22 -18
  51. data/test/dummy/config/environments/production.rb +46 -34
  52. data/test/dummy/config/environments/test.rb +19 -14
  53. data/test/dummy/config/initializers/assets.rb +11 -0
  54. data/test/dummy/config/initializers/cookies_serializer.rb +3 -0
  55. data/test/dummy/config/initializers/devise.rb +5 -5
  56. data/test/dummy/config/initializers/filter_parameter_logging.rb +4 -0
  57. data/test/dummy/config/initializers/inflections.rb +6 -5
  58. data/test/dummy/config/initializers/mime_types.rb +0 -1
  59. data/test/dummy/config/initializers/session_store.rb +1 -6
  60. data/test/dummy/config/initializers/user_stamp.rb +16 -21
  61. data/test/dummy/config/initializers/wrap_parameters.rb +6 -6
  62. data/test/dummy/config/locales/en.yml +20 -2
  63. data/test/dummy/config/routes.rb +56 -4
  64. data/test/dummy/config/secrets.yml +22 -0
  65. data/test/dummy/db/development.sqlite3 +0 -0
  66. data/test/dummy/db/migrate/{20150418012302_devise_create_users.rb → 20150427152452_devise_create_users.rb} +1 -1
  67. data/test/dummy/db/migrate/{20150420023321_create_materials.rb → 20150427153058_create_materials.rb} +2 -2
  68. data/test/dummy/db/migrate/{20150418013334_create_products.rb → 20150427153126_create_products.rb} +5 -5
  69. data/test/dummy/db/schema.rb +19 -19
  70. data/test/dummy/db/test.sqlite3 +0 -0
  71. data/test/dummy/public/404.html +54 -13
  72. data/test/dummy/public/422.html +54 -13
  73. data/test/dummy/public/500.html +53 -12
  74. data/test/dummy/test/{functional → controllers}/materials_controller_test.rb +6 -36
  75. data/test/dummy/test/{functional → controllers}/products_controller_test.rb +9 -39
  76. data/test/dummy/test/models/material_test.rb +7 -0
  77. data/test/dummy/test/models/product_test.rb +7 -0
  78. data/test/dummy/test/models/user_test.rb +7 -0
  79. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/-uBri7P4oa8-cPDbuxBzrBh6f_6YgmRETeF1cPQ98BI.cache +2 -0
  80. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/0HaE6Po_aJLoGCREH2pm0GVz0rQO2AnHYN5WxfxRAdk.cache +2 -0
  81. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/4WkO5ZKNyqFfwe0aMDO40zL7WuG01_LUMIo_Z1VIwIM.cache +2 -0
  82. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/6sjvyZUWlu55-3XP-5yZfxjfXvbrvxsg-E3Q7B_t8pk.cache +1 -0
  83. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/8Z_hEjtyPSQN4opQbT6RkcCNBCF-CFQybzoSs5Aq6KI.cache +2 -0
  84. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/9-HUlJkF3jRyupEtKfWn1dlmpPkguFR6iptppjOucgg.cache +1 -0
  85. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/A7WZdZGirgPer7eGsq2mJfHio6N9R9HJJxM4hkuItJo.cache +1 -0
  86. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/DzCB5KQSlVUBNf_tlBgnzTbS3b_pMkzkuqihSfNHe4s.cache +2 -0
  87. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/GIw-liLL0pp9xX_VtZkZToKgqPr4koaqbpG9bROGWQQ.cache +0 -0
  88. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/IgADW9PKfRr6TSWEm1ipKSMaJ4DwdbJMYiKMXWP2qvw.cache +0 -0
  89. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/MEs_AIdrjZ9MYzLES9uOroxBGNjY9Stpe19ohy0z1lA.cache +0 -0
  90. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/SDZR43ZDx01ZzCRNeIhjSx_9kJO78HCK8YMJAKnWIaI.cache +0 -0
  91. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/U2SInYmDs_pipNOzdogCHPXzyUyc1h5jAls6xbWSGs4.cache +1 -0
  92. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/UL1xczCpSxV6CONGlfaMEdE5KwKA9o56RLp2QZxGstA.cache +2 -0
  93. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/UReuCl2zv3Z3nGvte7lUGu7979JxkuCRbDNv6-HtTZU.cache +1 -0
  94. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/WT1n2kS2FLNKA6DHRX7THVlGIGzgTC8je4MMzBQtSmg.cache +1 -0
  95. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/XgTwbFt01e5bfNNba5Gr83GNRea9MoFlqP2rJGW_rjk.cache +0 -0
  96. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/ZAc9zFuIs2cKSfQZVtEkV3u4_RLFxLSP55C0RqqhZ1w.cache +2 -0
  97. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/Zea97tHycA5aXYbZ9DHtFHTu4bhAZcIhb0RlckVvzXI.cache +1 -0
  98. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/ZwP9zS5ft5ww816BPhmhQPqMPKbbgPdjBrz5VnSZ5oo.cache +2 -0
  99. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/hwZcJkZ_YQ4hjBA1FzHIvGWudWHtQDZW7h8zUJslBQM.cache +1 -0
  100. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/iqtLgHvtAikgr0-aW1Vqy4KeUsVmzgOz9YVG2_2RVeY.cache +1 -0
  101. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/jpKzE4ZVMG4ynSLgDB76TOPEZbHNqYF8BQRy94ioeQE.cache +2 -0
  102. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/kM0liVKuJ_BZI9HenUEa6OO9pOnT4KuC-zzXot34reU.cache +2 -0
  103. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/nGfH8igMEHxuQWcDKD23EjWqmSvgxI2sVXhNOC5wE8I.cache +1 -0
  104. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/ni5fBgQoTXajLTgoWS8nd8LoiucG5krt3YIpbrx1mIY.cache +2 -0
  105. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/oVvP3smTURXlapOzr_iUN4Ew_m3EEy3CQ4M0cOkTsm0.cache +1 -0
  106. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/oX6WZjQtAOkKXBohDgfcjs0cda8wFDGnkwJDGkJoytI.cache +0 -0
  107. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/oeTdUtI5qsh1Nn2Hy6_wmjtPV25O-RCQPcNjCwoSCKA.cache +0 -0
  108. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/ov953wmqzp_9OaWCaoMLlOSWzHeF9kLApt4aCcW-Bgk.cache +1 -0
  109. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/sg6mpEMI9L65gEc7QFaXG534feyjIGE29SE7B_RTQNY.cache +1 -0
  110. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/uJ8m6b9jypIn4pSuuaKkFBW9E2Ifcx2ulcERIa1q1dA.cache +1 -0
  111. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/uYPgal6XAaVE9q7oz6jQS5nmQKM3IwZ8tnsE-__Oweo.cache +1 -0
  112. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/vXJI-yUwt8d552Mj63nmnTx46YY7-GUrYuFzLUT9hMI.cache +0 -0
  113. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/xs2cSdXmo8vitmiaAo7fhDSGbrVPUKN17Ue3aTCUseE.cache +1 -0
  114. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/yCPG4xJ4TDzj7Mbcm2B0wDN_Jqlu2dKg8bFLKqW-pBI.cache +0 -0
  115. data/test/fixtures/materials.yml +1 -1
  116. data/test/fixtures/products.yml +1 -1
  117. data/test/fixtures/users.yml +5 -26
  118. data/test/test_helper.rb +7 -33
  119. data/test/user_stamp_test.rb +0 -26
  120. metadata +124 -40
  121. data/test/dummy/config/initializers/secret_token.rb +0 -7
  122. data/test/dummy/log/test.log +0 -414
  123. data/test/dummy/script/rails +0 -6
  124. data/test/dummy/test/unit/helpers/materials_helper_test.rb +0 -30
  125. data/test/dummy/test/unit/helpers/products_helper_test.rb +0 -30
  126. data/test/dummy/test/unit/material_test.rb +0 -33
  127. data/test/dummy/test/unit/product_test.rb +0 -33
  128. data/test/dummy/test/unit/user_test.rb +0 -33
@@ -1,7 +1,6 @@
1
- #!/usr/bin/env rake
2
1
  # Add your own tasks in files placed in lib/tasks ending in .rake,
3
2
  # for example lib/tasks/capistrano.rake, and they will automatically be available to Rake.
4
3
 
5
4
  require File.expand_path('../config/application', __FILE__)
6
5
 
7
- Dummy::Application.load_tasks
6
+ Rails.application.load_tasks
@@ -2,14 +2,12 @@
2
2
  // listed below.
3
3
  //
4
4
  // Any JavaScript/Coffee file within this directory, lib/assets/javascripts, vendor/assets/javascripts,
5
- // or vendor/assets/javascripts of plugins, if any, can be referenced here using a relative path.
5
+ // or any plugin's vendor/assets/javascripts directory can be referenced here using a relative path.
6
6
  //
7
7
  // It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the
8
- // the compiled file.
8
+ // compiled file.
9
9
  //
10
- // WARNING: THE FIRST BLANK LINE MARKS THE END OF WHAT'S TO BE PROCESSED, ANY BLANK LINE SHOULD
11
- // GO AFTER THE REQUIRES BELOW.
10
+ // Read Sprockets README (https://github.com/rails/sprockets#sprockets-directives) for details
11
+ // about supported directives.
12
12
  //
13
- //= require jquery
14
- //= require jquery_ujs
15
13
  //= require_tree .
@@ -3,11 +3,13 @@
3
3
  * listed below.
4
4
  *
5
5
  * Any CSS and SCSS file within this directory, lib/assets/stylesheets, vendor/assets/stylesheets,
6
- * or vendor/assets/stylesheets of plugins, if any, can be referenced here using a relative path.
6
+ * or any plugin's vendor/assets/stylesheets directory can be referenced here using a relative path.
7
7
  *
8
- * You're free to add application-wide styles to this file and they'll appear at the top of the
9
- * compiled file, but it's generally better to create a new file per style scope.
8
+ * You're free to add application-wide styles to this file and they'll appear at the bottom of the
9
+ * compiled file so the styles you add here take precedence over styles defined in any styles
10
+ * defined in the other CSS/SCSS files in this directory. It is generally better to create a new
11
+ * file per style scope.
10
12
  *
11
- *= require_self
12
13
  *= require_tree .
14
+ *= require_self
13
15
  */
@@ -0,0 +1,56 @@
1
+ body { background-color: #fff; color: #333; }
2
+
3
+ body, p, ol, ul, td {
4
+ font-family: verdana, arial, helvetica, sans-serif;
5
+ font-size: 13px;
6
+ line-height: 18px;
7
+ }
8
+
9
+ pre {
10
+ background-color: #eee;
11
+ padding: 10px;
12
+ font-size: 11px;
13
+ }
14
+
15
+ a { color: #000; }
16
+ a:visited { color: #666; }
17
+ a:hover { color: #fff; background-color:#000; }
18
+
19
+ div.field, div.actions {
20
+ margin-bottom: 10px;
21
+ }
22
+
23
+ #notice {
24
+ color: green;
25
+ }
26
+
27
+ .field_with_errors {
28
+ padding: 2px;
29
+ background-color: red;
30
+ display: table;
31
+ }
32
+
33
+ #error_explanation {
34
+ width: 450px;
35
+ border: 2px solid red;
36
+ padding: 7px;
37
+ padding-bottom: 0;
38
+ margin-bottom: 20px;
39
+ background-color: #f0f0f0;
40
+ }
41
+
42
+ #error_explanation h2 {
43
+ text-align: left;
44
+ font-weight: bold;
45
+ padding: 5px 5px 5px 15px;
46
+ font-size: 12px;
47
+ margin: -7px;
48
+ margin-bottom: 0px;
49
+ background-color: #c00;
50
+ color: #fff;
51
+ }
52
+
53
+ #error_explanation ul li {
54
+ font-size: 12px;
55
+ list-style: square;
56
+ }
@@ -1,33 +1,8 @@
1
- # This file is part of the UserStamp library that provides tools to
2
- # track who created, updated, or destroyed a record in the database.
3
- #
4
- # https://github.com/mjpete3/user_stamp
5
- #
6
- # Copyright (C) 2015 PD Technology Solutions, LLC
7
- #
8
- # Permission is hereby granted, free of charge, to any person obtaining
9
- # a copy of this software and associated documentation files (the
10
- # "Software"), to deal in the Software without restriction, including
11
- # without limitation the rights to use, copy, modify, merge, publish,
12
- # distribute, sublicense, and/or sell copies of the Software, and to
13
- # permit persons to whom the Software is furnished to do so, subject to
14
- # the following conditions:
15
- #
16
- # The above copyright notice and this permission notice shall be
17
- # included in all copies or substantial portions of the Software.
18
- #
19
- # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
20
- # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
21
- # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
22
- # NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
23
- # LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
24
- # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
25
- # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
26
-
27
1
  class ApplicationController < ActionController::Base
28
- protect_from_forgery
29
-
30
- # automatically set the current user fields for each call.
31
- before_filter :set_user_stamp
2
+ # Prevent CSRF attacks by raising an exception.
3
+ # For APIs, you may want to use :null_session instead.
4
+ protect_from_forgery with: :exception
32
5
 
6
+ # user_stamp tie in to application
7
+ before_filter :set_user_stamp
33
8
  end
@@ -1,83 +1,59 @@
1
- # This file is part of the UserStamp library that provides tools to
2
- # track who created, updated, or destroyed a record in the database.
3
- #
4
- # https://github.com/mjpete3/user_stamp
5
- #
6
- # Copyright (C) 2015 PD Technology Solutions, LLC
7
- #
8
- # Permission is hereby granted, free of charge, to any person obtaining
9
- # a copy of this software and associated documentation files (the
10
- # "Software"), to deal in the Software without restriction, including
11
- # without limitation the rights to use, copy, modify, merge, publish,
12
- # distribute, sublicense, and/or sell copies of the Software, and to
13
- # permit persons to whom the Software is furnished to do so, subject to
14
- # the following conditions:
15
- #
16
- # The above copyright notice and this permission notice shall be
17
- # included in all copies or substantial portions of the Software.
18
- #
19
- # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
20
- # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
21
- # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
22
- # NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
23
- # LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
24
- # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
25
- # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
26
-
27
1
  class MaterialsController < ApplicationController
28
- before_filter :authenticate_user!
29
- before_filter :set_material, only: [:show, :edit, :update, :destroy]
2
+ before_action :authenticate_user!
3
+ before_action :set_material, only: [:show, :edit, :update, :destroy]
30
4
 
5
+ # GET /materials
31
6
  def index
32
7
  @materials = Material.all
33
-
34
- respond_to do |format|
35
- format.html
36
- end
37
8
  end
38
9
 
10
+ # GET /materials/1
39
11
  def show
40
- respond_to do |format|
41
- format.html
42
- end
43
12
  end
44
13
 
14
+ # GET /materials/new
45
15
  def new
46
16
  @material = Material.new
47
- respond_to do |format|
48
- format.html
49
- end
50
17
  end
51
18
 
19
+ # GET /materials/1/edit
52
20
  def edit
53
21
  end
54
22
 
23
+ # POST /materials
55
24
  def create
56
- @material = Material.new(params[:material])
57
- @material.save
25
+ @material = Material.new(material_params)
58
26
 
59
- respond_to do |format|
60
- format.html { redirect_to material_path(@material) }
61
- end
27
+ if @material.save
28
+ redirect_to @material, notice: 'Material was successfully created.'
29
+ else
30
+ render :new
31
+ end
62
32
  end
63
33
 
34
+ # PATCH/PUT /materials/1
64
35
  def update
65
- @material.update_attributes(params[:material])
66
- respond_to do |format|
67
- format.html { redirect_to material_path(@material) }
68
- end
36
+ if @material.update(material_params)
37
+ redirect_to @material, notice: 'Material was successfully updated.'
38
+ else
39
+ render :edit
40
+ end
69
41
  end
70
42
 
43
+ # DELETE /materials/1
71
44
  def destroy
72
45
  @material.destroy
73
-
74
- respond_to do |format|
75
- format.html { redirect_to materials_path }
76
- end
46
+ redirect_to materials_url, notice: 'Material was successfully destroyed.'
77
47
  end
78
48
 
79
49
  private
50
+ # Use callbacks to share common setup or constraints between actions.
80
51
  def set_material
81
52
  @material = Material.find(params[:id])
82
53
  end
54
+
55
+ # Only allow a trusted parameter "white list" through.
56
+ def material_params
57
+ params.require(:material).permit(:name, :created_user, :updated_user, :destroy_user)
58
+ end
83
59
  end
@@ -1,83 +1,59 @@
1
- # This file is part of the UserStamp library that provides tools to
2
- # track who created, updated, or destroyed a record in the database.
3
- #
4
- # https://github.com/mjpete3/user_stamp
5
- #
6
- # Copyright (C) 2015 PD Technology Solutions, LLC
7
- #
8
- # Permission is hereby granted, free of charge, to any person obtaining
9
- # a copy of this software and associated documentation files (the
10
- # "Software"), to deal in the Software without restriction, including
11
- # without limitation the rights to use, copy, modify, merge, publish,
12
- # distribute, sublicense, and/or sell copies of the Software, and to
13
- # permit persons to whom the Software is furnished to do so, subject to
14
- # the following conditions:
15
- #
16
- # The above copyright notice and this permission notice shall be
17
- # included in all copies or substantial portions of the Software.
18
- #
19
- # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
20
- # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
21
- # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
22
- # NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
23
- # LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
24
- # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
25
- # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
26
-
27
1
  class ProductsController < ApplicationController
28
- before_filter :authenticate_user!
29
- before_filter :set_product, only: [:show, :edit, :update, :destroy]
2
+ before_action :authenticate_user!
3
+ before_action :set_product, only: [:show, :edit, :update, :destroy]
30
4
 
5
+ # GET /products
31
6
  def index
32
7
  @products = Product.all
33
-
34
- respond_to do |format|
35
- format.html
36
- end
37
8
  end
38
9
 
10
+ # GET /products/1
39
11
  def show
40
- respond_to do |format|
41
- format.html
42
- end
43
12
  end
44
13
 
14
+ # GET /products/new
45
15
  def new
46
16
  @product = Product.new
47
- respond_to do |format|
48
- format.html
49
- end
50
17
  end
51
18
 
19
+ # GET /products/1/edit
52
20
  def edit
53
21
  end
54
22
 
23
+ # POST /products
55
24
  def create
56
- @product = Product.new(params[:product])
57
- @product.save
25
+ @product = Product.new(product_params)
58
26
 
59
- respond_to do |format|
60
- format.html { redirect_to product_path(@product) }
61
- end
27
+ if @product.save
28
+ redirect_to @product, notice: 'Product was successfully created.'
29
+ else
30
+ render :new
31
+ end
62
32
  end
63
33
 
34
+ # PATCH/PUT /products/1
64
35
  def update
65
- @product.update_attributes(params[:product])
66
- respond_to do |format|
67
- format.html { redirect_to product_path(@product) }
68
- end
36
+ if @product.update(product_params)
37
+ redirect_to @product, notice: 'Product was successfully updated.'
38
+ else
39
+ render :edit
40
+ end
69
41
  end
70
42
 
43
+ # DELETE /products/1
71
44
  def destroy
72
45
  @product.destroy
73
-
74
- respond_to do |format|
75
- format.html { redirect_to products_path }
76
- end
46
+ redirect_to products_url, notice: 'Product was successfully destroyed.'
77
47
  end
78
48
 
79
49
  private
50
+ # Use callbacks to share common setup or constraints between actions.
80
51
  def set_product
81
52
  @product = Product.find(params[:id])
82
53
  end
54
+
55
+ # Only allow a trusted parameter "white list" through.
56
+ def product_params
57
+ params.require(:product).permit(:name, :created_user, :updated_user, :destroy_user)
58
+ end
83
59
  end
@@ -1,28 +1,2 @@
1
- # This file is part of the UserStamp library that provides tools to
2
- # track who created, updated, or destroyed a record in the database.
3
- #
4
- # https://github.com/mjpete3/user_stamp
5
- #
6
- # Copyright (C) 2015 PD Technology Solutions, LLC
7
- #
8
- # Permission is hereby granted, free of charge, to any person obtaining
9
- # a copy of this software and associated documentation files (the
10
- # "Software"), to deal in the Software without restriction, including
11
- # without limitation the rights to use, copy, modify, merge, publish,
12
- # distribute, sublicense, and/or sell copies of the Software, and to
13
- # permit persons to whom the Software is furnished to do so, subject to
14
- # the following conditions:
15
- #
16
- # The above copyright notice and this permission notice shall be
17
- # included in all copies or substantial portions of the Software.
18
- #
19
- # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
20
- # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
21
- # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
22
- # NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
23
- # LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
24
- # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
25
- # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
26
-
27
1
  module ApplicationHelper
28
2
  end
@@ -1,28 +1,2 @@
1
- # This file is part of the UserStamp library that provides tools to
2
- # track who created, updated, or destroyed a record in the database.
3
- #
4
- # https://github.com/mjpete3/user_stamp
5
- #
6
- # Copyright (C) 2015 PD Technology Solutions, LLC
7
- #
8
- # Permission is hereby granted, free of charge, to any person obtaining
9
- # a copy of this software and associated documentation files (the
10
- # "Software"), to deal in the Software without restriction, including
11
- # without limitation the rights to use, copy, modify, merge, publish,
12
- # distribute, sublicense, and/or sell copies of the Software, and to
13
- # permit persons to whom the Software is furnished to do so, subject to
14
- # the following conditions:
15
- #
16
- # The above copyright notice and this permission notice shall be
17
- # included in all copies or substantial portions of the Software.
18
- #
19
- # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
20
- # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
21
- # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
22
- # NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
23
- # LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
24
- # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
25
- # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
26
-
27
1
  module MaterialsHelper
28
2
  end
@@ -1,28 +1,2 @@
1
- # This file is part of the UserStamp library that provides tools to
2
- # track who created, updated, or destroyed a record in the database.
3
- #
4
- # https://github.com/mjpete3/user_stamp
5
- #
6
- # Copyright (C) 2015 PD Technology Solutions, LLC
7
- #
8
- # Permission is hereby granted, free of charge, to any person obtaining
9
- # a copy of this software and associated documentation files (the
10
- # "Software"), to deal in the Software without restriction, including
11
- # without limitation the rights to use, copy, modify, merge, publish,
12
- # distribute, sublicense, and/or sell copies of the Software, and to
13
- # permit persons to whom the Software is furnished to do so, subject to
14
- # the following conditions:
15
- #
16
- # The above copyright notice and this permission notice shall be
17
- # included in all copies or substantial portions of the Software.
18
- #
19
- # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
20
- # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
21
- # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
22
- # NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
23
- # LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
24
- # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
25
- # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
26
-
27
1
  module ProductsHelper
28
2
  end