summaryrefslogtreecommitdiff
path: root/modules/organize/js
diff options
context:
space:
mode:
authorTim Almdal <tnalmdal@shaw.ca>2010-02-09 08:23:43 -0800
committerTim Almdal <tnalmdal@shaw.ca>2010-02-09 08:23:43 -0800
commit5e703186fbf0c0cb689fc737de7c074249361ef9 (patch)
tree5414fe15f47bc0f031f9a07e707c682c30cf738d /modules/organize/js
parentf9d00aa7429599f46e09b23e8313932ac5e186c3 (diff)
Current state of organize. works for all browsers except IE. IE no longer implodes, but dragging doesn't work. Selecting works fine, either by using the lasso or clicking. Ctrl-Click adds to the selection. The problem is that when a drag is attempted, the selection gets lost and things start falling apart.
Diffstat (limited to 'modules/organize/js')
-rw-r--r--modules/organize/js/organize.js56
1 files changed, 30 insertions, 26 deletions
diff --git a/modules/organize/js/organize.js b/modules/organize/js/organize.js
index 942e49e5..130c0f99 100644
--- a/modules/organize/js/organize.js
+++ b/modules/organize/js/organize.js
@@ -6,32 +6,30 @@
cursorAt: { left: -10, top: -10},
appendTo: "#g-organize-content-pane",
helper: function(event, ui) {
- var selected = $(".ui-draggable.ui-selected img");
- if (selected.length) {
- var set = $('<div class="g-drag-helper"></div>')
- .css({
- zIndex: 2000,
- width: 80,
- height: Math.ceil(selected.length / 5) * 16
- });
+ var selected = $(".ui-selected");
+ var set = $('<div class="g-drag-helper"></div>')
+ .css({
+ zIndex: 2000,
+ width: 80,
+ height: Math.ceil(selected.length / 5) * 16
+ });
- selected.each(function(i) {
- var row = parseInt(i / 5);
- var j = i - (row * 5);
- var o = $(this).offset();
- var copy = $(this).clone()
- .css({
- width: $(this).width(), height: $(this).height(), display: "block",
- margin: 0, position: 'absolute', outline: '5px solid #fff',
- left: o.left - event.pageX, top: o.top - event.pageY
- })
- .appendTo(set)
- .animate({ width: 10, height: 10, outlineWidth: 1, margin: 1,
- left: (20 * j), top: (row * 20) }, 500);
- });
- return set;
- }
- return null;
+ selected.each(function(i) {
+ var row = parseInt(i / 5);
+ var j = i - (row * 5);
+ var img = $("img", this);
+ var o = img.offset();
+ var copy = img.clone()
+ .css({
+ width: img.width(), height: img.height(), display: "block",
+ margin: 0, position: 'absolute', outline: '5px solid #fff',
+ left: o.left - event.pageX, top: o.top - event.pageY
+ })
+ .appendTo(set)
+ .animate({ width: 10, height: 10, outlineWidth: 1, margin: 1,
+ left: (20 * j), top: (row * 20) }, 500);
+ });
+ return set;
},
start: function(event, ui) {
@@ -138,6 +136,7 @@
},
grid_mouse_move_handler: function(event) {
+ var continue_events = true;
if ($(".g-drag-helper").length) {
var organizeData = $("#g-organize").data("organizeData");
var thumbGrid = $("#g-organize-microthumb-grid");
@@ -173,8 +172,13 @@
.data("drop_position", {id: $(item).attr("ref"),
position: organizeData.rtl ? !before : before});
thumbGrid.append(set);
+ if ($.browser.msie) {
+ $(".g-drag-helper").offset({top: event.pageY, left: event.PageX});
+ event.preventDefault();
+ continue_events = false;
+ }
}
- return true;
+ return continue_events;
},
/**