]> git.mxchange.org Git - quix0rs-gnu-social.git/commitdiff
Caller can set scope for Notice::saveNew()
authorEvan Prodromou <evan@status.net>
Sat, 26 Mar 2011 19:49:46 +0000 (15:49 -0400)
committerEvan Prodromou <evan@status.net>
Sat, 26 Mar 2011 19:49:46 +0000 (15:49 -0400)
README
classes/Notice.php
lib/default.php

diff --git a/README b/README
index 0dcbeea23929b01a8b5f8a6ee7978f5c2f5693cd..ef032cad8423a341dcb6b90b3e545a8be3ea0084 100644 (file)
--- a/README
+++ b/README
@@ -1472,6 +1472,8 @@ Configuration options specific to notices.
 contentlimit: max length of the plain-text content of a notice.
     Default is null, meaning to use the site-wide text limit.
     0 means no limit.
+defaultscope: default scope for notices. Defaults to 0; set to
+             1 to keep notices private to this site by default.
 
 message
 -------
index 83507f3bc0f63c1ed916d3ed08760999f567c5a4..b380f027a2a0266eb96be66b1b747e9ecfe98a62 100644 (file)
@@ -249,6 +249,7 @@ class Notice extends Memcached_DataObject
      *                           notice in place of extracting links from content
      *              boolean 'distribute' whether to distribute the notice, default true
      *              string 'object_type' URL of the associated object type (default ActivityObject::NOTE)
+     *              int 'scope' Scope bitmask; default to SITE_SCOPE on private sites, 0 otherwise
      *
      * @fixme tag override
      *
@@ -260,6 +261,7 @@ class Notice extends Memcached_DataObject
                           'url' => null,
                           'reply_to' => null,
                           'repeat_of' => null,
+                          'scope' => null,
                           'distribute' => true);
 
         if (!empty($options)) {
@@ -374,6 +376,12 @@ class Notice extends Memcached_DataObject
             $notice->object_type = $object_type;
         }
 
+        if (is_null($scope)) { // 0 is a valid value
+            $notice->scope = common_config('notice', 'defaultscope');
+        } else {
+            $notice->scope = $scope;
+        }
+
         if (Event::handle('StartNoticeSave', array(&$notice))) {
 
             // XXX: some of these functions write to the DB
index e6caf0301a636df07ecc288477f227019ced1edf..9872d8ffd3b2ad7c6e145fddf4c9512ed064aac5 100644 (file)
@@ -288,7 +288,8 @@ $default =
         array('enabled' => true,
               'css' => ''),
         'notice' =>
-        array('contentlimit' => null),
+        array('contentlimit' => null,
+              'defaultscope' => 0), // set to 0 for default open
         'message' =>
         array('contentlimit' => null),
         'location' =>