Deep recursion on subroutine "CGI::Application::Plugin::ValidateRM::check_rm" at /home/lsweb/public_html/perllib/LSweb/Application/Email.pm line 47. #### package LSweb::Application::Email; #send an email all eamil routines in one place and add to database just in case use strict; use warnings; use base qw(LSweb::Base); use Apache::Reload; use LSweb::Database::Page_Intro; use LSweb::Database::Page_Content; use LSweb::Database::Email; sub setup { my $self = shift; $self->start_mode('email'); $self->run_modes([qw/email email_dpt/]);} sub _submenu { return LSRfm::Database::SubMenus->search(menu => "email", { order_by=>'position ASC'});} sub email { my $self = shift; my $html_template = $self->param('main_template'); my @pageintro = LSweb::Database::Page_Intro->search(page => "email"); my @pagecontent = LSweb::Database::Page_Content->search(page => "email", { order_by=>'contentorder ASC'}); my $output; $html_template->process('template', {wrapper => $self->wrapper(), submenu => \&_submenu, submenuon => "email", pageintro => \@pageintro, pagecontent => \@pagecontent, }, \$output) || die $html_template->error; return $output; } sub email_dpt { my $self = shift; my $q = $self->query(); my $html_template = $self->param('main_template'); my $mail_template = $self->param('mail_template'); # check varibles my ($results, $err_page) = $self->check_rm('email_dpt', { required => [qw/ email_dpt email_dpt_from email_dpt_name email_dpt_subject email_dpt_content /], constraints => {email_dpt_from => 'email'}, filters => ['trim'], msgs => { missing => 'required', invalid => 'invalid' } }); return $err_page if $err_page; # end check # parse all form data my $dpt = $q->param('email_dpt'); my $from = $q->param('email_dpt_from'); my $name = $q->param('email_dpt_name'); my $subject = $q->param('email_dpt_subject'); my $content = $q->param('email_dpt_content'); # set send to address based on select drop down # first email add is value of 0!! my @DEPARTMENTS = qw( editor@lsweb.org.uk webamster@lsweb.org.uk news@lsweb.org.uk ls2@lsweb.org.uk sport@lsweb.org.uk comment@lsweb.org.uk extra@lsweb.org.uk ); my $to = $DEPARTMENTS[$dpt]; # set up vaibles to send to the email template (email) my $vars = { to => $to, from => $from, name => $name, subject => $subject, content => $content }; # send an email with the details $mail_template->process('email/email', $vars, $to, # to? $from, # from? $subject) # subject || die $mail_template->error; # add email to the Database LSweb::Database::Email->create({'dpt_to' => $to, 'dpt_from' => $from, 'dpt_name' => $name, 'dpt_subject' => $subject, 'dpt_content' => $content}); # id and datetime auto fields my @pageintro = LSweb::Database::Page_Intro->search(page => "email"); my @pagecontent = LSweb::Database::Page_Content->search(page => "email", { order_by=>'contentorder ASC'}); my $output; $html_template->process('template', {wrapper => $self->wrapper(), submenu => \&_submenu, submenuon => "email", pageintro => \@pageintro, pagecontent => \@pagecontent, eamil_thanks => "Your Email Has Been Sent", }, \$output) || die $html_template->error; return $output; } 1;