package WebGUI::Operation::MessageLog; #------------------------------------------------------------------- # WebGUI is Copyright 2001-2003 Plain Black LLC. #------------------------------------------------------------------- # Please read the legal notices (docs/legal.txt) and the license # (docs/license.txt) that came with this distribution before using # this software. #------------------------------------------------------------------- # http://www.plainblack.com info@plainblack.com #------------------------------------------------------------------- use Exporter; use strict qw(vars subs); use URI; use WebGUI::DateTime; use WebGUI::ErrorHandler; use WebGUI::FormProcessor; use WebGUI::HTMLForm; use WebGUI::International; use WebGUI::Macro; use WebGUI::Mail; use WebGUI::MessageLog; use WebGUI::Paginator; use WebGUI::Privilege; use WebGUI::Session; use WebGUI::SQL; use WebGUI::URL; use WebGUI::User; use WebGUI::Utility; use WebGUI::Operation::Profile; our @ISA = qw(Exporter); our @EXPORT = qw(&www_viewMessageLog &www_viewMessageLogMessage); #------------------------------------------------------------------- sub www_viewMessageLog { my (%status, @data, $output, $sth, @row, $i, $p); if (WebGUI::Privilege::isInGroup(2,$session{user}{userId})) { %status = (notice=>WebGUI::International::get(551),pending=>WebGUI::International::get(552),completed=>WebGUI::International::get(350)); $output = '

'.WebGUI::International::get(159).'

'; $sth = WebGUI::SQL->read("select messageLogId,subject,url,dateOfEntry,status from messageLog where userId=$session{user}{userId} order by dateOfEntry desc"); while (@data = $sth->array) { $row[$i] = ''; $row[$i] .= ''.$data[1].''; $row[$i] .= ''; if ($data[2] ne "") { $data[2] = WebGUI::URL::append($data[2],'mlog='.$data[0]); $row[$i] .= ''; } $row[$i] .= $status{$data[4]}; if ($data[2] ne "") { $row[$i] .= ''; } $row[$i] .= ''.epochToHuman($data[3]).''; $i++; } $sth->finish; $p = WebGUI::Paginator->new(WebGUI::URL::page('op=viewMessageLog'),\@row); $output .= ''; $output .= ''; if ($p->getPage($session{form}{pn}) eq "") { $output .= ''; } else { $output .= $p->getPage($session{form}{pn}); } $output .= '
'.WebGUI::International::get(351).' '.WebGUI::International::get(553).' '.WebGUI::International::get(352).'
'.WebGUI::International::get(353).'
'; $output .= $p->getBarSimple($session{form}{pn}); $output .= WebGUI::Operation::Profile::accountOptions(); } else { $output = WebGUI::Privilege::insufficient(); } return $output; } #------------------------------------------------------------------- sub www_viewMessageLogMessage { my (%status, %data, $output, $sth, @row, $i, $p); tie %data, 'Tie::CPHash'; if (WebGUI::Privilege::isInGroup(2,$session{user}{userId})) { %status = (notice=>WebGUI::International::get(551),pending=>WebGUI::International::get(552),completed=>WebGUI::International::get(350)); $output = '

'.WebGUI::International::get(159).'

'; %data = WebGUI::SQL->quickHash("select * from messageLog where messageLogId=$session{form}{mlog} and userId=$session{user}{userId}"); $output .= ''.$data{subject}.'
'; $output .= epochToHuman($data{dateOfEntry}).'
'; if ($data{url} ne "" && $data{status} eq 'pending') { $data{url} = WebGUI::URL::append($data{url},'mlog='.$data{messageLogId}); $output .= ''; } $output .= $status{$data{status}}.'
'; if ($data{url} ne "") { $output .= '
'; } unless ($data{message} =~ /\/ig || $data{message} =~ /\/ig || $data{message} =~ /\/ig) { $data{message} =~ s/\n/\/g; } $output .= '
'.$data{message}.'

'; if ($data{url} ne "" && $data{status} eq 'pending') { $output .= ''.WebGUI::International::get(554).' · '; } $output .= ''.WebGUI::International::get(354).'

'; $output .= WebGUI::Operation::Profile::accountOptions(); } else { $output = WebGUI::Privilege::insufficient(); } return $output; }