Example #1
0
 /**
  * @brief add/remove a notification class to/from the blacklist
  * @param string $uid user
  * @param int $class class id
  * @param boolean $block true to add, false to remove from blacklist
  */
 public static function setBlacklist($uid = null, $class, $block)
 {
     if (is_null($uid)) {
         if (OCP\User::isLoggedIn()) {
             $uid = OCP\User::getUser();
         } else {
             throw new Exception('Not logged in!');
         }
     }
     $stmt = null;
     if ($block) {
         if (!isset(self::$addToBlacklistStmt)) {
             self::$addToBlacklistStmt = OCP\DB::prepare("INSERT INTO *PREFIX*notification_blacklist (uid, class) VALUES (?, ?)");
         }
         $stmt = self::$addToBlacklistStmt;
     } else {
         if (!isset(self::$removeFromBlacklistStmt)) {
             self::$removeFromBlacklistStmt = OCP\DB::prepare("DELETE FROM *PREFIX*notification_blacklist WHERE uid = ? AND class = ?");
         }
         $stmt = self::$removeFromBlacklistStmt;
     }
     $stmt->execute(array($uid, $class));
 }