diff --git a/docs/changelog/7.x.x.txt b/docs/changelog/7.x.x.txt index d801d3bb8..b0d5d12b0 100644 --- a/docs/changelog/7.x.x.txt +++ b/docs/changelog/7.x.x.txt @@ -1,4 +1,5 @@ 7.7.1 + - rfe #9353: Welcome message template 7.7.0 - fixed #9913: New Content Side Bar missing in Asset window diff --git a/docs/upgrades/packages-7.7.1/root_import_auth_webgui_create_default-webgui-welcome-message-template.wgpkg b/docs/upgrades/packages-7.7.1/root_import_auth_webgui_create_default-webgui-welcome-message-template.wgpkg new file mode 100644 index 000000000..868b4da2b Binary files /dev/null and b/docs/upgrades/packages-7.7.1/root_import_auth_webgui_create_default-webgui-welcome-message-template.wgpkg differ diff --git a/docs/upgrades/upgrade_7.7.0-7.7.1.pl b/docs/upgrades/upgrade_7.7.0-7.7.1.pl index 1bfaeb404..743274c68 100644 --- a/docs/upgrades/upgrade_7.7.0-7.7.1.pl +++ b/docs/upgrades/upgrade_7.7.0-7.7.1.pl @@ -32,8 +32,17 @@ my $session = start(); # this line required # upgrade functions go here +addWelcomeMessageTemplateToSettings( $session ); + finish($session); # this line required +sub addWelcomeMessageTemplateToSettings { + my $session = shift; + print "\tAdding welcome message template to settings \n" unless $quiet; + + $session->db->write("insert into settings values ('webguiWelcomeMessageTemplate', 'PBtmpl0000000000000015');"); + print "Done.\n" unless $quiet; +} #---------------------------------------------------------------------------- # Describe what our function does diff --git a/lib/WebGUI/Auth.pm b/lib/WebGUI/Auth.pm index b39f72804..dbfec3184 100644 --- a/lib/WebGUI/Auth.pm +++ b/lib/WebGUI/Auth.pm @@ -298,11 +298,14 @@ sub createAccountSave { $self->saveParams($userId,$self->authMethod,$properties); if ($self->getSetting("sendWelcomeMessage")){ - my $authInfo = "\n\n".$i18n->get(50).": ".$username; - $authInfo .= "\n".$i18n->get(51).": ".$password if($password); - $authInfo .= "\n\n"; - WebGUI::Inbox->new($self->session)->addMessage({ - message => $self->getSetting("welcomeMessage").$authInfo, + my $var; + $var->{welcomeMessage} = $self->getSetting("welcomeMessage"); + $var->{newUser_username} = $username; + $var->{newUser_password} = $password; + my $message = WebGUI::Asset::Template->new($self->session,$self->getSetting('welcomeMessageTemplate'))->process($var); + WebGUI::Macro::process($self->session,\$message); + WebGUI::Inbox->new($self->session)->addMessage({ + message => $message, subject => $i18n->get(870), userId => $self->userId, status => 'completed', diff --git a/lib/WebGUI/Auth/WebGUI.pm b/lib/WebGUI/Auth/WebGUI.pm index a0bc70e45..f8f0043c0 100644 --- a/lib/WebGUI/Auth/WebGUI.pm +++ b/lib/WebGUI/Auth/WebGUI.pm @@ -497,7 +497,7 @@ sub editUserSettingsForm { -label => $i18n->get(868,'WebGUI'), -hoverHelp => $i18n->get('868 help','WebGUI'), ); - $f->textarea( + $f->HTMLArea( -name => "webguiWelcomeMessage", -value => $self->session->setting->get("webguiWelcomeMessage"), -label => $i18n->get(869,'WebGUI'), @@ -577,6 +577,13 @@ sub editUserSettingsForm { -label => $i18n->get("password recovery template"), -hoverHelp => $i18n->get("password recovery template help") ); + $f->template( + -name => "webguiWelcomeMessageTemplate", + -value => $self->session->setting->get("webguiWelcomeMessageTemplate"), + -namespace => "Auth/WebGUI/Welcome", + -label => $i18n->get("welcome message template"), + -hoverHelp => $i18n->get("welcome message template help") + ); $f->template( -name => "webguiAccountActivationTemplate", -value => $self->session->setting->get("webguiAccountActivationTemplate"), @@ -635,6 +642,7 @@ sub editUserSettingsFormSave { $s->set("webguiExpiredPasswordTemplate", $f->process("webguiExpiredPasswordTemplate","template")); $s->set("webguiLoginTemplate", $f->process("webguiLoginTemplate","template")); $s->set("webguiPasswordRecoveryTemplate", $f->process("webguiPasswordRecoveryTemplate","template")); + $s->set("webguiWelcomeMessageTemplate", $f->process("webguiWelcomeMessageTemplate","template")); $s->set("webguiAccountActivationTemplate", $f->process("webguiAccountActivationTemplate","template")); if (@errors) { diff --git a/lib/WebGUI/Help/AuthWebGUI.pm b/lib/WebGUI/Help/AuthWebGUI.pm index 6103b6cea..9eb272195 100644 --- a/lib/WebGUI/Help/AuthWebGUI.pm +++ b/lib/WebGUI/Help/AuthWebGUI.pm @@ -163,6 +163,18 @@ our $HELP = { related => [], }, + 'webgui welcome message template' => { + title => 'welcome message template title', + body => '', + variables => [ + { 'name' => 'welcomeMessage' }, + { 'name' => 'newUser_username' }, + { 'name' => 'newUser_password' }, + ], + fields => [], + related => [] + }, + 'account activation template' => { title => 'account activation template title', body => '', diff --git a/lib/WebGUI/Inbox/Message.pm b/lib/WebGUI/Inbox/Message.pm index 9cbcfbd19..fb6bf0b96 100644 --- a/lib/WebGUI/Inbox/Message.pm +++ b/lib/WebGUI/Inbox/Message.pm @@ -163,14 +163,9 @@ sub create { $preface = sprintf($i18n->get('from user preface'), $fromUser->username); } my $msg = (defined $properties->{emailMessage}) ? $properties->{emailMessage} : $self->{_properties}{message}; - if ($msg =~ m/\<.*\>/) { - $msg = '

