- content_for :javascript do
  - group_balance = FoodsoftConfig[:charge_members_manually] ? @ordering_data[:account_balance] : @ordering_data[:available_funds]
  :javascript
    $(function() {
      #{data_to_js(@ordering_data)}
      setGroupBalance(#{group_balance});
      setMinimumBalance(#{FoodsoftConfig[:minimum_balance] or 0});
      setToleranceBehaviour(#{FoodsoftConfig[:tolerance_is_costly]});
      setStockit(#{@order.stockit?});
      // create List for search-feature (using list.js, http://listjs.com)
      var listjsResetPlugin = ['reset', {highlightClass: 'btn-primary'}];
      var listjsDelayPlugin = ['delay', {delayedSearchTime: 500}];
      new List(document.body, {
        valueNames: ['name'],
        engine: 'unlist',
        plugins: [listjsResetPlugin, listjsDelayPlugin],
        // make large pages work too (as we don't have paging - articles may disappear!)
        page: 10000,
        indexAsync: true
      });
    });

- title t('.title'), false

.row-fluid
  .well.pull-left
    = close_button :alert
    %h2= @order.name
    %dl.dl-horizontal
      - unless @order.note.blank?
        %dt= heading_helper Order, :note
        %dd= @order.note
      %dt= heading_helper Order, :created_by
      %dd= show_user_link(@order.created_by)
      %dt= heading_helper Order, :ends
      %dd= format_time(@order.ends)
      %dt= heading_helper Order, :pickup
      %dd= format_date(@order.pickup)
      - unless @order.stockit? or @order.supplier.min_order_quantity.blank?
        %dt= heading_helper Supplier, :min_order_quantity, short: true
        %dd= @order.supplier.min_order_quantity
      %dt= t '.sum_amount'
      %dd= number_to_currency @order.sum
      - unless @group_order.new_record?
        %dt= heading_helper GroupOrder, :updated_by
        %dd
          = show_user(@group_order.updated_by)
          (#{format_time(@group_order.updated_on)})
      %dt= heading_helper Ordergroup, :account_balance
      %dd= number_to_currency(@ordering_data[:account_balance])
      - unless FoodsoftConfig[:charge_members_manually]
        %dt= heading_helper Ordergroup, :available_funds
        %dd= number_to_currency(@ordering_data[:available_funds])

  .well.pull-right
    = close_button :alert
    = render 'switch_order', current_order: @order

.row-fluid
  .well.clear
    .form-search
      .input-append
        = text_field_tag :article, params[:article], placeholder: t('.search_article'), class: 'search-query delayed-search resettable'
        %button.add-on.btn.reset-search{:type => :button, :title => t('.reset_article_search')}
          %i.icon.icon-remove

= form_for @group_order do |f|
  = f.hidden_field :lock_version
  = f.hidden_field :order_id
  = f.hidden_field :updated_by_user_id
  = f.hidden_field :ordergroup_id
  %table.table.table-hover
    %thead
      %tr
        %th= heading_helper Article, :name
        - if @order.stockit?
          %th{style: 'width:120px'}= heading_helper StockArticle, :supplier
        %th{style: "width:13px;"}
        %th{style: "width:4.5em;"}= t '.price'
        %th{style: "width:4.5em;"}= heading_helper Article, :unit
        - unless @order.stockit?
          %th{style: "width:70px;"}= heading_helper OrderArticle, :missing_units, short: true
          %th#col_required= heading_helper GroupOrderArticle, :quantity
          %th#col_tolerance= heading_helper GroupOrderArticle, :tolerance
        - else
          %th(style="width:20px")= heading_helper StockArticle, :available
          %th#col_required= heading_helper GroupOrderArticle, :quantity
        %th{style: "width:15px;"}= heading_helper GroupOrderArticle, :total_price
    %tbody.list
      - @order.articles_grouped_by_category.each do |category, order_articles|
        %tr.list-heading.article-category
          %td
            = category
            %i.icon-tag
          %td{colspan: "9"}
        - order_articles.each do |order_article|
          %tr{class: "#{cycle('even', 'odd', name: 'articles')} order-article #{get_missing_units_css_class(@ordering_data[:order_articles][order_article.id][:missing_units])}", valign: "top"}
            %td.name= order_article.article.name
            - if @order.stockit?
              %td= truncate order_article.article.supplier.name, length: 15
            %td= h order_article.article.origin
            %td= number_to_currency(@ordering_data[:order_articles][order_article.id][:price])
            %td= order_article.article.unit
            %td
              - if @order.stockit?
                = @ordering_data[:order_articles][order_article.id][:quantity_available]
              - else
                %span{id: "missing_units_#{order_article.id}"}= @ordering_data[:order_articles][order_article.id][:missing_units]

            %td.quantity
              %input{id: "q_#{order_article.id}", name: "group_order[group_order_articles_attributes][#{order_article.id}][quantity]", type: "hidden", value: @ordering_data[:order_articles][order_article.id][:quantity], 'data-min' => (@ordering_data[:order_articles][order_article.id][:quantity] if @order.boxfill?), 'data-max' => (@ordering_data[:order_articles][order_article.id][:quantity]+@ordering_data[:order_articles][order_article.id][:missing_units] if @order.boxfill?)}/
              %span.used{id: "q_used_#{order_article.id}"}= @ordering_data[:order_articles][order_article.id][:used_quantity]
              +
              %span.unused{id: "q_unused_#{order_article.id}"}= @ordering_data[:order_articles][order_article.id][:quantity] - @ordering_data[:order_articles][order_article.id][:used_quantity]
              .btn-group
                %a.btn.btn-ordering{'data-increase_quantity' => order_article.id}
                  %i.icon-plus
                %a.btn.btn-ordering{'data-decrease_quantity' => order_article.id}
                  %i.icon-minus

            %td.tolerance{style: ('display:none' if @order.stockit?)}
              %input{id: "t_#{order_article.id}", name: "group_order[group_order_articles_attributes][#{order_article.id}][tolerance]", type: "hidden", value: @ordering_data[:order_articles][order_article.id][:tolerance], 'data-min' => (@ordering_data[:order_articles][order_article.id][:tolerance] if @order.boxfill?)}/
              - if (@ordering_data[:order_articles][order_article.id][:unit] > 1)
                %span.used{id: "t_used_#{order_article.id}"}= @ordering_data[:order_articles][order_article.id][:used_tolerance]
                +
                %span.unused{id: "t_unused_#{order_article.id}"}= @ordering_data[:order_articles][order_article.id][:tolerance] - @ordering_data[:order_articles][order_article.id][:used_tolerance]
                .btn-group
                  %a.btn.btn-ordering{'data-increase_tolerance' => order_article.id}
                    %i.icon-plus
                  %a.btn.btn-ordering{'data-decrease_tolerance' => order_article.id}
                    %i.icon-minus

            %td{id: "td_price_#{order_article.id}", style: "text-align:right; padding-right:10px; width:4em"}
              %span{id: "price_#{order_article.id}_display"}= number_to_currency(@ordering_data[:order_articles][order_article.id][:total_price])
              .article-info
                .article-name= order_article.article.name
                .pull-right
                  = t('.units_full') + ':'
                  %span{id: "units_#{order_article.id}"}= order_article.units_to_order
                  %br/
                  = t('.units_total') + ':'
                  %span{id: "q_total_#{order_article.id}"}= @ordering_data[:order_articles][order_article.id][:quantity] + @ordering_data[:order_articles][order_article.id][:others_quantity]
                  %br/
                  = t('.total_tolerance') + ':'
                  %span{id: "t_total_#{order_article.id}"}= @ordering_data[:order_articles][order_article.id][:tolerance] + @ordering_data[:order_articles][order_article.id][:others_tolerance]
                  %br/
                .pull-left
                  #{heading_helper Article, :manufacturer}: #{order_article.article.manufacturer}
                  %br/
                  #{heading_helper Article, :units}: #{@order.stockit? ? order_article.article.quantity_available : @ordering_data[:order_articles][order_article.id][:unit]} * #{h order_article.article.unit}
                  %br/
                  #{heading_helper Article, :note}: #{order_article.article.note}
                  %br/
  #order-footer
    #info-box
    #total-sum
      %table
        %tr
          %td= t('.total_sum_amount') + ':'
          %td.currency
            %span#total_price= number_to_currency(@group_order.price)
        %tr
          - if FoodsoftConfig[:charge_members_manually]
            - old_balance = @ordering_data[:account_balance]
            %td= heading_helper(Ordergroup, :account_balance) + ':'
            %td.currency= number_to_currency(@ordering_data[:account_balance])
          - else
            - old_balance = @ordering_data[:available_funds]
            %td= heading_helper(Ordergroup, :available_funds) + ':'
            %td.currency= number_to_currency(@ordering_data[:available_funds])
        %tr
          %td= t('.new_funds') + ':'
          %td.currency
            %strong
              %span#new_balance= number_to_currency(old_balance - @group_order.price)
      #order-button
        = submit_tag( t('.action_save'), id: 'submit_button', class: 'btn btn-primary' )
        #{link_to t('ui.or_cancel'), group_orders_path}
  %input#total_balance{name: "total_balance", type: "hidden", value: @ordergroup.account_balance - @group_order.price}/
  %input{name: "version", type: "hidden", value: @version}/
