# -*- coding: utf-8 -*-
class OfWorksController < ApplicationController
  layout 'contracts'
  # Авторизация (файл: controllers/application.rb)
  before_filter :isAuthorization

  # Права доступа (файл: controllers/application.rb)
#  around_filter :isAccessSuper

  before_filter :construct

  def construct

    # Устанавливаем сессионную куку.
    cookies[:sys_dep] = { :value => 'mod' }
    # Сотрудники
    $employeesAll = EmployeesDB.getEmployees("*")
    $employeesGroup = EmployeesDB.getEmployees(session[:user_department])
    
    # Формируем сессию
    params.each { |key, value| session[""+key+""] = value }
    $session = session

  end

 def index
   @of_works = OfWork.all
 end

 def new
   @of_work = OfWork.new
   @works = Work.find(:all, :order => "department, name")
 end

 def create
   @of_work = OfWork.create(params[:of_work])
   if @of_work.new_record?
     flash[:error] = "Ошибка"
   end
   respond_to do |format|
     unless flash.size > 0
       flash[:notice] = 'Запись обновлена'
       format.html { redirect_to of_works_path}
       format.xml  { head :ok }
     else
       format.html { render :action => "new", :of_work => @of_work, :work => Work.find(:all, :order => "department, name") }
     end
   end
 end


 def edit
   @of_work = OfWork.find(params[:id])
   @works = Work.find(:all)
 end


 def update
   @of_work = OfWork.find(params[:id])
   unless params[:of_work][:work_ids]
     @of_work.works.clear
   end
   if @of_work.update_attributes(params[:of_work])
   else
     flash[:error] = "Ошибка"
   end
   respond_to do |format|
     unless flash.size > 0
       flash[:notice] = 'Запись обновлена'
       format.html { redirect_to of_works_path}
       format.xml  { head :ok }
     else
       format.html { render :action => "edit", :of_work => @of_work, work => Work.find(:all, :order => "department, name") }
     end
   end 
 end

 def destroy
   @of_work =   OfWork.find(params[:id])
      if @of_work.destroy
        flash[:notice] = 'Работа № ' + params[:id] + ' была удалена!'
      else
        messages = ''
        flash[:error] = @of_work.errors.each_full {|msg| messages += msg + "<br/>"}
      end
    respond_to do |format|
     format.html { redirect_to of_works_path}
   end
 end




end
