Files
qtKodiAdmin/ckoditextureslibrary.cpp
T
2016-10-25 16:40:53 +02:00

74 lines
1.3 KiB
C++

#include "ckoditextureslibrary.h"
#include <QFile>
#include <QVariant>
#include <QStringList>
#include <QSqlQuery>
#include <QDebug>
#include <QTime>
cKodiTexturesLibrary::cKodiTexturesLibrary(const QString &szFileName) :
m_szFileName(szFileName),
m_bConnected(false),
m_iVersion(-1)
{
}
cKodiTexturesLibrary::~cKodiTexturesLibrary()
{
if(m_bConnected && m_db.isOpen())
m_db.close();
}
qint16 cKodiTexturesLibrary::init()
{
if(m_bConnected)
return(m_iVersion);
m_db = QSqlDatabase::addDatabase("QSQLITE", "TexturesLibrary");
m_db.setDatabaseName(m_szFileName);
if(!m_db.open())
return(-1);
QSqlQuery query(m_db);
if(!query.exec("SELECT idVersion FROM version;"))
{
m_db.close();
return(-1);
}
if(!query.first())
{
m_db.close();
return(-1);
}
m_iVersion = query.value("idVersion").toInt();
m_bConnected = true;
return(m_iVersion);
}
qint16 cKodiTexturesLibrary::version()
{
if(!m_bConnected)
return(-1);
return(m_iVersion);
}
bool cKodiTexturesLibrary::texture(const QString& szURL, qint32& id, QString& szCachedURL)
{
QSqlQuery query(m_db);
query.exec(QString("SELECT id, url, cachedurl FROM texture WHERE url='%1';").arg(szURL));
if(query.next())
{
id = query.value("id").toInt();
szCachedURL = query.value("cachedurl").toString();
return(true);
}
return(false);
}