Originally Posted by
Globaliser
I'm sorry if you think I'm being argumentative. I'm just trying to explore what the bug may be.
...
So the classes menu on the search page can and does dynamically change depending on the route typed in, even before the search has been run.
Not at all, and I apologise if I came across that way - not my intention. By 'should not' I was meaning more that there is needless complexity.
What I find a bit frustrating about this page with my 'digital' hat on (and, it must be said, some other parts of the BA website - as well as other airlines' websites) is that they're trying to be too clever. Pre-populating the drop-down with only the classes available for a route is sensible, in theory. But it means either caching the available classes for all routes/dates locally (unlikely), or dynamically retrieving this data on the fly (which uses network resources) - I've not checked which it is, but I suspect the latter. These decisions have consequences, e.g. dynamically updating menus doesn't work so well when the network connection is flaky. And the more complex you make something, the more edge-cases you create - or opportunities you make for weird anomalies to slip into your code. Especially if you're using a complex combination of first-and-third party frameworks...
By contrast, a simpler page that let you search for First, but on the results page had a clear notice "We're sorry, but First is not available on this route" or "not available on this route for these dates", showing the next best class available, would be less complex to maintain and less likely to have some of these issues...