/*
-----BEGIN QCMOD-----
name: geoip-database
arg: with-geoip-database-embedded, Geoip Database will be embedded in qBittorrent executable (please follow instructions in src/geoip/README)
-----END QCMOD-----
*/
// see  Conf::findPkgConfig
class qc_geoip_database : public ConfObj
{
public:
	qc_geoip_database(Conf *c) : ConfObj(c) {}
	QString name() const { return "GeoIP Database (optional)"; }
	QString shortname() const { return "GeoIP Database"; }
        QString checkString() const {
                if(!conf->getenv("QC_DISABLE_geoip_database").isEmpty() || !conf->getenv("QC_DISABLE_GUI").isEmpty())
                        return "";
                return ConfObj::checkString();
        }
	bool exec() {
	if(!conf->getenv("QC_DISABLE_geoip_database").isEmpty() || !conf->getenv("QC_DISABLE_GUI").isEmpty()) {
		return false;
	}
#ifdef Q_WS_X11
		if(!conf->getenv("QC_WITH_GEOIP_DATABASE_EMBEDDED").isEmpty()) {
#endif
			conf->addDefine("WITH_GEOIP_EMBEDDED");
                        printf(" embedded and");
			return true;
#ifdef Q_WS_X11
		}
                if(QFile::exists("/usr/share/GeoIP/GeoIP.dat") || QFile::exists("/usr/local/share/GeoIP/GeoIP.dat") || QFile::exists("/var/lib/GeoIP/GeoIP.dat"))
			return true;
                printf("\nWarning: GeoIP database was not found at /usr/share/GeoIP/GeoIP.dat or /var/lib/GeoIP/GeoIP.dat\nCountry resolution will be slow.");
		return false;
#endif
	}
};
