- rp = ws_execute(rq);
-
- json_object_put(rq);
-
- str = NULL;
-
- if (rp) {
- item = json_object_array_get_idx(rp, 0);
-
- if (item) {
- content = json_object_object_get(item, "content");
- str = strdup(json_object_get_string(content));
- }
-
- json_object_put(rp);
- }
-
- return str;
-}
-
-int ws_update_headlines(struct feed *feed)
-{
- struct json_object *rp, *rq, *jheadline, *j;
- int i, n, err, hid;
- struct headline *h, **tmp;
- const char *title, *url;
-
- rq = ws_request_new("getHeadlines");
- ws_request_add_att_int(rq, "feed_id", feed->id);
-
- rp = ws_execute(rq);
-
- json_object_put(rq);
-
- if (rp) {
- n = json_object_array_length(rp);
- for (i = 0; i < n; i++) {
- jheadline = json_object_array_get_idx(rp, i);
-
- j = json_object_object_get(jheadline, "id");
- hid = json_object_get_int(j);
- h = feed_get_headline(feed, hid);
-
- if (!h) {
- j = json_object_object_get(jheadline, "title");
- title = json_object_get_string(j);
-
- j = json_object_object_get(jheadline, "link");
- url = json_object_get_string(j);
-
- h = headline_new(hid, url, title);
-
- tmp = headlines_add(feed->headlines, h);
- if (feed->headlines)
- free(feed->headlines);
- feed->headlines = tmp;
- }
-
- j = json_object_object_get(jheadline, "unread");
- h->unread = json_object_get_boolean(j);
- }
- err = 0;
- } else {
- err = 1;
- }
-
- json_object_put(rp);
- return !err;
-}
-
-const char *ttrss_get_headline_content(struct headline *h)
-{
- if (!h->content)
- h->content = ws_get_article_content(h->id);
-
- return h->content;