diff --git a/oracle/sets.xml b/oracle/sets.xml
deleted file mode 100644
index 631000b10..000000000
--- 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 6c67024f4..0c33bc837 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 50ce9087e..1ffe11dc6 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 f45178f92..314a223f2 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();
};