Merge remote-tracking branch 'foodcoop-rostock/fix-order-article-update'

Conflicts:
	config/locales/de.yml
	config/locales/en.yml
This commit is contained in:
wvengen 2014-01-20 12:12:00 +01:00
commit 6c0de3dc74
6 changed files with 21 additions and 15 deletions

View File

@ -1,7 +1,7 @@
# An OrderArticle represents a single Article that is part of an Order.
class OrderArticle < ActiveRecord::Base
attr_reader :update_current_price
attr_reader :update_global_price
belongs_to :order
belongs_to :article
@ -168,14 +168,20 @@ class OrderArticle < ActiveRecord::Base
if price_attributes.present?
article_price.attributes = price_attributes
if article_price.changed?
# Updates also price attributes of article if update_current_price is selected
if update_current_price
# Updates also price attributes of article if update_global_price is selected
if update_global_price
article.update_attributes!(price_attributes)
self.article_price = article.article_prices.first # Assign new created article price to order article
self.article_price = article.article_prices.first and save # Assign new created article price to order article
else
# Creates a new article_price if neccessary
# Set created_at timestamp to order ends, to make sure the current article price isn't changed
create_article_price!(price_attributes.merge(created_at: order.ends)) and save
# TODO: The price_attributes do not include an article_id so that
# the entry in the database will not "know" which article is
# referenced. Let us check the effect of that and change it or
# comment on the meaning.
# Possibly this is the real reason why the global price is not
# affected instead of the `created_at: order.ends` injection.
end
# Updates ordergroup values
@ -185,8 +191,8 @@ class OrderArticle < ActiveRecord::Base
end
end
def update_current_price=(value)
@update_current_price = (value == true or value == '1') ? true : false
def update_global_price=(value)
@update_global_price = (value == true or value == '1') ? true : false
end
# Units missing for the next full unit_quantity of the article

View File

@ -25,7 +25,7 @@
= render partial: 'shared/article_fields_units', locals: {f_unit: f, f_uq: fprice}
= render partial: 'shared/article_fields_price', locals: {f: fprice}
= form.input :update_current_price, as: :boolean
= form.input :update_global_price, as: :boolean
= f.input :order_number
.modal-footer
= link_to t('ui.close'), '#', class: 'btn', data: {dismiss: 'modal'}

View File

@ -88,7 +88,7 @@ de:
units_received_short: Geliefert
units_to_order: Bestellte Gebinde
units_to_order_short: Bestellt
update_current_price: Globalen Preis aktualisieren
update_global_price: Globalen Preis aktualisieren
order_comment:
text: Kommentiere diese Bestellung ...
ordergroup:
@ -1319,7 +1319,7 @@ de:
private: Nachricht erscheint nicht im Foodsoft Posteingang
order_article:
units_to_order: Wenn Du die Gesamtanzahl gelieferter Gebinde änderst, musst Du auch die individuelle Anzahl der einzelnen Bestellgruppen anpassen, indem Du auf den Artikelnamen klickst. Sie werden nicht automatisch neuberechnet und andernfalls werden den Bestellgruppen Artikel in Rechnung gestellt, die nicht geliefert wurden!
update_current_price: Ändert auch den Preis für aktuelle Bestellungen
update_global_price: Ändert auch den Preis für zukünftige Bestellungen
stock_article:
copy:
name: Bitte ändern

View File

@ -88,7 +88,7 @@ en:
units_received_short: Received
units_to_order: Ordered units
units_to_order_short: Ordered
update_current_price: Globally update current price
update_global_price: Globally update current price
order_comment:
text: Add comment to this order ...
ordergroup:
@ -1319,7 +1319,7 @@ en:
private: Message doesnt show in Foodsoft mail inbox
order_article:
units_to_order: If you change the total amount of delivered units, you also have to change individual group amounts by clicking on the article name. They will not be automatically recalculated and so ordergroups may be accounted for articles that were not delivered!
update_current_price: Also update the price of the current order
update_global_price: Also update the price of future orders
stock_article:
copy:
name: Please modify

View File

@ -82,7 +82,7 @@ fr:
missing_units: Unités manquantes
missing_units_short:
units_to_order: Quantité
update_current_price: Mettre à jour le prix global
update_global_price: Mettre à jour le prix global
order_comment:
text: Commenter cette commande...
ordergroup:
@ -1297,7 +1297,7 @@ fr:
private: Le message n'apparaîtra pas dans la boîte de réception du Foodsoft
order_article:
units_to_order:
update_current_price: Modifie aussi le prix des commandes en cours
update_global_price: # ATTENTION, MEANING CHANGED. OLD (NOW WRONG) TRANSLATION WAS 'Modifie aussi le prix des commandes en cours'
stock_article:
copy:
name: Merci de modifier

View File

@ -82,7 +82,7 @@ nl:
missing_units: Missende eenheden
missing_units_short: Nodig
units_to_order: Aantal eenheden
update_current_price: Huidige prijs overal bijwerken
update_global_price: Huidige prijs overal bijwerken
order_comment:
text: Commentaar voor deze bestelling toevoegen ...
ordergroup:
@ -1274,7 +1274,7 @@ nl:
private: Bericht wordt niet getoond in de Foodsoft inbox.
order_article:
units_to_order: Als je het aantal geleverde eenheden wijzigt, moet je daarna de hoeveelheden voor huishoudens aanpassen. Klik daarvoor op de artikelnaam. Als je dit vergeet, kunnen huishoudens belast worden voor artikelen die ze niet hebben gekregen!
update_current_price: Ook prijs in huidige besteling aanpassen
update_global_price: # ATTENTION, MEANING CHANGED. OLD (NOW WRONG) TRANSLATION WAS 'Ook prijs in huidige besteling aanpassen'
stock_article:
copy:
name: Wijzigen alsjeblieft