aboutsummaryrefslogtreecommitdiffstats
path: root/mod
diff options
context:
space:
mode:
Diffstat (limited to 'mod')
-rw-r--r--mod/invite.php19
-rw-r--r--mod/message.php4
2 files changed, 21 insertions, 2 deletions
diff --git a/mod/invite.php b/mod/invite.php
index 5eb5f6646..336e20164 100644
--- a/mod/invite.php
+++ b/mod/invite.php
@@ -14,6 +14,18 @@ function invite_post(&$a) {
return;
}
+ check_form_security_token_redirectOnErr('/', 'send_invite');
+
+ $max_invites = intval(get_config('system','max_invites'));
+ if(! $max_invites)
+ $max_invites = 50;
+
+ $current_invites = intval(get_pconfig(local_user(),'system','sent_invites'));
+ if($current_invites > $max_invites) {
+ notice( t('Total invitation limit exceeded.') . EOL);
+ return;
+ };
+
$recips = ((x($_POST,'recipients')) ? explode("\n",$_POST['recipients']) : array());
$message = ((x($_POST,'message')) ? notags(trim($_POST['message'])) : '');
@@ -64,6 +76,12 @@ function invite_post(&$a) {
if($res) {
$total ++;
+ $current_invites ++;
+ set_pconfig(local_user(),'system','sent_invites',$current_invites);
+ if($current_invites > $max_invites) {
+ notice( t('Invitation limit exceeded. Please contact your site administrator.') . EOL);
+ return;
+ }
}
else {
notice( sprintf( t('%s : Message delivery failed.'), $recip) . EOL);
@@ -108,6 +126,7 @@ function invite_content(&$a) {
}
$o = replace_macros($tpl, array(
+ '$form_security_token' => get_form_security_token("send_invite"),
'$invite' => t('Send invitations'),
'$addr_text' => t('Enter email addresses, one per line:'),
'$msg_text' => t('Your message:'),
diff --git a/mod/message.php b/mod/message.php
index dd892b2a5..98a1067ed 100644
--- a/mod/message.php
+++ b/mod/message.php
@@ -4,6 +4,7 @@ require_once('include/acl_selectors.php');
require_once('include/message.php');
require_once('include/zot.php');
require_once("include/bbcode.php");
+require_once('include/Contact.php');
function message_aside(&$a) {
@@ -299,9 +300,8 @@ function message_content(&$a) {
// private_messages_list() can do other more complicated stuff, for now keep it simple
- $order = 'created desc';
- $r = private_messages_list(local_user(), '', $order, $a->pager['start'], $a->pager['itemspage']);
+ $r = private_messages_list(local_user(), '', $a->pager['start'], $a->pager['itemspage']);
if(! $r) {
info( t('No messages.') . EOL);