# -*- coding: utf-8 -*-
class MaterialsFromLoginController < ApplicationController
rescue_from ActiveResource::ResourceNotFound, :with => :not_found


  def loginroot_balance
    @login = params[:login]
    begin
      @materials =  Remote::Store.find(:all, :from => "/sdelka/loginroot_balance/#{@login}.xml")
      @empl_id = params[:empl_id]
      render :update do |page|
        page.show 'window2'
        page.replace_html  'yield2', :partial => 'loginroot_materials'
      end
    rescue ActiveResource::ResourceNotFound, ActiveResource::ResourceConflict, ActiveResource::ResourceInvalid
      render :update do |page|
        page.alert 'Логин не найден!'
      end
    end
  end

#    map.connect 'legal_entities/auto_complete', :controller => 'legal_entities', :action => 'auto_complete', :format => 'json'

  def auto_complete
    search = params[:search]
    @materials = Remote::Store.find(:all, :select => "id, name", :from => "/sdelka/assets/#{search}.xml")    
    respond_to do |format|
      format.json { render :json => @materials }
    end

  end

  def save_login
    # "materials"=>{"1605"=>{"count"=>"1"}, "1681"=>{"count"=>""}}, :empl_id
    @employee = Employee.find params[:empl_id]
    @login = params[:login]
    @dms = []
    params[:materials].each do |key, value|
      if (value[:count]).to_i > 0
        @dms << DoneMaterial.new(:material_name => value[:name], :material_id =>key.to_s, :employee_id => @employee.id, :count =>(value[:count].to_i), :store_complete => true, :date => Date.today)
      end      
    end
    render :update do |page|
      page.hide 'window2'
      page.insert_html :bottom, 'materialsArea', :partial => 'new_report_material_from_login', :collection => @dms, :as => :material
    end
  end


protected

  def not_found
    flash[:error] = "Объект не найдет"
  end


end
