Rails.application.routes.draw do
	namespace :ppa do
		resources :areas_tematicas
		resources :eixos
		resources :funcoes, only: [:index, :show]
		resources :indicadores
		resources :impressao_das_receitas

		#post 'ppa/delete', defaults: { format: 'json' }, to: 'ppa#destroy', as: :destroy

		# SUGESTÃO DE CÓDIGO P/ NOVA PROGRAMA
		get 'programas/proximo_codigo/:tipo_de_programa_id/:codigo_programa', defaults: { format: 'json' }, to: 'programas#proximo_codigo', as: :proximo_codigo
		get 'iniciativas/proximo_codigo', defaults: { format: 'json' }, to: 'iniciativas#proximo_codigo', as: :iniciativa_proximo_codigo

		resources :objetivos

		resources :orgaos do
			get 'convenios/relatorio_por_orgao', to: 'orgaos#relatorio_por_orgao', as: :relatorio_por_orgao
		end

		resources :ppas, except: [:destroy] do
			get 'download_contexto', on: :member
			get 'configuracoes', on: :member
			put 'libera_votacao', on: :member
			put 'bloqueia_votacao', on: :member
			put 'libera_propostas', on: :member
			put 'bloqueia_propostas', on: :member
			put 'ativa_ppa_participativo', on: :member
			put 'desativa_ppa_participativo', on: :member
			put 'configura_detalhamento_de_despesas_nas_iniciativas', on: :member
		end

		delete 'deletar', to: 'ppas#destroy', as: :deletar

		get 'programas/resumo_financeiro_dos_programas', to: 'programas#resumo_financeiro_dos_programas', as: :imprimir_resumo_financeiro_dos_programas
		get 'programas/:programa_id/resumo_financeiro_por_programa', to: 'programas#resumo_financeiro_por_programa', as: :imprimir_resumo_financeiro_por_programa

		resources :programas do
			get 'projecoes_de_despesa', to: 'projecoes_de_despesa#edit', on: :member, defaults: { orcador: 'programa' }, as: :projecoes_de_despesa_edit
			put 'projecoes_de_despesa', to: 'projecoes_de_despesa#update', on: :member, defaults: { orcador: 'programa' }, as: :projecoes_de_despesa_update
		end

		resources :iniciativas do
			get 'projecoes_de_despesa', to: 'projecoes_de_despesa#edit', on: :member, defaults: { orcador: 'iniciativa' }, as: :projecoes_de_despesa_edit
			put 'projecoes_de_despesa', to: 'projecoes_de_despesa#update', on: :member, defaults: { orcador: 'iniciativa' }, as: :projecoes_de_despesa_update
		end

		resources :metas, except: [:index, :show]

		resources :regioes

		nested_subresources :micro_regioes, 'regioes/:regiao_id', except: [:show]
		nested_subresources :sub_areas_tematicas, 'areas_tematicas/:area_tematica_id', except: [:show]
		nested_subresources :unidades_orcamentarias, 'orgaos/:orgao_id', except: [:show]

		resources :sub_funcoes, only: [:index]

		# PROPOSTAS
		get 'propostas/imprimir', to: 'propostas#imprimir', as: :propostas_imprimir
		get 'propostas/imprimir_resultado_geral_das_propostas', to: 'propostas#imprimir_resultado_geral_das_propostas', as: :imprimir_resultado_geral_das_propostas
		get 'propostas/imprimir_total_de_votos_das_propostas', 	to: 'propostas#imprimir_total_de_votos_das_propostas', 	as: :imprimir_total_de_votos_das_propostas
		post 'propostas/:id/enviar_email_com_status_atual_da_proposta', to: 'propostas#enviar_email_com_status_atual_da_proposta', as: :enviar_email_com_status_atual_da_proposta
		post 'propostas/new', to: "propostas#create",as: :create
		put 'propostas/:id/edit', to: "propostas#update",as: :update
		get 'propostas/:id/atualizar_status', to: "propostas#update_status",as: :update_status
		get 'propostas/', to: 'propostas#index'
		get 'problemas', to: "propostas#index", as: :problemas, :defaults => { :problema => 'S' }

		# VALORES DO CONVÊNIO
		get 'convenios/:convenio_id/valores_do_convenio', to: 'valores_do_convenio#edit', as: :valores_do_convenio_edit
		put 'convenios/:convenio_id/valores_do_convenio', to: 'valores_do_convenio#update', as: :valores_do_convenio_update

		# RELTÓRIOS DE CONVÊNIOS
		get 'convenios/resumo_de_previsao_de_convenios', to: 'convenios#imprimir_resumo_de_previsao_de_convenios', as: :imprimir_resumo_de_previsao_de_convenios
		get 'convenios/relatorio_por_status', to: 'convenios#imprimir_relatorio_status', as: :relatorio_status
		get 'convenios/relatorio_por_unidade_orcamentaria', to: 'convenios#imprimir_por_unidade_orcamentaria', as: :imprimi_por_unidade_orcamentaria
		get 'convenios/imprimir_convenio', to: 'convenios#relatorio_unico_convenio', as: :relatorio_unico_convenio
		get 'convenios/relatorio_todos_convenios', to: 'convenios#imprimir_todos_os_convenios', as: :imprimir_todos_os_convenios
		get 'convenios/relatorio_por_subarea_tematica_classificacao_ano', to: 'convenios#relatorio_por_subarea_tematica_classificacao_ano', as: :relatorio_de_convenios_por_subarea_tematica_classificacao_ano
		get 'convenios/relatorio_por_subarea_tematica_status_ano', to: 'convenios#relatorio_por_subarea_tematica_status_ano', as: :relatorio_de_convenios_por_subarea_tematica_status_ano
		get 'convenios/relatorio_por_subarea_e_ano', to: 'convenios#relatorio_por_subarea_e_ano', as: :relatorio_por_subarea_e_ano
		get 'convenios/relatorio_por_classificacao_da_receita_status_e_ano', to: 'convenios#relatorio_por_classificacao_da_receita_status_e_ano', as: :relatorio_por_classificacao_da_receita_status_e_ano

		namespace :relatorios do
			post 'preparar_impressao_ppa', to: 'impressao_de_ppa#preparar_impressao_ppa', as: :preparar_impressao_ppa
			post 'prepara_impressao_graficos', to: 'impressao_de_ppa#prepara_impressao_graficos', as: :prepara_impressao_graficos
			post 'imprimir_ppa', to: 'impressao_de_ppa#imprimir_ppa', as: :imprimir_ppa

			get 'gerar_capa', to: 'impressao_de_ppa#gerar_capa', as: :impressao_de_ppa_gerar_capa
			post 'salvar_capa', to: 'impressao_de_ppa#salvar_capa', as: :impressao_de_ppa_salvar_capa

			get 'opcoes', to: 'impressao_de_ppa#opcoes', as: :opcoes_impressao_de_ppa

			get 'dados_do_relatorio_de_criticas', to: 'impressao_de_ppa#dados_do_relatorio_de_criticas'

			get 'prioridades_e_metas', to: 'impressao_de_ppa#prioridades_e_metas', as: :prioridades_e_metas

			get 'graficos', to: 'impressao_de_ppa#graficos', as: :graficos

		end

		put 'finalizar', to: 'ppas#finalizar_ppa', as: :finalizar_ppa
		put 'enviar_para_votacao', to: 'ppas#enviar_para_votacao', as: :enviar_para_votacao
		get 'cidadaos', to: "cidadaos#index"

		resources :propostas
		resources :paginas
		resources :convenios
	end

	namespace :ppa_participativo do
		get '/', to: 'inicio#index'
		get 'participe', to: 'inicio#participe'
		get 'propostas', to: 'inicio#propostas'
		get 'visualizar_propostas', to: 'inicio#visualizar_propostas'
		post 'envia_proposta', to: 'inicio#envia_proposta'
		get 'votar', to: 'inicio#votar'
		post 'envia_votos', to: 'inicio#envia_votos'
	end

end
