MediaWiki:Skin/Frage.js

var fragenkats = [ "Beauty & Style", "Computer & Internetz", "Essen & Trinken", "Freizeit", "Freunde & Familie", "Gesundheit", "Haus & Garten", "Kultur & Gesellschaft", "Kunst & Unterhaltung", "Kunst & Unterhaltung", "Politik", "Reisen", "Transport & Verkehr", "Umwelt", "Wirtschaft & Finanzen", "Wissenschaft" ];

function fragenkatsHTML { var html = ' Themengebiete (ohne Funktion!) ';

for (var i = 0; i < fragenkats.length; i++) { var kat = fragenkats[i]; html += "" + kat + " "; }

html += ' '; return html; } //funzt net function fa_fehler { jQuery('#mw-js-message').html("Hmm, es ist ein Fehler aufgetreten!"); jQuery('#mw-js-message').slideDown('fast'); }

//dependencies mw.loader.using(['jquery.ui.dialog'], function {

//abfeuern, wenn document ready jQuery(document).ready(function {        // vars wegen unterschiedlicher skins ...        var fa_skin = mw.user.options.get('skin');        var fa_heading = "#firstHeading";        var fa_footer = "#catlinks";

if (fa_skin == "wptouch") { fa_heading = "h2"; fa_footer = ".cleared" }       // Wenn Frage länger als erlaubte Seitentitellänge, dann austauschen den Kram, ansonsten nur den Titel ohne NS        if (jQuery('#fragezulang').text.length > 0) { jQuery(fa_heading).text(jQuery('#fragezulang').text); jQuery('#fragezulang').hide(0); } else { jQuery(fa_heading).text(jQuery(fa_heading).text.replace("Frage:", "")); }       //Hauptseitenlinks verdrehen if (fa_skin == "vector") { jQuery('#p-logo').html(jQuery('#p-logo').html.replace('Kamelopedia:Hauptseite', 'Frage:Hauptseite')); // Zufällige Frage jQuery('#p-Navigation').html(jQuery('#p-Navigation').html.replace('">Zufällige Seite', '/Frage">Zufällige Frage')); }       jQuery('#n-Hauptseite').html(jQuery('#n-Hauptseite').html.replace('Kamelopedia:Hauptseite', 'Frage:Hauptseite')); //temp: sobald NS-Frage fei, dann nur noch Link austauschen jQuery("#n-KameloNews").before("Kamelopedia");

//Zeuch //Knöppe & Formular und so nicht auf Diskussionsseite //temp Namenrum nicht bearbeitbar //jQuery(fa_heading).before(" Dieser Namensraum ist noch eine Baustelle, und kann bisher nur von Kameltreibern bearbeitet werden. "); if (mw.config.get('wgNamespaceNumber') != 115 && (location.href.indexOf("action=") < 0) && mw.config.get('wgArticleId') != 0) { var knopptext = "Diese Frage beantworten"; var formulartext = "Deine Antwort"; var neuefrage = false; var summarytext = "Antwort"; var apiaction = "edit"; var hinweis = "Denk daran: Dies ist ein Humorwiki. Keine der hier gestellten Fragen ist ernst gemeint. Das sollte auch für deine Antwort gelten.";

if (mw.config.get('wgPageName') == "Frage:Hauptseite" && (location.href.indexOf("action=") < 0) && mw.config.get('wgArticleId') != 0) { knopptext = "Eine neue Frage stellen …"; formulartext = "Deine Frage"; neuefrage = true; summarytext = "Neue Frage"; apiaction = "edit"; var hinweis = "Denk daran: Dies ist ein Humorwiki. Wenn du ernsthafte Antworten erwartest, dann frag besser woanders …"; }           jQuery("#bodyContent").before("  " + knopptext + "  "); jQuery("#fragnav").after(" " + formulartext + " " + hinweis + "    Oh wie lustig, eine leere Antwort speichern ... mach ich nicht:P "); //jQuery("#fragantwort_form").before(fragenkatsHTML); jQuery("#fragantwort_form").submit(function {                var wgUserName = mw.config.get('wgUserName');                if (mw.config.get('wgUserGroups').length == 1) {                    var kamelname = "" + "~"                } else {                    var kamelname = "" + wgUserName + ""                }                if (jQuery("#fragantwort_form textarea").val == "") {                    jQuery("#dialog-modal").dialog({ maxWidth: 650, modal: true });                   return false;                }                //neue frage oder nicht oder was?                if (neuefrage) {                    var frageurl = encodeURIComponent("Frage:" + jQuery("#fragantwort_form textarea").val);                    if (frageurl.length > 240) {                        var seitentext = " " + jQuery("#fragantwort_form textarea").val + " ";                        seitentitel = decodeURIComponent(frageurl.substring(0, 240) + "%E2%80%A6%3F");                    } else {                        var seitentext = "";                        var seitentitel = "Frage:" + jQuery("#fragantwort_form textarea").val;                    }

} else {

var seitentext = "\n==== " + kamelname + " ====\n" + jQuery("#fragantwort_form textarea").val; var seitentitel = mw.config.get('wgPageName'); }

//gehackte Kat Antwort if (jQuery('.mw-headline').length == 0) { seitentext = "\n" + seitentext }               window.antwortdata = { url: "/api.php", data: { format: 'json', action: apiaction, title: seitentitel, summary: summarytext, appendtext: seitentext },                   success: function (data) { if (data.error && data.error.code !== 'unknownerror') { switch (data.error.code) { case 'articleexists': var fehlermeldung = 'Diese Frage wurde bereits gestellt.'; break; case 'blocked': var fehlermeldung = 'Du kannst keine Fragen stellen oder beantworten, da du gesperrt wurdest.'; break; default: var fehlermeldung = 'Es ist ein Fehler aufgetreten. Die API meldet: ' + data.error.code + ': ' + data.error.info; break; }                           $('#antwortfehler').remove; $('#fragantwort .fragehinweis').append(' ' + fehlermeldung + ' '); return; }                       if (neuefrage) { window.location = mw.config.get('wgServer') + "/index.php/" + encodeURIComponent(seitentitel); } else { location.reload(true); }                   },                    error: fa_fehler, type: 'POST' };               if (neuefrage) { window.antwortdata.data.createonly = true; }               jQuery.ajax({                    cache: false,                    url: "/api.php",                    data: {                        format: "xml",                        action: "query",                        prop: "info",                        intoken: "edit",                        titles: seitentitel                    },                    type: 'GET',                    success: function (tr) {                        var token = jQuery(tr).find("api query pages page").attr('edittoken');                        antwortdata.data.token = token;                        jQuery.ajax(antwortdata);                    },                    error: fa_fehler                }); return false; });           jQuery("#fak").click(function  { //jQuery('.mw-content-ltr').hide('fast'); //jQuery('.fragnavknopp').hide; jQuery("#fragantwort").show; jQuery("#fragantwort_form textarea").focus; });           jQuery("#fragantwort_reset").click(function  { //jQuery('.mw-content-ltr').show; //jQuery('.fragnavknopp').show; jQuery("#fragantwort").hide; });       }

});

});