diff --git a/application/controllers/PlaylistController.php b/application/controllers/PlaylistController.php
index f1ab7fa77..8c9cabdf3 100644
--- a/application/controllers/PlaylistController.php
+++ b/application/controllers/PlaylistController.php
@@ -164,11 +164,12 @@ class PlaylistController extends Zend_Controller_Action
public function addItemAction()
{
$id = $this->_getParam('id');
+ $pos = $this->_getParam('pos', null);
if (!is_null($id)) {
$pl = $this->getPlaylist();
- $res = $pl->addAudioClip($id);
+ $res = $pl->addAudioClip($id, $pos);
if (PEAR::isError($res)) {
$this->view->message = $res->getMessage();
diff --git a/application/views/scripts/playlist/sidebarcontent.phtml b/application/views/scripts/playlist/sidebarcontent.phtml
index b4d8a24da..17da4c602 100644
--- a/application/views/scripts/playlist/sidebarcontent.phtml
+++ b/application/views/scripts/playlist/sidebarcontent.phtml
@@ -1,5 +1,5 @@
partialCounter-1 > 0): ?>
-
+
@@ -17,5 +17,5 @@
-
+
diff --git a/public/js/airtime/library/spl.js b/public/js/airtime/library/spl.js
index 1e6d72a1d..7627d6af4 100644
--- a/public/js/airtime/library/spl.js
+++ b/public/js/airtime/library/spl.js
@@ -255,19 +255,31 @@ function setSPLContent(json) {
function addSPLItem(event, ui){
- var url, tr, id;
+ var url, tr, id, items, draggableOffset, elOffset, pos;
tr = ui.helper;
if(tr.get(0).tagName === 'LI')
return;
+
+ items = $(event.currentTarget).children();
+
+ draggableOffset = ui.offset;
+
+ $.each(items, function(i, val){
+ elOffset = $(this).offset();
+
+ if(elOffset.top > draggableOffset.top) {
+ pos = $(this).attr('id').split("_").pop();
+ return false;
+ }
+ });
id = tr.attr('id').split("_").pop();
- url = '/Playlist/add-item/format/json';
- url = url + '/id/'+id;
+ url = '/Playlist/add-item';
- $.post(url, setSPLContent);
+ $.post(url, {format: "json", id: id, pos: pos}, setSPLContent);
}
function deleteSPLItem(event){
@@ -367,8 +379,8 @@ function openDiffSPL(json) {
function setUpSPL() {
- //$("#spl_sortable").sortable();
- //$("#spl_sortable" ).bind( "sortstop", moveSPLItem);
+ $("#spl_sortable").sortable();
+ $("#spl_sortable" ).bind( "sortstop", moveSPLItem);
$("#spl_remove_selected").click(deleteSPLItem);
$("#spl_new")
.button()