]> git.mxchange.org Git - quix0rs-gnu-social.git/blobdiff - actions/invite.php
Merge branch '1.0.x' of gitorious.org:statusnet/mainline into 1.0.x
[quix0rs-gnu-social.git] / actions / invite.php
index 2779437e0c3ccc1fb94f6eff8cc3efc4425d5e5c..be2228e703d88eecd82fc8db095ffcab7109b987 100644 (file)
@@ -19,6 +19,7 @@
 
 if (!defined('STATUSNET') && !defined('LACONICA')) { exit(1); }
 
+// @todo XXX: Add documentation.
 class InviteAction extends CurrentUserDesignAction
 {
     var $mode = null;
@@ -53,9 +54,10 @@ class InviteAction extends CurrentUserDesignAction
 
     function sendInvitations()
     {
-        # CSRF protection
+        // CSRF protection
         $token = $this->trimmed('token');
         if (!$token || $token != common_session_token()) {
+            // TRANS: Client error displayed when the session token does not match or is not given.
             $this->showForm(_('There was a problem with your session token. Try again, please.'));
             return;
         }
@@ -71,7 +73,14 @@ class InviteAction extends CurrentUserDesignAction
 
         foreach ($addresses as $email) {
             $email = trim($email);
-            if (!Validate::email($email, common_config('email', 'check_domain'))) {
+            $valid = null;
+
+            if (Event::handle('StartValidateEmailInvite', array($user, $email, &$valid))) {
+                $valid = Validate::email($email, common_config('email', 'check_domain'));
+                Event::handle('EndValidateEmailInvite', array($user, $email, &$valid));
+            }
+
+            if (!$valid) {
                 // TRANS: Form validation message when providing an e-mail address that does not validate.
                 // TRANS: %s is an invalid e-mail address.
                 $this->showForm(sprintf(_('Invalid email address: %s.'), $email));
@@ -142,7 +151,7 @@ class InviteAction extends CurrentUserDesignAction
             $this->elementStart('ul');
             foreach ($this->already as $other) {
                 // TRANS: Used as list item for already subscribed users (%1$s is nickname, %2$s is e-mail address).
-                $this->element('li', null, sprintf(_('%1$s (%2$s)'), $other->nickname, $other->email));
+                $this->element('li', null, sprintf(_m('INVITE','%1$s (%2$s)'), $other->nickname, $other->email));
             }
             $this->elementEnd('ul');
         }
@@ -156,7 +165,7 @@ class InviteAction extends CurrentUserDesignAction
             $this->elementStart('ul');
             foreach ($this->subbed as $other) {
                 // TRANS: Used as list item for already registered people (%1$s is nickname, %2$s is e-mail address).
-                $this->element('li', null, sprintf(_('%1$s (%2$s)'), $other->nickname, $other->email));
+                $this->element('li', null, sprintf(_m('INVITE','%1$s (%2$s)'), $other->nickname, $other->email));
             }
             $this->elementEnd('ul');
         }
@@ -217,7 +226,7 @@ class InviteAction extends CurrentUserDesignAction
         $this->textarea('addresses', _('Email addresses'),
                         $this->trimmed('addresses'),
                         // TRANS: Tooltip for field label for a list of e-mail addresses.
-                        _('Addresses of friends to invite (one per line)'));
+                        _('Addresses of friends to invite (one per line).'));
         $this->elementEnd('li');
         $this->elementStart('li');
         // TRANS: Field label for a personal message to send to invitees.
@@ -288,7 +297,7 @@ class InviteAction extends CurrentUserDesignAction
         mail_send($recipients, $headers, $body);
     }
 
-    function showLocalNav()
+    function showObjectNav()
     {
         $nav = new SubGroupNav($this, common_current_user());
         $nav->show();