added invitation module
This commit is contained in:
parent
eaf713bd15
commit
7feed93a56
24
INSTALL
24
INSTALL
|
@ -1,26 +1,38 @@
|
||||||
Installation guide
|
Installation guide
|
||||||
|
|
||||||
The following notes apply to pre-alpha releases. Some manual installation is required at this time.
|
The following notes apply to alpha/beta releases. Some manual installation is
|
||||||
|
required at this time.
|
||||||
|
|
||||||
|
|
||||||
1. Requirements
|
1. Requirements
|
||||||
- Apache with mod-rewrite enabled and "Options All" so you can use a local .htaccess file
|
- Apache with mod-rewrite enabled and "Options All" so you can use a
|
||||||
- PHP > 5.1. The later the better. You'll need 5.3 for full openssl encryption support
|
local .htaccess file
|
||||||
- PHP command line access with register_argc_argv set to true in the php.ini file
|
- PHP > 5.1. The later the better. You'll need 5.3 for full openssl
|
||||||
|
encryption support
|
||||||
|
- PHP *command line* access with register_argc_argv set to true in the
|
||||||
|
php.ini file
|
||||||
- Mysql 5.x
|
- Mysql 5.x
|
||||||
|
- cron
|
||||||
|
|
||||||
|
[Dreamhost.com offers all of the necessary hosting features at a
|
||||||
|
reasonable price. If your hosting provider doesn't allow Unix shell access,
|
||||||
|
you might have trouble getting everything to work.]
|
||||||
|
|
||||||
2. Edit htconfig.php and change system settings. Rename to .htconfig.php
|
2. Edit htconfig.php and change system settings. Rename to .htconfig.php
|
||||||
|
|
||||||
3. Import database.sql into your database with mysql command line or via phpmyadmin
|
3. Import database.sql into your database with mysql command line or via phpmyadmin
|
||||||
|
|
||||||
4. Import updates.sql to catch any late-breaking devel changes
|
4. Import updates.sql (if it exists) to catch any late-breaking devel changes
|
||||||
|
|
||||||
5. Put this directory into the root of your web server document area.
|
5. Put this directory into the root of your web server document area.
|
||||||
- To use a subdir of your main site, set the
|
- To use a subdir of your main site, set the
|
||||||
config variable $a->path to the relative subdir
|
config variable $a->path to the relative subdir
|
||||||
For example to use http://example.com/test -
|
in .htconfig.php - for example to use http://example.com/test -
|
||||||
set $a->path to 'test'.
|
set $a->path to 'test'.
|
||||||
|
- Everything will work much better if you can dedicate a domain
|
||||||
|
or subdomain so that you don't require an extra server path.
|
||||||
|
|
||||||
6. Navigate to your site with a web browser and register an account.
|
6. Navigate to your site with a web browser and register an account.
|
||||||
|
|
||||||
|
7. Set up a cron task to run "php include/poller.php http://my.domain.name" once every 5-10 minutes.
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,63 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
|
||||||
|
function invite_post(&$a) {
|
||||||
|
if(! local_user()) {
|
||||||
|
notice( t('Permission denied.') . EOL);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
$recips = explode("\n",$_POST['recipients']);
|
||||||
|
$message = $_POST['message'];
|
||||||
|
|
||||||
|
$total = 0;
|
||||||
|
|
||||||
|
foreach($recips as $recip) {
|
||||||
|
|
||||||
|
$recip = trim($recip);
|
||||||
|
|
||||||
|
if(!eregi('[A-Za-z0-9._%-]+@[A-Za-z0-9._%-]+\.[A-Za-z]{2,6}', $recip)) {
|
||||||
|
notice( $recip . t(' : ') . t('Not a valid email address.') . EOL);
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
$res = mail($recip, t('Please join my network on ') . $a->config['sitename'], $message, "From: " . $a->user['email']);
|
||||||
|
if($res) {
|
||||||
|
$total ++;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
notice( $recip . t(' : ') . t('Message delivery failed.') . EOL);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
notice( $total . t(' messages sent.') . EOL);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function invite_content(&$a) {
|
||||||
|
if(! local_user()) {
|
||||||
|
notice( t('Permission denied.') . EOL);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
$tpl = file_get_contents('view/invite.tpl');
|
||||||
|
|
||||||
|
$o = replace_macros($tpl, array(
|
||||||
|
'$invite' => t('Send invitations'),
|
||||||
|
'$addr_text' => t('Enter email addresses, one per line:'),
|
||||||
|
'$msg_text' => t('Your message:'),
|
||||||
|
'$default_message' => t('Please join my social network on ') . $a->config['sitename'] . t("\r\n") . t("\r\n")
|
||||||
|
. t('To accept this invitation, please visit:') . t("\r\n") . t("\r\n") . $a->get_baseurl()
|
||||||
|
. t("\r\n") . t("\r\n") . t('Once you have registered, please make an introduction via my profile page at:')
|
||||||
|
. t("\r\n") . t("\r\n") . $a->get_baseurl() . '/profile/' . $a->user['nickname'] ,
|
||||||
|
'$submit' => t('Submit')
|
||||||
|
));
|
||||||
|
|
||||||
|
return $o;
|
||||||
|
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,26 @@
|
||||||
|
<form action="invite" method="post" id="invite-form" >
|
||||||
|
<div id="invite-wrapper">
|
||||||
|
|
||||||
|
<h3>$invite</h3>
|
||||||
|
|
||||||
|
<div id="invite-recipient-text">
|
||||||
|
$addr_text
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="invite-recipient-textarea">
|
||||||
|
<textarea id="invite-recipients" name="recipients" rows="8" cols="32" ></textarea>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="invite-message-text">
|
||||||
|
$msg_text
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="invite-message-textarea">
|
||||||
|
<textarea id="invite-message" name="message" rows="10" cols="72" >$default_message</textarea>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="invite-submit-wrapper">
|
||||||
|
<input type="submit" name="submit" value="$submit" />
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</form>
|
Loading…
Reference in New Issue
Block a user