function setArticleLabel() { $article_ids = array_filter(explode(",", $this->dbh->escape_string($_REQUEST["article_ids"])), is_numeric); $label_id = (int) $this->dbh->escape_string($_REQUEST['label_id']); $assign = (bool) $this->dbh->escape_string($_REQUEST['assign']) == "true"; $label = $this->dbh->escape_string(label_find_caption(feed_to_label_id($label_id), $_SESSION["uid"])); $num_updated = 0; if ($label) { foreach ($article_ids as $id) { if ($assign) { label_add_article($id, $label, $_SESSION["uid"]); } else { label_remove_article($id, $label, $_SESSION["uid"]); } ++$num_updated; } } $this->wrap(self::STATUS_OK, array("status" => "OK", "updated" => $num_updated)); }
function labelops($assign) { $reply = array(); $ids = explode(",", db_escape_string($_REQUEST["ids"])); $label_id = db_escape_string($_REQUEST["lid"]); $label = db_escape_string(label_find_caption($this->link, $label_id, $_SESSION["uid"])); $reply["info-for-headlines"] = array(); if ($label) { foreach ($ids as $id) { if ($assign) { label_add_article($this->link, $id, $label, $_SESSION["uid"]); } else { label_remove_article($this->link, $id, $label, $_SESSION["uid"]); } $labels = get_article_labels($this->link, $id, $_SESSION["uid"]); array_push($reply["info-for-headlines"], array("id" => $id, "labels" => format_article_labels($labels, $id))); } } $reply["message"] = "UPDATE_COUNTERS"; print json_encode($reply); }