diff --git a/lib/WebGUI/Operation/International.pm b/lib/WebGUI/Operation/International.pm
index fed401afe..fca3ad28b 100644
--- a/lib/WebGUI/Operation/International.pm
+++ b/lib/WebGUI/Operation/International.pm
@@ -24,337 +24,331 @@ use WebGUI::Session;
use WebGUI::SQL;
use WebGUI::URL;
-our @ISA = qw(Exporter);
-our @EXPORT = qw(&www_listLanguages &www_editLanguage &www_submitTranslation &www_submitTranslationConfirm
- &www_deleteLanguage &www_deleteLanguageConfirm &www_addInternationalMessage &www_addInternationalMessageSave
- &www_listInternationalMessages &www_editLanguageSave &www_editInternationalMessage
- &www_exportTranslation &www_editInternationalMessageSave );
+our @ISA = qw(Exporter);
+our @EXPORT = qw(&www_listLanguages &www_editLanguage &www_submitTranslation &www_submitTranslationConfirm
+&www_deleteLanguage &www_deleteLanguageConfirm &www_addInternationalMessage &www_addInternationalMessageSave
+&www_listInternationalMessages &www_editLanguageSave &www_editInternationalMessage
+&www_exportTranslation &www_editInternationalMessageSave );
#-------------------------------------------------------------------
sub _export {
- my ($sth, %data, $export);
- tie %data, 'Tie::CPHash';
- %data = WebGUI::SQL->quickHash("select * from language where languageId=".$_[0]);
- $export = "#Exported from ".$session{setting}{companyName}." (http://".$session{env}{SERVER_NAME}.") by "
- .$session{user}{username}." (".$session{user}{email}.")\n";
- $export .= "#".$data{language}." translation export for WebGUI ".$WebGUI::VERSION.".\n\n";
- $export .= "#language\n\n";
- $export .= "delete from language where languageId=".$_[0].";\n";
- $export .= "insert into language (languageId,language,characterSet,toolbar) values ("
- .$data{languageId}.", ".quote($data{language}).", ".quote($data{characterSet}).", "
- .quote($data{toolbar}).");\n";
- $export .= "\n#international messages\n\n";
- $sth = WebGUI::SQL->read("select * from international where languageId=".$_[0]." order by lastUpdated desc");
- while (%data = $sth->hash) {
- $export .= "delete from international where languageId=".$_[0]." and namespace="
- .quote($data{namespace})." and internationalId=".$data{internationalId}.";\n";
- $export .= "insert into international (internationalId,languageId,namespace,message,lastUpdated) values ("
- .$data{internationalId}.",".$data{languageId}.",".quote($data{namespace})
- .",".quote($data{message}).", ".$data{lastUpdated}.");\n";
- }
- $sth->finish;
+ tie my %data, 'Tie::CPHash';
+ %data = WebGUI::SQL->quickHash( 'select * from language where languageId=' . $_[ 0 ] );
+ my $export = '#Exported from ' . $session{ setting }{ companyName } . ' (http://' . $session{ env }{ SERVER_NAME } . ') by '
+ . $session{ user }{ username } . ' (' . $session{ user }{ email } . ")\n"
+ . '#' . $data{ language } . ' translation export for WebGUI ' . $WebGUI::VERSION . ".\n\n"
+ . "#language\n\n"
+ . 'delete from language where languageId=' . $_[ 0 ] . ";\n"
+ . 'insert into language (languageId,language,characterSet,toolbar) values ('
+ . $data{ languageId } . ', ' . quote( $data{ language } ) . ', ' . quote( $data{ characterSet } ) . ', '
+ . quote( $data{ toolbar } ) . ");\n"
+ . "\n#international messages\n\n";
+ my $sth = WebGUI::SQL->read( 'select * from international where languageId=' . $_[ 0 ] . ' order by lastUpdated desc' );
+
+ while ( %data = $sth->hash ) {
+ $export .= 'delete from international where languageId=' . $_[ 0 ] . ' and namespace='
+ . quote( $data{ namespace } ) . ' and internationalId=' . $data{ internationalId } . ";\n"
+ . 'insert into international (internationalId,languageId,namespace,message,lastUpdated) values ('
+ . $data{ internationalId } . ',' . $data{ languageId } . ',' . quote( $data{ namespace } )
+ . ',' . quote( $data{ message } ) . ', ' . $data{ lastUpdated } . ");\n";
+ }
+ $sth->finish;
return $export;
}
#-------------------------------------------------------------------
sub _submenu {
- my (%menu);
- tie %menu, 'Tie::IxHash';
- $menu{WebGUI::URL::page('op=editLanguage&lid=new')} = WebGUI::International::get(584);
- if ($session{form}{lid} == 1) {
- $menu{WebGUI::URL::page('op=addInternationalMessage&lid=1')} = "Add a new message.";
+ tie my %menu, 'Tie::IxHash';
+ $menu{ WebGUI::URL::page( 'op=editLanguage&lid=new' ) } = WebGUI::International::get( 584 );
+ if ( $session{ form }{ lid } == 1 ) {
+ $menu{ WebGUI::URL::page( 'op=addInternationalMessage&lid=1' ) } = 'Add a new message.';
}
- if ($session{form}{lid} ne "new" && $session{form}{lid} ne "") {
- $menu{WebGUI::URL::page('op=listInternationalMessages&lid='.$session{form}{lid})} =
- WebGUI::International::get(594);
- $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=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=listLanguages')} = WebGUI::International::get(585);
- return menuWrapper($_[0],\%menu);
+ if ( $session{ form }{ lid } ne "new" && $session{ form }{ lid } ne '' ) {
+ $menu{ WebGUI::URL::page( 'op=listInternationalMessages&lid=' . $session{ form }{ lid } ) } =
+ WebGUI::International::get( 594 );
+ $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=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=listLanguages' ) } = WebGUI::International::get( 585 );
+ return menuWrapper( $_[ 0 ], \%menu );
}
#-------------------------------------------------------------------
sub www_addInternationalMessage {
- my ($output,$f,$namespace);
- return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
- $output = '
Add English Message
';
- $namespace = $session{wobject};
- $namespace->{WebGUI} = 'WebGUI';
- $namespace = {%{$namespace}, map {'Auth/'.$_ => 'Authentication: '.$session{authentication}->{$_}} keys(%{$session{authentication}})};
- $f = WebGUI::HTMLForm->new();
- $f->hidden("lid",1);
- $f->hidden("op","addInternationalMessageSave");
- $f->select("namespace",$namespace,"Namespace",['WebGUI']);
- $f->textarea("message","Message");
+ return WebGUI::Privilege::adminOnly() unless WebGUI::Privilege::isInGroup( 3 );
+ my $output = 'Add English Message
';
+ my $namespace = $session{ wobject };
+ $namespace->{ WebGUI } = 'WebGUI';
+ $namespace = { %{ $namespace }, map { 'Auth/' . $_ => 'Authentication: ' . $session{ authentication }->{ $_ } } keys %{ $session{ authentication } } };
+ my $f = WebGUI::HTMLForm->new();
+ $f->hidden( 'lid', 1 );
+ $f->hidden( 'op', 'addInternationalMessageSave' );
+ $f->select( 'namespace', $namespace, 'Namespace', [ 'WebGUI' ] );
+ $f->textarea( 'message', 'Message' );
$f->submit;
$output .= $f->print;
- return _submenu($output);
+ return _submenu( $output );
}
#-------------------------------------------------------------------
sub www_addInternationalMessageSave {
- my ($nextId);
- ($nextId) = WebGUI::SQL->quickArray("select max(internationalId) from international where languageId=1
- and namespace=".quote($session{form}{namespace}));
+ my ( $nextId ) = WebGUI::SQL->quickArray( 'select max(internationalId) from international where languageId=1
+ and namespace=' . quote( $session{ form }{ namespace } ) );
$nextId++;
- WebGUI::SQL->write("insert into international (languageId, internationalId, namespace, message, lastUpdated) values
- (1,$nextId,".quote($session{form}{namespace}).",".quote($session{form}{message}).",".time().")");
- return "Message was added with id $nextId.".www_listInternationalMessages();
+ WebGUI::SQL->write( "insert into international (languageId, internationalId, namespace, message, lastUpdated) values
+ (1,$nextId," . quote( $session{ form }{ namespace } ) . ',' . quote( $session{ form }{ message } ) . ',' . time() . ')' );
+ return "Message was added with id $nextId." . www_listInternationalMessages();
}
#-------------------------------------------------------------------
sub www_deleteLanguage {
- my ($output);
- return WebGUI::Privilege::vitalComponent() if ($session{form}{lid} < 1000 && $session{form}{lid} > 0);
- return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
- $output .= ''.WebGUI::International::get(42).'
';
- $output .= WebGUI::International::get(587).'';
- $output .= '
';
- return _submenu($output);
+ return WebGUI::Privilege::adminOnly() unless WebGUI::Privilege::isInGroup( 3 );
+ return WebGUI::Privilege::vitalComponent() if $session{ form }{ lid } < 1000 and $session{ form }{ lid } > 0;
+ my $output = '' . WebGUI::International::get( 42 ) . '
'
+ . WebGUI::International::get( 587 ) . ''
+ . '
';
+ return _submenu( $output );
}
#-------------------------------------------------------------------
sub www_deleteLanguageConfirm {
- return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
- return WebGUI::Privilege::vitalComponent() if ($session{form}{lid} < 1000 && $session{form}{lid} > 0);
- 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 userProfileData where fieldName='language' and fieldData=".$session{form}{lid});
- $session{form}{lid} = "";
- return www_listLanguages();
+ return WebGUI::Privilege::adminOnly() unless WebGUI::Privilege::isInGroup( 3 );
+ 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 international where languageId=' . $session{ form }{ lid } );
+ WebGUI::SQL->write( q[delete from userProfileData where fieldName='language' and fieldData=] . $session{ form }{ lid } );
+ $session{ form }{ lid } = '';
+ return www_listLanguages();
}
#-------------------------------------------------------------------
sub www_editInternationalMessage {
- my ($output, $message, $f, $language);
- return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
- ($language) = WebGUI::SQL->quickArray("select language from language where languageId=".$session{form}{lid});
- $output = ''.WebGUI::International::get(597).'
';
- $f = WebGUI::HTMLForm->new;
- $f->readOnly($session{form}{iid},WebGUI::International::get(601));
- $f->hidden("lid",$session{form}{lid});
- $f->hidden("status",$session{form}{status});
- $f->hidden("iid",$session{form}{iid});
- $f->hidden("pn",$session{form}{pn});
- $f->hidden("namespace",$session{form}{namespace});
- $f->hidden("op","editInternationalMessageSave");
- ($message) = WebGUI::SQL->quickArray("select message from international where internationalId=".$session{form}{iid}."
- and namespace='".$session{form}{namespace}."' and languageId=".$session{form}{lid});
- $f->textarea("message",$language,$message);
- $f->submit;
- ($message) = WebGUI::SQL->quickArray("select message from international where internationalId=".$session{form}{iid}."
- and namespace='".$session{form}{namespace}."' and languageId=1");
- $f->readOnly($message,"English");
- $output .= $f->print;
- return _submenu($output);
+ my ( $output, $message, $f, $language );
+ return WebGUI::Privilege::adminOnly() unless WebGUI::Privilege::isInGroup( 3 );
+ my ( $language ) = WebGUI::SQL->quickArray( 'select language from language where languageId=' . $session{ form }{ lid } );
+ my $output = '' . WebGUI::International::get( 597 ) . '
';
+ my $f = WebGUI::HTMLForm->new;
+ $f->readOnly( $session{ form }{ iid }, WebGUI::International::get( 601 ) );
+ $f->hidden( 'lid', $session{ form }{ lid } );
+ $f->hidden( 'status', $session{ form }{ status } );
+ $f->hidden( 'iid', $session{ form }{ iid } );
+ $f->hidden( 'pn', $session{ form }{ pn } );
+ $f->hidden( 'namespace', $session{ form }{ namespace } );
+ $f->hidden( 'op', 'editInternationalMessageSave' );
+ my ( $message ) = WebGUI::SQL->quickArray( 'select message from international where internationalId=' . $session{ form }{ iid }
+ . q[ and namespace='] . $session{ form }{ namespace } . q[' and languageId=] . $session{ form }{ lid } );
+ $f->textarea( 'message', $language, $message );
+ $f->submit;
+ ( $message ) = WebGUI::SQL->quickArray( 'select message from international where internationalId=' . $session{ form }{ iid }
+ . q[ and namespace='] . $session{ form }{ namespace } . q[' and languageId=1] );
+ $f->readOnly( $message, 'English' );
+ $output .= $f->print;
+ return _submenu( $output );
}
#-------------------------------------------------------------------
sub www_editInternationalMessageSave {
- return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
- if ($session{form}{status} eq "missing") {
- WebGUI::SQL->write("insert into international (message,namespace,languageId,internationalId,lastUpdated)
- values (".quote($session{form}{message}).",".quote($session{form}{namespace})
- .",".$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 WebGUI::Privilege::adminOnly() unless WebGUI::Privilege::isInGroup( 3 );
+ if ( $session{ form }{ status } eq 'missing' ) {
+ WebGUI::SQL->write( 'insert into international (message,namespace,languageId,internationalId,lastUpdated) values ('
+ . quote( $session{ form }{ message } ) . ',' . quote( $session{ form }{ namespace } )
+ . ',' . $session{ form }{ lid } . ',' . $session{ form }{ iid } . ', ' . time() . ')' );
}
- 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 {
- my ($output, $dir, @files, $file, %data, $f, %options);
- return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
- tie %data, 'Tie::CPHash';
- $dir = $session{config}{extrasPath}.$session{os}{slash}."toolbar";
- opendir (DIR,$dir) or WebGUI::ErrorHandler::warn("Can't open toolbar directory!");
- @files = readdir(DIR);
- foreach $file (@files) {
- if ($file ne ".." && $file ne ".") {
- $options{$file} = $file;
- }
- }
- closedir(DIR);
- if ($session{form}{lid} eq "new") {
- $data{characterSet} = "ISO-8859-1";
- $data{toolbar} = "default";
- } else {
- %data = WebGUI::SQL->quickHash("select * from language where languageId=".$session{form}{lid});
+ return WebGUI::Privilege::adminOnly() unless WebGUI::Privilege::isInGroup( 3 );
+
+ my $dir = $session{ config }{ extrasPath } . $session{ os }{ slash } . 'toolbar';
+ opendir my $dh, $dir or WebGUI::ErrorHandler::warn( "Can't open toolbar directory $dir: $!" );
+ my @files = grep !/^\.\.?$/, readdir $dh;
+ closedir $dh;
+
+ my %options;
+ @options{ @files } = @files;
+
+ tie my %data, 'Tie::CPHash';
+ if ( $session{ form }{ lid } eq 'new' ) {
+ $data{ characterSet } = 'ISO-8859-1';
+ $data{ toolbar } = 'default';
}
- $output = ''.WebGUI::International::get(589).'
';
- $f = WebGUI::HTMLForm->new;
- $f->readOnly($session{form}{lid},WebGUI::International::get(590));
- $f->hidden("lid",$session{form}{lid});
- $f->hidden("op","editLanguageSave");
- $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}]);
+ else {
+ %data = WebGUI::SQL->quickHash( 'select * from language where languageId=' . $session{ form }{ lid } );
+ }
+ my $f = WebGUI::HTMLForm->new;
+ $f->readOnly( $session{ form }{ lid }, WebGUI::International::get( 590 ) );
+ $f->hidden( 'lid', $session{ form }{ lid } );
+ $f->hidden( 'op', 'editLanguageSave' );
+ $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;
- $output .= $f->print;
- return _submenu($output);
+ return _submenu( '' . WebGUI::International::get( 589 ) . '
' . $f->print );
}
#-------------------------------------------------------------------
sub www_editLanguageSave {
- return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
- if ($session{form}{lid} eq "new") {
- $session{form}{lid} = getNextId("languageId");
- WebGUI::SQL->write("insert into language (languageId) values ($session{form}{lid})");
- }
- WebGUI::SQL->write("update language set language=".quote($session{form}{language}).",
- characterSet=".quote($session{form}{characterSet}).", toolbar=".quote($session{form}{toolbar})."
- where languageId=".$session{form}{lid});
- return www_editLanguage();
+ return WebGUI::Privilege::adminOnly() unless WebGUI::Privilege::isInGroup( 3 );
+ if ( $session{ form }{ lid } eq 'new' ) {
+ $session{ form }{ lid } = getNextId( 'languageId' );
+ WebGUI::SQL->write( "insert into language (languageId) values ($session{form}{lid})" );
+ }
+ WebGUI::SQL->write( 'update language set language=' . quote( $session{ form }{ language } )
+ . ', characterSet=' . quote( $session{ form }{ characterSet } ) . ', toolbar=' . quote( $session{ form }{ toolbar } )
+ . ' where languageId=' . $session{ form }{ lid } );
+ return www_editLanguage();
}
#-------------------------------------------------------------------
sub www_exportTranslation {
- $session{header}{mimetype} = 'text/plain';
- return _export($session{form}{lid});
+ $session{ header }{ mimetype } = 'text/plain';
+ return _export( $session{ form }{ lid } );
}
#-------------------------------------------------------------------
sub www_listInternationalMessages {
- 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';
- %data = WebGUI::SQL->quickHash("select language from language where languageId=".$session{form}{lid});
- $missing = ''.WebGUI::International::get(596).'';
- $outOfDate = ''.WebGUI::International::get(719).'';
- $ok = WebGUI::International::get(720);
- $deprecated = WebGUI::International::get(723);
- $output = ''.WebGUI::International::get(595).' ('.$data{language}.')
';
- $f = WebGUI::HTMLForm->new(1);
- $f->hidden("op","listInternationalMessages");
- $f->hidden("lid",$session{form}{lid});
- $f->text("search","",$session{form}{search});
- $f->submit("search");
+ return WebGUI::Privilege::adminOnly() unless WebGUI::Privilege::isInGroup( 3 );
+
+ tie my %data, 'Tie::CPHash';
+ %data = WebGUI::SQL->quickHash( 'select language from language where languageId=' . $session{ form }{ lid } );
+
+ my $missing = '' . WebGUI::International::get( 596 ) . '';
+ my $outOfDate = '' . WebGUI::International::get( 719 ) . '';
+ my $ok = WebGUI::International::get( 720 );
+ my $deprecated = WebGUI::International::get( 723 );
+ my $output = '' . WebGUI::International::get( 595 ) . ' (' . $data{ language } . ')
';
+ my $f = WebGUI::HTMLForm->new( 1 );
+ $f->hidden( 'op', 'listInternationalMessages' );
+ $f->hidden( 'lid', $session{ form }{ lid } );
+ $f->text( 'search', '', $session{ form }{ search } );
+ $f->submit( 'search' );
$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);
- while (%data = $sth->hash) {
- $list{"z-".$data{namespace}."-".$data{internationalId}}{id} = $data{internationalId};
- $list{"z-".$data{namespace}."-".$data{internationalId}}{namespace} = $data{namespace};
- $list{"z-".$data{namespace}."-".$data{internationalId}}{message} = $data{message};
- $list{"z-".$data{namespace}."-".$data{internationalId}}{lastUpdated} = $data{lastUpdated};
- $list{"z-".$data{namespace}."-".$data{internationalId}}{status} = "deleted";
- }
- $sth->finish;
- $sth = WebGUI::SQL->read("select * from international where languageId=1");
- while (%data = $sth->hash) {
- $key = $data{namespace}."-".$data{internationalId};
- if ($session{form}{search} ne "") {
- if ($list{"z-".$key}) {
- 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";
+ $sth->finish;
+
+ $sth = WebGUI::SQL->read( 'select * from international where languageId=1' );
+ while ( %data = $sth->hash ) {
+ my $key = $data{ namespace } . '-' . $data{ internationalId };
+ if ( $session{ form }{ search } ne '' ) {
+ if ( $list{ 'z-' . $key } ) {
+ 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;
- foreach $key (sort {$a cmp $b} keys %list) {
- if ($list{$key}{status} eq "updated") {
+ else {
+ unless ( $list{ 'z-' . $key } ) {
+ @{ $list{ 'a-' . $key } }{ qw[namespace id status] }
+ = ( @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;
- } elsif ($list{$key}{status} eq "missing") {
+ }
+ elsif ( $list{ $key }{ status } eq 'missing' ) {
$status = $missing;
- } elsif ($list{$key}{status} eq "deleted") {
+ }
+ elsif ( $list{ $key }{ status } eq 'deleted' ) {
$status = $deprecated;
- } else {
+ }
+ else {
$status = $ok;
}
- $row[$i] = '| '.$status." | "
- .editIcon('op=editInternationalMessage&lid='.$session{form}{lid}
- .'&iid='.$list{$key}{id}.'&namespace='.$list{$key}{namespace}.'&pn='.$session{form}{pn}
- ."&status=".$list{$key}{status})." | ".$list{$key}{namespace}." | "
- .$list{$key}{id}." | ".$list{$key}{message}." |
\n";
- $i++;
- }
- $p = WebGUI::Paginator->new(WebGUI::URL::page('op=listInternationalMessages&lid='.$session{form}{lid}),\@row,100);
- $output .= $p->getBarTraditional($session{form}{pn});
- $output .= '';
- $output .= '
';
- $output .= $p->getPage($session{form}{pn});
- $output .= '
';
- $output .= $p->getBarTraditional($session{form}{pn});
- return _submenu($output);
+ push @row, '| ' . $status . ' | '
+ . editIcon( 'op=editInternationalMessage&lid=' . $session{ form }{ lid }
+ . '&iid=' . $list{ $key }{ id } . '&namespace=' . $list{ $key }{ namespace } . '&pn=' . $session{ form }{ pn }
+ . '&status=' . $list{ $key }{ status } ) . ' | ' . $list{ $key }{ namespace } . ' | '
+ . $list{ $key }{ id } . ' | ' . $list{ $key }{ message } . " |
\n";
+ }
+ my $p = WebGUI::Paginator->new( WebGUI::URL::page( 'op=listInternationalMessages&lid=' . $session{ form }{ lid } ), \@row, 100 );
+
+ $output .= $p->getBarTraditional( $session{ form }{ pn } )
+ . ''
+ . '
'
+ . $p->getPage( $session{ form }{ pn } )
+ . '
'
+ . $p->getBarTraditional( $session{ form }{ pn } );
+ return _submenu( $output );
}
#-------------------------------------------------------------------
sub www_listLanguages {
- my ($output, $sth, %data);
- tie %data, 'Tie::CPHash';
- return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
- $output = ''.WebGUI::International::get(586).'
';
- $sth = WebGUI::SQL->read("select languageId,language from language where languageId<>1 order by language");
- while (%data = $sth->hash) {
- $output .= ''.$data{language}.'
';
+ return WebGUI::Privilege::adminOnly() unless WebGUI::Privilege::isInGroup( 3 );
+ tie my %data, 'Tie::CPHash';
+ my $output = '' . WebGUI::International::get( 586 ) . '
';
+ my $sth = WebGUI::SQL->read( 'select languageId,language from language where languageId<>1 order by language' );
+ while ( %data = $sth->hash ) {
+ $output .= '' . $data{ language } . '
';
}
$sth->finish;
- return _submenu($output);
+ return _submenu( $output );
}
#-------------------------------------------------------------------
sub www_submitTranslation {
- my ($output);
- $output .= ''.WebGUI::International::get(42).'
';
- $output .= WebGUI::International::get(588).'';
- $output .= '
';
- return _submenu($output);
+ my $output = '' . WebGUI::International::get( 42 ) . '
'
+ . WebGUI::International::get( 588 ) . ''
+ . '
';
+ return _submenu( $output );
}
#-------------------------------------------------------------------
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();
}
-
-
-
-
1;