Alterando o Cadastro do Joomla




Neste tutorial iremos aprender a mudar o formulário padrão de cadastro do Joomla dando ao internauta duas opções: pessoa jurídica e pessoa física.

Este tutorial visa atender a demanda dos usuários das Comunidades SGC Joomla e Joomla Brasil que abriram e participaram de tópico relativo ao assunto.

O tutorial é técnico e não irei entrar no mérito do que é um banco de dados, o que é MVC, o que é uma tabela e etc… Você pode verificar em nosso portal ou na Internet e aprofundar-se no assunto.

JoomlaTR_Wallpaper_by_Grafi_Ray

Perguntas que podem estar passando pela sua cabeça:
1) Saindo uma nova versão do Joomla, vou perder o formulário?
Não, o Joomla é todo orientado a objeto e nós iremos alterar apenas o arquivo default.php da visão register do componente com_users e a tabela user.
Via de regra as atualizações de segurança não atingem as visões e caso ocorra, basta salvar o arquivo default.php antes de atualizar  o Joomla e depois transferir o arquivo de novo para o provedor.
2) Por quê você não usa o CB?
Por que para este fim, não encontrei no CB, a melhor solução.
3) Será disponibilizada uma video-aula?
Sim, para os alunos do curso a distância.
Objetivo do Tutorial:
1) Mudar o cadastro padrão do Joomla e selecionar o tipo de form de acordo com a preferência do usuário.
Ao trabalho
Por padrão, o formulário de cadastro do Joomla, possui os seguintes campos:
Nome, Nome de Usuário, Email, Senha e Verificar Senha
Para alterar o formulário nós precisaremos levar em conta o template que está sendo utilizado. Se o template é tableless e utiliza a funcionalidade de abstrair a camada de apresentação do CMS utilizando divs no lugar das tabelas, que é o padrão do joomla, você deverá alterar os arquivos no mesmo.
* Neste caso o caminho para o arquivo será:templates/beez/html/com_user/register/default.php

Perguntas que podem estar passando pela sua cabeça:

1) Saindo uma nova versão do Joomla, vou perder o formulário?

Não, o Joomla é todo orientado a objeto e nós iremos alterar apenas o arquivo default.php da visão register do componente com_users e a tabela user.

Via de regra as atualizações de segurança não atingem as visões e caso ocorra, basta salvar o arquivo default.php antes de atualizar  o Joomla e depois transferir o arquivo de novo para o provedor.

2) Por quê você não usa o CB?

Por que para este fim, não encontrei no CB, a melhor solução.

3) Será disponibilizada uma video-aula?

Sim, para os alunos do curso a distância.

Objetivo do Tutorial:

1) Mudar o cadastro padrão do Joomla e selecionar o tipo de form de acordo com a preferência do usuário.

Ao trabalho

Por padrão, o formulário de cadastro do Joomla, possui os seguintes campos:

Nome, Nome de Usuário, Email, Senha e Verificar Senha

Para alterar o formulário nós precisaremos levar em conta o template que está sendo utilizado. Se o template é tableless e utiliza a funcionalidade de abstrair a camada de apresentação do CMS utilizando divs no lugar das tabelas, que é o padrão do joomla, você deverá alterar os arquivos no mesmo.

* Neste caso o caminho para o arquivo será:templates/beez/html/com_user/register/default.php

1

Para efeito deste tutorial iremos utilizar o template default do Joomla, que não é tableless.

1) Abra o seu editor de PHP preferido e acesse o arquivo default.php que é o layout da view register do componente com_user. O caminho para acessar o arquivo é: components/com_user/views/register/tmpl/default.php

2

2) Identifique no arquivo default.php, o local em que deseja inserir os novos campos CPF, CNPJ e telefone. Eu irei inserir os três novos campos, após o email.


3

3) No frontend você deverá estar vendo a imagem abaixo com os novos campos do formulário:

4

O primeiro passo foi dado, alteramos o default.php que é o arquivo responsável por apresentar à visão, os campos que serão preenchidos pelo usuário. Porém, de nada adianta termos os campos no form se não criarmos no banco de dados, os novos campos na tabela #__users.


5

Agora precisamos informar ao joomla que os campos foram criados na tabela #__users e para tal deveremos alterar o arquivo user.php que está em libraries/joomla/database/table/user.php

6

*novos campos adicionados no arquivo user.php

7

Vamos testar o cadastro?

8

Perceba que o cadastro foi efetuado, porém não houve tratamento para os novos campos e isto causaria problemas caso não fosse corrigido. Sem contar o fato de que o CPF deve aparecer para pessoa jurídica e CNPJ para pessoa jurídica

9

Vamos resolver isso?

Voltemos ao arquivo default.php

1) vamos incluir uma estilização para o arquivo possibilitando a troca de DIV (linhas 03 a 39);

2) vamos colocar um script para validar o CPF, CNPJ e TELEFONE digitados com a utilização de máscaras (linhas 52 a 100) e renomear os campos na tabela para icpficnpjitelefone na tabela #__users. Devemos alterar também as variáveis do arquivo user.php para icpficnpj e itelefone;

2) depois vamos instanciar o script nos campos do formulário;

3) vamos retirar todas as tabelas do arquivo;

4) O próximo passo será utilizar o AJAX em sua forma mais simples para implementar no formulário, a opção de escolher entre pessoa jurídica e física (linhas  64 a 82);

5) Inserimos no formulário, a escolha entre pessoa física e jurídica (linhas 104 a 122);e

6) Aproveitando que estamos com a mão na massa nós iremos colocar uma imagem de fundo para podermos chegar a um resultado próximo ao desenvolvido em um de nossos projetos. (http://www.3c-brasilia.com.br/index.php?option=com_user&view=register&Itemid=60)

Desta forma terminamos a alteração no cadastro e devemos ter chegado ao resultado abaixo:

10

Podemos melhorar o processo final evitando a recarga do form por exemplo e separando o estilo em um arquivo de help. Porém, o foco não é o MVC e sim a  alteração do form de cadastro do Joomla.

Você pode baixar o pacote com os arquivos alterados para os devidos testes em seu ambiente, melhoria no código e etc… clicando aqui.


Comments are closed.

Ajuda para manter o site
Patrocinio
Novidades
Carregando... Carregando...
Categorias
Arquivos
Anuncios