asynchronous ws call for flagging article as read
[prss.git] / src / ttrss_ws.c
index 8ec1746..267b129 100644 (file)
@@ -199,6 +199,7 @@ int ws_open_session()
        if (session_id)
                free(session_id);
 
+       session_id = NULL;
        session_id = ws_login();
 
        if (session_id) {
@@ -348,18 +349,26 @@ struct feed **ws_update_feeds(struct feed **feeds)
        return feeds;
 }
 
-void ws_set_article_unread(int id, int unread)
+struct json_object *ws_request_new_set_article_unread(int id, int unread)
 {
-       struct json_object *rp, *rq;
-
-
-       log_debug("ws_set_article_unread(%d,%d)", id, unread);
+       struct json_object *rq;
 
        rq = ws_request_new("updateArticle");
        json_object_object_add(rq, "article_ids", json_object_new_int(id));
        json_object_object_add(rq, "field", json_object_new_int(2));
        json_object_object_add(rq, "mode", json_object_new_int(unread));
 
+       return rq;
+}
+
+void ws_set_article_unread(int id, int unread)
+{
+       struct json_object *rp, *rq;
+
+       log_debug("ws_set_article_unread(%d,%d)", id, unread);
+
+       rq = ws_request_new_set_article_unread(id, unread);
+
        rp = ws_execute(rq);
 
        json_object_put(rq);