Support for Drupal 7 is ending on 5 January 2025—it’s time to migrate to Drupal 10! Learn about the many benefits of Drupal 10 and find migration tools in our resource center.
jquery_update module before needs to upgrade to JQuery 1.4 : #685060: Get ready for 1.4
jquery_ui could then upgrade to JQuery UI 1.8 : http://docs.jquery.com/UI/Changelog/1.8
Comment | File | Size | Author |
---|---|---|---|
#70 | 749126-70-jquery-1.8-with-dependencies-support.patch | 2.52 KB | hanoii |
#68 | 749126-68-jquery-1.8-with-dependencies-support.patch | 2.54 KB | hanoii |
#49 | jquery_ui_dependencies_2.patch | 2.39 KB | corey.aufang |
#48 | jquery_ui_dependencies.patch | 2.36 KB | corey.aufang |
#45 | jquery-ui-dependencies-v2.patch | 1.71 KB | southweb |
Comments
Comment #1
Bobuido CreditAttribution: Bobuido commentedThe DL URL in the README.TXT
http://code.google.com/p/jquery-ui/downloads/list?can=3&q=1.6
Appears to be broken. Search result returned nothing. I had a copy of 1.6 as I'd recently downloaded it but wondered if 1.8 could be used with the current stable Drupal module
Guess it's coming :)
Comment #2
Bobuido CreditAttribution: Bobuido commentedJust spotted the bit in the README.TXT after the URL
Seems you can upgrade to 1.7 but you need jquery_update
See README.TXT for details
Comment #3
RobLoach#685060: Get ready for 1.4
Comment #4
joelstein CreditAttribution: joelstein commentedjQuery UI 1.6 can be found here:
http://code.google.com/p/jquery-ui/downloads/list
Comment #5
FiNeX CreditAttribution: FiNeX commentedDoes exist any plan about the upgrade to the new 1.8 version? Thanks!
Comment #6
BoogieBug CreditAttribution: BoogieBug commentedjQuery UI 1.8 package put a prefix 'jquery.ui' in front of all files. Right now, the new names are in the format of "jquery.ui..js" rather than the existing "ui..js". If version 1.8 is critical for you, patching the jquery_ui module by put 'jquery.' prefix to the file name in lines: 63, 70 and 75 would be a work-around for this issue.
Comment #7
bmcmurray CreditAttribution: bmcmurray commentedjQuery UI 1.8.4 only requires jQuery 1.3.2+.
Comment #8
bmcmurray CreditAttribution: bmcmurray commentedAttached is a patch for jquery_ui.module that adds in a version check. If you are using jQuery UI 1.8.x, the naming convention of the files changed from ui.component to jquery.ui.component. This patch will let the module work with older versions of jQuery UI but also supports the 1.8.x release.
Comment #9
imclean CreditAttribution: imclean commented#8 works for me, thanks bmcmurray.
Comment #10
broucaries CreditAttribution: broucaries commentedI use patch 8 but it will be nice if we could use another means to detect version than parsing a txt file (taht is absent on debian).
jquery.ui.version variable has the correct version.
Bastien
Comment #11
domineaux CreditAttribution: domineaux commentedHere is a link when using Drupal 6 and using later version of jquery ui
http://acquia.com/node/1183045
Comment #12
imclean CreditAttribution: imclean commentedBastien, the jQuery UI package includes the file version.txt. Download it from http://jqueryui.com/
In this case, querying jquery.ui.version won't work because the version of jQuery UI needs to be known before it can be loaded.
Comment #13
dreadlocks1221 CreditAttribution: dreadlocks1221 commentedEdit: Solved my issue
Comment #14
neochief CreditAttribution: neochief commentedHere's the complete patch, which supports all versions with maximum compatibility. I guess this should be commuted very soon, as there are ton of complaining issues regarding this problem. Patch forks for both 6.x and 7.x
Comment #15
recrit CreditAttribution: recrit commentedNaming convention is not the only change from 1.7 to 1.8.
There are new dependencies in 1.8 for some widgets, for example slider.
jquery.ui.slider.js
http://jqueryui.com/demos/slider/
- jquery.ui.mouse.js
- jquery.ui.widget.js
Comment #16
bmcmurray CreditAttribution: bmcmurray commentedI don't believe that jquery_ui_add() ever did anything to account for the specific requirements of widgets like the slider, that has always been the responsibility of the implementor to make sure that all widget requirements are provided. If there are other contrib modules that require the jQuery UI module, patches should be submitted to their modules that also implement a similar check of the jQuery UI version and provide the different widget requirements. (For instance, see: http://drupal.org/node/881472 and http://drupal.org/node/893526)
Comment #17
recrit CreditAttribution: recrit commentedIf the path is to push onto the developers to detect the version of the jquery ui that has been installed on the site, then at least a comment in the README should be added.
"if using 1.8.x, it is not a drop in replacement for 1.7.x since new dependencies have been created for certain widgets. The developer should ensure that they add all necessary files per http://jqueryui.com/docs/Developer_Guide."
For example:
1.7.x:
jquery_ui_add(array('ui.slider'));
1.8.x
jquery_ui_add(array('ui.widget, 'ui.mouse', 'ui.slider'));
Comment #18
neochief CreditAttribution: neochief commentedWell, id does nothing with checking versions for other plugins. You have everything to do it manually, and in my opinion specific plugins should do it.
Comment #19
mattiasj CreditAttribution: mattiasj commentedsubscribe
Comment #20
neochief CreditAttribution: neochief commentedCan somebody just test the patch?
Comment #21
broucaries CreditAttribution: broucaries commentedI have tested the patch and it work
Comment #22
neochief CreditAttribution: neochief commentedAwesome, thank you!
Comment #23
AdrianB CreditAttribution: AdrianB commentedSubscribing.
Comment #24
gausarts CreditAttribution: gausarts commentedSubscribing. Thanks
UPDATE: So far so good. Patch #14, jquery 1.4, jquery 1.8.5, core patch http://drupal.org/node/479368#comment-3198886, and somewhere for tabledrag.js patch. No panel tested. Views fine, imagecrop still testing. Thanks
UPDATE2: Imagecrop was dropped. Just found random warnings due to wrong files names (note: .js.min.js, etc):
Comment #25
drewish CreditAttribution: drewish commentedPerhaps it should be outside the scope of this issue but the current patch doesn't handle adding CSS files.
Comment #26
drewish CreditAttribution: drewish commentedI feel like trying to move all these individual patches in the issue queue isn't very productive so I've applied this and several others to a github repo:
http://github.com/drewish/jquery_ui
I'd love feedback if anyone has time to test it.
Comment #27
YK85 CreditAttribution: YK85 commentedHi,
I am very new at this so I apologize if this is an obvious question.
Currently, am I not suppose to use jQuery UI 1.8.1 (http://blog.jqueryui.com/2010/05/jquery-ui-181/) folder?
Thanks!
Comment #28
boabjohn CreditAttribution: boabjohn commentedHey there drewish, thanks for the github fork. Looks like it could be very useful.
Would love to test, but the readme is for last version, and there's no install txt so it's hard to get oriented.
My situation: (D6.19 unpatched)
1. Latest jquery_update is installed
2. Delete the existing version of jquery_ui
3. Unpacked your fork into sites/all/modules and renamed it to jquery_update
4. Uploaded jquery library (1.84) and renamed directory to jquery.ui
5. Shifted the contents of /development_bundle/ to jquery.ui, so I have this path:
#drupal/sites/all/modules/jquery_ui/jquery.ui/jquery-1.4.2.js
So far so good. I don't know how to test for functionality. The one obvious thing that happens is Date Popup claims there is no jquery.ui available:
What other feedback would be useful to you?
Comment #29
gausarts CreditAttribution: gausarts commentedTesting pressflow with jquery 1.4 + jquery_ui 1.8.5. Pressflow doesn't seem to complain so far.
Comment #30
Cyberflyer CreditAttribution: Cyberflyer commented@boabjohn:
You have created one directory too many.
Instead of :
#drupal/sites/all/modules/jquery_ui/jquery.ui/jquery-1.4.2.js
You should have:
#drupal/sites/all/modules/jquery_ui/jquery.ui/ <= with the contents of jquery UI that you downloaded.
For instance:
#drupal/sites/all/modules/jquery_ui/jquery.ui/ui/jquery.ui.all.js
The secret is to get all the javascript in the directory:
#drupal/sites/all/modules/jquery_ui/jquery.ui/ui/
Then clear all your caches and run cron.
Make sense?
Comment #31
corey.aufang CreditAttribution: corey.aufang commentedThe copy on github looks good except for jQuery UI dependencies.
If you call
jquery_ui_add('ui.button');
you're going to get a JS error because button needs ui.widget to also get loaded.Similar to how ui.core gets automatically loaded, we need to do that for ui.widget as well.
Comment #32
HongPong CreditAttribution: HongPong commentedsubscribe
Comment #33
dway CreditAttribution: dway commentedsubscribing
Comment #34
VM CreditAttribution: VM commentedDrewish
Per #26
I just tried testing what is in github and was returned this error:
Comment #35
Tommy Kaneko CreditAttribution: Tommy Kaneko commentedI just wanted to save time for others like myself who didn't realise that the order in which you call the plugins in jquery_ui_add() is critical if you are using jquery ui 1.8, because of the dependencies.
The following order worked for me, but you will have to look at the dependencies of each plugin to figure out the order in which they need to be called.
If you don't call them in the right order, then you get silly '$.widget is not a function' errors.
Can't believe I wasted 2 hours on it!
Comment #36
corey.aufang CreditAttribution: corey.aufang commentedFor jQueryUI, I noticed that the dependencies are listed at the top of the actual .js files.
We could add functionality that would look at the top of the file for the listed dependencies, and automatically include them.
Now we wouldn't want to scan the files every time, so we would want to cache this data to a variable or something.
Is there any gaping hole in my idea?
*The dependencies also appear to be in the correct order.
Comment #37
orangeudav CreditAttribution: orangeudav commentedSubscribing
Comment #38
thijsvdanker CreditAttribution: thijsvdanker commentedsubscribing
Comment #39
corey.aufang CreditAttribution: corey.aufang commentedBase on my comment at #749126-36: JQuery Plugin 1.8 is out here is a patch that detects the dependencies of a file and automatically loads them in the correct order.
This also removes explicit inclusion of ui.core and effects.core as they are now automatically included if required.
This is run against latest dev.
Comment #40
corey.aufang CreditAttribution: corey.aufang commentedOops, forgot to change status.
Comment #41
BoogieBug CreditAttribution: BoogieBug commentedthe regular expression used in patch #39 to extract the dependencies those are listed on the top file each jQuery UI file is in greedy mode, therefore, generate error on the JS files those contains the multi-line comments (/* .. */) in other part of file rather than just the header. (jquery.ui.draggable.js - for example)
To fix this, I changed the 1st regexp in the patch from:
to
Comment #42
BoogieBug CreditAttribution: BoogieBug commentedSince I applied the patch in #39 to the version 6.x-1.4 (not the dev version), I also need to changed the 2nd regexp from:
to
And everything seem working very well, though testing is still needed.
Comment #43
that0n3guy CreditAttribution: that0n3guy commentedDoing 41 and 42 give me errors like:
I don't get errors just using patch 39 with 1.4.
Comment #44
southweb CreditAttribution: southweb commentedWell, I've been holding for a while to see where this goes, but dived in and wasted a few hours hacking today.
My experience with the above is that jqueryui-1.8 patch (#14) is not compatible with the dependencies patch (#39)
I can't successfully patch the dev module with both, regardless of the order.
Would love to see a dev version of this module that supports both 1.8 and dependencies ...?
thanks.
Comment #45
southweb CreditAttribution: southweb commentedOk, so here's my attempt to update the dependency patch to support v1.8.
Comment #46
corey.aufang CreditAttribution: corey.aufang commentedI'm going to be throwing together a patch that will incorporate the 1.8 compatibility and the dependencies patch, along with storing the dependencies in cache, since it seems a waste of cycles to parse every file each time.
I can't work on this right now but hopefully later today.
Comment #47
NancyDruAFAIC, if the module expects a specific plug in, then it should be included with the module download. IF this is a stupid licensing problem, then the Drupal Association should be working on how to get the licenses for "free, publicly available software" to cooperate.
Comment #48
corey.aufang CreditAttribution: corey.aufang commentedHere is my patch. It includes checking for the version of jQuery UI, dependencies and dependencies caching using the Drupal caching mechanism to reduce the number of file parses per page load.
DONT USE, I screwed up on the patch.
Comment #49
corey.aufang CreditAttribution: corey.aufang commentedFixed patch.
Run against dev.
Comment #50
HongPong CreditAttribution: HongPong commentedHey question on this, is this the tweak needed for Selenium testing to work with jquery (more ARIA compatibility)? They said at the drupalcon session on automated testing (with merrill) just now that there's a patch up to 1.8 which makes selenium better, is this the thread covering that issue?
Comment #51
corey.aufang CreditAttribution: corey.aufang commentedThis issue was originally about how to make the jQuery UI module work with ver 1.8 of the jQuery UI library.
In the change from 1.7.x -> 1.8.x of the jQuery UI library, they changed the name format of their files from
ui.<plugin>.js
to
jquery.ui.<plugin>.js
Now if the issue that you mentioned is for the D6 version of the Selenium module, and it requires jQuery UI 1.8+, then it might make sense to use this patch.
If your using D7, jQuery UI 1.8.7 is bundled already with Drupal.
Comment #52
southweb CreditAttribution: southweb commentednice. I never knew about version_compare().
thanks for this.
Comment #53
corey.aufang CreditAttribution: corey.aufang commentedDoes the patch in #49 work for anyone else?
I could see this patch removing some frustration that users experience while working with jQuery UI.
Comment #54
enboig CreditAttribution: enboig commentedI had to apply it "manually" (don't know why netbeans don't apply it correctly).
It appear to work, despite datepicker using module date popup has lost its format.
Comment #55
enboig CreditAttribution: enboig commentedAfter more checking I found now datepicker isn't using my locale (non English user) when using date. I am trying to make jquery_ui.module to check if a "js" translated file exists and then load it. The file is loaded, but datepicker is still in english. any hint? I add my code just after drupal_add_js($js_path); (when the js file is loaded)
Comment #56
ericbroder CreditAttribution: ericbroder commentedThe patch at #749126-49: JQuery Plugin 1.8 is out worked for me, although I'm using 6.x-1.4 (not the dev version) so the first hunk failed and I had to apply that manually.
I'm using jQuery UI module because it's a requirement for the Inline Context Editor feature in Context module 6.x-3.0. I was interested in upgrading the jQuery UI plugin to 1.8.11 because that's the version used in CiviCRM 3.4, and I was having a javascript conflict error, "uncaught exception: Syntax error, unrecognized expression: . ", with the CiviCRM drag and drop dashboard: http://forum.civicrm.org/index.php?topic=18365.0
Here's what worked for me:
- Install and enable jQuery Update 6.x-2.0-alpha1.
- Patch jQuery UI module 6.x-1.4 with #749126-49: JQuery Plugin 1.8 is out.
- Install jQuery UI plugin 1.8.11 inside of jQuery UI module, replacing previous version.
This appears to have resolved the jQuery UI plugin conflict between Drupal and CiviCRM. After doing the steps above, Inline Context Editor works and so does CiviCRM drag and drop dashboard.
Comment #57
sonicthoughts CreditAttribution: sonicthoughts commentedIs there a plan to apply this patch to a future release?
Comment #58
raystin CreditAttribution: raystin commentedmark
Comment #59
btully CreditAttribution: btully commentedsubscribe
Comment #60
ohnobinki CreditAttribution: ohnobinki commented+
Comment #61
southweb CreditAttribution: southweb commentedThe only issues I'm having now are the fact the Views UI isn't working properly and the drag and drop on the menu manager interface is broken. They work with the 3.x versions of jQuery but not 4.x Really not sure what can be done about this though.
Comment #62
ohnobinki CreditAttribution: ohnobinki commented@bluffit, you could probably use the jquery_update module and fix it to support jQuery-4.x and also fix the menu manager/View UI javascript files in jquery_update perhaps?
Comment #63
caktux CreditAttribution: caktux commentedThe patch at #749126-49: JQuery Plugin 1.8 is out also worked for me (thanks!) but haven't tested it extensively.
Comment #64
upupax CreditAttribution: upupax commentedJQuery Update, JQuery UI 1.8, patch #749126-49: JQuery Plugin 1.8 is out works fine.
Tested creating an accordion.
Comment #65
paulmckibbenJQuery Update, JQuery UI 1.8, patch at #49 works fine for me as well.
Comment #66
gaele CreditAttribution: gaele commentedComment #67
ionmedia CreditAttribution: ionmedia commentedcan you attach patch to dev or put here patched module?
Comment #68
hanoiiI have been using #49 and I found one small issue. On a general note I think the way of looking for dependencies is not the best and not sure if this will ever be consider for inclusion as it is very subject to stop working as soon as jquery ui decide to write or note dependencies in some other way.
Said this, the patch is indeed useful if you need 1.8 as I did. I did find that if either minimized or packed version if used, those files doesn't have any dependency information. Attached is a patch that always look for the dependencies in the uncompressed file regardless of what is being used.
It's a modification to #49 taken from current dev.
NOTE: I've tried this properly with 1.8.18 and 1.8.19 has just been released and the zip in google doesn't have the version.txt file used by jquery_ui to look for a supported version. You can create it and add the version but I think that won't be included any more, so eventually that has to be supported on this patch as well I'd think.
Comment #69
hanoiiComment #70
hanoiiRemoved some unneeded spaces
Comment #71
ice5nake CreditAttribution: ice5nake commentedPatch worked for me.
Created the version.txt file as mentioned. Should this patch be included the README.txt should be updated with instruction for the version.txt file as well as wording for 1.8
Side note: In the zip file I got I only wanted the contents of the "development-bundle" directory. Thought it worth noting cause it proved to be a minor delay for me.
Yay, now I have the position utility function!
Comment #72
j0rd CreditAttribution: j0rd commentedPatch #70 has a bug in it, with relation to i18n.
What you'll need to do to duplicate, is have Drupal installed with a language other than "en".
Then install date module's date_popup module and jquery_ui with patch #70.
This patch adds the prefix to jquery.ui prefix if we're above version 1.8, but it's completely valid to run a command like this with jquery_ui, like date_pop module does.
Which will then attempt to add jquery.i18n/ui.datepicker-fr , which is in-correct.
An exception needs to be made for i18n folder, or a better solution needs to be made.
Comment #73
j0rd CreditAttribution: j0rd commentedUnfortunately I can not provide a patch easily, as my jquery.ui version for the site I'm working on has been hacked to bits....but here's my fix for this particular problem.
Comment #74
hanoiiI'd go with some kind of regex replacement taht should probably work better for any subdirectory, might send a patch if I have some time, let me know if you would be able to try it out.
Comment #75
mikelutzI think it's save to close this as outdated at this point. :-)