Page MenuHomePhabricator

Kindle 3: JavaScript error message from mobile-frontend-last-modified-months
Closed, ResolvedPublic


On a Kindle Keyboard (Kindle 3) running software version Kindle 3.4: use "Search Wikipedia" and enter "King James". The resulting article is and displays fine, but at the bottom, just below the "Read in another language" link, the error message

mobile-frontend-last-modified-months: Result of expression 'rule.split('@')[0].trim' [undefined] is not a function

is displayed.

Version: unspecified
Severity: normal



Event Timeline

bzimport raised the priority of this task from to Needs Triage.Nov 22 2014, 3:05 AM
bzimport set Reference to bz62072.

Per the String.trim method wasn't added until a relatively recent version of JavaScript, so it may not be available on the Kindle's older browser.

Unless there's a polyfill being used, avoid it in generic-ish code...

Looks like it's being used in core, in resources/mediawiki.libs/CLDRPluralRuleParser.js

Will fire up the test Kindle 3 once it's charged and see if it works with that replaced with a regex.

Created attachment 14723
screen photo of error

note JavaScript must be enabled for the error to occur


tmp_IMG_20140228_125736-295867784.jpg (3×2 px, 1 MB)

There is $.trim which should be used instead.

(In reply to Bartosz Dziewoński from comment #3)

There is $.trim which should be used instead.

The upstream code in doesn't seem to have any explicit jQuery dependency, so I'd rather not add that here.

Change 116159 had a related patch set uploaded by Brion VIBBER:
Fix for CLDR plural rule parser for old browsers without String.trim

Change 116159 merged by jenkins-bot:
Fix for CLDR plural rule parser for old browsers without String.trim

Ok fix is merged in MediaWiki core and in the lib upstream repo. It should wander into the live site within a couple weeks.