changed the privileges API

This commit is contained in:
JT Smith 2004-05-29 05:27:19 +00:00
parent 1f052120ed
commit 8e79f008c7
48 changed files with 758 additions and 749 deletions

View file

@ -12,7 +12,7 @@ package WebGUI::Operation::Admin;
use Exporter;
use strict;
use WebGUI::Privilege;
use WebGUI::Grouping;
use WebGUI::Session;
use WebGUI::SQL;
@ -21,7 +21,7 @@ our @EXPORT = qw(&www_switchOffAdmin &www_switchOnAdmin);
#-------------------------------------------------------------------
sub www_switchOffAdmin {
return "" unless (WebGUI::Privilege::isInGroup(12));
return "" unless (WebGUI::Grouping::isInGroup(12));
WebGUI::SQL->write("update userSession set adminOn=0 where sessionId='$session{var}{sessionId}'");
WebGUI::Session::refreshSessionVars($session{var}{sessionId});
return "";
@ -29,7 +29,7 @@ sub www_switchOffAdmin {
#-------------------------------------------------------------------
sub www_switchOnAdmin {
return "" unless (WebGUI::Privilege::isInGroup(12));
return "" unless (WebGUI::Grouping::isInGroup(12));
WebGUI::SQL->write("update userSession set adminOn=1 where sessionId='$session{var}{sessionId}'");
WebGUI::Session::refreshSessionVars($session{var}{sessionId});
return "";

View file

@ -39,7 +39,7 @@ sub _submenu {
if ($session{form}{systemClipboard} ne "1") {
$menu{WebGUI::URL::page('op=emptyClipboard')} = WebGUI::International::get(950);
}
if ( ($session{setting}{sharedClipboard} ne "1") && (WebGUI::Privilege::isInGroup(3)) ) {
if ( ($session{setting}{sharedClipboard} ne "1") && (WebGUI::Grouping::isInGroup(3)) ) {
$menu{WebGUI::URL::page('op=manageClipboard&systemClipboard=1')} = WebGUI::International::get(954);
if ($session{form}{systemClipboard} eq "1") {
$menu{WebGUI::URL::page('op=emptyClipboard&systemClipboard=1')} = WebGUI::International::get(959);
@ -51,7 +51,7 @@ sub _submenu {
#-------------------------------------------------------------------
sub www_deleteClipboardItem {
return WebGUI::Privilege::insufficient() unless (WebGUI::Privilege::isInGroup(4));
return WebGUI::Privilege::insufficient() unless (WebGUI::Grouping::isInGroup(4));
my ($output);
if ($session{form}{wid} ne "") {
$output .= helpIcon(14);
@ -74,9 +74,9 @@ sub www_deleteClipboardItem {
#-------------------------------------------------------------------
sub www_deleteClipboardItemConfirm {
return WebGUI::Privilege::insufficient() unless (WebGUI::Privilege::isInGroup(4));
return WebGUI::Privilege::insufficient() unless (WebGUI::Grouping::isInGroup(4));
if ($session{form}{wid} ne "") {
if ( ($session{setting}{sharedClipboard} eq "1") || (WebGUI::Privilege::isInGroup(3)) ) {
if ( ($session{setting}{sharedClipboard} eq "1") || (WebGUI::Grouping::isInGroup(3)) ) {
WebGUI::SQL->write("update wobject set pageId=3, "
."bufferDate=".time().", "
."bufferUserId=".$session{user}{userId} .", "
@ -96,7 +96,7 @@ sub www_deleteClipboardItemConfirm {
}
WebGUI::ErrorHandler::audit("moved wobject ". $session{form}{wid} ." from clipboard to trash");
} elsif ($session{form}{pageId} ne "") {
if ( ($session{setting}{sharedClipboard} eq "1") || (WebGUI::Privilege::isInGroup(3)) ) {
if ( ($session{setting}{sharedClipboard} eq "1") || (WebGUI::Grouping::isInGroup(3)) ) {
WebGUI::SQL->write("update page set parentId=3, "
."bufferDate=".time().", "
."bufferUserId=".$session{user}{userId} .", "
@ -122,12 +122,12 @@ sub www_deleteClipboardItemConfirm {
#-------------------------------------------------------------------
sub www_emptyClipboard {
return WebGUI::Privilege::insufficient() unless (WebGUI::Privilege::isInGroup(4));
return WebGUI::Privilege::insufficient() unless (WebGUI::Grouping::isInGroup(4));
my ($output);
$output = helpIcon(67);
$output .= '<h1>'.WebGUI::International::get(42).'</h1>';
$output .= WebGUI::International::get(951).'<p>';
if ( ($session{setting}{sharedClipboard} ne "1") && (WebGUI::Privilege::isInGroup(3)) ) {
if ( ($session{setting}{sharedClipboard} ne "1") && (WebGUI::Grouping::isInGroup(3)) ) {
$output .= '<div align="center"><a href="'.WebGUI::URL::page('op=emptyClipboardConfirm&systemClipboard=1')
.'">'.WebGUI::International::get(44).'</a>';
} else {
@ -141,12 +141,12 @@ sub www_emptyClipboard {
#-------------------------------------------------------------------
sub www_emptyClipboardConfirm {
return WebGUI::Privilege::insufficient() unless (WebGUI::Privilege::isInGroup(4));
return WebGUI::Privilege::insufficient() unless (WebGUI::Grouping::isInGroup(4));
my ($allUsers);
if ($session{setting}{sharedClipboard} eq "1") {
$allUsers = 1;
} elsif ($session{form}{systemClipboard} eq "1") {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
$allUsers = 1;
} else {
$allUsers = 0;
@ -184,7 +184,7 @@ sub www_emptyClipboardConfirm {
#-------------------------------------------------------------------
sub www_manageClipboard {
return WebGUI::Privilege::insufficient() unless (WebGUI::Privilege::isInGroup(4));
return WebGUI::Privilege::insufficient() unless (WebGUI::Grouping::isInGroup(4));
my ($sth, @data, @row, @sorted_row, $i, $p, $allUsers);
my $output = helpIcon(65);
@ -194,7 +194,7 @@ sub www_manageClipboard {
$allUsers = 1;
$output .= '<h1>'. WebGUI::International::get(948) .'</h1>';
} elsif ($session{form}{systemClipboard} eq "1") {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
$allUsers = 1;
$output .= '<h1>'. WebGUI::International::get(955) .'</h1>';
} else {

View file

@ -22,6 +22,7 @@ use strict;
use WebGUI::Collateral;
use WebGUI::CollateralFolder;
use WebGUI::DateTime;
use WebGUI::Grouping;
use WebGUI::HTMLForm;
use WebGUI::Icon;
use WebGUI::International;
@ -55,7 +56,7 @@ sub _submenu {
$menu{WebGUI::URL::page('op=deleteCollateral&cid='.$session{form}{cid})} = WebGUI::International::get(765);
}
$menu{WebGUI::URL::page('op=editCollateralFolder')} = WebGUI::International::get(759);
if (WebGUI::Privilege::isInGroup(3)) {
if (WebGUI::Grouping::isInGroup(3)) {
$menu{WebGUI::URL::page('op=emptyCollateralFolder')} = WebGUI::International::get(980);
$menu{WebGUI::URL::page('op=deleteCollateralFolder')} = WebGUI::International::get(760);
}
@ -66,7 +67,7 @@ sub _submenu {
#-------------------------------------------------------------------
sub www_deleteCollateral {
my $collateral = WebGUI::Collateral->new($session{form}{cid});
return WebGUI::Privilege::insufficient unless ($collateral->get("userId") == $session{user}{userId} || WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::insufficient unless ($collateral->get("userId") == $session{user}{userId} || WebGUI::Grouping::isInGroup(3));
my $output = '<h1>'.WebGUI::International::get(42).'</h1>';
$output .= WebGUI::International::get(774).'<p/><div align="center">';
$output .= '<a href="'.WebGUI::URL::page('op=deleteCollateralConfirm&cid='.$session{form}{cid}).'">'
@ -80,7 +81,7 @@ sub www_deleteCollateral {
#-------------------------------------------------------------------
sub www_deleteCollateralConfirm {
my $collateral = WebGUI::Collateral->new($session{form}{cid});
return WebGUI::Privilege::insufficient unless ($collateral->get("userId") == $session{user}{userId} || WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::insufficient unless ($collateral->get("userId") == $session{user}{userId} || WebGUI::Grouping::isInGroup(3));
$collateral->delete;
WebGUI::Session::deleteScratch("collateralPageNumber");
return www_listCollateral();
@ -89,14 +90,14 @@ sub www_deleteCollateralConfirm {
#-------------------------------------------------------------------
sub www_deleteCollateralFile {
my $collateral = WebGUI::Collateral->new($session{form}{cid});
return WebGUI::Privilege::insufficient unless ($collateral->get("userId") == $session{user}{userId} || WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::insufficient unless ($collateral->get("userId") == $session{user}{userId} || WebGUI::Grouping::isInGroup(3));
$collateral->deleteFile;
return www_editCollateral($collateral);
}
#-------------------------------------------------------------------
sub www_deleteCollateralFolder {
return WebGUI::Privilege::insufficient unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::insufficient unless (WebGUI::Grouping::isInGroup(3));
return WebGUI::Privilege::vitalComponent() unless ($session{scratch}{collateralFolderId} > 999);
my $output = '<h1>'.WebGUI::International::get(42).'</h1>';
$output .= WebGUI::International::get(775).'<p/><div align="center">';
@ -110,7 +111,7 @@ sub www_deleteCollateralFolder {
#-------------------------------------------------------------------
sub www_deleteCollateralFolderConfirm {
return WebGUI::Privilege::insufficient unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::insufficient unless (WebGUI::Grouping::isInGroup(3));
return WebGUI::Privilege::vitalComponent() unless ($session{scratch}{collateralFolderId} > 999);
my $folders = WebGUI::CollateralFolder->getTree({-minimumFields => 1});
if (my $deadFolder = $folders->{$session{scratch}{collateralFolderId}}) {
@ -123,7 +124,7 @@ sub www_deleteCollateralFolderConfirm {
#-------------------------------------------------------------------
sub www_emptyCollateralFolder {
return WebGUI::Privilege::insufficient unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::insufficient unless (WebGUI::Grouping::isInGroup(3));
return WebGUI::Privilege::vitalComponent() unless ($session{scratch}{collateralFolderId} > 999);
my $output = '<h1>'.WebGUI::International::get(42).'</h1>';
$output .= WebGUI::International::get(979).'<p/><div align="center">';
@ -137,7 +138,7 @@ sub www_emptyCollateralFolder {
#-------------------------------------------------------------------
sub www_emptyCollateralFolderConfirm {
return WebGUI::Privilege::insufficient unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::insufficient unless (WebGUI::Grouping::isInGroup(3));
return WebGUI::Privilege::vitalComponent() unless ($session{scratch}{collateralFolderId} > 999);
my @collateralIds = WebGUI::SQL->buildArray("select collateralId from collateral where collateralFolderId=".$session{scratch}{collateralFolderId});
WebGUI::Collateral->multiDelete(@collateralIds);
@ -146,7 +147,7 @@ sub www_emptyCollateralFolderConfirm {
#-------------------------------------------------------------------
sub www_editCollateral {
return WebGUI::Privilege::insufficient unless (WebGUI::Privilege::isInGroup(4));
return WebGUI::Privilege::insufficient unless (WebGUI::Grouping::isInGroup(4));
my ($canEdit, $file, $folderId, $output, $f, $collateral, $image, $error, $x, $y);
if ($session{form}{cid} eq "new") {
$collateral->{collateralType} = $session{form}{type};
@ -159,7 +160,7 @@ sub www_editCollateral {
my $c = $_[1] || WebGUI::Collateral->new($session{form}{cid});
$collateral = $c->get;
}
$canEdit = ($collateral->{userId} == $session{user}{userId} || WebGUI::Privilege::isInGroup(3));
$canEdit = ($collateral->{userId} == $session{user}{userId} || WebGUI::Grouping::isInGroup(3));
$folderId = $session{scratch}{collateralFolderId} || 0;
$f = WebGUI::HTMLForm->new;
$f->hidden("op","editCollateralSave");
@ -295,7 +296,7 @@ sub www_editCollateral {
#-------------------------------------------------------------------
sub www_editCollateralSave {
return WebGUI::Privilege::insufficient unless (WebGUI::Privilege::isInGroup(4));
return WebGUI::Privilege::insufficient unless (WebGUI::Grouping::isInGroup(4));
WebGUI::Session::setScratch("collateralFolderId",$session{form}{collateralFolderId});
my ($test, $file, $addFile);
my $collateral = WebGUI::Collateral->new($session{form}{cid});
@ -322,7 +323,7 @@ sub www_editCollateralSave {
#-------------------------------------------------------------------
sub www_editCollateralFolder {
return WebGUI::Privilege::insufficient unless (WebGUI::Privilege::isInGroup(4));
return WebGUI::Privilege::insufficient unless (WebGUI::Grouping::isInGroup(4));
my ($output, $f, $folder, $folderId, $constraint);
$output .= '<h1>'.WebGUI::International::get(776).'</h1>';
if ($session{form}{fid} eq "new") {
@ -368,7 +369,7 @@ sub www_editCollateralFolder {
#-------------------------------------------------------------------
sub www_editCollateralFolderSave {
return WebGUI::Privilege::insufficient unless (WebGUI::Privilege::isInGroup(4));
return WebGUI::Privilege::insufficient unless (WebGUI::Grouping::isInGroup(4));
if ($session{form}{fid} eq "new") {
$session{form}{fid} = getNextId("collateralFolderId");
WebGUI::Session::setScratch("collateralFolderId",$session{form}{fid});
@ -392,7 +393,7 @@ sub www_editCollateralFolderSave {
#-------------------------------------------------------------------
sub www_listCollateral {
return WebGUI::Privilege::insufficient unless (WebGUI::Privilege::isInGroup(4));
return WebGUI::Privilege::insufficient unless (WebGUI::Grouping::isInGroup(4));
my (%type, %user, $f, $row, $data, $sth, $url, $output, $parent, $p, $thumbnail, $file, $page, $constraints, $folderId);
tie %type, 'Tie::IxHash';
tie %user, 'Tie::IxHash';
@ -519,7 +520,7 @@ sub _htmlAreaCreateTree {
sub www_htmlArealistCollateral {
my (@parents, $sth, $data, $indent);
$session{page}{makePrintable}=1; $session{page}{printableStyleId}=10;
return "<b>Only Content Managers are allowed to use WebGUI Collateral</b>" unless (WebGUI::Privilege::isInGroup(4));
return "<b>Only Content Managers are allowed to use WebGUI Collateral</b>" unless (WebGUI::Grouping::isInGroup(4));
my $output = '<table border="0" cellspacing="0" cellpadding="0" width="100%">';
my $folderId = $session{form}{fid} || 0;
@ -574,7 +575,7 @@ sub www_htmlAreaviewCollateral {
my($output, $collateral, $file, $x, $y, $image, $error);
$session{page}{makePrintable}=1; $session{page}{printableStyleId}=10;
$output .= '<table align="center" border="0" cellspacing="0" cellpadding="2" width="100%" height="100%">';
if($session{form}{cid} == 0 || ! WebGUI::Privilege::isInGroup(4)) {
if($session{form}{cid} == 0 || ! WebGUI::Grouping::isInGroup(4)) {
$output .= '<tr><td align="center" valign="middle" width="100%" height="100%">';
$output .= '<p align="center"><br><img src="'.$session{config}{extrasURL}.'/htmlArea/images/icon.gif"
border="0"></p>';
@ -610,7 +611,7 @@ sub www_htmlAreaviewCollateral {
#-------------------------------------------------------------------
sub www_htmlAreaUpload {
$session{page}{makePrintable}=1; $session{page}{printableStyleId}=10;
return "<b>Only Content Managers are allowed to use WebGUI Collateral</b>" unless (WebGUI::Privilege::isInGroup(4));
return "<b>Only Content Managers are allowed to use WebGUI Collateral</b>" unless (WebGUI::Grouping::isInGroup(4));
return www_htmlArealistCollateral() if ($session{form}{image} eq "");
my($test, $file);
$session{form}{fid} = $session{form}{collateralFolderId} = $session{form}{path};
@ -635,7 +636,7 @@ sub www_htmlAreaUpload {
#-------------------------------------------------------------------
sub www_htmlAreaDelete {
$session{page}{makePrintable}=1; $session{page}{printableStyleId}=10;
return "<b>Only Content Managers are allowed to use WebGUI Collateral</b>" unless (WebGUI::Privilege::isInGroup(4));
return "<b>Only Content Managers are allowed to use WebGUI Collateral</b>" unless (WebGUI::Grouping::isInGroup(4));
if($session{form}{cid}) { # Delete Image
my $collateral = WebGUI::Collateral->new($session{form}{cid});
$collateral->delete;
@ -652,7 +653,7 @@ sub www_htmlAreaDelete {
#-------------------------------------------------------------------
sub www_htmlAreaCreateFolder {
$session{page}{makePrintable}=1; $session{page}{printableStyleId}=10;
return "<b>Only Content Managers are allowed to use WebGUI Collateral</b>" unless (WebGUI::Privilege::isInGroup(4));
return "<b>Only Content Managers are allowed to use WebGUI Collateral</b>" unless (WebGUI::Grouping::isInGroup(4));
$session{form}{fid} = getNextId("collateralFolderId");
WebGUI::Session::setScratch("collateralFolderId",$session{form}{fid});
WebGUI::SQL->write("insert into collateralFolder (collateralFolderId) values ($session{form}{fid})");

View file

@ -14,6 +14,7 @@ use Exporter;
use strict;
use Tie::CPHash;
use WebGUI::DatabaseLink;
use WebGUI::Grouping;
use WebGUI::Icon;
use WebGUI::International;
use WebGUI::Operation::Shared;
@ -43,7 +44,7 @@ sub _submenu {
#-------------------------------------------------------------------
sub www_copyDatabaseLink {
return WebGUI::Privilege::insufficient unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::insufficient unless (WebGUI::Grouping::isInGroup(3));
my (%db);
tie %db, 'Tie::CPHash';
%db = WebGUI::SQL->quickHash("select * from databaseLink where databaseLinkId=$session{form}{dlid}");
@ -54,7 +55,7 @@ sub www_copyDatabaseLink {
#-------------------------------------------------------------------
sub www_deleteDatabaseLink {
return WebGUI::Privilege::insufficient unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::insufficient unless (WebGUI::Grouping::isInGroup(3));
my ($output);
$output .= helpIcon(70);
$output .= '<h1>'.WebGUI::International::get(987).'</h1>';
@ -77,14 +78,14 @@ sub www_deleteDatabaseLink {
#-------------------------------------------------------------------
sub www_deleteDatabaseLinkConfirm {
return WebGUI::Privilege::insufficient unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::insufficient unless (WebGUI::Grouping::isInGroup(3));
WebGUI::SQL->write("delete from databaseLink where databaseLinkId=".$session{form}{dlid});
return www_listDatabaseLinks();
}
#-------------------------------------------------------------------
sub www_editDatabaseLink {
return WebGUI::Privilege::insufficient unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::insufficient unless (WebGUI::Grouping::isInGroup(3));
my ($output, %db, $f);
tie %db, 'Tie::CPHash';
if ($session{form}{dlid} eq "new") {
@ -109,7 +110,7 @@ sub www_editDatabaseLink {
#-------------------------------------------------------------------
sub www_editDatabaseLinkSave {
return WebGUI::Privilege::insufficient unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::insufficient unless (WebGUI::Grouping::isInGroup(3));
if ($session{form}{dlid} eq "new") {
$session{form}{dlid} = getNextId("databaseLinkId");
WebGUI::SQL->write("insert into databaseLink (databaseLinkId) values ($session{form}{dlid})");
@ -121,7 +122,7 @@ sub www_editDatabaseLinkSave {
#-------------------------------------------------------------------
sub www_listDatabaseLinks {
return WebGUI::Privilege::adminOnly() unless(WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless(WebGUI::Grouping::isInGroup(3));
my ($output, $p, $sth, %data, @row, $i);
$output = helpIcon(68);
$output .= '<h1>'.WebGUI::International::get(996).'</h1>';

View file

@ -40,7 +40,7 @@ our @EXPORT = qw(&www_manageUsersInGroup &www_deleteGroup &www_deleteGroupConfir
#-------------------------------------------------------------------
sub _hasSecondaryPrivilege {
return 0 unless (WebGUI::Privilege::isInGroup(11));
return 0 unless (WebGUI::Grouping::isInGroup(11));
return WebGUI::Grouping::userGroupAdmin($session{user}{userId},$_[0]);
}
@ -49,7 +49,7 @@ sub _hasSecondaryPrivilege {
sub _submenu {
my ($output, %menu);
tie %menu, 'Tie::IxHash';
if (WebGUI::Privilege::isInGroup(3)) {
if (WebGUI::Grouping::isInGroup(3)) {
$menu{WebGUI::URL::page('op=editGroup&gid=new')} = WebGUI::International::get(90);
unless ($session{form}{op} eq "listGroups"
|| $session{form}{gid} eq "new"
@ -69,7 +69,7 @@ sub _submenu {
#-------------------------------------------------------------------
sub www_addGroupsToGroupSave {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
my @groups = $session{cgi}->param('groups');
WebGUI::Grouping::addGroupsToGroups(\@groups,[$session{form}{gid}]);
return www_manageGroupsInGroup();
@ -77,7 +77,7 @@ sub www_addGroupsToGroupSave {
#-------------------------------------------------------------------
sub www_addUsersToGroupSave {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
my @users = $session{cgi}->param('users');
WebGUI::Grouping::addUsersToGroups(\@users,[$session{form}{gid}]);
return www_manageUsersInGroup();
@ -113,7 +113,7 @@ sub www_autoDeleteFromGroup {
#-------------------------------------------------------------------
sub www_deleteGroup {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
my ($output);
return WebGUI::Privilege::vitalComponent() if ($session{form}{gid} < 26);
$output .= helpIcon(15);
@ -128,7 +128,7 @@ sub www_deleteGroup {
#-------------------------------------------------------------------
sub www_deleteGroupConfirm {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
return WebGUI::Privilege::vitalComponent() if ($session{form}{gid} < 26);
my $g = WebGUI::Group->new($session{form}{gid});
$g->delete;
@ -137,7 +137,7 @@ sub www_deleteGroupConfirm {
#-------------------------------------------------------------------
sub www_deleteGroupGrouping {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
WebGUI::Grouping::deleteGroupsFromGroups([$session{form}{delete}],[$session{form}{gid}]);
return www_manageGroupsInGroup();
}
@ -154,7 +154,7 @@ sub www_deleteGroupingSecondary {
#-------------------------------------------------------------------
sub www_editGroup {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
my ($output, $f, $g);
if ($session{form}{gid} eq "new") {
$g = WebGUI::Group->new("");
@ -233,7 +233,7 @@ sub www_editGroup {
#-------------------------------------------------------------------
sub www_editGroupSave {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
my $g = WebGUI::Group->new($session{form}{gid});
$g->description($session{form}{description});
$g->name($session{form}{groupName});
@ -255,7 +255,7 @@ sub www_editGroupSave {
#-------------------------------------------------------------------
sub www_emailGroup {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
my ($output,$f);
$output = '<h1>'.WebGUI::International::get(809).'</h1>';
$f = WebGUI::HTMLForm->new;
@ -282,7 +282,7 @@ sub www_emailGroup {
#-------------------------------------------------------------------
sub www_emailGroupSend {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
my ($sth, $email);
$sth = WebGUI::SQL->read("select b.fieldData from groupings a left join userProfileData b
on a.userId=b.userId and b.fieldName='email' where a.groupId=$session{form}{gid}");
@ -297,7 +297,7 @@ sub www_emailGroupSend {
#-------------------------------------------------------------------
sub www_listGroups {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
my ($output, $p, $sth, @data, @row, $i, $userCount);
$output = helpIcon(10);
$output .= '<h1>'.WebGUI::International::get(89).'</h1>';
@ -328,7 +328,7 @@ sub www_listGroups {
#-------------------------------------------------------------------
sub www_listGroupsSecondary {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(11));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(11));
my ($output, $p, $sth, @data, @row, $i, $userCount);
$output .= '<h1>'.WebGUI::International::get(89).'</h1>';
my @editableGroups = WebGUI::SQL->buildArray("select groupId from groupings where userId=$session{user}{userId} and groupAdmin=1");
@ -360,7 +360,7 @@ sub www_listGroupsSecondary {
#-------------------------------------------------------------------
sub www_manageGroupsInGroup {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
my ($output, $p, $group, $groups, $f);
$output = '<h1>'.WebGUI::International::get(813).'</h1><div align="center">';
$f = WebGUI::HTMLForm->new;
@ -397,7 +397,7 @@ sub www_manageGroupsInGroup {
#-------------------------------------------------------------------
sub www_manageUsersInGroup {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
my ($output, $sth, %hash);
tie %hash, 'Tie::CPHash';
$output = '<h1>'.WebGUI::International::get(88).'</h1>';

View file

@ -15,6 +15,7 @@ use strict;
use Tie::IxHash;
use Tie::CPHash;
use WebGUI::DateTime;
use WebGUI::Grouping;
use WebGUI::HTMLForm;
use WebGUI::Icon;
use WebGUI::International;
@ -70,7 +71,7 @@ sub _submenu {
#-------------------------------------------------------------------
sub www_deleteHelp {
return "" unless (WebGUI::Privilege::isInGroup(3));
return "" unless (WebGUI::Grouping::isInGroup(3));
my $output = '<h1>Confirm</h1>Are you sure? Deleting help is never a good idea. <a href="'
.WebGUI::URL::page("op=deleteHelpConfirm&hid=".$session{form}{hid}."&namespace=".$session{form}{namespace})
.'">Yes</a> / <a href="'.WebGUI::URL::page("op=manageHelp").'">No</a><p>';
@ -79,7 +80,7 @@ sub www_deleteHelp {
#-------------------------------------------------------------------
sub www_deleteHelpConfirm {
return "" unless (WebGUI::Privilege::isInGroup(3));
return "" unless (WebGUI::Grouping::isInGroup(3));
my ($titleId, $bodyId) = WebGUI::SQL->quickArray("select titleId,bodyId from help where helpId=".$session{form}{hid}."
and namespace=".quote($session{form}{namespace}));
WebGUI::SQL->write("delete from international where internationalId=$titleId
@ -93,7 +94,7 @@ sub www_deleteHelpConfirm {
#-------------------------------------------------------------------
sub www_editHelp {
return "" unless (WebGUI::Privilege::isInGroup(3));
return "" unless (WebGUI::Grouping::isInGroup(3));
my ($output, $f, %data, %help, @seeAlso);
tie %data, 'Tie::IxHash';
tie %help, 'Tie::CPHash';
@ -141,7 +142,7 @@ sub www_editHelp {
#-------------------------------------------------------------------
sub www_editHelpSave {
return "" unless (WebGUI::Privilege::isInGroup(3));
return "" unless (WebGUI::Grouping::isInGroup(3));
my (@seeAlso);
if ($session{form}{hid} eq "new") {
if ($session{form}{namespace_new} ne "") {
@ -178,7 +179,7 @@ sub www_editHelpSave {
#-------------------------------------------------------------------
sub www_exportHelp {
return "" unless (WebGUI::Privilege::isInGroup(3));
return "" unless (WebGUI::Grouping::isInGroup(3));
my ($export, $output, %help, $sth);
$export = "#export of WebGUI ".$WebGUI::VERSION." help system.\n\n";
$sth = WebGUI::SQL->read("select * from help");
@ -195,7 +196,7 @@ sub www_exportHelp {
#-------------------------------------------------------------------
sub www_manageHelp {
my ($sth, @help, $output);
return "" unless (WebGUI::Privilege::isInGroup(3));
return "" unless (WebGUI::Grouping::isInGroup(3));
$output = '<h1>Manage Help</h1>';
$output .= 'This interface is for WebGUI developers only. If you\'re not a developer, leave this alone. Also,
this interface works <b>ONLY</b> under MySQL and is not supported by Plain Black under any

View file

@ -14,6 +14,7 @@ use Exporter;
use strict;
use Tie::CPHash;
use WebGUI::DateTime;
use WebGUI::Grouping;
use WebGUI::HTMLForm;
use WebGUI::Icon;
use WebGUI::International;
@ -21,6 +22,7 @@ use WebGUI::Macro;
use WebGUI::Mail;
use WebGUI::Operation::Shared;
use WebGUI::Paginator;
use WebGUI::Privilege;
use WebGUI::Session;
use WebGUI::SQL;
use WebGUI::URL;
@ -85,7 +87,7 @@ sub _submenu {
#-------------------------------------------------------------------
sub www_addInternationalMessage {
my ($output,$f);
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(10));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(10));
$output = '<h1>Add English Message</h1>';
$f = WebGUI::HTMLForm->new();
$f->hidden("lid",1);
@ -118,7 +120,7 @@ sub www_addInternationalMessageSave {
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(10));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(10));
$output .= '<h1>'.WebGUI::International::get(42).'</h1>';
$output .= WebGUI::International::get(587).'<p>';
$output .= '<div align="center"><a href="'.
@ -131,7 +133,7 @@ sub www_deleteLanguage {
#-------------------------------------------------------------------
sub www_deleteLanguageConfirm {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(10));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(10));
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});
@ -143,7 +145,7 @@ sub www_deleteLanguageConfirm {
#-------------------------------------------------------------------
sub www_editInternationalMessage {
my ($output, $message, $context, $f, $language);
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(10));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(10));
($language) = WebGUI::SQL->quickArray("select language from language where languageId=".$session{form}{lid});
$output = '<h1>'.WebGUI::International::get(597).'</h1>';
$f = WebGUI::HTMLForm->new;
@ -171,7 +173,7 @@ sub www_editInternationalMessage {
#-------------------------------------------------------------------
sub www_editInternationalMessageSave {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(10));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(10));
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})
@ -187,7 +189,7 @@ sub www_editInternationalMessageSave {
#-------------------------------------------------------------------
sub www_editLanguage {
my ($output, $dir, @files, $file, %data, $f, %options);
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(10));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(10));
tie %data, 'Tie::CPHash';
$dir = $session{config}{extrasPath}.$session{os}{slash}."toolbar";
opendir (DIR,$dir) or WebGUI::ErrorHandler::warn("Can't open toolbar directory!");
@ -219,7 +221,7 @@ sub www_editLanguage {
#-------------------------------------------------------------------
sub www_editLanguageSave {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(10));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(10));
if ($session{form}{lid} eq "new") {
$session{form}{lid} = getNextId("languageId");
WebGUI::SQL->write("insert into language (languageId) values ($session{form}{lid})");
@ -238,7 +240,7 @@ sub www_exportTranslation {
#-------------------------------------------------------------------
sub www_listInternationalMessages {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(10));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(10));
my ($output, $sth, $key, $p, $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});
@ -370,7 +372,7 @@ sub www_listInternationalMessages {
sub www_listLanguages {
my ($output, $sth, %data);
tie %data, 'Tie::CPHash';
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(10));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(10));
$output = '<h1>'.WebGUI::International::get(586).'</h1>';
$sth = WebGUI::SQL->read("select languageId,language from language where languageId<>1 order by language");
while (%data = $sth->hash) {

View file

@ -14,6 +14,7 @@ use Exporter;
use strict qw(vars subs);
use URI;
use WebGUI::DateTime;
use WebGUI::Grouping;
use WebGUI::International;
use WebGUI::Paginator;
use WebGUI::Privilege;
@ -36,7 +37,7 @@ sub _status {
#-------------------------------------------------------------------
sub www_viewMessageLog {
my (@msg, $vars);
WebGUI::Privilege::insufficient() unless (WebGUI::Privilege::isInGroup(2,$session{user}{userId}));
WebGUI::Privilege::insufficient() unless (WebGUI::Grouping::isInGroup(2,$session{user}{userId}));
$vars->{displayTitle} = '<h1>'.WebGUI::International::get(159).'</h1>';
my $p = WebGUI::Paginator->new(WebGUI::URL::page('op=viewMessageLog'));
my $query = "select messageLogId,subject,url,dateOfEntry,status from messageLog where userId=$session{user}{userId} order by dateOfEntry desc";
@ -73,7 +74,7 @@ sub www_viewMessageLog {
#-------------------------------------------------------------------
sub www_viewMessageLogMessage {
my ($data, $vars);
return WebGUI::Privilege::insufficient() unless (WebGUI::Privilege::isInGroup(2,$session{user}{userId}));
return WebGUI::Privilege::insufficient() unless (WebGUI::Grouping::isInGroup(2,$session{user}{userId}));
$vars->{displayTitle} = '<h1>'.WebGUI::International::get(159).'</h1>';
$data = WebGUI::SQL->quickHashRef("select * from messageLog where messageLogId=$session{form}{mlog} and userId=$session{user}{userId}");

View file

@ -15,19 +15,20 @@ use strict;
use Tie::IxHash;
use Tie::CPHash;
use WebGUI::DateTime;
use WebGUI::ErrorHandler;
use WebGUI::Grouping;
use WebGUI::HTMLForm;
use WebGUI::Icon;
use WebGUI::International;
use WebGUI::Macro;
use WebGUI::Navigation;
use WebGUI::Operation::Shared;
use WebGUI::Privilege;
use WebGUI::Session;
use WebGUI::SQL;
use WebGUI::URL;
use WebGUI::Utility;
use WebGUI::Navigation;
use WebGUI::TabForm;
use WebGUI::ErrorHandler;
use WebGUI::Privilege;
our @ISA = qw(Exporter);
our @EXPORT = qw(&www_listNavigation &www_editNavigation &www_editNavigationSave &www_copyNavigation
@ -52,7 +53,7 @@ sub _submenu {
#-------------------------------------------------------------------
sub www_copyNavigation {
return WebGUI::Privilege::insufficient() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::insufficient() unless (WebGUI::Grouping::isInGroup(3));
my %navigation = WebGUI::SQL->quickHash("select * from Navigation where identifier = ".
quote($session{form}{identifier}));
WebGUI::SQL->write("insert into Navigation (navigationId, identifier, depth, method, startAt, stopAtLevel,
@ -68,7 +69,7 @@ sub www_copyNavigation {
#-------------------------------------------------------------------
sub www_deleteNavigation {
return WebGUI::Privilege::insufficient() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::insufficient() unless (WebGUI::Grouping::isInGroup(3));
if ($session{form}{navigationId} < 1000 && $session{form}{navigationId} > 0) {
return WebGUI::Privilege::vitalComponent();
}
@ -84,7 +85,7 @@ sub www_deleteNavigation {
#-------------------------------------------------------------------
sub www_deleteNavigationConfirm {
return WebGUI::Privilege::insufficient() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::insufficient() unless (WebGUI::Grouping::isInGroup(3));
if ($session{form}{navigationId} < 1000 && $session{form}{navigationId} > 0) {
return WebGUI::Privilege::vitalComponent();
}
@ -94,7 +95,7 @@ sub www_deleteNavigationConfirm {
#-------------------------------------------------------------------
sub www_editNavigation {
return WebGUI::Privilege::insufficient() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::insufficient() unless (WebGUI::Grouping::isInGroup(3));
my $identifier = shift || $session{form}{identifier};
#return WebGUI::ErrorHandler::warn("editNavigation called without identifier") unless $identifier;
@ -241,7 +242,7 @@ sub www_editNavigation {
#-------------------------------------------------------------------
sub www_editNavigationSave {
return WebGUI::Privilege::insufficient() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::insufficient() unless (WebGUI::Grouping::isInGroup(3));
# Check on duplicate identifier
my ($existingNavigationId, $existingIdentifier) = WebGUI::SQL->quickArray("select navigationId,
@ -274,7 +275,7 @@ sub www_editNavigationSave {
#-------------------------------------------------------------------
sub www_listNavigation {
return WebGUI::Privilege::insufficient() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::insufficient() unless (WebGUI::Grouping::isInGroup(3));
my $output .= helpIcon(84).'<h1>'.WebGUI::International::get(34,'Navigation').'</h1>';
my $sth = WebGUI::SQL->read("select navigationId, identifier from Navigation order by identifier");
my $i = 0;
@ -303,7 +304,7 @@ sub www_previewNavigation {
#$session{page}{useEmptyStyle} = 1;
$session{page}{useAdminStyle} = 1;
$session{var}{adminOn} = 0;
return WebGUI::Privilege::insufficient() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::insufficient() unless (WebGUI::Grouping::isInGroup(3));
my $nav = WebGUI::Navigation->new( depth=>$session{form}{depth},
method=>$session{form}{method},
startAt=>$session{form}{startAt},

View file

@ -117,7 +117,7 @@ sub _recursePageTree {
#-------------------------------------------------------------------
sub www_deployPackage {
if (WebGUI::Privilege::canEditPage()) {
if (WebGUI::Page::canEdit()) {
_recursePageTree($session{form}{pid},$session{page}{pageId});
return "";
} else {

View file

@ -40,13 +40,21 @@ This private function changes the privileges of all wobjects on page.
=cut
sub _changeWobjectPrivileges {
my($wobject,$sth);
$sth = WebGUI::SQL->read("select wobjectId from wobject where pageId=".quote($_[0]));
$sth = WebGUI::SQL->read("select wobjectId,namespace from wobject where pageId=".quote($_[0]));
while ($wobject = $sth->hashRef) {
if (WebGUI::Privilege::canEditWobject($wobject->{wobjectId})) {
WebGUI::SQL->write("update wobject set startDate=".WebGUI::FormProcessor::dateTime("startDate").",
endDate=".WebGUI::FormProcessor::dateTime("endDate").",
ownerId=$session{form}{ownerId}, groupIdView=$session{form}{groupIdView},
groupIdEdit=$session{form}{groupIdEdit} where wobjectId=".quote($wobject->{wobjectId}));
my $cmd = "WebGUI::Wobject::".$wobject->{namespace};
my $load = "use ".$cmd;
eval($load);
WebGUI::ErrorHandler::warn("Wobject failed to compile: $cmd.".$@) if($@);
my $w = $cmd->new($wobject);
if ($w->canEdit) {
$w->set({
startDate=>WebGUI::FormProcessor::dateTime("startDate"),
endDate=>WebGUI::FormProcessor::dateTime("endDate"),
ownerId=>$session{form}{ownerId},
groupIdView=>$session{form}{ownerId},
groupIdEdit=>$session{form}{groupIdEdit}
});
}
}
}
@ -76,7 +84,7 @@ sub _recursivelyChangeProperties {
$page->walk_down({
callback => sub {
$currentPage = shift;
if (WebGUI::Privilege::canEditPage($currentPage->get('pageId'))) {
if (WebGUI::Page::canEdit($currentPage->get('pageId'))) {
$currentPage->setWithoutRecache({
startDate => WebGUI::FormProcessor::dateTime("startDate"),
endDate => WebGUI::FormProcessor::dateTime("endDate"),
@ -234,7 +242,7 @@ sub www_cutPage {
if ($session{page}{pageId} < 26 && $session{page}{pageId} >= 0) {
return WebGUI::Privilege::vitalComponent();
} elsif (WebGUI::Privilege::canEditPage()) {
} elsif (WebGUI::Page::canEdit()) {
$page = WebGUI::Page->getPage($session{page}{pageId});
$page->cut;
return "";
@ -255,7 +263,7 @@ sub www_deletePage {
my ($output);
if ($session{page}{pageId} < 1000 && $session{page}{pageId} > 0) {
return WebGUI::Privilege::vitalComponent();
} elsif (WebGUI::Privilege::canEditPage()) {
} elsif (WebGUI::Page::canEdit()) {
$output .= helpIcon(3);
$output .= '<h1>'.WebGUI::International::get(42).'</h1>';
$output .= WebGUI::International::get(101).'<p>';
@ -280,7 +288,7 @@ Actually transfers the page to the trash.
sub www_deletePageConfirm {
if ($session{page}{pageId} < 1000 && $session{page}{pageId} > 0) {
return WebGUI::Privilege::vitalComponent();
} elsif (WebGUI::Privilege::canEditPage()) {
} elsif (WebGUI::Page::canEdit()) {
my $page = WebGUI::Page->getPage($session{page}{pageId});
$page->delete;
WebGUI::Session::refreshPageInfo($session{page}{parentId});
@ -304,7 +312,7 @@ sub www_editPage {
$session{page}{useAdminStyle} = 1;
tie %hash, "Tie::IxHash";
tie %page, "Tie::CPHash";
if (WebGUI::Privilege::canEditPage($session{form}{npp})) {
if (WebGUI::Page::canEdit($session{form}{npp})) {
my %tabs;
tie %tabs, 'Tie::IxHash';
%tabs = (
@ -466,13 +474,13 @@ sub www_editPage {
-value=>$page{endDate},
-uiLevel=>6
);
if (WebGUI::Privilege::isInGroup(3)) {
if (WebGUI::Grouping::isInGroup(3)) {
$subtext = manageIcon('op=listUsers');
} else {
$subtext = "";
}
my $clause;
if (WebGUI::Privilege::isInGroup(3)) {
if (WebGUI::Grouping::isInGroup(3)) {
my $contentManagers = WebGUI::Grouping::getUsersInGroup(4,1);
push (@$contentManagers, $session{user}{userId});
$clause = "userId in (".join(",",@$contentManagers).")";
@ -549,7 +557,7 @@ sub www_editPageSave {
$pageId = $session{form}{pageId};
}
return WebGUI::Privilege::insufficient() unless (WebGUI::Privilege::canEditPage($pageId));
return WebGUI::Privilege::insufficient() unless (WebGUI::Page::canEdit($pageId));
if ($session{form}{pageId} eq "new") {
$currentPage = WebGUI::Page->getPage($pageId);
@ -605,7 +613,7 @@ Moves page down in the context of it's sisters.
=cut
sub www_movePageDown {
if (WebGUI::Privilege::canEditPage($session{page}{pageId})) {
if (WebGUI::Page::canEdit($session{page}{pageId})) {
WebGUI::Page->moveDown($session{page}{pageId});
return "";
} else {
@ -622,7 +630,7 @@ Moves page up in the context of it's sisters.
=cut
sub www_movePageUp {
if (WebGUI::Privilege::canEditPage($session{page}{pageId})) {
if (WebGUI::Page::canEdit($session{page}{pageId})) {
WebGUI::Page->moveUp($session{page}{pageId});
return "";
} else {
@ -639,7 +647,7 @@ Same as www_movePageUp wit this difference that this module returns the www_view
=cut
sub www_moveTreePageUp {
if (WebGUI::Privilege::canEditPage($session{page}{pageId})) {
if (WebGUI::Page::canEdit($session{page}{pageId})) {
WebGUI::Page->moveUp($session{page}{pageId});
return www_viewPageTree();
} else {
@ -656,7 +664,7 @@ Same as www_movePageDown with this difference that this module returns the www_v
=cut
sub www_moveTreePageDown {
if (WebGUI::Privilege::canEditPage($session{page}{pageId})) {
if (WebGUI::Page::canEdit($session{page}{pageId})) {
WebGUI::Page->moveDown($session{page}{pageId});
return www_viewPageTree();
} else {
@ -674,7 +682,7 @@ Another way to look at is that the mother of the current page becomes the elder
=cut
sub www_moveTreePageLeft {
if (WebGUI::Privilege::canEditPage($session{page}{pageId})) {
if (WebGUI::Page::canEdit($session{page}{pageId})) {
WebGUI::Page->moveLeft($session{page}{pageId});
return www_viewPageTree();
} else {
@ -684,7 +692,7 @@ sub www_moveTreePageLeft {
#-------------------------------------------------------------------
sub www_moveTreePageRight {
if (WebGUI::Privilege::canEditPage($session{page}{pageId})) {
if (WebGUI::Page::canEdit($session{page}{pageId})) {
WebGUI::Page->moveRight($session{page}{pageId});
return www_viewPageTree();
} else {
@ -695,7 +703,7 @@ sub www_moveTreePageRight {
#-------------------------------------------------------------------
sub www_pastePage {
my ($currentPage, $pageToPaste);
if (WebGUI::Privilege::canEditPage()) {
if (WebGUI::Page::canEdit()) {
$currentPage = WebGUI::Page->getPage($session{page}{pageId});
$pageToPaste = WebGUI::Page->getPage($session{form}{pageId});
$pageToPaste->paste($currentPage);
@ -707,7 +715,7 @@ sub www_pastePage {
#-------------------------------------------------------------------
sub www_rearrangeWobjects {
return WebGUI::Privilege::insufficient() unless (WebGUI::Privilege::canEditPage($session{page}{pageId}));
return WebGUI::Privilege::insufficient() unless (WebGUI::Page::canEdit($session{page}{pageId}));
$session{page}{styleId} = 2;
my @contentAreas = split(/\./,$session{form}{map});
my $templatePosition = 1;

View file

@ -17,6 +17,7 @@ use WebGUI::Operation::Auth;
use WebGUI::DateTime;
use WebGUI::ErrorHandler;
use WebGUI::FormProcessor;
use WebGUI::Grouping;
use WebGUI::HTMLForm;
use WebGUI::International;
use WebGUI::Macro;
@ -222,7 +223,7 @@ sub www_viewProfile {
$vars->{displayTitle} = '<h1>'.WebGUI::International::get(347).' '.$u->username.'</h1>';
return WebGUI::Privilege::notMember() if($u->username eq "");
return $vars->{displayTitle}.WebGUI::International::get(862) if($u->profileField("publicProfile") < 1);
return WebGUI::Privilege::insufficient() if(!WebGUI::Privilege::isInGroup(2));
return WebGUI::Privilege::insufficient() if(!WebGUI::Grouping::isInGroup(2));
$a = WebGUI::SQL->read("select * from userProfileField,userProfileCategory where userProfileField.profileCategoryId=userProfileCategory.profileCategoryId
and userProfileCategory.visible=1 and userProfileField.visible=1 order by userProfileCategory.sequenceNumber,userProfileField.sequenceNumber");
while (%data = $a->hash) {

View file

@ -14,6 +14,7 @@ use Exporter;
use strict;
use Tie::CPHash;
use Tie::IxHash;
use WebGUI::Grouping;
use WebGUI::HTMLForm;
use WebGUI::Icon;
use WebGUI::International;
@ -68,7 +69,7 @@ sub _submenu {
#-------------------------------------------------------------------
sub www_deleteProfileCategory {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
my ($output);
return WebGUI::Privilege::vitalComponent() if ($session{form}{cid} < 1000);
$output = '<h1>'.WebGUI::International::get(42).'</h1>';
@ -82,7 +83,7 @@ sub www_deleteProfileCategory {
#-------------------------------------------------------------------
sub www_deleteProfileCategoryConfirm {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
return WebGUI::Privilege::vitalComponent() if ($session{form}{cid} < 1000);
WebGUI::SQL->write("delete from userProfileCategory where profileCategoryId=$session{form}{cid}");
WebGUI::SQL->write("update userProfileField set profileCategoryId=1 where profileCategoryId=$session{form}{cid}");
@ -91,7 +92,7 @@ sub www_deleteProfileCategoryConfirm {
#-------------------------------------------------------------------
sub www_deleteProfileField {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
my ($output,$protected);
($protected) = WebGUI::SQL->quickArray("select protected from userProfileField where fieldname=".quote($session{form}{fid}));
return WebGUI::Privilege::vitalComponent() if ($protected);
@ -106,7 +107,7 @@ sub www_deleteProfileField {
#-------------------------------------------------------------------
sub www_deleteProfileFieldConfirm {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
my ($protected);
($protected) = WebGUI::SQL->quickArray("select protected from userProfileField where fieldname=".quote($session{form}{fid}));
return WebGUI::Privilege::vitalComponent() if ($protected);
@ -117,7 +118,7 @@ sub www_deleteProfileFieldConfirm {
#-------------------------------------------------------------------
sub www_editProfileCategory {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
my ($output, $f, %data);
tie %data, 'Tie::CPHash';
$output = '<h1>'.WebGUI::International::get(468,"WebGUI/Profile").'</h1>';
@ -148,7 +149,7 @@ sub www_editProfileCategory {
#-------------------------------------------------------------------
sub www_editProfileCategorySave {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
my ($sequenceNumber, $test);
$session{form}{categoryName} = 'Unamed' if ($session{form}{categoryName} eq "" || $session{form}{categoryName} eq "''");
$test = eval($session{form}{categoryName});
@ -167,7 +168,7 @@ sub www_editProfileCategorySave {
#-------------------------------------------------------------------
sub www_editProfileField {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
my ($output, $f, %data, %hash, $key);
tie %data, 'Tie::CPHash';
$output = '<h1>'.WebGUI::International::get(471,"WebGUI/Profile").'</h1>';
@ -222,7 +223,7 @@ sub www_editProfileField {
#-------------------------------------------------------------------
sub www_editProfileFieldSave {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
my ($sequenceNumber, $fieldName, $test);
$session{form}{fieldLabel} = 'Unamed' if ($session{form}{fieldLabel} eq "" || $session{form}{fieldLabel} eq "''");
$test = eval($session{form}{fieldLabel});
@ -261,7 +262,7 @@ sub www_editProfileFieldSave {
#-------------------------------------------------------------------
sub www_editProfileSettings {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
my ($output, $a, %category, %field, $b);
tie %category, 'Tie::CPHash';
tie %field, 'Tie::CPHash';
@ -296,7 +297,7 @@ sub www_editProfileSettings {
#-------------------------------------------------------------------
sub www_moveProfileCategoryDown {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
my ($id, $thisSeq);
($thisSeq) = WebGUI::SQL->quickArray("select sequenceNumber from userProfileCategory where profileCategoryId=$session{form}{cid}");
($id) = WebGUI::SQL->quickArray("select profileCategoryId from userProfileCategory where sequenceNumber=$thisSeq+1");
@ -310,7 +311,7 @@ sub www_moveProfileCategoryDown {
#-------------------------------------------------------------------
sub www_moveProfileCategoryUp {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
my ($id, $thisSeq);
($thisSeq) = WebGUI::SQL->quickArray("select sequenceNumber from userProfileCategory where profileCategoryId=$session{form}{cid}");
($id) = WebGUI::SQL->quickArray("select profileCategoryId from userProfileCategory where sequenceNumber=$thisSeq-1");
@ -324,7 +325,7 @@ sub www_moveProfileCategoryUp {
#-------------------------------------------------------------------
sub www_moveProfileFieldDown {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
my ($id, $thisSeq, $profileCategoryId);
($thisSeq,$profileCategoryId) = WebGUI::SQL->quickArray("select sequenceNumber,profileCategoryId from userProfileField where fieldName=".quote($session{form}{fid}));
($id) = WebGUI::SQL->quickArray("select fieldName from userProfileField where profileCategoryId=$profileCategoryId and sequenceNumber=$thisSeq+1");
@ -338,7 +339,7 @@ sub www_moveProfileFieldDown {
#-------------------------------------------------------------------
sub www_moveProfileFieldUp {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
my ($id, $thisSeq, $profileCategoryId);
($thisSeq,$profileCategoryId) = WebGUI::SQL->quickArray("select sequenceNumber,profileCategoryId from userProfileField where fieldName=".quote($session{form}{fid}));
($id) = WebGUI::SQL->quickArray("select fieldName from userProfileField where profileCategoryId=$profileCategoryId and sequenceNumber=$thisSeq-1");

View file

@ -12,10 +12,12 @@ package WebGUI::Operation::Replacements;
use Exporter;
use strict;
use WebGUI::Grouping;
use WebGUI::Icon;
use WebGUI::HTMLForm;
use WebGUI::International;
use WebGUI::Operation::Shared;
use WebGUI::Privilege;
use WebGUI::Session;
use WebGUI::SQL;
@ -35,14 +37,14 @@ sub _submenu {
#-------------------------------------------------------------------
sub www_deleteReplacement {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
WebGUI::SQL->write("delete from replacements where replacementId=$session{form}{replacementId}");
return www_listReplacements();
}
#-------------------------------------------------------------------
sub www_editReplacement {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
my $data = WebGUI::SQL->getRow("replacements","replacementId",$session{form}{replacementId});
my $f = WebGUI::HTMLForm->new;
$f->hidden(
@ -73,7 +75,7 @@ sub www_editReplacement {
#-------------------------------------------------------------------
sub www_editReplacementSave {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
WebGUI::SQL->setRow("replacements","replacementId",{
replacementId=>$session{form}{replacementId},
searchFor=>$session{form}{searchFor},
@ -84,7 +86,7 @@ sub www_editReplacementSave {
#-------------------------------------------------------------------
sub www_listReplacements {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
my $output = "<h1>".WebGUI::International::get(1053)."</h1>";
$output .= '<table>';
my $sth = WebGUI::SQL->read("select replacementId,searchFor from replacements order by searchFor");

View file

@ -13,6 +13,7 @@ package WebGUI::Operation::Root;
use Exporter;
use strict;
use Tie::CPHash;
use WebGUI::Grouping;
use WebGUI::Icon;
use WebGUI::International;
use WebGUI::Operation::Shared;
@ -35,7 +36,7 @@ sub _submenu {
#-------------------------------------------------------------------
sub www_listRoots {
return WebGUI::Privilege::adminOnly() unless(WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless(WebGUI::Grouping::isInGroup(3));
my ($output, $p, $sth, %data, @row, $i);
$output = helpIcon(28);
$output .= '<h1>'.WebGUI::International::get(408).'</h1>';

View file

@ -13,6 +13,7 @@ package WebGUI::Operation::Settings;
use Exporter;
use strict qw(vars subs);
use WebGUI::DateTime;
use WebGUI::Grouping;
use WebGUI::HTMLForm;
use WebGUI::Icon;
use WebGUI::International;
@ -37,7 +38,7 @@ sub _submenu {
#-------------------------------------------------------------------
sub www_editCompanyInformation {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
my ($output, $f);
$output .= helpIcon(6);
$output .= '<h1>'.WebGUI::International::get(124).'</h1>';
@ -53,7 +54,7 @@ sub www_editCompanyInformation {
#-------------------------------------------------------------------
sub www_editContentSettings {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
my ($output, %htmlFilter, $f, $pages);
$pages = WebGUI::SQL->buildHashRef("select pageId,menuTitle from page order by menuTitle");
%htmlFilter = ('none'=>WebGUI::International::get(420), 'most'=>WebGUI::International::get(421),
@ -89,7 +90,7 @@ sub www_editContentSettings {
#-------------------------------------------------------------------
sub www_editMessagingSettings {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
my ($output, $f);
$output .= helpIcon(13);
$output .= '<h1>'.WebGUI::International::get(133).'</h1>';
@ -106,7 +107,7 @@ sub www_editMessagingSettings {
#-------------------------------------------------------------------
sub www_editMiscSettings {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
my ($output, $f);
$output .= helpIcon(24);
$output .= '<h1>'.WebGUI::International::get(140).'</h1>';
@ -145,7 +146,7 @@ sub www_editMiscSettings {
#-------------------------------------------------------------------
sub www_editUserSettings {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
my ($output, $f, $cmd, $html);
$output .= helpIcon(2);
$output .= '<h1>'.WebGUI::International::get(117).'</h1>';
@ -189,7 +190,7 @@ sub www_editUserSettings {
#-------------------------------------------------------------------
sub www_manageSettings {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
my ($output);
$output .= helpIcon(12);
$output .= '<h1>'.WebGUI::International::get(143).'</h1>';
@ -207,7 +208,7 @@ sub www_manageSettings {
#-------------------------------------------------------------------
sub www_saveSettings {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
my ($key, $value);
foreach $key (keys %{$session{form}}) {
$value = $session{form}{$key};

View file

@ -13,6 +13,7 @@ package WebGUI::Operation::Shared;
use Exporter;
use strict;
use WebGUI::Grouping;
use WebGUI::International;
use WebGUI::Session;
use WebGUI::SQL;
@ -23,7 +24,7 @@ our @EXPORT = qw(&menuWrapper);
#-------------------------------------------------------------------
sub accountOptions {
my @array;
if (WebGUI::Privilege::isInGroup(12)) {
if (WebGUI::Grouping::isInGroup(12)) {
my %hash;
if ($session{var}{adminOn}) {
$hash{'options.display'} .= '<a href="'.WebGUI::URL::page('op=switchOffAdmin').'">'.WebGUI::International::get(12).'</a>';
@ -55,7 +56,7 @@ our @EXPORT = qw(&menuWrapper);
my %logout;
$logout{'options.display'} = '<a href="'.WebGUI::URL::page('op=logout').'">'.WebGUI::International::get(64).'</a>';
push(@array,\%logout);
if ($session{setting}{selfDeactivation} && !WebGUI::Privilege::isInGroup(3)){
if ($session{setting}{selfDeactivation} && !WebGUI::Grouping::isInGroup(3)){
my %hash;
$hash{'options.display'} = '<a href="'.WebGUI::URL::page('op=deactivateAccount').'">'.WebGUI::International::get(65).'</a>';
push(@array,\%hash);

View file

@ -14,6 +14,7 @@ use Exporter;
use strict;
use WebGUI::Cache;
use WebGUI::DateTime;
use WebGUI::Grouping;
use WebGUI::Icon;
use WebGUI::International;
use WebGUI::Operation::Shared;
@ -40,14 +41,14 @@ sub _submenu {
#-------------------------------------------------------------------
sub www_killSession {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
WebGUI::Session::end($session{form}{sid});
return www_viewActiveSessions();
}
#-------------------------------------------------------------------
sub www_viewActiveSessions {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
my ($output, $p, @row, $i, $sth, %data);
tie %data, 'Tie::CPHash';
$output = '<h1>'.WebGUI::International::get(425).'</h1>';
@ -81,7 +82,7 @@ sub www_viewActiveSessions {
#-------------------------------------------------------------------
sub www_viewLoginHistory {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
my ($output, $p, @row, $i, $sth, %data);
tie %data, 'Tie::CPHash';
$output = '<h1>'.WebGUI::International::get(426).'</h1>';
@ -112,7 +113,7 @@ sub www_viewLoginHistory {
#-------------------------------------------------------------------
sub www_viewPageReport {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
my ($output, $count, $user, $data, $sth, %page, $pageId);
tie %page, "Tie::IxHash";
$output = '<h1>Page Statistics</h1>';
@ -155,7 +156,7 @@ sub www_viewPageReport {
#-------------------------------------------------------------------
sub www_viewStatistics {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
my ($output, $data);
my $url = "http://www.plainblack.com/downloads/latest-version.txt";
my $cache = WebGUI::Cache->new($url,"URL");
@ -200,7 +201,7 @@ sub www_viewStatistics {
#-------------------------------------------------------------------
sub www_viewTrafficReport {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
my ($output, $data);
$output = '<h1>Pages</h1>';
($data) = WebGUI::SQL->quickArray("select count(*) from pageStatistics where dateStamp>=".(time()-2592000));

View file

@ -12,7 +12,9 @@ package WebGUI::Operation::Style;
use Exporter;
use strict;
use WebGUI::Grouping;
use WebGUI::Paginator;
use WebGUI::Privilege;
use WebGUI::Session;
use WebGUI::URL;
@ -42,7 +44,7 @@ sub www_unsetPersonalStyle {
#-------------------------------------------------------------------
sub www_listRoots {
return WebGUI::Privilege::adminOnly() unless(WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless(WebGUI::Grouping::isInGroup(3));
my ($output, $p, $sth, %data, @row, $i);
$output = helpIcon(28);
$output .= '<h1>'.WebGUI::International::get(408).'</h1>';

View file

@ -13,6 +13,7 @@ package WebGUI::Operation::Template;
use Exporter;
use strict;
use Tie::CPHash;
use WebGUI::Grouping;
use WebGUI::HTML;
use WebGUI::HTMLForm;
use WebGUI::Icon;
@ -53,7 +54,7 @@ sub _submenu {
#-------------------------------------------------------------------
sub www_copyTemplate {
my (%template);
if (WebGUI::Privilege::isInGroup(8)) {
if (WebGUI::Grouping::isInGroup(8)) {
%template = WebGUI::SQL->quickHash("select * from template where templateId=$session{form}{tid} and namespace=".quote($session{form}{namespace}));
WebGUI::SQL->write("insert into template (templateId,name,template,namespace)
values ("._getNextTemplateId($session{form}{namespace}).",
@ -70,7 +71,7 @@ sub www_deleteTemplate {
my ($output);
if ($session{form}{tid} < 1000 && $session{form}{tid} > 0) {
return WebGUI::Privilege::vitalComponent();
} elsif (WebGUI::Privilege::isInGroup(8)) {
} elsif (WebGUI::Grouping::isInGroup(8)) {
$output .= helpIcon(35);
$output .= '<h1>'.WebGUI::International::get(42).'</h1>';
$output .= WebGUI::International::get(502).'<p>';
@ -91,7 +92,7 @@ sub www_deleteTemplateConfirm {
my ($a, $pageId);
if ($session{form}{tid} < 1000 && $session{form}{tid} > 1000) {
return WebGUI::Privilege::vitalComponent();
} elsif (WebGUI::Privilege::isInGroup(8)) {
} elsif (WebGUI::Grouping::isInGroup(8)) {
if ($session{form}{namespace} eq "Page") {
$a = WebGUI::SQL->read("select * from page where templateId=".$session{form}{tid});
while (($pageId) = $a->array) {
@ -112,7 +113,7 @@ sub www_deleteTemplateConfirm {
sub www_editTemplate {
my ($output, $namespaces, %template, $f);
tie %template, 'Tie::CPHash';
if (WebGUI::Privilege::isInGroup(8)) {
if (WebGUI::Grouping::isInGroup(8)) {
if ($session{form}{tid} eq "new" || $session{form}{tid} eq "") {
if ($session{form}{namespace} eq "Page") {
$template{template} = "<table>\n <tr>\n <td>\n\n<tmpl_var page.position1>\n\n".
@ -155,7 +156,7 @@ sub www_editTemplate {
#-------------------------------------------------------------------
sub www_editTemplateSave {
if (WebGUI::Privilege::isInGroup(8)) {
if (WebGUI::Grouping::isInGroup(8)) {
if ($session{form}{tid} eq "new") {
$session{form}{tid} = _getNextTemplateId($session{form}{namespace});
WebGUI::SQL->write("insert into template (templateId,namespace) values
@ -180,7 +181,7 @@ sub www_editTemplateSave {
#-------------------------------------------------------------------
sub www_listTemplates {
my ($output, $sth, @data, @row, $i, $p, $where);
if (WebGUI::Privilege::isInGroup(8)) {
if (WebGUI::Grouping::isInGroup(8)) {
$where = "and namespace=".quote($session{form}{namespace}) if ($session{form}{namespace});
$output = helpIcon(33);
$output .= '<h1>'.WebGUI::International::get(506).'</h1>';

View file

@ -16,6 +16,7 @@ use Tie::IxHash;
use Tie::CPHash;
use WebGUI::Attachment;
use WebGUI::Collateral;
use WebGUI::Grouping;
use WebGUI::HTMLForm;
use WebGUI::Icon;
use WebGUI::International;
@ -62,7 +63,7 @@ sub _submenu {
#-------------------------------------------------------------------
sub www_addThemeComponent {
return WebGUI::Privilege::insufficient unless (WebGUI::Privilege::isInGroup(9));
return WebGUI::Privilege::insufficient unless (WebGUI::Grouping::isInGroup(9));
my (@q, $output, $defaultList, $component, $f);
my $types = _getComponentTypes();
push(@q,{query=>"select collateralType,collateralId,name from collateral where collateralType='file' order by name",type=>"file"});
@ -103,7 +104,7 @@ sub www_addThemeComponent {
#-------------------------------------------------------------------
sub www_addThemeComponentSave {
return WebGUI::Privilege::insufficient unless (WebGUI::Privilege::isInGroup(9));
return WebGUI::Privilege::insufficient unless (WebGUI::Grouping::isInGroup(9));
my @ids = WebGUI::FormProcessor::selectList("id");
foreach my $id (@ids) {
$id =~ /^(.*?)\_(.*)/;
@ -118,7 +119,7 @@ sub www_addThemeComponentSave {
#-------------------------------------------------------------------
sub www_deleteTheme {
return WebGUI::Privilege::insufficient unless (WebGUI::Privilege::isInGroup(9));
return WebGUI::Privilege::insufficient unless (WebGUI::Grouping::isInGroup(9));
return WebGUI::Privilege::vitalComponent() if ($session{form}{themeId} < 1000 && $session{form}{themeId} > 0);
my $output = helpIcon(64);
$output .= '<h1>'.WebGUI::International::get(42).'</h1>';
@ -133,7 +134,7 @@ sub www_deleteTheme {
#-------------------------------------------------------------------
sub www_deleteThemeConfirm {
return WebGUI::Privilege::insufficient unless (WebGUI::Privilege::isInGroup(9));
return WebGUI::Privilege::insufficient unless (WebGUI::Grouping::isInGroup(9));
return WebGUI::Privilege::vitalComponent() if ($session{form}{themeId} < 1000 && $session{form}{themeId} > 0);
my $theme = WebGUI::SQL->quickHashRef("select * from theme where themeId=".$session{form}{themeId});
unless ($theme->{original}) {
@ -158,7 +159,7 @@ sub www_deleteThemeConfirm {
#-------------------------------------------------------------------
sub www_deleteThemeComponent {
return WebGUI::Privilege::insufficient unless (WebGUI::Privilege::isInGroup(9));
return WebGUI::Privilege::insufficient unless (WebGUI::Grouping::isInGroup(9));
return WebGUI::Privilege::vitalComponent() if ($session{form}{themeId} < 1000 && $session{form}{themeId} > 0);
my $output = helpIcon(4);
$output .= '<h1>'.WebGUI::International::get(42).'</h1>';
@ -173,7 +174,7 @@ sub www_deleteThemeComponent {
#-------------------------------------------------------------------
sub www_deleteThemeComponentConfirm {
return WebGUI::Privilege::insufficient unless (WebGUI::Privilege::isInGroup(9));
return WebGUI::Privilege::insufficient unless (WebGUI::Grouping::isInGroup(9));
return WebGUI::Privilege::vitalComponent() if ($session{form}{themeId} < 1000 && $session{form}{themeId} > 0);
WebGUI::SQL->write("delete from themeComponent where themeComponentId=".$session{form}{themeComponentId});
return www_editTheme();
@ -181,7 +182,7 @@ sub www_deleteThemeComponentConfirm {
#-------------------------------------------------------------------
sub www_editTheme {
return WebGUI::Privilege::insufficient unless (WebGUI::Privilege::isInGroup(9));
return WebGUI::Privilege::insufficient unless (WebGUI::Grouping::isInGroup(9));
my ($output, $theme, $f);
unless($session{form}{themeId} eq "new") {
$theme = WebGUI::SQL->quickHashRef("select * from theme where themeId=$session{form}{themeId}");
@ -242,7 +243,7 @@ sub www_editTheme {
#-------------------------------------------------------------------
sub www_editThemeSave {
return WebGUI::Privilege::insufficient unless (WebGUI::Privilege::isInGroup(9));
return WebGUI::Privilege::insufficient unless (WebGUI::Grouping::isInGroup(9));
if ($session{form}{themeId} eq "new") {
$session{form}{themeId} = getNextId("themeId");
WebGUI::SQL->write("insert into theme (themeId,webguiVersion,original,versionNumber)
@ -260,7 +261,7 @@ sub www_editThemeSave {
#-------------------------------------------------------------------
sub www_exportTheme {
return WebGUI::Privilege::insufficient unless (WebGUI::Privilege::isInGroup(9));
return WebGUI::Privilege::insufficient unless (WebGUI::Grouping::isInGroup(9));
my $tempId = "theme".$session{form}{themeId};
my $propertyFile = WebGUI::Attachment->new("_theme.properties","temp",$tempId);
WebGUI::SQL->write("update theme set versionNumber=versionNumber+1, webguiVersion=".quote($WebGUI::VERSION)
@ -307,7 +308,7 @@ sub www_exportTheme {
#-------------------------------------------------------------------
sub www_importTheme {
return WebGUI::Privilege::insufficient unless (WebGUI::Privilege::isInGroup(9));
return WebGUI::Privilege::insufficient unless (WebGUI::Grouping::isInGroup(9));
my $output = helpIcon(63);
$output .= '<h1>'.WebGUI::International::get(927).'</h1>';
my $f = WebGUI::HTMLForm->new;
@ -326,7 +327,7 @@ sub www_importTheme {
#-------------------------------------------------------------------
sub www_importThemeValidate {
return WebGUI::Privilege::insufficient unless (WebGUI::Privilege::isInGroup(9));
return WebGUI::Privilege::insufficient unless (WebGUI::Grouping::isInGroup(9));
my $output = helpIcon(63);
$output .= '<h1>'.WebGUI::International::get(927).'</h1>';
my $a = WebGUI::Attachment->new("","temp");
@ -381,7 +382,7 @@ sub www_importThemeValidate {
#-------------------------------------------------------------------
sub www_importThemeSave {
return WebGUI::Privilege::insufficient unless (WebGUI::Privilege::isInGroup(9));
return WebGUI::Privilege::insufficient unless (WebGUI::Grouping::isInGroup(9));
my $propertiesFile = WebGUI::Attachment->new("_theme.properties","temp",$session{form}{extractionPoint});
my $theme = $propertiesFile->getHashref;
my $themeId = getNextId("themeId");
@ -421,7 +422,7 @@ sub www_importThemeSave {
#-------------------------------------------------------------------
sub www_listThemes {
return WebGUI::Privilege::insufficient unless (WebGUI::Privilege::isInGroup(9));
return WebGUI::Privilege::insufficient unless (WebGUI::Grouping::isInGroup(9));
my (@data, @row, $i, $p);
my $output = helpIcon(61);
$output .= '<h1>'.WebGUI::International::get(899).'</h1>';
@ -449,7 +450,7 @@ sub www_listThemes {
#-------------------------------------------------------------------
sub www_viewTheme {
return WebGUI::Privilege::insufficient unless (WebGUI::Privilege::isInGroup(9));
return WebGUI::Privilege::insufficient unless (WebGUI::Grouping::isInGroup(9));
my ($output, $theme, $f);
$theme = WebGUI::SQL->quickHashRef("select * from theme where themeId=$session{form}{themeId}");
$output .= '<h1>'.WebGUI::International::get(930).'</h1>';

View file

@ -14,6 +14,7 @@ use Exporter;
use strict qw(vars subs);
use Tie::CPHash;
use WebGUI::DateTime;
use WebGUI::Grouping;
use WebGUI::Icon;
use WebGUI::Operation::Shared;
use WebGUI::Paginator;
@ -121,7 +122,7 @@ sub _submenu {
if ($session{form}{systemTrash} ne "1") {
$menu{WebGUI::URL::page('op=emptyTrash')} = WebGUI::International::get(11);
}
if ( ($session{setting}{sharedTrash} ne "1") && (WebGUI::Privilege::isInGroup(3)) ) {
if ( ($session{setting}{sharedTrash} ne "1") && (WebGUI::Grouping::isInGroup(3)) ) {
$menu{WebGUI::URL::page('op=manageTrash&systemTrash=1')} = WebGUI::International::get(964);
if ($session{form}{systemTrash} eq "1") {
$menu{WebGUI::URL::page('op=emptyTrash&systemTrash=1')} = WebGUI::International::get(967);
@ -133,9 +134,9 @@ sub _submenu {
#-------------------------------------------------------------------
sub www_cutTrashItem {
return WebGUI::Privilege::insufficient() unless (WebGUI::Privilege::isInGroup(4));
return WebGUI::Privilege::insufficient() unless (WebGUI::Grouping::isInGroup(4));
if ($session{form}{wid} ne "") {
if ( ($session{setting}{sharedTrash} ne "1") && (!(WebGUI::Privilege::isInGroup(3)) ) ) {
if ( ($session{setting}{sharedTrash} ne "1") && (!(WebGUI::Grouping::isInGroup(3)) ) ) {
my ($bufferUserId) = WebGUI::SQL->quickArray("select bufferUserId from wobject "
."where wobjectId=" .$session{form}{wid});
return WebGUI::Privilege::insufficient() unless ($bufferUserId eq $session{user}{userId});
@ -149,7 +150,7 @@ sub www_cutTrashItem {
} elsif ($session{form}{pageId} ne "") {
my $page = WebGUI::Page->getPage($session{form}{pageId});
if ( ($session{setting}{sharedTrash} ne "1") && (!(WebGUI::Privilege::isInGroup(3)) ) ) {
if ( ($session{setting}{sharedTrash} ne "1") && (!(WebGUI::Grouping::isInGroup(3)) ) ) {
my ($bufferUserId) = $page->get("bufferUserId");
return WebGUI::Privilege::insufficient() unless ($bufferUserId eq $session{user}{userId});
}
@ -165,7 +166,7 @@ sub www_cutTrashItem {
#-------------------------------------------------------------------
sub www_deleteTrashItem {
return WebGUI::Privilege::insufficient() unless (WebGUI::Privilege::isInGroup(4));
return WebGUI::Privilege::insufficient() unless (WebGUI::Grouping::isInGroup(4));
my ($output);
if ($session{form}{wid} ne "") {
$output .= helpIcon(14);
@ -188,9 +189,9 @@ sub www_deleteTrashItem {
#-------------------------------------------------------------------
sub www_deleteTrashItemConfirm {
return WebGUI::Privilege::insufficient() unless (WebGUI::Privilege::isInGroup(4));
return WebGUI::Privilege::insufficient() unless (WebGUI::Grouping::isInGroup(4));
if ($session{form}{wid} ne "") {
if ( ($session{setting}{sharedTrash} eq "1") || (WebGUI::Privilege::isInGroup(3)) ) {
if ( ($session{setting}{sharedTrash} eq "1") || (WebGUI::Grouping::isInGroup(3)) ) {
_purgeWobject($session{form}{wid});
} else {
my ($bufferUserId) = WebGUI::SQL->quickArray("select bufferUserId from wobject "
@ -202,7 +203,7 @@ sub www_deleteTrashItemConfirm {
} elsif ($session{form}{pageId} ne "") {
my $page = WebGUI::Page->getPage($session{form}{pageId});
unless ( ($session{setting}{sharedTrash} eq "1") || (WebGUI::Privilege::isInGroup(3)) ) {
unless ( ($session{setting}{sharedTrash} eq "1") || (WebGUI::Grouping::isInGroup(3)) ) {
my ($bufferUserId) = $page->get("bufferUserId");
return WebGUI::Privilege::insufficient() unless ($bufferUserId eq $session{user}{userId});
}
@ -221,7 +222,7 @@ sub www_deleteTrashItemConfirm {
#-------------------------------------------------------------------
sub www_emptyTrash {
return WebGUI::Privilege::insufficient() unless (WebGUI::Privilege::isInGroup(4));
return WebGUI::Privilege::insufficient() unless (WebGUI::Grouping::isInGroup(4));
my ($output);
$output = helpIcon(46);
$output .= '<h1>'.WebGUI::International::get(42).'</h1>';
@ -241,12 +242,12 @@ sub www_emptyTrash {
#-------------------------------------------------------------------
sub www_emptyTrashConfirm {
return WebGUI::Privilege::insufficient() unless (WebGUI::Privilege::isInGroup(4));
return WebGUI::Privilege::insufficient() unless (WebGUI::Grouping::isInGroup(4));
my ($allUsers, $page, $currentPage, $currentWobjectPage);
if ($session{setting}{sharedTrash} eq "1") {
$allUsers = 1;
} elsif ($session{form}{systemTrash} eq "1") {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
$allUsers = 1;
} else {
$allUsers = 0;
@ -271,7 +272,7 @@ sub www_emptyTrashConfirm {
#-------------------------------------------------------------------
sub www_manageTrash {
return WebGUI::Privilege::insufficient() unless (WebGUI::Privilege::isInGroup(4));
return WebGUI::Privilege::insufficient() unless (WebGUI::Grouping::isInGroup(4));
my ($sth, @data, @row, @sorted_row, $i, $p, $allUsers);
my $output = helpIcon(66);
@ -281,7 +282,7 @@ sub www_manageTrash {
$allUsers = 1;
$output .= '<h1>'. WebGUI::International::get(962) .'</h1>';
} elsif ($session{form}{systemTrash} eq "1") {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
$allUsers = 1;
$output .= '<h1>'. WebGUI::International::get(965) .'</h1>';
} else {

View file

@ -38,7 +38,7 @@ our @EXPORT = qw(&www_editUserKarma &www_editUserKarmaSave &www_editUserGroup &w
sub _submenu {
my ($output, %menu);
tie %menu, 'Tie::IxHash';
if (WebGUI::Privilege::isInGroup(3)) {
if (WebGUI::Grouping::isInGroup(3)) {
$menu{WebGUI::URL::page("op=addUser")} = WebGUI::International::get(169);
unless ($session{form}{op} eq "listUsers"
|| $session{form}{op} eq "addUser"
@ -63,7 +63,7 @@ sub _submenu {
#-------------------------------------------------------------------
sub www_addUser {
my ($output, $f, $cmd, $html, %status);
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3) || WebGUI::Privilege::isInGroup(11));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3) || WebGUI::Grouping::isInGroup(11));
$output .= helpIcon(5);
$output .= '<h1>'.WebGUI::International::get(163).'</h1>';
$output .= WebGUI::Form::_javascriptFile("swapLayers.js");
@ -79,7 +79,7 @@ sub www_addUser {
$f->text("username",WebGUI::International::get(50),$session{form}{username});
$f->email("email",WebGUI::International::get(56));
if(WebGUI::Privilege::isInGroup(3)){
if(WebGUI::Grouping::isInGroup(3)){
tie %status, 'Tie::IxHash';
%status = (
Active =>WebGUI::International::get(817),
@ -123,7 +123,7 @@ sub www_addUser {
#-------------------------------------------------------------------
sub www_addUserSave {
my (@groups, $uid, $u);
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3) || WebGUI::Privilege::isInGroup(11));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3) || WebGUI::Grouping::isInGroup(11));
($uid) = WebGUI::SQL->quickArray("select userId from users where username=".quote($session{form}{username}));
return www_addUser if ($uid);
@ -139,13 +139,13 @@ sub www_addUserSave {
@groups = $session{cgi}->param('groups');
$u->addToGroups(\@groups);
$u->profileField("email",$session{form}{email});
return _submenu(WebGUI::International::get(978)) if(!WebGUI::Privilege::isInGroup(3));
return _submenu(WebGUI::International::get(978)) if(!WebGUI::Grouping::isInGroup(3));
return www_editUser();
}
#-------------------------------------------------------------------
sub www_addUserToGroupSave {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
my (@groups, $u);
@groups = $session{cgi}->param('groups');
$u = WebGUI::User->new($session{form}{uid});
@ -155,7 +155,7 @@ sub www_addUserToGroupSave {
#-------------------------------------------------------------------
sub www_becomeUser {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
WebGUI::Session::end($session{var}{sessionId});
WebGUI::Session::start($session{form}{uid});
return "";
@ -163,7 +163,7 @@ sub www_becomeUser {
#-------------------------------------------------------------------
sub www_deleteGrouping {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
if (($session{user}{userId} == $session{form}{uid} || $session{form}{uid} == 3) && $session{form}{gid} == 3) {
return WebGUI::Privilege::vitalComponent();
}
@ -178,7 +178,7 @@ sub www_deleteGrouping {
#-------------------------------------------------------------------
sub www_deleteUser {
my ($output);
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
if ($session{form}{uid} < 26) {
return WebGUI::Privilege::vitalComponent();
} else {
@ -195,7 +195,7 @@ sub www_deleteUser {
#-------------------------------------------------------------------
sub www_deleteUserConfirm {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
my ($u);
if ($session{form}{uid} < 26) {
return WebGUI::Privilege::vitalComponent();
@ -208,7 +208,7 @@ sub www_deleteUserConfirm {
#-------------------------------------------------------------------
sub www_editGrouping {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
my $output .= '<h1>'.WebGUI::International::get(370).'</h1>';
my $f = WebGUI::HTMLForm->new;
$f->hidden("op","editGroupingSave");
@ -231,7 +231,7 @@ sub www_editGrouping {
#-------------------------------------------------------------------
sub www_editGroupingSave {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
WebGUI::Grouping::userGroupExpireDate($session{form}{uid},$session{form}{gid},setToEpoch($session{form}{expireDate}));
WebGUI::Grouping::userGroupAdmin($session{form}{uid},$session{form}{gid},$session{form}{groupAdmin});
return www_editUserGroup();
@ -239,7 +239,7 @@ sub www_editGroupingSave {
#-------------------------------------------------------------------
sub www_editUser {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
my ($output, $f, $u, $cmd, $html, %status);
$u = WebGUI::User->new($session{form}{uid});
$output .= WebGUI::Form::_javascriptFile("swapLayers.js");
@ -293,7 +293,7 @@ sub www_editUser {
#-------------------------------------------------------------------
sub www_editUserSave {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
my ($error, $uid, $u);
($uid) = WebGUI::SQL->quickArray("select userId from users where username=".quote($session{form}{username}));
@ -314,7 +314,7 @@ sub www_editUserSave {
#-------------------------------------------------------------------
sub www_editUserGroup {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
my ($output, $f, $groups, $sth, %hash);
tie %hash, 'Tie::CPHash';
$output .= '<h1>'.WebGUI::International::get(372).'</h1>';
@ -355,7 +355,7 @@ sub www_editUserGroup {
#-------------------------------------------------------------------
sub www_editUserKarma {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
my ($output, $f, $a, %user, %data, $method, $values, $category, $label, $default, $previousCategory);
$output = helpIcon(36);
$output .= '<h1>'.WebGUI::International::get(558).'</h1>';
@ -371,7 +371,7 @@ sub www_editUserKarma {
#-------------------------------------------------------------------
sub www_editUserKarmaSave {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
my ($u);
$u = WebGUI::User->new($session{form}{uid});
$u->karma($session{form}{amount},$session{user}{username}." (".$session{user}{userId}.")",$session{form}{description});
@ -380,7 +380,7 @@ sub www_editUserKarmaSave {
#-------------------------------------------------------------------
sub www_editUserProfile {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
my ($output, $f, $a, %user, %data, $method, $values, $category, $label, $default, $previousCategory);
tie %data, 'Tie::CPHash';
$output = helpIcon(32);
@ -448,7 +448,7 @@ sub www_editUserProfile {
#-------------------------------------------------------------------
sub www_editUserProfileSave {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
my ($a, %field, $u);
tie %field, 'Tie::CPHash';
$u = WebGUI::User->new($session{form}{uid});
@ -465,7 +465,7 @@ sub www_editUserProfileSave {
#-------------------------------------------------------------------
sub www_listUsers {
return WebGUI::Privilege::adminOnly() unless (WebGUI::Privilege::isInGroup(3));
return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3));
WebGUI::Session::setScratch("userSearchKeyword",$session{form}{keyword});
WebGUI::Session::setScratch("userSearchStatus",$session{form}{status});
my ($output, $data, $f, $rows, $p, $search, %status, $selectedStatus);