# XOOPS

XOOPS é um Sistema de Gerenciamento de Conteúdo, em inglês, Content Management System (CMS). Pronuncia-se foneticamente como "czups" ou "zoo'ps" e é um acrônimo de "eXtensible Object Oriented Portal System".
Segundo o site oficial o XOOPS está sob os termos da GNU - General Public License - GPL (Licença Pública Geral), o que significa que é possível usá-lo e modificá-lo livremente, desde de que o faça de acordo com os termos da licença.

## Características

Sua maior característica é a facilidade de instalação, operação e o fato de existir uma infinidade de módulos que possibilitam agregar mais funções ao portal que se deseja criar. É uma ferramenta poderosa, flexível e fácil de usar na criação e administração dos mais variados tipos de sites. Pode ser usado para criar desde pequenas páginas até portais médios ou grandes. Todas as ações são efetuadas através de uma interface web simples e funcional, deixando aos administradores, praticamente só a tarefa de gerenciar o conteúdo do site.
O software facilita a atualização, alteração e o gerenciamento de publicações eletrônicas em rede, pois as páginas da publicação são geradas dinamicamente, a partir de um banco de dados.

## Requisitos

Tem como requisitos de sistema: um servidor web com PHP com programação orientada a objetos com um banco de dados MySQL.
Um site web em XOOPS pode ser gerenciado sem a necessidade de ferramentas externas ou conhecimentos avançados de tecnologias da Internet, como FTP, HTML, JavaScript, CGI, etc. Contando com diversos recursos modulares: administração de associados, troca simples de lay-out, além da inserção e administração visual de conteúdos.

## Funcionalidades
### Modelos Smarty

Smarty é uma ferramenta de gestão de modelos para PHP que foi incorporada ao XOOPS desde a versão 2.0. Ela possibilita aos administradores um ótimo controle do layout do site, mesmo com pouco conhecimento de PHP. Usando o HTML básico, CSS (Cascading Style Sheets) e as tags do Smarty, os designers podem personalizar seus temas e templates em minutos. Com as tags do Smarty os programadores podem também escrever scripts pequenos que possibilitam o uso de dados do site e dos utilizadores (nome do site, slogan, url do site, nomes e ID´s dos utilizadores, etc) dentro do código HTML do tema ou dos templates usados. O Smarty também implementa um sistema de "cache" que armazena temas e templates, possibilitando uma rápida recuperação dos dados. Este recurso aumenta muito a velocidade de carregamento de qualquer site XOOPS Cube.

### Permissões de acesso baseado em Grupos

XOOPS possui um sistema de registro de utilizadores – você pode opcionalmente exigir que o utilizador se registre para poder acessar certas áreas ou funções do site. Por exemplo, muitos sites requerem que o utilizador se registre para poder enviar notícias, postar nos fóruns, acessar uma sessão de downloads, etc. Os direitos de acesso e administração de um site XOOPS, são configurados num sitema de permissão bem flexível baseado em "grupos de utilizadores". Os grupos criados por padrão são: utilizadores anônimos, membros ou utilizadores registrados e webmasters ou administradores. Logicamente você pode criar quantos grupos forem necessários para gerenciar seu site, dando a eles os direitos e permissões que quiser, incluindo:
* Quais os blocos que podem ser vistos
* Quais os módulos que podem ser acessados
* Quais os módulos que podem ser administrados
* Quais os aspectos do sistema que podem ser modificados

### Gerenciamento de associados

O XOOPS inclui ferramentas para um gerenciamento de utilizadores muito fácil e seguro. Estas ferramentas possibilitam a busca por utilizadores seguindo vários critérios, enviar e-mail e mensagens privadas para eles, além de todas as configurações de permissões de acesso e utilização de funções características a cada grupo.
Enviar e-mail para os utilizadores é um processo bem simples. Caso necessite, você pode enviar os e-mails para um grupo por vez.

### Suporte a Múltiplos Idiomas

Todo o idioma do sistema pode ser facilmente alterado apenas instalando-se um novo pacote de tradução. Atualmente existem os seguintes pacotes: Português("portuguese" ou pt_utf8; variações como "portuguesebr" não seguem nenhum padrão), Inglês (nativo), Holandês, Francês, Italiano, Russo, Espanhol, Sueco, Árabe, Japonês e Chinês (simplificado e tradicional, e muitos outros).
Os arquivos de idioma podem ser facilmente encontrados e modificados graças a característica modular do XOOPS. Criar arquivos de tradução adicionais para novos módulos é bem simples. Basta copiar uma pasta de linguagem e traduzir o texto.

### Gerenciador de Imagens

As Imagens podem ser categorizadas e enviadas ao site através desta ferramenta. O Gerenciador de Imagens se abre em uma nova janela e possibilita uma maior comodidade para posteriormente, inserir as imagens enviadas em quaisquer conteúdos. Existe ainda um sistema de permissões controlando as dimensões da imagem, seu peso e acesso dos grupos de utilizadores a diferentes categorias de imagens criadas.
O Gerenciador de Imagens possibilita o envio de imagens que podem ser usadas em qualquer lugar do site.

## Processo de Desenvolvimento Organizado

O XOOPS está em constante evolução. Ele vem sendo desenvolvido através de um processo organizado e efetivo, sempre levando em conta a opinião da comunidade mundial. Oito equipes foram criadas para assegurar um desenvolvimento coerente, consistente e contínuo. São elas:
* Desenvolvimento do Núcleo ( core )
* Desenvolvimento de Módulos
* Desenvolvimento de Temas
* Controle de Qualidade
* Suporte
* Documentação
* Relações com as Comunidades
* Desenvolvimento de Produto
As equipes de desenvolvimento, juntamente com as comunidades internacionais XOOPS, se encarregam do contínuo desenvolvimento e melhora do sistema, incluindo novas funcionalidades e a produção de um código de alta qualidade, limpo e seguro.

## Forks

O XOOPS começou como um fork do CMS PHP-Nuke. O histórico das versões passa pelo My PHP-Nuke, Xoops 1.0 até chegar no atual Xoops 2.0. E do próprio XOOPS foram originados vários outros forks. Entre eles:
* RUNCMS, originalmente conhecido como e-XOOPS
* XOOPS Cube, projeto idealizado por Onokazu, o fundador do XOOPS.