Page 1 of 1

Ryanair - Find your flight - One way does not work

Posted: Mon Jul 27, 2015 2:45 pm
by Ryanstress
Hi everybody,

I have a problem with noscript and the ryanair site:

On the initial page in the box on the right side: Find your flight
When I click on "One Way" with noscript enabled nothing happens. Usually the return date should vanish for "One Way". The result is that I have to disable noscript completly in order to be able to book a one way flight. I've tried all possible settings in the noscript settings, but nothing seems to work. Only if I deactivate noscript completly it works.

Is there anything I missed.

Thanks for your help,
Jens

Re: Ryanair - Find your flight - One way does not work

Posted: Mon Jul 27, 2015 2:53 pm
by barbaz
When it fails, do you see anything related in the Browser Console? (Ctrl-Shift-J)
(if you don't know what's related, turn off CSS warnings and post everything else you see)

Re: Ryanair - Find your flight - One way does not work

Posted: Mon Jul 27, 2015 3:08 pm
by Ryanstress
Hi barbaz,

the only thing I see, when I open www.ryanair.com and then click on "One Way" is this:

ReferenceError: jQuery is not defined jquery.columnizer.js:1:1
TypeError: e is not a function analytics.js:1:3156
TypeError: n is not a function appCore.js:5:59329
Error: Load timeout for modules: backbone,backbone.deepmodel
http://requirejs.org/docs/errors.html#timeout require.min.js:8:195

Cheers,
Jens

Re: Ryanair - Find your flight - One way does not work

Posted: Mon Jul 27, 2015 3:16 pm
by barbaz
Ryanstress wrote:ReferenceError: jQuery is not defined jquery.columnizer.js:1:1
That's almost certainly the related message... the next step is to find out where jQuery is trying to be loaded from and why it's not loading...
Can you install JSView, then go to Page Info (I think it's Ctrl+I but not sure) > Scripts, and look at the list of scripts on the page and post any of those URLs that containing "jquery"? Especially anything for which a size isn't listed (meaning, it's not in cache, and it probably didn't load).

Re: Ryanair - Find your flight - One way does not work

Posted: Mon Jul 27, 2015 3:19 pm
by barbaz
Also, may or may not be related to the failure to load jQuery, but you have an odd UA string...

Code: Select all

Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:39.0; WIA enabled) Gecko/20100101 Firefox/39.0
What's that "WIA enabled"?

Think it'd be worth plugging this (much more common) UA string in to rule out any possible user-agent related issues?

Code: Select all

Mozilla/5.0 (Windows NT 6.1; WOW64; rv:39.0) Gecko/20100101 Firefox/39.0
To set it:
go to about:config
if you haven't already got a general.useragent.override pref:
- right-click > new > string
- name: general.useragent.override
set value as the UA string I posted above

Re: Ryanair - Find your flight - One way does not work

Posted: Mon Jul 27, 2015 4:09 pm
by Ryanstress
The UA string is overwritten by my companies settings and is not the cause for the failure, at home I experiance the same error.

I have uptadetd my java version to the latest, but this had no effect - same behaviour.

I couldn't find JSView so instead I installed Phoenix -> when I rightclick, on the ryanairbox that doesen't work, and start Phoenix I get the used scripts displayed, but what does that help in tracking the error?

Again here is the output of the browser console, with and wthiout noscript enabled:

With noscript:
--------------
TypeError: n is not a function appCore.js:5:59329
ReferenceError: jQuery is not defined jquery.columnizer.js:1:1
TypeError: e is not a function analytics.js:1:3156
Error: Load timeout for modules: backbone,backbone.deepmodel
http://requirejs.org/docs/errors.html#timeout

Without noscript:
-----------------
getPreventDefault() sollte nicht mehr verwendet werden. Verwenden Sie stattdessen defaultPrevented. jquery-1.10.2.min.js:4:0

Cheer,
Jens

Re: Ryanair - Find your flight - One way does not work

Posted: Mon Jul 27, 2015 4:22 pm
by barbaz
Ryanstress wrote:I have uptadetd my java version to the latest, but this had no effect - same behaviour.
Does the site require Java?
(Java and JavaScript are two *totally* different things.)
Ryanstress wrote:I couldn't find JSView
It's only available from the link I posted (IOW, not on AMO so you won't find it in the addons manager search either).
But never mind, I think you may have given me enough information to give you *a* solution (but a less than ideal one, as I'll explain in a moment)
Ryanstress wrote:getPreventDefault() sollte nicht mehr verwendet werden. Verwenden Sie stattdessen defaultPrevented. jquery-1.10.2.min.js:4:0
Well, you can set up a surrogate script for jquery-1.10.2.min.js as follows:
1) Download jquery-1.10.2.min.js from, say, http://ajax.aspnetcdn.com/ajax/jQuery/j ... 0.2.min.js
2) Set up NoScript to use it as a surrogate
about:config
right-click > new > string
name

Code: Select all

noscript.surrogate.jquery_1_10_2.replacement
value is a file: URL pointing to the downloaded script (if you don't know it: open the script in your browser, then copy&paste the file: URL from the address bar)

right-click > new > string
name:

Code: Select all

noscript.surrogate.jquery_1_10_2.sources
value:

Code: Select all

^https?://.*/jquery-1.10.2.min.js
This should get it working, but it feels to me like a major kludge. Are you REALLY sure this same error happens when ALL sites in the NoScript menu are Allowed and there is nothing in Untrusted?

Re: Ryanair - Find your flight - One way does not work

Posted: Wed Nov 04, 2015 10:17 am
by stevoo
I have the same issue, but discovered that Ryanair's website is not responding as normal when skipping through start and destination. At some stage, the number of passengers should be asked for, but it is not there. Neither can I change the website's display language.
It only works when the Add-on NoScript is completely deactivated. It doesn't help just to allow scripts generally.

I repeated what was suggested above and in my case the log shows one error:
TypeError: this.$el.find(...).jScrollPane is not a function dropdown.view.js:1:958

I turned on the other logs and found this just above the error message:

"GET http:// cdnjs.cloudflare.com/ajax/libs/jScrollPane/2.0.14/jquery.jscrollpane.min.js [HTTP/1.1 404 Not Found 0ms]"

[comment:Here I had to insert a space before cdnjs to prevent it becomes a shortened hyperlink. This space is not in the original log.]

I believe these are related? Does the message "[HTTP/1.1 404 Not Found 0ms]" tell me that this function cannot be defined, hence the error? But how would that be caused by NoScript, when Cloudflare is allowed or all scripts are allowed?

Regards,
Stevoo

Re: Ryanair - Find your flight - One way does not work

Posted: Wed Nov 04, 2015 2:46 pm
by barbaz
Yep, you need to find jquery.jscrollpane.min.js (version 2.0.14, preferably, but it may not hurt to have a minor update) from some other site that you trust and set it up as a file: URL surrogate as above.

EDIT Here is jscrollpane's official site: http://jscrollpane.kelvinluck.com/#download
stevoo wrote:[comment:Here I had to insert a space before cdnjs to prevent it becomes a shortened hyperlink. This space is not in the original log.]
Post your logs in code tags and that forum bug won't affect them.

Code: Select all

this is an example of code tags

Re: Ryanair - Find your flight - One way does not work

Posted: Fri Nov 06, 2015 11:56 am
by stevoo
Thanks!
I would like to confirm that your solution is working, but it seems that Ryanair has removed the "jquery" lines anyway. Nothing in the protocol when opening their website, so their website works for me even without adding those surrogates.