<?php

$Permissoes = User::getUser(true);

class CidadesController extends GxController {

    var $help = 'Esta é a ajuda';

    public function actionView($id) {
        if (User::getUser()->FUN_TBL_CIDADES != 1) {
            $this->redirect(array("cidades/revendaresponsavel"));
        }
        $model_rc = Regioescidades::model()->find("RCD_IDCIDADE = $id");
        $model_revenda = null;
        if(isset($model_rc->RCD_IDREVENDA)) {
            $model_revenda = Revendas::model()->findByPk($model_rc->RCD_IDREVENDA);
        }

        $this->render('view', array(
            'model' => $this->loadModel($id, 'Cidades'),
            'model_revenda' => $model_revenda,
            'funcionarios' => false
        ));
    }


    public function actionCreate() {
        if (User::getUser()->FUN_TBL_CIDADES != 1) {
            $this->redirect(array("cidades/revendaresponsavel"));
        }
        $model = new Cidades;

        if (isset($_POST['Cidades'])) {
            $model->setAttributes($_POST['Cidades']);

            if ($model->save()) {
                if (Yii::app()->getRequest()->getIsAjaxRequest())
                    Yii::app()->end();
                else
                    $this->redirect(array('view', 'id' => $model->CID_IDCIDADE));
            }
        }

        $this->render('create', array('model' => $model));
    }

    public function actionUpdate($id) {
        if (User::getUser()->FUN_TBL_CIDADES != 1) {
            $this->redirect(array("cidades/revendaresponsavel"));
        }

        $model = $this->loadModel($id, 'Cidades');


        if (isset($_POST['Cidades'])) {
            $model->setAttributes($_POST['Cidades']);

            if ($model->save()) {
                $this->redirect(array('view', 'id' => $model->CID_IDCIDADE));
            }
        }

        $this->render('update', array(
            'model' => $model,
        ));
    }

    public function actionDelete($id) {
        if (User::getUser()->FUN_TBL_CIDADES != 1) {
            $this->redirect(array("cidades/revendaresponsavel"));
        }

        if (Yii::app()->getRequest()->getIsPostRequest()) {
            $this->loadModel($id, 'Cidades')->delete();

            if (!Yii::app()->getRequest()->getIsAjaxRequest())
                $this->redirect(array('admin'));
        } else
            throw new CHttpException(400, 'Sua solicitação é inválida.');
    }

    public function actionAdmin() {
        if (User::getUser()->FUN_TBL_CIDADES != 1) {
            $this->redirect(array("cidades/revendaresponsavel"));
        }

        $model = new Cidades('search');
        $model->unsetAttributes();

        if (isset($_GET['Cidades']))
            $model->setAttributes($_GET['Cidades']);

        $this->render('admin', array(
            'model' => $model,
        ));
    }

    public function actionDynamicCidade() {
        $data = Regioescidades::model()->findAll('RCD_IDREVENDA = :parent_id', array(':parent_id' => (int) $_POST['Fornecedores']['FOR_IDREVENDA']), 'RCD_IDCIDADE', 'CidadeEstado');
        $data = CHtml::listData($data, 'RCD_IDCIDADE', 'CidadeEstado');
        natcasesort($data);
        echo CHtml::tag('option', array('value' => ''), 'Selecione');
        foreach ($data as $value => $CID_DESCRICAO) {
            echo CHtml::tag('option', array('value' => $value), CHtml::encode($CID_DESCRICAO), true);
        }
    }

    public function actionRevendaResponsavel(){
        $model = new Regioescidades('search');
        $model->unsetAttributes();

        if (isset($_GET['Regioescidades']))
            $model->setAttributes($_GET['Regioescidades']);

        $this->render('revendaresponsavel', array(
            'model' => $model,
        ));
    }

    public function actionViewRevendaResponsavel($id){
        $model_rc = Regioescidades::model()->find("RCD_IDCIDADE = $id");
        $model_revenda = Revendas::model()->findByPk($model_rc->RCD_IDREVENDA);

        $model_fr = new FuncionariosRegioes();
        $model_fr->FUR_IDREGIAO = $model_rc->RCD_IDREGIAO;
        $funcionarios = $model_fr->search();

        $this->render('view', array(
            'dadosrevenda' => true,
            'model' => $this->loadModel($id, 'Cidades'),
            'model_revenda' => $model_revenda,
            'funcionarios' => $funcionarios
        ));
    }
}
