Isso aí. O problema era que você não pode passar parâmetro nos
comandos validates() e invalidFields(). :)
Juan Basso
On 24 jan, 16:41, DrWinux <[EMAIL PROTECTED]> wrote:
> Problema resolvido........
>
> e para algum futuro usuario que tenho a mesma duvida la vai...
>
> MODEL:
> <?php
> class Contact extends AppModel {
>
> var $name = 'Contact';
>
> var $useTable = false;
>
> var $validate = array(
> 'sector' => array('email'),
> 'name' => array(
> 'rule' =>
> array('minLength', '10'),
> 'message' => 'Por favor
> informe uma questão.'
> ),
> 'email' => array(
> 'rule' => array('email'),
> 'message' => 'Por favor
> informe uma questão.'
> ),
> 'telfone' => array(
> 'rule' => array('email'),
> 'message' => 'Por favor
> informe uma questão.'
> ),
> 'subject' => array(
> 'rule' => array('email'),
> 'message' => 'Por favor
> informe uma questão.'
> ),
> 'message' => array(
> 'rule' =>
> array('minLength', '10'),
> 'message' => 'Por favor
> informe uma mensagem.'
> ),
> );
>
> }
>
> ?>
>
> CONTROLLER:
> <?php
> class ContactsController extends AppController {
>
> var $name = 'Contacts';
> var $uses = array('Contact');
> var $helpers = array('Html', 'Form', 'Format', 'Layout');
> var $components = array('Email');
>
> function index()
> {
>
> if ( empty($this->data) ) {
>
> //aqui vc pode setar algum dos campos do form
>
> }else{
>
> $this->Contact->data = $this->data;
>
> if ($this->Contact->invalidFields())
> {
> //Componente que envia o email
> $this->Email->to = '[EMAIL PROTECTED]';
> $this->Email->subject = 'Cake test template email';
> $this->Email->replyTo = '[EMAIL PROTECTED]';
> $this->Email->from = 'Cake Test Account
> <[EMAIL PROTECTED]>';
> $this->Email->template = 'test';
>
> //Do not pass any args to send()
> if ( $this->Email->send() ) {
> $this->Session->setFlash('Template email sent');
> } else {
> $this->Session->setFlash('Template email not
> sent');
> }
> $this->redirect('/contato');
>
> }else{
> $this->redirect('/contato/erro');
>
> }
> }
>
> }}
>
> ?>
>
> VIEW:
> <form action="/contato" method="POST">
> <span class="spanRed">Campos obrigatórios (*).</span>
> <?=$form->label('Contact/name', 'Nome completo(*):');?><br>
> <?=$form->text('Contact/name', array('class' => 'input'));?>
> <?=$form->error('Contact/name');?>
>
> <?=$form->label('Contact/email', 'Email(*):');?><br>
> <?=$form->text('Contact/email', array('class' => 'input'));?>
> <?=$form->error('Contact/email');?>
>
> <?=$form->label('Contact/telefone', 'Telefone(*):');?><br>
> <?=$form->text('Contact/telefone', array('class' =>
> 'input'));?>
> <?=$form->error('Contact/telefone');?>
>
> <?=$form->label('Contact/subject', 'Assunto(*):');?><br>
> <?=$form->text('Contact/subject', array('class' =>
> 'input'));?>
> <?=$form->error('Contact/subject');?>
>
> <?=$form->label('Contact/message', 'Mensagem(*):');?><br>
> <?=$form->textarea('Contact/message', array('class' =>
> 'textearea'));?>
> <?=$form->error('Contact/message');?>
>
> <?=$form->submit('Enviar mensagem', array('class' =>
> 'button'))?>
> </form>
>
> Falopa...
--~--~---------~--~----~------------~-------~--~----~
Recebeu esta mensagem porque está inscrito em Grupo "Cake PHP Português" do
Grupos Google.
Para enviar mensagens para este grupo, envie um email para
[email protected]
Para anular a inscrição neste grupo, envie um email para [EMAIL PROTECTED]
Para mais opções, visite este grupo em
http://groups.google.com/group/cake-php-pt?hl=pt-PT
-~----------~----~----~----~------~----~------~--~---