use Friendica\Core\Addon;
use Friendica\Core\Config;
use Friendica\Core\L10n;
+use Friendica\Database\DBA;
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');
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;
}
$fields = ['account_expires_on' => DateTimeFormat::utc('now +' . $days . ' days'), 'expire' => $days_posts];
- dba::update('user', $fields, ['uid' => $uid]);
+ DBA::update('user', $fields, ['uid' => $uid]);
}
function public_server_cron($a, $b)
$r = q("SELECT * FROM `user` WHERE `account_expires_on` < UTC_TIMESTAMP() + INTERVAL 5 DAY AND
`account_expires_on` > '%s' AND
`expire_notification_sent` <= '%s'",
- dbesc(NULL_DATE), dbesc(NULL_DATE));
+ DBA::escape(NULL_DATE), DBA::escape(NULL_DATE));
- if (DBM::is_result($r)) {
+ if (DBA::isResult($r)) {
foreach ($r as $rr) {
notification([
'uid' => $rr['uid'],
]);
$fields = ['expire_notification_sent' => DateTimeFormat::utcNow()];
- dba::update('user', $fields, ['uid' => $rr['uid']]);
+ DBA::update('user', $fields, ['uid' => $rr['uid']]);
}
}
$nologin = Config::get('public_server', 'nologin', false);
if ($nologin) {
$r = q("SELECT `uid` FROM `user` WHERE NOT `account_expired` AND `login_date` <= '%s' AND `register_date` < UTC_TIMESTAMP() - INTERVAL %d DAY AND `account_expires_on` <= '%s'",
- dbesc(NULL_DATE), intval($nologin), dbesc(NULL_DATE));
- if (DBM::is_result($r)) {
+ DBA::escape(NULL_DATE), intval($nologin), DBA::escape(NULL_DATE));
+ if (DBA::isResult($r)) {
foreach ($r as $rr) {
$fields = ['account_expires_on' => DateTimeFormat::utc('now +6 days')];
- dba::update('user', $fields, ['uid' => $rr['uid']]);
+ DBA::update('user', $fields, ['uid' => $rr['uid']]);
}
}
}
$flagusers = Config::get('public_server', 'flagusers', false);
if ($flagusers) {
$r = q("SELECT `uid` FROM `user` WHERE NOT `account_expired` AND `login_date` < UTC_TIMESTAMP() - INTERVAL %d DAY AND `account_expires_on` <= '%s' AND `page-flags` = 0",
- intval($flagusers), dbesc(NULL_DATE));
- if (DBM::is_result($r)) {
+ intval($flagusers), DBA::escape(NULL_DATE));
+ if (DBA::isResult($r)) {
foreach ($r as $rr) {
$fields = ['account_expires_on' => DateTimeFormat::utc('now +6 days')];
- dba::update('user', $fields, ['uid' => $rr['uid']]);
+ DBA::update('user', $fields, ['uid' => $rr['uid']]);
}
}
}
$flagpostsexpire = Config::get('public_server', 'flagpostsexpire');
if ($flagposts && $flagpostsexpire) {
$r = q("SELECT `uid` FROM `user` WHERE NOT `account_expired` AND `login_date` < UTC_TIMESTAMP() - INTERVAL %d DAY AND `account_expires_on` <= '%s' and `expire` = 0 AND `page-flags` = 0",
- intval($flagposts), dbesc(NULL_DATE));
- if (DBM::is_result($r)) {
+ intval($flagposts), DBA::escape(NULL_DATE));
+ if (DBA::isResult($r)) {
foreach ($r as $rr) {
- dba::update('user', ['expire' => $flagpostsexpire], ['uid' => $rr['uid']]);
+ DBA::update('user', ['expire' => $flagpostsexpire], ['uid' => $rr['uid']]);
}
}
}
$b['itemlink'] = $a->get_baseurl();
$b['epreamble'] = $b['preamble'] = L10n::t('Your account on %s will expire in a few days.', Config::get('system', 'sitename'));
$b['subject'] = L10n::t('Your Friendica account is about to expire.');
- $b['body'] = L10n::t("Hi %1\$s,\n\nYour account on %2\$s will expire in less than five days. You may keep your account by logging in at least once every 30 days", $b['params']['to_name'], "[url=" . $app->config["system"]["url"] . "]" . $app->config["sitename"] . "[/url]");
+ $b['body'] = L10n::t("Hi %1\$s,\n\nYour account on %2\$s will expire in less than five days. You may keep your account by logging in at least once every 30 days", $b['params']['to_name'], "[url=" . Config::get('system', 'url') . "]" . Config::get('config', 'sitename') . "[/url]");
}
}
$fields = ['account_expires_on' => DateTimeFormat::utc('now +' . $days . ' days')];
$condition = ["`uid` = ? AND `account_expires_on` > ?", local_user(), NULL_DATE];
- dba::update('user', $fields, $condition);
+ DBA::update('user', $fields, $condition);
}
function public_server_addon_admin_post(&$a)