diff --git a/mythtv/bindings/perl/MythTV.pm b/mythtv/bindings/perl/MythTV.pm index f07de2df5fb..ebaecafe766 100644 --- a/mythtv/bindings/perl/MythTV.pm +++ b/mythtv/bindings/perl/MythTV.pm @@ -114,7 +114,7 @@ package MythTV; # schema version supported in the main code. We need to check that the schema # version in the database is as expected by the bindings, which are expected # to be kept in sync with the main code. - our $SCHEMA_VERSION = "1273"; + our $SCHEMA_VERSION = "1274"; # NUMPROGRAMLINES is defined in mythtv/libs/libmythtv/programinfo.h and is # the number of items in a ProgramInfo QStringList group used by diff --git a/mythtv/bindings/python/MythTV/static.py b/mythtv/bindings/python/MythTV/static.py index ff5fabf23a1..a0904315c04 100644 --- a/mythtv/bindings/python/MythTV/static.py +++ b/mythtv/bindings/python/MythTV/static.py @@ -5,7 +5,7 @@ """ OWN_VERSION = (0,25,-1,2) -SCHEMA_VERSION = 1273 +SCHEMA_VERSION = 1274 NVSCHEMA_VERSION = 1007 MUSICSCHEMA_VERSION = 1018 PROTO_VERSION = '65' diff --git a/mythtv/libs/libmyth/netutils.cpp b/mythtv/libs/libmyth/netutils.cpp index 129d4747a0e..95294cdedd6 100644 --- a/mythtv/libs/libmyth/netutils.cpp +++ b/mythtv/libs/libmyth/netutils.cpp @@ -258,10 +258,10 @@ bool insertGrabberInDB(const QString &name, const QString &thumbnail, MSqlQuery query(MSqlQuery::InitCon()); query.prepare("INSERT INTO internetcontent (name,thumbnail,type,author," - "description,commandline,version,updated,search,tree,podcast," + "description,commandline,version,search,tree,podcast," "host) " "VALUES( :NAME, :THUMBNAIL, :TYPE, :AUTHOR, :DESCRIPTION, :COMMAND, " - ":VERSION, :UPDATED, :SEARCH, :TREE, :PODCAST, :HOST);"); + ":VERSION, :SEARCH, :TREE, :PODCAST, :HOST);"); query.bindValue(":NAME", name); query.bindValue(":THUMBNAIL", thumbbase); query.bindValue(":TYPE", type); @@ -270,7 +270,6 @@ bool insertGrabberInDB(const QString &name, const QString &thumbnail, QFileInfo cmd(commandline); query.bindValue(":COMMAND", cmd.fileName()); query.bindValue(":VERSION", version); - query.bindValue(":UPDATED", QDateTime()); query.bindValue(":SEARCH", search); query.bindValue(":TREE", tree); query.bindValue(":PODCAST", podcast); diff --git a/mythtv/libs/libmyth/rssparse.cpp b/mythtv/libs/libmyth/rssparse.cpp index 1b273e9f675..108be7412f5 100644 --- a/mythtv/libs/libmyth/rssparse.cpp +++ b/mythtv/libs/libmyth/rssparse.cpp @@ -35,7 +35,10 @@ ResultItem::ResultItem(const QString& title, const QString& subtitle, m_thumbnail = thumbnail; m_mediaURL = mediaURL; m_author = author; - m_date = date; + if (!date.isNull()) + m_date = date; + else + m_date = QDateTime::fromString("0000-00-00T00:00:00", Qt::ISODate); m_time = time; m_rating = rating; m_filesize = filesize; @@ -55,6 +58,7 @@ ResultItem::ResultItem(const QString& title, const QString& subtitle, ResultItem::ResultItem() { + m_date = QDateTime::fromString("0000-00-00T00:00:00", Qt::ISODate); } ResultItem::~ResultItem() diff --git a/mythtv/libs/libmythtv/dbcheck.cpp b/mythtv/libs/libmythtv/dbcheck.cpp index e0d17c5bbf9..d960ad57573 100644 --- a/mythtv/libs/libmythtv/dbcheck.cpp +++ b/mythtv/libs/libmythtv/dbcheck.cpp @@ -21,7 +21,7 @@ using namespace std; mythtv/bindings/perl/MythTV.pm */ /// This is the DB schema version expected by the running MythTV instance. -const QString currentDatabaseVersion = "1273"; +const QString currentDatabaseVersion = "1274"; static bool UpdateDBVersionNumber(const QString &newnumber, QString &dbver); static bool performActualUpdate( @@ -5219,8 +5219,7 @@ NULL " description TEXT NOT NULL," " commandline TEXT NOT NULL," " version DOUBLE NOT NULL," -" updated TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP " -" ON UPDATE CURRENT_TIMESTAMP," +" updated DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00'," " search BOOL NOT NULL," " tree BOOL NOT NULL," " podcast BOOL NOT NULL," @@ -5240,8 +5239,7 @@ NULL " thumbnail TEXT NOT NULL," " mediaURL TEXT NOT NULL," " author VARCHAR(255) NOT NULL," -" date TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP " -" ON UPDATE CURRENT_TIMESTAMP," +" date DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00'," " time INT NOT NULL," " rating VARCHAR(255) NOT NULL," " filesize BIGINT NOT NULL," @@ -5648,6 +5646,19 @@ NULL return false; } + if (dbver == "1273") + { + const char *updates[] = { +"ALTER TABLE internetcontent MODIFY COLUMN updated " +" DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00';", +"ALTER TABLE internetcontentarticles MODIFY COLUMN `date` " +" DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00';", +NULL +}; + if (!performActualUpdate(updates, "1274", dbver)) + return false; + } + return true; }