From a018819a3727d7abca160f0f8a68a1ce2ad64fde Mon Sep 17 00:00:00 2001 From: Max-Wilhelm Bruker Date: Wed, 2 Sep 2009 20:59:25 +0200 Subject: [PATCH] oracle update --- oracle/sets.xml | 349 ---------------------------------- oracle/src/main.cpp | 2 +- oracle/src/oracleimporter.cpp | 10 +- oracle/src/oracleimporter.h | 3 +- 4 files changed, 8 insertions(+), 356 deletions(-) delete mode 100644 oracle/sets.xml diff --git a/oracle/sets.xml b/oracle/sets.xml deleted file mode 100644 index 631000b1..00000000 --- a/oracle/sets.xml +++ /dev/null @@ -1,349 +0,0 @@ - - - http://www.wizards.com/global/images/magic/general/%1.jpg - - 5E - Fifth Edition - http://www.crystalkeep.com/magic/rules/oracle/oracle-5th.txt - - - ST2K - Starter 2000 - http://www.crystalkeep.com/magic/rules/oracle/oracle-st2.txt - - - US - Urza's Saga - http://www.crystalkeep.com/magic/rules/oracle/oracle-us.txt - - - MR - Mirrodin - http://www.crystalkeep.com/magic/rules/oracle/oracle-mr.txt - - - NE - Nemesis - http://www.crystalkeep.com/magic/rules/oracle/oracle-ne.txt - - - VI - Visions - http://www.crystalkeep.com/magic/rules/oracle/oracle-vi.txt - - - FD - Fifth Dawn - http://www.crystalkeep.com/magic/rules/oracle/oracle-fd.txt - - - FE - Fallen Empires - http://www.crystalkeep.com/magic/rules/oracle/oracle-fe.txt - - - EX - Exodus - http://www.crystalkeep.com/magic/rules/oracle/oracle-ex.txt - - - 6E - Sixth Edition - http://www.crystalkeep.com/magic/rules/oracle/oracle-6th.txt - - - PLC - Planar Chaos - http://www.crystalkeep.com/magic/rules/oracle/oracle-pc.txt - - - 10E - Tenth Edition - http://www.crystalkeep.com/magic/rules/oracle/oracle-10.txt - - - CFX - Conflux - http://www.crystalkeep.com/magic/rules/oracle/oracle-cf.txt - - - P2 - Portal: Second Age - http://www.crystalkeep.com/magic/rules/oracle/oracle-pt2.txt - - - P3 - Portal: Three Kingdoms - http://www.crystalkeep.com/magic/rules/oracle/oracle-pt3.txt - - - OD - Odyssey - http://www.crystalkeep.com/magic/rules/oracle/oracle-od.txt - - - UNH - Unhinged - http://www.crystalkeep.com/magic/rules/oracle/oracle-uh.txt - - - BOK - Betrayers of Kamigawa - http://www.crystalkeep.com/magic/rules/oracle/oracle-bk.txt - - - LRW - Lorwyn - http://www.crystalkeep.com/magic/rules/oracle/oracle-lo.txt - - - WL - Weatherlight - http://www.crystalkeep.com/magic/rules/oracle/oracle-wl.txt - - - ON - Onslaught - http://www.crystalkeep.com/magic/rules/oracle/oracle-on.txt - - - 7E - Seventh Edition - http://www.crystalkeep.com/magic/rules/oracle/oracle-7th.txt - - - GP - Guildpact - http://www.crystalkeep.com/magic/rules/oracle/oracle-gp.txt - - - CHK - Champions of Kamigawa - http://www.crystalkeep.com/magic/rules/oracle/oracle-ck.txt - - - 8E - Eighth Edition - http://www.crystalkeep.com/magic/rules/oracle/oracle-8th.txt - - - HL - Homelands - http://www.crystalkeep.com/magic/rules/oracle/oracle-hl.txt - - - PR - Promo cards - promo.txt - - - PS - Planeshift - http://www.crystalkeep.com/magic/rules/oracle/oracle-ps.txt - - - PT - Portal - http://www.crystalkeep.com/magic/rules/oracle/oracle-pt.txt - - - IA - Ice Age - http://www.crystalkeep.com/magic/rules/oracle/oracle-ia.txt - - - SOK - Saviors of Kamigawa - http://www.crystalkeep.com/magic/rules/oracle/oracle-sk.txt - - - DIS - Dissension - http://www.crystalkeep.com/magic/rules/oracle/oracle-di.txt - - - PY - Prophecy - http://www.crystalkeep.com/magic/rules/oracle/oracle-py.txt - - - 9E - Ninth Edition - http://www.crystalkeep.com/magic/rules/oracle/oracle-9th.txt - - - B - Limited Edition - http://www.crystalkeep.com/magic/rules/oracle/oracle-lu.txt - - - IN - Invasion - http://www.crystalkeep.com/magic/rules/oracle/oracle-in.txt - - - AL - Alliances - http://www.crystalkeep.com/magic/rules/oracle/oracle-al.txt - - - AN - Arabian Nights - http://www.crystalkeep.com/magic/rules/oracle/oracle-an.txt - - - ARB - Alara Reborn - http://www.crystalkeep.com/magic/rules/oracle/oracle-ar.txt - - - AP - Apocalypse - http://www.crystalkeep.com/magic/rules/oracle/oracle-ap.txt - - - AQ - Antiquities - http://www.crystalkeep.com/magic/rules/oracle/oracle-aq.txt - - - SHM - Shadowmoor - http://www.crystalkeep.com/magic/rules/oracle/oracle-sm.txt - - - R - Revised Edition - http://www.crystalkeep.com/magic/rules/oracle/oracle-rv.txt - - - U - Unlimited Edition - http://www.crystalkeep.com/magic/rules/oracle/oracle-lu.txt - - - SC - Scourge - http://www.crystalkeep.com/magic/rules/oracle/oracle-sc.txt - - - SH - Stronghold - http://www.crystalkeep.com/magic/rules/oracle/oracle-sh.txt - - - JU - Judgment - http://www.crystalkeep.com/magic/rules/oracle/oracle-ju.txt - - - CH - Chronicles - http://www.crystalkeep.com/magic/rules/oracle/oracle-ch.txt - - - MOR - Morningtide - http://www.crystalkeep.com/magic/rules/oracle/oracle-mt.txt - - - ST - Starter - http://www.crystalkeep.com/magic/rules/oracle/oracle-st.txt - - - TE - Tempest - http://www.crystalkeep.com/magic/rules/oracle/oracle-te.txt - - - ALA - Shards of Alara - http://www.crystalkeep.com/magic/rules/oracle/oracle-sa.txt - - - LE - Legions - http://www.crystalkeep.com/magic/rules/oracle/oracle-le.txt - - - FUT - Future Sight - http://www.crystalkeep.com/magic/rules/oracle/oracle-fs.txt - - - CS - Coldsnap - http://www.crystalkeep.com/magic/rules/oracle/oracle-cs.txt - - - LG - Legends - http://www.crystalkeep.com/magic/rules/oracle/oracle-lg.txt - - - M10 - Magic 2010 - http://www.crystalkeep.com/magic/rules/oracle/oracle-m10.txt - - - RAV - Ravnica - http://www.crystalkeep.com/magic/rules/oracle/oracle-ra.txt - - - TO - Torment - http://www.crystalkeep.com/magic/rules/oracle/oracle-to.txt - - - EVE - Eventide - http://www.crystalkeep.com/magic/rules/oracle/oracle-et.txt - - - DK - The Dark - http://www.crystalkeep.com/magic/rules/oracle/oracle-dk.txt - - - 4E - Fourth Edition - http://www.crystalkeep.com/magic/rules/oracle/oracle-4th.txt - - - UD - Urza's Destiny - http://www.crystalkeep.com/magic/rules/oracle/oracle-ud.txt - - - TSP - Time Spiral - http://www.crystalkeep.com/magic/rules/oracle/oracle-ts.txt - - - UG - Unglued - http://www.crystalkeep.com/magic/rules/oracle/oracle-ug.txt - - - DS - Darksteel - http://www.crystalkeep.com/magic/rules/oracle/oracle-ds.txt - - - UL - Urza's Legacy - http://www.crystalkeep.com/magic/rules/oracle/oracle-ul.txt - - - MI - Mirage - http://www.crystalkeep.com/magic/rules/oracle/oracle-mi.txt - - - MM - Mercadian Masques - http://www.crystalkeep.com/magic/rules/oracle/oracle-mm.txt - - diff --git a/oracle/src/main.cpp b/oracle/src/main.cpp index 6c67024f..0c33bc83 100644 --- a/oracle/src/main.cpp +++ b/oracle/src/main.cpp @@ -5,7 +5,7 @@ int main(int argc, char *argv[]) { QApplication app(argc, argv); - OracleImporter importer; + OracleImporter importer("../oracle"); importer.downloadNextFile(); return app.exec(); diff --git a/oracle/src/oracleimporter.cpp b/oracle/src/oracleimporter.cpp index 50ce9087..1ffe11dc 100644 --- a/oracle/src/oracleimporter.cpp +++ b/oracle/src/oracleimporter.cpp @@ -3,10 +3,10 @@ #include #include -OracleImporter::OracleImporter() - : setIndex(-1) +OracleImporter::OracleImporter(const QString &_dataDir) + : dataDir(_dataDir), setIndex(-1) { - QFile setsFile("sets.xml"); + QFile setsFile(dataDir + "/sets.xml"); setsFile.open(QIODevice::ReadOnly | QIODevice::Text); QXmlStreamReader xml(&setsFile); QString edition; @@ -159,7 +159,7 @@ void OracleImporter::downloadNextFile() buffer->open(QIODevice::ReadWrite | QIODevice::Text); reqId = http->get(QUrl::toPercentEncoding(url.path(), "!$&'()*+,;=:@/"), buffer); } else { - QFile file(urlString); + QFile file(dataDir + "/" + urlString); file.open(QIODevice::ReadOnly | QIODevice::Text); buffer->close(); @@ -188,7 +188,7 @@ void OracleImporter::httpRequestFinished(int requestId, bool error) if (setIndex == setsToDownload.size()) { QMessageBox::information(0, tr("Import finished"), tr("Total: %1 cards imported").arg(cardHash.size())); setIndex = -1; - saveToFile("cards.xml"); + saveToFile(dataDir + "/cards.xml"); qApp->quit(); } else downloadNextFile(); diff --git a/oracle/src/oracleimporter.h b/oracle/src/oracleimporter.h index f45178f9..314a223f 100644 --- a/oracle/src/oracleimporter.h +++ b/oracle/src/oracleimporter.h @@ -23,6 +23,7 @@ class OracleImporter : public CardDatabase { private: QList setsToDownload; QString pictureUrl; + QString dataDir; int setIndex; int reqId; QBuffer *buffer; @@ -34,7 +35,7 @@ private slots: void httpRequestFinished(int requestId, bool error); void readResponseHeader(const QHttpResponseHeader &responseHeader); public: - OracleImporter(); + OracleImporter(const QString &_dataDir); void importOracleFile(CardSet *set); void downloadNextFile(); };