<?php

/**
 * This is the model class for table "atas_aprovacoes".
 *
 * The followings are the available columns in table 'atas_aprovacoes':
 * @property integer $ATP_ID
 * @property integer $ATP_ATA
 * @property integer $ATP_FUNCIONARIO
 * @property integer $ATP_SITUACAO
 * @property string $ATP_DATA
 */
class AtasAprovacoes extends GxActiveRecord
{
	public static function model($className=__CLASS__)
	{
		return parent::model($className);
	}

	public function beforeSave() {
		parent::beforeSave();

		if (strpos($this->ATP_DATA, '/') !== false) {
			$this->ATP_DATA = Util::formatDataHoraMysql($this->ATP_DATA);
		}
		return true;
	}
	
	public function afterSave() {
		parent::afterSave();

		$model_historico = new AtasAprovacoesHistorico();

		$model_historico->ATH_APROVACAO = $this->ATP_ID;
        $model_historico->ATH_SITUACAO = $this->ATP_SITUACAO;
        $model_historico->ATH_DATA = date('Y-m-d H:i:s');

        $model_historico->save();
	}

	public function tableName()
	{
		return 'atas_aprovacoes';
	}

	public function behaviors() {
		return array('datetimeI18NBehavior' => array('class' => 'ext.DateTimeI18NBehavior'));
	}

	public static function label($n = 1) {
		return Yii::t('app', 'Aprovações de Atas', $n);
	}

	public static function representingColumn() {
		return 'ATP_ID';
	}

	public function rules()
	{
		return array(
			array('ATP_ATA, ATP_FUNCIONARIO, ATP_SITUACAO, ATP_DATA', 'required'),
			array('ATP_ATA, ATP_FUNCIONARIO, ATP_SITUACAO', 'numerical', 'integerOnly'=>true),

			array('ATP_ID, ATP_ATA, ATP_FUNCIONARIO, ATP_SITUACAO, ATP_DATA', 'safe', 'on'=>'search'),
		);
	}

	public function relations()
	{
		return array(
			'Ata'     => array(self::BELONGS_TO, 'Atas', 'ATP_ATA'),
			'Funcionario'     => array(self::BELONGS_TO, 'Funcionarios', 'ATP_FUNCIONARIO'),
		);
	}

	public function attributeLabels()
	{
		return array(
			'ATP_ID' => 'Código',
			'ATP_ATA' => 'Ata',
			'ATP_FUNCIONARIO' => 'Funcionário',
			'ATP_SITUACAO' => 'Situação',
			'ATP_DATA' => 'Data',
		);
	}

	public function search()
	{
		$criteria=new CDbCriteria;

		$criteria->compare('ATP_ID',$this->ATP_ID);
		$criteria->compare('ATP_ATA',$this->ATP_ATA);
		$criteria->compare('ATP_FUNCIONARIO',$this->ATP_FUNCIONARIO);
		$criteria->compare('ATP_SITUACAO',$this->ATP_SITUACAO);
		$criteria->compare('ATP_DATA',$this->ATP_DATA,true);

		return new CActiveDataProvider($this, array(
			'criteria'=>$criteria,
		));
	}
}
