From ed6901a0efa147a6ce189f96aecd103bd0c9b367 Mon Sep 17 00:00:00 2001 From: JT Smith Date: Sat, 9 Nov 2002 18:41:52 +0000 Subject: [PATCH] Cleaning up admin interface. --- lib/WebGUI/Operation/Group.pm | 242 +++++++++++++------------ lib/WebGUI/Operation/Shared.pm | 38 ++++ lib/WebGUI/Operation/User.pm | 23 +-- www/extras/toolbar/charcoal/become.gif | Bin 1353 -> 0 bytes www/extras/toolbar/classic/become.gif | Bin 969 -> 0 bytes www/extras/toolbar/default/become.gif | Bin 1340 -> 0 bytes www/extras/toolbar/iconic/become.gif | Bin 606 -> 0 bytes 7 files changed, 172 insertions(+), 131 deletions(-) create mode 100644 lib/WebGUI/Operation/Shared.pm delete mode 100644 www/extras/toolbar/charcoal/become.gif delete mode 100644 www/extras/toolbar/classic/become.gif delete mode 100644 www/extras/toolbar/default/become.gif delete mode 100644 www/extras/toolbar/iconic/become.gif diff --git a/lib/WebGUI/Operation/Group.pm b/lib/WebGUI/Operation/Group.pm index e319afd78..22b09e8ad 100644 --- a/lib/WebGUI/Operation/Group.pm +++ b/lib/WebGUI/Operation/Group.pm @@ -17,6 +17,7 @@ use WebGUI::DateTime; use WebGUI::HTMLForm; use WebGUI::Icon; use WebGUI::International; +use WebGUI::Operation::Shared; use WebGUI::Paginator; use WebGUI::Privilege; use WebGUI::Session; @@ -25,150 +26,151 @@ use WebGUI::URL; use WebGUI::Utility; our @ISA = qw(Exporter); -our @EXPORT = qw(&www_deleteGroup &www_deleteGroupConfirm &www_editGroup &www_editGroupSave &www_listGroups); +our @EXPORT = qw(&www_manageUsersInGroup &www_deleteGroup &www_deleteGroupConfirm &www_editGroup + &www_editGroupSave &www_listGroups); + +#------------------------------------------------------------------- +sub _submenu { + my ($output, %menu); + tie %menu, 'Tie::IxHash'; + $menu{WebGUI::URL::page('op=editGroup&gid=new')} = WebGUI::International::get(90); + unless ($session{form}{op} eq "listGroups" + || $session{form}{gid} eq "new" + || $session{form}{op} eq "deleteGroupConfirm") { + $menu{WebGUI::URL::page("op=editGroup&gid=".$session{form}{gid})} = WebGUI::International::get(753); + $menu{WebGUI::URL::page("op=manageUsersInGroup&gid=".$session{form}{gid})} = WebGUI::International::get(754); + $menu{WebGUI::URL::page("op=deleteGroup&gid=".$session{form}{gid})} = WebGUI::International::get(755); + } + $menu{WebGUI::URL::page("op=listGroups")} = WebGUI::International::get(756); + return menuWrapper($_[0],\%menu); +} #------------------------------------------------------------------- sub www_deleteGroup { + return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3)); my ($output); - if ($session{form}{gid} < 26) { - return WebGUI::Privilege::vitalComponent(); - } elsif (WebGUI::Privilege::isInGroup(3)) { - $output .= helpIcon(15); - $output .= '

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

'; - $output .= WebGUI::International::get(86).'

'; - $output .= '

'.WebGUI::International::get(44).''; - $output .= '    '. - WebGUI::International::get(45).'
'; - return $output; - } else { - return WebGUI::Privilege::adminOnly(); - } + return WebGUI::Privilege::vitalComponent() if ($session{form}{gid} < 26); + $output .= helpIcon(15); + $output .= '

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

'; + $output .= WebGUI::International::get(86).'

'; + $output .= '

