I've upgraded our site to jQuery 1.3.1 and have noticed some pretty large problems in the UI now. Please report your findings here so we can start to figure out what we need to fix.

Support from Acquia helps fund testing for Drupal Acquia logo

Comments

davidburns’s picture

have you taken out all the '@' references in the ajax.js and ajax_view.js?
I took these out, and while it didn't solve all the issues I was experiencing it made it a little easier to work with.

sirkitree’s picture

Yes, I did do this, and while it helped, there still some bugginess going on. I'll post screenshots as I come across them.

sirkitree’s picture

Version: 6.x-2.x-dev » 6.x-2.2
FileSize
2.57 KB

Here's a patch that takes care of the selectors.

sirkitree’s picture

Another bug is try to resort elements, but this has to do with tabledrag. Anyone interested my also want to check out #350275: Update to jQuery 1.3.2.

m3avrck’s picture

This patch could actually be applied to the current views 2 that works with jQuery 1.2.6 in Drupal 6 core. Those selectors were deprecated long ago so I believe this patch works with both jQuery 1.2.6 and 1.3.2.

merlinofchaos’s picture

#4 committed. I'm leaving this open as I have no idea if that's all that needs to be done or not.

jcmarco’s picture

Tested with JQuery 1.3.2 in #358082: jQuery 1.3 in Drupal 6.x
and working fine

markus_petrux’s picture

tableDrags in views don't work very well, at least in Firefox3 and IE6. We're running latest 6.x-2.x-dev snapshot of jquery_update module. tableDrags were working ok a few days before, so I believe it is related.

Maybe someone else can confirm if drag'n'drop operations in views UI (reordering fields, etc.) work or not?

jcmarco’s picture

Good catch!

You are right there is an error when dragging:
Node cannot be inserted at the specified point in the hierarchy" code: "3

The same error reported here:
#350275: Update to jQuery 1.3.2

I will investigate more in the existing issue, but it looks like to be the same.

sirkitree’s picture

It is a _little_ wonky. You can click an item and drag it, but upon release it sticks to your cursor and keeps dragging. I you have to click for it to release. Only seeing this with table drag in views ui though, not core.

jcmarco’s picture

Status: Active » Needs review

This issue is fixed with #452376: jQuery 1.3.x (Problem replacing modified version of tabledrag.js)

The problem is that the jquery_update is not replacing the tabledrag.js script for the new one backported from Drupal 7.x.

merlinofchaos’s picture

Status: Needs review » Fixed

needs review indicates there is a patch. Though it looks like all of Views' .js is 1.3 compatible at this point, so marking the issue fixed.

jcmarco’s picture

Status: Fixed » Needs work

Not yet, I am afraid that the issue with tabledrag.js is still affecting the views ordering forms.
Probably the best it is leaving this issue still open, as it is affecting to views, or assigning the issue to the jquery update project.

mugginsoft.net’s picture

subscribing

mr.andrey’s picture

subscribing...

madlee’s picture

using 1.3.2 jquery and the views page once you are in edit mode, creates a white screen (not a WSOD) which has the out put written across the screen.

views works with 1.2.6.

kmonty’s picture

Status: Needs work » Closed (duplicate)
markus_petrux’s picture

Status: Closed (duplicate) » Needs review

Sorry to bump this issue, but there is still a problem with tableDrag that causes mouseup event to fail and it appears that the drag'n'drop handle can only be released clicking it twice. The problem lives in the redefinition of Drupal.theme.tableDragChangedWarning included at the end of views/js/ajax.js. It can be fixed like this:

 /**
  * Get rid of irritating tabledrag messages
  */
 Drupal.theme.tableDragChangedWarning = function () { 
-  return ' '; 
+  return '<div></div>'; 
 }

Explanation:

This function is invoked as follows from tabledrag.js:

$(Drupal.theme('tableDragChangedWarning')).insertAfter(self.table).hide().fadeIn('slow');

Since Views ajax redefines the function to return nothing, there's nothing to inserted to the DOM, hence the jQuery methods invoked after $(Drupal.theme('tableDragChangedWarning')) fail, and this aborts processing of the mouseup event handler.

jcmarco’s picture

Tested and working fine.
Without jquery_update there is no issues and with patches for jquery_update #452376: jQuery 1.3.x (Problem replacing modified version of tabledrag.js), everything work great.

Congratulations to @markus_petrux! You solved what I had as the last pending issue in http://drupal.org/node/358082#comment-1493246,
hopefully with this views patch and jquery_update patch we could start migrating to jquery 1.3.2 without known issues.

kmonty’s picture

Confirmed the fix works in Safari and Firefox.

Anyone test with/without jquery_update in IE?

jcmarco’s picture

I have tested it with IE7 and dragging arguments in Views is working fine with #452376: jQuery 1.3.x (Problem replacing modified version of tabledrag.js) and @markus_petrux fix in #18.
Both ways, with jquery_update enable and disable.
Probably @markus_petrux could release a patch for views

markus_petrux’s picture

Attached patch against Views HEAD.

kmonty’s picture

Status: Needs review » Reviewed & tested by the community
merlinofchaos’s picture

Version: 6.x-2.2 » 7.x-3.x-dev
Status: Reviewed & tested by the community » Patch (to be ported)

Committed to 2.x and 3.x versions for D6. Doesn't apply to D7; I'm not sure if this is necessary in D7 or not. Marking for further evaluation.

dawehner’s picture

Drupal Core has now views ui, so it would be a problem with drupal-core.

If i apply this patch, it does not show anymore, that the draggedItem changed. But currently the tableDrag has a minor bug. If you drop a item, you are still in drag-mode.

seutje’s picture

FileSize
510 bytes

a space errors and an empty div is a bit silly, causing DOM manipulation that is fairly useless, and a little testing proved that the following all errors in 1.3.2 because they effectively resolve to the body, which obviously can't be inserted before anything inside the body:

  Drupal.theme.tableDragChangedWarning = function () {
    return; // undefined
  }
  Drupal.theme.tableDragChangedWarning = function () {
    return null; // null
  }
  Drupal.theme.tableDragChangedWarning = function () {
    return ''; // Empty string
  }

so I'd like to propose the following:

  Drupal.theme.tableDragChangedWarning = function () {
    return [];
  }

which I understand makes it die fairly early on and rather painlessly with no DOM manipulation at all

attached patch is against DRUPAL-7--3 (which I hope is the right one)

dawehner’s picture

Status: Patch (to be ported) » Needs review

update status

dawehner’s picture

Status: Needs review » Fixed

fixed.

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for 2 weeks with no activity.

priyanka.salunke’s picture

hey can u tell me to upgrade jquery to jQuery Update 2.x (which includes jQuery 1.3.x)

i got patch files bt i dnt hv any idea where to plce this code to which file i hv to update
.which file i hv to update plz give me a detail step by step procedure to update my jquery

operations’s picture

#18 Markus: YOU SAVED MY LIFE !! 1 week of debugging with no result for this newly created issue:
Outline designer module with jquery update 1.3.2 [drag & drop issue]

By the way I found the same function in the Outline Designer module (/script/script.js) and changed it as you mentioned above:

/**
 * Get rid of tabledrag messages about needing to save
 */ 
Drupal.theme.tableDragChangedWarning = function () { 
  //return ' '; 
  return '<div></div>';
};

& it worked brilliantly !
Thanks a lot..