User:ToaMeiko/createpage.js

From Brickipedia, the LEGO Wiki

Note: After publishing, you may have to bypass your browser's cache to see the changes.

  • Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
  • Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
  • Internet Explorer / Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5
  • Opera: Press Ctrl-F5.
  1 /***************************************/
  2 /* PageMakerPro.                       */
  3 /* Written by: Shining-Armor.          */
  4 /* Adapted by ToaMeiko for Brickipedia */
  5 /* http://en.brickimedia.org           */
  6 /*                                     */
  7 /* Derived from adaptations by         */
  8 /* Star Warden for the                 */
  9 /* Dragon Mania Legends Wiki           */
 10 /* dragon-mania-legends-wiki.mobga.me  */
 11 /* License: GPL v2.                    */
 12 /***************************************/
 13  
 14 (function ($, mw, window) {
 15  
 16     /***************************************************/
 17     /* i18n: Please contribute translations here only! */
 18     /***************************************************/
 19  
 20     var i18n = {
 21  
 22        "de": {
 23             formTitle: "Erstelle eine neue Seite",
 24             formStart: "Erstellen",
 25             formCancel: "Schließen",
 26             formPage: "Spezial:Leerseite/Seite_erstellen",
 27             formMain: "Artikel",
 28             formCat: "Kategorie",
 29             formMW: "MediaWiki",
 30             formTemp: "Vorlage",
 31             formCont: "Seiteninhalt",
 32             formBlank: "Leer",
 33         },
 34  
 35        "en": {
 36             formTitle: "Create a new page",
 37             formStart: "Create",
 38             formCancel: "Close",
 39             formPage: "Special:BlankPage/newpage",
 40             formMain: "Main",
 41             formCat: "Category",
 42             formMW: "MediaWiki",
 43             formTemp: "Template",
 44             formCont: "Page Content",
 45             formBlank: "Blank",
 46         },
 47  
 48         "es": {
 49             formTitle: "Crear una nueva página",
 50             formStart: "Crear",
 51             formCancel: "Cerrar",
 52             formPage: "Especial:Blanquear_página/Nueva_Página",
 53             formMain: "Portada",
 54             formCat: "Categoría",
 55             formMW: "MediaWiki",
 56             formTemp: "Plantilla",
 57             formCont: "Contenido",
 58             formBlank: "En blanco",
 59         },
 60  
 61        "fr": {
 62             formTitle: "Créer une nouvelle page",
 63             formStart: "Créer",
 64             formCancel: "Fermer",
 65             formPage: "Spécial:Page_blanche/Nouvelle_Page",
 66             formMain: "Principal",
 67             formCat: "Catégorie",
 68             formMW: "MediaWiki",
 69             formTemp: "Modèle",
 70             formCont: "Contenu de la page",
 71             formBlank: "Vide",
 72         },
 73  
 74         "lt": {
 75             formTitle: "Sukurti naują puslapį",
 76             formStart: "Sukurti",
 77             formCancel: "Uždaryti",
 78             formPage: "Specialus:Tuščias_puslapis/Naujas_puslapis",
 79             formMain: "Pagrindinis",
 80             formCat: "Kategorija",
 81             formMW: "MediaWiki",
 82             formTemp: "Šablonas",
 83             formCont: "Lapo turinys",
 84             formBlank: "Tusčias",
 85         },
 86  
 87        "nl": {
 88             formTitle: "Maak een nieuwe pagina",
 89             formStart: "Maak",
 90             formCancel: "Sluit",
 91             formPage: "Speciaal:LegePagina/nieuwepagina",
 92             formMain: "Main",
 93             formCat: "Categorie",
 94             formMW: "MediaWiki",
 95             formTemp: "Sjabloon",
 96             formCont: "Paginainhoud",
 97             formBlank: "Leeg",
 98         },
 99  
100         "pl": {
101             formTitle: "Utwórz nową stronę",
102             formStart: "Utwórz",
103             formCancel: "Zamknij",
104             formPage: "Specjalna:Pusta_strona/Utwórz_stronę",
105             formMain: "Główna",
106             formCat: "Kategoria",
107             formMW: "MediaWiki",
108             formTemp: "Szablon",
109             formCont: "Treść strony",
110             formBlank: "Pusta",
111         },
112 
113     };
114  
115     /****************************************************/
116     /* End of i18n. Please don't change anything below. */
117     /****************************************************/
118  
119     /* Variables for use in the script */
120     var server = mw.config.get("wgServer");
121     var skin = mw.config.get("skin");
122     var lang = mw.config.get("wgUserLanguage");
123     if (i18n[lang] === undefined) {
124         lang = 'en';
125     }
126     var page = mw.config.get("wgPageName");
127     var formHTML = '<form class="wikiaform"><fieldset id="page-create-fieldset"><input type="radio" name="namespace" value="main" checked="checked">' + i18n[lang].formMain+ '</input><input type="radio" name="namespace" value="fan">Custom/Story/Artwork</input><input type="radio" name="namespace" value="category">' + i18n[lang].formCat + '</input><input type="radio" name="namespace" value="mediawiki">' + i18n[lang].formMW + '</input><input type="radio" name="namespace" value="template">' + i18n[lang].formTemp + '</input><br/><br/><input type="text" id="NewPageTitle" style="width: 80%;" placeholder="Page title"/><br/><br/><span>' + i18n[lang].formCont + ': </span><input type="radio" name="pagecontent" value="blank" checked="checked">' + i18n[lang].formBlank; '</input><br /><br /></fieldset></form>';
128     var monobookHTML = '<fieldset id="page-create-fieldset" style="width: 70%;"><legend>' + i18n[lang].formTitle + '</legend><input type="radio" name="namespace" value="main" checked="checked">' + i18n[lang].formMain + '</input><input type="radio" name="namespace" value="fan">Custom/Story/Artwork</input><input type="radio" name="namespace" value="category">' + i18n[lang].formCat + '</input><input type="radio" name="namespace" value="mediawiki">' + i18n[lang].formMW + '</input><input type="radio" name="namespace" value="template">' + i18n[lang].formTemp + '</input><br/><br/><input type="text" id="NewPageTitle" style="width: 80%;" placeholder="Page title"/><br/><br/><span>' + i18n[lang].formCont + ': </span><input type="radio" name="pagecontent" value="blank" checked="checked">' + i18n[lang].formBlank + '</input><input type="radio" name="pagecontent" value="preloadSet">Set</input><input type="radio" name="pagecontent" value="preloadMinifig">Minifigure</input><input type="radio" name="pagecontent" value="preloadTheme">Theme</input><input type="radio" name="pagecontent" value="preloadPart">Part</input><input type="radio" name="pagecontent" value="preloadBook">Book</input><input type="radio" name="pagecontent" value="preloadVideoGame">Game (Video)</input><input type="radio" name="pagecontent" value="preloadOnlineGame">Game (Online)</input><input type="radio" name="pagecontent" value="preloadMagazine">Magazine</input><input type="radio" name="pagecontent" value="preloadFilm">Film</input><input type="radio" name="pagecontent" value="preloadEpisode">Episode</input><input type="radio" name="pagecontent" value="preloadSeries">Series</input><input type="radio" name="pagecontent" value="preloadRide">Ride</input><input type="radio" name="pagecontent" value="preloadPerson">Person</input><br /><br /><button id="create-button" style="float: right;">' + i18n[lang].formStart + '</button></fieldset>';
129  
130     if (page != i18n[lang].formPage) {
131         $("#p-tb ul").append('<li><a href="' + server + '/wiki/' + i18n[lang].formPage + '">' + i18n[lang].formTitle + '</a></li>');
132     } else {
133         makePage();
134     }
135  
136     function makeForm() {
137         $.showCustomModal(i18n[lang].formTitle, formHTML, {
138             id: "page-create",
139             width: 500,
140             buttons: [{
141                 id: "page-create-close",
142                 message: i18n[lang].formCancel,
143                 handler: function () {
144                     $("#page-create").closeModal();
145                 }
146             }, {
147                 id: "page-create-go",
148                 defaultButton: true,
149                 message: i18n[lang].formStart,
150                 handler: function () {
151                     redirectWindow();
152                 }
153             }]
154         });
155     }
156  
157     function makePage() {
158         $("title").text("Create new page - " + mw.config.get("wgSiteName"));
159         $("#firstHeading").html("Create a new page");
160         $("#bodyContent").html(monobookHTML);
161         $("#create-button").click(function () {
162             redirectWindow();
163         });
164     }
165  
166     function redirectWindow() {
167         var namespace = $("input[name=namespace]:checked").val();
168         var target = $("#NewPageTitle").val();
169         var populated = $("input[name=pagecontent]:checked").val();
170         var link = server + '/wiki/';
171         
172         /* Preloadable Outlines */
173         var preloadSet = $("input[name=preloadSet]:checked").val();
174         var preloadMinifig = $("input[name=preloadMinifig]:checked").val();
175         var preloadTheme = $("input[name=preloadTheme]:checked").val();
176         var preloadPart = $("input[name=preloadPart]:checked").val();
177         var preloadBook = $("input[name=preloadBook]:checked").val();
178         var preloadVideoGame = $("input[name=preloadVideoGame]:checked").val();
179         var preloadOnlineGame = $("input[name=preloadOnlineGame]:checked").val();
180         var preloadMagazine = $("input[name=preloadMagazine]:checked").val();
181         var preloadFilm = $("input[name=preloadFilm]:checked").val();
182         var preloadEpisode = $("input[name=preloadEpisode]:checked").val();
183         var preloadSeries = $("input[name=preloadSeries]:checked").val();
184         var preloadRide = $("input[name=preloadRide]:checked").val();
185         var preloadPerson = $("input[name=preloadPerson]:checked").val();
186  
187         switch (namespace) {
188             case "main":
189                 link += target + '?action=edit';
190  
191                 if (populated == "populated") {
192                     link += '&useFormat=1';
193                 } else if (populated == "preloadSet") {
194 					link += '&preload=MediaWiki:Createplate-Set';
195                 } else if (populated == "preloadMinifig") {
196 					link += '&preload=MediaWiki:Createplate-Minifigure';
197                 } else if (populated == "preloadTheme") {
198 					link += '&preload=MediaWiki:Createplate-Theme';
199                 } else if (populated == "preloadPart") {
200 					link += '&preload=MediaWiki:Createplate-Part';
201                 } else if (populated == "preloadBook") {
202 					link += '&preload=MediaWiki:Createplate-Book';
203                 } else if (populated == "preloadVideoGame") {
204 					link += '&preload=MediaWiki:Createplate-Videogame';
205                 } else if (populated == "preloadOnlineGame") {
206 					link += '&preload=MediaWiki:Createplate-Online_game';
207                 } else if (populated == "preloadMagazine") {
208                     link += '&preload=MediaWiki:Createplate-Magazine';
209                 } else if (populated == "preloadFilm") {
210                     link += '&preload=MediaWiki:Createplate-Film';
211                 } else if (populated == "preloadEpisode") {
212                     link += '&preload=MediaWiki:Createplate-Episode';
213                 } else if (populated == "preloadSeries") {
214                     link += '&preload=MediaWiki:Createplate-Series';
215                 } else if (populated == "preloadRide") {
216                     link += '&preload=MediaWiki:Createplate-Ride';
217                 } else if (populated == "preloadPerson") {
218                     link += '&preload=MediaWiki:Createplate-Person';
219                 }
220                 break;
221             case "fan":
222                 link += 'Fan:' + target + '?action=edit';
223  
224                 if (populated == "populated") {
225                     link += '&useFormat=1';
226                 } else if (populated == "preloadSet") {
227 					link += '&preload=MediaWiki:Createplate-CustomSet';
228                 } else if (populated == "preloadMinifig") {
229 					link += '&preload=MediaWiki:Createplate-CustomMinifigure';
230                 } else if (populated == "preloadTheme") {
231 					link += '&preload=MediaWiki:Createplate-CustomTheme';
232                 } else if (populated == "preloadVideoGame") {
233 					link += '&preload=MediaWiki:Createplate-CustomVideogame';
234                 }
235                 break;
236 
237             case "category":
238                 link += i18n[lang].formCat + ':' + target + '?action=edit';
239                 break;
240             case "mediawiki":
241                 link += i18n[lang].formMW + ':' + target + '?action=edit';
242                 break;
243             case "template":
244                 link += i18n[lang].formTemp + ':' + target + '?action=edit';
245                 break;
246             default:
247                 break;
248         }
249         link += '&summary=created%20using%20%5B%5BUser%3AToaMeiko%2Fcreatepage%2Ejs%7Ccreatepage%2Ejs%5D%5D';
250         window.location = link;
251     }
252 }(this.jQuery, this.mediaWiki, this));
253 
254 mw.loader.addStyleTag('fieldset#page-create-fieldset input[type=radio]:not(:first-of-type){margin-left: 1em;}');