Allow to specify an order schedule for new orders.

This commit is contained in:
wvengen 2014-11-22 00:33:16 +01:00
parent 6e990fed4c
commit 219eb71bc9
16 changed files with 204 additions and 8 deletions

View file

@ -15,6 +15,7 @@ class Admin::ConfigsController < Admin::BaseController
end
def update
parse_recurring_selects! params[:config][:order_schedule]
ActiveRecord::Base.transaction do
# TODO support nested configuration keys
params[:config].each do |key, val|
@ -36,4 +37,16 @@ class Admin::ConfigsController < Admin::BaseController
@tabs.uniq!
end
# turn recurring rules into something palatable
def parse_recurring_selects!(config)
if config
for k in [:pickup, :ends] do
if config[k] and config[k][:recurr]
config[k][:recurr] = ActiveSupport::JSON.decode(config[k][:recurr])
config[k][:recurr] = FoodsoftDateUtil.rule_from(config[k][:recurr]).to_ical if config[k][:recurr]
end
end
end
end
end

View file

@ -62,7 +62,7 @@ class OrdersController < ApplicationController
# Page to create a new order.
def new
@order = Order.new starts: Time.now, ends: 4.days.from_now, supplier_id: params[:supplier_id]
@order = Order.new(supplier_id: params[:supplier_id]).init_dates
end
# Save a new order.