<?php

Goweb::loadClass('Goweb_Db_Model');

/**
 * Goweb Sitemanager 5 Framework
 * @version    5.0.0
 * @category   Frontoffice
 * @package    Form
 * @subpackage Model
 * @author     I&D <dev@goweb.pt>, Pedro Pinto <ppinto@goweb.pt>
 * @copyright  2009 (c) Goweb (http://www.goweb.pt)
*/
class Form_Model_Form extends Goweb_Db_Model {
    
    /**
     * Nome da Tabela
     *
     * @var string
    */
    protected $_table = 'form_form';
    
    /**
     * Chave Primaria
     * 
     * @var string
    */
    protected $_primary = 'id';
    
    /**
     * Campo que sera retornado se um
     * echo do objecto for chamado
     *
     * @var string
    */
    protected $_toString = 'titulo';

    
    /**
     * Metodo obrigatorio. Informa a definicao da tabela
     * referente ao Model em questao.
    */
    protected function _setup() {
        $this->initLang();
        $this->setSyncCols(array('email'));
        $this->titulo           = $this->Char(array('maxlength' => 200,
                                          'notnull' => true,
                                          'label' => translate('T&iacute;tulo')));
        
        $this->mensagem_sucesso = $this->Text(array('form' => 'Rte',
                                                    'theme' => 'simple',
                                                    'height' => '250px',
                                                    'notnull' => true,
                                                    'label' => translate('Mensagem de Sucesso')));
        
        $this->email            = $this->Email(array('label' => translate('Enviar email quando submetido')));
        $this->with_captcha     = $this->Boolean(array('default' => '0', 'label' => translate('Protec&ccedil;&atilde;o contra bots (captcha)')));
        $this->submissoes       = $this->Integer(array('notnull' => false, 'default' => '0', 'show' => false, 'label' => translate('Submiss&otilde;es')));
        $this->actualizado      = $this->Datetime(array('on_update' => '_currentDatetime', 'label' => translate('Actualizado em')));
        $this->criado           = $this->Datetime(array('on_insert' => '_currentDatetime', 'label' => translate('Criado em')));
        $this->ip               = $this->IpAddress(array('on_update' => '_remoteAddress'));
    }
}