Commit Graph
55 Commits
Author SHA1 Message Date
Santhosh ThottingalandAmir E. Aharoni 8f7382b242 Introduce languages options to ULS
Default value of this option will be $.uls.data.autonyms().
It can be set to limit language selection to a set of languages.

Updated examples, used a config variable wgULSLanguages to set this.

Change-Id: Ia322cbdcdb14f08619d2e4df5b23e2702841d147
2012-08-15 08:52:46 +03:00
SanthoshandGerrit Code Review bce461b980 Merge "Use existing constant as version in the extension credits" 2012-08-15 05:04:24 +00:00
SanthoshandGerrit Code Review 97758430ff Merge "Partly reverting the langdb" 2012-08-15 04:56:15 +00:00
Santhosh ThottingalandAmir E. Aharoni 0ace474b01 Fix Bug 38666 - When searching no specific region should be highlighted in the map
Clicking again on a region deselect it
When searching, remove selection from regions.

Change-Id: Ife70639a864f9d13d02406d1229316782a32ed3c
2012-08-14 22:46:48 +03:00
Santhosh ThottingalandAmir E. Aharoni e62b50c9d8 WebFonts integration with ULS display settings.
This does not add much functionality. That will come in
future commits.

This commit has many cleanup, refactoring on the display settings,
language settings code.

Change-Id: I7fbc3ebb9b67c1afd80f159c2d82cd2a1c6bea74
2012-08-14 18:01:25 +03:00
Santhosh Thottingal 7414184593 Webfonts integration
Change-Id: Ic5ba46689a8fdbea6fc7c1bae74d798de3310bdf
2012-08-14 11:52:22 +05:30
Santhosh ThottingalandGerrit Code Review b66f4ebb8e Merge "Add jquery.webfonts" 2012-08-14 06:22:04 +00:00
Santhosh Thottingal fd00333e56 Add jquery.webfonts
Upstream : https://github.com/santhoshtr/jquery.webfonts

Change-Id: I8cf90b8ea538505faedb4c5880357205e68a4288
2012-08-13 20:01:25 +05:30
Santhosh Thottingal db0606f2fb Add langnames.ser
Change-Id: I49351f62bb786961c49aa08c18de05347ab2ef43
2012-08-10 12:07:35 +05:30
Santhosh ThottingalandGerrit Code Review 66999e5c75 Merge "Fix bug 38847 Clear suggested text when input no longer matches" 2012-08-09 15:48:02 +00:00
Santhosh ThottingalandAmir E. Aharoni 1648899c45 Introduce display settings link at the top of ULS
Extend $.fn.uls render method to add additional rendering of display
settings link.

Add css for the new element.

Add display.png icon from the Agora icon set.

Change-Id: I7a29b4892be02526969b0dd786c74bdb7551c074
2012-08-09 16:25:16 +03:00
Santhosh ThottingalandGerrit Code Review bb4871f6e5 Fix bug 38847 Clear suggested text when input no longer matches
Change-Id: I6651f38830fcb54bf6b4290eeeedcf48841a8314
2012-08-09 10:23:22 +00:00
Santhosh Thottingal b8a9413ccc Always use autonyms for search results
Change-Id: Iacbaa78c9f66b0c754ac9faf9bb2752f95b35693
2012-08-07 19:24:46 +05:30
Santhosh Thottingal 315d529aed Handling enter key in language filter
* if the search string is language code, select it
* else if the autocompletion available select it
* else select the first language matching the query

Change-Id: If66f5c547a471026b7b2aebcde3c3b056e1c2917
2012-08-07 18:13:27 +05:30
Santhosh Thottingal a9e49acf79 Fix issue: search strings like 't', 'a' are not giving results
There are languges starting with those letters, but without autonyms
Add a null check for undefined autonyms to prevent js error

Change-Id: I88a1d79b3bb23beac7238c1e8817cd6eac614613
2012-08-07 16:22:38 +05:30
Santhosh Thottingal b42728334b Fix issue : Undo language tooltip present in all pages
Show only in next page after language change.

Change-Id: I044001366328c7a87af6c0f274d9372a9211818c
2012-08-07 15:23:30 +05:30
Santhosh Thottingal 1a10318acb Implement visual language grouping in ULS
Added a utility callback function to sort languages by autonym.
Added CSS fix for group separatos.

