Merge latest changes in master

This commit is contained in:
Julius 2013-06-17 15:47:08 +02:00
commit 9502ca28dd
11 changed files with 220 additions and 202 deletions

View file

@ -5,6 +5,8 @@ We changed the branch structure. The rails3 branch is now master. But you can sa
FoodSoft FoodSoft
========= =========
[![Code Climate](https://codeclimate.com/github/foodcoops/foodsoft.png)](https://codeclimate.com/github/foodcoops/foodsoft)
[![Dependency Status](https://gemnasium.com/foodcoops/foodsoft.png)](https://gemnasium.com/foodcoops/foodsoft)
Web-based software to manage a non-profit food coop (product catalog, ordering, accounting, job scheduling). Web-based software to manage a non-profit food coop (product catalog, ordering, accounting, job scheduling).
@ -13,7 +15,7 @@ More information about using this software and contributing can be found on the
Install Install
-------- --------
Have a look at [DEVELOPMENT](https://github.com/foodcoops/foodsoft/blob/master/doc/DEVELOPMENT) (possibly outdated) and the (more recent) [Developing](https://github.com/foodcoops/foodsoft/wiki/Developing) page on the wiki. Have a look at [DEVELOPMENT](https://github.com/foodcoops/foodsoft/blob/master/doc/DEVELOPMENT) (possibly outdated) and the (more recent) [Developing Guidelines](https://github.com/foodcoops/foodsoft/wiki/Developing-Guidelines) page on the wiki.
License License
------- -------

View file

@ -33,7 +33,7 @@ class Order < ActiveRecord::Base
end end
def name def name
stockit? ? "Lager" : supplier.name stockit? ? I18n.t('orders.model.stock') : supplier.name
end end
def articles_for_ordering def articles_for_ordering

View file

@ -28,7 +28,9 @@
%td= form.text_field 'note', class: 'input-medium' %td= form.text_field 'note', class: 'input-medium'
%td= form.collection_select 'article_category_id', ArticleCategory.all, %td= form.collection_select 'article_category_id', ArticleCategory.all,
:id, :name, { :include_blank => true }, class: 'input-small' :id, :name, { :include_blank => true }, class: 'input-small'
%td= form.text_field 'tax', class: 'input-mini' %td.input-append
= form.text_field 'tax', class: 'input-mini'
%span.add-on %
%td= form.text_field 'deposit', class: 'input-mini' %td= form.text_field 'deposit', class: 'input-mini'
- unless article.errors.empty? - unless article.errors.empty?
%tr.alert %tr.alert

View file

@ -16,7 +16,9 @@
= f.input :price = f.input :price
= f.input :unit_quantity = f.input :unit_quantity
= f.input :order_number = f.input :order_number
= f.input :tax = f.input :tax, :wrapper => :append do
= f.input_field :tax
%span.add-on %
= f.input :deposit = f.input :deposit
.modal-footer .modal-footer
= link_to t('ui.close'), '#', class: 'btn', data: {dismiss: 'modal'} = link_to t('ui.close'), '#', class: 'btn', data: {dismiss: 'modal'}

View file

@ -60,7 +60,9 @@
%td{:style => highlight_new(attrs, :unit)}= form.text_field 'unit', class: 'input-mini' %td{:style => highlight_new(attrs, :unit)}= form.text_field 'unit', class: 'input-mini'
%td{:style => highlight_new(attrs, :unit_quantity)}= form.text_field 'unit_quantity', class: 'input-mini' %td{:style => highlight_new(attrs, :unit_quantity)}= form.text_field 'unit_quantity', class: 'input-mini'
%td{:style => highlight_new(attrs, :price)}= form.text_field 'price', class: 'input-mini' %td{:style => highlight_new(attrs, :price)}= form.text_field 'price', class: 'input-mini'
%td{:style => highlight_new(attrs, :tax)}= form.text_field 'tax', class: 'input-mini' %td{:style => highlight_new(attrs, :tax), class: 'input-append'}
= form.text_field 'tax', class: 'input-mini'
%span.add-on %
%td{:style => highlight_new(attrs, :deposit)}= form.text_field 'deposit', class: 'input-mini' %td{:style => highlight_new(attrs, :deposit)}= form.text_field 'deposit', class: 'input-mini'
%td= form.select :article_category_id, ArticleCategory.all.map {|a| [ a.name, a.id ] }, %td= form.select :article_category_id, ArticleCategory.all.map {|a| [ a.name, a.id ] },
{include_blank: true}, class: 'input-small' {include_blank: true}, class: 'input-small'

View file

@ -12,7 +12,9 @@
= f.input :note = f.input :note
- if stock_article.new_record? - if stock_article.new_record?
= f.input :price = f.input :price
= f.input :tax = f.input :tax, :wrapper => :append do
= f.input_field :tax
%span.add-on %
= f.input :deposit = f.input :deposit
- else - else
= f.input :price, :input_html => {:disabled => 'disabled'}, :hint => t('stockit.form.price_hint') = f.input :price, :input_html => {:disabled => 'disabled'}, :hint => t('stockit.form.price_hint')

View file

@ -4,7 +4,10 @@
= f.input :unit = f.input :unit
= f.input :note = f.input :note
= f.input :price = f.input :price
= f.input :tax = f.input :tax, :wrapper => :append do
= f.input_field :tax
%span.add-on %
-# untested, because this view is currently not included (?)
= f.input :deposit = f.input :deposit
= f.association :article_category = f.association :article_category
= f.submit = f.submit

View file

@ -6,7 +6,9 @@
- if stock_article.new_record? - if stock_article.new_record?
= f.input :price = f.input :price
= f.input :tax = f.input :tax, :wrapper => :append do
= f.input_field :tax
%span.add-on %
= f.input :deposit = f.input :deposit
- else - else
= f.input :price, :input_html => {:disabled => 'disabled'}, :hint => t('.form.price_hint') = f.input :price, :input_html => {:disabled => 'disabled'}, :hint => t('.form.price_hint')

View file

@ -580,7 +580,7 @@ de:
total_fc: Summe (FC-Preis) total_fc: Summe (FC-Preis)
units: Einheiten units: Einheiten
index: index:
title: beendete Bestellungen title: Beendete Bestellungen
invoice: invoice:
edit: Rechnung bearbeiten edit: Rechnung bearbeiten
invoice_amount: ! 'Rechnungsbetrag:' invoice_amount: ! 'Rechnungsbetrag:'
@ -785,11 +785,11 @@ de:
tolerance: Toleranz tolerance: Toleranz
total_sum_amount: Gesamtbetrag total_sum_amount: Gesamtbetrag
total_tolerance: Gesamt-Toleranz total_tolerance: Gesamt-Toleranz
total_units: Gesamt-Einheiten
unit: Einheit unit: Einheit
unit_missing: Fehlende Einheiten unit_missing: Fehlende Einheiten
units: Gebinde units: Gebinde
units_full: Volle Gebinde units_full: Volle Gebinde
units_total: Gesamt-Einheiten
index: index:
closed_orders: closed_orders:
more: mehr... more: mehr...
@ -1326,6 +1326,7 @@ de:
error_nosel: Es muss mindestens ein Artikel ausgewählt sein error_nosel: Es muss mindestens ein Artikel ausgewählt sein
error_starts_before_ends: muss nach dem Bestellstart liegen (oder leer bleiben) error_starts_before_ends: muss nach dem Bestellstart liegen (oder leer bleiben)
notice_close: ! 'Bestellung: %{name}, bis %{ends}' notice_close: ! 'Bestellung: %{name}, bis %{ends}'
stock: Lager
new: new:
title: Neue Bestellung anlegen title: Neue Bestellung anlegen
orders: orders:
@ -1440,16 +1441,16 @@ de:
title_version: Version title_version: Version
view_current: Aktuelle Version sehen view_current: Aktuelle Version sehen
sessions: sessions:
logged_in: Logged in! logged_in: Angemeldet!
logged_out: Logged out! logged_out: Abgemeldet!
login_invalid: Invalid email or password login_invalid:
new: new:
forgot_password: Passwort vergessen? forgot_password: Passwort vergessen?
login: Anmelden login: Anmelden
nojs: Achtung, Cookies und Javascript müssen aktiviert sein! %{link} bitte abschalten. nojs: Achtung, Cookies und Javascript müssen aktiviert sein! %{link} bitte abschalten.
noscript: NoScript noscript: NoScript
password: Passwort password: Passwort
title: Foodsoft login title: Foodsoft anmelden
user: Benutzerin user: Benutzerin
shared: shared:
articles_by_articles: articles_by_articles:
@ -1477,7 +1478,7 @@ de:
description: Beschreibung description: Beschreibung
members: Mitglieder members: Mitglieder
no_weekly_job: kein wöchentlicher Job definiert no_weekly_job: kein wöchentlicher Job definiert
weekly_job: wöchentlicher Job weekly_job: Wöchentlicher Job
group_form_fields: group_form_fields:
search: Suche ... search: Suche ...
search_user: Nach Nutzerin suchen search_user: Nach Nutzerin suchen

View file

@ -572,8 +572,8 @@ en:
article: Article article: Article
gross: Gross gross: Gross
net: Net net: Net
number: Number number: Nr.
refund: Refund refund: Deposit
tax: Tax tax: Tax
group_order_articles: group_order_articles:
add_group: Add group add_group: Add group
@ -582,16 +582,16 @@ en:
total_fc: Sum (FC-Price) total_fc: Sum (FC-Price)
units: Units units: Units
index: index:
title: Closed Orders title: Closed orders
invoice: invoice:
edit: Edit invoice edit: Edit invoice
invoice_amount: ! 'Invoice amount:' invoice_amount: ! 'Invoice amount:'
invoice_date: ! 'Invoice date:' invoice_date: ! 'Invoice date:'
invoice_number: ! 'Invoice number:' invoice_number: ! 'Invoice number:'
minus_refund_calculated: ! '- refund calculated:' minus_refund_calculated: ! '- deposit charged:'
new: Create new invoice new: Create new invoice
new_body: ! 'Create an invoice for this order:' new_body: ! 'Create an invoice for this order:'
plus_refund_credited: ! '+ refund credited:' plus_refund_credited: ! '+ deposit returned:'
refund_adjusted_amount: ! 'amount adjusted for refund:' refund_adjusted_amount: ! 'amount adjusted for refund:'
new: new:
alert: Attention, order was already accounted alert: Attention, order was already accounted
@ -636,15 +636,15 @@ en:
notice: Invoice was created notice: Invoice was created
financial_transactions: financial_transactions:
create: create:
notice: The Transaction was saved. notice: The transaction was saved.
create_collection: create_collection:
alert: ! 'An Error occured: %{error}' alert: ! 'An error occured: %{error}'
notice: All Transactions were saved. notice: All transactions were saved.
index: index:
balance: ! 'Balance of account: %{balance}' balance: ! 'Balance of account: %{balance}'
last_updated_at: (last updated %{when} ago) last_updated_at: (last updated %{when} ago)
new_transaction: Create new transaction new_transaction: Create new transaction
search_placeholder: Search .. search_placeholder: Search ...
title: Account statement for %{name} title: Account statement for %{name}
new: new:
paragraph: Here you can credit and debit money for the order group <b>%{name}</b>. paragraph: Here you can credit and debit money for the order group <b>%{name}</b>.
@ -676,10 +676,10 @@ en:
end: End end: End
everything_cleared: Great, everything is accounted... everything_cleared: Great, everything is accounted...
group: Group group: Group
last_transactions: Last Transactions last_transactions: Last transactions
note: Note note: Note
open_transactions: Open Transactions open_transactions: not yet accounted
show_all: Show all show_all: show all
supplier: supplier supplier: supplier
title: Finances title: Finances
unpaid_invoices: Unpaid invoices unpaid_invoices: Unpaid invoices
@ -712,10 +712,10 @@ en:
ordergroups: ordergroups:
index: index:
new_transaction: Add new transactions new_transaction: Add new transactions
search_placeholder: Search .. search_placeholder: Search ...
title: Manage accounts title: Manage accounts
ordergroups: ordergroups:
account_balance: Account Balance account_balance: Account balance
account_statement: Account statement account_statement: Account statement
name: Name name: Name
new_transaction: New transaction new_transaction: New transaction
@ -787,11 +787,11 @@ en:
tolerance: Tolerance tolerance: Tolerance
total_sum_amount: Total amount total_sum_amount: Total amount
total_tolerance: Total tolerance total_tolerance: Total tolerance
total_units: Total units
unit: Unit unit: Unit
unit_missing: Missing units unit_missing: Missing units
units: Units units: Units
units_full: Filled units units_full: Filled units
units_total: Total units
index: index:
closed_orders: closed_orders:
more: more... more: more...
@ -1329,6 +1329,7 @@ en:
error_nosel: At least one article must be selected error_nosel: At least one article must be selected
error_starts_before_ends: must be after the start date (or remain empty) error_starts_before_ends: must be after the start date (or remain empty)
notice_close: ! 'Order: %{name}, until %{ends}' notice_close: ! 'Order: %{name}, until %{ends}'
stock: Stock
new: new:
title: Create new order title: Create new order
orders: orders:
@ -1445,11 +1446,11 @@ en:
sessions: sessions:
logged_in: Logged in! logged_in: Logged in!
logged_out: Logged out! logged_out: Logged out!
login_invalid: Invalid email or password login_invalid: Invalid username or password
new: new:
forgot_password: Forgot password? forgot_password: Forgot password?
login: Login login: Login
nojs: Attention, Cookies and Javascript have to be activated! Please switch off %{link}. nojs: Attention, cookies and javascript have to be activated! Please switch off %{link}.
noscript: NoScript noscript: NoScript
password: Password password: Password
title: Foodsoft login title: Foodsoft login
@ -1576,8 +1577,8 @@ en:
amount: Amount amount: Amount
date: Billing date date: Billing date
delivery: Delivery delivery: Delivery
deposit: Charge deposit deposit: Deposit charged
deposit_credit: Credit deposit deposit_credit: Deposit returned
note: Note note: Note
number: Number number: Number
order: Order order: Order

View file

@ -527,8 +527,8 @@ nl:
title: Order sluiten title: Order sluiten
edit_results_by_articles: edit_results_by_articles:
add_article: Artikel toevoegen add_article: Artikel toevoegen
amount: Hoeveelheid amount: Aantal
amount_per_unit: Groothandelsverpakkingsgroote * Hoeveelheid amount_per_unit: Groothandelsverpakkingsgroote * Aantal
article: Artikel article: Artikel
gross: Bruto gross: Bruto
net: Netto net: Netto
@ -544,37 +544,37 @@ nl:
index: index:
title: Gesloten orders title: Gesloten orders
invoice: invoice:
edit: edit: Factuur bewerken
invoice_amount: invoice_amount: ! 'Factuurbedrag:'
invoice_date: invoice_date: ! 'Factuurdatum:'
invoice_number: invoice_number: ! 'Factuurnummer:'
minus_refund_calculated: minus_refund_calculated: ! '- statiegeld berekend:'
new: Factuur toevoegen
new_body: ! 'Een factuur aan deze rekening toevoegen:'
plus_refund_credited: ! '+ statiegeld teruggekregen:'
refund_adjusted_amount: ! 'bedrag gecorrigeerd voor statiegeld:'
new: new:
new_body: alert: Opgelet, bestelling is al afgerekend
plus_refund_credited: articles_overview: Artikeloverzicht
refund_adjusted_amount: comment_on_transaction: Hier kun je een notitie aan de afrekening toevoegen.
new: comments: Notities
alert: confirm_order: Bestelling afsluiten
articles_overview: create_invoice: Rekening toevoegen
comment_on_transaction: edit_note: Notitie bewerken
comments: edit_order: Bestelling bewerken
confirm_order: groups_overview: Overzicht per huishouden
create_invoice: invoice: Factuur
edit_note: notes_and_journal: Notities/Protocol
edit_order: summary: Samenvatting
groups_overview: title: ! '%{name} afrekenen'
invoice: view_options: Weergaveopties
notes_and_journal:
summary:
title:
view_options:
order_article: order_article:
confirm: confirm: Weet je het zeker?
orders: orders:
clear: afrekenen clear: afrekenen
cleared: afgerekend (%{amount}) cleared: afgerekend (%{amount})
close: direct afsluiten close: direct afsluiten
confirm: confirm: Weet je zeker dat de je bestelling wilt afsluiten?
end: Einde end: Einde
ended: beëindigd ended: beëindigd
last_edited_by: Laatst aangepast door last_edited_by: Laatst aangepast door
@ -583,104 +583,104 @@ nl:
state: Status state: Status
summary: summary:
changed: changed:
duration: duration: Van %{starts} tot %{ends}
fc_amount: fc_amount: ! 'FC-bedrag:'
fc_profit: fc_profit: FC Winst
gross_amount: gross_amount: ! 'Bruto bedrag:'
groups_amount: groups_amount: ! 'Bedrag van huishoudens:'
net_amount: net_amount: ! 'Netto bedrag:'
reload: reload: Samenvatting verversen
with_extra_charge: with_extra_charge:
without_extra_charge: without_extra_charge:
create: create:
notice: notice: Rekening is gemaakt
financial_transactions: financial_transactions:
create: create:
notice: notice: De transactie is opgeslagen.
create_collection: create_collection:
alert: alert:
notice: notice: Alle transacties zijn opgeslagen.
index: index:
balance: balance: ! 'Tegoed: %{balance}'
last_updated_at: last_updated_at: (laatst bijgewerkt %{when} geleden)
new_transaction: new_transaction: Nieuwe transactie toevoegen
search_placeholder: search_placeholder: Zoeken ...
title: title: Rekeningoverzicht voor %{name}
new: new:
paragraph: paragraph:
title: title: Nieuwe transactie
new_collection: new_collection:
amount: amount: Bedrag
new_ordergroup: new_ordergroup: Nog een huishouden toevoegen
note: note: Notitie
ordergroup: ordergroup: Huishouden
save: save: Transactie opslaan
sidebar: sidebar:
title: title:
ordergroup: ordergroup:
remove: remove:
remove_group: remove_group:
transactions: transactions:
amount: amount: Bedrag
date: date: Datum
note: note: Notitie
who: who: Wie
group_order_articles: group_order_articles:
form: form:
amount_change_for: amount_change_for:
index: index:
amount: amount: Bedrag
amount_fc: amount_fc: Bedrag(FC)
clear: clear: Afrekenen
date: date: Datum
end: end: Einde
everything_cleared: everything_cleared: Mooi zo, alles is verrekend...
group: group: Groep
last_transactions: last_transactions: Laatste transacties
note: note: Notitie
open_transactions: open_transactions: nog niet afgerekend
show_all: show_all: alle tonen
supplier: supplier: leverancier
title: title: Financiën
unpaid_invoices: unpaid_invoices: Onbetaalde facturen
invoices: invoices:
edit: edit:
title: title: Factuur bewerken
form: form:
delivery: delivery: levering
linked: linked: Deze factuur is met aan %{what_link} gekoppeld.
order: order: bestelling
index: index:
action_new: action_new: Nieuwe factuur toevoegen
title: title: Facturen
invoices: invoices:
confirm_delete: confirm_delete: Weet je het zeker?
delivery: delivery: Levering
new: new:
back: back: Terug
title: title: Nieuwe factuur toevoegen
show: show:
back: back: Terug
delivery: delivery: levering
linked: linked: Deze factuur is aan een %{what_link} gekoppeld.
title: title: Factuur %{number}
order_articles: order_articles:
edit: edit:
title: title: Artikel bijwerken
new: new:
title: title: Geleverd artikel aan bestelling toevoegen
ordergroups: ordergroups:
index: index:
new_transaction: new_transaction: Nieuwe transacties toevoegen
search_placeholder: search_placeholder: Zoeken ...
title: title: Tegoeden beheren
ordergroups: ordergroups:
account_balance: account_balance: Tegoed
account_statement: account_statement:
name: name: Naam
new_transaction: new_transaction: Nieuwe transactie
update: update:
notice: notice: Factuur is bijgewerkt
foodcoop: foodcoop:
ordergroups: ordergroups:
index: index:
@ -747,11 +747,11 @@ nl:
tolerance: Tolerantie tolerance: Tolerantie
total_sum_amount: Totalbedrag total_sum_amount: Totalbedrag
total_tolerance: Totale tolerantie total_tolerance: Totale tolerantie
total_units: Totale eenheden
unit: Eenheid unit: Eenheid
unit_missing: Missende eenheden unit_missing: Missende eenheden
units: Eenheden units: Eenheden
units_full: Volle eenheden units_full: Volle eenheden
units_total: Totaal aantal
index: index:
closed_orders: closed_orders:
more: meer... more: meer...
@ -949,26 +949,26 @@ nl:
login: login:
accept_invitation: accept_invitation:
body: body:
submit: submit: Foodsoft account aanmaken
title: title: Uitnodiging voor %{name}
controller: controller:
accept_invitation: accept_invitation:
notice: notice: Gefeliciteerd, je account is aangemaakt. Nu kun je inloggen.
error_group_invalid: error_group_invalid: De groep waarin je bent uitgenodigd bestaat niet meer.
error_invite_invalid: error_invite_invalid: Deze uitnodiging is niet (meer) geldig.
error_token_invalid: error_token_invalid: Onjuist of verlopen token. Probeer het opnieuw.
reset_password: reset_password:
notice: notice: Als je e-mailadres hier is geregistreerd, krijg je een bericht met een link om je wachtwoord opnieuw in te stellen.
update_password: update_password:
notice: notice: Je wachtwoord is veranderd. Nu kun je weer inloggen.
forgot_password: forgot_password:
body: body: <p>Geen probleem, je kunt hier een nieuw wachtwoord instellen.</p> <p>Vul het emailadres in waarmee je je hebt geregistreerd, dan krijg je een email met verdere instructies.</p>
submit: submit: Nieuw wachtwoord aanvragen
title: title: Wachtwoord vergeten?
new_password: new_password:
body: body: <p>Geef nieuw wachtwoord voor <b>%{user}</b></p>
submit: submit: Nieuw wachtwoord opslaan
title: title: Nieuw wachtwoord
mailer: mailer:
dateformat: dateformat:
feedback: feedback:
@ -1188,6 +1188,7 @@ nl:
error_nosel: error_nosel:
error_starts_before_ends: error_starts_before_ends:
notice_close: notice_close:
stock: Voorraad
new: new:
title: title:
orders: orders:
@ -1300,17 +1301,17 @@ nl:
title_version: title_version:
view_current: view_current:
sessions: sessions:
logged_in: logged_in: Ingelogd!
logged_out: logged_out: Uitgelogd!
login_invalid: login_invalid: Onjuiste gebruikersnaam of wachtwoord
new: new:
forgot_password: forgot_password: Wachtwoord vergeten?
login: login: Aanmelden
nojs: nojs: Opgelet, cookies en javascript moeten toegelaten worden! %{link} uitzetten, alsjeblieft.
noscript: noscript: NoScript
password: password: Wachtwoord
title: title: Foodsoft aanmelden
user: user: Gebruiker
shared: shared:
articles_by_articles: articles_by_articles:
ordered: Besteld (Hoeveelheid + Tolerantie) ordered: Besteld (Hoeveelheid + Tolerantie)
@ -1323,9 +1324,9 @@ nl:
name: Naam name: Naam
price: Totaalprijs price: Totaalprijs
unit: Eenheid unit: Eenheid
unit_quantity: Groothandelseenheid unit_quantity: Gr.Eenh.
unit_quantity_desc: Hoeveel eenheden per groothandelsverpakking unit_quantity_desc: Hoeveel eenheden per groothandelsverpakking
units: Eenheden units: Aantal
units_desc: Toegewezen eenheden units_desc: Toegewezen eenheden
group: group:
access: Toegang tot access: Toegang tot
@ -1430,16 +1431,16 @@ nl:
ordergroup_id: ordergroup_id:
result: result:
invoice: invoice:
amount: amount: Bedrag
date: date: Factuurdatum
delivery: delivery: Levering
deposit: deposit: Statiegeld in rekening gebracht
deposit_credit: deposit_credit: Statiegeld teruggekregen
note: note: Notitie
number: number: Nummer
order: order: Bestelling
paid_on: paid_on: Betaalt op
supplier: supplier: Leverancier
message: message:
body: body:
group_id: group_id: