<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=MediaWiki%3AGadget-uploadtools.js</id>
	<title>MediaWiki:Gadget-uploadtools.js - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=MediaWiki%3AGadget-uploadtools.js"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=MediaWiki:Gadget-uploadtools.js&amp;action=history"/>
	<updated>2026-06-12T12:23:31Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=MediaWiki:Gadget-uploadtools.js&amp;diff=940742&amp;oldid=prev</id>
		<title>imported&gt;Hgzh: neue Version; Autor: user:PerfektesChaos</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=MediaWiki:Gadget-uploadtools.js&amp;diff=940742&amp;oldid=prev"/>
		<updated>2025-03-19T13:15:31Z</updated>

		<summary type="html">&lt;p&gt;neue Version; Autor: &lt;a href=&quot;/index.php?title=Benutzer:PerfektesChaos&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Benutzer:PerfektesChaos (Seite nicht vorhanden)&quot;&gt;user:PerfektesChaos&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;/// uploadtools.js for [[Special:Upload]]&lt;br /&gt;
// Preset with raw Template:Information, preview of description&lt;br /&gt;
// Vorschau der Beschreibung auf [[Spezial:Hochladen]]&lt;br /&gt;
// see also [[phab:T4537]]&lt;br /&gt;
// Code von [[Benutzer:Schnark]] 2011&lt;br /&gt;
// PerfektesChaos@de.wikipedia 2025-03&lt;br /&gt;
/// &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/* global window: false                                                */&lt;br /&gt;
/* jshint forin: false,&lt;br /&gt;
          bitwise:true, curly:true, eqeqeq:true, latedef:true,&lt;br /&gt;
          laxbreak:true,&lt;br /&gt;
          nocomma:true, strict:true, undef:true, unused:true           */&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
