Content not being displayed in the correct language - gwt

I am trying to make this decision on what content (Messages) to be displayed based on the useragent. Everything works correctly when I user query param, or a meta tag. it also works correctly in Firefox. In firefox I change the language from english to french, reload the page and everything comes up correctly. This is baed on the useragent. If I load the page in chrome/IE I get the default (English) only. If I set my system language to French (my other language) everything seems to work as well. Any ideas why setting the language in chrome and IE have no affect no the content? I verified the headers and the requests are being made for French content? What am I missing?
My gwt.xml file is based on the one I found here http://code.google.com/p/google-web-toolkit/source/browse/releases/2.3/user/src/com/google/gwt/i18n/I18N.gwt.xml
It was my understanding that all I needed to add was the following to my gwt.xml
set-configuration-property name="locale.useragent" value="Y"
Also I found the following Why does GWT ignore browser locale? which seems to indicate it won't work in IE but what about chrome?

See http://code.google.com/p/google-web-toolkit/issues/detail?id=4228
TL;DR: there's no reliable way of getting the info you're looking at in JavaScript, the navigator object gives you the locale of the browser (i.e. the one used for the browser's own menus et al.), not the user's language preferences (except in Firefox).
Your best bet is to use a dynamic host page and generate the appropriate <meta> on the server depending on the request headers (i.e. content negotiation).

Related

polylang plugin shows all site pages on one page when switching to second language

I am trying to switch to a second language using polylang plugin in my Wordpress test site.
I don't have relevant code to show, I haven't identified problem code associated with this error.
What I expect is to find myself on the Home page equivalent in the second language no matter which English page I was on previously.
Instead I am taken to the Spanish version of the About page, not Home page equivalent. Also, the page content is made up of not just that page's content but all of the content from every page on the site is stacked on top of each other - including old versions of pages.
If I subsequently click on the Spanish menu which displays as expected, the next page displays perfectly. When I click back to the About page (the page previous acting as a site catch-all) everything is as it should be. So the problem only manifests on the initial switch to a second language.
Switching back to English does not cause the problem to reoccur, everything is fine in this case. It is only when initially switching from English (site primary language) to Spanish that the problem occurs.
I am using the 'X' Wordpress theme for this 'local' version of my site. My Wordpress & free polylang versions are up to date.
Any help with this problem would be much appreciated.
Thanks, Brent.
I have come up with a solution for my problem.
This isn't the most elegant solution but I need something that works now so here goes.
I noticed that when switching to Spanish I was taken to the page: http://localhost/www.ecia.com/es/ i.e. no specific page, fine if I had an index.php file in that location but I don't. The result is I am taken to the page with the bloated content.
My work around was, use a redirection for that URL to the page I want the switcher to go to i.e. instead of http://localhost/www.ecia.com/es - I redirect to http://localhost/www.ecia.com/es/casa
This is not the best fix, but I have found it difficult going any deeper into how Polylang plugin works so it will suffice for my purposes.
Brent
I have solved this by:
Go to language/setting/url settigs
Uncheck "Hide URL language information for default language "

iphone html app - cross site xmlhttprequest?

On an iphone, you can add a favourite when on a webpage and if that webpage has the correct meta tags for iphone, it gets an icon and can even 'hide' the browsers chrome and display just like an App. With html5 http headers you can even have the phone completely cache the 'app' so that it never has to contact the server again.
The problem I have is that I want to write apps that make xmlhttprequests to a server that is not the server they were originally from. I heard its possible to do this if you somehow export your favourites and HTML5 chache then manually edit the export file to change the URL for the favourite, then import them again, so that the phone doesn't think the javascript is trying a cross site xmlhttprequest.
However I have not found anything like that (maybe it was a jailbreak thing?). At the moment I have to have a proxy on the server where the 'app' originally came from, which is obviously very annoying.
I also heard that there was a special meta tag that allowed you to specify one other domain for xmlhttprequest, it had something to do with specifying that the page was actually a mirror and should be treated as if it came from another domain. Does anyone know what meta tag this is? I tried searching all over apple and found nothing.
I believe it might also be possible if you can get webkit to treat the cache as a file:// protocal, because then cross site security will not apply.
The answer is this is not possible and is not meant to be possible.

Browser plugin for cross-domain iframe communication

I would like to create a browser plugin/extension that would allow the browser to read contents of a cross-domain iframe. I understand that this isn't possible with javascript, but perhaps someone could point me in the right direction of how to create a plugin that users could install. A cross-browser solution would be ideal.
Specifically, I am creating helpful navigation utility, and I want to know the url of the iframe so that I can prevent the iframe from navigating to any questionable sites accidentally. I would also like to detect the size of the contents.
Thanks in advance.
Option 1: file_get_contents:
What you can try is to get the contents from the page by the PHP function file_get_contents, load the CSS files and get the contents and the size of the page.
Option 2: Headers:
You can start here: http://www.senocular.com/pub/adobe/crossdomain/policyfiles.html
See the "allow-access-from" section where you can allow domains to be accessed cross domain when they have specific headers.
Userscripts have cross-domain XMLHttpRequest, and they will even run on all browsers. They (or at least Kango's Content Scripts) have the ability to write and read stored values for cross-window communication.

Use of HTML 5 doctype creates a gap at top of page on iphone safari browser

Update: Please disregard, my problem was caused by an advertisement bar being inserted by the vendor who provides my workplace wireless service.
I was building a mobile friendly website and wanted to use HTML 5. However when I specify the doctype as <!DOCTYPE HTML> , I get a gap at the top of the page on safari on the iphone.
I notice that other sites have the same problem such as nextstop.com and nike.com
I guess safari does not fully support HTML 5 yet. Anybody know of a workaround?
HTML 5 is still in a very unstable state. Don't use it in a production environment.
Edit Just so you guys know what it's about, HTML 5 is currently an Editor's Draft, and the document clearly states (in the Status of This Document section) that this specification is not stable, and that a consensus may not have been reached on any of the proposed sections. I think it should be clear enough that it means it's a bit early to start using it.
All browsers correctly interpret the HTML doctype. Putting it in sets your browser into Standards Compliant mode, that is the only difference with or without the doctype.
You can use a CSS reset tool like http://meyerweb.com/eric/tools/css/reset/ to get rid of default margins and padding on all elements.

Browser Add-On/Extension and Browser Form data

Can someone point me to an article (or discuss here) that explains how an add-on/extension can read what a user has completed in a form in a browser so you can present data to them based on the search parameters?
An example would be the Sidestep extension that opens a sidebar when a user searches on an airline/travel site and presents them a Sidestep meta search based on the parameters used on the original airline/travel site.
Browser extensions are necessarily browser specific. I would look at the APIs for your target browser. Here's a thread on Firefox 3.0 extensions.
extension to what? your body?:)
If you're talking about a browser extension, then i'm pretty sure you are on the wrong way.
You could just search for forms in the current page, and based on the field names try to figure out what did the user searched for...
A js file, and an AJAX-call is all you need, and you could basically skip the ajax call also... but i generally prefer server-side processing, as the source code is more hidden this way.