CC-4821: Add option to disable ReplayGain

- done
This commit is contained in:
James 2013-01-10 13:49:41 -05:00
parent 4bf9ab60d9
commit 048ee05030
6 changed files with 51 additions and 22 deletions

View file

@ -255,6 +255,7 @@ class PreferenceController extends Zend_Controller_Action
Application_Model_Preference::SetDefaultTransitionFade($values["transition_fade"]);
Application_Model_Preference::SetAutoTransition($values["auto_transition"]);
Application_Model_Preference::SetAutoSwitch($values["auto_switch"]);
Application_Model_Preference::SetEnableReplayGain($values["enableReplayGain"]);
Application_Model_Preference::setReplayGainModifier($values["replayGainModifier"]);
if (!Application_Model_Preference::GetMasterDjConnectionUrlOverride()) {

View file

@ -65,6 +65,12 @@ class Application_Form_StreamSetting extends Zend_Form
->setDecorators(array('ViewHelper'));
$this->addElement($offAirMeta);
$enable_replay_gain = new Zend_Form_Element_Checkbox("enableReplayGain");
$enable_replay_gain->setLabel(_("Enable Replay Gain"))
->setValue(Application_Model_Preference::GetEnableReplayGain())
->setDecorators(array('ViewHelper'));
$this->addElement($enable_replay_gain);
$replay_gain = new Zend_Form_Element_Hidden("replayGainModifier");
$replay_gain->setLabel(_("Replay Gain Modifier"))
->setValue(Application_Model_Preference::getReplayGainModifier())

View file

@ -1253,6 +1253,14 @@ class Application_Model_Preference
return ($data != "") ? unserialize($data) : null;
}
public static function SetEnableReplayGain($value) {
self::setValue("enable_replay_gain", $value, false);
}
public static function GetEnableReplayGain() {
return self::getValue("enable_replay_gain", false);
}
public static function getReplayGainModifier(){
$rg_modifier = self::getValue("replay_gain_modifier");

View file

@ -679,9 +679,14 @@ SQL;
$same_hour = $start_hour == $end_hour;
$independent_event = !$same_hour;
$replay_gain = is_null($item["replay_gain"]) ? "0": $item["replay_gain"];
$replay_gain += Application_Model_Preference::getReplayGainModifier();
if ( !Application_Model_Preference::GetEnableReplayGain() ) {
$replay_gain = 0;
}
$schedule_item = array(
'id' => $media_id,
'type' => 'file',

View file

@ -71,6 +71,14 @@
<dd id="offAirMeta-element">
<?php echo $this->form->getElement('offAirMeta') ?>
</dd>
<dt id="enableReplayGain-label">
<label>
<?php echo $this->form->getElement('enableReplayGain')->getLabel() ?> :
</label>
</dt>
<dd id="enableReplayGain-element">
<?php echo $this->form->getElement('enableReplayGain') ?>
</dd>
<dt id="replayGainModifier-label" class="block-display">
<label><?php echo $this->form->getElement('replayGainModifier')->getLabel() ?>:
</label>

View file

@ -1,6 +1,7 @@
INSERT INTO cc_subjs ("login", "type", "pass") VALUES ('admin', 'A', md5('admin'));
-- added in 2.3
INSERT INTO cc_stream_setting ("keyname", "value", "type") VALUES ('off_air_meta', 'Airtime - offline', 'string');
INSERT INTO cc_pref("keystr", "valstr") VALUES('enable_replay_gain', 1);
-- end of added in 2.3
-- added in 2.1