'.WebGUI::International::get(44).''; + $output .= '    ' + .WebGUI::International::get(45).'
'; + return _submenu($output); } #------------------------------------------------------------------- sub www_deleteGroupConfirm { - if ($session{form}{gid} < 26) { - return WebGUI::Privilege::vitalComponent(); - } elsif (WebGUI::Privilege::isInGroup(3)) { - WebGUI::SQL->write("delete from groups where groupId=$session{form}{gid}"); - WebGUI::SQL->write("delete from groupings where groupId=$session{form}{gid}"); - return www_listGroups(); - } else { - return WebGUI::Privilege::adminOnly(); - } + return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3)); + return WebGUI::Privilege::vitalComponent() if ($session{form}{gid} < 26); + WebGUI::SQL->write("delete from groups where groupId=$session{form}{gid}"); + WebGUI::SQL->write("delete from groupings where groupId=$session{form}{gid}"); + return www_listGroups(); } #------------------------------------------------------------------- sub www_editGroup { - my ($output, $sth, %group, %hash, $f); + return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3)); + my ($output, %group, $f); tie %group, 'Tie::CPHash'; - tie %hash, 'Tie::CPHash'; - if (WebGUI::Privilege::isInGroup(3)) { - if ($session{form}{gid} eq "new") { - $group{expireAfter} = 314496000; - $group{karmaThreshold} = 1000000000; - } else { - %group = WebGUI::SQL->quickHash("select * from groups where groupId=$session{form}{gid}"); - } - $output .= helpIcon(17); - $output .= '

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

'; - $f = WebGUI::HTMLForm->new; - $f->hidden("op","editGroupSave"); - $f->hidden("gid",$session{form}{gid}); - $f->readOnly($session{form}{gid},WebGUI::International::get(379)); - $f->text("groupName",WebGUI::International::get(84),$group{groupName}); - $f->textarea("description",WebGUI::International::get(85),$group{description}); - $f->interval("expireAfter",WebGUI::International::get(367), - WebGUI::DateTime::secondsToInterval($group{expireAfter})); - if ($session{setting}{useKarma}) { - $f->integer("karmaThreshold",WebGUI::International::get(538),$group{karmaThreshold}); - } else { - $f->hidden("karmaThreshold",$group{karmaThreshold}); - } - $f->submit; - $output .= $f->print; - unless ($session{form}{gid} eq "new") { - $output .= '

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

'; - $output .= ' - - '; - $sth = WebGUI::SQL->read("select users.username,users.userId,groupings.expireDate - from groupings,users where groupings.groupId=$session{form}{gid} and groupings.userId=users.userId - order by users.username"); - while (%hash = $sth->hash) { - $output .= ''; - $output .= ''; - $output .= ''; - } - $sth->finish; - $output .= '
 '.WebGUI::International::get(50).''.WebGUI::International::get(369).'
' - .deleteIcon('op=deleteGrouping&uid='.$hash{userId}.'&gid='.$session{form}{gid}) - .editIcon('op=editGrouping&uid='.$hash{userId}.'&gid='.$session{form}{gid}) - .'' - .$hash{username}.''.epochToHuman($hash{expireDate},"%z").'
'; - } - } else { - $output = WebGUI::Privilege::adminOnly(); - } - return $output; + if ($session{form}{gid} eq "new") { + $group{expireAfter} = 314496000; + $group{karmaThreshold} = 1000000000; + } else { + %group = WebGUI::SQL->quickHash("select * from groups where groupId=$session{form}{gid}"); + } + $output .= helpIcon(17); + $output .= '

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

