mirror of
https://github.com/ElvishArtisan/rivendell.git
synced 2025-06-01 16:42:34 +02:00
Merge branch 'tryphon-rdlogmanager-scheduler-code2'
Changed DB version from '240' to '241' to resolve conflict with master.
This commit is contained in:
commit
264c8a3354
@ -14527,3 +14527,8 @@
|
||||
2014-10-08 Fred Gleason <fredg@paravelsystems.com>
|
||||
* Added code in 'utils/rdimport/rdimport.cpp' to ensure that
|
||||
imports do not end up with an empty cut description field.
|
||||
2014-10-08 Fred Gleason <fredg@paravelsystems.com>
|
||||
* Applied a patch from albanpeignier that adds a second scheduler
|
||||
code for music events.
|
||||
* Added an 'EVENTS.HAVE_CODE2' field to the database.
|
||||
* Incremented the database version to 241.
|
||||
|
@ -26,7 +26,7 @@
|
||||
/*
|
||||
* Current Database Version
|
||||
*/
|
||||
#define RD_VERSION_DATABASE 240
|
||||
#define RD_VERSION_DATABASE 241
|
||||
|
||||
|
||||
#endif // DBVERSION_H
|
||||
|
@ -408,6 +408,17 @@ void RDEvent::setHaveCode(QString str)
|
||||
SetRow("HAVE_CODE",str,true);
|
||||
}
|
||||
|
||||
QString RDEvent::HaveCode2()
|
||||
{
|
||||
bool ok;
|
||||
return GetStringValue("HAVE_CODE2",&ok);
|
||||
}
|
||||
|
||||
|
||||
void RDEvent::setHaveCode2(QString str)
|
||||
{
|
||||
SetRow("HAVE_CODE2",str,true);
|
||||
}
|
||||
|
||||
unsigned RDEvent::titleSep()
|
||||
{
|
||||
|
@ -73,6 +73,8 @@ class RDEvent
|
||||
void setSchedGroup(QString str);
|
||||
QString HaveCode();
|
||||
void setHaveCode(QString str);
|
||||
QString HaveCode2();
|
||||
void setHaveCode2(QString str);
|
||||
unsigned titleSep();
|
||||
void setTitleSep(unsigned titlesep);
|
||||
static QString preimportTableName(const QString event_name);
|
||||
|
@ -244,6 +244,16 @@ void RDEventLine::setHaveCode(QString str)
|
||||
event_have_code=str;
|
||||
}
|
||||
|
||||
QString RDEventLine::HaveCode2() const
|
||||
{
|
||||
return event_have_code2;
|
||||
}
|
||||
|
||||
|
||||
void RDEventLine::setHaveCode2(QString str)
|
||||
{
|
||||
event_have_code2=str;
|
||||
}
|
||||
|
||||
unsigned RDEventLine::titleSep() const
|
||||
{
|
||||
@ -317,6 +327,7 @@ void RDEventLine::clear()
|
||||
event_autofill_slop=-1;
|
||||
event_sched_group="";
|
||||
event_have_code="";
|
||||
event_have_code2="";
|
||||
event_title_sep=100;
|
||||
event_nested_event="";
|
||||
}
|
||||
@ -328,7 +339,7 @@ bool RDEventLine::load()
|
||||
GRACE_TIME,POST_POINT,USE_AUTOFILL,\
|
||||
USE_TIMESCALE,IMPORT_SOURCE,START_SLOP,\
|
||||
END_SLOP,FIRST_TRANS_TYPE,DEFAULT_TRANS_TYPE,\
|
||||
COLOR,AUTOFILL_SLOP,NESTED_EVENT,SCHED_GROUP,TITLE_SEP,HAVE_CODE \
|
||||
COLOR,AUTOFILL_SLOP,NESTED_EVENT,SCHED_GROUP,TITLE_SEP,HAVE_CODE,HAVE_CODE2 \
|
||||
from EVENTS where NAME=\"%s\"",
|
||||
(const char *)event_name);
|
||||
RDSqlQuery *q=new RDSqlQuery(sql);
|
||||
@ -361,7 +372,8 @@ bool RDEventLine::load()
|
||||
event_sched_group=q->value(15).toString();
|
||||
event_title_sep=q->value(16).toUInt();
|
||||
event_have_code=q->value(17).toString();
|
||||
|
||||
event_have_code2=q->value(18).toString();
|
||||
|
||||
delete q;
|
||||
event_preimport_log->load();
|
||||
event_postimport_log->load();
|
||||
@ -383,7 +395,7 @@ bool RDEventLine::save()
|
||||
END_SLOP=%d,FIRST_TRANS_TYPE=%d,\
|
||||
DEFAULT_TRANS_TYPE=%d,COLOR=\"%s\"\
|
||||
AUTOFILL_SLOP=%d,NESTED_EVENT=\"%s\",\
|
||||
SCHED_GROUP=\"%s\",TITLE_SEP=%d,HAVE_CODE=\"%s\" \
|
||||
SCHED_GROUP=\"%s\",TITLE_SEP=%d,HAVE_CODE=\"%s\",HAVE_CODE2=\"%s\" \
|
||||
where NAME=\"%s\"",
|
||||
(const char *)RDEscapeString(event_properties),
|
||||
event_preposition,event_time_type,
|
||||
@ -400,6 +412,7 @@ bool RDEventLine::save()
|
||||
(const char *)RDEscapeString(event_sched_group),
|
||||
event_title_sep,
|
||||
(const char*)event_have_code,
|
||||
(const char*)event_have_code2,
|
||||
(const char *)RDEscapeString(event_name));
|
||||
}
|
||||
else {
|
||||
@ -696,8 +709,25 @@ bool RDEventLine::generateLog(QString logname,const QString &svcname,
|
||||
*errors+=QString().sprintf("%s Rule broken: Must have code %s\n",(const char *)time.toString("hh:mm:ss"),(const char*)event_have_code);
|
||||
schedCL->restore();
|
||||
}
|
||||
|
||||
// Scheduler Codes
|
||||
|
||||
// Must have second scheduler code
|
||||
if(event_have_code2!="")
|
||||
{
|
||||
schedCL->save();
|
||||
for(counter=0;counter<schedCL->getNumberOfItems();counter++)
|
||||
{
|
||||
if(!schedCL->itemHasCode(counter,event_have_code2))
|
||||
{
|
||||
schedCL->removeItem(counter);
|
||||
counter--;
|
||||
}
|
||||
}
|
||||
if(schedCL->getNumberOfItems()==0)
|
||||
*errors+=QString().sprintf("%s Rule broken: Must have second code %s\n",(const char *)time.toString("hh:mm:ss"),(const char*)event_have_code2);
|
||||
schedCL->restore();
|
||||
}
|
||||
|
||||
// Scheduler Codes
|
||||
sql=QString().sprintf("select CODE,MAX_ROW,MIN_WAIT,NOT_AFTER, OR_AFTER,OR_AFTER_II from %s_RULES",(const char *)clockname);
|
||||
q=new RDSqlQuery(sql);
|
||||
while (q->next())
|
||||
|
@ -70,6 +70,8 @@ class RDEventLine
|
||||
void setSchedGroup(QString str);
|
||||
QString HaveCode() const;
|
||||
void setHaveCode(QString str);
|
||||
QString HaveCode2() const;
|
||||
void setHaveCode2(QString str);
|
||||
unsigned titleSep() const;
|
||||
void setTitleSep(unsigned titlesep);
|
||||
RDLogEvent *preimportCarts();
|
||||
@ -112,6 +114,7 @@ class RDEventLine
|
||||
QString event_nested_event;
|
||||
QString event_sched_group;
|
||||
QString event_have_code;
|
||||
QString event_have_code2;
|
||||
unsigned event_title_sep;
|
||||
};
|
||||
|
||||
|
@ -8051,21 +8051,28 @@ int UpdateDb(int ver)
|
||||
}
|
||||
|
||||
if(ver<240) {
|
||||
sql=QString("create table if not exists GPIO_EVENTS(")+
|
||||
"ID int auto_increment not null primary key,"+
|
||||
"STATION_NAME char(64) not null,"+
|
||||
"MATRIX int not null,"+
|
||||
"NUMBER int not null,"+
|
||||
"TYPE int not null,"+
|
||||
"EDGE int not null,"+
|
||||
"EVENT_DATETIME datetime not null,"+
|
||||
"index STATION_NAME_IDX(STATION_NAME,MATRIX,TYPE,EVENT_DATETIME,EDGE))";
|
||||
sql=QString("create table if not exists GPIO_EVENTS(")+
|
||||
"ID int auto_increment not null primary key,"+
|
||||
"STATION_NAME char(64) not null,"+
|
||||
"MATRIX int not null,"+
|
||||
"NUMBER int not null,"+
|
||||
"TYPE int not null,"+
|
||||
"EDGE int not null,"+
|
||||
"EVENT_DATETIME datetime not null,"+
|
||||
"index STATION_NAME_IDX(STATION_NAME,MATRIX,TYPE,EVENT_DATETIME,EDGE))";
|
||||
q=new QSqlQuery(sql);
|
||||
delete q;
|
||||
}
|
||||
|
||||
if(ver<241) {
|
||||
sql=QString("alter table EVENTS add column ")+
|
||||
"HAVE_CODE2 VARCHAR(10) after HAVE_CODE";
|
||||
q=new QSqlQuery(sql);
|
||||
delete q;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
// **** End of version updates ****
|
||||
|
||||
//
|
||||
|
@ -529,6 +529,23 @@ EditEvent::EditEvent(QString eventname,bool new_event,
|
||||
}
|
||||
delete q2;
|
||||
|
||||
// And code
|
||||
|
||||
event_have_code2_label=
|
||||
new QLabel(tr("and code"),this,"event_have_code2_label");
|
||||
event_have_code2_label->setFont(bold_font);
|
||||
event_have_code2_label->setGeometry(CENTER_LINE+420,425,100,20);
|
||||
|
||||
event_have_code2_box=new QComboBox(this,"event_have_code2_box");
|
||||
event_have_code2_box->setGeometry(CENTER_LINE+510,425,100,20);
|
||||
event_have_code2_box->insertItem("");
|
||||
sql2="select CODE from SCHED_CODES order by CODE";
|
||||
q2=new RDSqlQuery(sql2);
|
||||
while(q2->next()) {
|
||||
event_have_code2_box->insertItem(q2->value(0).toString());
|
||||
}
|
||||
delete q2;
|
||||
|
||||
|
||||
//
|
||||
// Start Slop Time
|
||||
@ -798,6 +815,7 @@ EditEvent::EditEvent(QString eventname,bool new_event,
|
||||
}
|
||||
event_title_sep_spinbox->setValue(event_event->titleSep());
|
||||
event_have_code_box->setCurrentText(event_event->HaveCode());
|
||||
event_have_code2_box->setCurrentText(event_event->HaveCode2());
|
||||
QColor color=event_event->color();
|
||||
if(color.isValid()) {
|
||||
event_color_button->setPalette(QPalette(color,backgroundColor()));
|
||||
@ -1070,6 +1088,8 @@ void EditEvent::importClickedData(int id)
|
||||
event_title_sep_spinbox->setEnabled(stateschedinv);
|
||||
event_have_code_box->setEnabled(stateschedinv);
|
||||
event_have_code_label->setEnabled(stateschedinv);
|
||||
event_have_code2_box->setEnabled(stateschedinv);
|
||||
event_have_code2_label->setEnabled(stateschedinv);
|
||||
}
|
||||
|
||||
|
||||
@ -1511,7 +1531,14 @@ void EditEvent::Save()
|
||||
event_event->setProperties(GetProperties());
|
||||
event_event->setSchedGroup(event_sched_group_box->currentText());
|
||||
event_event->setTitleSep(event_title_sep_spinbox->value());
|
||||
event_event->setHaveCode(event_have_code_box->currentText());
|
||||
event_event->setHaveCode(event_have_code_box->currentText());
|
||||
if (event_have_code_box->currentText() != QString("")) {
|
||||
event_event->setHaveCode2(event_have_code2_box->currentText());
|
||||
} else {
|
||||
// save second code as first code when first code isn't defined
|
||||
event_event->setHaveCode(event_have_code2_box->currentText());
|
||||
event_event->setHaveCode2(QString(""));
|
||||
}
|
||||
listname=event_name;
|
||||
listname.replace(" ","_");
|
||||
event_preimport_list->logEvent()->
|
||||
|
@ -110,6 +110,8 @@ class EditEvent : public QDialog
|
||||
QLabel *event_title_sep_label;
|
||||
QComboBox* event_have_code_box;
|
||||
QLabel *event_have_code_label;
|
||||
QComboBox* event_have_code2_box;
|
||||
QLabel *event_have_code2_label;
|
||||
LibListView *event_lib_list;
|
||||
QPixmap *event_playout_map;
|
||||
QPixmap *event_macro_map;
|
||||
|
@ -520,6 +520,10 @@ Chcete ji přepsat?</translation>
|
||||
<source>IMPORT</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>and code</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>EditEventLine</name>
|
||||
|
@ -520,6 +520,10 @@ Wollen Sie es überschreiben?</translation>
|
||||
<source>IMPORT</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>and code</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>EditEventLine</name>
|
||||
|
@ -522,6 +522,10 @@ Do you want to overwrite it?</source>
|
||||
<source>IMPORT</source>
|
||||
<translation>IMPORTAR</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>and code</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>EditEventLine</name>
|
||||
|
@ -515,6 +515,10 @@ Do you want to overwrite it?</source>
|
||||
<source>IMPORT</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>and code</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>EditEventLine</name>
|
||||
|
@ -529,6 +529,10 @@ Vil du byta henne ut?</translation>
|
||||
<source>IMPORT</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>and code</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>EditEventLine</name>
|
||||
|
@ -529,6 +529,10 @@ Vil du byta henne ut?</translation>
|
||||
<source>IMPORT</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>and code</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>EditEventLine</name>
|
||||
|
@ -522,6 +522,10 @@ Você quer sobreescrêve-lo?</translation>
|
||||
<source>IMPORT</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>and code</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>EditEventLine</name>
|
||||
|
Loading…
x
Reference in New Issue
Block a user