* use setlang parameter to change language preference
* language preference will be persistant for all users
* for anonymous users, cookie 'language' will be used
* for logged in users, preference 'language' will be used
* uselang parameter can be used for temporary switching
* language codes will be sanitized.
Change-Id: I2472aee9a7dcd824b622edd38e83f20212f09945
Avoid calling the search for each keypress. It will make
browser unresponsive. Call search on timeout. That is when
user stops typing for 500 millisecond
Change-Id: I93a0e5c5d1035463be9a25047134b042f6743fb8
Provide atocopletion capabilities to the search box: showing the remaining
part of the matching element and allow user selection with keyboard.
Change-Id: Ic591c3c87632fb56af16b9b15ecedbf9558d674a
Provide a view showing:
- A feedback message where the current search term is displayed.
- Suggested options: based on likely languages and languages with one
additional level of editing distance than the used in the search algorithm.
- Instructions for search and browse including links to all the sub-regions
available.
* Introduced success, noresults callbacks for language and region filters
* Region filter can be a link for a region alone.
Change-Id: I713b62911bb32e1b1427320ced767b144180c5c4
* Correct the dependencies for ext.uls.core, it need not depend on
mediawiki.Uri.
* Move the setlang function out of ULS core js.
* Add a callback function to the example.
Change-Id: Ie3598236b2a884580092194c57558ec109d20803
Non-ASCII characters broke the functionality.
Saving as UTF-8 fixes this.
Also removed an unneded <?php statement from a JS file and replaced
non-ASCII pretty apostrophes with straight ASCCI.
Change-Id: Ic6719fe0863bc5d8ae19abbf01cfbb7b2b714f12
The order of the regions in each group was random and confusing.
Now it's reordered so it corresponds to the map.
Change-Id: I6fcf34dd97808f26eabbef51665e7d2743a6cd85
Tests about the Greek script failed because new languages were added to
the language database. Also, it had to be deepEqual and not strictEqual.
I fixed the tests.
Change-Id: I68cf0593354d71bd35c53bac5afe7cabd25182a1
* Added new utility functions to return all languages by script group.
* Used that function to sort languages initially.
* Added tests.
Change-Id: I405cb73e6af13f59c307da5a7f2269049ecba698
* Added codes used on translatewiki.net.
* Uncommented and updated a few codes.
* Put a few comments on a separate line, because when trailing, the conversion script b0rks.
* Updated the script groups with new scripts.
* Corrected the tests.
Change-Id: Ia53195834c2afc908d57d2f396bc317fadb2c7a9
* Fix the columns breaking when language name breaks to new line
* Fix the Map highlighting when no region id in viewport.
* Correction of color codes, margins according to design.
Change-Id: I0121de92bdf5340bf2365c3b7d6045ef963e6d2a
* Remove jquery.viewport which was not able to give correct viewport
relative to container.
* The scroll syncing part is written by Niklas
Change-Id: I1cbeaa2a5c297deab7338f331d8db69c17aa2214
* Clarified naming: separated regions from region groups.
* New utility functions for sorting and grouping languages.
* JSHint fixes.
* Added tests.
Change-Id: I8153a2b89fbc7b9a7d6b7deeb87208efc9f4d021
Introduce $.fn.lcd - displaying languages by categories.
Added the jquery.viewport.js module by Mika Tuupola (MIT license).
More tests for language utils.
Change-Id: I804b6da8ab0a2d518e17ae8bbd35e1c1da4bab3f
A search match happens if any of the following passes:
a) Language name in current user interface language
'starts with' or 'contains' search string.
b) Language autonym 'starts with' or 'contains' search string.
c) ISO 639 code match with search string.
d) ISO 15924 code for the script match the search string.
Change-Id: I7690f06423c931fade3bee1da3a445b4b586e13c