commit
e3ed599454
21 changed files with 945 additions and 0 deletions
@ -0,0 +1,10 @@ |
||||
#!/usr/bin/perl -w |
||||
|
||||
use esmith::Build::CreateLinks qw(:all); |
||||
|
||||
templates2events("/etc/e-smith/sql/init/phplistdb", qw/webapps-update bootstrap-console-save/); |
||||
templates2events("/usr/share/phplist/www/lists/config/config.php", qw/webapps-update bootstrap-console-save/); |
||||
|
||||
safe_symlink("/etc/e-smith/templates-default/template-begin-php", "root/etc/e-smith/templates/usr/share/phplist/www/lists/config/config.php/template-begin"); |
||||
safe_symlink("/etc/e-smith/templates-default/template-end-php", "root/etc/e-smith/templates/usr/share/phplist/www/lists/config/config.php/template-end"); |
||||
|
@ -0,0 +1 @@ |
||||
url |
@ -0,0 +1 @@ |
||||
bounces |
@ -0,0 +1 @@ |
||||
phplistdb |
@ -0,0 +1 @@ |
||||
phplistuser |
@ -0,0 +1 @@ |
||||
private |
@ -0,0 +1 @@ |
||||
enabled |
@ -0,0 +1,33 @@ |
||||
{ |
||||
my $rec = $DB->get('phplist') |
||||
|| $DB->new_record('phplist', {type => 'webapp'}); |
||||
my $pw = $rec->prop('DbPassword'); |
||||
if (not $pw or length($pw) < 57) |
||||
{ |
||||
use MIME::Base64 qw(encode_base64); |
||||
|
||||
$pw = "not set due to error"; |
||||
if ( open( RANDOM, "/dev/urandom" ) ) |
||||
{ |
||||
my $buf; |
||||
# 57 bytes is a full line of Base64 coding, and contains |
||||
# 456 bits of randomness - given a perfectly random /dev/random |
||||
if ( read( RANDOM, $buf, 57 ) != 57 ) |
||||
{ |
||||
warn("Short read from /dev/random: $!"); |
||||
} |
||||
else |
||||
{ |
||||
$pw = encode_base64($buf); |
||||
chomp $pw; |
||||
} |
||||
close RANDOM; |
||||
} |
||||
else |
||||
{ |
||||
warn "Could not open /dev/urandom: $!"; |
||||
} |
||||
$rec->set_prop('DbPassword', $pw); |
||||
} |
||||
} |
||||
|
@ -0,0 +1 @@ |
||||
PERMS=0750 |
@ -0,0 +1,48 @@ |
||||
{ |
||||
my $db = ${'phplist'}{'DbName'} || 'phplistdb'; |
||||
my $user = ${'phplist'}{'DbUser'} || 'phplistuser'; |
||||
my $pass = ${'phplist'}{'DbPassword'} || 'secret'; |
||||
|
||||
|
||||
|
||||
$OUT .= <<"END"; |
||||
|
||||
#! /bin/sh |
||||
if [ ! -d /var/lib/mysql/$db ]; then |
||||
/usr/bin/mysql -e 'create database $db' |
||||
fi |
||||
|
||||
|
||||
/usr/bin/mysql <<EOF |
||||
USE mysql; |
||||
|
||||
REPLACE INTO user ( |
||||
host, |
||||
user, |
||||
password) |
||||
VALUES ( |
||||
'localhost', |
||||
'${'phplist'}{DbUser}', |
||||
PASSWORD ('${'phplist'}{DbPassword}')); |
||||
|
||||
|
||||
REPLACE INTO db ( |
||||
host, |
||||
db, |
||||
user, |
||||
select_priv, insert_priv, update_priv, delete_priv, |
||||
create_priv, alter_priv, index_priv, drop_priv, create_tmp_table_priv, |
||||
grant_priv, lock_tables_priv, references_priv) |
||||
VALUES ( |
||||
'localhost', |
||||
'${'phplist'}{DbName}', |
||||
'${'phplist'}{DbUser}', |
||||
'Y', 'Y', 'Y', 'Y', |
||||
'Y', 'Y', 'Y', 'Y', 'Y', |
||||
'N', 'Y', 'Y'); |
||||
|
||||
FLUSH PRIVILEGES; |
||||
|
||||
EOF |
||||
END |
||||
} |
@ -0,0 +1,47 @@ |
||||
{ |
||||
|
||||
my $status = $phplist{'status'} || 'disabled'; |
||||
my $access = $phplist{'access'} || 'private'; |
||||
my $lemonldap = $phplist{'LemonLDAP'} || 'disabled'; |
||||
my $alias = $phplist{'AliasOnPrimary'} || 'enabled'; |
||||
my @users = split(/[;,]/, ($phplist{'AdminUsers'} || 'admin')); |
||||
my $users = join(' ', @users); |
||||
|
||||
my $allow = ( $access eq 'public' ) ? 'all' : "$localAccess $externalSSLAccess"; |
||||
$alias = (( $lemonldap eq 'enabled') || ($alias eq 'disabled')) ? '' : 'Alias /lists /usr/share/phplist/www/lists'; |
||||
my $auth = ( $lemonldap eq 'enabled' ) ? '' : 'AuthName "phplist"' . "\n" . |
||||
" AuthType Basic\n" . |
||||
" AuthExternal pwauth\n" . |
||||
" require user $users\n"; |
||||
|
||||
if ($status eq 'enabled') { |
||||
$OUT .=<<"EOF"; |
||||
|
||||
|
||||
$alias |
||||
<Directory /usr/share/phplist/www/lists> |
||||
Options -Indexes |
||||
AllowOverride None |
||||
order deny,allow |
||||
deny from all |
||||
allow from $allow |
||||
Satisfy all |
||||
AddType application/x-httpd-php .php .php3 |
||||
</Directory> |
||||
|
||||
# Admin section |
||||
<Directory /usr/share/phplist/www/lists/admin> |
||||
SSLRequireSSL on |
||||
order deny,allow |
||||
deny from all |
||||
allow from $allow |
||||
$auth |
||||
</Directory> |
||||
|
||||
|
||||
EOF |
||||
} |
||||
else{ |
||||
$OUT .= "# PHPList is disabled\n"; |
||||
} |
||||
} |
@ -0,0 +1,12 @@ |
||||
{ |
||||
my $sslport = $modSSL{'TCPPort'} || '443'; |
||||
|
||||
if ($port ne $sslport){ |
||||
|
||||
## Redirect Web Address to Secure Address |
||||
$OUT .= " RewriteEngine on\n"; |
||||
$OUT .= " RewriteRule ^/lists/admin(/.*|\$) https://%{HTTP_HOST}/lists/admin\$1 \[L,R\]\n"; |
||||
|
||||
} |
||||
} |
||||
|
@ -0,0 +1,48 @@ |
||||
|
||||
/* |
||||
|
||||
========================================================================= |
||||
|
||||
General settings for language and database |
||||
|
||||
========================================================================= |
||||
|
||||
*/ |
||||
|
||||
|
||||
# select the language module to use |
||||
# Look for <country>.inc files in the texts directory |
||||
# to find your language |
||||
# this is the language for the frontend pages. In the admin pages you can |
||||
# choose your language by using the dropdown in the pages. |
||||
$language_module = "english.inc"; |
||||
|
||||
# what is your Mysql database server |
||||
$database_host = "localhost"; |
||||
|
||||
# what is the name of the database we are using |
||||
$database_name = "{$phplist{'DbName'}}"; |
||||
|
||||
# who do we log in as? |
||||
$database_user = "{$phplist{'DbUser'}}"; |
||||
|
||||
# and what password do we use |
||||
$database_password = "{$phplist{'DbPassword'}}"; |
||||
|
||||
# if you use multiple installations of PHPlist you can set this to |
||||
# something to identify this one. it will be prepended to email report |
||||
# subjects |
||||
$installation_name = 'PHPlist'; |
||||
|
||||
# if you want a prefix to all your tables, specify it here, |
||||
$table_prefix = "phplist_"; |
||||
|
||||
# if you want to use a different prefix to user tables, specify it here. |
||||
# read README.usertables for more information |
||||
$usertable_prefix = "phplist_user_"; |
||||
|
||||
# if you change the path to the PHPlist system, make the change here as well |
||||
# path should be relative to the root directory of your webserver (document root) |
||||
# you cannot actually change the "admin", but you can change the "lists" |
||||
$pageroot = '/lists'; |
||||
$adminpages = '/lists/admin'; |
@ -0,0 +1,61 @@ |
||||
/* |
||||
|
||||
========================================================================= |
||||
|
||||
Settings for handling bounces |
||||
|
||||
========================================================================= |
||||
|
||||
*/ |
||||
|
||||
# Message envelope. This is the email that system messages come from |
||||
# it is useful to make this one where you can process the bounces on |
||||
# you will probably get a X-Authentication-Warning in your message |
||||
# when using this with sendmail |
||||
# NOTE: this is *very* different from the From: line in a message |
||||
# to use this feature, uncomment the following line, and change the email address |
||||
# to some existing account on your system |
||||
# requires PHP version > "4.0.5" and "4.3.1+" without safe_mode |
||||
# $message_envelope = 'listbounces@yourdomain'; |
||||
|
||||
# Handling bounces. Check README.bounces for more info |
||||
# This can be 'pop' or 'mbox' |
||||
$bounce_protocol = 'pop'; |
||||
|
||||
# set this to 0, if you set up a cron to download bounces regularly by using the |
||||
# commandline option. If this is 0, users cannot run the page from the web |
||||
# frontend. Read README.commandline to find out how to set it up on the |
||||
# commandline |
||||
define ("MANUALLY_PROCESS_BOUNCES",1); |
||||
|
||||
# when the protocol is pop, specify these three |
||||
$bounce_mailbox_host = 'localhost'; |
||||
$bounce_mailbox_user = '{$phplist{'BouncesUser'}}'; |
||||
$bounce_mailbox_password = '{$phplist{'BouncesPassword'}}'; |
||||
|
||||
# the "port" is the remote port of the connection to retrieve the emails |
||||
# the default should be fine but if it doesn't work, you can try the second |
||||
# one. To do that, add a # before the first line and take off the one before the |
||||
# second line |
||||
|
||||
$bounce_mailbox_port = "110/pop3/notls"; |
||||
|
||||
# when the protocol is mbox specify this one |
||||
# it needs to be a local file in mbox format, accessible to your webserver user |
||||
$bounce_mailbox = '/var/spool/mail/listbounces'; |
||||
|
||||
# set this to 0 if you want to keep your messages in the mailbox. this is potentially |
||||
# a problem, because bounces will be counted multiple times, so only do this if you are |
||||
# testing things. |
||||
$bounce_mailbox_purge = 1; |
||||
|
||||
# set this to 0 if you want to keep unprocessed messages in the mailbox. Unprocessed |
||||
# messages are messages that could not be matched with a user in the system |
||||
# messages are still downloaded into PHPlist, so it is safe to delete them from |
||||
# the mailbox and view them in PHPlist |
||||
$bounce_mailbox_purge_unprocessed = 1; |
||||
|
||||
# how many bounces in a row need to have occurred for a user to be marked unconfirmed |
||||
$bounce_unsubscribe_threshold = 5; |
||||
|
||||
|
@ -0,0 +1,64 @@ |
||||
/* |
||||
|
||||
========================================================================= |
||||
|
||||
Security related settings |
||||
|
||||
========================================================================= |
||||
|
||||
*/ |
||||
|
||||
# set this to 1 if you want PHPlist to deal with login for the administrative |
||||
# section of the system |
||||
# you will be able to add administrators who control their own lists |
||||
# default login is "admin" with password "phplist" |
||||
# |
||||
$require_login = 0; |
||||
|
||||
# if you use login, how many lists can be created per administrator |
||||
define("MAXLIST",1); |
||||
|
||||
# if you use commandline, you will need to identify the users who are allowed to run |
||||
# the script. See README.commandline for more info |
||||
$commandline_users = array("admin"); |
||||
# or you can use the following to disable the check (take off the # in front of the line) |
||||
# $commandline_users = array(); |
||||
|
||||
# as of version 2.4.1, you can have your users define a password for themselves as well |
||||
# this will cause some public pages to ask for an email and a password when the password is |
||||
# set for the user. If you want to activate this functionality, set the following |
||||
# to 1. See README.passwords for more information |
||||
define("ASKFORPASSWORD",0); |
||||
|
||||
# if you also want to force people who unsubscribe to provide a password before |
||||
# processing their unsubscription, set this to 1. You need to have the above one set |
||||
# to 1 for this to have an effect |
||||
define("UNSUBSCRIBE_REQUIRES_PASSWORD",0); |
||||
|
||||
# if a user should immediately be unsubscribed, when using their personal URL, instead of |
||||
# the default way, which will ask them for a reason, set this to 1 |
||||
define("UNSUBSCRIBE_JUMPOFF",0); |
||||
|
||||
# when a user unsubscribes they are sent one final email informing them of |
||||
# their unsubscription. In order for that email to actually go out, a gracetime |
||||
# needs to be set otherwise it will never go out. The default of 5 minutes should |
||||
# be fine, but you can increase it if you experience problems |
||||
$blacklist_gracetime = 5; |
||||
|
||||
# to increase security the session of a user is checked for the IP address |
||||
# this needs to be the same for every request. This may not work with |
||||
# network situations where you connect via multiple proxies, so you can |
||||
# switch off the checking by setting this to 0 |
||||
define("CHECK_SESSIONIP",1); |
||||
|
||||
# if you use passwords, you can store them encrypted or in plain text |
||||
# if you want to encrypt them, set this one to 1 |
||||
# if you use encrypted passwords, users can only request you as an administrator to |
||||
# reset the password. They will not be able to request the password from |
||||
# the system |
||||
define("ENCRYPTPASSWORD",0); |
||||
|
||||
# Check for host of email entered for subscription |
||||
# Do not use it if your server is not 24hr online |
||||
# make the 0 a 1, if you want to use it |
||||
$check_for_host = 0; |
@ -0,0 +1,62 @@ |
||||
/* |
||||
|
||||
========================================================================= |
||||
|
||||
Debugging and informational |
||||
|
||||
========================================================================= |
||||
|
||||
*/ |
||||
|
||||
|
||||
# if test is true (not 0) it will not actually send ANY messages, |
||||
# but display what it would have sent |
||||
define ("TEST",0); |
||||
|
||||
# if you set verbose to 1, it will show the messages that will be sent. Do not do this |
||||
# if you have a lot of users, because it is likely to crash your browser |
||||
# (it does mine, Mozilla 0.9.2, well 1.6 now, but I would still keep it off :-) |
||||
define ("VERBOSE",0); |
||||
|
||||
# some warnings may show up about your PHP settings. If you want to get rid of them |
||||
# set this value to 0 |
||||
define ("WARN_ABOUT_PHP_SETTINGS",1); |
||||
|
||||
# If you set up your system to send the message automatically, you can set this value |
||||
# to 0, so "Process Queue" will disappear from the site |
||||
# this will also stop users from loading the page on the web frontend, so you will |
||||
# have to make sure that you run the queue from the commandline |
||||
# check README.commandline how to do this |
||||
define ("MANUALLY_PROCESS_QUEUE",1); |
||||
|
||||
# if you want to use \r\n for formatting messages set the 0 to 1 |
||||
# see also http://www.securityfocus.com/archive/1/255910 |
||||
# this is likely to break things for other mailreaders, so you should |
||||
# only use it if all your users have Outlook (not Express) |
||||
define("WORKAROUND_OUTLOOK_BUG",0); |
||||
|
||||
# user history system info. |
||||
# when logging the history of a user, you can specify which system variables you |
||||
# want to log. These are the ones that are found in the $_SERVER and the $_ENV |
||||
# variables of PHP. check http://www.php.net/manual/en/language.variables.predefined.php |
||||
# the values are different per system, but these ones are quite common. |
||||
$userhistory_systeminfo = array( |
||||
'HTTP_USER_AGENT', |
||||
'HTTP_REFERER', |
||||
'REMOTE_ADDR' |
||||
); |
||||
|
||||
# add spamblock |
||||
# if you set this to 1, phplist will try to check if the subscribe attempt is a spambot trying to send |
||||
# nonsense. If you think this doesn't work, set this to 0 |
||||
# this is currently only implemented on the subscribe pages |
||||
define('USE_SPAM_BLOCK',1); |
||||
|
||||
# notify spam |
||||
# when phplist detects a possible spam attack, it can send you a notification about it |
||||
# you can check for a while to see if the spam check was correct and if so, set this value |
||||
# to 0, if you think the check does it's job correctly. |
||||
# it will only send you emails if you have "Does the admin get copies of subscribe, update and unsubscribe messages" |
||||
# in the configuration set to true |
||||
define('NOTIFY_SPAM',1); |
||||
|
@ -0,0 +1,41 @@ |
||||
/* |
||||
|
||||
========================================================================= |
||||
|
||||
Feedback to developers |
||||
|
||||
========================================================================= |
||||
|
||||
*/ |
||||
|
||||
# use Register to "register" to PHPlist.com. Once you set TEST to 0, the system will then |
||||
# request the "Powered By" image from www.phplist.com, instead of locally. This will give me |
||||
# a little bit of an indication of how much it is used, which will encourage me to continue |
||||
# developing PHPlist. If you do not like this, set Register to 0. |
||||
define ("REGISTER",1); |
||||
|
||||
# CREDITS |
||||
# We request you retain some form of credits on the public elements of |
||||
# PHPlist. These are the subscribe pages and the emails. |
||||
# This not only gives respect to the large amount of time given freely |
||||
# by the developers but also helps build interest, traffic and use of |
||||
# PHPlist, which is beneficial to future developments. |
||||
# By default the webpages and the HTML emails will include an image and |
||||
# the text emails will include a powered by line |
||||
|
||||
# If you want to remove the image from the HTML emails, set this constant |
||||
# to be 1, the HTML emails will then only add a line of text as signature |
||||
define("EMAILTEXTCREDITS",0); |
||||
|
||||
# if you want to also remove the image from your public webpages |
||||
# set the next one to 1, and the pages will only include a line of text |
||||
define("PAGETEXTCREDITS",0); |
||||
|
||||
# in order to get some feedback about performance, PHPlist can send statistics to a central |
||||
# email address. To de-activate this set the following value to 1 |
||||
define ("NOSTATSCOLLECTION",0); |
||||
|
||||
# this is the email it will be sent to. You can leave the default, or you can set it to send |
||||
# to your self. If you use the default you will give me some feedback about performance |
||||
# which is useful for me for future developments |
||||
# $stats_collection_address = 'phplist-stats@tincan.co.uk'; |
@ -0,0 +1,72 @@ |
||||
/* |
||||
|
||||
========================================================================= |
||||
|
||||
Miscellaneous |
||||
|
||||
========================================================================= |
||||
|
||||
*/ |
||||
|
||||
|
||||
# the number of criterias you want to be able to select when sending a message. |
||||
# Useful is is to make it the same as the number of selectable attributes you enter in the |
||||
# system, but that is up to you (selectable = select, radio or checkbox) |
||||
define ("NUMCRITERIAS",2); |
||||
|
||||
# if you do not require users to actually sign up to lists, but only want to |
||||
# use the subscribe page as a kind of registration system, you can set this to 1 and |
||||
# users will not receive an error when they do not check a list to subscribe to |
||||
define("ALLOW_NON_LIST_SUBSCRIBE",0); |
||||
|
||||
# batch processing |
||||
# if you are on a shared host, it will probably be appreciated if you don't send |
||||
# out loads of emails in one go. To do this, you can configure batch processing. |
||||
# Please note, the following two values can be overridden by your ISP by using |
||||
# a server wide configuration. So if you notice these values to be different |
||||
# in reality, that may be the case |
||||
|
||||
# define the amount of emails you want to send per period. If 0, batch processing |
||||
# is disabled and messages are sent out as fast as possible |
||||
define("MAILQUEUE_BATCH_SIZE",0); |
||||
|
||||
# define the length of one batch processing period, in seconds (3600 is an hour) |
||||
define("MAILQUEUE_BATCH_PERIOD",3600); |
||||
|
||||
# to avoid overloading the server that sends your email, you can add a little delay |
||||
# between messages that will spread the load of sending |
||||
# you will need to find a good value for your own server |
||||
# value is in seconds (or you can play with the autothrottle below) |
||||
define('MAILQUEUE_THROTTLE',0); |
||||
|
||||
# year ranges. If you use dates, by default the drop down for year will be from |
||||
# three years before until 10 years after this the current value for year. If there |
||||
# is no current value the current year will be used. |
||||
# if you want to use a bigger range you can set the start and end year here |
||||
# be aware that the drop down may become very large. |
||||
# if set to 0 they will use the default behaviour. So I'm afraid you can't start with |
||||
# year 0. Also be aware not to set the end year to something relatively soon in the |
||||
# future, or it will stop working when you reach that year. |
||||
define('DATE_START_YEAR',0); |
||||
define('DATE_END_YEAR',0); |
||||
|
||||
# empty value prefix. This can be used to identify values in select attributes |
||||
# that are not allowed to be selected and cause an error "Please enter your ..." |
||||
# by using a top value that starts with this string, you can make sure that the |
||||
# selects do not have a default value, that may be accidentally selected |
||||
# eg. "-- choose your country" |
||||
define('EMPTY_VALUE_PREFIX','--'); |
||||
|
||||
# admin details for messages |
||||
# if this is enabled phplist will initialise the From in new messages to be the |
||||
# details of the logged in administrator who is sending the message |
||||
# otherwise it will default to the values set in the configure page that identify |
||||
# the From for system messages |
||||
define('USE_ADMIN_DETAILS_FOR_MESSAGES',1); |
||||
|
||||
# test emails |
||||
# if you send a test email, phplist will by default send you two emails, one in HTML format |
||||
# and the other in Text format. If you set this to 1, you can override this behaviour |
||||
# and only have a test email sent to you that matches the user record of the user that the |
||||
# test emails are sent to |
||||
define('SEND_ONE_TESTMAIL',0); |
@ -0,0 +1,336 @@ |
||||
/* |
||||
|
||||
========================================================================= |
||||
|
||||
Experimental Features |
||||
|
||||
========================================================================= |
||||
|
||||
*/ |
||||
|
||||
# list exclude will add the option to send a message to users who are on a list |
||||
# except when they are on another list. |
||||
# this is currently marked experimental |
||||
|
||||
define("USE_LIST_EXCLUDE",0); |
||||
|
||||
# admin authentication module. |
||||
# to validate the login for an administrator, you can define your own authentication module |
||||
# this is not finished yet, so don't use it unless you're happy to play around with it |
||||
# if you have modules to contribute, send them to phplist2@tincan.co.uk |
||||
# the default module is phplist_auth.inc, which you can find in the "auth" subdirectory of the |
||||
# admin directory. It will tell you the functions that need to be defined for phplist to |
||||
# retrieve it's information. |
||||
# phplist will look for a file in that directory, or you can enter the full path to the file |
||||
|
||||
# eg |
||||
#$admin_auth_module = 'phplist_auth.inc'; |
||||
|
||||
# or |
||||
#$admin_auth_module = '/usr/local/etc/auth.inc'; |
||||
|
||||
# stacked attribute selection |
||||
# this is a new method of making a selection of attributes to send your messages to |
||||
# to start with, it doesn't seem to work very well in Internet Explorer, but it works fine |
||||
# using Mozilla, Firefox, Opera (haven't tried any other browsers) |
||||
# so if you use IE, you may not want to try this. |
||||
|
||||
# stacked attribute selection allows you to continuously add a selection of attributes |
||||
# to your message. This is quite a bit more powerful than the old method, but it can also |
||||
# cause very complex queries to be constructed that may take too long to calculate |
||||
# If you want to try this, set the value to 1, and give us feedback on how it's going |
||||
|
||||
# if you want to use dates for attribute selections, you need to use this one |
||||
|
||||
define("STACKED_ATTRIBUTE_SELECTION",0); |
||||
|
||||
|
||||
# send a webpage. You can send the contents of a webpage, by adding |
||||
# [URL:http://website/file.html] as the content of a message. This can also be personalised |
||||
# for users by using eg |
||||
# [URL:http://website/file.html?email=[email]] |
||||
# the timeout for refetching a URL can be defined here. When the last time a URL has been |
||||
# fetched exceeds this time, the URL will be refetched. This is in seconds, 3600 is an hour |
||||
# this only affects sending within the same "process queue". If a new process queue is started |
||||
# the URL will be fetched the first time anyway. Therefore this is only useful is processing |
||||
# your queue takes longer than the time identified here. |
||||
define('REMOTE_URL_REFETCH_TIMEOUT',3600); |
||||
|
||||
# Mailqueue autothrottle. This will try to automatically change the delay |
||||
# between messages to make sure that the MAILQUEUE_BATCH_SIZE (above) is spread evently over |
||||
# MAILQUEUE_BATCH_PERIOD, instead of firing the Batch in the first few minutes of the period |
||||
# and then waiting for the next period. This only works with mailqueue_throttle off |
||||
# it still needs tweaking, so send your feedback to mantis.tincan.co.uk if you find |
||||
# any issues with it |
||||
define('MAILQUEUE_AUTOTHROTTLE',0); |
||||
|
||||
# Click tracking |
||||
# If you set this to 1, all links in your emails will be converted to links that |
||||
# go via phplist. This will make sure that clicks are tracked. This is experimental and |
||||
# all your findings when using this feature should be reported to mantis |
||||
# for now it's off by default until we think it works correctly |
||||
define('CLICKTRACK',0); |
||||
|
||||
# Click track, list detail |
||||
# if you enable this, you will get some extra statistics about unique users who have clicked the |
||||
# links in your messages, and the breakdown between clicks from text or html messages. |
||||
# However, this will slow down the process to view the statistics, so it is |
||||
# recommended to leave it off, but if you're very curious, you can enable it |
||||
define('CLICKTRACK_SHOWDETAIL',0); |
||||
|
||||
# Domain Throttling |
||||
# You can activate domain throttling, by setting USE_DOMAIN_THROTTLE to 1 |
||||
# define the maximum amount of emails you want to allow sending to any domain and the number |
||||
# of seconds for that amount. This will make sure you don't send too many emails to one domain |
||||
# which may cause blacklisting. Particularly the big ones are tricky about this. |
||||
# it may cause a dramatic increase in the amount of time to send a message, depending on how |
||||
# many users you have that have the same domain (eg hotmail.com) |
||||
# if too many failures for throttling occur, the send process will automatically add an extra |
||||
# delay to try to improve that. The example sends 1 message every 2 minutes. |
||||
|
||||
define('USE_DOMAIN_THROTTLE',0); |
||||
define('DOMAIN_BATCH_SIZE',1); |
||||
define('DOMAIN_BATCH_PERIOD',120); |
||||
|
||||
# if you have very large numbers of users on the same domains, this may result in the need |
||||
# to run processqueue many times, when you use domain throttling. You can also tell phplist |
||||
# to simply delay a bit between messages to increase the number of messages sent per queue run |
||||
# if you want to use that set this to 1, otherwise simply run the queue many times. A cron |
||||
# process every 10 or 15 minutes is recommended. |
||||
define('DOMAIN_AUTO_THROTTLE',0); |
||||
|
||||
# admin language |
||||
# if you want to disable the language switch for the admin interface (and run all in english) |
||||
# set this one to 0 |
||||
define('LANGUAGE_SWITCH',1); |
||||
|
||||
# advanced bounce processing |
||||
# with advanced bounce handling you are able to define regular expressions that match bounces and the |
||||
# action that needs to be taken when an expression matches. This will improve getting rid of bad emails in |
||||
# your system, which will be a good thing for making sure you are not being blacklisted by other |
||||
# mail systems |
||||
# if you use this, you will need to teach your system regularly about patterns in new bounces |
||||
define('USE_ADVANCED_BOUNCEHANDLING',0); |
||||
|
||||
|
||||
/* |
||||
|
||||
========================================================================= |
||||
|
||||
Advanced Features, HTML editor, RSS, Attachments, Plugins. PDF creation |
||||
|
||||
========================================================================= |
||||
|
||||
*/ |
||||
|
||||
# you can specify the encoding for HTML and plaintext messages here. This only |
||||
# works if you do not use the phpmailer (see below) |
||||
# the default should be fine. Valid options are 7bit, quoted-printable and base64 |
||||
define("HTMLEMAIL_ENCODING","quoted-printable"); |
||||
define("TEXTEMAIL_ENCODING",'7bit'); |
||||
|
||||
|
||||
# PHPlist can send RSS feeds to users. Feeds can be sent daily, weekly or |
||||
# monthly. To use the feature you need XML support in your PHP installation, and you |
||||
# need to set this constant to 1 |
||||
define("ENABLE_RSS",0); |
||||
|
||||
# if you have set up a cron to download the RSS entries, you can set this to be 0 |
||||
define("MANUALLY_PROCESS_RSS",1); |
||||
|
||||
# the FCKeditor is now included in PHPlist, but the use of it is experimental |
||||
# if it's not working for you, set this to 0 |
||||
# NOTE: If you enable TinyMCE please disable FCKeditor and vice-versa. |
||||
define("USEFCK",1); |
||||
|
||||
# If you want to upload images to the FCKeditor, you need to specify the location |
||||
# of the directory where the images go. This needs to be writable by the webserver, |
||||
# and it needs to be in your public document (website) area |
||||
# the directory is relative to the root of PHPlist as set above |
||||
# This is a potential security risk, so read README.security for more information |
||||
define("FCKIMAGES_DIR","uploadimages"); |
||||
|
||||
# TinyMCE Support (http://tinymce.moxiecode.com/) |
||||
# It is suggested to copy the tinymce/jscripts/tiny_mce directory from the |
||||
# standard TinyMCE distribution into the public_html/lists/admin/plugins |
||||
# directory in order to keep the install clean. |
||||
# NOTE: If you enable TinyMCE please disable FCKeditor and vice-versa. |
||||
# Set this to 1 to turn on TinyMCE for writing messages: |
||||
define("USETINYMCEMESG", 0); |
||||
# Set this to 1 to turn on TinyMCE for editing templates: |
||||
define("USETINYMCETEMPL", 0); |
||||
# Set this to path of the TinyMCE script, relative to the admin directory: |
||||
define("TINYMCEPATH", "plugins/tiny_mce/tiny_mce.js"); |
||||
# Set this to the language you wish to use for TinyMCE: |
||||
define("TINYMCELANG", "en"); |
||||
# Set this to the theme you wish to use. Default options are: simple, default and advanced. |
||||
define("TINYMCETHEME", "advanced"); |
||||
# Set this to any additional options you wish. Please be careful with this as you can |
||||
# inadvertantly break TinyMCE. Rever to the TinyMCE documentation for full details. |
||||
# Should be in the format: ',option1:"value",option2:"value"' <--- note comma at beginning |
||||
define("TINYMCEOPTS", ""); |
||||
|
||||
# Manual text part, will give you an input box for the text version of the message |
||||
# instead of trying to create it by parsing the HTML version into plain text |
||||
define("USE_MANUAL_TEXT_PART",0); |
||||
|
||||
# attachments is a new feature and is currently still experimental |
||||
# set this to 1 if you want to try it |
||||
# caution, message may become very large. it is generally more |
||||
# acceptable to send a URL for download to users |
||||
# if you try it, it will be appreciated to give feedback to the |
||||
# users mailinglist, so we can learn whether it is working ok |
||||
# using attachments requires PHP 4.1.0 and up |
||||
define("ALLOW_ATTACHMENTS",0); |
||||
|
||||
# if you use the above, how many would you want to add per message (max) |
||||
# You can leave this 1, even if you want to attach more files, because |
||||
# you will be able to add them sequentially |
||||
define("NUMATTACHMENTS",1); |
||||
|
||||
# when using attachments you can upload them to the server |
||||
# if you want to use attachments from the local filesystem (server) set this to 1 |
||||
# filesystem attachments are attached at real send time of the message, not at |
||||
# the time of creating the message |
||||
define("FILESYSTEM_ATTACHMENTS",0); |
||||
|
||||
# if you add filesystem attachments, you will need to tell PHPlist where your |
||||
# mime.types file is. |
||||
define("MIMETYPES_FILE","/etc/mime.types"); |
||||
|
||||
# if a mimetype cannot be determined for a file, specify the default mimetype here: |
||||
define("DEFAULT_MIMETYPE","application/octet-stream"); |
||||
|
||||
# you can create your own pages to slot into PHPlist and do certain things |
||||
# that are more specific to your situation (plugins) |
||||
# if you do this, you can specify the directory where your plugins are. It is |
||||
# useful to keep this outside the PHPlist system, so they are retained after |
||||
# upgrading |
||||
# there are some example plugins in the "plugins" directory inside the |
||||
# admin directory |
||||
# this directory needs to be absolute, or relative to the admin directory |
||||
|
||||
define("PLUGIN_ROOTDIR","/home/me/phplistplugins"); |
||||
|
||||
# uncomment this one to see the examples in the system (and then comment the |
||||
# one above) |
||||
#define("PLUGIN_ROOTDIR","plugins"); |
||||
|
||||
|
||||
# the attachment repository is the place where the files are stored (if you use |
||||
# ALLOW_ATTACHMENTS) |
||||
# this needs to be writable to your webserver user |
||||
# it also needs to be a full path, not a relative one |
||||
# for secutiry reasons it is best if this directory is not public (ie below |
||||
# your website document root) |
||||
$attachment_repository = '/tmp'; |
||||
|
||||
# if you want to be able to send your messages as PDF attachments, you need to install |
||||
# FPDF (http://www.fpdf.org) and set these variables accordingly |
||||
|
||||
# define('FPDF_FONTPATH','/home/pdf/font/'); |
||||
# require('fpdf.php'); |
||||
# define("USE_PDF",1); |
||||
# $pdf_font = 'Times'; |
||||
# $pdf_fontstyle = ''; |
||||
# $pdf_fontsize = 14; |
||||
|
||||
# the mime type for the export files. You can try changing this to |
||||
# application/vnd.ms-excel to make it open automatically in excel |
||||
$export_mimetype = 'application/csv'; |
||||
|
||||
# if you want to use export format optimized for Excel, set this one to 1 |
||||
define("EXPORT_EXCEL",0); |
||||
|
||||
# Repetition. This adds the option to repeat the same message in the future. |
||||
# After the message has been sent, this option will cause the system to automatically |
||||
# create a new message with the same content. Be careful with it, because you may |
||||
# send the same message to your users |
||||
# the embargo of the message will be increased with the repetition interval you choose |
||||
# also read the README.repetition for more info |
||||
define("USE_REPETITION",0); |
||||
|
||||
# Prepare a message. This system allows you to create messages as a super admin |
||||
# that can then be reviewed and selected by sub admins to send to their own lists |
||||
# it is old functionality that is quite confusing, and therefore by default it |
||||
# is now off. If you used to use it, you can switch it on here. If you did not |
||||
# use it, or are a new user, it is better to leave it off. It has nothing to |
||||
# do with being able to edit messages. |
||||
define("USE_PREPARE",0); |
||||
|
||||
#0011857: forward to friend, retain attributes |
||||
# When forwarding ('to a friend') the message will be using the attributes of the destination email by default. |
||||
# This often means the message gets stripped of al its attributes. |
||||
# When setting this constant to 1, the message will use the attributes of the forwarding user. It can be used |
||||
# to connect the destinatory to the forwarder and/or reward the forwarder. |
||||
define("KEEPFORWARDERATTRIBUTES",0); |
||||
|
||||
#0011860: forward to friend, multiple emails |
||||
# This setting defines howmany email addresses you can enter in the forward page. |
||||
# Default is 1 to not change behaviour from previous version. |
||||
define("FORWARD_EMAIL_COUNT",1); |
||||
|
||||
#0011996: forward to friend - personal message |
||||
# Allow user to add a personal note when forwarding 'to a friend' |
||||
# 0 will turn this option off. default is 0 to not change behaviour from previous version. |
||||
# 500 is recommended as a sound value to write a little introductory note to a friend |
||||
#The note is prepeded to both text and html messages and will be stripped of all html |
||||
define("FORWARD_PERSONAL_NOTE_SIZE",0); |
||||
|
||||
#0013076: different content when forwarding 'to a friend' |
||||
# Allow admin to enter a different message that will be sent when forwarding 'to a friend' |
||||
# This will show an extra tab in the message dialog. |
||||
define("FORWARD_ALTERNATIVE_CONTENT",0); |
||||
|
||||
#0013845 Lead Ref Scheme |
||||
# When this setting has a value <> '' all succesfull handovers to the MTA will be counted |
||||
# and saved in the attribute with the name of this setting. |
||||
#define('FORWARD_FRIEND_COUNT_ATTRIBUTE', 'FriendCount'); |
||||
|
||||
# If you want to use the PHPMailer class from phpmailer.sourceforge.net, set the following |
||||
# to 1. If you tend to send out html emails, it is recommended to do so. |
||||
define("PHPMAILER",1); |
||||
|
||||
# To use a SMTP please give your server hostname here, leave it blank to use the standard |
||||
# PHP mail() command. |
||||
define("PHPMAILERHOST",''); |
||||
|
||||
# if you want to use smtp authentication when sending the email uncomment the following |
||||
# two lines and set the username and password to be the correct ones |
||||
#$phpmailer_smtpuser = 'smtpuser'; |
||||
#$phpmailer_smtppassword = 'smtppassword'; |
||||
|
||||
# tmpdir. A location where phplist can write some temporary files if necessary |
||||
# Make sure it is writable by your webserver user, and also check that you have |
||||
# open_basedir set to allow access to this directory. Linux users can leave it as it is. |
||||
# this directory is used for all kinds of things, mostly uploading of files (like in |
||||
# import), creating PDFs and more |
||||
$tmpdir = '/tmp'; |
||||
|
||||
# if you are on Windoze, and/or you are not using apache, in effect when you are getting |
||||
# "Method not allowed" errors you will want to uncomment this |
||||
# ie take off the #-character in the next line |
||||
# using this is not guaranteed to work, sorry. Easier to use Apache instead :-) |
||||
# $form_action = 'index.php'; |
||||
|
||||
# select the database module to use |
||||
# anyone wanting to submit other database modules is |
||||
# very welcome! |
||||
$database_module = "mysql.inc"; |
||||
|
||||
# you can store sessions in the database instead of the default place by assigning |
||||
# a tablename to this value. The table will be created and will not use any prefixes |
||||
# this only works when using mysql and only for administrator sessions |
||||
# $SessionTableName = "phplistsessions"; |
||||
|
||||
# there is now support for the use of ADOdb http://php.weblogs.com/ADODB |
||||
# this is still experimental, and any findings should be reported in the |
||||
# bugtracker |
||||
# in order to use it, define the following settings: |
||||
#$database_module = 'adodb.inc'; |
||||
#$adodb_inc_file = '/path/to/adodb_inc.php'; |
||||
#$adodb_driver = 'mysql'; |
||||
|
||||
# if you want more trouble, make this 63 (very unlikely you will like the result) |
||||
$error_level = error_reporting(0); |
||||
|
@ -0,0 +1,104 @@ |
||||
%define name smeserver-phplist |
||||
%define version 0.1 |
||||
%define release 3 |
||||
Summary: sme server integration of phplist |
||||
Name: %{name} |
||||
Version: %{version} |
||||
Release: %{release}%{?dist} |
||||
License: GNU GPL version 2 |
||||
URL: http://www.phplist.com |
||||
Group: SMEserver/addon |
||||
Source: %{name}-%{version}.tar.gz |
||||
|
||||
Patch0: smeserver-phplist-0.1-fix_templates_location.patch |
||||
Patch1: smeserver-phplist-0.1-enhance_http_template.patch |
||||
Patch2: smeserver-phplist-0.1-sql_database_config.patch |
||||
Patch3: smeserver-phplist-0.1-DbPassANDtpltmeta.patch |
||||
Patch4: smeserver-phplist-0.1-SyntaxeSQL.patch |
||||
Patch5: smeserver-phplist-0.1-ConfigSecurity.patch |
||||
Patch6: smeserver-phplist-0.1-SQLParam.patch |
||||
Patch7: smeserver-phplist-0.1-SSL_and_Access.patch |
||||
Patch8: smeserver-phplist-0.1-Restrict_Admin.patch |
||||
Patch9: smeserver-phplist-0.1-cleanup_tempaltes.patch |
||||
Patch10: smeserver-phplist-0.1-fix_mysql_grant.patch |
||||
Patch11: smeserver-phplist-0.1-ssl_rewrite.patch |
||||
Patch12: smeserver-phplist-0.1-lemonldap_support.patch |
||||
Patch13: smeserver-phplist-0.1-fix_bounce_password.patch |
||||
|
||||
BuildArchitectures: noarch |
||||
BuildRequires: e-smith-devtools |
||||
BuildRoot: /var/tmp/%{name}-%{version} |
||||
Requires: e-smith-release >= 7.0 |
||||
Requires: phplist |
||||
Requires: smeserver-webapps-common |
||||
AutoReqProv: no |
||||
|
||||
%description |
||||
This rpm provides all the needed templates to get phplist |
||||
running on SME Server |
||||
|
||||
%changelog |
||||
* Fri Dec 31 2010 Daniel Berteaud <daniel@firewall-services.com> 0.1-3 |
||||
- Fix typo in BouncesPassword prop name |
||||
|
||||
* Thu Dec 30 2010 Daniel Berteaud <daniel@firewall-services.com> 0.1-2 |
||||
- Change the way mysql permissions are applied |
||||
- Rewrite URL to force SSL for /lists/admin |
||||
- Add LemonLDAP auth support (disable basic auth) |
||||
- Add AdminUsers prop (only for basic auth) |
||||
|
||||
* Mon Dec 20 2010 Daniel Berteaud <daniel@firewall-services.com> 0.1-1 |
||||
- Minor templates cleanup |
||||
|
||||
* Mon Dec 20 2010 Pierre Bourdin <pierre@firewall-services.com> 0.1-0.beta9 |
||||
- patch to restrict admin interface with SSL + login |
||||
- Separation of the main Alias for Apache in two parts, Admin and Subscibe part |
||||
|
||||
* Mon Dec 20 2010 Pierre Bourdin <pierre@firewall-services.com> 0.1-0.beta8 |
||||
- patch for force SSL connection and add access variable in DB configuration |
||||
|
||||
* Thu Dec 09 2010 Pierre Bourdin <pierre@firewall-services.com> 0.1-0.beta2 |
||||
- patch some forgotten parameters in configuration files and add DB configuration |
||||
|
||||
* Wed Dec 08 2010 Pierre Bourdin <pierre@firewall-services.com> 0.1-0.beta0 |
||||
- initial release |
||||
|
||||
|
||||
%prep |
||||
%setup |
||||
|
||||
%patch0 -p1 |
||||
%patch1 -p1 |
||||
%patch2 -p1 |
||||
%patch3 -p1 |
||||
%patch4 -p1 |
||||
%patch5 -p1 |
||||
%patch6 -p1 |
||||
%patch7 -p1 |
||||
%patch8 -p1 |
||||
%patch9 -p1 |
||||
%patch10 -p1 |
||||
%patch11 -p1 |
||||
%patch12 -p1 |
||||
%patch13 -p1 |
||||
|
||||
%build |
||||
perl ./createlinks |
||||
|
||||
%install |
||||
rm -rf $RPM_BUILD_ROOT |
||||
(cd root ; find . -depth -print | cpio -dump $RPM_BUILD_ROOT) |
||||
rm -f %{name}-%{version}-filelist |
||||
/sbin/e-smith/genfilelist $RPM_BUILD_ROOT \ |
||||
> %{name}-%{version}-filelist |
||||
|
||||
%files -f %{name}-%{version}-filelist |
||||
%defattr(-,root,root) |
||||
|
||||
%clean |
||||
rm -rf $RPM_BUILD_ROOT |
||||
|
||||
%postun |
||||
|
||||
true |
||||
|
Loading…
Reference in new issue