diff --git a/app/views/deliveries/_form.html.haml b/app/views/deliveries/_form.html.haml index 94fff06f..4bb1974b 100644 --- a/app/views/deliveries/_form.html.haml +++ b/app/views/deliveries/_form.html.haml @@ -61,6 +61,8 @@ return true; } }); + + enablePriceTooltips(); }); function mark_article_for_delivery(stock_article_id) { @@ -78,6 +80,14 @@ return ( 0 == $('#stock_change_stock_article_' + stock_article_id).length ); } + function enablePriceTooltips(context) { + $('[data-toggle~="tooltip"]', context).tooltip({ + animation: false, + html: true, + placement: 'left' + }); + } + = simple_form_for [@supplier, @delivery], validate: true do |f| = f.error_notification = base_errors f.object diff --git a/app/views/deliveries/_stock_article_for_adding.html.haml b/app/views/deliveries/_stock_article_for_adding.html.haml index 19c8d14d..5452d6c6 100644 --- a/app/views/deliveries/_stock_article_for_adding.html.haml +++ b/app/views/deliveries/_stock_article_for_adding.html.haml @@ -1,7 +1,7 @@ - css_class = ( @delivery and @delivery.includes_article? article ) ? ( 'unavailable' ) : ( false ) %tr{:id => "stock_article_#{article.id}", :class => css_class} %td.sort-by-name= article.name - %td #{number_to_currency article.price}/#{article.unit} + %td{:data => {:toggle => :tooltip, :title => render(:partial => 'shared/article_price_info', :locals => {:article => article})}} #{number_to_currency article.price}/#{article.unit} %td.sort-by-category= article.article_category.name %td .btn-group diff --git a/app/views/deliveries/_stock_change_fields.html.haml b/app/views/deliveries/_stock_change_fields.html.haml index b1d94601..c761d48e 100644 --- a/app/views/deliveries/_stock_change_fields.html.haml +++ b/app/views/deliveries/_stock_change_fields.html.haml @@ -4,6 +4,6 @@ %td.sort-by-name %span.stock_article_name= stock_change.stock_article.name = f.association :stock_article, :as => :hidden - %td.price-per-unit #{number_to_currency stock_article.price}/#{stock_change.stock_article.unit} + %td.price-per-unit{:data => {:toggle => :tooltip, :title => render(:partial => 'shared/article_price_info', :locals => {:article => stock_article})}} #{number_to_currency stock_article.price}/#{stock_change.stock_article.unit} %td= f.input :quantity, :wrapper => :intable, :input_html => {:class => 'stock-change-quantity', :autocomplete => :off} %td= stock_change_remove_link f diff --git a/app/views/deliveries/add_stock_change.js.erb b/app/views/deliveries/add_stock_change.js.erb index d2c3a022..049e6233 100644 --- a/app/views/deliveries/add_stock_change.js.erb +++ b/app/views/deliveries/add_stock_change.js.erb @@ -8,6 +8,7 @@ var stock_change = $( '<%= j(render(:partial => 'stock_change', :locals => {:stock_change => @stock_change})) %>' ).addClass('success'); + enablePriceTooltips(stock_change); $('#stock_changes').append(stock_change); mark_article_for_delivery(<%= @stock_change.stock_article.id %>); diff --git a/app/views/deliveries/create_stock_article.js.erb b/app/views/deliveries/create_stock_article.js.erb index 73eff4ac..5e2893a9 100644 --- a/app/views/deliveries/create_stock_article.js.erb +++ b/app/views/deliveries/create_stock_article.js.erb @@ -2,13 +2,16 @@ $('div.container-fluid').prepend( '<%= j(render(:partial => 'shared/alert_success', :locals => {:alert_message => t('.notice', :name => @stock_article.name)})) %>' ); -$('#stock_articles_for_adding tr').removeClass('success'); - -$('#stock_articles_for_adding tbody').append( - $( +(function() { + $('#stock_articles_for_adding tr').removeClass('success'); + + var stock_article_for_adding = $( '<%= j(render(:partial => 'stock_article_for_adding', :locals => {:article => @stock_article})) %>' - ).addClass('success') -); -updateSort('#stock_articles_for_adding'); + ).addClass('success'); + enablePriceTooltips(stock_article_for_adding); + + $('#stock_articles_for_adding tbody').append(stock_article_for_adding); + updateSort('#stock_articles_for_adding'); +})(); $('#modalContainer').modal('hide'); diff --git a/app/views/deliveries/update_stock_article.js.erb b/app/views/deliveries/update_stock_article.js.erb index af0f7e7c..379486d1 100644 --- a/app/views/deliveries/update_stock_article.js.erb +++ b/app/views/deliveries/update_stock_article.js.erb @@ -7,18 +7,15 @@ $('div.container-fluid').prepend( $('#stock_articles_for_adding tr').removeClass('success'); - var old_entry = $('#stock_article_<%= @stock_article.id %>'); - var unavailable = old_entry.hasClass('unavailable'); var stock_article_for_adding = $( '<%= j(render(:partial => 'stock_article_for_adding', :locals => {:article => @stock_article, :delivery => @delivery})) %>' ).addClass('success'); + enablePriceTooltips(stock_article_for_adding); - old_entry.replaceWith(stock_article_for_adding); + $('#stock_article_<%= @stock_article.id %>').replaceWith(stock_article_for_adding); updateSort('#stock_articles_for_adding'); - if(unavailable) { - mark_article_unavailable_for_delivery(<%= @stock_article.id %>); - } + mark_article_for_delivery(<%= @stock_article.id %>); // update entry in stock_changes table diff --git a/app/views/shared/_article_price_info.html.haml b/app/views/shared/_article_price_info.html.haml new file mode 100644 index 00000000..e19d692c --- /dev/null +++ b/app/views/shared/_article_price_info.html.haml @@ -0,0 +1,13 @@ +%table.table.table-condensed + %tr + %th= t 'activerecord.attributes.article.price' + %td.numeric= number_to_currency article.price + %tr + %th= t 'activerecord.attributes.article.deposit' + %td.numeric= number_to_currency article.deposit + %tr + %th= t 'activerecord.attributes.article.tax' + %td.numeric= number_to_percentage article.tax + %tr + %th= t 'activerecord.attributes.article.fc_price' + %td.numeric= number_to_currency article.fc_price diff --git a/config/locales/de.yml b/config/locales/de.yml index d77ad2b0..8793da57 100644 --- a/config/locales/de.yml +++ b/config/locales/de.yml @@ -39,6 +39,7 @@ de: article_category: Kategorie availability: Artikel ist verfügbar? deposit: Pfand + fc_price: Endpreis gross_price: Bruttopreis price: Nettopreis tax: MwSt diff --git a/config/locales/en.yml b/config/locales/en.yml index 26b3fbcc..2ba291eb 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -39,6 +39,7 @@ en: article_category: article category availability: Is article available? deposit: deposit + fc_price: FC price gross_price: gross price price: price tax: VAT