]> git.mxchange.org Git - friendica.git/blobdiff - mod/ignored.php
Merge pull request #6224 from annando/dba-delete-contact
[friendica.git] / mod / ignored.php
index 99b3a3ddcca3c486420d860336b0eeb5891f8734..4f14119fef876d792e9b3f1e684139a09fb9812f 100644 (file)
@@ -1,46 +1,49 @@
 <?php
 
-
-function ignored_init(App &$a) {
-
-       $ignored = 0;
-
-       if (! local_user()) {
+use Friendica\App;
+use Friendica\Core\System;
+use Friendica\Database\DBA;
+use Friendica\Model\Item;
+
+function ignored_init(App $a)
+{
+       if (!local_user()) {
                killme();
        }
+
        if ($a->argc > 1) {
                $message_id = intval($a->argv[1]);
        }
-       if (! $message_id) {
+
+       if (!$message_id) {
                killme();
        }
 
-       $r = q("SELECT `ignored` FROM `thread` WHERE `uid` = %d AND `iid` = %d LIMIT 1",
-               intval(local_user()),
-               intval($message_id)
-       );
-       if (! dbm::is_result($r)) {
+       $thread = Item::selectFirstThreadForUser(local_user(), ['uid', 'ignored'], ['iid' => $message_id]);
+       if (!DBA::isResult($thread)) {
                killme();
        }
 
-       if (! intval($r[0]['ignored'])) {
-               $ignored = 1;
-       }
+       // Numeric values are needed for the json output further below
+       $ignored = ($thread['ignored'] ? 0 : 1);
 
-       $r = q("UPDATE `thread` SET `ignored` = %d WHERE `uid` = %d and `iid` = %d",
-               intval($ignored),
-               intval(local_user()),
-               intval($message_id)
-       );
+       if ($thread['uid'] != 0) {
+               DBA::update('thread', ['ignored' => $ignored], ['iid' => $message_id]);
+       } else {
+               DBA::update('user-item', ['ignored' => $ignored], ['iid' => $message_id, 'uid' => local_user()], true);
+       }
 
        // See if we've been passed a return path to redirect to
-       $return_path = ((x($_REQUEST,'return')) ? $_REQUEST['return'] : '');
+       $return_path = defaults($_REQUEST, 'return', '');
        if ($return_path) {
                $rand = '_=' . time();
-               if(strpos($return_path, '?')) $rand = "&$rand";
-               else $rand = "?$rand";
+               if (strpos($return_path, '?')) {
+                       $rand = "&$rand";
+               } else {
+                       $rand = "?$rand";
+               }
 
-               goaway(App::get_baseurl() . "/" . $return_path . $rand);
+               $a->internalRedirect($return_path . $rand);
        }
 
        // the json doesn't really matter, it will either be 0 or 1