Merge remote-tracking branch 'upstream/develop' into community
[friendica.git/.git] / mod / like.php
1 <?php
2
3 use Friendica\App;
4 use Friendica\Core\System;
5
6 require_once 'include/security.php';
7 require_once 'include/bbcode.php';
8 require_once 'include/items.php';
9 require_once 'include/like.php';
10
11 function like_content(App $a) {
12         if (!local_user() && !remote_user()) {
13                 return false;
14         }
15
16
17         $verb = notags(trim($_GET['verb']));
18
19         if (!$verb) {
20                 $verb = 'like';
21         }
22
23         $item_id = (($a->argc > 1) ? notags(trim($a->argv[1])) : 0);
24
25         $r = do_like($item_id, $verb);
26         if (!$r) {
27                 return;
28         }
29
30         // See if we've been passed a return path to redirect to
31         $return_path = ((x($_REQUEST,'return')) ? $_REQUEST['return'] : '');
32
33         like_content_return(System::baseUrl(), $return_path);
34         killme(); // NOTREACHED
35 }
36
37
38 // Decide how to return. If we were called with a 'return' argument,
39 // then redirect back to the calling page. If not, just quietly end
40
41 function like_content_return($baseurl, $return_path) {
42         if ($return_path) {
43                 $rand = '_=' . time();
44                 if (strpos($return_path, '?')) {
45                         $rand = "&$rand";
46                 } else {
47                         $rand = "?$rand";
48                 }
49
50                 goaway($baseurl . "/" . $return_path . $rand);
51         }
52
53         killme();
54 }