Merge remote-tracking branch 'bennibu/rails3' into rails3
Conflicts: app/controllers/articles_controller.rb app/views/articles/_form.html.haml app/views/articles/sync.html.haml app/views/finance/balancing/_edit_note.html.haml app/views/finance/group_order_articles/_form.html.haml app/views/finance/order_articles/_edit.html.haml app/views/finance/order_articles/_new.html.haml app/views/group_orders/show.html.haml app/views/invites/_modal_form.html.haml
This commit is contained in:
commit
f6ba21832d
15 changed files with 71 additions and 33 deletions
|
|
@ -74,12 +74,12 @@ class ArticlesController < ApplicationController
|
|||
end
|
||||
|
||||
# Updates all article of specific supplier
|
||||
# deletes all articles from params[outlisted_articles]
|
||||
def update_all
|
||||
invalid_articles = false
|
||||
|
||||
begin
|
||||
Article.transaction do
|
||||
unless params[:articles].blank?
|
||||
invalid_articles = false
|
||||
# Update other article attributes...
|
||||
@articles = Article.find(params[:articles].keys)
|
||||
@articles.each do |article|
|
||||
|
|
@ -88,25 +88,18 @@ class ArticlesController < ApplicationController
|
|||
end
|
||||
end
|
||||
|
||||
raise I18n.t('articles.update_all.error_invalid') if invalid_articles
|
||||
end
|
||||
# delete articles
|
||||
if params[:outlisted_articles]
|
||||
params[:outlisted_articles].keys.each {|id| Article.find(id).mark_as_deleted }
|
||||
raise ActiveRecord::Rollback if invalid_articles # Rollback all changes
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
if invalid_articles
|
||||
# An error has occurred, transaction has been rolled back.
|
||||
flash.now.alert = I18n.t('articles.update_all.error_invalid')
|
||||
render :edit_all
|
||||
else
|
||||
# Successfully done.
|
||||
redirect_to supplier_articles_path(@supplier), notice: I18n.t('articles.update_all.notice')
|
||||
|
||||
rescue => e
|
||||
# An error has occurred, transaction has been rolled back.
|
||||
if params[:sync]
|
||||
flash[:error] = I18n.t('articles.update_all.error_update', :article => current_article.name, :msg => e.message)
|
||||
redirect_to(supplier_articles_path(@supplier))
|
||||
else
|
||||
flash.now.alert = e.message
|
||||
render :edit_all
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
|
|
@ -232,4 +225,33 @@ class ArticlesController < ApplicationController
|
|||
redirect_to supplier_articles_path(@supplier), :notice => I18n.t('articles.sync.notice')
|
||||
end
|
||||
end
|
||||
|
||||
# Updates, deletes articles when sync form is submitted
|
||||
def update_synchronized
|
||||
begin
|
||||
Article.transaction do
|
||||
# delete articles
|
||||
if params[:outlisted_articles]
|
||||
Article.find(params[:outlisted_articles].keys).each(&:mark_as_deleted)
|
||||
end
|
||||
|
||||
# Update articles
|
||||
params[:articles].each do |id, attrs|
|
||||
Article.find(id).update_attributes! attrs
|
||||
end
|
||||
end
|
||||
|
||||
# Successfully done.
|
||||
redirect_to supplier_articles_path(@supplier), notice: I18n.t('articles.update_synchronized.notice')
|
||||
|
||||
rescue ActiveRecord::RecordInvalid => invalid
|
||||
# An error has occurred, transaction has been rolled back.
|
||||
redirect_to supplier_articles_path(@supplier),
|
||||
alert: I18n.t('articles.update_synchronized.error_update', :article => invalid.record.name, :msg => invalid.record.errors.full_messages)
|
||||
|
||||
rescue => error
|
||||
redirect_to supplier_articles_path(@supplier),
|
||||
alert: I18n.t('errors.general_msg', :msg => error.message)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
|||
|
|
@ -158,7 +158,7 @@ class Order < ActiveRecord::Base
|
|||
goa.save_results!
|
||||
# Delete no longer required order-history (group_order_article_quantities) and
|
||||
# TODO: Do we need articles, which aren't ordered? (units_to_order == 0 ?)
|
||||
goa.group_order_article_quantities.clear
|
||||
#goa.group_order_article_quantities.clear
|
||||
end
|
||||
end
|
||||
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
= f.hidden_field :shared_updated_on
|
||||
= f.hidden_field :supplier_id
|
||||
.modal-header
|
||||
= button_tag t('ui.marks.close').html_safe, class: 'close', data: {dismiss: 'modal'}
|
||||
= link_to t('ui.marks.close').html_safe, '#', class: 'close', data: {dismiss: 'modal'}
|
||||
%h3= t '.title'
|
||||
.modal-body
|
||||
= f.input :availability
|
||||
|
|
@ -19,6 +19,6 @@
|
|||
= f.input :tax
|
||||
= f.input :deposit
|
||||
.modal-footer
|
||||
= button_tag t('ui.close'), class: 'btn', data: {dismiss: 'modal'}
|
||||
= link_to t('ui.close'), '#', class: 'btn', data: {dismiss: 'modal'}
|
||||
= f.submit class: 'btn btn-primary'
|
||||
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
- title 'Artikel mit externer Datenbank synchronisieren'
|
||||
|
||||
= form_tag update_all_supplier_articles_path(@supplier, :sync => "1") do
|
||||
= form_tag update_synchronized_supplier_articles_path(@supplier) do
|
||||
%h2= t '.outlist.title'
|
||||
%p
|
||||
- unless @outlisted_articles.empty?
|
||||
|
|
@ -10,6 +10,9 @@
|
|||
%li
|
||||
= hidden_field_tag "outlisted_articles[#{article.id}]", '1'
|
||||
= article.name
|
||||
- if article.in_open_order
|
||||
.alert
|
||||
Achtung, #{article.name} wird gerade in einer laufenden Bestellung verwendet. Bitte erst Bestellung anpassen.
|
||||
- else
|
||||
%i= t '.outlist.body_skip'
|
||||
%hr/
|
||||
|
|
|
|||
|
|
@ -1,9 +1,10 @@
|
|||
= simple_form_for @order, url: update_note_finance_order_path(@order), remote: true, method: :put do |f|
|
||||
.modal-header
|
||||
= button_tag t('ui.marks.close').html_safe, class: 'close', data: {dismiss: 'modal'}
|
||||
= link_to t('ui.marks.close').html_safe, '#', class: 'close', data: {dismiss: 'modal'}
|
||||
%h3 Notiz bearbeiten
|
||||
.modal-body
|
||||
= f.input :note, input_html: {class: 'input-xlarge'}
|
||||
.modal-footer
|
||||
= button_tag t('ui.close'), class: 'btn', data: {dismiss: 'modal'}
|
||||
= f.submit , class: 'btn btn-primary'
|
||||
= link_to t('ui.close'), '#', class: 'btn', data: {dismiss: 'modal'}
|
||||
= f.submit t('ui.save'), class: 'btn btn-primary'
|
||||
|
||||
|
|
|
|||
|
|
@ -1,11 +1,11 @@
|
|||
= simple_form_for [:finance, @group_order_article], remote: true do |form|
|
||||
= form.hidden_field :order_article_id
|
||||
.modal-header
|
||||
= button_tag "x", class: 'close', data: {dismiss: 'modal'}
|
||||
= link_to t('ui.marks.close').html_safe, '#', class: 'close', data: {dismiss: 'modal'}
|
||||
%h3= t('.amount_change_for', article: @order_article.article.name)
|
||||
.modal-body
|
||||
= form.input :ordergroup_id, as: :select, collection: Ordergroup.all.map { |g| [g.name, g.id] }
|
||||
= form.input :result, hint: "Einheit: #{@order_article.article.unit}"
|
||||
.modal-footer
|
||||
= button_tag t('ui.close'), class: 'btn', data: {dismiss: 'modal'}
|
||||
= link_to t('ui.close'), '#', class: 'btn', data: {dismiss: 'modal'}
|
||||
= form.submit t('ui.save'), class: 'btn btn-primary'
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
= simple_form_for [:finance, @order, @order_article], remote: true do |form|
|
||||
.modal-header
|
||||
= button_tag t('ui.marks.close').html_safe, class: 'close', data: {dismiss: 'modal'}
|
||||
= link_to t('ui.marks.close').html_safe, '#', class: 'close', data: {dismiss: 'modal'}
|
||||
%h3= t '.title'
|
||||
.modal-body
|
||||
= form.input :units_to_order
|
||||
|
|
@ -20,5 +20,5 @@
|
|||
= f.input :deposit
|
||||
= form.input :update_current_price, as: :boolean
|
||||
.modal-footer
|
||||
= button_tag t('ui.close'), class: 'btn', data: {dismiss: 'modal'}
|
||||
= link_to t('ui.close'), '#', class: 'btn', data: {dismiss: 'modal'}
|
||||
= form.submit class: 'btn btn-primary'
|
||||
|
|
|
|||
|
|
@ -1,9 +1,9 @@
|
|||
= simple_form_for [:finance, @order, @order_article], remote: true do |form|
|
||||
.modal-header
|
||||
= button_tag t('ui.marks.close').html_safe, class: 'close', data: {dismiss: 'modal'}
|
||||
= link_to t('ui.marks.close').html_safe, '#', class: 'close', data: {dismiss: 'modal'}
|
||||
%h3= t '.title'
|
||||
.modal-body
|
||||
= form.input :article_id, as: :select, collection: new_order_articles_collection
|
||||
.modal-footer
|
||||
= button_tag t('ui.close'), class: 'btn', data: {dismiss: 'modal'}
|
||||
= link_to t('ui.close'), '#', class: 'btn', data: {dismiss: 'modal'}
|
||||
= form.submit class: 'btn btn-primary'
|
||||
|
|
|
|||
|
|
@ -1,2 +1,3 @@
|
|||
$('#modalContainer').modal('hide');
|
||||
$('#result_table').prepend('#{j(render('finance/balancing/order_article_result', order_article: @order_article))}');
|
||||
$('#summaryChangedWarning').show();
|
||||
|
|
@ -1,2 +1,4 @@
|
|||
$('#modalContainer').modal('hide');
|
||||
$('#order_article_#{@order_article.id}').html('#{j(render('finance/balancing/order_article', order_article: @order_article))}');
|
||||
$('#group_order_articles_#{@order_article.id}').html('#{j(render('finance/balancing/group_order_articles', order_article: @order_article))}');
|
||||
$('#summaryChangedWarning').show();
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
= simple_form_for @invite, remote: true do |form|
|
||||
.modal-header
|
||||
= button_tag t('ui.marks.close').html_safe, class: 'close', data: {dismiss: 'modal'}
|
||||
= link_to t('ui.marks.close').html_safe, '#', class: 'close', data: {dismiss: 'modal'}
|
||||
%h3= t '.title'
|
||||
.modal-body
|
||||
= t('.body', group: @invite.group.name).html_safe
|
||||
|
|
@ -8,5 +8,5 @@
|
|||
= form.hidden_field :group_id
|
||||
= form.input :email
|
||||
.modal-footer
|
||||
= button_tag t('ui.close'), class: 'btn', data: {dismiss: 'modal'}
|
||||
= link_to t('ui.close'), '#', class: 'btn', data: {dismiss: 'modal'}
|
||||
= form.submit class: 'btn btn-primary'
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue