Index: lams_central/web/includes/javascript/groupDisplay.js =================================================================== RCS file: /usr/local/cvsroot/lams_central/web/includes/javascript/groupDisplay.js,v diff -u -r1.13 -r1.14 --- lams_central/web/includes/javascript/groupDisplay.js 2 Mar 2012 18:41:52 -0000 1.13 +++ lams_central/web/includes/javascript/groupDisplay.js 8 May 2012 18:39:08 -0000 1.14 @@ -14,7 +14,6 @@ jQuery("span.j-group-icon", element).html(""); } toggleGroupContents(element, stateId); - registerToolTip(element); jQuery(element).css("display", "block"); jQuery("a[class*='thickbox']",element).each(function(){ tb_init(this); @@ -75,7 +74,6 @@ }, success: function(html) { jQuery(courseBg).append(html); - registerToolTip(this); // unregister and re-register thickbox for this group in order to avoid double // registration of thickbox for existing elements (i.e. group 'add lesson' link) $('a.thickbox'+jQuery(courseBg).attr("id")).unbind("click"); @@ -84,21 +82,6 @@ }); } - function registerToolTip(element) { - jQuery("a.disabled-sequence-name-link, a.sequence-name-link", element).ToolTip({ - className: 'sequence-description-tooltip', - position: 'mouse', - delay: 300 - }); - jQuery("a.disabled-sequence-name-link, a.sequence-name-link", element).each(function(i, element) { - var title = jQuery(element).attr("title"); - if (title!=null) { - var newTitle = title.replace(/\r\n/g,"
").replace(/\n/g,"
") - jQuery(element).attr("title", newTitle); - } - }); - } - function initMoreActions(element) { var id = jQuery(element).attr("id"); @@ -110,26 +93,27 @@ $("ul[id^=more-actions-list-]:visible:not(" + ulSelector + ")").slideUp("fast"); // show this menu - $(ulSelector).css("top", $(this).position().bottom); - $(ulSelector).css("left", $(this).position().left); + $(ulSelector).css("top", $(this).position().top + this.offsetHeight); + $(ulSelector).css("left", $(this).position().left); $(ulSelector).slideToggle("fast"); return false; }); $(window).resize(function(){ - $(ulSelector).css("top", $(menuSelector).position().bottom); + if ($(menuSelector).length == 0) return; + + $(ulSelector).css("top", $(menuSelector).position().top + $(menuSelector).offsetHeight); $(ulSelector).css("left", $(menuSelector).position().left); }); - } function makeOrgSortable(orgId) { var org = jQuery("div.course-bg#"+orgId); if (jQuery("div.j-lessons", org).size() > 0) { var jLessons = jQuery("div.j-lessons#"+orgId+"-lessons"); - var jLessonsTable = jQuery("table.lesson-table",jLessons); + var jLessonsTable = jQuery("table.lesson-table tbody",jLessons); makeSortable(jLessonsTable, "j-single-lesson"); - jQuery("div.j-subgroup-lessons>table.lesson-table", org).each(function() { + jQuery("div.j-subgroup-lessons>table.lesson-table tbody", org).each(function() { makeSortable(jQuery(this), "j-single-subgroup-lesson"); }); jQuery("div.mycourses-right-buttons", jLessons).html(""); @@ -146,7 +130,7 @@ if (link.html().indexOf(getSortingEnabledText()) >= 0) { jLessonsTable.SortableDestroy(); link.html(""); - jQuery("div.j-subgroup-lessons>table.lesson-table", this).each(function() { + jQuery("div.j-subgroup-lessons>table.lesson-table tbody", this).each(function() { jQuery(this).SortableDestroy(); }); } @@ -155,21 +139,29 @@ } function makeSortable(element, acceptClass) { - jQuery(element).Sortable({ - accept: acceptClass, - axis: "vertically", - containment: [jQuery(element).offset().left, - jQuery(element).offset().top, - jQuery(element).width(), - jQuery(element).height()], - onStop: function() { - var ids = []; - jQuery(this).siblings("tr").each(function(i, element) { - ids.push(element.id); - }); + jQuery(element).sortable({ + axis: "y", + delay: 100, + tolerance: 'pointer', + helper: function(e, tr) { + var $originals = tr.children(); + var $helper = tr.clone(); + $helper.children().each(function(index) { + // Set helper cell sizes to match the original sizes + $(this).width($originals.eq(index).width()) + }); + return $helper; + }, + forceHelperSize: true, + forcePlaceholderSize: true, + containment: 'parent', + stop: function() { + var ids = jQuery(this).sortable('toArray'); + var jLessonsId = jQuery(this).parents("div[class$='lessons']").attr("id"); var dashIndex = jLessonsId.indexOf("-"); var orgId = (dashIndex>0 ? jLessonsId.substring(0, dashIndex) : jLessonsId); + jQuery.ajax({ url: "servlet/saveLessonOrder", data: { @@ -181,6 +173,6 @@ } }); } - }); + }).disableSelection();; } //--> \ No newline at end of file