' . $preface . '


'.$msg if($preface ne ""); - $mail->addHtml($msg); - } else { - $msg = $preface."\n\n".$msg if($preface ne ""); - $mail->addText($msg); - } - $mail->addFooter; + $msg = '

' . $preface . '


'.$msg if($preface ne ""); + $mail->addHtml($msg); + $mail->addFooter; $mail->queue; } $self->{_session} = $session; diff --git a/lib/WebGUI/i18n/English/AuthWebGUI.pm b/lib/WebGUI/i18n/English/AuthWebGUI.pm index 39ec97a98..e15756d17 100644 --- a/lib/WebGUI/i18n/English/AuthWebGUI.pm +++ b/lib/WebGUI/i18n/English/AuthWebGUI.pm @@ -65,7 +65,7 @@ our $I18N = { 'account activation template title' => { message => q|WebGUI Authentication Account Activation Mail Template|, lastUpdated => 1230600500, - context => q|The title of the help page for the webgui auth welcome message template.|, + context => q|The title of the help page for the webgui auth account activition mail template.|, }, 'account activation template' => { @@ -84,7 +84,33 @@ our $I18N = { message => q|The url to activate the newly created account.|, lastUpdated => 1230600500, }, - + + 'welcome message template title' => { + message => q|WebGUI Authentication Welcome Message Template|, + lastUpdated => 0, + context => q|The title of the help page for the webgui auth welcome message template.|, + }, + + 'welcome message template' => { + message => q|Welcome Message Template|, + lastUpdated => 0, + context => q|The label for the 'welcome message template' field on the Authentication tab of the Settings +screen.|, + }, + + 'welcome message template help' => { + message => q|Select a template for the welcome message that is sent to new users.|, + lastUpdated => 0, + context => q|The description of the 'welcome message template' field on the Authentication tab of the +Settings screen, displayed as hoverhelp.|, + }, + + 'welcomeMessage' => { + message => q|The welcome message as defined in the authentication settings.|, + lastUpdated => 0, + context => q|Description of the welcomeMessage tmpl_var for the template help.|, + }, + 'use captcha' => { message => q|Use captcha image?|, lastUpdated => 1078852836 @@ -764,6 +790,12 @@ our $I18N = { message => 'Username of registering user', }, + 'newUser_password' => { + message => q|The password for the newly created account.|, + lastUpdated => 0, + context => q|Description of the newUser_password tmpl_var for the template help.|, + }, + }; 1;