1 #include "ivvideolist.h"
6 #include "ivlistparser.h"
9 IVVideoList::IVVideoList(const QString &req, const QString &name, QObject *parent)
10 : VideoSource(parent), name(name), req(req) {}
12 void IVVideoList::loadVideos(int max, int startIndex) {
15 QUrl url(Invidious::instance().baseUrl() + req);
17 auto *reply = Invidious::cachedHttp().get(url);
18 connect(reply, &HttpReply::data, this, [this](auto data) {
19 QJsonDocument doc = QJsonDocument::fromJson(data);
20 const QJsonArray items = doc.array();
21 IVListParser parser(items);
22 const QVector<Video *> &videos = parser.getVideos();
23 qDebug() << "CAOCAO" << req << name << videos.size();
25 emit gotVideos(videos);
26 emit finished(videos.size());
28 connect(reply, &HttpReply::error, this, [this](auto message) {
29 Invidious::instance().initServers();
34 void IVVideoList::abort() {