diff --git a/docs/upgrades/upgrade_4.4.1-4.5.0.sql b/docs/upgrades/upgrade_4.4.1-4.5.0.sql index 8e86a0053..85dd105f8 100644 --- a/docs/upgrades/upgrade_4.4.1-4.5.0.sql +++ b/docs/upgrades/upgrade_4.4.1-4.5.0.sql @@ -30,7 +30,6 @@ update wobject set editTimeout=editTimeout*3600; insert into international values (707,"WebGUI",1,"Show debugging?"); insert into settings values ('showDebug',0); update settings set name='imageManagersGroup' where name='groupToManageImages'; -insert into settings values ('packageManagersGroup',6); insert into settings values ('styleManagersGroup',5); insert into settings values ('templateManagersGroup',8); delete from international where internationalId=414 and namespace='WebGUI'; @@ -38,11 +37,10 @@ delete from international where internationalId=415 and namespace='WebGUI'; delete from international where internationalId=413 and namespace='WebGUI'; insert into international values (710,'WebGUI',1,'Edit Privilege Settings'); insert into international values (711,'WebGUI',1,'Image Managers Group'); -insert into international values (712,'WebGUI',1,'Package Managers Group'); insert into international values (713,'WebGUI',1,'Style Managers Group'); insert into international values (714,'WebGUI',1,'Template Managers Group'); delete from settings where name='onCriticalError'; - +update international set message='Add a new image group.' where internationalId=543 and namespace='WebGUI' and languageId=1; diff --git a/lib/WebGUI/Macro/AdminBar.pm b/lib/WebGUI/Macro/AdminBar.pm index 5df2a128e..767f167ee 100644 --- a/lib/WebGUI/Macro/AdminBar.pm +++ b/lib/WebGUI/Macro/AdminBar.pm @@ -72,7 +72,7 @@ sub _replacement { %hash ); } - if (WebGUI::Privilege::isInGroup(5,$session{user}{userId})) { + if (WebGUI::Privilege::isInGroup($session{setting}{styleManagersGroup},$session{user}{userId})) { %hash = ( WebGUI::URL::page('op=listStyles')=>WebGUI::International::get(6), %hash @@ -84,13 +84,13 @@ sub _replacement { %hash ); } - if (WebGUI::Privilege::isInGroup(8,$session{user}{userId})) { + if (WebGUI::Privilege::isInGroup($session{setting}{templateManagersGroup},$session{user}{userId})) { %hash = ( WebGUI::URL::page('op=listTemplates')=>WebGUI::International::get(508), %hash ); } - if (WebGUI::Privilege::isInGroup($session{setting}{groupToManageImages},$session{user}{userId})) { + if (WebGUI::Privilege::isInGroup($session{setting}{imageManagersGroup},$session{user}{userId})) { %hash = ( WebGUI::URL::page('op=listImages')=>WebGUI::International::get(394), %hash diff --git a/lib/WebGUI/Operation/Image.pm b/lib/WebGUI/Operation/Image.pm index 09d4217c7..d61bc26ec 100644 --- a/lib/WebGUI/Operation/Image.pm +++ b/lib/WebGUI/Operation/Image.pm @@ -28,10 +28,11 @@ use WebGUI::Utility; our @ISA = qw(Exporter); our @EXPORT = qw(&www_editImage &www_editImageSave &www_viewImage &www_deleteImage &www_deleteImageConfirm &www_listImages &www_deleteImageFile &www_editImageGroup &www_editImageGroupSave &www_viewImageGroup &www_deleteImageGroup &www_deleteImageGroupConfirm); + #------------------------------------------------------------------- sub www_deleteImage { my ($output); - if (WebGUI::Privilege::isInGroup($session{setting}{groupToManageImages})) { + if (WebGUI::Privilege::isInGroup($session{setting}{imageManagersGroup})) { $output .= helpIcon(23); $output .= '
'; @@ -49,7 +50,7 @@ sub www_deleteImage { #------------------------------------------------------------------- sub www_deleteImageConfirm { my ($image); - if (WebGUI::Privilege::isInGroup($session{setting}{groupToManageImages})) { + if (WebGUI::Privilege::isInGroup($session{setting}{imageManagersGroup})) { $image = WebGUI::Attachment->new("","images",$session{form}{iid}); $image->deleteNode; WebGUI::SQL->write("delete from images where imageId=$session{form}{iid}"); @@ -61,7 +62,7 @@ sub www_deleteImageConfirm { #------------------------------------------------------------------- sub www_deleteImageFile { - if (WebGUI::Privilege::isInGroup($session{setting}{groupToManageImages})) { + if (WebGUI::Privilege::isInGroup($session{setting}{imageManagersGroup})) { WebGUI::SQL->write("update images set filename='' where imageId=$session{form}{iid}"); return www_editImage(); } else { @@ -73,7 +74,7 @@ sub www_deleteImageFile { sub www_editImage { my ($output, %data, $image, $f, $imageGroupId); tie %data, 'Tie::CPHash'; - if (WebGUI::Privilege::isInGroup($session{setting}{groupToManageImages})) { + if (WebGUI::Privilege::isInGroup($session{setting}{imageManagersGroup})) { if ($session{form}{iid} eq "new") { $imageGroupId = $session{form}{gid}; } else { @@ -110,7 +111,7 @@ sub www_editImage { #------------------------------------------------------------------- sub www_editImageSave { my ($file, $sqlAdd, $test); - if (WebGUI::Privilege::isInGroup($session{setting}{groupToManageImages})) { + if (WebGUI::Privilege::isInGroup($session{setting}{imageManagersGroup})) { if ($session{form}{iid} eq "new") { $session{form}{iid} = getNextId("imageId"); WebGUI::SQL->write("insert into images (imageId) values ($session{form}{iid})"); @@ -141,10 +142,12 @@ sub www_editImageSave { #------------------------------------------------------------------- sub www_listImages { - my ($f, $output, $sth, %data, @row, $image, $p, $i, $search, $search_group, $imageGroupId, $isImageManager, $imageGroupParentId); + my ($f, $output, $sth, %data, @row, $image, $p, $i, $search, $search_group, + $isAdmin, $imageGroupId, $isImageManager, $imageGroupParentId); tie %data, 'Tie::CPHash'; if (WebGUI::Privilege::isInGroup(4)) { - $isImageManager = WebGUI::Privilege::isInGroup($session{setting}{groupToManageImages}); + $isImageManager = WebGUI::Privilege::isInGroup($session{setting}{imageManagersGroup}); + $isAdmin = WebGUI::Privilege::isInGroup(3); if($session{form}{gid} ne "") { $imageGroupId = $session{form}{gid}; } else { @@ -218,7 +221,7 @@ sub www_listImages { while (%data = $sth->hash) { $image = WebGUI::Attachment->new($data{filename},"images",$data{imageId}); $row[$i] = '
'; @@ -290,7 +293,7 @@ sub www_deleteImageGroup { sub www_deleteImageGroupConfirm { my ($image, %data); tie %data, 'Tie::CPHash'; - if (WebGUI::Privilege::isInGroup($session{setting}{groupToManageImages})) { + if (WebGUI::Privilege::isInGroup($session{setting}{imageManagersGroup})) { %data = WebGUI::SQL->quickHash("select parentId from imageGroup where imageGroupId=$session{form}{gid}"); WebGUI::SQL->write("update images set imageGroupId=$data{parentId} where imageGroupId=$session{form}{gid}"); WebGUI::SQL->write("update imageGroup set parentId=$data{parentId} where parentId=$session{form}{gid}"); @@ -307,7 +310,7 @@ sub www_editImageGroup { my ($output, %data, %parent_data, $image, $f); tie %data, 'Tie::CPHash'; tie %parent_data, 'Tie::CPHash'; - if (WebGUI::Privilege::isInGroup($session{setting}{groupToManageImages})) { + if (WebGUI::Privilege::isInGroup($session{setting}{imageManagersGroup})) { if ($session{form}{gid} eq "new") { } else { @@ -335,7 +338,7 @@ sub www_editImageGroup { #------------------------------------------------------------------- sub www_editImageGroupSave { my ($test); - if (WebGUI::Privilege::isInGroup($session{setting}{groupToManageImages})) { + if (WebGUI::Privilege::isInGroup($session{setting}{imageManagersGroup})) { if ($session{form}{gid} eq "new") { $session{form}{gid} = getNextId("imageGroupId"); WebGUI::SQL->write("insert into imageGroup (imageGroupId) values ($session{form}{gid})"); diff --git a/lib/WebGUI/Operation/Settings.pm b/lib/WebGUI/Operation/Settings.pm index 7c109ef4f..903c69f27 100644 --- a/lib/WebGUI/Operation/Settings.pm +++ b/lib/WebGUI/Operation/Settings.pm @@ -239,7 +239,6 @@ sub www_editPrivilegeSettings { $f = WebGUI::HTMLForm->new; $f->hidden("op","editPrivilegeSettingsSave"); $f->group("imageManagersGroup",WebGUI::International::get(711),[$session{setting}{imageManagersGroup}]); - $f->group("packageManagersGroup",WebGUI::International::get(712),[$session{setting}{packageManagersGroup}]); $f->group("styleManagersGroup",WebGUI::International::get(713),[$session{setting}{styleManagersGroup}]); $f->group("templateManagersGroup",WebGUI::International::get(714),[$session{setting}{templateManagersGroup}]); $f->submit; @@ -254,7 +253,6 @@ sub www_editPrivilegeSettings { sub www_editPrivilegeSettingsSave { if (WebGUI::Privilege::isInGroup(3)) { _saveSetting("imageManagersGroup"); - _saveSetting("packageManagersGroup"); _saveSetting("styleManagersGroup"); _saveSetting("templateManagersGroup"); return www_manageSettings(); diff --git a/lib/WebGUI/Operation/Style.pm b/lib/WebGUI/Operation/Style.pm index dbce5dc94..9844c2e9c 100644 --- a/lib/WebGUI/Operation/Style.pm +++ b/lib/WebGUI/Operation/Style.pm @@ -29,7 +29,7 @@ our @EXPORT = qw(&www_copyStyle &www_deleteStyle &www_deleteStyleConfirm &www_ed #------------------------------------------------------------------- sub www_copyStyle { my (%style); - if (WebGUI::Privilege::isInGroup(5)) { + if (WebGUI::Privilege::isInGroup($session{setting}{styleManagersGroup})) { %style = WebGUI::SQL->quickHash("select * from style where styleId=$session{form}{sid}"); WebGUI::SQL->write("insert into style (styleId,name,body,styleSheet) values (".getNextId("styleId").", ".quote('Copy of '.$style{name}).", ".quote($style{body}).", ".quote($style{styleSheet}).")"); @@ -44,7 +44,7 @@ sub www_deleteStyle { my ($output); if ($session{form}{sid} < 26 && $session{form}{sid} > 0) { return WebGUI::Privilege::vitalComponent(); - } elsif (WebGUI::Privilege::isInGroup(5)) { + } elsif (WebGUI::Privilege::isInGroup($session{setting}{styleManagersGroup})) { $output .= helpIcon(4); $output .= '
'; @@ -63,7 +63,7 @@ sub www_deleteStyle { sub www_deleteStyleConfirm { if ($session{form}{sid} < 26 && $session{form}{sid} > 0) { return WebGUI::Privilege::vitalComponent(); - } elsif (WebGUI::Privilege::isInGroup(5)) { + } elsif (WebGUI::Privilege::isInGroup($session{setting}{styleManagersGroup})) { WebGUI::SQL->write("delete from style where styleId=".$session{form}{sid}); WebGUI::SQL->write("update page set styleId=2 where styleId=".$session{form}{sid}); return www_listStyles(); @@ -76,7 +76,7 @@ sub www_deleteStyleConfirm { sub www_editStyle { my ($output, %style, $f); tie %style, 'Tie::CPHash'; - if (WebGUI::Privilege::isInGroup(5)) { + if (WebGUI::Privilege::isInGroup($session{setting}{styleManagersGroup})) { if ($session{form}{sid} eq "new") { $style{body} = "^AdminBar;\n\n
\n\n^-;\n\n"; $style{styleSheet} = ""; @@ -102,7 +102,7 @@ sub www_editStyle { #------------------------------------------------------------------- sub www_editStyleSave { - if (WebGUI::Privilege::isInGroup(5)) { + if (WebGUI::Privilege::isInGroup($session{setting}{styleManagersGroup})) { if ($session{form}{sid} eq "new") { $session{form}{sid} = getNextId("styleId"); WebGUI::SQL->write("insert into style (styleId) values ($session{form}{sid})"); @@ -119,7 +119,7 @@ sub www_editStyleSave { #------------------------------------------------------------------- sub www_listStyles { my ($output, $sth, @data, @row, $i, $p); - if (WebGUI::Privilege::isInGroup(5)) { + if (WebGUI::Privilege::isInGroup($session{setting}{styleManagersGroup})) { $output = helpIcon(9); $output .= ''; @@ -65,7 +65,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::Privilege::isInGroup($session{setting}{templateManagersGroup})) { $a = WebGUI::SQL->read("select * from page where templateId=".$session{form}{tid}); while (($pageId) = $a->array) { WebGUI::SQL->write("update wobject set templatePosition=0 where pageId=$pageId"); @@ -83,7 +83,7 @@ sub www_deleteTemplateConfirm { sub www_editTemplate { my ($output, %template, $f); tie %template, 'Tie::CPHash'; - if (WebGUI::Privilege::isInGroup(8)) { + if (WebGUI::Privilege::isInGroup($session{setting}{templateManagersGroup})) { if ($session{form}{tid} eq "new") { $template{template} = "
| \n\n^0;\n\n | \n