summaryrefslogtreecommitdiff
path: root/plugins/SubMirror/SubMirrorPlugin.php
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/SubMirror/SubMirrorPlugin.php')
-rw-r--r--plugins/SubMirror/SubMirrorPlugin.php23
1 files changed, 23 insertions, 0 deletions
diff --git a/plugins/SubMirror/SubMirrorPlugin.php b/plugins/SubMirror/SubMirrorPlugin.php
index 8678cc3dd..00c04ad0b 100644
--- a/plugins/SubMirror/SubMirrorPlugin.php
+++ b/plugins/SubMirror/SubMirrorPlugin.php
@@ -146,4 +146,27 @@ class SubMirrorPlugin extends Plugin
array('href' => common_local_url('mirrorsettings')),
_m('Set up mirroring options...'));
}
+
+ /**
+ * Let the OStatus subscription garbage collection know if we're
+ * making use of a remote feed, so it doesn't get dropped out
+ * from under us.
+ *
+ * @param Ostatus_profile $oprofile
+ * @param int $count in/out
+ * @return mixed hook return value
+ */
+ function onOstatus_profileSubscriberCount($oprofile, &$count)
+ {
+ if ($oprofile->profile_id) {
+ $mirror = new SubMirror();
+ $mirror->subscribed = $oprofile->profile_id;
+ if ($mirror->find()) {
+ while ($mirror->fetch()) {
+ $count++;
+ }
+ }
+ }
+ return true;
+ }
}