Difference between revisions of "MediaWiki:Common.js"

From OHO - search engine for sustainable open hardware projects
(Die Seite wurde neu angelegt: „→‎Das folgende JavaScript wird für alle Benutzer geladen.: jQuery(document).ready(function($) { mw.loader.using('jquery.ui.autocomplete', function() {…“)
 
 
(2 intermediate revisions by the same user not shown)
Line 1: Line 1:
/* Das folgende JavaScript wird für alle Benutzer geladen. */
/* Das folgende JavaScript wird für alle Benutzer geladen. */
jQuery(document).ready(function($) {
jQuery(document).ready(function($) {
    document.getElementsByClassName("wait_screen_box")[0].style.display = 'none';
     mw.loader.using('jquery.ui.autocomplete', function() {
     mw.loader.using('jquery.ui.autocomplete', function() {
         (function (mw, $) {
         (function (mw, $) {
Line 6: Line 8:
                 $('.searchInputProjectKWAC').autocomplete( {
                 $('.searchInputProjectKWAC').autocomplete( {
                     source: function(request, response) {
                     source: function(request, response) {
                         var api = new mw.Api();
                         mw.loader.using('mw.Api').then(function () {
                        api.get({action:'pfautocomplete', limit:10, substr:request.term, property:'KeywordsEN'}).done(
                             var api = new mw.Api();
                        function (dataEN) {
                             api.get({action:'pfautocomplete', limit:10, substr:request.term, property:'Keywords'}).done(
                             api.get({action:'pfautocomplete', limit:10, substr:request.term, property:'KeywordsES'}).done(
                            function (data) {
                             function (dataES) {
                                var dataf = [];
                                api.get({action:'pfautocomplete', limit:10, substr:request.term, property:'KeywordsDE'}).done(
                                dataf = processListAC(request.term, data, dataf);
                                function (dataDE) {
                                dataf = dataf.sort().slice(0, 10);
                                    var dataf = [];
                                response(dataf);
                                    dataf = processListAC(request.term, dataEN, dataf);
                                    dataf = processListAC(request.term, dataDE, dataf);
                                    dataf = processListAC(request.term, dataES, dataf);
                                    dataf = dataf.sort().slice(0, 10);
                                    response(dataf);
                                });
                             });
                             });
                         });
                         });
Line 27: Line 23:
         }(mediaWiki, jQuery));
         }(mediaWiki, jQuery));
     });
     });
    $(".project_gallery_scroll_box").append('<div class="button_left"></div>');
    $(".project_gallery_scroll_box").append('<div class="button_right"></div>');
    $(".project_gallery_scroll_box a.image, .project_gallery_scroll_box img").unwrap('pre');
    $(".project_gallery_scroll_box > a.image, .project_gallery_scroll_box > img").wrap('<div class="imgbox"></div>');
    $(".project_gallery_scroll_box .imgbox").wrapAll('<div class="gallery_inner"></div>');
    $('.project_gallery_scroll_box img').each(function(){
        var imgClass = (this.width >= this.height) ? 'imgwfill' : 'imghfill';
        $(this).addClass(imgClass);
    });
    $(".project_gallery_scroll_box .button_left").click(function(){
        var binn = $(this).parent().find(".gallery_inner");
        if (binn.position().left < 0) {
            var imgW = binn.find(".imgbox").first().outerWidth();
            binn.animate({left:"+="+imgW});
        }
    });
    $(".project_gallery_scroll_box .button_right").click(function(){
        var binn = $(this).parent().find(".gallery_inner");
        if (binn.position().left + binn.width() > binn.parent().width()) {
            var imgW = binn.find(".imgbox").first().outerWidth();
            binn.animate({left:"-="+imgW});
        }
    });
    $(".project_gallery_scroll_box").removeClass('waitbox');
});
});


Line 46: Line 67:
     return dataf;
     return dataf;
}
}
/* Das folgende JavaScript wird für alle Benutzer geladen. */
$(".materialRow .showComment").click(function(){
  $(this).parent().toggleClass("openComments");
  $(this).parent().parent().next().toggleClass("openCommentsRow");
});
$(".showGralComment").click(function(){
  $(".generalCommentsBox").toggle(500);
  var grhtml = $(".showGralComment").html();
  if (grhtml.indexOf('+') > -1) {
    grhtml = grhtml.replace('+', '-');
  }else{
    grhtml = grhtml.replace('-', '+');
  }
  $(".showGralComment").html(grhtml);
});
$(".project_material_table .showAllComments").click(function(e){
  e.preventDefault();
  var txt = $(this).html();
  if (txt=='Show All Comments') {
    $(".project_material_table .materialCommandsBox").addClass("openComments");
    $(".project_material_table .commentRow").not(".notFoundComment").show(500);
    $(this).html('Hide All Comments');
  }else{
    $(".project_material_table .materialCommandsBox").removeClass("openComments");
    $(".project_material_table .commentRow").not(".notFoundComment").hide(500);
    $(this).html('Show All Comments');
  }
});
$(".searchMatCol").keyup(function(e){
  findRowsByCol($(".searchMatCol"));
});
if (window.initJSFuncts!==undefined) {
  for(ijsf=0; ijsf<window.initJSFuncts.length; ijsf++) {
    try {window.initJSFuncts[ijsf]();}catch(e){console.log(e);}
  }
}
function getUrlParameter(sParam) {
    var sPageURL = window.location.search.substring(1);
    var sURLVariables = sPageURL.split('&');
    for (i = 0; i < sURLVariables.length; i++) {
        sParameterName = sURLVariables[i].split('=');
        if (sParameterName[0] === sParam) {
            return sParameterName[1] === undefined ? true : decodeURIComponent(sParameterName[1]);
        }
    }
}
$(".newtablinks a, .newtablink").attr("target", "_blank");
window.isfirst = true; window.prevc = false;
$('ul.dropdown-menu li a').each(function(){
    if($(this).text().substr(0,1) == '_'){
        if (window.isfirst!==false) {$(this).parent().addClass('firstchild')}
        $(this).text($(this).text().substr(1)).parent().addClass('menuchild lastchild');
        if (window.prevc!==false) {window.prevc.parent().removeClass('lastchild');}
        window.isfirst = false;
        window.prevc = $(this);
    }else{
        window.isfirst = true;
        window.prevc = false;
    }
})
$(".home_resume_text.home_hidden_text .home_more_results_link a").click(function(e){
  e.preventDefault();
  $(this).parent().parent().removeClass('home_hidden_text');
  $(this).parent().hide();
});

Latest revision as of 02:35, 22 February 2022

/* Das folgende JavaScript wird für alle Benutzer geladen. */
jQuery(document).ready(function($) {
    document.getElementsByClassName("wait_screen_box")[0].style.display = 'none';

    mw.loader.using('jquery.ui.autocomplete', function() {
        (function (mw, $) {
            $(function () {
                $('.searchInputProjectKWAC').autocomplete( {
                    source: function(request, response) {
                        mw.loader.using('mw.Api').then(function () {
                            var api = new mw.Api();
                            api.get({action:'pfautocomplete', limit:10, substr:request.term, property:'Keywords'}).done(
                            function (data) {
                                var dataf = [];
                                dataf = processListAC(request.term, data, dataf);
                                dataf = dataf.sort().slice(0, 10);
                                response(dataf);
                            });
                        });
                    }
                });
            });
        }(mediaWiki, jQuery));
    });

    $(".project_gallery_scroll_box").append('<div class="button_left"></div>');
    $(".project_gallery_scroll_box").append('<div class="button_right"></div>');
    $(".project_gallery_scroll_box a.image, .project_gallery_scroll_box img").unwrap('pre');
    $(".project_gallery_scroll_box > a.image, .project_gallery_scroll_box > img").wrap('<div class="imgbox"></div>');
    $(".project_gallery_scroll_box .imgbox").wrapAll('<div class="gallery_inner"></div>');
    $('.project_gallery_scroll_box img').each(function(){
        var imgClass = (this.width >= this.height) ? 'imgwfill' : 'imghfill';
        $(this).addClass(imgClass);
    });
    $(".project_gallery_scroll_box .button_left").click(function(){
        var binn = $(this).parent().find(".gallery_inner");
        if (binn.position().left < 0) {
            var imgW = binn.find(".imgbox").first().outerWidth();
            binn.animate({left:"+="+imgW});
        }
    });
    $(".project_gallery_scroll_box .button_right").click(function(){
        var binn = $(this).parent().find(".gallery_inner");
        if (binn.position().left + binn.width() > binn.parent().width()) {
            var imgW = binn.find(".imgbox").first().outerWidth();
            binn.animate({left:"-="+imgW});
        }
    });
    $(".project_gallery_scroll_box").removeClass('waitbox');
});

function processListAC(search, data, dataf) {
    for(var dlist in data) {
        for(var drow in data[dlist]) {
            var listW = data[dlist][drow].title.split(",");
            for(var w in listW) {
                wt = listW[w].trim();
                if (wt.length>0) {
                    wt = wt.charAt(0).toUpperCase() + wt.substr(1).toLowerCase();
                    if (wt.toLowerCase().indexOf(search.toLowerCase())===0 && $.inArray(wt, dataf)===-1) {
                        dataf[dataf.length] = wt;
                    }
                }
            }
        }
    }
    return dataf;
}

/* Das folgende JavaScript wird für alle Benutzer geladen. */
$(".materialRow .showComment").click(function(){
  $(this).parent().toggleClass("openComments");
  $(this).parent().parent().next().toggleClass("openCommentsRow");
});
$(".showGralComment").click(function(){
  $(".generalCommentsBox").toggle(500);
  var grhtml = $(".showGralComment").html();
  if (grhtml.indexOf('+') > -1) {
    grhtml = grhtml.replace('+', '-');
  }else{
    grhtml = grhtml.replace('-', '+');
  }
  $(".showGralComment").html(grhtml);
});

$(".project_material_table .showAllComments").click(function(e){
  e.preventDefault();
  var txt = $(this).html();
  if (txt=='Show All Comments') {
    $(".project_material_table .materialCommandsBox").addClass("openComments");
    $(".project_material_table .commentRow").not(".notFoundComment").show(500);
    $(this).html('Hide All Comments');
  }else{
    $(".project_material_table .materialCommandsBox").removeClass("openComments");
    $(".project_material_table .commentRow").not(".notFoundComment").hide(500);
    $(this).html('Show All Comments');
  }
});

$(".searchMatCol").keyup(function(e){
  findRowsByCol($(".searchMatCol"));
});

if (window.initJSFuncts!==undefined) {
  for(ijsf=0; ijsf<window.initJSFuncts.length; ijsf++) {
    try {window.initJSFuncts[ijsf]();}catch(e){console.log(e);}
  }
}

function getUrlParameter(sParam) {
    var sPageURL = window.location.search.substring(1);
    var sURLVariables = sPageURL.split('&');
    for (i = 0; i < sURLVariables.length; i++) {
        sParameterName = sURLVariables[i].split('=');
        if (sParameterName[0] === sParam) {
            return sParameterName[1] === undefined ? true : decodeURIComponent(sParameterName[1]);
        }
    }
}

$(".newtablinks a, .newtablink").attr("target", "_blank");

window.isfirst = true; window.prevc = false;
$('ul.dropdown-menu li a').each(function(){
    if($(this).text().substr(0,1) == '_'){
         if (window.isfirst!==false) {$(this).parent().addClass('firstchild')}
         $(this).text($(this).text().substr(1)).parent().addClass('menuchild lastchild');
         if (window.prevc!==false) {window.prevc.parent().removeClass('lastchild');}
         window.isfirst = false;
         window.prevc = $(this);
    }else{
         window.isfirst = true;
         window.prevc = false;
    }
})


$(".home_resume_text.home_hidden_text .home_more_results_link a").click(function(e){
  e.preventDefault();
  $(this).parent().parent().removeClass('home_hidden_text');
  $(this).parent().hide();
});
OPEN HARDWARE OBSERVATORY 2020
| |
|||