module Pncp
class OrgaosPncpController < ApplicationController
	include ControllerConcern
	before_action :authenticate_usuario!
	before_action :autoriza_usuario!
	before_action :set_orgao_pncp, only: [:show, :edit, :update, :destroy]

	# GET /pncp/orgaos_pncp
	def index
		@q = OrgaoPncp.order(:id).search(params[:q])
		@orgaos_pncp = @q.result(distinct: false).paginate(page: params[:page], per_page: 10)
	end

	# GET /pncp/orgaos_pncp/1
	def show
	end

	# GET /pncp/orgaos_pncp/new
	def new
		@orgao_pncp = OrgaoPncp.new
	end

	# GET /pncp/orgaos_pncp/1/edit
	def edit
	end

	# POST /pncp/orgaos_pncp
	def create
		@orgao_pncp = OrgaoPncp.new(orgao_pncp_params)
		@orgao_pncp.enviado_pncp = false
		@orgao_pncp.autorizado_pncp = false
		

		if @orgao_pncp.save
			redirect_to @orgao_pncp, notice: 'Orgao pncp foi criado(a) com sucesso.'
		else
			render :new
		end
	end

	# PATCH/PUT /pncp/orgaos_pncp/1
	def update
		if @orgao_pncp.update( orgao_pncp_params )
			redirect_to @orgao_pncp, notice: 'Orgao pncp foi atualizado(a) com sucesso.'
		else
			render :edit
		end
	end

	# DELETE /pncp/orgaos_pncp/1
	def destroy
		mensagem = apaga_e_retorna_mensagem(@orgao_pncp)
		redirect_to pncp_orgaos_pncp_url, mensagem
	end

	private
	def set_orgao_pncp
		@orgao_pncp = OrgaoPncp.find( params[:id] )
	end

	# Permite apenas os parâmetros específicos
	def orgao_pncp_params
		params.require(:pncp_orgao_pncp).permit(:cnpj, :razao_social, :poder_id, :esfera_id, :location_url, :enviado_pncp, :autorizado_pncp)
		
	end
end
end
