- PConfig::set(local_user(), 'blogger', 'post', defaults($_POST, 'blogger', false));
- PConfig::set(local_user(), 'blogger', 'post_by_default', defaults($_POST, 'bl_bydefault', false));
- PConfig::set(local_user(), 'blogger', 'bl_username', trim($_POST['bl_username']));
- PConfig::set(local_user(), 'blogger', 'bl_password', trim($_POST['bl_password']));
- PConfig::set(local_user(), 'blogger', 'bl_blog', trim($_POST['bl_blog']));
+ DI::pConfig()->set(local_user(), 'blogger', 'post', $_POST['blogger'] ?? false);
+ DI::pConfig()->set(local_user(), 'blogger', 'post_by_default', $_POST['bl_bydefault'] ?? false);
+ DI::pConfig()->set(local_user(), 'blogger', 'bl_username', trim($_POST['bl_username']));
+ DI::pConfig()->set(local_user(), 'blogger', 'bl_password', trim($_POST['bl_password']));
+ DI::pConfig()->set(local_user(), 'blogger', 'bl_blog', trim($_POST['bl_blog']));
+ }
+}
+
+function blogger_hook_fork(App &$a, array &$b)
+{
+ if ($b['name'] != 'notifier_normal') {
+ return;
+ }
+
+ $post = $b['data'];
+
+ if ($post['deleted'] || $post['private'] || ($post['created'] !== $post['edited']) ||
+ !strstr($post['postopts'], 'blogger') || ($post['parent'] != $post['id'])) {
+ $b['execute'] = false;
+ return;