Modified:
development/4.0/textpattern/lib/txplib_misc.php
development/4.0/textpattern/update/_to_4.0.7.php
Log:
add 'smtp_from' advanced preference to allow the SMTP envelope sender email
adress to be set by the user. Needed to make sending emails work on servers
with silly anti-spam requirements and Windows servers.
Modified: development/4.0/textpattern/lib/txplib_misc.php
==============================================================================
--- development/4.0/textpattern/lib/txplib_misc.php (original)
+++ development/4.0/textpattern/lib/txplib_misc.php Mon Aug 25 06:27:18 2008
@@ -1002,6 +1002,20 @@
$body = str_replace("\r", "\n", $body);
$body = str_replace("\n", $sep, $body);
+ $params = '';
+
+ if (is_valid_email($prefs['smtp_from']))
+ {
+ if (is_windows())
+ {
+ ini_set('sendmail_from', $prefs['smtp_from']);
+ }
+ elseif (!ini_get('safe_mode'))
+ {
+ $params = '-f'.$prefs['smtp_from'];
+ }
+ }
+
return mail($to_address, $subject, $body,
"From: $RealName <$email>".
@@ -1009,7 +1023,9 @@
$sep.'X-Mailer: Textpattern'.
$sep.'Content-Transfer-Encoding: 8bit'.
$sep.'Content-Type: text/plain; charset="'.$charset.'"'.
- $sep
+ $sep,
+
+ $params
);
}
Modified: development/4.0/textpattern/update/_to_4.0.7.php
==============================================================================
--- development/4.0/textpattern/update/_to_4.0.7.php (original)
+++ development/4.0/textpattern/update/_to_4.0.7.php Mon Aug 25 06:27:18
2008
@@ -18,12 +18,18 @@
# Enable XML-RPC server?
if (!safe_field('name', 'txp_prefs', "name = 'enable_xmlrpc_server'"))
- safe_insert('txp_prefs', "prefs_id = 1, name = 'enable_xmlrpc_server',
val = '0', type = '1', event='admin', html='yesnoradio', position='130'");
+ {
+ safe_insert('txp_prefs', "prefs_id = 1, name = 'enable_xmlrpc_server',
val = 0, type = 1, event = 'admin', html = 'yesnoradio', position = 130");
+ }
+
+ if (!safe_field('name', 'txp_prefs', "name = 'smtp_from'"))
+ {
+ safe_insert('txp_prefs', "prefs_id = 1, name = 'smtp_from', val = '',
type = 1, event = 'admin', position = 110");
+ }
if (!safe_field('val', 'txp_prefs', "name='author_list_pageby'"))
{
- safe_insert('txp_prefs', "prefs_id = 1, name = 'author_list_pageby', val
= 25, type = 2, event = 'publish'");
+ safe_insert('txp_prefs', "prefs_id = 1, name = 'author_list_pageby', val
= 25, type = 2");
}
-
?>