'; + $f = WebGUI::HTMLForm->new; + $f->hidden("op","editGroupSave"); + $f->hidden("gid",$session{form}{gid}); + $f->readOnly($session{form}{gid},WebGUI::International::get(379)); + $f->text("groupName",WebGUI::International::get(84),$group{groupName}); + $f->textarea("description",WebGUI::International::get(85),$group{description}); + $f->interval("expireAfter",WebGUI::International::get(367), WebGUI::DateTime::secondsToInterval($group{expireAfter})); + if ($session{setting}{useKarma}) { + $f->integer("karmaThreshold",WebGUI::International::get(538),$group{karmaThreshold}); + } else { + $f->hidden("karmaThreshold",$group{karmaThreshold}); + } + $f->submit; + $output .= $f->print; + return _submenu($output); } #------------------------------------------------------------------- sub www_editGroupSave { - if (WebGUI::Privilege::isInGroup(3)) { - if ($session{form}{gid} eq "new") { - $session{form}{gid} = getNextId("groupId"); - WebGUI::SQL->write("insert into groups (groupId) values ($session{form}{gid})"); - } - WebGUI::SQL->write("update groups set groupName=".quote($session{form}{groupName}).", - description=".quote($session{form}{description}).", - expireAfter='".WebGUI::DateTime::intervalToSeconds($session{form}{expireAfter_interval}, - $session{form}{expireAfter_units})."', - karmaThreshold='$session{form}{karmaThreshold}' - where groupId=".$session{form}{gid}); - return www_listGroups(); - } else { - return WebGUI::Privilege::adminOnly(); - } + return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3)); + if ($session{form}{gid} eq "new") { + $session{form}{gid} = getNextId("groupId"); + WebGUI::SQL->write("insert into groups (groupId) values ($session{form}{gid})"); + } + WebGUI::SQL->write("update groups set groupName=".quote($session{form}{groupName}).", + description=".quote($session{form}{description}).", + expireAfter='".WebGUI::DateTime::intervalToSeconds($session{form}{expireAfter_interval}, + $session{form}{expireAfter_units})."', + karmaThreshold='$session{form}{karmaThreshold}' + where groupId=".$session{form}{gid}); + return www_listGroups(); } #------------------------------------------------------------------- sub www_listGroups { + return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3)); my ($output, $p, $sth, @data, @row, $i, $userCount); - if (WebGUI::Privilege::isInGroup(3)) { - $output = helpIcon(10); - $output .= '

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

'; - $output .= '
'.WebGUI::International::get(90).'
'; - $sth = WebGUI::SQL->read("select groupId,groupName,description from groups - where groupId<>1 and groupId<>2 and groupId<>7 order by groupName"); - while (@data = $sth->array) { - $row[$i] = '' - .deleteIcon('op=deleteGroup&gid='.$data[0]) - .editIcon('op=editGroup&gid='.$data[0]) - .''; - $row[$i] .= ''.$data[1].''; - $row[$i] .= ''.$data[2].''; - ($userCount) = WebGUI::SQL->quickArray("select count(*) from groupings where groupId=$data[0]"); - $row[$i] .= ''.$userCount.''; - $row[$i] .= ''; - $i++; - } - $sth->finish; - $p = WebGUI::Paginator->new(WebGUI::URL::page('op=listGroups'),\@row); - $output .= ''; - $output .= ''; - $output .= $p->getPage($session{form}{pn}); - $output .= '
'.WebGUI::International::get(84).'' - .WebGUI::International::get(85).'' - .WebGUI::International::get(748).'
'; - $output .= $p->getBarTraditional($session{form}{pn}); - return $output; - } else { - return WebGUI::Privilege::adminOnly(); + $output = helpIcon(10); + $output .= '

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

'; + $sth = WebGUI::SQL->read("select groupId,groupName,description from groups + where groupId<>1 and groupId<>2 and groupId<>7 order by groupName"); + while (@data = $sth->array) { + $row[$i] = ''; + $row[$i] .= ''.$data[1].''; + $row[$i] .= ''.$data[2].''; + ($userCount) = WebGUI::SQL->quickArray("select count(*) from groupings where groupId=$data[0]"); + $row[$i] .= ''.$userCount.''; + $row[$i] .= ''; + $i++; } + $sth->finish; + $p = WebGUI::Paginator->new(WebGUI::URL::page('op=listGroups'),\@row); + $output .= ''; + $output .= ''; + $output .= $p->getPage($session{form}{pn}); + $output .= '
'.WebGUI::International::get(84).'' + .WebGUI::International::get(85).'' + .WebGUI::International::get(748).'
'; + $output .= $p->getBarTraditional($session{form}{pn}); + return _submenu($output); +} + +#------------------------------------------------------------------- +sub www_manageUsersInGroup { + return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3)); + my ($output, $sth, %hash); + tie %hash, 'Tie::CPHash'; + $output = '

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