Change-Id: I73c7c6518a85e4ea7999be3ef92a121e877610e8
2012-08-07 13:42:20 +05:30
Santhosh Thottingal fc5c291536 Do not perform full search on page load
Do it on first click.

Change-Id: I403aef108cf5d4993f6e8fbc9ebf372893e48e3d
2012-08-06 14:20:32 +05:30
Santhosh Thottingal 12d947860a Fix a regression - region filter not working
Change-Id: I13261b96e75de601720f58eb3c045447034dd7b0
2012-08-06 12:32:41 +05:30
Santhosh Thottingal 16c82503fb Misc. performance tweaks
* Do not hit search API if there are results to show from front end
* Avoid the lcd exists check
* slightly reduce the timeout of search term typing
* show autofill for search api results too.
* correct the tooltip text of results.

Change-Id: Id102fbf3bc09eb926d9e36f125ed6291943007f9
2012-08-04 11:30:37 +05:30
Santhosh ThottingalandGerrit Code Review 76f9038aff Allow typo in search key
* Introduce Levenshtein algorithm
* New API param 'typos' to give number of typos allowed
* test cases

Change-Id: I22bf34d08a910d1509d7eab5adc292eadc9a7c7d
2012-08-03 07:33:12 +00:00
Santhosh Thottingal 878313d2ec Rearranging Files
* Seperating standalone jQuery ULS plugin and extension related code
* lib/jquery.uls can be submodule, but not now.

Change-Id: I7d9cb47daa88dd1a27ceda602a08cab0073caf33
2012-08-03 12:24:04 +05:30
Santhosh ThottingalandGerrit Code Review 96304a6d22 Merge "Undo feature for language selection" 2012-08-02 15:22:37 +00:00
Santhosh ThottingalandAmir E. Aharoni 8d1985b9fb Undo feature for language selection
* Use jQuery tipsy plugin to show previous language
* previous language is stored in cookie

Change-Id: Iaae668c33209e32a74dee00211bb22c7b3562456
2012-08-02 17:51:31 +03:00
Santhosh Thottingal baf066f86a Minor cleanup
Remove unused CSS and reorder css, js imports in example/index.html

Change-Id: Iabffe20a683dc4dad07bac95b01f29e7a2159680
2012-08-01 10:59:02 +05:30
Santhosh Thottingal 8959f2a9b0 Language Stickiness
* 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
2012-07-31 22:45:25 +05:30
Santhosh Thottingal 3d9807e7f2 Fix php warnings.
Change-Id: Icd1302f7db425157def4771ffe0d7c816164eb23
2012-07-31 16:03:52 +05:30
Santhosh Thottingal 5703f0f1ad Fix Bug 38665 - Show clean 'x' icon on the search box only when useful
Change-Id: I3fc295728f25cce7a326101467146f8ee3415116
2012-07-30 22:44:28 +05:30
Santhosh Thottingal 388f9cde80 Search performance improvement
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
2012-07-30 18:25:59 +05:30
Santhosh Thottingal 08c14dafa4 Cross-language language name search
Implementation of Also Written As language name
search algorithm.
See http://etherpad.wikimedia.org/l10n-uls-language-search

Change-Id: Iff84408c531b650a44d031b63d5c823737cceafc
2012-07-30 14:08:26 +05:30
Santhosh Thottingal fb11c720b5 Use autonyms for displaying search results
And use English names in tooltip

Change-Id: Ibf8e4035677f3c0467fe5165c680bce15e3b3bb5
2012-07-26 18:33:47 +05:30
Santhosh Thottingal e728a690a3 Extension authors
Change-Id: Iecba54b1745b3061374cf8502641ea4524076c67
2012-07-26 12:04:15 +05:30
Santhosh ThottingalandAmir E. Aharoni af3f6ac58d Loop optimization and cleanup
Reduced the complexity of search loops
And some cleanup.

Change-Id: I772b02abd14d50ad1965e933d8dbb6d3eb4e0b1d
2012-07-25 16:14:16 +03:00
Santhosh Thottingal 05eb91bee3 cleanup and optimization
* reused jquery object  $( 'input#languagefilter' )
* handled the clean button click and escape press on ULS
* some code cleanup.

Change-Id: I5b8b597dceb4cf273a7eff2761f42557828e630b
2012-07-24 14:29:32 +05:30
Santhosh Thottingal 964f508533 onSelect callback option for ULS
* 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
2012-07-23 17:42:00 +05:30
Santhosh Thottingal b1b7c2feb3 Use grid based css design (made css resets local)
Introduced foundation based grid css
Related changes in example, template html

