RE: [PEAR-DEV] Extending HTML_QuickForms
| From: | Colin Ross | Date: | Mon, 06 Dec 2004 00:02:29 +0000 |
| Subject: | RE: [PEAR-DEV] Extending HTML_QuickForms | ||
| Groups: | php.pear.dev | ||
| Request: | Send a blank email to pear-dev+get-34821@lists.php.net to get a copy of this message | ||
This may sway into off-topic, if the pear-users list is better suited,
let me know:
But with that said... What the heck is the process method help with?
I would think if i had a form with a process method, that would be to
aid the PROCESSING (emailing it, inserting into a db, etc.)
No offense, I love the QuickForm package, but just think that the
process method is kinda useless for any-kind of post-processing.
If its intent was for validating, that has been taken-care of by
user-defined rules and filters. What can we really do with the $values
array it passes offf that we can't with user-defined filters and rules.
I am looking at eventually converting about 40 forms that either send
emails, make webservice calls, insert in to db, etc.
I was hoping to use the process call like a factory method, like so:
$email_config[] = array ('to'->'webmaster@example.com',
'from'->$form$[_elements]['email_address']['value']);
if ($form-process(str 'email',bol FALSE,array $email_config[]))
header(Location: thankyou?form=request-info);
}else{
header(Location: thankyou?form=request-info&error);
}
function email (&form, $combine_uploaded, $email_config){
$email = new FormEmail(&form, $combine_uploaded, $email_config);
if ($email->complete){
return TRUE;
}else
return FALSE;
}
class QuickFormEmailer extends QuickFormProcessor (&form,
$combine_uploaded, $email_config){
// emailing class code here...
}
class QuickFormProcessor(){
// QuickForm Processor Abstract Class
}
-----Original Message-----
From: Justin Patrin [mailto:papercrane@gmail.com]
Sent: Saturday, December 04, 2004 8:17 PM
To: Colin Ross
Cc: pear-dev@lists.php.net
Subject: Re: [PEAR-DEV] Extending HTML_QuickForms
On Sat, 4 Dec 2004 18:02:10 -0800, Colin Ross
<cross@worldstudygroup.com> wrote:
> I am in the process of trying to extend the processing part of
HTML_QuickForm to send an email of the submited values after validation.
> This is very common on websites, a form that send the result via
email.
>
> The only problem is that the process() method only has a values array
of $name=>$value.
>
> Is there a way to specify what you want process to pass off?
> If i could i would like the whole [_elements] array, if not the whole
object (or reference to it) so even the configuration of the mail can
co-exist with the QuickForms'
>
> From what I can tell, the process() method calls a function
(user-define or not) as passes the $value array mentioned earlier, but
nothing else (other than an optional argument for combining files),
therefore, within any fuction here, the form object is out of scope.
>
> Any ideas? I don't want to hack the code unless absolutely
neccesary...
>
Don't extend HTML_QuickForm maybe? Create your own code which gets the
values from the form and passes that and the form object into your
mailer function.
--
Justin Patrin