<?php
require_once 'ComercializacaoController.php';

class Comercializacao_RelacionarmunicipioController extends Zend_Controller_Action {

	public function init() {
		$this->view->title = 'Produto » Comercializações » Município';
	}

	public function indexAction(){
		$id_comercializacao = $this->getRequest()->getParam('id');

		$Comercializacao = new Comercializacao_Model_Comercializacoes();

		$this->view->comercializacao = $Comercializacao->find($id_comercializacao)->current();

		switch ($this->view->comercializacao->tp_comercializacao) {
            case Comercializacao_Model_Comercializacoes::TIPO_ESTADO:
				$this->view->back = '/comercializacao/estado';
				$this->view->title .= ' » Relacionar Estados';
				break;
			case Comercializacao_Model_Comercializacoes::TIPO_MUNICIPIO:
				$this->view->back = '/comercializacao/municipio';
				$this->view->title .= ' » Relacionar Municípios';
				break;
			case Comercializacao_Model_Comercializacoes::TIPO_USUARIO:
				$this->view->back = '/comercializacao/usuario';
				$this->view->title .= ' » Relacionar Usuarios';
				break;
			case Comercializacao_Model_Comercializacoes::TIPO_PROPONENTE:
				$this->view->back = '/comercializacao/proponente';
				$this->view->title .= ' » Relacionar Proponentes';
				break;
            case Comercializacao_Model_Comercializacoes::TIPO_ORCAMENTO:
                $this->view->back = '/comercializacao/orcamento';
                $this->view->title .= ' » Relacionar Orçamentos';
                break;
		}

		$ComercializacaoMunicipio = new Comercializacao_Model_ComercializacoesMunicipios();
		$ModelComercializacao = new Comercializacao_Model_Comercializacoes();

		$Estados = new Sistema_Model_Estados();

		$this->view->estados = $Estados->getEstadoAbas($id_comercializacao);

		$this->view->rel = $ModelComercializacao->getMunicipios($id_comercializacao);

		$this->view->id = $id_comercializacao;
	}

	public function importamunicipiosAction() {
		$this->getHelper('layout')->disableLayout();
		$this->getHelper('ViewRenderer')->setNoRender();

		$result = array();
		$Adapter = new Zend_File_Transfer_Adapter_Http();
		$Adapter->setDestination(APPLICATION_PATH.'/upload_files/temp/');
		$file = $Adapter->getFileInfo();

		if(!$Adapter->receive($file['municipios_csv']['name'])) {
			$result['status'] = 'Erro ao importar municípios!';
		} else {
			$extensao = explode('.',$file['municipios_csv']['name']);
			if($extensao['1'] == 'csv'){
				$arquivo = fopen(APPLICATION_PATH.'/upload_files/temp/' . $file['municipios_csv']['name'], 'r');

				while(($dados = fgetcsv($arquivo, 0, ';')) != false){
					array_push($result,$dados[0]);
				}
				array_shift($result);
				fclose($arquivo);
				$message['status'] = "Importação efetuada com sucesso!";
			} else {
				$message['status'] = "Somente são aceitos arquivos .csv!";
			}
		}

		$Comercializacao = new Comercializacao_Model_Comercializacoes();
		$this->view->comercializacao = $Comercializacao->find($this->getRequest()->getParam('id'))->current();

		$Comercializacao->setMunicipios($result, $this->getRequest()->getParam('id'));
		$this->getResponse()->setBody(Zend_Json::encode($message));
	}

	public function savemunicipioAction() {
		$this->getHelper('ViewRenderer')->setNoRender();
		$this->getHelper('layout')->disableLayout();

		$Comercializacao = new Comercializacao_Model_Comercializacoes();
		$this->view->comercializacao = $Comercializacao->find($this->getRequest()->getParam('id'))->current();

		switch ($this->view->comercializacao->tp_comercializacao) {
			case Comercializacao_Model_Comercializacoes::TIPO_ESTADO:
				$url = '/comercializacao/estado';
				break;
			case Comercializacao_Model_Comercializacoes::TIPO_MUNICIPIO:
				$url = '/comercializacao/municipio';
				break;
			case Comercializacao_Model_Comercializacoes::TIPO_USUARIO:
				$url = '/comercializacao/usuario';
				break;
			case Comercializacao_Model_Comercializacoes::TIPO_PROPONENTE:
				$url = '/comercializacao/proponente';
				break;
            case Comercializacao_Model_Comercializacoes::TIPO_ORCAMENTO:
                $url = '/comercializacao/orcamento';
                break;
		}

		$Comercializacao->setMunicipios($this->getRequest()->getParam('municipios'), $this->getRequest()->getParam('id'));
		$this->_redirect($url);
	}
}
