Rivendellaudio/lib/rdschedcode.cpp
Fred Gleason 03cfa9d614 2016-03-24 Fred Gleason <fredg@paravelsystems.com>
* Update web test methods in 'web/tests/'.
	* Added an 'RDSchedCode' class in 'lib/rdschedcode.cpp' and
	'lib/rdschedcode.h'.
	* Implemented the 'ListSchedCodes' web method in
	'web/rdxport/schedcodes.cpp'.
	* Implemented the 'AssignSchedCode' web method in
	'web/rdxport/schedcodes.cpp'.
	* Implemented the 'UnassignSchedCode' web method in
	'web/rdxport/schedcodes.cpp'.
	* Implemented the 'ListCartSchedCodes' web method in
	'web/rdxport/schedcodes.cpp'.
	* Extended 'RDGetWebTime()' and 'RDGetWebDateTime()' functions to
	support XML 'xs' namespace formats.
	* Implemented '*_POINT' fields in the 'EditCut' web method in
	'web/rdxport/carts.cpp'.
	* Modified the 'RDCart::removeSchedCode()' method so as to treat
	scheduler codes in a case-insensitve manner.
	* Modified the return of the 'EditCut' web method to provide a full
	<cutList> record in 'web/rdxport/carts.cpp'.
2016-03-24 13:53:39 -04:00

82 lines
1.8 KiB
C++

// rdschedcode.cpp
//
// Abstract a Rivendell Scheduler Code
//
// (C) Copyright 2015 Fred Gleason <fredg@paravelsystems.com>
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License version 2 as
// published by the Free Software Foundation.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public
// License along with this program; if not, write to the Free Software
// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
//
#include "rdconf.h"
#include "rddb.h"
#include "rdescape_string.h"
#include "rdschedcode.h"
#include "rdweb.h"
RDSchedCode::RDSchedCode(const QString &code)
{
sched_code=code;
}
QString RDSchedCode::code() const
{
return sched_code;
}
bool RDSchedCode::exists() const
{
return RDDoesRowExist("SCHED_CODES","CODE",sched_code);
}
QString RDSchedCode::description() const
{
return RDGetSqlValue("SCHED_CODES","CODE",sched_code,"DESCRIPTION").
toString();
}
void RDSchedCode::setDescription(const QString &desc) const
{
SetRow("DESCRIPTION",desc);
}
QString RDSchedCode::xml() const
{
QString xml;
xml+="<schedCode>\n";
xml+=" "+RDXmlField("code",sched_code);
xml+=" "+RDXmlField("description",description());
xml+="</schedCode>\n";
return xml;
}
void RDSchedCode::SetRow(const QString &param,const QString &value) const
{
RDSqlQuery *q;
QString sql;
sql=QString("update SCHED_CODES set ")+
param+"=\""+RDEscapeString(value)+"\" "+
"where CODE=\""+RDEscapeString(sched_code)+"\"";
q=new RDSqlQuery(sql);
delete q;
}