friendica/mod/like.php

54 lines
1.0 KiB
PHP
Raw Normal View History

2010-09-17 06:10:19 -04:00
<?php
use Friendica\App;
2017-08-26 02:04:21 -04:00
use Friendica\Core\System;
2018-02-01 14:17:08 -05:00
use Friendica\Model\Item;
use Friendica\Util\Strings;
2017-12-21 17:54:58 -05:00
require_once 'include/items.php';
2010-09-17 06:10:19 -04:00
function like_content(App $a) {
2017-12-21 17:54:58 -05:00
if (!local_user() && !remote_user()) {
return false;
2010-09-17 06:10:19 -04:00
}
$verb = Strings::removeTags(trim($_GET['verb']));
2010-09-17 06:10:19 -04:00
2017-12-21 17:54:58 -05:00
if (!$verb) {
2010-09-17 06:10:19 -04:00
$verb = 'like';
2017-12-21 17:54:58 -05:00
}
2010-09-17 06:10:19 -04:00
$item_id = (($a->argc > 1) ? Strings::removeTags(trim($a->argv[1])) : 0);
2010-09-17 06:10:19 -04:00
2018-02-01 14:17:08 -05:00
$r = Item::performLike($item_id, $verb);
2017-12-21 17:54:58 -05:00
if (!$r) {
return;
}
// See if we've been passed a return path to redirect to
$return_path = ((x($_REQUEST,'return')) ? $_REQUEST['return'] : '');
like_content_return($a, $return_path);
killme(); // NOTREACHED
}
// Decide how to return. If we were called with a 'return' argument,
// then redirect back to the calling page. If not, just quietly end
function like_content_return(App $a, $return_path) {
2017-12-21 17:54:58 -05:00
if ($return_path) {
$rand = '_=' . time();
2017-12-21 17:54:58 -05:00
if (strpos($return_path, '?')) {
$rand = "&$rand";
} else {
$rand = "?$rand";
}
$a->internalRedirect($return_path . $rand);
}
killme();
}