'; + $output .= ' + + '; + $sth = WebGUI::SQL->read("select users.username,users.userId,groupings.expireDate + from groupings,users where groupings.groupId=$session{form}{gid} and groupings.userId=users.userId + order by users.username"); + while (%hash = $sth->hash) { + $output .= ''; + $output .= ''; + $output .= ''; + } + $sth->finish; + $output .= '
 '.WebGUI::International::get(50).''.WebGUI::International::get(369).'
' + .deleteIcon('op=deleteGrouping&uid='.$hash{userId}.'&gid='.$session{form}{gid}) + .editIcon('op=editGrouping&uid='.$hash{userId}.'&gid='.$session{form}{gid}) + .'' + .$hash{username}.''.epochToHuman($hash{expireDate},"%z").'
'; + return _submenu($output); } + 1; diff --git a/lib/WebGUI/Operation/Shared.pm b/lib/WebGUI/Operation/Shared.pm new file mode 100644 index 000000000..3d2abe56b --- /dev/null +++ b/lib/WebGUI/Operation/Shared.pm @@ -0,0 +1,38 @@ +package WebGUI::Operation::Shared; + + +#------------------------------------------------------------------- +# WebGUI is Copyright 2001-2002 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; +use WebGUI::International; +use WebGUI::Session; +use WebGUI::SQL; + +our @ISA = qw(Exporter); +our @EXPORT = qw(&menuWrapper); + +#------------------------------------------------------------------- +sub menuWrapper { + my ($output, $key); + $output = ' +
'; + $output .= $_[0]; + $output .= ''; + foreach $key (keys %{$_[1]}) { + $output .= '
  • '.$_[1]->{$key}.''; + } + $output .= '
  • '.WebGUI::International::get(493).''; + $output .= '
  • '; + return $output; +} + +1; diff --git a/lib/WebGUI/Operation/User.pm b/lib/WebGUI/Operation/User.pm index 53390ccfd..2562cafdb 100644 --- a/lib/WebGUI/Operation/User.pm +++ b/lib/WebGUI/Operation/User.pm @@ -30,15 +30,21 @@ use WebGUI::Utility; our @ISA = qw(Exporter); our @EXPORT = qw(&www_editUserKarma &www_editUserKarmaSave &www_editUserGroup &www_editUserProfile &www_editUserProfileSave &www_addUserToGroupSave &www_deleteGrouping &www_editGrouping &www_editGroupingSave &www_becomeUser &www_addUser &www_addUserSave &www_deleteUser &www_deleteUserConfirm &www_editUser &www_editUserSave &www_listUsers); + #------------------------------------------------------------------- sub _submenu { my ($output, %menu); tie %menu, 'Tie::IxHash'; $menu{WebGUI::URL::page("op=addUser")} = WebGUI::International::get(169); - unless ($session{form}{op} eq "listUsers" || $session{form}{op} eq "addUser" || $session{form}{op} eq "deleteUserConfirm") { + unless ($session{form}{op} eq "listUsers" + || $session{form}{op} eq "addUser" + || $session{form}{op} eq "deleteUserConfirm") { $menu{WebGUI::URL::page("op=editUser&uid=".$session{form}{uid})} = WebGUI::International::get(457); $menu{WebGUI::URL::page("op=editUserGroup&uid=".$session{form}{uid})} = WebGUI::International::get(458); $menu{WebGUI::URL::page("op=editUserProfile&uid=".$session{form}{uid})} = WebGUI::International::get(459); + $menu{WebGUI::URL::page('op=viewProfile&uid='.$session{form}{uid})} = WebGUI::International::get(752); + $menu{WebGUI::URL::page('op=becomeUser&uid='.$session{form}{uid})} = WebGUI::International::get(751); + $menu{WebGUI::URL::page('op=deleteUser&uid='.$session{form}{uid})} = WebGUI::International::get(750); if ($session{setting}{useKarma}) { $menu{WebGUI::URL::page("op=editUserKarma&uid=".$session{form}{uid})} = WebGUI::International::get(555); } @@ -141,12 +147,11 @@ sub www_deleteUser { $output .= helpIcon(7); $output .= '

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

    '; $output .= WebGUI::International::get(167).'

    '; - $output .= '

    '.WebGUI::International::get(44).''; $output .= '    '. WebGUI::International::get(45).'
    '; - return $output; + return _submenu($output); } } @@ -384,12 +389,8 @@ sub www_listUsers { } $sth = WebGUI::SQL->read("select * from users $search order by users.username"); while (%data = $sth->hash) { - $row[$i] = '' - .deleteIcon('op=deleteUser&uid='.$data{userId}) - .editIcon('op=editUser&uid='.$data{userId}) - .becomeIcon('op=becomeUser&uid='.$data{userId}); - $row[$i] .= ''; - $row[$i] .= ''; + $row[$i] .= ''.$data{username}.''; #$row[$i] .= ''.epochToHuman($data{dateCreated},"%z").''; #$row[$i] .= ''.epochToHuman($data{lastUpdated},"%z").''; @@ -399,7 +400,7 @@ sub www_listUsers { $sth->finish; $p = WebGUI::Paginator->new(WebGUI::URL::page('op=listUsers&keyword='.$session{form}{keyword}),\@row); $output .= ''; - $output .= ' + $output .= ''; # # '; diff --git a/www/extras/toolbar/charcoal/become.gif b/www/extras/toolbar/charcoal/become.gif deleted file mode 100644 index beeccc17e62805cb561a06601a361fe2b54eed80..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1353 zcmeIx|4$QV90%~HEtF1BjxUj0A#ESD+S9u1HsiQ#Dm%!)N8{LKnefP#!U1j^YR&Nj z$q|C3i&c(|=-H5^1kjaXCQCzr#BDC6xK<5e&L5g(CZuFz5-_nS0bxvc=RdJu_R2d? zKA-2yFHiC*JM>-=Q?n0bf>i*(3t%E>f+Pu&AvKVM4Af8%(vV^x#X<_H4W*$eS`ACl zh@v@K?P*AB7@B4onqo98!yty?7#6b(#cB}Cax9Ax0})Fh#36(c;t_{A7IG}bA%;V& zy31)W$MGB|U<5IuFrqQXsP{03)C0`nmw1c?j77|gJjd`H%WDK)Z3RidjQUvM)d(+% zf*^?k76o3dM2#ehUPB7+h&ERkbg zI3|;0GIdiXZ^|$#6H!GCIjxwc6=GT~0%~A9K*R&&Ou#e~R6{-tnjQzi<6$+X)nTwY z241N7-+%oBa4kirP62Rgi#8L$^c?7%KHEV5M29J7SM}{=LVtFDf4NeWn(lYx3>=xg zKX*6xLctHNwV|xea`}Uh`-bOYeYERipR=;Nw8OC3=6*ud=Ir$4Ra|)lbhRZu_@OsD zHOo_$Yc~_sME2*g)D*L8dHZ^y{jw>&r65@nf4^^EQPgiwpY(JUwXO7@x$jS{KG4`5 zu2}r$kT0Wt%^xhRAFLcXd{jy1l*pVN1R z>#Swx3+;EO$i|u`^1+EwD@nJ6i(ij^c{z5tHo0Qhv6ObOq3IX+)HRhqGJfW%?Mcgy zj0eZ^Iw!t^r9MN;#&f6cr?)mP+ND2!UwI?#Y_Id)oloXxuC99)g?~by)ku5vBc&qjcZVWdgh!#D*T1?xqWjZK0Pyy|57hay diff --git a/www/extras/toolbar/classic/become.gif b/www/extras/toolbar/classic/become.gif deleted file mode 100644 index c7bcc7dea805cc498c657e4a7930cb57e1f6555f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 969 zcmZ?wbhEHbG-Kdr_|5@niSUF@oHY_;U z%pt7Ba$v*4!|ejfUUMW28yLDIjI&xYCO&NFSFmmRbE9C1^JFFVDJqteR2upiVvdDq z7B4+9+cQi)UJ*D?M*rEK$l{lt3oU)UT2FmQKRrcpwpFi}v0C_) zuw1jNQ6ibw7kCyHsd|-a-&*5QtHmnyUDI!RMdhsAY|&Kjg&G_A-d0{wJ=5DEd^+?@ X#Kxlx6O_H@`Rv^E^z<}lCI)K&i$g_i diff --git a/www/extras/toolbar/default/become.gif b/www/extras/toolbar/default/become.gif deleted file mode 100644 index e50248a2e1182f79f29b78a72e661fa518032f17..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1340 zcmeIx?{5=z90&04)pd3YbX{h*V=YNHCR+&!JC)Vb8A_LRXoKKUlbb&fh29@Y^h|Yi*5Ce|j2;PF@gcY$8gq5ryNRn_=kPZhykyZ*_ z2T4&5O4ZR0f~H8CaxgT>&<=*7ybR4URLDz(SSG}J!z>dHd1GNV5f3Heu|y)q#aS*L z=hI#x%?cb66Zy2rbE1%yvSEo2OF~)_I7vi!S%}FZCyQAbbqNs^A*M*YA|pacjFlv= zgo+}nGN&qnib_dROLAFGl$C5*;mfG2hyt@Zm^DBihkOg5)VrPR1p!X5>#baMif{sL8wAlhX3ck{ehN$ zsxSbW!1l@#Dw_bhhhWFR#c?jPJfUmY=DBk3ka5hnaxK}vbgFOye=>MJ;LFV0EIsd< z_vB7r{b0*Y&r)t-V{{H^?CZtqt$S@p2fKki|4qH^$e>+k$&c$Zozp9q5C6r@?|k8< z#kZ_|k{%cp*GxmZWHMpT*e_!CiFxxQt!-}l<9yxR4(}HPwqKGLU(Yb^PgZ|3pVr)7 z*Z%C=_$cVTeJgTjwX?3U6HJ}0xwSlPGvlt!Hx@3W&IYf$j@;2iYcGM7&x@a~+Jm;p zkLRrb)c(E|7y{a8>(}#Dk9VCJ-25Ok^OQeD_2+)^{rUqd_3zUk{Bk(A8{`dtbU#0{ z&42CT`a2Ct>;@ShYX*kC_mX8_pl9T(He0X*IDoy?{G8O~kG$yIG>~m+2A8hZpFC!= z%sMxD<8J4~uI?)uuthhUVrv3Zsqyb;+*+e|>OO7udp=w~+A-T9Zop#sZ)?F`SGB&X z|4__OYZ$Kbj6?va+5XY!@e^Lx?n!*;r^kSHSC`g4{e%ldF-zx2o8G*^0;+q!`gM~P z+|zizTOMdN?jJ2q;%ql3HV5r^`^jLs-iiAz%!>F>#9ht4c^oS>zm~4QiRY3d?L+=i zqF{eHQ0&c&y}eXuoO^X`vXL2nFxhl4@P2ROfn!Bq(}C#P>Vhft#<|01l7sgRMtbGk U-Nnm)uigDD|0h+@ViMBfnjEvae=q0 zFfZH8G=^Wt4*oxLW>>q#>Izo}ZBgSh|FvZJ7>v{Yo<6mtP}5vR_}22~6H^oKtny!5 z<-WAg-bO>@P=Cz4Y>T6l;u9Se)unh}Yz=?BAy|lq?O>mc@ywab%#6D`LRVMliSu*J z$uv_G<7Q%H^fi`ZXJv}Bli$+l`)*J4j@F>#Qxc{nD>&Duo=ur zC@CngBRa(4Xb%Sqmk7s(1jT(WT&x8zE;KnbbW6xfX&EFoISFX6gdC^{Ojcyn2wt>i R!uqABryC^maj`I10|4z|h|~Z8
    '.WebGUI::International::get(50).'
    '.WebGUI::International::get(453).''.WebGUI::International::get(454).'