( function ( mw, $ ) {&lt;br /&gt;
   &amp;quot;use strict&amp;quot;;&lt;br /&gt;
   var UPLT = { API:       { Api: false },&lt;br /&gt;
                I18N:      { },&lt;br /&gt;
                light:     true,   // new version of existing file&lt;br /&gt;
                self:      &amp;quot;gadget-uploadtools&amp;quot;,&lt;br /&gt;
                selDesc:   &amp;quot;#wpUploadDescription&amp;quot;,&lt;br /&gt;
                selFormD:  &amp;quot;#mw-htmlform-description&amp;quot;,&lt;br /&gt;
                selTitle:  &amp;quot;#wpDestFile&amp;quot;,&lt;br /&gt;
                selTprint: &amp;quot;#t-print a&amp;quot;,&lt;br /&gt;
                sequel:    &amp;quot;wpForReUpload&amp;quot;,&lt;br /&gt;
                site:      false,&lt;br /&gt;
                slang:     false,&lt;br /&gt;
                submit:    &amp;quot;wpUpload&amp;quot;,&lt;br /&gt;
                preload:   { },&lt;br /&gt;
                preview:   { css:       { &amp;quot;border-color&amp;quot;:   &amp;quot;#808080&amp;quot;,&lt;br /&gt;
                                          &amp;quot;border-style&amp;quot;:   &amp;quot;dotted&amp;quot;,&lt;br /&gt;
                                          &amp;quot;border-width&amp;quot;:   &amp;quot;2px&amp;quot;,&lt;br /&gt;
                                          &amp;quot;margin-bottom&amp;quot;:  &amp;quot;1.5em&amp;quot;,&lt;br /&gt;
                                          &amp;quot;margin-top&amp;quot;:     &amp;quot;0.5em&amp;quot;,&lt;br /&gt;
                                          &amp;quot;padding-bottom&amp;quot;: &amp;quot;0.5em&amp;quot;,&lt;br /&gt;
                                          &amp;quot;padding-left&amp;quot;:   &amp;quot;1em&amp;quot;,&lt;br /&gt;
                                          &amp;quot;padding-right&amp;quot;:  &amp;quot;1em&amp;quot;,&lt;br /&gt;
                                          &amp;quot;padding-top&amp;quot;:    &amp;quot;0.5em&amp;quot; },&lt;br /&gt;
                             show:      false,&lt;br /&gt;
                             sign:      false,&lt;br /&gt;
                             $button:   false,&lt;br /&gt;
                             $div:      false,&lt;br /&gt;
                             $headline: false&lt;br /&gt;
                           },&lt;br /&gt;
                wiki:      false,&lt;br /&gt;
                $editbox:  false,&lt;br /&gt;
                $filename: false };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   UPLT.I18N.projects = {&lt;br /&gt;
      &amp;quot;dewiki&amp;quot;: {&amp;quot;seek&amp;quot;:   &amp;quot;{{ *[Ii]nformation&amp;quot;,&lt;br /&gt;
                 &amp;quot;source&amp;quot;: &amp;quot;{{Information\n&amp;quot; +&lt;br /&gt;
                           &amp;quot; |Beschreibung     = \n&amp;quot; +&lt;br /&gt;
                           &amp;quot; |Quelle           = \n&amp;quot; +&lt;br /&gt;
                           &amp;quot; |Urheber          = \n&amp;quot; +&lt;br /&gt;
                           &amp;quot; |Datum            = \n&amp;quot; +&lt;br /&gt;
                           &amp;quot; |Genehmigung      = \n&amp;quot; +&lt;br /&gt;
                           &amp;quot; |Andere Versionen = \n&amp;quot; +&lt;br /&gt;
                           &amp;quot; |Anmerkungen      = \n&amp;quot; +&lt;br /&gt;
                           &amp;quot;}}&amp;quot;},&lt;br /&gt;
      &amp;quot;enwiki&amp;quot;: {&amp;quot;seek&amp;quot;:   &amp;quot;{{ *(?:[Tt]emplate:)? *[Ii]nformation&amp;quot;,&lt;br /&gt;
                 &amp;quot;source&amp;quot;: &amp;quot;{{Information\n&amp;quot; +&lt;br /&gt;
                           &amp;quot; |description            = \n&amp;quot; +&lt;br /&gt;
                           &amp;quot; |date                   = \n&amp;quot; +&lt;br /&gt;
                           &amp;quot; |source                 = \n&amp;quot; +&lt;br /&gt;
                           &amp;quot; |author                 = \n&amp;quot; +&lt;br /&gt;
                           &amp;quot; |permission             = \n&amp;quot; +&lt;br /&gt;
                           &amp;quot; |other_versions         = \n&amp;quot; +&lt;br /&gt;
                           &amp;quot; |additional_information = \n&amp;quot; +&lt;br /&gt;
                           &amp;quot;}}&amp;quot;}&lt;br /&gt;
   };   // .I18N.projects&lt;br /&gt;
   UPLT.I18N.texts = {&lt;br /&gt;
      &amp;quot;show&amp;quot;: {&amp;quot;en&amp;quot;:    &amp;quot;Preview&amp;quot;,&lt;br /&gt;
               &amp;quot;bg&amp;quot;:    &amp;quot;Предварителен преглед&amp;quot;,&lt;br /&gt;
               &amp;quot;da&amp;quot;:    &amp;quot;Forhåndsvisning&amp;quot;,&lt;br /&gt;
               &amp;quot;de&amp;quot;:    &amp;quot;Vorschau&amp;quot;,&lt;br /&gt;
               &amp;quot;dsb&amp;quot;:   &amp;quot;Pśeglěd&amp;quot;,&lt;br /&gt;
               &amp;quot;ee&amp;quot;:    &amp;quot;Kpɔe do ŋgɔ&amp;quot;,&lt;br /&gt;
               &amp;quot;el&amp;quot;:    &amp;quot;Προεπισκόπηση&amp;quot;,&lt;br /&gt;
               &amp;quot;es&amp;quot;:    &amp;quot;Previsualizar&amp;quot;,&lt;br /&gt;
               &amp;quot;et&amp;quot;:    &amp;quot;Eelvaade&amp;quot;,&lt;br /&gt;
               &amp;quot;eu&amp;quot;:    &amp;quot;Aurrebista erakutsi&amp;quot;,&lt;br /&gt;
               &amp;quot;fi&amp;quot;:    &amp;quot;Esikatselu&amp;quot;,&lt;br /&gt;
               &amp;quot;fr&amp;quot;:    &amp;quot;Prévisualisation&amp;quot;,&lt;br /&gt;
               &amp;quot;ga&amp;quot;:    &amp;quot;Réamhamharc&amp;quot;,&lt;br /&gt;
               &amp;quot;hi&amp;quot;:    &amp;quot;पूर्वावलोकन&amp;quot;,&lt;br /&gt;
               &amp;quot;hr&amp;quot;:    &amp;quot;Pretpregled&amp;quot;,&lt;br /&gt;
               &amp;quot;hsb&amp;quot;:   &amp;quot;Přehlad&amp;quot;,&lt;br /&gt;
               &amp;quot;hu&amp;quot;:    &amp;quot;Előnézet&amp;quot;,&lt;br /&gt;
               &amp;quot;id&amp;quot;:    &amp;quot;Pratayang&amp;quot;,&lt;br /&gt;
               &amp;quot;is&amp;quot;:    &amp;quot;Forskoða&amp;quot;,&lt;br /&gt;
               &amp;quot;it&amp;quot;:    &amp;quot;Anteprima&amp;quot;,&lt;br /&gt;
               &amp;quot;ka&amp;quot;:    &amp;quot;წინასწარი გადახედვა&amp;quot;,&lt;br /&gt;
               &amp;quot;kl&amp;quot;:    &amp;quot;Isikkua&amp;quot;,&lt;br /&gt;
               &amp;quot;km&amp;quot;:    &amp;quot;មើលជាមុន&amp;quot;,&lt;br /&gt;
               &amp;quot;kv&amp;quot;:    &amp;quot;Водзвыв видзӧдлӧм&amp;quot;,&lt;br /&gt;
               &amp;quot;lb&amp;quot;:    &amp;quot;Kucken ouni ofzespäicheren&amp;quot;,&lt;br /&gt;
               &amp;quot;lt&amp;quot;:    &amp;quot;Peržiūra&amp;quot;,&lt;br /&gt;
               &amp;quot;lv&amp;quot;:    &amp;quot;Pirmskats&amp;quot;,&lt;br /&gt;
               &amp;quot;mg&amp;quot;:    &amp;quot;Topi-maso&amp;quot;,&lt;br /&gt;
               &amp;quot;mo&amp;quot;:    &amp;quot;Превизуализязэ&amp;quot;,&lt;br /&gt;
               &amp;quot;mt&amp;quot;:    &amp;quot;Dehra proviżorja&amp;quot;,&lt;br /&gt;
               &amp;quot;nb&amp;quot;:    &amp;quot;Forhåndsvisning&amp;quot;,&lt;br /&gt;
               &amp;quot;nl&amp;quot;:    &amp;quot;Voorvertoning&amp;quot;,&lt;br /&gt;
               &amp;quot;nn&amp;quot;:    &amp;quot;Førehandsvising&amp;quot;,&lt;br /&gt;
               &amp;quot;pl&amp;quot;:    &amp;quot;Podgląd&amp;quot;,&lt;br /&gt;
               &amp;quot;pt&amp;quot;:    &amp;quot;Antevisão&amp;quot;,&lt;br /&gt;
               &amp;quot;rm&amp;quot;:    &amp;quot;Prevista&amp;quot;,&lt;br /&gt;
               &amp;quot;ro&amp;quot;:    &amp;quot;Previzualizare&amp;quot;,&lt;br /&gt;
               &amp;quot;ru&amp;quot;:    &amp;quot;Предпросмотр&amp;quot;,&lt;br /&gt;
               &amp;quot;sq&amp;quot;:    &amp;quot;Shqyrto&amp;quot;,&lt;br /&gt;
               &amp;quot;sr-ec&amp;quot;: &amp;quot;Претпреглед&amp;quot;,&lt;br /&gt;
               &amp;quot;sr-el&amp;quot;: &amp;quot;Pretpregled&amp;quot;,&lt;br /&gt;
               &amp;quot;sv&amp;quot;:    &amp;quot;Förhandsgranskning&amp;quot;,&lt;br /&gt;
               &amp;quot;tr&amp;quot;:    &amp;quot;Önizleme&amp;quot;,&lt;br /&gt;
               &amp;quot;uk&amp;quot;:    &amp;quot;Попередній перегляд&amp;quot;,&lt;br /&gt;
               &amp;quot;vi&amp;quot;:    &amp;quot;Xem trước&amp;quot;}&lt;br /&gt;
   };   // .I18N.texts&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   function fair( apply ) {&lt;br /&gt;
      // Synchronize textarea and overlay&lt;br /&gt;
      // Precondition:&lt;br /&gt;
      //    apply   -- true: Update textarea   -- else: Update overlay&lt;br /&gt;
      UPLT.codeMirror( apply );&lt;br /&gt;
      UPLT.wikEd( apply );&lt;br /&gt;
   }   // fair()&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   function features() {&lt;br /&gt;
      // Equip page&lt;br /&gt;
      // Precondition:&lt;br /&gt;
      //    DOM ready&lt;br /&gt;
      var submit  = &amp;quot;input[name=\&amp;quot;&amp;quot; + UPLT.submit + &amp;quot;\&amp;quot;]&amp;quot;,&lt;br /&gt;
          $button = $( submit ),&lt;br /&gt;
          $descr  = $( UPLT.selFormD ),&lt;br /&gt;
          sign, $tbPrint;&lt;br /&gt;
      UPLT.$editbox  = $( UPLT.selDesc );&lt;br /&gt;
      UPLT.$filename = $( UPLT.selTitle );&lt;br /&gt;
      if ( $button.length === 1  &amp;amp;&amp;amp;&lt;br /&gt;
           $descr.length === 1  &amp;amp;&amp;amp;&lt;br /&gt;
           UPLT.$editbox.length === 1  &amp;amp;&amp;amp;&lt;br /&gt;
           UPLT.$filename.length === 1 ) {&lt;br /&gt;
         sign = UPLT.self + &amp;quot;-preview&amp;quot;;&lt;br /&gt;
         UPLT.preview.$div = $( &amp;quot;.&amp;quot; + sign );&lt;br /&gt;
         if ( ! UPLT.preview.$div.length ) {&lt;br /&gt;
            UPLT.preview.$div = $( &amp;quot;&amp;lt;div&amp;gt;&amp;quot; );&lt;br /&gt;
            UPLT.preview.$div.addClass( sign )&lt;br /&gt;
                             .css( UPLT.preview.css )&lt;br /&gt;
                             .hide();&lt;br /&gt;
            $descr.before( UPLT.preview.$div );&lt;br /&gt;
            $tbPrint = $( UPLT.selTprint );&lt;br /&gt;
            $tbPrint.removeAttr( &amp;quot;accesskey&amp;quot; )   // T58786&lt;br /&gt;
                    .updateTooltipAccessKeys();&lt;br /&gt;
            UPLT.preview.factory();&lt;br /&gt;
            $button.after( UPLT.preview.$button );&lt;br /&gt;
            UPLT.preload.fill();&lt;br /&gt;
         }&lt;br /&gt;
      }&lt;br /&gt;
   }   // features()&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   function fire() {&lt;br /&gt;
      // Resources completed&lt;br /&gt;
      // Precondition:&lt;br /&gt;
      //    mediawiki.util&lt;br /&gt;
      if ( mw.util.getParamValue( UPLT.sequel )  !==  &amp;quot;1&amp;quot; ) {&lt;br /&gt;
         UPLT.light = false;&lt;br /&gt;
      }&lt;br /&gt;
      $( features );&lt;br /&gt;
   }   // fire()&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   function first() {&lt;br /&gt;
      // Autorun on loading&lt;br /&gt;
      var env = mw.config.get( [ &amp;quot;wgCanonicalSpecialPageName&amp;quot;,&lt;br /&gt;
                                 &amp;quot;wgDBname&amp;quot;,&lt;br /&gt;
                                 &amp;quot;wgUserLanguage&amp;quot; ] );&lt;br /&gt;
      if ( env.wgCanonicalSpecialPageName === &amp;quot;Upload&amp;quot; ) {&lt;br /&gt;
         UPLT.site  = env.wgDBname;&lt;br /&gt;
         UPLT.slang = env.wgUserLanguage.toLowerCase();&lt;br /&gt;
         if ( typeof UPLT.I18N.projects[ UPLT.site ]  === &amp;quot;object&amp;quot; ) {&lt;br /&gt;
            UPLT.wiki = UPLT.I18N.projects[ UPLT.site ];&lt;br /&gt;
         }&lt;br /&gt;
         mw.loader.using( [ &amp;quot;mediawiki.api&amp;quot;,&lt;br /&gt;
                            &amp;quot;mediawiki.util&amp;quot; ],&lt;br /&gt;
                          fire );&lt;br /&gt;
      }&lt;br /&gt;
   }   // first()&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   UPLT.codeMirror = function ( apply ) {&lt;br /&gt;
      // Execute function iff CodeMirror is active&lt;br /&gt;
      // Precondition:&lt;br /&gt;
      //    apply   -- true: Update textarea   -- else: Update CM.doc&lt;br /&gt;
      var doc, story;&lt;br /&gt;
      if ( typeof window.CodeMirror  !==  &amp;quot;undefined&amp;quot;&lt;br /&gt;
           &amp;amp;&amp;amp;     window.CodeMirror&lt;br /&gt;
           &amp;amp;&amp;amp;     window.CodeMirror.getDoc() ) {&lt;br /&gt;
         doc = window.CodeMirror.getDoc();&lt;br /&gt;
         if ( apply ) {&lt;br /&gt;
            story = doc.getValue();&lt;br /&gt;
            UPLT.$editbox.val( story );&lt;br /&gt;
         } else {&lt;br /&gt;
            story = UPLT.$editbox.val();&lt;br /&gt;
            doc.setValue( story );&lt;br /&gt;
         }&lt;br /&gt;
      }&lt;br /&gt;
   };   // .codeMirror()&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   UPLT.wikEd = function ( apply ) {&lt;br /&gt;
      // Execute function iff wikEd is active&lt;br /&gt;
      // Precondition:&lt;br /&gt;
      //    apply   -- true: UpdateTextarea   -- else: UpdateFrame&lt;br /&gt;
      if ( typeof window.wikEd  !== &amp;quot;undefined&amp;quot;&lt;br /&gt;
           &amp;amp;&amp;amp;   window.wikEd&lt;br /&gt;
           &amp;amp;&amp;amp;   window.wikEd.useWikEd ) {&lt;br /&gt;
        window.wikEd[ ( apply ? &amp;quot;UpdateTextarea&amp;quot;&lt;br /&gt;
                              : &amp;quot;UpdateFrame&amp;quot; ) ]();&lt;br /&gt;
      }&lt;br /&gt;
   };   // .wikEd()&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   UPLT.preload.fill = function () {&lt;br /&gt;
      var less, re, story;&lt;br /&gt;
      if ( ! UPLT.light&lt;br /&gt;
           &amp;amp;&amp;amp;     UPLT.wiki   &amp;amp;&amp;amp;&lt;br /&gt;
           typeof UPLT.wiki.source  ===  &amp;quot;string&amp;quot; ) {&lt;br /&gt;
         fair( true );&lt;br /&gt;
         story = UPLT.$editbox.val();&lt;br /&gt;
         if ( story ) {&lt;br /&gt;
            if ( typeof UPLT.wiki.seek  ===  &amp;quot;string&amp;quot; ) {&lt;br /&gt;
               re   = new RegExp( UPLT.wiki.seek );&lt;br /&gt;
               less = ! re.test( story );&lt;br /&gt;
            }&lt;br /&gt;
         } else {&lt;br /&gt;
            less = true;&lt;br /&gt;
         }&lt;br /&gt;
         if ( less ) {&lt;br /&gt;
            story = UPLT.wiki.source   +&lt;br /&gt;
                    ( story  ?  &amp;quot;\n&amp;quot; + story  :  &amp;quot;&amp;quot; );&lt;br /&gt;
            UPLT.$editbox.val( story );&lt;br /&gt;
            fair();&lt;br /&gt;
         }&lt;br /&gt;
      }&lt;br /&gt;
   };   // .preload.fill()&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   UPLT.preview.factory = function () {&lt;br /&gt;
      // Create preview button&lt;br /&gt;
      // Postcondition:&lt;br /&gt;
      //    Button is defined&lt;br /&gt;
      var entry = UPLT.I18N.texts.show,&lt;br /&gt;
          slang, sub;&lt;br /&gt;
      if ( typeof entry[ UPLT.slang ]  ===  &amp;quot;string&amp;quot; ) {&lt;br /&gt;
         UPLT.preview.show = entry[ UPLT.slang ];&lt;br /&gt;
      } else {&lt;br /&gt;
         switch ( UPLT.slang ) {&lt;br /&gt;
            case &amp;quot;als&amp;quot;:&lt;br /&gt;
            case &amp;quot;bar&amp;quot;:&lt;br /&gt;
            case &amp;quot;de&amp;quot;:&lt;br /&gt;
            case &amp;quot;de-at&amp;quot;:&lt;br /&gt;
            case &amp;quot;de-ch&amp;quot;:&lt;br /&gt;
            case &amp;quot;de-formal&amp;quot;:&lt;br /&gt;
            case &amp;quot;de-x-formal&amp;quot;:&lt;br /&gt;
            case &amp;quot;dsb&amp;quot;:&lt;br /&gt;
            case &amp;quot;frr&amp;quot;:&lt;br /&gt;
            case &amp;quot;gsw&amp;quot;:&lt;br /&gt;
            case &amp;quot;hsb&amp;quot;:&lt;br /&gt;
            case &amp;quot;ksh&amp;quot;:&lt;br /&gt;
            case &amp;quot;lb&amp;quot;:&lt;br /&gt;
            case &amp;quot;nds&amp;quot;:&lt;br /&gt;
            case &amp;quot;pdc&amp;quot;:&lt;br /&gt;
            case &amp;quot;pdt&amp;quot;:&lt;br /&gt;
            case &amp;quot;pfl&amp;quot;:&lt;br /&gt;
            case &amp;quot;sli&amp;quot;:&lt;br /&gt;
            case &amp;quot;stq&amp;quot;:&lt;br /&gt;
            case &amp;quot;vmf&amp;quot;:&lt;br /&gt;
               slang = &amp;quot;de&amp;quot;;&lt;br /&gt;
               sub   = &amp;quot;de&amp;quot;;&lt;br /&gt;
               break;&lt;br /&gt;
            case &amp;quot;pt-br&amp;quot;:&lt;br /&gt;
               slang = &amp;quot;pt&amp;quot;;&lt;br /&gt;
               sub   = &amp;quot;pt&amp;quot;;&lt;br /&gt;
               break;&lt;br /&gt;
         }   // switch UPLT.slang&lt;br /&gt;
         if ( typeof entry[ sub ]  ===  &amp;quot;string&amp;quot; ) {&lt;br /&gt;
            UPLT.preview.show = entry[ sub ];&lt;br /&gt;
         } else {&lt;br /&gt;
            UPLT.preview.show = entry.en;&lt;br /&gt;
            slang             = &amp;quot;en&amp;quot;;&lt;br /&gt;
         }&lt;br /&gt;
      }&lt;br /&gt;
      UPLT.preview.$button = $( &amp;quot;&amp;lt;input&amp;gt;&amp;quot; );&lt;br /&gt;
      UPLT.preview.$button.addClass( UPLT.self + &amp;quot;-button&amp;quot; )&lt;br /&gt;
                          .attr( { &amp;quot;accesskey&amp;quot;: &amp;quot;p&amp;quot;,&lt;br /&gt;
                                   &amp;quot;title&amp;quot;:     UPLT.preview.show,&lt;br /&gt;
                                   &amp;quot;type&amp;quot;:      &amp;quot;button&amp;quot;,&lt;br /&gt;
                                   &amp;quot;value&amp;quot;:     UPLT.preview.show } )&lt;br /&gt;
                          .css( { &amp;quot;margin-left&amp;quot;:  &amp;quot;1em&amp;quot;,&lt;br /&gt;
                                  &amp;quot;margin-right&amp;quot;: &amp;quot;1em&amp;quot; } )&lt;br /&gt;
                          .on( &amp;quot;click&amp;quot;, UPLT.preview.fired )&lt;br /&gt;
                          .updateTooltipAccessKeys();&lt;br /&gt;
      if ( slang  &amp;amp;&amp;amp;  slang !== UPLT.slang ) {&lt;br /&gt;
         UPLT.preview.$button.attr( &amp;quot;lang&amp;quot;, slang );&lt;br /&gt;
      }&lt;br /&gt;
   };   // .preview.factory()&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   UPLT.preview.fill = function ( arrived ) {&lt;br /&gt;
      // Show preview&lt;br /&gt;
      // Precondition:&lt;br /&gt;
      //    arrived   -- (string) HTML&lt;br /&gt;
      var $preview = $( &amp;quot;&amp;lt;div&amp;gt;&amp;quot; );&lt;br /&gt;
      if ( ! UPLT.$headline ) {&lt;br /&gt;
         UPLT.preview.$headline = $( &amp;quot;&amp;lt;div&amp;gt;&amp;quot; );&lt;br /&gt;
         UPLT.preview.$headline.attr( { &amp;quot;title&amp;quot;: UPLT.preview.show } )&lt;br /&gt;
                               .css( { &amp;quot;font-size&amp;quot;:      &amp;quot;150%&amp;quot;,&lt;br /&gt;
                                       &amp;quot;font-weight&amp;quot;:    &amp;quot;bold&amp;quot;,&lt;br /&gt;
                                       &amp;quot;padding-bottom&amp;quot;: &amp;quot;1em&amp;quot; } )&lt;br /&gt;
                               .text( UPLT.preview.show );&lt;br /&gt;
      }&lt;br /&gt;
      $preview.html( arrived );&lt;br /&gt;
      UPLT.preview.$div.append( UPLT.preview.$headline, $preview )&lt;br /&gt;
                       .show();&lt;br /&gt;
   };   // .preview.fill()&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   UPLT.preview.fired = function () {&lt;br /&gt;
      // Preview button has been clicked&lt;br /&gt;
      var send = UPLT.$filename.val(),&lt;br /&gt;
          story;&lt;br /&gt;
      UPLT.preload.fill();&lt;br /&gt;
      fair( true );&lt;br /&gt;
      story = UPLT.$editbox.val();&lt;br /&gt;
      if ( UPLT.preview.$headline ) {&lt;br /&gt;
         UPLT.preview.$div.hide();&lt;br /&gt;
         UPLT.preview.$headline.detach();&lt;br /&gt;
         UPLT.preview.$div.empty();&lt;br /&gt;
      }&lt;br /&gt;
      UPLT.API.fetch( story, send );&lt;br /&gt;
   };   // .preview.fired()&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   UPLT.API.fault = function ( jqXHR, textStatus, errorThrown ) {&lt;br /&gt;
      // API failure&lt;br /&gt;
      var s;&lt;br /&gt;
      if ( textStatus ) {&lt;br /&gt;
         switch ( typeof textStatus ) {&lt;br /&gt;
            case &amp;quot;object&amp;quot;:&lt;br /&gt;
               if ( typeof textStatus.textStatus  ===  &amp;quot;string&amp;quot; ) {&lt;br /&gt;
                  s = textStatus.textStatus;&lt;br /&gt;
               } else {&lt;br /&gt;
                 s = &amp;quot;&amp;quot;;&lt;br /&gt;
               }&lt;br /&gt;
               if ( typeof textStatus.exception  ===  &amp;quot;string&amp;quot;&lt;br /&gt;
                    &amp;amp;&amp;amp;     textStatus.exception ) {&lt;br /&gt;
                  s = s + &amp;quot; (&amp;quot; + textStatus.exception + &amp;quot;)&amp;quot;;&lt;br /&gt;
               }&lt;br /&gt;
               break;&lt;br /&gt;
            case &amp;quot;string&amp;quot;:&lt;br /&gt;
               s = textStatus;&lt;br /&gt;
               break;&lt;br /&gt;
         }   // switch typeof textStatus&lt;br /&gt;
      }&lt;br /&gt;
      if ( errorThrown ) {&lt;br /&gt;
         if ( s ) {&lt;br /&gt;
            s = s + &amp;quot;  -- Error: &amp;quot;;&lt;br /&gt;
         }&lt;br /&gt;
         s = s + errorThrown;&lt;br /&gt;
      }&lt;br /&gt;
      if ( ! s ) {&lt;br /&gt;
         s = &amp;quot;???&amp;quot;;&lt;br /&gt;
      }&lt;br /&gt;
      if ( typeof window.console  ===  &amp;quot;object&amp;quot;   &amp;amp;&amp;amp;&lt;br /&gt;
           typeof window.console.log  ===  &amp;quot;function&amp;quot; ) {&lt;br /&gt;
         window.console.log( UPLT.self + &amp;quot; * &amp;quot; + s );&lt;br /&gt;
         if ( typeof textStatus  ===  &amp;quot;object&amp;quot;&lt;br /&gt;
              &amp;amp;&amp;amp;     textStatus   &amp;amp;&amp;amp;&lt;br /&gt;
              typeof window.console.dir  ===  &amp;quot;function&amp;quot; ) {&lt;br /&gt;
            window.console.dir( textStatus );&lt;br /&gt;
         }&lt;br /&gt;
      }&lt;br /&gt;
   };   // .API.fault()&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   UPLT.API.fetch = function ( ask, about ) {&lt;br /&gt;
      // Request parsing&lt;br /&gt;
      // Precondition:&lt;br /&gt;
      //    ask    -- wikitext&lt;br /&gt;
      //    about  -- file title&lt;br /&gt;
      var s = ( UPLT.light ? &amp;quot;summary&amp;quot; : &amp;quot;text&amp;quot; );&lt;br /&gt;
      if ( ! UPLT.API.Api ) {&lt;br /&gt;
         UPLT.API.Api = new mw.Api();&lt;br /&gt;
         UPLT.API.params = { action:       &amp;quot;parse&amp;quot;,&lt;br /&gt;
                             contentmodel: &amp;quot;wikitext&amp;quot;,&lt;br /&gt;
                             format:       &amp;quot;json&amp;quot;,&lt;br /&gt;
                             prop :        &amp;quot;text&amp;quot;   /*,&lt;br /&gt;
                             pst:          &amp;quot;&amp;quot;        */&lt;br /&gt;
                           };&lt;br /&gt;
      }&lt;br /&gt;
      UPLT.API.params.title = &amp;quot;File:&amp;quot; + ( about ? about&lt;br /&gt;
                                                : &amp;quot;JustAnExample.JPG&amp;quot; );&lt;br /&gt;
      UPLT.API.params[ s ] = ask;&lt;br /&gt;
      UPLT.API.Api.get( UPLT.API.params )&lt;br /&gt;
                  .done( UPLT.API.fetched )&lt;br /&gt;
                  .fail( UPLT.API.fault );&lt;br /&gt;
   };   // .API.fetch()&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   UPLT.API.fetched = function ( arrived ) {&lt;br /&gt;
      // Answer arrived&lt;br /&gt;
      // Precondition:&lt;br /&gt;
      //    arrived  -- JSON result of request&lt;br /&gt;
      var p, s;&lt;br /&gt;
      if ( typeof arrived  ===  &amp;quot;object&amp;quot;&lt;br /&gt;
           &amp;amp;&amp;amp;     arrived   &amp;amp;&amp;amp;&lt;br /&gt;
           typeof arrived.parse  ===  &amp;quot;object&amp;quot;&lt;br /&gt;
           &amp;amp;&amp;amp;     arrived.parse ) {&lt;br /&gt;
         p = arrived.parse;&lt;br /&gt;
         s = ( UPLT.light ? &amp;quot;parsedsummary&amp;quot; : &amp;quot;text&amp;quot; );&lt;br /&gt;
         if ( typeof p[ s ]  ===  &amp;quot;object&amp;quot;&lt;br /&gt;
              &amp;amp;&amp;amp;     p[ s ] ) {&lt;br /&gt;
            p = p[ s ];&lt;br /&gt;
            if ( typeof p[ &amp;quot;*&amp;quot; ]  ===  &amp;quot;string&amp;quot;&lt;br /&gt;
                 &amp;amp;&amp;amp;     p[ &amp;quot;*&amp;quot; ] ) {&lt;br /&gt;
               UPLT.preview.fill( p[ &amp;quot;*&amp;quot; ] );&lt;br /&gt;
            }&lt;br /&gt;
         }&lt;br /&gt;
      }&lt;br /&gt;
   };   // .API.fetched()&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   first();&lt;br /&gt;
}( window.mediaWiki, window.jQuery ) );&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
// Emacs&lt;br /&gt;
// Local Variables:&lt;br /&gt;
// coding: utf-8-dos&lt;br /&gt;
// fill-column: 80&lt;br /&gt;
// End:&lt;br /&gt;
&lt;br /&gt;
/// EOF &amp;lt;/nowiki&amp;gt;   uploadtools.js&lt;/div&gt;</summary>
		<author><name>imported&gt;Hgzh</name></author>
	</entry>
</feed>