Settings* Settings::instance()
{
- if(!instance_)
- {
- instance_ = new Settings;
- }
+ if(!instance_)
+ {
+ instance_ = new Settings;
+ }
- return instance_;
+ return instance_;
}
bool Settings::set(QString const& name, QString const& value)
{
- bool connected = DB::connected();
-
- if(!connected)
- {
- if(!DB::connect())
- {
- return false;
- }
- }
-
- QSqlQuery deleteQuery;
- deleteQuery.prepare("DELETE FROM settings WHERE name = :name");
- deleteQuery.bindValue(":name", QVariant(name));
- deleteQuery.exec();
-
- QSqlQuery query;
- query.prepare("INSERT INTO settings(name, value) VALUES(:name, :value)");
- query.bindValue(":name", QVariant(name));
- query.bindValue(":value", QVariant(value));
-
- bool returnValue = query.exec();
-
- if(!connected)
- {
- DB::disconnect();
- }
-
- return returnValue;
+ bool connected = DB::connected();
+
+ if(!connected)
+ {
+ if(!DB::connect())
+ {
+ return false;
+ }
+ }
+
+ QSqlQuery deleteQuery;
+ deleteQuery.prepare("DELETE FROM settings WHERE name = :name");
+ deleteQuery.bindValue(":name", QVariant(name));
+ deleteQuery.exec();
+
+ QSqlQuery query;
+ query.prepare("INSERT INTO settings(name, value) VALUES(:name, :value)");
+ query.bindValue(":name", QVariant(name));
+ query.bindValue(":value", QVariant(value));
+
+ bool returnValue = query.exec();
+
+ if(!connected)
+ {
+ DB::disconnect();
+ }
+
+ return returnValue;
}
QString Settings::get(QString const& name)
{
- QString result = "";
+ QString result = "";
- bool connected = DB::connected();
+ bool connected = DB::connected();
- if(!connected)
- {
- if(!DB::connect())
- {
- return result;
- }
- }
+ if(!connected)
+ {
+ if(!DB::connect())
+ {
+ return result;
+ }
+ }
- QSqlQuery query;
+ QSqlQuery query;
- query.prepare("SELECT value FROM settings WHERE name = :name");
- query.bindValue(":name", name);
+ query.prepare("SELECT value FROM settings WHERE name = :name");
+ query.bindValue(":name", name);
- if(query.exec() && query.next())
- {
- result = query.value(0).toString();
- }
- else
- {
- result = getDefaultValue(name);
- }
+ if(query.exec() && query.next())
+ {
+ result = query.value(0).toString();
+ }
+ else
+ {
+ result = getDefaultValue(name);
+ }
- if(!connected)
- {
- DB::disconnect();
- }
+ if(!connected)
+ {
+ DB::disconnect();
+ }
- return result;
+ return result;
}
QString Settings::getDefaultValue(QString const& name)
{
- static bool defaultValuesLoaded = false;
- static QMap <QString, QString> defaultValues;
+ static bool defaultValuesLoaded = false;
+ static QMap <QString, QString> defaultValues;
- if(!defaultValuesLoaded)
- {
- defaultValues["autostart"] = "1";
- defaultValues["eniro_site"] = tr("fi");
- defaultValues["cache_size"] = "200";
- defaultValuesLoaded = true;
- }
+ if(!defaultValuesLoaded)
+ {
+ defaultValues["autostart"] = "1";
+ defaultValues["eniro_site"] = tr("fi");
+ defaultValues["cache_size"] = "200";
+ defaultValuesLoaded = true;
+ }
- QMap<QString, QString>::const_iterator it = defaultValues.find(name);
+ QMap<QString, QString>::const_iterator it = defaultValues.find(name);
- if(it != defaultValues.end())
- {
- return it.value();
- }
+ if(it != defaultValues.end())
+ {
+ return it.value();
+ }
- return "";
+ return "";
}
bool Settings::reset()
{
- bool connected = DB::connected();
+ bool connected = DB::connected();
- if(!connected)
- {
- if(!DB::connect())
- {
- return false;
- }
- }
+ if(!connected)
+ {
+ if(!DB::connect())
+ {
+ return false;
+ }
+ }
- QSqlQuery query;
+ QSqlQuery query;
- bool ret = query.exec("DELETE FROM settings");
+ bool ret = query.exec("DELETE FROM settings");
- if(!connected)
- {
- DB::disconnect();
- }
+ if(!connected)
+ {
+ DB::disconnect();
+ }
- return ret;
+ return ret;
}
Settings::Settings()