From 30e02beb461bcfe564f69479e5562f620896f28b Mon Sep 17 00:00:00 2001 From: Michael Date: Tue, 5 Nov 2019 19:16:11 +0000 Subject: [PATCH] New module to pin posts --- src/Module/Pinned.php | 60 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100644 src/Module/Pinned.php diff --git a/src/Module/Pinned.php b/src/Module/Pinned.php new file mode 100644 index 0000000000..590bda159e --- /dev/null +++ b/src/Module/Pinned.php @@ -0,0 +1,60 @@ +argc > 1) { + $itemId = intval($a->argv[1]); + } + + if (!$itemId) { + exit(); + } + + $item = Item::selectFirstForUser(local_user(), ['pinned'], ['uid' => local_user(), 'id' => $itemId]); + if (empty($item)) { + exit(); + } + + if (!intval($item['pinned'])) { + $pinned = 1; + } + + Item::update(['pinned' => $pinned], ['id' => $itemId]); + + // See if we've been passed a return path to redirect to + $returnPath = $_REQUEST['return'] ?? ''; + if ($returnPath) { + $rand = '_=' . time(); + if (strpos($returnPath, '?')) { + $rand = "&$rand"; + } else { + $rand = "?$rand"; + } + + $a->internalRedirect($returnPath . $rand); + } + + // the json doesn't really matter, it will either be 0 or 1 + echo json_encode($pinned); + exit(); + } +}