From: Roland Mas
Date: Mon, 15 Mar 2010 13:03:46 +0000 (+0000)
Subject: Swap var and section in config accessors, and make 'core' the default section
X-Git-Tag: v5.1~2889
X-Git-Url: https://scm.fusionforge.org/anonscm/gitweb?p=fusionforge%2Ffusionforge.git;a=commitdiff_plain;h=b6382d046d5077de63b5c97d0a3fab7abf186999
Swap var and section in config accessors, and make 'core' the default section
---
diff --git a/gforge/common/forum/ForumMessage.class.php b/gforge/common/forum/ForumMessage.class.php
index f95802e532..078b595775 100644
--- a/gforge/common/forum/ForumMessage.class.php
+++ b/gforge/common/forum/ForumMessage.class.php
@@ -690,7 +690,7 @@ Or reply to this e-mail entering your response between the following markers:
_("You are receiving this email because you elected to monitor this forum.".
"\nTo stop monitoring this forum, login to %s and visit: \n%s\n"),
$text,
- fusionforge_get_config ('core', 'forge_name'),
+ fusionforge_get_config ('forge_name'),
util_make_url('/forum/monitor.php?forum_id='.$this->Forum->getID().
'&group_id='.$this->Forum->Group->getID().'&stop=1')
);
@@ -853,7 +853,7 @@ Or reply to this e-mail entering your response between the following markers:
$body .=
"\n\n______________________________________________________________________".
"\nYou are receiving this email because you elected to monitor this forum.".
- "\nTo stop monitoring this forum, login to ".fusionforge_get_config ('core', 'forge_name')." and visit: ".
+ "\nTo stop monitoring this forum, login to ".fusionforge_get_config ('forge_name')." and visit: ".
"\n".util_make_url ('/forum/monitor.php?forum_id='.$this->Forum->getID() .'&group_id='.$this->Forum->Group->getID().'&stop=1');
$extra_headers = "Return-Path: \n";
diff --git a/gforge/common/frs/FRSRelease.class.php b/gforge/common/frs/FRSRelease.class.php
index 9bb270cd45..f782306347 100644
--- a/gforge/common/frs/FRSRelease.class.php
+++ b/gforge/common/frs/FRSRelease.class.php
@@ -303,7 +303,7 @@ notified in the future, please login to %5$s and click this link:
$this->FRSPackage->Group->getUnixName(),
$this->FRSPackage->getName(),
util_make_url ("/frs/?group_id=". $this->FRSPackage->Group->getID() ."&release_id=". $this->getID()),
- fusionforge_get_config ('core', 'forge_name'),
+ fusionforge_get_config ('forge_name'),
util_make_url ("/frs/monitor.php?filemodule_id=".$this->FRSPackage->getID()."&group_id=".$this->FRSPackage->Group->getID()."&stop=1")));
// $text = util_line_wrap($text);
if (count($arr)) {
diff --git a/gforge/common/include/Group.class.php b/gforge/common/include/Group.class.php
index 5c84eefe7e..3749f1ff2b 100644
--- a/gforge/common/include/Group.class.php
+++ b/gforge/common/include/Group.class.php
@@ -2261,9 +2261,9 @@ if there is anything we can do to help you.
$this->getPublicName(),
$this->getUnixName(),
util_make_url ('/project/admin/?group_id='.$this->getID()),
- fusionforge_get_config ('core', 'forge_name'));
+ fusionforge_get_config ('forge_name'));
- util_send_message($row_admins['email'], sprintf(_('%1$s Project Approved'), fusionforge_get_config ('core', 'forge_name')), $message);
+ util_send_message($row_admins['email'], sprintf(_('%1$s Project Approved'), fusionforge_get_config ('forge_name')), $message);
setup_gettext_from_context();
}
@@ -2306,7 +2306,7 @@ Project Unix Name: %2$s
Reasons for negative decision:
-'), $this->getPublicName(), $this->getUnixName(), fusionforge_get_config ('core', 'forge_name'));
+'), $this->getPublicName(), $this->getUnixName(), fusionforge_get_config ('forge_name'));
// Check to see if they want to send a custom rejection response
if ($response_id == 0) {
@@ -2318,7 +2318,7 @@ Reasons for negative decision:
"response_text");
}
- util_send_message($row_admins['email'], sprintf(_('%1$s Project Denied'), fusionforge_get_config ('core', 'forge_name')), $response);
+ util_send_message($row_admins['email'], sprintf(_('%1$s Project Denied'), fusionforge_get_config ('forge_name')), $response);
setup_gettext_from_context();
}
@@ -2373,13 +2373,13 @@ Submitter: %5$s (%6$s)
Please visit the following URL to approve or reject this project:
%4$s'),
- fusionforge_get_config ('core', 'forge_name'),
+ fusionforge_get_config ('forge_name'),
$this->getPublicName(),
util_unconvert_htmlspecialchars($this->getRegistrationPurpose()),
util_make_url ('/admin/approve-pending.php'),
$submitter->getRealName(),
$submitter->getUnixName());
- util_send_message($admin_email, sprintf(_('New %1$s Project Submitted'), fusionforge_get_config ('core', 'forge_name')), $message);
+ util_send_message($admin_email, sprintf(_('New %1$s Project Submitted'), fusionforge_get_config ('forge_name')), $message);
setup_gettext_from_context();
}
@@ -2392,9 +2392,9 @@ Please visit the following URL to approve or reject this project:
Project Full Name: %2$s
Submitted Description: %3$s
-The %1$s admin team will now examine your project submission. You will be notified of their decision.'), fusionforge_get_config ('core', 'forge_name'), $this->getPublicName(), util_unconvert_htmlspecialchars($this->getRegistrationPurpose()), $GLOBALS['sys_default_domain']);
+The %1$s admin team will now examine your project submission. You will be notified of their decision.'), fusionforge_get_config ('forge_name'), $this->getPublicName(), util_unconvert_htmlspecialchars($this->getRegistrationPurpose()), $GLOBALS['sys_default_domain']);
- util_send_message($email, sprintf(_('New %1$s Project Submitted'), fusionforge_get_config ('core', 'forge_name')), $message);
+ util_send_message($email, sprintf(_('New %1$s Project Submitted'), fusionforge_get_config ('forge_name')), $message);
setup_gettext_from_context();
return true;
diff --git a/gforge/common/include/Navigation.class.php b/gforge/common/include/Navigation.class.php
index e6425fcc82..7db36722b0 100644
--- a/gforge/common/include/Navigation.class.php
+++ b/gforge/common/include/Navigation.class.php
@@ -55,9 +55,9 @@ class Navigation extends Error {
if (!$asHTML) {
// get the title
if (!$params['title']) {
- return fusionforge_get_config ('core', 'forge_name') ;
+ return fusionforge_get_config ('forge_name') ;
} else {
- return fusionforge_get_config ('core', 'forge_name') . ': ' . $params['title'];
+ return fusionforge_get_config ('forge_name') . ': ' . $params['title'];
}
} else {
// return HTML code otherwise
@@ -93,17 +93,17 @@ class Navigation extends Error {
$res['titles'] = array();
$res['urls'] = array();
- $res['titles'][] = fusionforge_get_config ('core', 'forge_name').' - Project News Highlights RSS';
+ $res['titles'][] = fusionforge_get_config ('forge_name').' - Project News Highlights RSS';
$res['urls'][] = util_make_url('/export/rss_sfnews.php');
- $res['titles'][] = fusionforge_get_config ('core', 'forge_name').' - Project News Highlights RSS 2.0';
+ $res['titles'][] = fusionforge_get_config ('forge_name').' - Project News Highlights RSS 2.0';
$res['urls'][] = util_make_url('/export/rss20_news.php');
- $res['titles'][] = fusionforge_get_config ('core', 'forge_name').' - New Projects RSS';
+ $res['titles'][] = fusionforge_get_config ('forge_name').' - New Projects RSS';
$res['urls'][] = util_make_url('/export/rss_sfprojects.php');
if (isset($GLOBALS['group_id'])) {
- $res['titles'][] = fusionforge_get_config ('core', 'forge_name') . ' - New Activity RSS';
+ $res['titles'][] = fusionforge_get_config ('forge_name') . ' - New Activity RSS';
$res['urls'][] = util_make_url('/export/rss20_activity.php?group_id='.$GLOBALS['group_id']);
}
return $res;
@@ -201,7 +201,7 @@ class Navigation extends Error {
$res['titles'][] = _('Log In');
$res['urls'][] = util_make_url($url);
- if (!fusionforge_get_config ('core', 'user_registration_restricted')) {
+ if (!fusionforge_get_config ('user_registration_restricted')) {
$res['titles'][] = _('New Account');
$res['urls'][] = util_make_url('/account/register.php');
}
diff --git a/gforge/common/include/User.class.php b/gforge/common/include/User.class.php
index 1b19fca45d..8dd9a2da1d 100644
--- a/gforge/common/include/User.class.php
+++ b/gforge/common/include/User.class.php
@@ -428,10 +428,10 @@ Enjoy the site.
'),
$this->getUnixName(),
util_make_url ('/account/verify.php?confirm_hash=_'.$this->getConfirmHash()),
- fusionforge_get_config ('core', 'forge_name')));
+ fusionforge_get_config ('forge_name')));
util_send_message(
$this->getEmail(),
- sprintf(_('%1$s Account Registration'), fusionforge_get_config ('core', 'forge_name')),
+ sprintf(_('%1$s Account Registration'), fusionforge_get_config ('forge_name')),
$message
);
}
diff --git a/gforge/common/include/config.php b/gforge/common/include/config.php
index 02decdad68..e087b7020c 100644
--- a/gforge/common/include/config.php
+++ b/gforge/common/include/config.php
@@ -71,13 +71,13 @@ if (!isset ($fusionforge_config)) {
$fusionforge_config = new FusionForgeConfig () ;
}
-function fusionforge_get_config ($section, $var) {
+function fusionforge_get_config ($var, $section = 'core') {
$c = FusionForgeConfig::get_instance () ;
return $c->get_value ($section, $var) ;
}
-function fusionforge_define_config_item ($section, $var, $default) {
+function fusionforge_define_config_item ($var, $section, $default) {
$c = FusionForgeConfig::get_instance () ;
return $c->set_value ($section, $var, $default) ;
diff --git a/gforge/common/mail/MailingList.class.php b/gforge/common/mail/MailingList.class.php
index 076709840d..78b4896e9d 100644
--- a/gforge/common/mail/MailingList.class.php
+++ b/gforge/common/mail/MailingList.class.php
@@ -193,8 +193,8 @@ You are encouraged to change this password as soon as possible.
Thank you for registering your project with %1$s.
-- the %1$s staff
-'), fusionforge_get_config ('core', 'forge_name'), $GLOBALS['sys_lists_host'], $realListName, $this->getExternalInfoUrl(), $this->getExternalAdminUrl(), $listPassword);
- $mailSubject = sprintf(_('%1$s New Mailing List'), fusionforge_get_config ('core', 'forge_name'));
+'), fusionforge_get_config ('forge_name'), $GLOBALS['sys_lists_host'], $realListName, $this->getExternalInfoUrl(), $this->getExternalAdminUrl(), $listPassword);
+ $mailSubject = sprintf(_('%1$s New Mailing List'), fusionforge_get_config ('forge_name'));
util_send_message($userEmail, $mailSubject, $mailBody, 'admin@'.$GLOBALS['sys_default_domain']);
}
diff --git a/gforge/common/reporting/report_utils.php b/gforge/common/reporting/report_utils.php
index dfeb4692b3..c447b23c43 100644
--- a/gforge/common/reporting/report_utils.php
+++ b/gforge/common/reporting/report_utils.php
@@ -29,7 +29,7 @@ function report_header($title) {
if (isset($GLOBALS['feedback'])) {
echo html_feedback_top($GLOBALS['feedback']);
}
- echo "".sprintf(_('%1$s Reporting'), fusionforge_get_config ('core', 'forge_name'))." \n";
+ echo "".sprintf(_('%1$s Reporting'), fusionforge_get_config ('forge_name'))." \n";
}
function report_footer() {
diff --git a/gforge/cronjobs/massmail.php b/gforge/cronjobs/massmail.php
index b500046bbb..5a16ec9d49 100755
--- a/gforge/cronjobs/massmail.php
+++ b/gforge/cronjobs/massmail.php
@@ -85,7 +85,7 @@ if (!$mail_res) {
"$sys_admin_email",
"ATT: Problems with massmail cron script",
"This is automatically generated message from\n
-the mass mailing cron script of ".fusionforge_get_config ('core', 'forge_name')."\n
+the mass mailing cron script of ".fusionforge_get_config ('forge_name')."\n
installation. There was error querying massmail_queue\n
database table. Please take appropriate actions.\n"
);
@@ -190,7 +190,7 @@ page (%2$s), or disable them altogether
by visiting following link:
<%3$s>
'),
- fusionforge_get_config ('core', 'forge_name'),
+ fusionforge_get_config ('forge_name'),
util_make_url('/account/'),
util_make_url('/account/unsubscribe.php?ch=_'.$row['confirm_hash'])) ;
} else {
diff --git a/gforge/db/startpoint.php b/gforge/db/startpoint.php
index 638aac0794..139ae93cc3 100755
--- a/gforge/db/startpoint.php
+++ b/gforge/db/startpoint.php
@@ -5,7 +5,7 @@ require_once dirname(__FILE__).'/../www/env.inc.php';
require_once $gfwww.'include/squal_pre.php';
if (!$gfconn) {
- print fusionforge_get_config ('core', 'forge_name')." Could Not Connect to Database: ".db_error();
+ print fusionforge_get_config ('forge_name')." Could Not Connect to Database: ".db_error();
exit;
}
diff --git a/gforge/plugins/mediawiki/www/LocalSettings.php b/gforge/plugins/mediawiki/www/LocalSettings.php
index 48be334d42..bb515658c2 100644
--- a/gforge/plugins/mediawiki/www/LocalSettings.php
+++ b/gforge/plugins/mediawiki/www/LocalSettings.php
@@ -38,7 +38,7 @@ if ( $wgCommandLineMode ) {
die( "This script must be run from the command line\n" );
}
}
-$wgSitename = fusionforge_get_config ('core', 'forge_name')." Wiki";
+$wgSitename = fusionforge_get_config ('forge_name')." Wiki";
$wgScriptPath = "/plugins/mediawiki/wiki/$fusionforgeproject" ;
$wgEmergencyContact = "webmaster@fusionforge.org";
diff --git a/gforge/plugins/scmcvs/cronjobs/usergroup.php b/gforge/plugins/scmcvs/cronjobs/usergroup.php
index b2b815632d..d3bd779839 100755
--- a/gforge/plugins/scmcvs/cronjobs/usergroup.php
+++ b/gforge/plugins/scmcvs/cronjobs/usergroup.php
@@ -81,7 +81,7 @@ $unmanaged_lines_shadow = array();
$unmanaged_lines_group = array();
// user description is something like "MyGForge user"
-$user_description = preg_replace('/[^[:alnum:] _-]/', '', fusionforge_get_config ('core', 'forge_name'));
+$user_description = preg_replace('/[^[:alnum:] _-]/', '', fusionforge_get_config ('forge_name'));
$user_description .= " user";
/*
diff --git a/gforge/www/account/change_email.php b/gforge/www/account/change_email.php
index cc8affa2fc..ffca0659b8 100644
--- a/gforge/www/account/change_email.php
+++ b/gforge/www/account/change_email.php
@@ -64,10 +64,10 @@ Please visit the following URL to complete the email change:
%2$s
-- the %1$s staff'),
- fusionforge_get_config ('core', 'forge_name'),
+ fusionforge_get_config ('forge_name'),
util_make_url ('/account/change_email-complete.php?ch=_'.$confirm_hash));
- util_send_message($newemail,sprintf(_('%1$s Verification'), fusionforge_get_config ('core', 'forge_name')),$message);
+ util_send_message($newemail,sprintf(_('%1$s Verification'), fusionforge_get_config ('forge_name')),$message);
site_user_header(array('title'=>_('Email Change Confirmation')));
diff --git a/gforge/www/account/change_pw.php b/gforge/www/account/change_pw.php
index 0498098864..0f74005494 100644
--- a/gforge/www/account/change_pw.php
+++ b/gforge/www/account/change_pw.php
@@ -82,7 +82,7 @@ if (getStringFromRequest('submit')) {
site_user_header(array('title'=>_('Successfully Changed Password')));
?>
- %1$s Password Change ConfirmationCongratulations. You have changed your password.
'), fusionforge_get_config ('core', 'forge_name')); ?>
+ %1$s Password Change ConfirmationCongratulations. You have changed your password.
'), fusionforge_get_config ('forge_name')); ?>
Return to User Prefs.'),
diff --git a/gforge/www/account/first.php b/gforge/www/account/first.php
index 6dda4b28fd..936a3f3cce 100644
--- a/gforge/www/account/first.php
+++ b/gforge/www/account/first.php
@@ -26,9 +26,9 @@
require_once('../env.inc.php');
require_once $gfwww.'include/pre.php';
-site_user_header(array('title'=>sprintf(_('Welcome to %1$s'), fusionforge_get_config ('core', 'forge_name'))));
+site_user_header(array('title'=>sprintf(_('Welcome to %1$s'), fusionforge_get_config ('forge_name'))));
-printf(_('
You are now a registered user on %1$s, the online development environment for Open Source projects.
As a registered user, you can participate fully in the activities on the site. You may now post messages to the project message forums, post bugs for software in %1$s, sign on as a project developer, or even start your own project.
Enjoy the site, and please provide us with feedback on ways that we can improve %1$s.
--the %1$s staff.
'), fusionforge_get_config ('core', 'forge_name'));
+printf(_('You are now a registered user on %1$s, the online development environment for Open Source projects.
As a registered user, you can participate fully in the activities on the site. You may now post messages to the project message forums, post bugs for software in %1$s, sign on as a project developer, or even start your own project.
Enjoy the site, and please provide us with feedback on ways that we can improve %1$s.
--the %1$s staff.
'), fusionforge_get_config ('forge_name'));
site_user_footer(array());
diff --git a/gforge/www/account/login.php b/gforge/www/account/login.php
index 1f184c8daa..042c00ae11 100644
--- a/gforge/www/account/login.php
+++ b/gforge/www/account/login.php
@@ -106,7 +106,7 @@ if ($login && !$success) {
$feedback = sprintf(_('Your account is currently pending your email confirmation. Visiting the link sent to you in this email will activate your account.
If you need this email resent, please click below and a confirmation email will be sent to the email address you provided in registration.
[Resend Confirmation Email]
'), util_make_url ("/account/pending-resend.php?form_user=".htmlspecialchars($form_loginname)));
} else {
if ($userstatus == "D") {
- $feedback .= ' '.sprintf(_('
Your %1$s account has been removed by %1$s staff. This may occur for two reasons, either 1) you requested that your account be removed; or 2) some action has been performed using your account which has been seen as objectionable (i.e. you have breached the terms of service for use of your account) and your account has been revoked for administrative reasons. Should you have questions or concerns regarding this matter, please log a support request .
Thank you, %1$s Staff
'), fusionforge_get_config ('core', 'forge_name'), util_make_url ("/support/?group_id=1"));
+ $feedback .= ' '.sprintf(_('Your %1$s account has been removed by %1$s staff. This may occur for two reasons, either 1) you requested that your account be removed; or 2) some action has been performed using your account which has been seen as objectionable (i.e. you have breached the terms of service for use of your account) and your account has been revoked for administrative reasons. Should you have questions or concerns regarding this matter, please log a support request .
Thank you, %1$s Staff
'), fusionforge_get_config ('forge_name'), util_make_url ("/support/?group_id=1"));
}
}
html_feedback_top($feedback);
@@ -139,7 +139,7 @@ if ($login && !$success) {
'._('[New Account]').'
';
}
?>
diff --git a/gforge/www/account/lostpw.php b/gforge/www/account/lostpw.php
index 4660f5159a..05ff5dbb58 100644
--- a/gforge/www/account/lostpw.php
+++ b/gforge/www/account/lostpw.php
@@ -64,9 +64,9 @@ to change your password:
<%2$s>
-- the %1$s staff
-'), fusionforge_get_config ('core', 'forge_name'), util_make_url ("/account/lostlogin.php?ch=_".$confirm_hash));
+'), fusionforge_get_config ('forge_name'), util_make_url ("/account/lostlogin.php?ch=_".$confirm_hash));
- util_send_message($u->getEmail(),sprintf(_('%1$s Verification'), fusionforge_get_config ('core', 'forge_name')),$message);
+ util_send_message($u->getEmail(),sprintf(_('%1$s Verification'), fusionforge_get_config ('forge_name')),$message);
$HTML->header(array('title'=>"Lost Password Confirmation"));
diff --git a/gforge/www/account/register.php b/gforge/www/account/register.php
index 246389ca57..e497a7bff7 100644
--- a/gforge/www/account/register.php
+++ b/gforge/www/account/register.php
@@ -26,7 +26,7 @@ require_once $gfwww.'include/pre.php';
require_once $gfcommon.'include/account.php';
require_once $gfcommon.'include/timezones.php';
-if (fusionforge_get_config ('core', 'user_registration_restricted')) {
+if (fusionforge_get_config ('user_registration_restricted')) {
session_require(array('group'=>'1','admin_flags'=>'A'));
}
@@ -80,7 +80,7 @@ if (getStringFromRequest('submit')) {
if ($register) {
echo $HTML->header(array('title'=>'Register Confirmation'));
- printf(_('Congratulations. You have registered on %1$s.
You are now being sent a confirmation email to verify your email address. Visiting the link sent to you in this email will activate your account.'), fusionforge_get_config ('core', 'forge_name'));
+ printf(_('
Congratulations. You have registered on %1$s.
You are now being sent a confirmation email to verify your email address. Visiting the link sent to you in this email will activate your account.'), fusionforge_get_config ('forge_name'));
echo $HTML->footer(array());
exit;
} else {
diff --git a/gforge/www/account/unsubscribe.php b/gforge/www/account/unsubscribe.php
index 65e137fd95..2f5403326e 100644
--- a/gforge/www/account/unsubscribe.php
+++ b/gforge/www/account/unsubscribe.php
@@ -64,9 +64,9 @@ site_header(array('title'=>_("Unsubscription Complete")));
if ($all) {
- $what = sprintf(_('You have been unsubscribed from all %1$s mailings and notifications. In case you will want to re-activate your subscriptions in the future, login and visit your Account Maintenance page.'), fusionforge_get_config ('core', 'forge_name'));
+ $what = sprintf(_('You have been unsubscribed from all %1$s mailings and notifications. In case you will want to re-activate your subscriptions in the future, login and visit your Account Maintenance page.'), fusionforge_get_config ('forge_name'));
} else {
- $what = sprintf(_('You have been unsubscribed from %1$s site mailings. In case you will want to re-activate your subscriptions in the future, login and visit your Account Maintenance page.'), fusionforge_get_config ('core', 'forge_name'));
+ $what = sprintf(_('You have been unsubscribed from %1$s site mailings. In case you will want to re-activate your subscriptions in the future, login and visit your Account Maintenance page.'), fusionforge_get_config ('forge_name'));
}
?>
diff --git a/gforge/www/admin/index.php b/gforge/www/admin/index.php
index 9e5c94482c..5defe24b00 100644
--- a/gforge/www/admin/index.php
+++ b/gforge/www/admin/index.php
@@ -148,8 +148,8 @@ $abc_array = array('A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','
-
-
+
+
diff --git a/gforge/www/admin/massmail.php b/gforge/www/admin/massmail.php
index 6cd38bc8c5..801fed3be7 100644
--- a/gforge/www/admin/massmail.php
+++ b/gforge/www/admin/massmail.php
@@ -53,7 +53,7 @@ if (getStringFromRequest('submit')) {
);
}
- if (trim($mail_subject) == '['.$GLOBALS['sys_name'].']') {
+ if (trim($mail_subject) == '['.fusionforge_get_config ('forge_name').']') {
form_release_key(getStringFromRequest('form_key'));
exit_error(
_('Missing parameter, You must give proper subject to the mailing')
@@ -86,7 +86,7 @@ site_admin_header(array('title'=>_('Massmail admin')));
print '
'
-.sprintf(_('Mail Engine for %1$s Subscribers'), $GLOBALS['sys_name']) .
+.sprintf(_('Mail Engine for %1$s Subscribers'), fusionforge_get_config ('forge_name')) .
'
';
@@ -111,7 +111,7 @@ print '
_('All Project Developers'),
_('All Project Admins'),
_('All Users'),
- $GLOBALS['sys_name']. _('Developers (test)')
+ fusionforge_get_config ('forge_name'). _('Developers (test)')
),
'mail_type',false,false
)
@@ -122,7 +122,7 @@ print '
' ._('Subject').': '.utils_requiredField().'
-
+
'._('Text of Message'). ': '.utils_requiredField(). _('(will be appended with unsubscription information, if applicable)').'