Change-Id: I8b1c1bae1c733ea0ed997d8317b9954592cf6eca
2012-07-23 16:49:00 +05:30
SanthoshandGerrit Code Review 27f9adcc15 Merge "Fix the location of America and Asia in RTL languages" 2012-07-19 11:14:51 +00:00
SanthoshandGerrit Code Review e4cd473337 Merge "Enable syntax highlighting inside heredoc" 2012-07-19 11:10:32 +00:00
Santhosh ThottingalandGerrit Code Review c926a4e3ff Merge "Fix the wrong license header from Ie0480019" 2012-07-18 12:46:18 +00:00
Santhosh Thottingal 99336b1e62 Fix the wrong license header from Ie0480019
Change-Id: I518f638b7a0729ad364e6547ee777419de4d4b4f
2012-07-18 17:34:38 +05:30
Santhosh Thottingal 493cfbe2c4 Fix the search icon location in search field.
Change-Id: Ib6253e6a002e02f0b04bce3b31220809ffea79d9
2012-07-04 12:02:16 +05:30
SanthoshandGerrit Code Review 3c32f82cef Merge "Filter out unknown languages." 2012-07-03 14:52:59 +00:00
Santhosh ThottingalandNiklas Laxström 5625f6eb70 Misc UI fixes
* 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
2012-07-03 11:46:46 +00:00
Santhosh ThottingalandNiklas Laxström 566651b9f6 Fix the language display scroll sync with regions map
* 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
2012-07-03 11:15:34 +00:00
Santhosh Thottingal 851d07dd8c Correct the naming of region and region groups
Change-Id: I857178bc9f830e1ecee7c34541ebab3fbbe95fbd
2012-07-03 10:23:10 +05:30
Santhosh Thottingal a45b43af7b Update the examples with the latest version of source.
Change-Id: I74c1761582ea07c63f558820afc69615047b973c
2012-07-02 10:38:23 +05:30
Santhosh Thottingal 7a9b801a79 Introduce Language Category Display (LCD)
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
2012-07-02 10:20:16 +05:30
Santhosh Thottingal 7d899696d0 Standalone html page with ULS
Demonstration of ULS jquery plugin.

Change-Id: I425ffec9efe664cc91a0a3b8c9f79bd06d56abb5
2012-07-01 21:12:10 +05:30
Santhosh Thottingal f71174a02e Remove the dependency on jquery.ui.autocomplete
Implement the search functionality in the module itself.

Change-Id: I2193e3f92fc21c90bbcc163c38affa8fb1ffa406
2012-07-01 20:32:39 +05:30
Santhosh Thottingal 666bec2633 Smart search for the languages
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
2012-06-30 17:53:21 +05:30
Santhosh Thottingal 720a3f3885 Add autonyms to language database
Change-Id: Ifad5721485634142505a37ba00ca68c744781103
2012-06-30 17:20:07 +05:30
Santhosh Thottingal a759f0ecbe Introduce regionfilter
RegionFilter is a basic jquery plugin to work with ULS
to select languages based on regions.

PS2: Added a css class for elements with regionfilter.
Used it for visual indication of selection. Plus some
clean up.

Change-Id: Ib01b4077435f98665075310e285e68f8538eeb4e
2012-06-26 16:53:15 +05:30
SanthoshandGerrit Code Review 2fd23fe2e0 Merge "Focus the search field by default" 2012-06-22 10:08:11 +00:00
Santhosh Thottingal 9087825e6d Basic language selector
* uses setlang attribute in URL to switch language
* introduced a language filter widget by extending
  jquery.ui.autocomplete
* UI rendering is done by using SkinAfterContent hook

Change-Id: Ifa63a04ba1d060b6db8fba14bb868045cf6b97c3
2012-06-21 20:08:47 +05:30
Santhosh ThottingalandAmir E. Aharoni 8527e33475 Skeleton extension for Universal Language Selector
* Basic extension code with i18n
* Adds a link to personal links to trigger ULS
* Core uls javascript code, to plug to the given trigger.
* Qunit, PHPUnit framework in place.
* and lot of TODOs and FIXMEs

Patch set 2:
* A tiny whitespace fix.

Change-Id: I300647a21e0b7f65b7d9dc6101014ea9389c9f2a
2012-06-15 10:49:18 +03:00