]> git.mxchange.org Git - quix0rs-gnu-social.git/blobdiff - lib/subs.php
Use inlineScript() instead of element() to write inline javascript
[quix0rs-gnu-social.git] / lib / subs.php
index e1ee397ccf686bf13debbed9eac4886fa2d3c8eb..4b6b03967aee356bccbcd0675dfe3defe1ec0adb 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /*
- * StatusNet - a distributed open-source microblogging tool
+ * StatusNet - the distributed open-source microblogging tool
  * Copyright (C) 2008, 2009, StatusNet, Inc.
  *
  * This program is free software: you can redistribute it and/or modify
@@ -17,7 +17,7 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  */
 
-if (!defined('LACONICA')) { exit(1); }
+if (!defined('STATUSNET') && !defined('LACONICA')) { exit(1); }
 
 require_once('XMPPHP/XMPP.php');
 
@@ -44,8 +44,12 @@ function subs_subscribe_user($user, $other_nickname)
 
 function subs_subscribe_to($user, $other)
 {
+    if (!$user->hasRight(Right::SUBSCRIBE)) {
+        return _('You have been banned from subscribing.');
+    }
+
     if ($user->isSubscribed($other)) {
-        return _('Already subscribed!.');
+        return _('Already subscribed!');
     }
 
     if ($other->hasBlocked($user)) {
@@ -121,7 +125,13 @@ function subs_unsubscribe_user($user, $other_nickname)
 function subs_unsubscribe_to($user, $other)
 {
     if (!$user->isSubscribed($other))
-        return _('Not subscribed!.');
+        return _('Not subscribed!');
+
+    // Don't allow deleting self subs
+
+    if ($user->id == $other->id) {
+        return _('Couldn\'t delete self-subscription.');
+    }
 
     $sub = DB_DataObject::factory('subscription');