diff --git a/app/assets/stylesheets/application.css.scss b/app/assets/stylesheets/application.css.scss
index 11e2cc1..5e44107 100644
--- a/app/assets/stylesheets/application.css.scss
+++ b/app/assets/stylesheets/application.css.scss
@@ -56,6 +56,10 @@ input {
height: auto !important;
}
+/* boostrap */
+body {
+ padding-top: 80px;
+}
/* footer */
diff --git a/app/controllers/products_controller.rb b/app/controllers/products_controller.rb
index 1cc8cd7..6d71fc3 100644
--- a/app/controllers/products_controller.rb
+++ b/app/controllers/products_controller.rb
@@ -6,16 +6,12 @@ class ProductsController < ApplicationController
def create
@product = Product.new(product_params)
if @product.save
- redirect_to @product
+ redirect_to action: :index
else
- render 'new'
+ render :new
end
end
- def show
- @product = Product.find(params[:id])
- end
-
def index
@products = Product.all
end
@@ -27,7 +23,7 @@ class ProductsController < ApplicationController
def update
@product = Product.find(params[:id])
if @product.update_attributes(product_params)
- redirect_to @product
+ redirect_to action: :index
else
render 'edit'
end
diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb
index 4313912..19f22f9 100644
--- a/app/helpers/application_helper.rb
+++ b/app/helpers/application_helper.rb
@@ -14,10 +14,58 @@ module ApplicationHelper
get_inverted_color(user)+ ";"
end
+ def euro(f)
+ "€#{number_with_precision f, precision: 2}"
+ end
+
#tijdelijk voor layout
def koelkast(status)
@koelkast ||= status
end
+ # Form helpers
+ def form_errors(object)
+ render partial: "form_errors", locals: {object: object}
+ end
+
+ def form_text_field(f, tag)
+ render partial: "form_text_field", locals: {f: f, tag: tag}
+ end
+
+ def form_password_field(f, tag)
+ render partial: "form_password_field", locals: {f: f, tag: tag}
+ end
+
+ def form_text_area(f, tag)
+ render partial: "form_text_area", locals: {f: f, tag: tag}
+ end
+
+ def form_fancy_text_area(f, tag)
+ render partial: "form_fancy_text_area", locals: {f: f, tag: tag}
+ end
+
+ def form_email_field(f, tag)
+ render partial: "form_email_field", locals: {f: f, tag: tag}
+ end
+
+ def form_date_field(f, tag, id, value)
+ render partial: "form_date_field", locals: {f: f, tag: tag, id: id, value: value}
+ end
+
+ def form_number_field(f, tag)
+ render partial: "form_number_field", locals: {f: f, tag: tag}
+ end
+
+ def form_collection_select(f, *args)
+ # This line enable passing optional arguments such as include_blank to the
+ # partial. If nothing is passed, an empty options hash is appended.
+ args << {} if args.length < 5
+
+ render partial: "form_collection_select", locals: {f: f, args: args}
+ end
+
+ def form_check_box(f, tag)
+ render partial: "form_check_box", locals: {f: f, tag: tag}
+ end
end
diff --git a/app/models/product.rb b/app/models/product.rb
index c7c31f7..4463062 100644
--- a/app/models/product.rb
+++ b/app/models/product.rb
@@ -24,4 +24,14 @@ class Product < ActiveRecord::Base
def count(order)
order_products.find_by(order: order).count
end
+
+ def price
+ (read_attribute(:price) || 0) / 100.0
+ end
+
+ def price=(value)
+ if value.is_a? String then value.sub!(',', '.') end
+ write_attribute(:price, (value.to_f * 100).to_int)
+ end
+
end
diff --git a/app/views/application/_form_check_box.html.erb b/app/views/application/_form_check_box.html.erb
new file mode 100644
index 0000000..8d8e429
--- /dev/null
+++ b/app/views/application/_form_check_box.html.erb
@@ -0,0 +1,6 @@
+
+
+ <%= f.check_box tag %>
+
diff --git a/app/views/application/_form_collection_select.html.erb b/app/views/application/_form_collection_select.html.erb
new file mode 100644
index 0000000..99bd7e5
--- /dev/null
+++ b/app/views/application/_form_collection_select.html.erb
@@ -0,0 +1,5 @@
+<%# To pass options to the collection_select, add {options} as the last argument %>
+