add clipboard admin setting

This commit is contained in:
Graham Knop 2009-10-28 10:22:43 -05:00
parent c22c5ef3f7
commit c472e0c4b8
5 changed files with 45 additions and 15 deletions

View file

@ -17,6 +17,7 @@
- fixed #10887: Map Point dropdown doesn't update
- fixed #11172: Collaboration broken vars: isSecond, isThird etc.
- fixed #11165: DatePicker broken in IE7
- added: Manage System Clipboard group setting
7.8.2
- Added scheduled vendor payout workflow activity. (Special thanks to Martin @ Oqapi)

View file

@ -33,8 +33,18 @@ my $session = start(); # this line required
# upgrade functions go here
reKeyTemplateAttachments($session);
addSelectPaymentGatewayTemplateToSettings($session);
addClipboardAdminSetting($session);
finish($session); # this line required
#----------------------------------------------------------------------------
sub addClipboardAdminSetting {
my $session = shift;
print "\tAdding clipboard admin setting... " unless $quiet;
$session->setting->add('groupIdAdminClipboard', 3);
print "Done.\n" unless $quiet;
}
#----------------------------------------------------------------------------
# Describe what our function does

View file

@ -444,7 +444,7 @@ sub www_emptyClipboard {
my $self = shift;
my $ac = WebGUI::AdminConsole->new($self->session,"clipboard");
return $self->session->privilege->insufficient() unless ($self->session->user->isInGroup(4));
foreach my $asset (@{$self->getAssetsInClipboard(!($self->session->form->process("systemClipboard") && $self->session->user->isAdmin))}) {
foreach my $asset (@{$self->getAssetsInClipboard(!($self->session->form->process("systemClipboard") && $self->session->user->isInGroup($self->session->setting->get('groupIdAdminClipboard'))))}) {
$asset->trash;
}
return $self->www_manageClipboard();
@ -464,20 +464,29 @@ sub www_manageClipboard {
my $ac = WebGUI::AdminConsole->new($self->session,"clipboard");
return $self->session->privilege->insufficient() unless ($self->session->user->isInGroup(12));
my $i18n = WebGUI::International->new($self->session, "Asset");
my ($header,$limit);
if ($self->session->form->process("systemClipboard") && $self->session->user->isAdmin) {
$header = $i18n->get(966);
$ac->addSubmenuItem($self->getUrl('func=manageClipboard'), $i18n->get(949));
$ac->addSubmenuItem($self->getUrl('func=emptyClipboard;systemClipboard=1'), $i18n->get(959),
'onclick="return window.confirm(\''.$i18n->get(951,"WebGUI").'\')"',"Asset");
} else {
$ac->addSubmenuItem($self->getUrl('func=manageClipboard;systemClipboard=1'), $i18n->get(954));
$ac->addSubmenuItem($self->getUrl('func=emptyClipboard'), $i18n->get(950),
'onclick="return window.confirm(\''.$i18n->get(951,"WebGUI").'\')"',"Asset");
$limit = 1;
}
$self->session->style->setLink($self->session->url->extras('assetManager/assetManager.css'), {rel=>"stylesheet",type=>"text/css"});
$self->session->style->setScript($self->session->url->extras('assetManager/assetManager.js'), {type=>"text/javascript"});
my $header;
my $limit = 1;
my $canAdmin = $self->session->user->isInGroup($self->session->setting->get('groupIdAdminClipboard'));
if ($self->session->form->process("systemClipboard") && $canAdmin) {
$header = $i18n->get(966);
$ac->addSubmenuItem($self->getUrl('func=manageClipboard'), $i18n->get(949));
$ac->addSubmenuItem($self->getUrl('func=emptyClipboard;systemClipboard=1'), $i18n->get(959),
'onclick="return window.confirm(\''.$i18n->get(951,"WebGUI").'\')"',"Asset");
$limit = undef;
}
elsif ( $canAdmin ) {
$ac->addSubmenuItem($self->getUrl('func=manageClipboard;systemClipboard=1'), $i18n->get(954));
$ac->addSubmenuItem($self->getUrl('func=emptyClipboard'), $i18n->get(950),
'onclick="return window.confirm(\''.$i18n->get(951,"WebGUI").'\')"',"Asset");
}
else {
$ac->addSubmenuItem($self->getUrl('func=emptyClipboard'), $i18n->get(950),
'onclick="return window.confirm(\''.$i18n->get(951,"WebGUI").'\')"',"Asset");
}
$self->session->style->setLink($self->session->url->extras('assetManager/assetManager.css'), {rel=>"stylesheet",type=>"text/css"});
$self->session->style->setScript($self->session->url->extras('assetManager/assetManager.js'), {type=>"text/javascript"});
my $output = "
<script type=\"text/javascript\">
//<![CDATA[

View file

@ -520,6 +520,7 @@ sub definition {
groupIdAdminActiveSessions
groupIdAdminAdSpace
groupIdAdminCache
groupIdAdminClipboard
groupIdAdminCron
groupIdAdminDatabaseLink
groupIdAdminFilePump

View file

@ -3904,6 +3904,15 @@ LongTruncOk=1</p>
},
'settings groupIdAdminClipboard label' => {
message => q{Clipboard},
lastUpdated => 0,
},
'settings groupIdAdminClipboard hoverHelp' => {
message => q{Group to manage the system clipboard.},
lastUpdated => 0,
},
'settings groupIdAdminCron label' => {
message => q{Cron},