<?php

class BancoController extends Controller
{
		public $layout='//layouts/column2';


	public function filters()
	{
		return array(
			'accessControl',
			'postOnly + delete',
		);
	}

	public function accessRules()
	{
		return array(
			array('allow',  
				'actions'=>array('index','view','create','update','admin','delete'),
				'expression' => array('BancoController', 'iniciarseccion'),
			),
			array('deny',
				'users'=>array('*'),
			),
		);
	}

	
       public static function iniciarseccion() {
            if (!Yii::app()->user->isGuest) {
           
                $session = new CHttpSession;
                $session->open();
                return true;
               
            } else {
                Yii::app()->user->setFlash('danger', Yii::app()->params['sesion']);
                return false;
            }
        }
        
        
	public function actionView($id)
	{
		$model=$this->loadModel($id);
                $this->pageTitle = 'CrediYan - Ver Banco N° '.$id;
                $model->id_usuario_creador = !empty($model->id_usuario_creador)?Usuarios::descripcion($model->id_usuario_creador):null;
                $model->id_usuario_modificador = !empty($model->id_usuario_modificador)?Usuarios::descripcion($model->id_usuario_modificador):null;
                $model->id_usuario_eliminador = !empty($model->id_usuario_eliminador)?Usuarios::descripcion($model->id_usuario_eliminador):null;
                
                $model->dtmfecha_creacion = !empty($model->dtmfecha_creacion)?Utility::fecha_hora($model->dtmfecha_creacion):null;
                $model->dtmfecha_modificacion = !empty($model->dtmfecha_modificacion)?Utility::fecha_hora($model->dtmfecha_modificacion):null;	
                $model->dtmfecha_eliminaacion = !empty($model->dtmfecha_eliminaacion)?Utility::fecha_hora($model->dtmfecha_eliminaacion):null;	

                $model->estatus= $model->estatus==1?'ACTIVO':'INACTIVO';
                
                
		$this->render('view',array(
			'model'=>$model,
		));
	}

	
	public function actionCreate()
	{
		$model=new Banco;
		$this->performAjaxValidation($model);
                $this->pageTitle = 'CrediYan - Registrar Banco';
                $model->estatus=1;
		if(isset($_POST['Banco']))
		{
                    $model->attributes=$_POST['Banco'];
                    
                    if($model->validate()){    
               
                    try
                    {    
                      $agregar= $model->add();
     
                      if ($agregar) {
                      $model->unsetAttributes();     
                      Yii::app()->user->setFlash('success', Yii::app()->params['add']);
                      $this->redirect(array('index'));  
                      }

                    }catch(Exception $e)
                    {
                     Yii::app()->user->setFlash('danger', Yii::app()->params['error']); 
                    }  

                    }    
		}

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


	public function actionUpdate($id)
	{
		$this->pageTitle = 'CrediYan - Modificar Banco';
		$model=$this->loadModel($id);

		$this->performAjaxValidation($model);

		if(isset($_POST['Banco']))
		{
			$model->attributes=$_POST['Banco'];
			      if($model->validate()){    
                    try
                    {
                        
                      $editar=$model->edit($id);  
                        
                      if ($editar) {
                      Yii::app()->user->setFlash('success', Yii::app()->params['edit']);
                      $this->redirect(array('index'));  
                      }

                    }catch(Exception $e)
                    {
                     Yii::app()->user->setFlash('danger', Yii::app()->params['error']); 
                    }  

                    }
		}

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


	public function actionDelete($id)
	{
		//$this->loadModel($id)->delete();
		$model= new Banco();
                $eliminar=$model->borrar($id);

		if(!isset($_GET['ajax']))
			$this->redirect(isset($_POST['returnUrl']) ? $_POST['returnUrl'] : array('admin'));
	}

	
	public function actionIndex()
	{
		$this->pageTitle = 'CrediYan - Bancos';
                if (isset($_GET['pageSize'])) {
                    Yii::app()->user->setState('pageSize', (int) $_GET['pageSize']);
                    unset($_GET['pageSize']);
                }
		$model=new Banco('search');
		$model->unsetAttributes(); 
		if(isset($_GET['Banco']))
			$model->attributes=$_GET['Banco'];

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



	public function loadModel($id)
	{
		$model=Banco::model()->findByPk($id);
		if($model===null)
			throw new CHttpException(404,'The requested page does not exist.');
		return $model;
	}


	protected function performAjaxValidation($model)
	{
		if(isset($_POST['ajax']) && $_POST['ajax']==='banco-form')
		{
			echo CActiveForm::validate($model);
			Yii::app()->end();
		}
	}
}
