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