Santhosh has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/126230

Change subject: Sanitize the jquery id for the translation section
......................................................................

Sanitize the jquery id for the translation section

Make sure we use a valid jquery selector.

Change-Id: Id21ce64d80f8026274b258e4d3790e694f74cecf
---
M modules/translation/ext.cx.translation.js
1 file changed, 15 insertions(+), 4 deletions(-)


  git pull 
ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/ContentTranslation 
refs/changes/30/126230/1

diff --git a/modules/translation/ext.cx.translation.js 
b/modules/translation/ext.cx.translation.js
index add1daa..447a053 100644
--- a/modules/translation/ext.cx.translation.js
+++ b/modules/translation/ext.cx.translation.js
@@ -161,13 +161,24 @@
         * @param {string} [prefix] id prefix
         */
        function jquerySelectorForId( id, prefix ) {
+               var selector, randomId;
+
+               randomId = '#' + prefix + ( Math.floor( Math.random() * 1000000 
) + 1 );
                prefix = prefix || '';
                if ( !id ) {
-                       return '#' + prefix + ( Math.floor( Math.random() * 
1000000 ) + 1 );
+                       selector = randomId;
+               } else {
+                       // make it a string
+                       id = id + '';
+                       selector = '#' + prefix + id.replace( 
/(:|\/|\.|\[|\])/g, '\\$1' );
                }
-               // make it a string
-               id = id + '';
-               return '#' + prefix + id.replace( /(:|\/|\.|\[|\])/g, '\\$1' );
+               try {
+                       // Make sure jQuery consider it as a valid selector.
+                       $( selector );
+               } catch ( error ) {
+                       selector = randomId;
+               }
+               return selector;
        }
 
        function souceSectionClickHandler() {

-- 
To view, visit https://gerrit.wikimedia.org/r/126230
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Id21ce64d80f8026274b258e4d3790e694f74cecf
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/ContentTranslation
Gerrit-Branch: master
Gerrit-Owner: Santhosh <santhosh.thottin...@gmail.com>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to