From b3f0a2fcdd016fd9a31019e72fff993ec3d7bdef Mon Sep 17 00:00:00 2001
From: Martin Konecny <martin.konecny@gmail.com>
Date: Tue, 14 May 2013 15:10:04 -0400
Subject: [PATCH 1/3] CC-5144: SHOUTcast listener stats auth not working

---
 python_apps/pypo/listenerstat.py | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/python_apps/pypo/listenerstat.py b/python_apps/pypo/listenerstat.py
index 0bb06357b..10d9359fd 100644
--- a/python_apps/pypo/listenerstat.py
+++ b/python_apps/pypo/listenerstat.py
@@ -30,10 +30,16 @@ class ListenerStat(Thread):
         return self.api_client.get_stream_parameters()
 
 
-    def get_stream_server_xml(self, ip, url):
+    def get_stream_server_xml(self, ip, url, is_shoutcast=False):
         encoded = base64.b64encode("%(admin_user)s:%(admin_pass)s" % ip)
 
         header = {"Authorization":"Basic %s" % encoded}
+
+        if is_shoutcast:
+            #user agent is required for shoutcast auth, otherwise it returns 404.
+            user_agent = "Mozilla/5.0 (Linux; rv:22.0) Gecko/20130405 Firefox/22.0"
+            header["User-Agent"] = user_agent
+
         req = urllib2.Request(
             #assuming that the icecast stats path is /admin/stats.xml
             #need to fix this
@@ -70,7 +76,7 @@ class ListenerStat(Thread):
 
     def get_shoutcast_stats(self, ip):
         url = 'http://%(host)s:%(port)s/admin.cgi?sid=1&mode=viewxml' % ip
-        document = self.get_stream_server_xml(ip, url)
+        document = self.get_stream_server_xml(ip, url, is_shoutcast=True)
         dom = xml.dom.minidom.parseString(document)
         current_listeners = dom.getElementsByTagName("CURRENTLISTENERS")
 

From c693c4b01594135b458d65d900cf2427dd366402 Mon Sep 17 00:00:00 2001
From: Martin Konecny <martin.konecny@gmail.com>
Date: Tue, 14 May 2013 15:14:57 -0400
Subject: [PATCH 2/3] remoe id's for mksafe (they aren't supported params)

---
 python_apps/pypo/liquidsoap_scripts/ls_script.liq | 2 --
 1 file changed, 2 deletions(-)

diff --git a/python_apps/pypo/liquidsoap_scripts/ls_script.liq b/python_apps/pypo/liquidsoap_scripts/ls_script.liq
index 97dc544c5..6bd613561 100644
--- a/python_apps/pypo/liquidsoap_scripts/ls_script.liq
+++ b/python_apps/pypo/liquidsoap_scripts/ls_script.liq
@@ -231,7 +231,6 @@ s = switch(id="schedule_noise_switch",
 
 s = if dj_live_stream_port != 0 and dj_live_stream_mp != "" then
     dj_live = mksafe(
-        id="dj_live_mksafe",
         audio_to_stereo(
             input.harbor(id="live_dj_harbor",
                 dj_live_stream_mp,
@@ -254,7 +253,6 @@ end
 
 s = if master_live_stream_port != 0 and master_live_stream_mp != "" then
     master_dj = mksafe(
-        id="master_dj_mksafe",
         audio_to_stereo(
             input.harbor(id="master_harbor",
                 master_live_stream_mp,

From 809d5a35b9050201b21b566f3114542c4fa75238 Mon Sep 17 00:00:00 2001
From: Naomi <naomiaro@gmail.com>
Date: Tue, 14 May 2013 15:49:13 -0400
Subject: [PATCH 3/3] CC-5108 : Waveform Editor UI

changing colour to be less dark. can better see highlights/drawn fades.
---
 airtime_mvc/application/views/scripts/playlist/set-fade.phtml | 4 ++--
 airtime_mvc/public/css/waveform.css                           | 2 +-
 airtime_mvc/public/js/waveformplaylist/config.js              | 2 +-
 3 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/airtime_mvc/application/views/scripts/playlist/set-fade.phtml b/airtime_mvc/application/views/scripts/playlist/set-fade.phtml
index 355a18b68..6f03a0186 100644
--- a/airtime_mvc/application/views/scripts/playlist/set-fade.phtml
+++ b/airtime_mvc/application/views/scripts/playlist/set-fade.phtml
@@ -3,7 +3,7 @@
 	  <input type="button" class="pl-waveform-fades-btn" value="<?php echo _("Show Waveform")?>"></input>
 	</dd>
     <?php if ($this->item1Type == 0) {?>
-    <dt><? echo _("Fade out: "); ?><span class='spl_cue_hint'><? echo _("(ss.t)")?></span></dt>
+    <dt><?php echo _("Fade out: "); ?><span class='spl_cue_hint'><?php echo _("(ss.t)")?></span></dt>
     <dd id="spl_fade_out_<?php echo $this->item1; ?>" class="spl_fade_out" 
     	data-fadeout="<?php echo $this->item1Url; ?>"
     	data-cuein="<?php echo $this->cueIn1; ?>" 
@@ -16,7 +16,7 @@
     <dd class="edit-error"></dd>
     <?php }
     if (isset($this->item2Url)) {?>
-    <dt><? echo _("Fade in: "); ?><span class='spl_cue_hint'><? echo _("(ss.t)")?></span></dt>
+    <dt><?php echo _("Fade in: "); ?><span class='spl_cue_hint'><?php echo _("(ss.t)")?></span></dt>
     <dd id="spl_fade_in_<?php echo $this->item2; ?>" class="spl_fade_in" 
     	data-fadein="<?php echo $this->item2Url; ?>" 
     	data-offset="<?php if ($this->item1Type == 0) { echo $this->offset; } else { echo 0; } ?>"
diff --git a/airtime_mvc/public/css/waveform.css b/airtime_mvc/public/css/waveform.css
index fd4c9bd57..b571b0793 100644
--- a/airtime_mvc/public/css/waveform.css
+++ b/airtime_mvc/public/css/waveform.css
@@ -29,7 +29,7 @@
   position: absolute;
   margin: 0;
   padding: 0;
-  background: #3e3e3e;
+  background: #6e6e6e;
 }
 
 .state-select {
diff --git a/airtime_mvc/public/js/waveformplaylist/config.js b/airtime_mvc/public/js/waveformplaylist/config.js
index 7b0ae3ecf..9cc888371 100644
--- a/airtime_mvc/public/js/waveformplaylist/config.js
+++ b/airtime_mvc/public/js/waveformplaylist/config.js
@@ -21,7 +21,7 @@ var Config = function(params) {
 
             UITheme: "default", // bootstrap || jQueryUI || default
 
-            waveColor: 'grey',
+            waveColor: '#c7c7c7',
             progressColor: 'orange',
             loadingColor: 'purple',
             cursorColor: 'green',