]> git.mxchange.org Git - friendica-addons.git/commitdiff
[public_server] Add addon config
authorHypolite Petovan <mrpetovan@gmail.com>
Thu, 28 Jun 2018 03:18:46 +0000 (23:18 -0400)
committerHypolite Petovan <mrpetovan@gmail.com>
Tue, 10 Jul 2018 12:39:48 +0000 (08:39 -0400)
- Update mentions of .htconfig.php

public_server/README.md
public_server/config/public_server.ini.php [new file with mode: 0644]
public_server/public_server.php

index b1fb49df071c9fbd57a535a7117b535c77a3ffec..bd297424547dcec762595dc81ab7fb4350cbf842 100644 (file)
@@ -3,27 +3,28 @@ Public Server
 
 
 Public Server is a Friendica addon which implements automatic account & post expiration so that a site may be used as a public
-test bed with reduced data retention. 
+test bed with reduced data retention.
 
 This is a modified version of the testdrive addon, DO NOT ACTIVATE AT THE SAME TIME AS THE TESTDRIVE ADDON.
 
-    //When an account is created on the site, it is given a hard expiration date of 
-    $a->config['public_server']['expiredays'] = 30;
-    //Set the default days for posts to expire here
-    $a->config['public_server']['expireposts'] = 30;
-    //Remove users who have never logged in after nologin days
-    $a->config['public_server']['nologin'] = 30;
-    //Remove users who last logged in over flagusers days ago
-    $a->config['public_server']['flagusers'] = 146;
-    //For users who last logged in over flagposts days ago set post expiry days to flagpostsexpire
-    $a->config['public_server']['flagposts'] = 90;
-    $a->config['public_server']['flagpostsexpire'] = 146;
-
-Set these in your .htconfig.php file. By default nothing is defined in case the addon is activated accidentally. 
+    [public_server]
+       ; When an account is created on the site, it is given a hard expiration date of
+    expiredays = 30
+    ; Set the default days for posts to expire here
+    expireposts = 30
+    ; Remove users who have never logged in after nologin days
+    nologin = 30
+    ; Remove users who last logged in over flagusers days ago
+    flagusers = 146
+    ; For users who last logged in over flagposts days ago set post expiry days to flagpostsexpire
+    flagposts = 90
+    flagpostsexpire = 146
+
+Set these in your config/local.ini.php file. By default nothing is defined in case the addon is activated accidentally.
 They can be ommitted or set to 0 to disable each option.
 The default values are those used by friendica.eu, change these as desired.
 
 The expiration date is updated when the user logs in.
 
-An email warning will be sent out approximately five days before the expiration occurs. Five days later the account is removed completely. 
-   
+An email warning will be sent out approximately five days before the expiration occurs. Five days later the account is removed completely.
+
diff --git a/public_server/config/public_server.ini.php b/public_server/config/public_server.ini.php
new file mode 100644 (file)
index 0000000..3c41664
--- /dev/null
@@ -0,0 +1,30 @@
+<?php return <<<INI
+
+; Warning: Don't change this file! It only holds the default config values for this addon.
+; Instead overwrite these config values in config/local.ini.php in your Friendica directory
+
+[public_server]
+; expiredays (Integer)
+; When an account is created on the site, it is given a hard expiration date of
+expiredays =
+
+; expireposts (Integer)
+; Set the default days for posts to expire here
+expireposts =
+
+; nologin (Integer)
+; Remove users who have never logged in after nologin days
+nologin =
+
+; flagusers (Integer)
+; Remove users who last logged in over flagusers days ago
+flagusers =
+
+; flagposts (Integer)
+; flagpostsexpire (Integer)
+; For users who last logged in over flagposts days ago set post expiry days to flagpostsexpire
+flagposts =
+flagpostsexpire =
+
+INI;
+//Keep this line
\ No newline at end of file
index cfcb8fd74fe52ed7d5f05fa119dbf51daa98a16a..b33897a3baefc2ee745a75f3c5e0ac3976e48bbd 100644 (file)
@@ -14,6 +14,7 @@ use Friendica\Util\DateTimeFormat;
 
 function public_server_install()
 {
+       Addon::registerHook('load_config',      'addon/public_server/public_server.php', 'public_server_load_config');
        Addon::registerHook('register_account', 'addon/public_server/public_server.php', 'public_server_register_account');
        Addon::registerHook('cron', 'addon/public_server/public_server.php', 'public_server_cron');
        Addon::registerHook('enotify', 'addon/public_server/public_server.php', 'public_server_enotify');
@@ -22,12 +23,18 @@ function public_server_install()
 
 function public_server_uninstall()
 {
+       Addon::unregisterHook('load_config',      'addon/public_server/public_server.php', 'public_server_load_config');
        Addon::unregisterHook('register_account', 'addon/public_server/public_server.php', 'public_server_register_account');
        Addon::unregisterHook('cron', 'addon/public_server/public_server.php', 'public_server_cron');
        Addon::unregisterHook('enotify', 'addon/public_server/public_server.php', 'public_server_enotify');
        Addon::unregisterHook('logged_in', 'addon/public_server/public_server.php', 'public_server_login');
 }
 
+function public_server_load_config(\Friendica\App $a)
+{
+       $a->loadConfigFile(__DIR__. '/config/public_server.ini.php');
+}
+
 function public_server_register_account($a, $b)
 {
        $uid = $b;