diff --git a/importers/rivendell_filter.cpp b/importers/rivendell_filter.cpp index fdef11de..d1ea9b58 100644 --- a/importers/rivendell_filter.cpp +++ b/importers/rivendell_filter.cpp @@ -274,7 +274,7 @@ MainObject::MainObject(QObject *parent) TITLE=\"%s\",\ ARTIST=\"%s\",\ ALBUM=\"%s\",\ - YEAR=\"%s\",\ + YEAR=%s,\ ISRC=\"%s\",\ LABEL=\"%s\",\ CLIENT=\"%s\",\ @@ -347,7 +347,7 @@ MainObject::MainObject(QObject *parent) start_datetime="null"; } else { - start_datetime=QString().sprintf("\"%s\"", + start_datetime=QString().sprintf("%s", (const char *)RDCheckDateTime(q1->value(7). toDateTime(),"yyyy-MM-dd hh:mm:ss"));//Could be invalid (0000-00-00) } @@ -355,7 +355,7 @@ MainObject::MainObject(QObject *parent) end_datetime="null"; } else { - end_datetime=QString().sprintf("\"%s\"", + end_datetime=QString().sprintf("%s", (const char *)RDCheckDateTime(q1->value(8). toDateTime(),"yyyy-MM-dd hh:mm:ss"));//Could be invalid (0000-00-00) } @@ -363,7 +363,7 @@ MainObject::MainObject(QObject *parent) start_daypart="null"; } else { - start_daypart=QString().sprintf("\"%s\"", + start_daypart=QString().sprintf("%s", (const char *)RDCheckDateTime(q1->value(16). toTime(),"hh:mm:ss"));//Invalid possible? } @@ -371,7 +371,7 @@ MainObject::MainObject(QObject *parent) end_daypart="null"; } else { - end_daypart=QString().sprintf("\"%s\"", + end_daypart=QString().sprintf("%s", (const char *)RDCheckDateTime(q1->value(17). toTime(),"hh:mm:ss"));//Invalid possible? } diff --git a/lib/rdcart.cpp b/lib/rdcart.cpp index b448cda5..28181c68 100644 --- a/lib/rdcart.cpp +++ b/lib/rdcart.cpp @@ -1206,14 +1206,14 @@ void RDCart::updateLength(bool enforce_length,unsigned length) sql+="START_DATETIME=NULL,"; } else { - sql+=QString().sprintf("START_DATETIME=\"%s\",", + sql+=QString().sprintf("START_DATETIME=%s,", (const char *)RDCheckDateTime(start_datetime,"yyyy-MM-dd hh:mm:ss")); } if(end_datetime.isNull()||(!dates_valid)) { sql+="END_DATETIME=NULL,"; } else { - sql+=QString().sprintf("END_DATETIME=\"%s\",", + sql+=QString().sprintf("END_DATETIME=%s,", (const char *)RDCheckDateTime(end_datetime,"yyyy-MM-dd hh:mm:ss")); } sql+=QString().sprintf("VALIDITY=%u where NUMBER=%u", @@ -1738,7 +1738,7 @@ void RDCart::SetRow(const QString ¶m,const QDateTime &value) const RDSqlQuery *q; QString sql; - sql=QString().sprintf("UPDATE CART SET %s=\"%s\" WHERE NUMBER=%u", + sql=QString().sprintf("UPDATE CART SET %s=%s WHERE NUMBER=%u", (const char *)param, (const char *)RDCheckDateTime(value,"yyyy-MM-dd hh:mm:ss"), cart_number); @@ -1752,7 +1752,7 @@ void RDCart::SetRow(const QString ¶m,const QDate &value) const RDSqlQuery *q; QString sql; - sql=QString().sprintf("UPDATE CART SET %s=\"%s\" WHERE NUMBER=%u", + sql=QString().sprintf("UPDATE CART SET %s=%s WHERE NUMBER=%u", (const char *)param, (const char *)RDCheckDateTime(value,"yyyy-MM-dd"), cart_number); diff --git a/lib/rdcartslot.cpp b/lib/rdcartslot.cpp index eaa43549..50073771 100644 --- a/lib/rdcartslot.cpp +++ b/lib/rdcartslot.cpp @@ -670,6 +670,8 @@ void RDCartSlot::LogPlayout(RDPlayDeck::State state) datetime.setDate(datetime.date().addDays(-1)); } if(!slot_svcname.isEmpty()) { + QDateTime eventDateTime=QDateTime::QDateTime(datetime::date(), + slot_logline->startTime(RDLogLine::Actual)); QString svctablename=slot_svcname; svctablename.replace(" ","_"); sql=QString("insert into `")+svctablename+"_SRT` set "+ @@ -687,19 +689,18 @@ void RDCartSlot::LogPlayout(RDPlayDeck::State state) slot_logline->usageCode(), slot_logline->startSource())+ "STATION_NAME=\""+RDEscapeString(slot_station->name())+"\","+ - "EVENT_DATETIME=\""+datetime.toString("yyyy-MM-dd")+ - " "+RDCheckDateTime( - slot_logline->startTime(RDLogLine::Actual),"hh:mm:ss")+"\","+ - "EXT_START_TIME=\""+RDCheckDateTime( - slot_logline->extStartTime(),"hh:mm:ss")+"\","+ + "EVENT_DATETIME="+RDCheckDateTime(eventDateTime,"yyyy-MM-dd hh:mm:ss")+ + ","+ + "EXT_START_TIME="+RDCheckDateTime( + slot_logline->extStartTime(),"hh:mm:ss")+","+ "EXT_DATA=\""+RDEscapeString(slot_logline->extData())+"\","+ "EXT_EVENT_ID=\""+RDEscapeString(slot_logline->extEventId())+"\","+ "EXT_ANNC_TYPE=\""+RDEscapeString(slot_logline->extAnncType())+"\","+ "EXT_CART_NAME=\""+RDEscapeString(slot_logline->extCartName())+"\","+ "TITLE=\""+RDEscapeString(slot_logline->title())+"\","+ "ARTIST=\""+RDEscapeString(slot_logline->artist())+"\","+ - "SCHEDULED_TIME=\""+RDCheckDateTime( - slot_logline->startTime(RDLogLine::Logged),"hh:mm:ss")+"\","+ + "SCHEDULED_TIME="+RDCheckDateTime( + slot_logline->startTime(RDLogLine::Logged),"hh:mm:ss")+","+ "ISRC=\""+RDEscapeString(slot_logline->isrc())+"\","+ "PUBLISHER=\""+RDEscapeString(slot_logline->publisher())+"\","+ "COMPOSER=\""+RDEscapeString(slot_logline->composer())+"\","+ diff --git a/lib/rdcut.cpp b/lib/rdcut.cpp index 2bfacc8f..f0572cfb 100644 --- a/lib/rdcut.cpp +++ b/lib/rdcut.cpp @@ -1060,8 +1060,8 @@ void RDCut::setMetadata(RDWaveData *data) const } if(data->daypartStartTime().isValid()&&data->daypartEndTime().isValid()&& (data->daypartStartTime()daypartEndTime())) { - sql+="START_DAYPART=\""+RDCheckDateTime(data->daypartStartTime(),"hh:mm:ss")+"\","+ - "END_DAYPART=\""+RDCheckDateTime(data->daypartEndTime(),"hh:mm:ss")+"\","; + sql+="START_DAYPART="+RDCheckDateTime(data->daypartStartTime(),"hh:mm:ss")+","+ + "END_DAYPART="+RDCheckDateTime(data->daypartEndTime(),"hh:mm:ss")+","; } if((data->hookStartPos()>=data->startPos())&& (data->hookStartPos()<=data->endPos())&& @@ -1079,26 +1079,36 @@ void RDCut::setMetadata(RDWaveData *data) const (data->fadeDownPos()<=data->endPos())) { sql+=QString().sprintf("FADEDOWN_POINT=%d,",data->fadeDownPos()); } - if((data->startDate()>QDate(1900,1,1))&&(data->endDate().year()<8000)) { - if(data->startTime().isValid()) { - sql+=QString().sprintf("START_DATETIME=\"%s %s\",", - (const char *)RDCheckDateTime(data->startDate(),"yyyy-MM-dd"), - (const char *)RDCheckDateTime(data->startTime(),"hh:mm:ss")); - } - else { - sql+=QString().sprintf("START_DATETIME=\"%s 00:00:00\",", - (const char *)RDCheckDateTime(data->startDate(),"yyyy-MM-dd")); - } + if(data->startDate().isValid() && + (data->startDate()>QDate(1900,1,1))&&(data->endDate().year()<8000)) { + + /* Reworked, + * if date not valid, do nothing + * if time valid use date + time + * else use date + 00:00:00 + */ + QDateTime startDateTime(data->startDate()); + + if(data->startTime().isValid()) + startDateTime.setTime(data->startTime()); + else + startDateTime.setTime(QTime(0,0,0)); + + sql+=QString().sprintf("START_DATETIME=%s,", + (const char *)RDCheckDateTime(startDateTime)); + if(data->endDate().isValid()&&(data->endDate().year()<8000)) { - if(data->endTime().isValid()) { - sql+=QString().sprintf("END_DATETIME=\"%s %s\",", - (const char *)RDCheckDateTime(data->endDate(),"yyyy-MM-dd"), - (const char *)RDCheckDateTime(data->endTime(),"hh:mm:ss")); - } - else { - sql+=QString().sprintf("END_DATETIME=\"%s 23:59:59\",", - (const char *)RDCheckDateTime(data->endDate(),"yyyy-MM-dd")); - } + + // Reworked as START_DATETIME + QDateTime endDateTime(data->endDate()); + + if(data->endTime().isValid()) + endDateTime.setTime(data->endTime()); + else + endDateTime.setTime(QTime(23,59,59)); + + sql+=QString().sprintf("END_DATETIME=%s,", + (const char *)RDCheckDateTime(endDateTime,"yyyy-MM-dd hh:mm:ss")); } } if(sql.right(1)==",") { @@ -1597,7 +1607,7 @@ void RDCut::SetRow(const QString ¶m,const QDateTime &value) const RDSqlQuery *q; QString sql; - sql=QString().sprintf("UPDATE CUTS SET %s=\"%s\" WHERE CUT_NAME=\"%s\"", + sql=QString().sprintf("UPDATE CUTS SET %s=%s WHERE CUT_NAME=\"%s\"", (const char *)param, (const char *)RDCheckDateTime(value,"yyyy-MM-dd hh:mm:ss"), (const char *)cut_name); @@ -1611,7 +1621,7 @@ void RDCut::SetRow(const QString ¶m,const QDate &value) const RDSqlQuery *q; QString sql; - sql=QString().sprintf("UPDATE CUTS SET %s=\"%s\" WHERE CUT_NAME=\"%s\"", + sql=QString().sprintf("UPDATE CUTS SET %s=%s WHERE CUT_NAME=\"%s\"", (const char *)param, (const char *)RDCheckDateTime(value,"yyyy-MM-dd"), (const char *)cut_name); @@ -1624,7 +1634,7 @@ void RDCut::SetRow(const QString ¶m,const QTime &value) const { RDSqlQuery *q; QString sql; - sql=QString().sprintf("UPDATE CUTS SET %s=\"%s\" WHERE CUT_NAME=\"%s\"", + sql=QString().sprintf("UPDATE CUTS SET %s=%s WHERE CUT_NAME=\"%s\"", (const char *)param, (const char *)RDCheckDateTime(value,"hh:mm:ss"), (const char *)cut_name); diff --git a/lib/rdescape_string.cpp b/lib/rdescape_string.cpp index 12af1d39..c2a1c6f7 100644 --- a/lib/rdescape_string.cpp +++ b/lib/rdescape_string.cpp @@ -34,7 +34,7 @@ QString RDCheckDateTime(QTime const &time, QString const &format) QString checkedValue = "NULL"; if(time.isValid()) - checkedValue = time.toString(format); + checkedValue = "\"" + time.toString(format) + "\""; return checkedValue; @@ -51,7 +51,7 @@ QString RDCheckDateTime(QDateTime const &datetime, QString const &format) QString checkedValue = "NULL"; if(datetime.isValid()) - checkedValue = datetime.toString(format); + checkedValue = "\"" + datetime.toString(format) + "\""; return checkedValue; @@ -68,7 +68,7 @@ QString RDCheckDateTime(QDate const &date, QString const &format) QString checkedValue = "NULL"; if(date.isValid()) - checkedValue = date.toString(format); + checkedValue = "\"" + date.toString(format) + "\""; return checkedValue; diff --git a/lib/rdevent_line.cpp b/lib/rdevent_line.cpp index 190cdc7e..6fd227ca 100644 --- a/lib/rdevent_line.cpp +++ b/lib/rdevent_line.cpp @@ -814,7 +814,7 @@ bool RDEventLine::generateLog(QString logname,const QString &svcname, sql=QString().sprintf("insert into `%s_LOG` set ID=%d,COUNT=%d,TYPE=%d,\ SOURCE=%d,START_TIME=%d,GRACE_TIME=%d, \ CART_NUMBER=%u,TIME_TYPE=%d,POST_POINT=\"%s\", \ - TRANS_TYPE=%d,EXT_START_TIME=\"%s\",\ + TRANS_TYPE=%d,EXT_START_TIME=%s,\ EVENT_LENGTH=%d", (const char *)logname,count,count, RDLogLine::Cart,source, diff --git a/lib/rdfeed.cpp b/lib/rdfeed.cpp index 30d9ceca..d24a19d2 100644 --- a/lib/rdfeed.cpp +++ b/lib/rdfeed.cpp @@ -320,7 +320,7 @@ QDateTime RDFeed::lastBuildDateTime() const void RDFeed::setLastBuildDateTime(const QDateTime &datetime) const { - SetRow("LAST_BUILD_DATETIME",RDCheckDateTime(datetime,"yyyy-MM-dd hh:mm:ss")); + SetRow("LAST_BUILD_DATETIME",datetime,"yyyy-MM-dd hh:mm:ss"); } @@ -333,7 +333,7 @@ QDateTime RDFeed::originDateTime() const void RDFeed::setOriginDateTime(const QDateTime &datetime) const { - SetRow("ORIGIN_DATETIME",RDCheckDateTime(datetime,"yyyy-MM-dd hh:mm:ss")); + SetRow("ORIGIN_DATETIME",datetime,"yyyy-MM-dd hh:mm:ss"); } @@ -896,3 +896,17 @@ void RDFeed::SetRow(const QString ¶m,const QString &value) const q=new RDSqlQuery(sql); delete q; } + +void RDFeed::SetRow(const QString ¶m,const QDateTime &value, + const QString format) const +{ + RDSqlQuery *q; + QString sql; + + sql=QString().sprintf("UPDATE FEEDS SET %s=%s WHERE KEY_NAME=\"%s\"", + (const char *)param, + (const char *)RDCheckDateTime(value, format), + (const char *)feed_keyname); + q=new RDSqlQuery(sql); + delete q; +} \ No newline at end of file diff --git a/lib/rdlog.cpp b/lib/rdlog.cpp index e7617ea2..931d5955 100644 --- a/lib/rdlog.cpp +++ b/lib/rdlog.cpp @@ -661,7 +661,7 @@ void RDLog::SetRow(const QString ¶m,const QDate &value) const RDSqlQuery *q; QString sql; - sql=QString().sprintf("UPDATE LOGS SET %s=\"%s\" WHERE NAME=\"%s\"", + sql=QString().sprintf("UPDATE LOGS SET %s=%s WHERE NAME=\"%s\"", (const char *)param, (const char *)RDCheckDateTime(value,"yyyy/MM/dd"), (const char *)RDEscapeString(log_name)); @@ -675,7 +675,7 @@ void RDLog::SetRow(const QString ¶m,const QDateTime &value) const RDSqlQuery *q; QString sql; - sql=QString().sprintf("UPDATE LOGS SET %s=\"%s\" WHERE NAME=\"%s\"", + sql=QString().sprintf("UPDATE LOGS SET %s=%s WHERE NAME=\"%s\"", (const char *)param, (const char *)RDCheckDateTime(value,"yyyy-MM-dd hh:mm:ss"), (const char *)RDEscapeString(log_name)); diff --git a/lib/rdlog_event.cpp b/lib/rdlog_event.cpp index ea7ecd25..35e231bc 100644 --- a/lib/rdlog_event.cpp +++ b/lib/rdlog_event.cpp @@ -1186,7 +1186,7 @@ void RDLogEvent::InsertLines(QString values) { void RDLogEvent::InsertLineValues(QString *query, int line) { // one line to save query space - QString sql=QString().sprintf("(%d,%d,%u,%d,%d,%d,%d,%d,%d,%d,%d,\"%s\",\"%s\",%d,%d,\"%s\",%d,\"%s\",\"%s\",\"%s\",\"%s\",%d,%d,%d,%d,%d,\"%s\",%d,%d,%d,\"%s\",\"%s\",\"%s\",%d,%d,%d,%d,%d)", + QString sql=QString().sprintf("(%d,%d,%u,%d,%d,%d,%d,%d,%d,%d,%d,\"%s\",\"%s\",%d,%d,%s,%d,\"%s\",\"%s\",\"%s\",\"%s\",%d,%d,%d,%d,%d,\"%s\",%d,%d,%d,\"%s\",\"%s\",%s,%d,%d,%d,%d,%d)", log_line[line]->id(), line, log_line[line]->cartNumber(), diff --git a/lib/rdpodcast.cpp b/lib/rdpodcast.cpp index 28e56155..f0766f30 100644 --- a/lib/rdpodcast.cpp +++ b/lib/rdpodcast.cpp @@ -209,7 +209,7 @@ QDateTime RDPodcast::originDateTime() const void RDPodcast::setOriginDateTime(const QDateTime &datetime) const { - SetRow("ORIGIN_DATETIME",RDCheckDateTime(datetime,"yyyy-MM-dd hh:mm:ss")); + SetRow("ORIGIN_DATETIME",datetime,"yyyy-MM-dd hh:mm:ss"); } @@ -222,7 +222,7 @@ QDateTime RDPodcast::effectiveDateTime() const void RDPodcast::setEffectiveDateTime(const QDateTime &datetime) const { - SetRow("EFFECTIVE_DATETIME",RDCheckDateTime(datetime,"yyyy-MM-dd hh:mm:ss")); + SetRow("EFFECTIVE_DATETIME",datetime,"yyyy-MM-dd hh:mm:ss"); } @@ -398,3 +398,18 @@ void RDPodcast::SetRow(const QString ¶m,const QString &value) const q=new RDSqlQuery(sql); delete q; } + + +void RDPodcast::SetRow(const QString ¶m,const QDateTime &value, + const QString &format) const +{ + RDSqlQuery *q; + QString sql; + + sql=QString().sprintf("UPDATE PODCASTS SET %s=%s WHERE ID=%u", + (const char *)param, + (const char *)RDCheckDateTime(value, format), + podcast_id); + q=new RDSqlQuery(sql); + delete q; +} \ No newline at end of file diff --git a/lib/rdrecording.cpp b/lib/rdrecording.cpp index 72bbbb73..3b95ec09 100644 --- a/lib/rdrecording.cpp +++ b/lib/rdrecording.cpp @@ -945,7 +945,7 @@ void RDRecording::SetRow(const QString ¶m,const QTime &value) const RDSqlQuery *q; QString sql; - sql=QString().sprintf("update RECORDINGS set %s=\"%s\" where ID=%d", + sql=QString().sprintf("update RECORDINGS set %s=%s where ID=%d", (const char *)param, (const char *)RDCheckDateTime(value,"hh:mm:ss"),rec_id); q=new RDSqlQuery(sql); diff --git a/lib/rdreport.cpp b/lib/rdreport.cpp index 24db452b..71ee8fee 100644 --- a/lib/rdreport.cpp +++ b/lib/rdreport.cpp @@ -557,8 +557,8 @@ bool RDReport::generateReport(const QDate &startdate,const QDate &enddate, q1->value(1).toUInt(), q1->value(2).toInt())+ "STATION_NAME=\""+RDEscapeString(q1->value(3).toString())+"\","+ - "EVENT_DATETIME=\""+RDCheckDateTime(q1->value(4).toDateTime(), - "yyyy-MM-dd hh:mm:ss")+"\","+ + "EVENT_DATETIME="+RDCheckDateTime(q1->value(4).toDateTime(), + "yyyy-MM-dd hh:mm:ss")+","+ QString().sprintf("EVENT_TYPE=%d,",q1->value(5).toInt())+ "EXT_START_TIME=\""+RDEscapeString(q1->value(6).toString())+"\","+ QString().sprintf("EXT_LENGTH=%d,",q1->value(7).toInt())+ @@ -573,8 +573,8 @@ bool RDReport::generateReport(const QDate &startdate,const QDate &enddate, "LOG_NAME=\""+RDEscapeString(q1->value(15).toString())+"\","+ "TITLE=\""+RDEscapeString(q1->value(16).toString())+"\","+ "ARTIST=\""+RDEscapeString(q1->value(17).toString())+"\","+ - "SCHEDULED_TIME=\""+ - RDCheckDateTime(q1->value(18).toDate(),"yyyy-MM-dd hh:mm:ss")+"\","+ + "SCHEDULED_TIME="+ + RDCheckDateTime(q1->value(18).toDate(),"yyyy-MM-dd hh:mm:ss")+","+ QString().sprintf("START_SOURCE=%d,",q1->value(19).toInt())+ "PUBLISHER=\""+RDEscapeString(q1->value(20).toString())+"\","+ "COMPOSER=\""+RDEscapeString(q1->value(21).toString())+"\","+ @@ -923,7 +923,7 @@ void RDReport::SetRow(const QString ¶m,const QTime &value) const RDSqlQuery *q; QString sql; - sql=QString().sprintf("UPDATE REPORTS SET %s=\"%s\" WHERE NAME=\"%s\"", + sql=QString().sprintf("UPDATE REPORTS SET %s=%s WHERE NAME=\"%s\"", (const char *)param, (const char *)RDCheckDateTime(value, "hh:mm:ss"), (const char *)report_name); diff --git a/lib/rdsound_panel.cpp b/lib/rdsound_panel.cpp index bdabe5c9..22798402 100644 --- a/lib/rdsound_panel.cpp +++ b/lib/rdsound_panel.cpp @@ -1485,13 +1485,19 @@ void RDSoundPanel::LogTraffic(RDPanelButton *button) "CUTS.CUT_NAME=\""+RDEscapeString(button->cutName())+"\""; q=new RDSqlQuery(sql); if(q->first()) { + + QString eventDateTimeSQL = "NULL"; + + if(dateTime.isValid() && button->startTime().isValid()) + eventDateTimeSQL = RDCheckDateTime(QDateTime(dateTime.date(), + button->startTime()), "yyyy-MM-dd hh:mm:ss"); + sql=QString("insert into `")+panel_svcname+"_SRT` set "+ QString().sprintf("LENGTH=%d,",button->startTime(). msecsTo(datetime.time()))+ QString().sprintf("CART_NUMBER=%u,",button->cart())+ "STATION_NAME=\""+RDEscapeString(panel_station->name().utf8())+"\","+ - "EVENT_DATETIME=\""+datetime.toString("yyyy-MM-dd")+" "+ - RDCheckDateTime(button->startTime(),"hh:mm:ss")+"\","+ + "EVENT_DATETIME="+eventDateTimeSQL+","+ QString().sprintf("EVENT_TYPE=%d,",RDAirPlayConf::TrafficStop)+ QString().sprintf("EVENT_SOURCE=%d,",RDLogLine::SoundPanel)+ QString().sprintf("PLAY_SOURCE=%d,",RDLogLine::SoundPanel)+ diff --git a/lib/rdsvc.cpp b/lib/rdsvc.cpp index 8157fc06..c253d671 100644 --- a/lib/rdsvc.cpp +++ b/lib/rdsvc.cpp @@ -788,7 +788,7 @@ bool RDSvc::generateLog(const QDate &date,const QString &logname, SERVICE=\"%s\",DESCRIPTION=\"%s\",\ ORIGIN_USER=\"%s\",ORIGIN_DATETIME=now(),\ LINK_DATETIME=now(),MODIFIED_DATETIME=now(),\ - PURGE_DATE=\"%s\"", + PURGE_DATE=%s", (const char *)RDEscapeString(logname), (const char *)RDEscapeString(svc_name), (const char *)RDEscapeString(RDDateDecode(descriptionTemplate(),date)), diff --git a/rdairplay/log_traffic.cpp b/rdairplay/log_traffic.cpp index 62cd812e..2e42755e 100644 --- a/rdairplay/log_traffic.cpp +++ b/rdairplay/log_traffic.cpp @@ -44,14 +44,20 @@ void LogTraffic(const QString &svcname,const QString &logname, if((logline==NULL)||(svcname.isEmpty())) { return; } + + QString eventDateTimeSQL = "NULL"; + + if(datetime.isValid() && logline->startTime(RDLogLine::Actual).isValid()) + eventDateTimeSQL = RDCheckDateTime(QDateTime(datetime.date(), + logline->startTime(RDLogLine::Actual)), "yyyy-MM-dd hh:mm:ss"); + sql=QString("insert into `")+RDSvc::svcTableName(svcname)+"` set "+ QString().sprintf("LENGTH=%d,",length)+ "LOG_NAME=\""+RDEscapeString(logname.utf8())+"\","+ QString().sprintf("LOG_ID=%d,",logline->id())+ QString().sprintf("CART_NUMBER=%u,",logline->cartNumber())+ "STATION_NAME=\""+RDEscapeString(rdstation_conf->name().utf8())+"\","+ - "EVENT_DATETIME=\""+datetime.toString("yyyy-MM-dd")+" "+ - RDCheckDateTime(logline->startTime(RDLogLine::Actual),"hh:mm:ss")+"\","+ + "EVENT_DATETIME="+eventDateTimeSQL+","+ QString().sprintf("EVENT_TYPE=%d,",action)+ QString().sprintf("EVENT_SOURCE=%d,",logline->source())+ "EXT_START_TIME=\""+RDCheckDateTime(logline->extStartTime(),"hh:mm:ss")+"\","+ @@ -64,8 +70,8 @@ void LogTraffic(const QString &svcname,const QString &logname, "EXT_CART_NAME=\""+RDEscapeString(logline->extCartName().utf8())+"\","+ "TITLE=\""+RDEscapeString(logline->title().utf8())+"\","+ "ARTIST=\""+RDEscapeString(logline->artist().utf8())+"\","+ - "SCHEDULED_TIME=\""+RDCheckDateTime(logline->startTime(RDLogLine::Logged), - "hh:mm:ss")+"\","+ + "SCHEDULED_TIME="+RDCheckDateTime(logline->startTime(RDLogLine::Logged), + "hh:mm:ss")+","+ "ISRC=\""+RDEscapeString(logline->isrc().utf8())+"\","+ "PUBLISHER=\""+RDEscapeString(logline->publisher().utf8())+"\","+ "COMPOSER=\""+RDEscapeString(logline->composer().utf8())+"\","+ diff --git a/rdcatchd/rdcatchd.cpp b/rdcatchd/rdcatchd.cpp index 54964716..76c69758 100644 --- a/rdcatchd/rdcatchd.cpp +++ b/rdcatchd/rdcatchd.cpp @@ -2609,7 +2609,7 @@ void MainObject::ResolveErrorWildcards(CatchEvent *event, rml->replace("%d",event->description()); rml->replace("%e",err_desc); // Error Description rml->replace("%i",QString().sprintf("%u",event->id())); - rml->replace("%t",RDCheckDateTime(event->startTime(),"hh:mm:ss")); + rml->replace("%t",event->startTime().toString("hh:mm:ss")); rml->replace("%y",RDRecording::typeString(event->type())); switch(event->type()) { case RDRecording::Recording: diff --git a/tests/sas_switch_torture.cpp b/tests/sas_switch_torture.cpp index a2112c19..8e8bef87 100644 --- a/tests/sas_switch_torture.cpp +++ b/tests/sas_switch_torture.cpp @@ -29,6 +29,7 @@ #include #include #include +#include MainWidget::MainWidget(QWidget *parent) :QWidget(parent) @@ -123,7 +124,7 @@ void MainWidget::generateData() SUN=\'Y\',MON=\'Y\',TUE=\'Y\',WED=\'Y\',THU=\'Y\',\ FRI=\'Y\',SAT=\'Y\',DESCRIPTION=\"%s\",\ CUT_NAME=\"SAS_SWITCH_TORTURE\",\ - START_TIME=\"%s\",TYPE=1", + START_TIME=%s,TYPE=1", SAS_STATION, SAS_MATRIX, j+1, diff --git a/tests/sas_torture.cpp b/tests/sas_torture.cpp index 714f6947..c24ef3bc 100644 --- a/tests/sas_torture.cpp +++ b/tests/sas_torture.cpp @@ -29,6 +29,7 @@ #include #include #include +#include MainWidget::MainWidget(QWidget *parent) :QWidget(parent) @@ -137,7 +138,7 @@ void MainWidget::generateData() SUN=\'Y\',MON=\'Y\',TUE=\'Y\',WED=\'Y\',THU=\'Y\',\ FRI=\'Y\',SAT=\'Y\',DESCRIPTION=\"%s\",\ CUT_NAME=\"SAS_TORTURE\",MACRO_CART=%d,\ - START_TIME=\"%s\",TYPE=1", + START_TIME=%s,TYPE=1", SAS_STATION, (const char *)desc, CART_START+j, diff --git a/utils/rddgimport/rddgimport.cpp b/utils/rddgimport/rddgimport.cpp index d1d55ca5..75d9e741 100644 --- a/utils/rddgimport/rddgimport.cpp +++ b/utils/rddgimport/rddgimport.cpp @@ -431,6 +431,12 @@ bool MainWidget::CheckSpot(const QString &isci) QDate today=QDate::currentDate(); QDate killdate=dg_date_edit->date().addDays(RDDGIMPORT_KILLDATE_OFFSET); + QString endDateTimeSQL = "NULL"; + + if(killdate.isValid()) + endDateTimeSQL = RDCheckDateTime(QDateTime(killdate,QTime(23,59,59)), + "yyyy-MM-dd hh:mm:ss"); + sql=QString("select CUT_NAME,CUTS.START_DATETIME,CUTS.END_DATETIME ")+ "from CART left join CUTS on CART.NUMBER=CUTS.CART_NUMBER "+ "where (CART.GROUP_NAME=\""+RDEscapeString(dg_svc->autospotGroup())+"\")&&" @@ -443,7 +449,7 @@ bool MainWidget::CheckSpot(const QString &isci) if(q->value(1).isNull()) { sql+="START_DATETIME=\""+today.toString("yyyy-MM-dd")+" 00:00:00\","; } - sql+="END_DATETIME=\""+RDCheckDateTime(killdate,"yyyy-MM-dd")+" 23:59:59\" "; + sql+="END_DATETIME="+endDateTimeSQL+" "; sql+="where CUT_NAME=\""+q->value(0).toString()+"\""; q1=new RDSqlQuery(sql); delete q1; diff --git a/utils/rdimport/rdimport.cpp b/utils/rdimport/rdimport.cpp index ef47fda6..31c7faf7 100644 --- a/utils/rdimport/rdimport.cpp +++ b/utils/rdimport/rdimport.cpp @@ -1864,13 +1864,13 @@ void MainObject::WriteTimestampCache(const QString &filename, sql=QString().sprintf("insert into DROPBOX_PATHS set \ DROPBOX_ID=%d,\ FILE_PATH=\"%s\",\ - FILE_DATETIME=\"%s\"", + FILE_DATETIME=%s", import_persistent_dropbox_id, (const char *)RDEscapeString(filename), (const char *)RDCheckDateTime(dt,"yyyy-MM-dd hh:mm:ss")); } else { - sql=QString().sprintf("update DROPBOX_PATHS set FILE_DATETIME=\"%s\" \ + sql=QString().sprintf("update DROPBOX_PATHS set FILE_DATETIME=%s \ where (DROPBOX_ID=%d)&&(FILE_PATH=\"%s\")", (const char *)RDCheckDateTime(dt,"yyyy-MM-dd hh:mm:ss"), import_persistent_dropbox_id, diff --git a/web/rdcastmanager/rdcastmanager.cpp b/web/rdcastmanager/rdcastmanager.cpp index 1cd73bff..dadc75bd 100644 --- a/web/rdcastmanager/rdcastmanager.cpp +++ b/web/rdcastmanager/rdcastmanager.cpp @@ -1310,7 +1310,7 @@ void MainObject::CommitCast() ITEM_SOURCE_TEXT=\"%s\",\ ITEM_SOURCE_URL=\"%s\",\ SHELF_LIFE=%d,\ - EFFECTIVE_DATETIME=\"%s\" \ + EFFECTIVE_DATETIME=%s \ where ID=%d", status, (const char *)RDEscapeString(item_title),