<?php
$Permissoes = User::getUser(true);
if(!$Permissoes){
    User::blockAction("Você não tem permissão para acessar esta tela");
}
class BrindesAtendimentosController extends GxController {

    var $help = 'Esta é a ajuda';

    public function actionView($id) {
        $this->render('view', array(
            'model' => $this->loadModel($id, 'BrindesAtendimentos'),
        ));
    }

    public function actionCreate() {
        $model = new BrindesAtendimentos;

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

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

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

    public function actionUpdate($id) {
        $model = $this->loadModel($id, 'BrindesAtendimentos');


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

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

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

    public function actionDelete($id) {
        if (Yii::app()->getRequest()->getIsPostRequest()) {
            $this->loadModel($id, 'BrindesAtendimentos')->delete();

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

    public function actionIndex() {
        $dataProvider = new CActiveDataProvider('BrindesAtendimentos');
        $this->render('index', array('dataProvider' => $dataProvider));
    }

    public function actionAdmin() {
        $model = new BrindesAtendimentos('search');
        $model->unsetAttributes();
        if (isset($_GET['BrindesAtendimentos'])) {
            $model->setAttributes($_GET['BrindesAtendimentos']);
        }

        if(isset($_GET['exportar']) && $_GET['exportar'] == 1){
            $this->actionGenerateExcel($model);
        }

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

    public function actionGenerateExcel($model = false) {
        if ($model == false) {
            $model = new BrindesAtendimentos('search');
            if (isset($_GET['BrindesAtendimentos'])) {
                $model->setAttributes($_GET['BrindesAtendimentos']);
            }
        }

        $search = $model->search();
        $dataProvider = $model->search($search->totalItemCount);
        if ($dataProvider === false) {
            throw new CHttpException(400, 'Sua solicitação é inválida. Você não definiu nenhum critério de busca ou seus critérios expiraram por terem sido gerados há mais de 60 minutos');
        }

        $data = $dataProvider->getData();
        Yii::app()->request->sendFile(
            'relatorio-brindes-'. date('Ymd-His') . '.xlsx',
            $this->renderPartial('excelReport', array(
                'model' => $model,
                'data' => $data
            ), true),
            'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet', true
        );
    }

}