tidy (perltidy), simplify and optimise

This commit is contained in:
John W. Krahn 2003-02-04 12:51:39 +00:00
parent 136e01f1a5
commit a3bf55626a

View file

@ -24,337 +24,331 @@ use WebGUI::Session;
use WebGUI::SQL; use WebGUI::SQL;
use WebGUI::URL; use WebGUI::URL;
our @ISA = qw(Exporter); our @ISA = qw(Exporter);
our @EXPORT = qw(&www_listLanguages &www_editLanguage &www_submitTranslation &www_submitTranslationConfirm our @EXPORT = qw(&www_listLanguages &www_editLanguage &www_submitTranslation &www_submitTranslationConfirm
&www_deleteLanguage &www_deleteLanguageConfirm &www_addInternationalMessage &www_addInternationalMessageSave &www_deleteLanguage &www_deleteLanguageConfirm &www_addInternationalMessage &www_addInternationalMessageSave
&www_listInternationalMessages &www_editLanguageSave &www_editInternationalMessage &www_listInternationalMessages &www_editLanguageSave &www_editInternationalMessage
&www_exportTranslation &www_editInternationalMessageSave ); &www_exportTranslation &www_editInternationalMessageSave );
#------------------------------------------------------------------- #-------------------------------------------------------------------
sub _export { sub _export {
my ($sth, %data, $export); tie my %data, 'Tie::CPHash';
tie %data, 'Tie::CPHash'; %data = WebGUI::SQL->quickHash( 'select * from language where languageId=' . $_[ 0 ] );
%data = WebGUI::SQL->quickHash("select * from language where languageId=".$_[0]); my $export = '#Exported from ' . $session{ setting }{ companyName } . ' (http://' . $session{ env }{ SERVER_NAME } . ') by '
$export = "#Exported from ".$session{setting}{companyName}." (http://".$session{env}{SERVER_NAME}.") by " . $session{ user }{ username } . ' (' . $session{ user }{ email } . ")\n"
.$session{user}{username}." (".$session{user}{email}.")\n"; . '#' . $data{ language } . ' translation export for WebGUI ' . $WebGUI::VERSION . ".\n\n"
$export .= "#".$data{language}." translation export for WebGUI ".$WebGUI::VERSION.".\n\n"; . "#language\n\n"
$export .= "#language\n\n"; . 'delete from language where languageId=' . $_[ 0 ] . ";\n"
$export .= "delete from language where languageId=".$_[0].";\n"; . 'insert into language (languageId,language,characterSet,toolbar) values ('
$export .= "insert into language (languageId,language,characterSet,toolbar) values (" . $data{ languageId } . ', ' . quote( $data{ language } ) . ', ' . quote( $data{ characterSet } ) . ', '
.$data{languageId}.", ".quote($data{language}).", ".quote($data{characterSet}).", " . quote( $data{ toolbar } ) . ");\n"
.quote($data{toolbar}).");\n"; . "\n#international messages\n\n";
$export .= "\n#international messages\n\n"; my $sth = WebGUI::SQL->read( 'select * from international where languageId=' . $_[ 0 ] . ' order by lastUpdated desc' );
$sth = WebGUI::SQL->read("select * from international where languageId=".$_[0]." order by lastUpdated desc");
while (%data = $sth->hash) { while ( %data = $sth->hash ) {
$export .= "delete from international where languageId=".$_[0]." and namespace=" $export .= 'delete from international where languageId=' . $_[ 0 ] . ' and namespace='
.quote($data{namespace})." and internationalId=".$data{internationalId}.";\n"; . quote( $data{ namespace } ) . ' and internationalId=' . $data{ internationalId } . ";\n"
$export .= "insert into international (internationalId,languageId,namespace,message,lastUpdated) values (" . 'insert into international (internationalId,languageId,namespace,message,lastUpdated) values ('
.$data{internationalId}.",".$data{languageId}.",".quote($data{namespace}) . $data{ internationalId } . ',' . $data{ languageId } . ',' . quote( $data{ namespace } )
.",".quote($data{message}).", ".$data{lastUpdated}.");\n"; . ',' . quote( $data{ message } ) . ', ' . $data{ lastUpdated } . ");\n";
} }
$sth->finish; $sth->finish;
return $export; return $export;
} }
#------------------------------------------------------------------- #-------------------------------------------------------------------
sub _submenu { sub _submenu {
my (%menu); tie my %menu, 'Tie::IxHash';
tie %menu, 'Tie::IxHash'; $menu{ WebGUI::URL::page( 'op=editLanguage&lid=new' ) } = WebGUI::International::get( 584 );
$menu{WebGUI::URL::page('op=editLanguage&lid=new')} = WebGUI::International::get(584); if ( $session{ form }{ lid } == 1 ) {
if ($session{form}{lid} == 1) { $menu{ WebGUI::URL::page( 'op=addInternationalMessage&lid=1' ) } = 'Add a new message.';
$menu{WebGUI::URL::page('op=addInternationalMessage&lid=1')} = "Add a new message.";
} }
if ($session{form}{lid} ne "new" && $session{form}{lid} ne "") { if ( $session{ form }{ lid } ne "new" && $session{ form }{ lid } ne '' ) {
$menu{WebGUI::URL::page('op=listInternationalMessages&lid='.$session{form}{lid})} = $menu{ WebGUI::URL::page( 'op=listInternationalMessages&lid=' . $session{ form }{ lid } ) } =
WebGUI::International::get(594); WebGUI::International::get( 594 );
$menu{WebGUI::URL::page('op=exportTranslation&lid='.$session{form}{lid})} = WebGUI::International::get(718); $menu{ WebGUI::URL::page( 'op=exportTranslation&lid=' . $session{ form }{ lid } ) } = WebGUI::International::get( 718 );
$menu{WebGUI::URL::page('op=submitTranslation&lid='.$session{form}{lid})} = WebGUI::International::get(593); $menu{ WebGUI::URL::page( 'op=submitTranslation&lid=' . $session{ form }{ lid } ) } = WebGUI::International::get( 593 );
$menu{WebGUI::URL::page('op=editLanguage&lid='.$session{form}{lid})} = WebGUI::International::get(598); $menu{ WebGUI::URL::page( 'op=editLanguage&lid=' . $session{ form }{ lid } ) } = WebGUI::International::get( 598 );
$menu{WebGUI::URL::page("op=deleteLanguage&lid=".$session{form}{lid})} = WebGUI::International::get(791); $menu{ WebGUI::URL::page( 'op=deleteLanguage&lid=' . $session{ form }{ lid } ) } = WebGUI::International::get( 791 );
} }
$menu{WebGUI::URL::page('op=listLanguages')} = WebGUI::International::get(585); $menu{ WebGUI::URL::page( 'op=listLanguages' ) } = WebGUI::International::get( 585 );
return menuWrapper($_[0],\%menu); return menuWrapper( $_[ 0 ], \%menu );
} }
#------------------------------------------------------------------- #-------------------------------------------------------------------
sub www_addInternationalMessage { sub www_addInternationalMessage {
my ($output,$f,$namespace); return WebGUI::Privilege::adminOnly() unless WebGUI::Privilege::isInGroup( 3 );
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3)); my $output = '<h1>Add English Message</h1>';
$output = '<h1>Add English Message</h1>'; my $namespace = $session{ wobject };
$namespace = $session{wobject}; $namespace->{ WebGUI } = 'WebGUI';
$namespace->{WebGUI} = 'WebGUI'; $namespace = { %{ $namespace }, map { 'Auth/' . $_ => 'Authentication: ' . $session{ authentication }->{ $_ } } keys %{ $session{ authentication } } };
$namespace = {%{$namespace}, map {'Auth/'.$_ => 'Authentication: '.$session{authentication}->{$_}} keys(%{$session{authentication}})}; my $f = WebGUI::HTMLForm->new();
$f = WebGUI::HTMLForm->new(); $f->hidden( 'lid', 1 );
$f->hidden("lid",1); $f->hidden( 'op', 'addInternationalMessageSave' );
$f->hidden("op","addInternationalMessageSave"); $f->select( 'namespace', $namespace, 'Namespace', [ 'WebGUI' ] );
$f->select("namespace",$namespace,"Namespace",['WebGUI']); $f->textarea( 'message', 'Message' );
$f->textarea("message","Message");
$f->submit; $f->submit;
$output .= $f->print; $output .= $f->print;
return _submenu($output); return _submenu( $output );
} }
#------------------------------------------------------------------- #-------------------------------------------------------------------
sub www_addInternationalMessageSave { sub www_addInternationalMessageSave {
my ($nextId); my ( $nextId ) = WebGUI::SQL->quickArray( 'select max(internationalId) from international where languageId=1
($nextId) = WebGUI::SQL->quickArray("select max(internationalId) from international where languageId=1 and namespace=' . quote( $session{ form }{ namespace } ) );
and namespace=".quote($session{form}{namespace}));
$nextId++; $nextId++;
WebGUI::SQL->write("insert into international (languageId, internationalId, namespace, message, lastUpdated) values WebGUI::SQL->write( "insert into international (languageId, internationalId, namespace, message, lastUpdated) values
(1,$nextId,".quote($session{form}{namespace}).",".quote($session{form}{message}).",".time().")"); (1,$nextId," . quote( $session{ form }{ namespace } ) . ',' . quote( $session{ form }{ message } ) . ',' . time() . ')' );
return "<b>Message was added with id $nextId.</b>".www_listInternationalMessages(); return "<b>Message was added with id $nextId.</b>" . www_listInternationalMessages();
} }
#------------------------------------------------------------------- #-------------------------------------------------------------------
sub www_deleteLanguage { sub www_deleteLanguage {
my ($output); return WebGUI::Privilege::adminOnly() unless WebGUI::Privilege::isInGroup( 3 );
return WebGUI::Privilege::vitalComponent() if ($session{form}{lid} < 1000 && $session{form}{lid} > 0); return WebGUI::Privilege::vitalComponent() if $session{ form }{ lid } < 1000 and $session{ form }{ lid } > 0;
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3)); my $output = '<h1>' . WebGUI::International::get( 42 ) . '</h1>'
$output .= '<h1>'.WebGUI::International::get(42).'</h1>'; . WebGUI::International::get( 587 ) . '<p>'
$output .= WebGUI::International::get(587).'<p>'; . '<div align="center"><a href="'
$output .= '<div align="center"><a href="'. . WebGUI::URL::page( 'op=deleteLanguageConfirm&lid=' . $session{ form }{ lid } )
WebGUI::URL::page('op=deleteLanguageConfirm&lid='.$session{form}{lid}) . '">' . WebGUI::International::get( 44 ) . '</a>'
.'">'.WebGUI::International::get(44).'</a>'; . '&nbsp;&nbsp;&nbsp;&nbsp;<a href="' . WebGUI::URL::page( 'op=listLanguages' )
$output .= '&nbsp;&nbsp;&nbsp;&nbsp;<a href="'.WebGUI::URL::page('op=listLanguages'). . '">' . WebGUI::International::get( 45 ) . '</a></div>';
'">'.WebGUI::International::get(45).'</a></div>'; return _submenu( $output );
return _submenu($output);
} }
#------------------------------------------------------------------- #-------------------------------------------------------------------
sub www_deleteLanguageConfirm { sub www_deleteLanguageConfirm {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3)); return WebGUI::Privilege::adminOnly() unless WebGUI::Privilege::isInGroup( 3 );
return WebGUI::Privilege::vitalComponent() if ($session{form}{lid} < 1000 && $session{form}{lid} > 0); return WebGUI::Privilege::vitalComponent() if $session{ form }{ lid } < 1000 and $session{ form }{ lid } > 0;
WebGUI::SQL->write("delete from language where languageId=".$session{form}{lid}); WebGUI::SQL->write( 'delete from language where languageId=' . $session{ form }{ lid } );
WebGUI::SQL->write("delete from international where languageId=".$session{form}{lid}); WebGUI::SQL->write( 'delete from international where languageId=' . $session{ form }{ lid } );
WebGUI::SQL->write("delete from userProfileData where fieldName='language' and fieldData=".$session{form}{lid}); WebGUI::SQL->write( q[delete from userProfileData where fieldName='language' and fieldData=] . $session{ form }{ lid } );
$session{form}{lid} = ""; $session{ form }{ lid } = '';
return www_listLanguages(); return www_listLanguages();
} }
#------------------------------------------------------------------- #-------------------------------------------------------------------
sub www_editInternationalMessage { sub www_editInternationalMessage {
my ($output, $message, $f, $language); my ( $output, $message, $f, $language );
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3)); return WebGUI::Privilege::adminOnly() unless WebGUI::Privilege::isInGroup( 3 );
($language) = WebGUI::SQL->quickArray("select language from language where languageId=".$session{form}{lid}); my ( $language ) = WebGUI::SQL->quickArray( 'select language from language where languageId=' . $session{ form }{ lid } );
$output = '<h1>'.WebGUI::International::get(597).'</h1>'; my $output = '<h1>' . WebGUI::International::get( 597 ) . '</h1>';
$f = WebGUI::HTMLForm->new; my $f = WebGUI::HTMLForm->new;
$f->readOnly($session{form}{iid},WebGUI::International::get(601)); $f->readOnly( $session{ form }{ iid }, WebGUI::International::get( 601 ) );
$f->hidden("lid",$session{form}{lid}); $f->hidden( 'lid', $session{ form }{ lid } );
$f->hidden("status",$session{form}{status}); $f->hidden( 'status', $session{ form }{ status } );
$f->hidden("iid",$session{form}{iid}); $f->hidden( 'iid', $session{ form }{ iid } );
$f->hidden("pn",$session{form}{pn}); $f->hidden( 'pn', $session{ form }{ pn } );
$f->hidden("namespace",$session{form}{namespace}); $f->hidden( 'namespace', $session{ form }{ namespace } );
$f->hidden("op","editInternationalMessageSave"); $f->hidden( 'op', 'editInternationalMessageSave' );
($message) = WebGUI::SQL->quickArray("select message from international where internationalId=".$session{form}{iid}." my ( $message ) = WebGUI::SQL->quickArray( 'select message from international where internationalId=' . $session{ form }{ iid }
and namespace='".$session{form}{namespace}."' and languageId=".$session{form}{lid}); . q[ and namespace='] . $session{ form }{ namespace } . q[' and languageId=] . $session{ form }{ lid } );
$f->textarea("message",$language,$message); $f->textarea( 'message', $language, $message );
$f->submit; $f->submit;
($message) = WebGUI::SQL->quickArray("select message from international where internationalId=".$session{form}{iid}." ( $message ) = WebGUI::SQL->quickArray( 'select message from international where internationalId=' . $session{ form }{ iid }
and namespace='".$session{form}{namespace}."' and languageId=1"); . q[ and namespace='] . $session{ form }{ namespace } . q[' and languageId=1] );
$f->readOnly($message,"English"); $f->readOnly( $message, 'English' );
$output .= $f->print; $output .= $f->print;
return _submenu($output); return _submenu( $output );
} }
#------------------------------------------------------------------- #-------------------------------------------------------------------
sub www_editInternationalMessageSave { sub www_editInternationalMessageSave {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3)); return WebGUI::Privilege::adminOnly() unless WebGUI::Privilege::isInGroup( 3 );
if ($session{form}{status} eq "missing") { if ( $session{ form }{ status } eq 'missing' ) {
WebGUI::SQL->write("insert into international (message,namespace,languageId,internationalId,lastUpdated) WebGUI::SQL->write( 'insert into international (message,namespace,languageId,internationalId,lastUpdated) values ('
values (".quote($session{form}{message}).",".quote($session{form}{namespace}) . quote( $session{ form }{ message } ) . ',' . quote( $session{ form }{ namespace } )
.",".$session{form}{lid}.",".$session{form}{iid}.", ".time().")"); . ',' . $session{ form }{ lid } . ',' . $session{ form }{ iid } . ', ' . time() . ')' );
} else {
WebGUI::SQL->write("update international set message=".quote($session{form}{message}).", lastUpdated="
.time()." where namespace=".quote($session{form}{namespace})."
and languageId=".$session{form}{lid}." and internationalId=".$session{form}{iid});
} }
return www_listInternationalMessages(); else {
WebGUI::SQL->write( 'update international set message=' . quote( $session{ form }{ message } )
. ', lastUpdated=' . time() . ' where namespace=' . quote( $session{ form }{ namespace } )
. ' and languageId=' . $session{ form }{ lid } . ' and internationalId=' . $session{ form }{ iid } );
}
return www_listInternationalMessages();
} }
#------------------------------------------------------------------- #-------------------------------------------------------------------
sub www_editLanguage { sub www_editLanguage {
my ($output, $dir, @files, $file, %data, $f, %options); return WebGUI::Privilege::adminOnly() unless WebGUI::Privilege::isInGroup( 3 );
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
tie %data, 'Tie::CPHash'; my $dir = $session{ config }{ extrasPath } . $session{ os }{ slash } . 'toolbar';
$dir = $session{config}{extrasPath}.$session{os}{slash}."toolbar"; opendir my $dh, $dir or WebGUI::ErrorHandler::warn( "Can't open toolbar directory $dir: $!" );
opendir (DIR,$dir) or WebGUI::ErrorHandler::warn("Can't open toolbar directory!"); my @files = grep !/^\.\.?$/, readdir $dh;
@files = readdir(DIR); closedir $dh;
foreach $file (@files) {
if ($file ne ".." && $file ne ".") { my %options;
$options{$file} = $file; @options{ @files } = @files;
}
} tie my %data, 'Tie::CPHash';
closedir(DIR); if ( $session{ form }{ lid } eq 'new' ) {
if ($session{form}{lid} eq "new") { $data{ characterSet } = 'ISO-8859-1';
$data{characterSet} = "ISO-8859-1"; $data{ toolbar } = 'default';
$data{toolbar} = "default";
} else {
%data = WebGUI::SQL->quickHash("select * from language where languageId=".$session{form}{lid});
} }
$output = '<h1>'.WebGUI::International::get(589).'</h1>'; else {
$f = WebGUI::HTMLForm->new; %data = WebGUI::SQL->quickHash( 'select * from language where languageId=' . $session{ form }{ lid } );
$f->readOnly($session{form}{lid},WebGUI::International::get(590)); }
$f->hidden("lid",$session{form}{lid}); my $f = WebGUI::HTMLForm->new;
$f->hidden("op","editLanguageSave"); $f->readOnly( $session{ form }{ lid }, WebGUI::International::get( 590 ) );
$f->text("language",WebGUI::International::get(591),$data{language}); $f->hidden( 'lid', $session{ form }{ lid } );
$f->text("characterSet",WebGUI::International::get(592),$data{characterSet}); $f->hidden( 'op', 'editLanguageSave' );
$f->select("toolbar",\%options,WebGUI::International::get(746),[$data{toolbar}]); $f->text( 'language', WebGUI::International::get( 591 ), $data{ language } );
$f->text( 'characterSet', WebGUI::International::get( 592 ), $data{ characterSet } );
$f->select( 'toolbar', \%options, WebGUI::International::get( 746 ), [ $data{ toolbar } ] );
$f->submit; $f->submit;
$output .= $f->print; return _submenu( '<h1>' . WebGUI::International::get( 589 ) . '</h1>' . $f->print );
return _submenu($output);
} }
#------------------------------------------------------------------- #-------------------------------------------------------------------
sub www_editLanguageSave { sub www_editLanguageSave {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3)); return WebGUI::Privilege::adminOnly() unless WebGUI::Privilege::isInGroup( 3 );
if ($session{form}{lid} eq "new") { if ( $session{ form }{ lid } eq 'new' ) {
$session{form}{lid} = getNextId("languageId"); $session{ form }{ lid } = getNextId( 'languageId' );
WebGUI::SQL->write("insert into language (languageId) values ($session{form}{lid})"); WebGUI::SQL->write( "insert into language (languageId) values ($session{form}{lid})" );
} }
WebGUI::SQL->write("update language set language=".quote($session{form}{language}).", WebGUI::SQL->write( 'update language set language=' . quote( $session{ form }{ language } )
characterSet=".quote($session{form}{characterSet}).", toolbar=".quote($session{form}{toolbar})." . ', characterSet=' . quote( $session{ form }{ characterSet } ) . ', toolbar=' . quote( $session{ form }{ toolbar } )
where languageId=".$session{form}{lid}); . ' where languageId=' . $session{ form }{ lid } );
return www_editLanguage(); return www_editLanguage();
} }
#------------------------------------------------------------------- #-------------------------------------------------------------------
sub www_exportTranslation { sub www_exportTranslation {
$session{header}{mimetype} = 'text/plain'; $session{ header }{ mimetype } = 'text/plain';
return _export($session{form}{lid}); return _export( $session{ form }{ lid } );
} }
#------------------------------------------------------------------- #-------------------------------------------------------------------
sub www_listInternationalMessages { sub www_listInternationalMessages {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3)); return WebGUI::Privilege::adminOnly() unless WebGUI::Privilege::isInGroup( 3 );
my ($output, $sth, $key, $p, $search, $status,%data, %list, $deprecated, $i, $missing, @row, $f, $outOfDate, $ok);
tie %data, 'Tie::CPHash'; tie my %data, 'Tie::CPHash';
%data = WebGUI::SQL->quickHash("select language from language where languageId=".$session{form}{lid}); %data = WebGUI::SQL->quickHash( 'select language from language where languageId=' . $session{ form }{ lid } );
$missing = '<b>'.WebGUI::International::get(596).'</b>';
$outOfDate = '<b>'.WebGUI::International::get(719).'</b>'; my $missing = '<b>' . WebGUI::International::get( 596 ) . '</b>';
$ok = WebGUI::International::get(720); my $outOfDate = '<b>' . WebGUI::International::get( 719 ) . '</b>';
$deprecated = WebGUI::International::get(723); my $ok = WebGUI::International::get( 720 );
$output = '<h1>'.WebGUI::International::get(595).' ('.$data{language}.')</h1>'; my $deprecated = WebGUI::International::get( 723 );
$f = WebGUI::HTMLForm->new(1); my $output = '<h1>' . WebGUI::International::get( 595 ) . ' (' . $data{ language } . ')</h1>';
$f->hidden("op","listInternationalMessages"); my $f = WebGUI::HTMLForm->new( 1 );
$f->hidden("lid",$session{form}{lid}); $f->hidden( 'op', 'listInternationalMessages' );
$f->text("search","",$session{form}{search}); $f->hidden( 'lid', $session{ form }{ lid } );
$f->submit("search"); $f->text( 'search', '', $session{ form }{ search } );
$f->submit( 'search' );
$output .= $f->print; $output .= $f->print;
if ($session{form}{search} ne "") {
$search = " and message like ".quote("%".$session{form}{search}."%"); my $search = ' and message like ' . quote( '%' . $session{ form }{ search } . '%' )
if $session{ form }{ search } ne '';
my $sth = WebGUI::SQL->read( 'select * from international where languageId=' . $session{ form }{ lid } . $search );
my %list;
while ( %data = $sth->hash ) {
@{ $list{ "z-$data{namespace}-$data{internationalId}" } }{ qw[id namespace message lastUpdated status] }
= ( @data{ qw[internationalId namespace message lastUpdated] }, 'deleted' );
} }
$sth = WebGUI::SQL->read("select * from international where languageId=".$session{form}{lid}.$search); $sth->finish;
while (%data = $sth->hash) {
$list{"z-".$data{namespace}."-".$data{internationalId}}{id} = $data{internationalId}; $sth = WebGUI::SQL->read( 'select * from international where languageId=1' );
$list{"z-".$data{namespace}."-".$data{internationalId}}{namespace} = $data{namespace}; while ( %data = $sth->hash ) {
$list{"z-".$data{namespace}."-".$data{internationalId}}{message} = $data{message}; my $key = $data{ namespace } . '-' . $data{ internationalId };
$list{"z-".$data{namespace}."-".$data{internationalId}}{lastUpdated} = $data{lastUpdated}; if ( $session{ form }{ search } ne '' ) {
$list{"z-".$data{namespace}."-".$data{internationalId}}{status} = "deleted"; if ( $list{ 'z-' . $key } ) {
} if ( $list{ 'z-' . $key }{ lastUpdated } < $data{ lastUpdated } ) {
$sth->finish; $list{ 'o-' . $key } = delete $list{ 'z-' . $key };
$sth = WebGUI::SQL->read("select * from international where languageId=1"); $list{ 'o-' . $key }{ status } = 'updated';
while (%data = $sth->hash) { }
$key = $data{namespace}."-".$data{internationalId}; else {
if ($session{form}{search} ne "") { $list{ 'q-' . $key } = delete $list{ 'z-' . $key };
if ($list{"z-".$key}) { $list{ 'q-' . $key }{ status } = 'ok';
if ($list{"z-".$key}{lastUpdated} < $data{lastUpdated}) {
$list{"o-".$key} = $list{"z-".$key};
delete($list{"z-".$key});
$list{"o-".$key}{status} = "updated";
} else {
$list{"q-".$key} = $list{"z-".$key};
delete($list{"z-".$key});
$list{"q-".$key}{status} = "ok";
}
}
} else {
unless ($list{"z-".$key}) {
$list{"a-".$key}{namespace} = $data{namespace};
$list{"a-".$key}{id} = $data{internationalId};
$list{"a-".$key}{status} = "missing";
} else {
if ($list{"z-".$key}{lastUpdated} < $data{lastUpdated}) {
$list{"o-".$key} = $list{"z-".$key};
delete($list{"z-".$key});
$list{"o-".$key}{status} = "updated";
} else {
$list{"q-".$key} = $list{"z-".$key};
delete($list{"z-".$key});
$list{"q-".$key}{status} = "ok";
} }
} }
} }
} else {
$sth->finish; unless ( $list{ 'z-' . $key } ) {
foreach $key (sort {$a cmp $b} keys %list) { @{ $list{ 'a-' . $key } }{ qw[namespace id status] }
if ($list{$key}{status} eq "updated") { = ( @data{ qw[namespace internationalId] }, 'missing' );
}
else {
if ( $list{ 'z-' . $key }{ lastUpdated } < $data{ lastUpdated } ) {
$list{ 'o-' . $key } = delete $list{ 'z-' . $key };
$list{ 'o-' . $key }{ status } = 'updated';
}
else {
$list{ 'q-' . $key } = delete $list{ 'z-' . $key };
$list{ 'q-' . $key }{ status } = 'ok';
}
}
}
}
$sth->finish;
my @row;
for my $key ( sort keys %list ) {
my $status;
if ( $list{ $key }{ status } eq 'updated' ) {
$status = $outOfDate; $status = $outOfDate;
} elsif ($list{$key}{status} eq "missing") { }
elsif ( $list{ $key }{ status } eq 'missing' ) {
$status = $missing; $status = $missing;
} elsif ($list{$key}{status} eq "deleted") { }
elsif ( $list{ $key }{ status } eq 'deleted' ) {
$status = $deprecated; $status = $deprecated;
} else { }
else {
$status = $ok; $status = $ok;
} }
$row[$i] = '<tr valign="top"><td nowrap="1">'.$status."</td><td>" push @row, '<tr valign="top"><td nowrap="1">' . $status . '</td><td>'
.editIcon('op=editInternationalMessage&lid='.$session{form}{lid} . editIcon( 'op=editInternationalMessage&lid=' . $session{ form }{ lid }
.'&iid='.$list{$key}{id}.'&namespace='.$list{$key}{namespace}.'&pn='.$session{form}{pn} . '&iid=' . $list{ $key }{ id } . '&namespace=' . $list{ $key }{ namespace } . '&pn=' . $session{ form }{ pn }
."&status=".$list{$key}{status})."</td><td>".$list{$key}{namespace}."</td><td>" . '&status=' . $list{ $key }{ status } ) . '</td><td>' . $list{ $key }{ namespace } . '</td><td>'
.$list{$key}{id}."</td><td>".$list{$key}{message}."</td></tr>\n"; . $list{ $key }{ id } . '</td><td>' . $list{ $key }{ message } . "</td></tr>\n";
$i++; }
} my $p = WebGUI::Paginator->new( WebGUI::URL::page( 'op=listInternationalMessages&lid=' . $session{ form }{ lid } ), \@row, 100 );
$p = WebGUI::Paginator->new(WebGUI::URL::page('op=listInternationalMessages&lid='.$session{form}{lid}),\@row,100);
$output .= $p->getBarTraditional($session{form}{pn}); $output .= $p->getBarTraditional( $session{ form }{ pn } )
$output .= '<table style="font-size: 11px;" width="100%">'; . '<table style="font-size: 11px;" width="100%">'
$output .= '<tr><td class="tableHeader">'.WebGUI::International::get(434).'</td><td class="tableHeader">'. . '<tr><td class="tableHeader">' . WebGUI::International::get( 434 ) . '</td><td class="tableHeader">'
WebGUI::International::get(575).'</td><td class="tableHeader">'.WebGUI::International::get(721) . WebGUI::International::get( 575 ) . '</td><td class="tableHeader">' . WebGUI::International::get( 721 )
.'</td><td class="tableHeader">'.WebGUI::International::get(722) . '</td><td class="tableHeader">' . WebGUI::International::get( 722 )
.'</td><td class="tableHeader" width="100%">'.WebGUI::International::get(230).'</td></tr>'; . '</td><td class="tableHeader" width="100%">' . WebGUI::International::get( 230 ) . '</td></tr>'
$output .= $p->getPage($session{form}{pn}); . $p->getPage( $session{ form }{ pn } )
$output .= '</table>'; . '</table>'
$output .= $p->getBarTraditional($session{form}{pn}); . $p->getBarTraditional( $session{ form }{ pn } );
return _submenu($output); return _submenu( $output );
} }
#------------------------------------------------------------------- #-------------------------------------------------------------------
sub www_listLanguages { sub www_listLanguages {
my ($output, $sth, %data); return WebGUI::Privilege::adminOnly() unless WebGUI::Privilege::isInGroup( 3 );
tie %data, 'Tie::CPHash'; tie my %data, 'Tie::CPHash';
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3)); my $output = '<h1>' . WebGUI::International::get( 586 ) . '</h1>';
$output = '<h1>'.WebGUI::International::get(586).'</h1>'; my $sth = WebGUI::SQL->read( 'select languageId,language from language where languageId<>1 order by language' );
$sth = WebGUI::SQL->read("select languageId,language from language where languageId<>1 order by language"); while ( %data = $sth->hash ) {
while (%data = $sth->hash) { $output .= '<a href="' . WebGUI::URL::page( 'op=editLanguage&lid=' . $data{ languageId } ) . '">' . $data{ language } . '<br>';
$output .= '<a href="'.WebGUI::URL::page("op=editLanguage&lid=".$data{languageId}).'">'.$data{language}.'<br>';
} }
$sth->finish; $sth->finish;
return _submenu($output); return _submenu( $output );
} }
#------------------------------------------------------------------- #-------------------------------------------------------------------
sub www_submitTranslation { sub www_submitTranslation {
my ($output); my $output = '<h1>' . WebGUI::International::get( 42 ) . '</h1>'
$output .= '<h1>'.WebGUI::International::get(42).'</h1>'; . WebGUI::International::get( 588 ) . '<p>'
$output .= WebGUI::International::get(588).'<p>'; . '<div align="center"><a href="'
$output .= '<div align="center"><a href="'. . WebGUI::URL::page( 'op=submitTranslationConfirm&lid=' . $session{ form }{ lid } )
WebGUI::URL::page('op=submitTranslationConfirm&lid='.$session{form}{lid}) . '">' . WebGUI::International::get( 44 ) . '</a>'
.'">'.WebGUI::International::get(44).'</a>'; . '&nbsp;&nbsp;&nbsp;&nbsp;<a href="' . WebGUI::URL::page( 'op=listLanguages' )
$output .= '&nbsp;&nbsp;&nbsp;&nbsp;<a href="'.WebGUI::URL::page('op=listLanguages'). . '">' . WebGUI::International::get( 45 ) . '</a></div>';
'">'.WebGUI::International::get(45).'</a></div>'; return _submenu( $output );
return _submenu($output);
} }
#------------------------------------------------------------------- #-------------------------------------------------------------------
sub www_submitTranslationConfirm { sub www_submitTranslationConfirm {
WebGUI::Mail::send("info\@plainblack.com","International Message Submission",_export($session{form}{lid})); WebGUI::Mail::send( 'info@plainblack.com', 'International Message Submission', _export( $session{ form }{ lid } ) );
return www_editLanguage(); return www_editLanguage();
} }
1; 1;