* @link http://status.net/
*/
-if (!defined('STATUSNET')) {
+if (!defined('GNUSOCIAL')) {
exit(1);
}
$sprofileClass = ucfirst($name) . "Site";
if (class_exists($sprofileClass)) {
- return $sprofileClass::getSettings();
+ return call_user_func(array($sprofileClass, 'getSettings'));
} else {
common_log(
LOG_ERR,
*/
abstract class SiteProfileSettings
{
- abstract static function getSettings();
+ static function getSettings()
+ {
+ throw new MethodNotImplementedException(__METHOD__);
+ }
+
+ static function corePlugins() {
+ return common_config('plugins', 'core');
+ }
+ static function defaultPlugins() {
+ return common_config('plugins', 'default');
+ }
}
/**
* @return type array an array of settings
*/
static function getSettings() {
+ global $config;
return array(
- 'site' => array(
- 'inviteonly' => false,
- 'private' => false
- ),
+ // We only want to change these values, not replace entire 'site' array
+ 'site' => array_merge(
+ $config['site'], array(
+ 'inviteonly' => false,
+ 'private' => false,
+ 'closed' => false
+ )
+ ),
'plugins' => array(
- 'default' => array(
- 'Activity' => null,
- 'Bookmark' => null,
- 'ClientSideShorten' => null,
- 'Directory' => null,
- 'Event' => null,
- 'ExtendedProfile' => null,
- 'Geonames' => null,
- 'Gravatar' => null,
- 'OpenID' => null,
- 'OStatus' => null,
- 'Poll' => null,
- 'QnA' => null,
- 'SearchSub' => null,
- 'StrictTransportSecurity' => null,
- 'TagSub' => null
- ),
- 'discovery' =>
- array('cors' => true) // Allow Cross-Origin Resource Sharing for service discovery (host-meta, XRD, etc.)
- )
+ 'core' => self::corePlugins(),
+ 'default' => array_merge(self::defaultPlugins(), array(
+ 'ExtendedProfile' => array(),
+ 'RegisterThrottle' => array(),
+ ))
+ ),
+ 'discovery' => array('cors' => true) // Allow Cross-Origin Resource Sharing for service discovery (host-meta, XRD, etc.)
);
}
}
* @return type array an array of settings
*/
static function getSettings() {
+ global $config;
return array(
- 'site' => array(
- 'inviteonly' => true,
- 'private' => true
- ),
- 'plugins' => array(
- 'default' => array(
- 'Activity' => null,
- 'Bookmark' => null,
- 'ClientSideShorten' => null,
- 'Directory' => null,
- 'Event' => null,
- 'ExtendedProfile' => null,
- 'EmailRegistration' => null,
- 'Geonames' => null,
- 'Gravatar' => null,
- 'NewMenu' => null,
- 'MobileProfile' => null,
- 'OpenID' => null,
- 'Poll' => null,
- 'QnA' => null,
- 'SearchSub' => null,
- 'StrictTransportSecurity' => null,
- 'TagSub' => null
+ // We only want to change these values, not replace entire 'site' array
+ 'site' => array_merge(
+ $config['site'], array(
+ 'inviteonly' => true,
+ 'private' => true,
)
+ ),
+ 'plugins' => array(
+ 'core' => self::corePlugins(),
+ 'default' => array_merge(self::defaultPlugins(), array(
+ 'ExtendedProfile' => array(),
+ 'EmailRegistration' => array(),
+ 'MobileProfile' => array(),
+ )),
+ 'disable-OStatus' => 1,
+ 'disable-WebFinger' => 1,
),
+ 'public' => array('localonly' => true),
'profile' => array('delete' => 'true'),
'license' => array('type' => 'private'),
'attachments' => array(
* @return type array an array of settings
*/
static function getSettings() {
+ global $config;
return array(
- 'site' => array(
- 'inviteonly' => true,
- 'private' => false
- ),
+ // We only want to change these values, not replace entire 'site' array
+ 'site' => array_merge(
+ $config['site'], array(
+ 'private' => false,
+ 'inviteonly' => true,
+ 'closed' => false
+ )
+ ),
'plugins' => array(
- 'default' => array(
- 'Activity' => null,
- 'Bookmark' => null,
- 'ClientSideShorten' => null,
- 'Directory' => null,
- 'Event' => null,
- 'Geonames' => null,
- 'Gravatar' => null,
- 'OpenID' => null,
- 'OStatus' => null,
- 'Poll' => null,
- 'QnA' => null,
- 'SearchSub' => null,
- 'StrictTransportSecurity' => null,
- 'TagSub' => null
- ),
- 'discovery' =>
- array('cors' => true) // Allow Cross-Origin Resource Sharing for service discovery (host-meta, XRD, etc.)
- )
+ 'core' => self::corePlugins(),
+ 'default' => array_merge(self::defaultPlugins(), array(
+ ))
+ ),
+ 'public' => array('localonly' => true),
+ 'discovery' => array('cors' => true) // Allow Cross-Origin Resource Sharing for service discovery (host-meta, XRD, etc.)
);
}
* @return type array an array of settings
*/
static function getSettings() {
+ global $config;
return array(
'singleuser' => array('enabled' => true),
- 'site' => array(
- 'private' => false,
- 'closed' => true,
- ),
+ // We only want to change these values, not replace entire 'site' array
+ 'site' => array_merge(
+ $config['site'], array(
+ 'private' => false,
+ 'closed' => true,
+ 'localonly' => true,
+ )
+ ),
'plugins' => array(
- 'default' => array(
- 'Activity' => null,
- 'Bookmark' => null,
- 'ClientSideShorten' => null,
- 'Event' => null,
- 'Geonames' => null,
- 'NewMenu' => null,
- 'MobileProfile' => null,
- 'OpenID' => null,
- 'OStatus' => null,
- 'Poll' => null,
- 'QnA' => null,
- 'SearchSub' => null,
- 'StrictTransportSecurity' => null,
- 'TagSub' => null,
- 'TwitterBridge' => null,
- 'FacebookBridge' => null
- ),
- 'discovery' =>
- array('cors' => true) // Allow Cross-Origin Resource Sharing for service discovery (host-meta, XRD, etc.)
- )
+ 'core' => self::corePlugins(),
+ 'default' => array_merge(self::defaultPlugins(), array(
+ 'MobileProfile' => array(),
+ )),
+ 'disable-Directory' => 1,
+ ),
+ 'public' => array('localonly' => true),
+ 'discovery' => array('cors' => true) // Allow Cross-Origin Resource Sharing for service discovery (host-meta, XRD, etc.)
);
}