コード例 #1
0
ファイル: rdstation.cpp プロジェクト: stgabmp/Rivendell
bool RDStation::haveCapability(Capability cap) const
{
  switch(cap) {
      case RDStation::HaveOggenc:
	return RDBool(RDGetSqlValue("STATIONS","NAME",station_name,
				  "HAVE_OGGENC").toString());
	break;

      case RDStation::HaveOgg123:
	return RDBool(RDGetSqlValue("STATIONS","NAME",station_name,
				  "HAVE_OGG123").toString());
	break;

      case RDStation::HaveFlac:
	return RDBool(RDGetSqlValue("STATIONS","NAME",station_name,
				  "HAVE_FLAC").toString());
	break;

      case RDStation::HaveLame:
	return RDBool(RDGetSqlValue("STATIONS","NAME",station_name,
				  "HAVE_LAME").toString());
	break;

      case RDStation::HaveMpg321:
	return RDBool(RDGetSqlValue("STATIONS","NAME",station_name,
				  "HAVE_MPG321").toString());
	break;
  }
  return false;
}
コード例 #2
0
RDLog::LinkState RDLog::linkState(RDLog::Source src) const
{
  if(linkQuantity(src)==0) {
    return RDLog::LinkNotPresent;
  }
  switch(src) {
      case RDLog::SourceMusic:
	return (RDLog::LinkState)RDBool(GetStringValue("MUSIC_LINKED"));

      case RDLog::SourceTraffic:
	return (RDLog::LinkState)RDBool(GetStringValue("TRAFFIC_LINKED"));
  }
  return RDLog::LinkNotPresent;
}
コード例 #3
0
ファイル: rduser.cpp プロジェクト: WMTH/rivendell
bool RDUser::authenticated(bool webuser) const
{
  RDSqlQuery *q;
  QString sql;

  sql=QString().sprintf("select LOGIN_NAME,ENABLE_WEB from USERS \
                         where LOGIN_NAME=\"%s\" \
                         && PASSWORD=\"%s\"",
			(const char *)RDEscapeString(user_name),
			(const char *)RDEscapeString(user_password));
  q=new RDSqlQuery(sql);
  if(q->first()) {
    bool ret=RDBool(q->value(1).toString())||
      ((!RDBool(q->value(1).toString()))&&(!webuser));
    delete q;
    return ret;
  }
  delete q;

  return false;
}
コード例 #4
0
ファイル: rdsystem.cpp プロジェクト: WMTH/rivendell
bool RDSystem::allowDuplicateCartTitles() const
{
  bool ret=false;
  QString sql;
  RDSqlQuery *q;

  sql="select DUP_CART_TITLES from SYSTEM";
  q=new RDSqlQuery(sql);
  if(q->first()) {
    ret=RDBool(q->value(0).toString());
  }
  delete q;
  return ret;
}
コード例 #5
0
ファイル: rdsystem.cpp プロジェクト: ElvishArtisan/rivendell
bool RDSystem::showUserList() const
{
  bool ret=false;
  QString sql;
  RDSqlQuery *q;

  sql="select SHOW_USER_LIST from SYSTEM";
  q=new RDSqlQuery(sql);
  if(q->first()) {
    ret=RDBool(q->value(0).toString());
  }
  delete q;
  return ret;
}
コード例 #6
0
QString RDLog::xml() const
{
  QString sql;
  RDSqlQuery *q;
  QString ret;
#ifndef WIN32
  sql=QString("select NAME,SERVICE,DESCRIPTION,ORIGIN_USER,")+
    "ORIGIN_DATETIME,LINK_DATETIME,MODIFIED_DATETIME,"+
    "AUTO_REFRESH,START_DATE,END_DATE,SCHEDULED_TRACKS,COMPLETED_TRACKS,"+
    "MUSIC_LINKS,MUSIC_LINKED,TRAFFIC_LINKS,TRAFFIC_LINKED,NEXT_ID "+
    "from LOGS where NAME=\""+RDEscapeString(log_name)+"\"";

  q=new RDSqlQuery(sql);
  if(q->first()) {
    ret+="  <log>\n";
    ret+="   "+RDXmlField("name",log_name);
    ret+="   "+RDXmlField("serviceName",q->value(1).toString());
    ret+="   "+RDXmlField("description",q->value(2).toString());
    ret+="   "+RDXmlField("originUserName",q->value(3).toString());
    ret+="   "+RDXmlField("originDatetime",q->value(4).toDateTime());
    ret+="   "+RDXmlField("linkDatetime",q->value(5).toDateTime());
    ret+="   "+RDXmlField("modifiedDatetime",q->value(6).toDateTime());
    ret+="   "+RDXmlField("autoRefresh",RDBool(q->value(7).toString()));
    ret+="   "+RDXmlField("startDate",q->value(8).toDate());
    ret+="   "+RDXmlField("endDate",q->value(9).toDate());
    ret+="   "+RDXmlField("scheduledTracks",q->value(10).toInt());
    ret+="   "+RDXmlField("completedTracks",q->value(11).toInt());
    ret+="   "+RDXmlField("musicLinks",q->value(12).toInt());
    ret+="   "+RDXmlField("musicLinked",RDBool(q->value(13).toString()));
    ret+="   "+RDXmlField("trafficLinks",q->value(14).toInt());
    ret+="   "+RDXmlField("trafficLinked",RDBool(q->value(15).toString()));
    ret+="  </log>\n";
  }
  delete q;
#endif  // WIN32
  return ret;
}
コード例 #7
0
ファイル: rdrepld.cpp プロジェクト: WMFO/rivendell
void MainObject::LoadReplicators()
{
  QString sql;
  RDSqlQuery *q;
  ReplConfig *config;

  sql=QString("select ")+
    "NAME,"+                 // 00
    "TYPE_ID,"+              // 01
    "FORMAT,"+               // 02
    "CHANNELS,"+             // 03
    "SAMPRATE,"+             // 04
    "BITRATE,"+              // 05
    "QUALITY,"+              // 06
    "URL,"+                  // 07
    "URL_USERNAME,"+         // 08
    "URL_PASSWORD,"+         // 09
    "ENABLE_METADATA,"+      // 10 
    "NORMALIZATION_LEVEL "+  // 11
    "from REPLICATORS where "+
    "STATION_NAME=\""+RDEscapeString(rda->config()->stationName())+"\"";
  q=new RDSqlQuery(sql);
  while(q->next()) {
    config=new ReplConfig();
    config->setName(q->value(0).toString());
    config->setType((RDReplicator::Type)q->value(1).toUInt());
    config->setFormat((RDSettings::Format)q->value(2).toUInt());
    config->setChannels(q->value(3).toUInt());
    config->setSampleRate(q->value(4).toUInt());
    config->setBitRate(q->value(5).toUInt());
    config->setQuality(q->value(6).toUInt());
    config->setUrl(q->value(7).toString());
    config->setUrlUsername(q->value(8).toString());
    config->setUrlPassword(q->value(9).toString());
    config->setEnableMetadata(RDBool(q->value(10).toString()));
    config->setNormalizeLevel(q->value(11).toInt());
    switch(config->type()) {
    case RDReplicator::TypeCitadelXds:
      repl_replicators.push_back(new CitadelXds(config));
      break;

    case RDReplicator::TypeLast:
      break;
    }
    repl_replicators.back()->startProcess();
  }
  delete q;
}
コード例 #8
0
bool RDRecording::GetBoolValue(QString field) const
{
  QString sql;
  RDSqlQuery *q;
  bool state;

  sql=QString("select ")+
    field+" from RECORDINGS where "+
    QString().sprintf("ID=%d",rec_id);
  q=new RDSqlQuery(sql);
  if(q->first()) {
    state=RDBool(q->value(0).toString());
    delete q;
    return state;
  }
  delete q;
  return false;    
}
コード例 #9
0
ファイル: rdtty.cpp プロジェクト: WMFO/rivendell
bool RDTty::GetBoolValue(const QString &field)
{
  QString sql;
  RDSqlQuery *q;
  bool state;

  sql=QString("select ")+
    field+" from TTYS where "+
    "(STATION_NAME=\""+RDEscapeString(tty_station)+"\")&&"+
    QString().sprintf("(PORT_ID=%d)",tty_id);
  q=new RDSqlQuery(sql);
  if(q->first()) {
    state=RDBool(q->value(0).toString());
    delete q;
    return state;
  }
  delete q;
  return false;    
}
コード例 #10
0
ファイル: rdlibrary_conf.cpp プロジェクト: WMTH/rivendell
bool RDLibraryConf::enableEditor() const
{
  return RDBool(RDGetSqlValue("RDLIBRARY","ID",lib_id,"ENABLE_EDITOR").
		toString());
}
コード例 #11
0
ファイル: rdlibrary_conf.cpp プロジェクト: WMTH/rivendell
bool RDLibraryConf::searchLimited() const
{
  return RDBool(RDGetSqlValue("RDLIBRARY","ID",lib_id,"SEARCH_LIMITED").
		toString());
}
コード例 #12
0
bool RDLog::logExists() const
{
  return RDBool(GetStringValue("LOG_EXISTS"));
}
コード例 #13
0
ファイル: rdlibrary_conf.cpp プロジェクト: WMTH/rivendell
bool RDLibraryConf::defaultTrimState() const
{
  return RDBool(RDGetSqlValue("RDLIBRARY","ID",lib_id,"DEFAULT_TRIM_STATE").
	       toString());
}
コード例 #14
0
ファイル: rdfeed.cpp プロジェクト: stgabmp/Rivendell
bool RDFeed::enableAutopost() const
{
  return RDBool(RDGetSqlValue("FEEDS","KEY_NAME",feed_keyname,
			      "ENABLE_AUTOPOST").toString());
}
コード例 #15
0
ファイル: rdfeed.cpp プロジェクト: stgabmp/Rivendell
bool RDFeed::castOrder() const
{
  return RDBool(RDGetSqlValue("FEEDS","KEY_NAME",feed_keyname,
			      "CAST_ORDER").toString());
}
コード例 #16
0
bool RDStation::systemMaint() const
{
  return RDBool(RDGetSqlValue("STATIONS","NAME",station_name,"SYSTEM_MAINT").
	       toString());
}
コード例 #17
0
ファイル: rdfeed.cpp プロジェクト: stgabmp/Rivendell
bool RDFeed::keepMetadata() const
{
  return RDBool(RDGetSqlValue("FEEDS","KEY_NAME",feed_keyname,
			      "KEEP_METADATA").toString());
}
コード例 #18
0
bool RDStation::enableDragdrop() const
{
  return RDBool(RDGetSqlValue("STATIONS","NAME",station_name,
			      "ENABLE_DRAGDROP").toString());
}
コード例 #19
0
ファイル: rdlogedit_conf.cpp プロジェクト: WMFO/rivendell
bool RDLogeditConf::enableSecondStart() const
{
  return RDBool(RDGetSqlValue("RDLOGEDIT","STATION",lib_station,
			      "ENABLE_SECOND_START").toString());
}
コード例 #20
0
ファイル: rdcut.cpp プロジェクト: stgabmp/Rivendell
bool RDCut::evergreen() const
{
  return RDBool(RDGetSqlValue("CUTS","CUT_NAME",cut_name,"EVERGREEN").
	       toString());
}
コード例 #21
0
ファイル: rddeck.cpp プロジェクト: ElvishArtisan/rivendell
bool RDDeck::defaultMonitorOn() const
{
  return RDBool(GetStringValue("DEFAULT_MONITOR_ON"));
}
コード例 #22
0
ファイル: rdlog_line.cpp プロジェクト: LucaSoldi/rivendell
void RDLogLine::loadCart(int cartnum,RDLogLine::TransType next_type,int mach,
			 bool timescale,RDLogLine::TransType type,int len)
{
  QString sql=QString("select CART.TYPE,CART.GROUP_NAME,CART.TITLE,")+
    "CART.ARTIST,CART.ALBUM,CART.YEAR,CART.ISRC,"+
    "CART.LABEL,CART.CLIENT,CART.AGENCY,"+
    "CART.USER_DEFINED,CART.CONDUCTOR,CART.SONG_ID,"+
    "CART.FORCED_LENGTH,CART.CUT_QUANTITY,CART.LAST_CUT_PLAYED,"+
    "CART.PLAY_ORDER,CART.START_DATETIME,"+
    "CART.END_DATETIME,CART.ENFORCE_LENGTH,"+
    "CART.PRESERVE_PITCH,GROUPS.ENABLE_NOW_NEXT,"+
    "CART.ASYNCRONOUS,CART.PUBLISHER,"+
    "CART.COMPOSER,CART.USAGE_CODE,CART.AVERAGE_SEGUE_LENGTH,CART.NOTES,"+
    "GROUPS.COLOR,GROUPS.TIMESCALE_LIMIT "+
    "from CART left join GROUPS on CART.GROUP_NAME=GROUPS.NAME "+
    QString().sprintf("where (CART.NUMBER=%d)",cartnum);
  RDSqlQuery *q=new RDSqlQuery(sql);
  if(!q->first()) {
    delete q;
    log_state=RDLogLine::NoCart;
    return;
  }
  log_cart_number=cartnum;
  log_cart_type=(RDCart::Type)q->value(0).toInt();
  switch((RDCart::Type)q->value(0).toInt()) {
      case RDCart::Audio:
	log_type=RDLogLine::Cart;
	break;

      case RDCart::Macro:
	log_type=RDLogLine::Macro;
	break;

      default:
	break;
  }
  log_group_name=q->value(1).toString();
  log_title=q->value(2).toString();
  log_artist=q->value(3).toString();
  log_album=q->value(4).toString();
  log_year=q->value(5).toDate();
  log_isrc=q->value(6).toString();
  log_label=q->value(7).toString();
  log_client=q->value(8).toString();
  log_agency=q->value(9).toString();
  log_user_defined=q->value(10).toString();
  log_conductor=q->value(11).toString();
  log_song_id=q->value(12).toString();
  log_cut_quantity=q->value(14).toUInt();
  log_last_cut_played=q->value(15).toUInt();
  log_play_order=(RDCart::PlayOrder)q->value(16).toInt();
  log_start_datetime=q->value(17).toDateTime();
  log_end_datetime=q->value(18).toDateTime();
  log_preserve_pitch=RDBool(q->value(20).toString());
  if(len<0) {
    log_forced_length=q->value(13).toUInt();
    log_enforce_length=RDBool(q->value(19).toString());
  }
  else {
    log_forced_length=len;
    log_enforce_length=true;
  }
  log_now_next_enabled=RDBool(q->value(21).toString());
  log_asyncronous=RDBool(q->value(22).toString());
  log_publisher=q->value(23).toString();
  log_composer=q->value(24).toString();
  log_usage_code=(RDCart::UsageCode)q->value(25).toInt();
  log_average_segue_length=q->value(26).toInt();
  log_cart_notes=q->value(27).toString();
  log_group_color=QColor(q->value(28).toString());
  log_timescale_limit=(double)q->value(29).toInt()/100.0;
  log_play_source=RDLogLine::UnknownSource;
  if(type!=RDLogLine::NoTrans) {
    log_trans_type=type;
  }
  delete q;
  log_state=setEvent(mach,next_type,timescale);
  log_timescaling_active=log_enforce_length&&timescale;
}
コード例 #23
0
ファイル: rdcut.cpp プロジェクト: stgabmp/Rivendell
bool RDCut::weekPart(int dayofweek) const
{
  return RDBool(RDGetSqlValue("CUTS","CUT_NAME",cut_name,
			    RDGetShortDayNameEN(dayofweek).upper(),cut_db).
	       toString());
}
コード例 #24
0
ファイル: rdevent.cpp プロジェクト: WMFO/rivendell
bool RDEvent::postPoint() const
{
  bool ok;
  return RDBool(GetStringValue("POST_POINT",&ok));
}
コード例 #25
0
bool RDStation::startJack() const
{
  return RDBool(RDGetSqlValue("STATIONS","NAME",station_name,"START_JACK").
		toString());
}
コード例 #26
0
ファイル: rdevent.cpp プロジェクト: WMFO/rivendell
bool RDEvent::useAutofill() const
{
  bool ok;
  return RDBool(GetStringValue("USE_AUTOFILL",&ok));
}
コード例 #27
0
bool RDStation::enforcePanelSetup() const
{
  return RDBool(RDGetSqlValue("STATIONS","NAME",station_name,
			      "ENFORCE_PANEL_SETUP").toString());
}
コード例 #28
0
ファイル: rdevent.cpp プロジェクト: WMFO/rivendell
bool RDEvent::useTimescale() const
{
  bool ok;
  return RDBool(GetStringValue("USE_TIMESCALE",&ok));
}
コード例 #29
0
bool RDStation::scanned() const
{
  return RDBool(RDGetSqlValue("STATIONS","NAME",station_name,"STATION_SCANNED").
	       toString());
}
コード例 #30
0
bool RDLog::autoRefresh() const
{
  return RDBool(GetStringValue("AUTO_REFRESH"));
}