மீடியாவிக்கி:Gadget-defaultsummaries.js
/*  _____________________________________________________________________________
  * |                                                                             |
  * |                    === WARNING: GLOBAL GADGET FILE ===                      |
  * |                  Changes to this page affect many users.                    |
  * | Please discuss changes on the talk page or on [[WT:Gadget]] before editing. |
  * |_____________________________________________________________________________|
  *
  * Imported as of 09/06/2011 from [[User:ErrantX/defaultsummaries.js]]
  * Edited version from [[User:MC10/defaultsummaries.js]]
  * Implements default edit summary dropdown boxes
  */
  
 (function ($) { // Wrap with anonymous function
     var $summaryBox  = $('#wpSummary');
 
     function editsummAddOptionToDropdown(dropdown, optionText) {
         var option = document.createElement(&quot;option&quot;);
         var optionTextNode = document.createTextNode(optionText);
         option.appendChild(optionTextNode);
         dropdown.appendChild(option);
     }
  
     function editsummAddCatToDropdown(dropdown, catText) {
         var option = document.createElement(&quot;option&quot;);
         option.disabled = true;
         option.selected = true;
         var optionTextNode = document.createTextNode(catText);
         option.appendChild(optionTextNode);
         dropdown.appendChild(option);
     }
  
     function editsummOnCannedSummarySelected() {
         // Save the original value of the edit summary field
         var editsummOriginalSummary = $summaryBox.val();
  
         var idx = this.selectedIndex;
         var canned = this.options[idx].text;
  
         var newSummary = editsummOriginalSummary;
  
         // Append old edit summary with space, if exists,
         // and last character != space
         if (newSummary.length !== 0 &amp;&amp; newSummary.charAt(newSummary.length - 1) !== &quot; &quot;) {
             newSummary += &quot; &quot;;
         }
         newSummary += canned;
         $summaryBox.val( newSummary ).trigger( 'change' );
     }
  
     function insertSummaryOptions($insertBeforeThis, dropdownWidth) { 
         // For convenience, add a dropdown box with some canned edit
         // summaries to the form.
         var dropdown = document.createElement(&quot;select&quot;);
         dropdown.style.width = dropdownWidth;
         dropdown.style.margin = &quot;0 4px 0 0&quot;;
         dropdown.onchange = editsummOnCannedSummarySelected;
  
         var minorDropdown = document.createElement(&quot;select&quot;);
         minorDropdown.style.width = dropdownWidth;
         minorDropdown.onchange = editsummOnCannedSummarySelected;
  
         editsummAddCatToDropdown(minorDropdown, &quot;பொதுவான சிறு தொகுப்புச் சுருக்கம் – இங்கே சொடுக்குக&quot;);
         editsummAddCatToDropdown(dropdown, &quot; பொதுவான தொகுப்புச் சுருக்கம் – இங்கே சொடுக்குக &quot;);
  
         editsummAddOptionToDropdown(minorDropdown, &quot;எழுத்து/இலக்கணத் திருத்தம்&quot;);
         editsummAddOptionToDropdown(minorDropdown, &quot;வடிவம்/வடிவமைப்பு திருத்தம்&quot;);
         editsummAddOptionToDropdown(minorDropdown, &quot;தீக்குறும்பு மீளமைத்தல் அல்லது சோதனைத் தொகுப்பு &quot;);
         editsummAddOptionToDropdown(minorDropdown, &quot;விளக்கமளிக்கப்படாத பகுதி நீக்கம் &quot;);
         editsummAddOptionToDropdown(minorDropdown, &quot;சிறிய உரை திருத்தம்&quot;);
  
         if (mw.config.get('wgNamespaceNumber') === 0) {
             editsummAddOptionToDropdown(dropdown, &quot;விரிவாக்கம்&quot;);
             editsummAddOptionToDropdown(dropdown, &quot;உசாத்துணை சேர்ப்பு &quot;);
             editsummAddOptionToDropdown(dropdown, &quot;பகுப்பு சேர்த்தல்/நீக்கல்&quot;);
             editsummAddOptionToDropdown(dropdown, &quot;வெளியிணைப்பு சேர்த்தல்/நீக்கல் &quot;);
             editsummAddOptionToDropdown(dropdown, &quot;விக்கியிணைப்பு சேர்த்தல்/நீக்கல் &quot;);
             editsummAddOptionToDropdown(dropdown, &quot;ஆதாரமற்ற தகவல் நீக்கல் &quot;);
             editsummAddOptionToDropdown(dropdown, &quot;தீக்குறும் அகற்றல்&quot;);
             editsummAddOptionToDropdown(dropdown, &quot;துப்புரவு&quot;);
             editsummAddOptionToDropdown(dropdown, &quot; உரை திருத்தம் &quot;);
         } else {
             editsummAddOptionToDropdown(dropdown, &quot;மறுமொழி&quot;);
             editsummAddOptionToDropdown(dropdown, &quot;கருத்து&quot;);
             editsummAddOptionToDropdown(dropdown, &quot;ஆலோசனை&quot;);
             if ((mw.config.get('wgNamespaceNumber') % 2 !== 0) &amp; (mw.config.get('wgNamespaceNumber') !== 3)) {
                 editsummAddOptionToDropdown(dropdown, &quot; விக்கித்திட்ட இணைப்பு&quot;);
                 editsummAddOptionToDropdown(dropdown, &quot;விக்கித்திட்ட மதிப்பீடு&quot;);
             }
         }
  
 	$insertBeforeThis.before(dropdown);
         $insertBeforeThis.before(minorDropdown);
     }
     mw.hook( 've.saveDialog.stateChanged' ).add(function(){
         //.ve-init-mw-viewPageTarget-saveDialog-checkboxes
         var target = ve.init.target;
         var $insertBeforeThis = target.saveDialog.$body.find('.ve-ui-mwSaveDialog-options');
         $summaryBox = target.saveDialog.$body.find('.ve-ui-mwSaveDialog-summary textarea');
         if (!$insertBeforeThis.length) {
             return;
         }
         insertSummaryOptions($insertBeforeThis, &quot;98%&quot;);
     });
     $(function() {
         var $insertBeforeThis = $('.editCheckboxes');
  
         // If we failed to find the editCheckboxes class
         if (!$insertBeforeThis.length) {
             return;
         }
         insertSummaryOptions($insertBeforeThis, &quot;38%&quot;);
     });