diff --git a/docs/upgrades/upgrade_4.0.4-4.1.0.sql b/docs/upgrades/upgrade_4.0.4-4.1.0.sql index 38ed193a4..dd773055b 100644 --- a/docs/upgrades/upgrade_4.0.4-4.1.0.sql +++ b/docs/upgrades/upgrade_4.0.4-4.1.0.sql @@ -10,4 +10,9 @@ create table karmaLog ( INSERT INTO international VALUES (537,'WebGUI','English','Karma'); INSERT INTO international VALUES (538,'WebGUI','English','Karma Threshold'); delete from groupings where groupId=1 or groupId=2 or groupId=7; +INSERT INTO international VALUES (539,'WebGUI','English','Enable Karma?'); +INSERT INTO international VALUES (540,'WebGUI','English','Karma Per Login'); +INSERT INTO settings VALUES ('useKarma','0'); +INSERT INTO settings VALUES ('karmaPerLogin','1'); + diff --git a/lib/WebGUI/Operation/Settings.pm b/lib/WebGUI/Operation/Settings.pm index 6876b0053..8fd73b252 100644 --- a/lib/WebGUI/Operation/Settings.pm +++ b/lib/WebGUI/Operation/Settings.pm @@ -21,7 +21,7 @@ use WebGUI::SQL; use WebGUI::URL; our @ISA = qw(Exporter); -our @EXPORT = qw(&www_editAuthenticationSettings &www_editAuthenticationSettingsSave &www_editCompanyInformation &www_editCompanyInformationSave +our @EXPORT = qw(&www_editUserSettings &www_editUserSettingsSave &www_editCompanyInformation &www_editCompanyInformationSave &www_editFileSettings &www_editFileSettingsSave &www_editMailSettings &www_editMailSettingsSave &www_editMiscSettings &www_editContentSettings &www_editContentSettingsSave &www_editMiscSettingsSave &www_manageSettings); @@ -31,18 +31,20 @@ sub _saveSetting { } #------------------------------------------------------------------- -sub www_editAuthenticationSettings { +sub www_editUserSettings { my ($output, %authMethod, $f); %authMethod = ('WebGUI'=>'WebGUI', 'LDAP'=>'LDAP'); if (WebGUI::Privilege::isInGroup(3)) { $output .= helpIcon(2); $output .= '

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

'; $f = WebGUI::HTMLForm->new; - $f->hidden("op","editAuthenticationSettingsSave"); + $f->hidden("op","editUserSettingsSave"); $f->integer("sessionTimeout",WebGUI::International::get(142),$session{setting}{sessionTimeout}); $f->yesNo("anonymousRegistration",WebGUI::International::get(118),$session{setting}{anonymousRegistration}); $f->yesNo("alertOnNewUser",WebGUI::International::get(534),$session{setting}{alertOnNewUser}); $f->group("onNewUserAlertGroup",WebGUI::International::get(535),[$session{setting}{onNewUserAlertGroup}]); + $f->yesNo("useKarma",WebGUI::International::get(539),$session{setting}{useKarma}); + $f->integer("karmaPerLogin",WebGUI::International::get(540),$session{setting}{karmaPerLogin}); $f->select("authMethod",\%authMethod,WebGUI::International::get(119),[$session{setting}{authMethod}]); $f->yesNo("usernameBinding",WebGUI::International::get(306),$session{setting}{usernameBinding}); $f->url("ldapURL",WebGUI::International::get(120),$session{setting}{ldapURL}); @@ -58,12 +60,14 @@ sub www_editAuthenticationSettings { } #------------------------------------------------------------------- -sub www_editAuthenticationSettingsSave { +sub www_editUserSettingsSave { if (WebGUI::Privilege::isInGroup(3)) { _saveSetting("sessionTimeout"); _saveSetting("onNewUserAlertGroup"); _saveSetting("alertOnNewUser"); _saveSetting("authMethod"); + _saveSetting("useKarma"); + _saveSetting("karmaPerLogin"); _saveSetting("ldapURL"); _saveSetting("ldapId"); _saveSetting("ldapIdName"); @@ -261,7 +265,7 @@ sub www_manageSettings { $output .= '
  • '.WebGUI::International::get(133).''; $output .= '
  • '.WebGUI::International::get(140).''; $output .= '
  • '.WebGUI::International::get(308).''; - $output .= '
  • '.WebGUI::International::get(117).''; + $output .= '
  • '.WebGUI::International::get(117).''; $output .= ''; } else { $output = WebGUI::Privilege::adminOnly();