<?php

Goweb::loadClass('Goweb_Setup');

/**
 * Goweb Sitemanager 5 Framework
 * @version    5.0.0
 * @category   Frontoffice
 * @package    Catalogo
 * @subpackage Setup
 * @author     I&D <dev@goweb.pt>, Pedro Pinto <ppinto@goweb.pt>
 * @copyright  2009 (c) Goweb (http://www.goweb.pt)
 *
 * As classes _Setup sao utilizadas para a criacao das tabelas
 * relativas aos Models dos Modulos.
 * Para cada Modulo existente no sistema existem ficheiros (Models)
 * que modelam a base de dados.
 * A partir destes Models que o Setup cria as tabelas referentes
 * aos modulos do sistema a ser instalado.
 * 
*/
class Catalogo_Setup extends Goweb_Setup {
    
    /**
     * Nome do modulo
     *
     * @var string
    */
    protected $_nome       = 'Catalogo';
    
    /**
     * Titulo do modulo
     *
     * @var string
    */
    protected $_titulo;
    
    /**
     * Modulo pertence ao menu do backoffice
     *
     * @var boolean
    */
    protected $_menu       = true;

    /**
     * Permitir inclusao de componentes
     *
     * @var boolean
    */
    protected $_componente = true;

    /**
     * Permitir pesquisa no modulo
     *
     * @var boolean
    */
    protected $_pesquisa   = true;

    /**
     * Modulo sujeito a permissoes de utilizadores
     *
     * @var boolean
    */
    protected $_permissao  = true;
    
    /**
     * Contructor da classe
     *
     */
    public function __construct(){
        $this->_titulo     = translate('Catalogo');
    }
    
    /**
     * Este metodo adiciona os Models necessarios ao
     * setup do modulo.
    */
    public function initModels() {
        $this->addModel('Catalogo_Model_Categoria');
        $this->addModel('Catalogo_Model_Produto');
        $this->addModel('Catalogo_Model_Imagem');
        $this->addModel('Catalogo_Model_Ficheiro');
        $this->addModel('Catalogo_Model_Relacao');
        $this->addModel('Catalogo_Model_Ficha');
        $this->addModel('Catalogo_Model_Element');
        $this->addModel('Catalogo_Model_Iva');
        $this->addModel('Catalogo_Model_Cambio');  
        $this->addModel('Catalogo_Model_ProdutoCategoria');
    }
}