? Copy (2) of audio.install
? Copy of audio.install_to_core
? ___audio.module___
? test.patch
? getid3/changelog.txt
? getid3/dependencies.txt
? getid3/getid3
? getid3/helperapps
? getid3/license.commercial.txt
? getid3/license.txt
? getid3/readme.txt
? getid3/structure.txt
? players/Thumbs.db
Index: audio.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/audio/audio.module,v
retrieving revision 1.118
diff -u -r1.118 audio.module
--- audio.module	30 Jul 2007 19:45:38 -0000	1.118
+++ audio.module	30 Jul 2007 22:07:24 -0000
@@ -1656,6 +1656,46 @@
 }
 
 /**
+ * Parse an array into a valid urlencoded query string.
+ *
+ * This function is a work-around for a drupal_urlencode issue in core. 
+ * See: http://drupal.org/node/158687 for details.
+ *
+ * @param $query
+ *   The array to be processed e.g. $_GET.
+ * @param $exclude
+ *   The array filled with keys to be excluded. Use parent[child] to exclude
+ *   nested items.
+ * @param $parent
+ *   Should not be passed, only used in recursive calls.
+ * @return
+ *   urlencoded string which can be appended to/as the URL query string.
+ */
+function audio_query_string_encode($query, $exclude = array(), $parent = '') {
+  $params = array();
+
+  foreach ($query as $key => $value) {
+    $key = urlencode($key);
+    if ($parent) {
+      $key = $parent .'['. $key .']';
+    }
+
+    if (in_array($key, $exclude)) {
+      continue;
+    }
+
+    if (is_array($value)) {
+      $params[] = audio_query_string_encode($value, $exclude, $key);
+    }
+    else {
+      $params[] = $key .'='. urlencode($value);
+    }
+  }
+
+  return implode('&', $params);
+}
+
+/**
  * Determines if an audio node can be played by Flash players.
  *
  * @param $node
@@ -1753,4 +1793,4 @@
     $tokens['node']['audio-url-download'] = t("Audio node download URL.");
     return $tokens;
   }
-}
\ No newline at end of file
+}
Index: players/1pixelout.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/audio/players/1pixelout.inc,v
retrieving revision 1.3
diff -u -r1.3 1pixelout.inc
--- players/1pixelout.inc	14 Feb 2007 19:11:42 -0000	1.3
+++ players/1pixelout.inc	30 Jul 2007 21:58:58 -0000
@@ -22,7 +22,7 @@
 
   $options['soundFile'] = check_url($node->url_play);
   $url = base_path() . drupal_get_path('module', 'audio') .'/players/1pixelout.swf';
-  $flashvars = drupal_query_string_encode($options);
+  $flashvars = audio_query_string_encode($options);
 
 $output = <<<EOT
 <object type="application/x-shockwave-flash" data="$url" width="290" height="24" >
@@ -36,4 +36,4 @@
 EOT;
 
   return $output;
-}
\ No newline at end of file
+}
Index: players/button.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/audio/players/button.inc,v
retrieving revision 1.4
diff -u -r1.4 button.inc
--- players/button.inc	14 Feb 2007 19:11:42 -0000	1.4
+++ players/button.inc	30 Jul 2007 21:58:58 -0000
@@ -46,7 +46,7 @@
   $options['song_title'] = check_plain($node->audio_tags['title']);
 
   $url = base_path() . drupal_get_path('module', 'audio') .'/players/button.swf';
-  $flashvars = drupal_query_string_encode($options);
+  $flashvars = audio_query_string_encode($options);
   
 $output = <<<EOT
 <object type="application/x-shockwave-flash" data="$url" width="17" height="17">
@@ -59,4 +59,4 @@
 EOT;
 
   return $output;
-}
\ No newline at end of file
+}
Index: players/xspf_extended.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/audio/players/xspf_extended.inc,v
retrieving revision 1.4
diff -u -r1.4 xspf_extended.inc
--- players/xspf_extended.inc	14 Feb 2007 19:11:42 -0000	1.4
+++ players/xspf_extended.inc	30 Jul 2007 21:58:58 -0000
@@ -35,7 +35,7 @@
 
 function audio_xspf_extended_player($options) {
   $url = base_path() . drupal_get_path('module', 'audio') .'/players/xspf_extended.swf';
-  $flashvars = drupal_query_string_encode($options);
+  $flashvars = audio_query_string_encode($options);
 
 $output = <<<EOT
 <object type="application/x-shockwave-flash" data="$url" width="350" height="153">
Index: players/xspf_slim.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/audio/players/xspf_slim.inc,v
retrieving revision 1.4
diff -u -r1.4 xspf_slim.inc
--- players/xspf_slim.inc	14 Feb 2007 19:11:42 -0000	1.4
+++ players/xspf_slim.inc	30 Jul 2007 21:58:58 -0000
@@ -36,7 +36,7 @@
 function audio_xspf_slim_player($options) {
 
   $url = base_path() . drupal_get_path('module', 'audio') .'/players/xspf_slim.swf';
-  $flashvars = drupal_query_string_encode($options);
+  $flashvars = audio_query_string_encode($options);
 
 $output = <<<EOT
 <object type="application/x-shockwave-flash" data="$url" width="400" height="15">
