MediaWiki:Common.js: Unterschied zwischen den Versionen
Aus WIKI LAUER-FISCHER GmbH
Zeile 56: | Zeile 56: | ||
jQuery(this).click(function () { | jQuery(this).click(function () { | ||
− | |||
− | |||
var newExpanded = jQuery(this).attr("aria-pressed") !== "true"; | var newExpanded = jQuery(this).attr("aria-pressed") !== "true"; | ||
var newArrow = newExpanded ? arrow_expanded : arrow_collapsed; | var newArrow = newExpanded ? arrow_expanded : arrow_collapsed; | ||
Zeile 63: | Zeile 61: | ||
jQuery(this).parent().css("background-image", newArrow); | jQuery(this).parent().css("background-image", newArrow); | ||
jQuery(this).attr("aria-pressed", newExpanded ? "true" : "false"); | jQuery(this).attr("aria-pressed", newExpanded ? "true" : "false"); | ||
+ | jQuery(this).parent().children("div.pBody:first-of-type").slideToggle('fast'); | ||
if (newExpanded) { | if (newExpanded) { |
Version vom 9. April 2018, 10:46 Uhr
var arrow_expanded = "url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjwhLS0gQ3JlYXRlZCB3aXRoIElua3NjYXBlIChodHRwOi8vd3d3Lmlua3NjYXBlLm9yZy8pIC0tPgoKPHN2ZwogICB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iCiAgIHhtbG5zOmNjPSJodHRwOi8vY3JlYXRpdmVjb21tb25zLm9yZy9ucyMiCiAgIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyIKICAgeG1sbnM6c3ZnPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogICB4bWxuczpzb2RpcG9kaT0iaHR0cDovL3NvZGlwb2RpLnNvdXJjZWZvcmdlLm5ldC9EVEQvc29kaXBvZGktMC5kdGQiCiAgIHhtbG5zOmlua3NjYXBlPSJodHRwOi8vd3d3Lmlua3NjYXBlLm9yZy9uYW1lc3BhY2VzL2lua3NjYXBlIgogICB3aWR0aD0iMTYiCiAgIGhlaWdodD0iMTYiCiAgIGlkPSJzdmcyIgogICB2ZXJzaW9uPSIxLjEiCiAgIGlua3NjYXBlOnZlcnNpb249IjAuNDguNSByMTAwNDAiCiAgIHNvZGlwb2RpOmRvY25hbWU9ImFycm93LWV4cGFuZGVkLnN2ZyI+CiAgPGRlZnMKICAgICBpZD0iZGVmczQiIC8+CiAgPHNvZGlwb2RpOm5hbWVkdmlldwogICAgIGlkPSJiYXNlIgogICAgIHBhZ2Vjb2xvcj0iI2ZmZmZmZiIKICAgICBib3JkZXJjb2xvcj0iIzY2NjY2NiIKICAgICBib3JkZXJvcGFjaXR5PSIxLjAiCiAgICAgaW5rc2NhcGU6cGFnZW9wYWNpdHk9IjAuMCIKICAgICBpbmtzY2FwZTpwYWdlc2hhZG93PSIyIgogICAgIGlua3NjYXBlOnpvb209IjMyLjM4IgogICAgIGlua3NjYXBlOmN4PSIxMS42MDUwMjkiCiAgICAgaW5rc2NhcGU6Y3k9IjExLjA2MTQxIgogICAgIGlua3NjYXBlOmRvY3VtZW50LXVuaXRzPSJweCIKICAgICBpbmtzY2FwZTpjdXJyZW50LWxheWVyPSJsYXllcjEiCiAgICAgc2hvd2dyaWQ9ImZhbHNlIgogICAgIGlua3NjYXBlOndpbmRvdy13aWR0aD0iMTM2NiIKICAgICBpbmtzY2FwZTp3aW5kb3ctaGVpZ2h0PSI3MDUiCiAgICAgaW5rc2NhcGU6d2luZG93LXg9Ii04IgogICAgIGlua3NjYXBlOndpbmRvdy15PSItOCIKICAgICBpbmtzY2FwZTp3aW5kb3ctbWF4aW1pemVkPSIxIiAvPgogIDxtZXRhZGF0YQogICAgIGlkPSJtZXRhZGF0YTciPgogICAgPHJkZjpSREY+CiAgICAgIDxjYzpXb3JrCiAgICAgICAgIHJkZjphYm91dD0iIj4KICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3N2Zyt4bWw8L2RjOmZvcm1hdD4KICAgICAgICA8ZGM6dHlwZQogICAgICAgICAgIHJkZjpyZXNvdXJjZT0iaHR0cDovL3B1cmwub3JnL2RjL2RjbWl0eXBlL1N0aWxsSW1hZ2UiIC8+CiAgICAgICAgPGRjOnRpdGxlPjwvZGM6dGl0bGU+CiAgICAgIDwvY2M6V29yaz4KICAgIDwvcmRmOlJERj4KICA8L21ldGFkYXRhPgogIDxnCiAgICAgaW5rc2NhcGU6bGFiZWw9IkxheWVyIDEiCiAgICAgaW5rc2NhcGU6Z3JvdXBtb2RlPSJsYXllciIKICAgICBpZD0ibGF5ZXIxIj4KICAgIDxwYXRoCiAgICAgICBzdHlsZT0iZmlsbDojNzk3OTc5IgogICAgICAgaW5rc2NhcGU6Y29ubmVjdG9yLWN1cnZhdHVyZT0iMCIKICAgICAgIGQ9Im0gMTMuMDAyLDYuMDAxIC01LDUuMDAxIC01LC01LjAwMSB6IgogICAgICAgaWQ9InBhdGgyOTk3IiAvPgogIDwvZz4KPC9zdmc+)"; var arrow_collapsed = "url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjwhLS0gQ3JlYXRlZCB3aXRoIElua3NjYXBlIChodHRwOi8vd3d3Lmlua3NjYXBlLm9yZy8pIC0tPgoKPHN2ZwogICB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iCiAgIHhtbG5zOmNjPSJodHRwOi8vY3JlYXRpdmVjb21tb25zLm9yZy9ucyMiCiAgIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyIKICAgeG1sbnM6c3ZnPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogICB4bWxuczpzb2RpcG9kaT0iaHR0cDovL3NvZGlwb2RpLnNvdXJjZWZvcmdlLm5ldC9EVEQvc29kaXBvZGktMC5kdGQiCiAgIHhtbG5zOmlua3NjYXBlPSJodHRwOi8vd3d3Lmlua3NjYXBlLm9yZy9uYW1lc3BhY2VzL2lua3NjYXBlIgogICB3aWR0aD0iMTYiCiAgIGhlaWdodD0iMTYiCiAgIGlkPSJzdmcyIgogICB2ZXJzaW9uPSIxLjEiCiAgIGlua3NjYXBlOnZlcnNpb249IjAuNDguNSByMTAwNDAiCiAgIHNvZGlwb2RpOmRvY25hbWU9ImFycm93LWNvbGxhcHNlZC1sdHIuc3ZnIj4KICA8ZGVmcwogICAgIGlkPSJkZWZzNCIgLz4KICA8c29kaXBvZGk6bmFtZWR2aWV3CiAgICAgaWQ9ImJhc2UiCiAgICAgcGFnZWNvbG9yPSIjZmZmZmZmIgogICAgIGJvcmRlcmNvbG9yPSIjNjY2NjY2IgogICAgIGJvcmRlcm9wYWNpdHk9IjEuMCIKICAgICBpbmtzY2FwZTpwYWdlb3BhY2l0eT0iMC4wIgogICAgIGlua3NjYXBlOnBhZ2VzaGFkb3c9IjIiCiAgICAgaW5rc2NhcGU6em9vbT0iMzIuMzgiCiAgICAgaW5rc2NhcGU6Y3g9IjYuODI1Nzg4OCIKICAgICBpbmtzY2FwZTpjeT0iOC45MTE1Mjg4IgogICAgIGlua3NjYXBlOmRvY3VtZW50LXVuaXRzPSJweCIKICAgICBpbmtzY2FwZTpjdXJyZW50LWxheWVyPSJsYXllcjEiCiAgICAgc2hvd2dyaWQ9ImZhbHNlIgogICAgIGlua3NjYXBlOndpbmRvdy13aWR0aD0iMTM2NiIKICAgICBpbmtzY2FwZTp3aW5kb3ctaGVpZ2h0PSI3MDUiCiAgICAgaW5rc2NhcGU6d2luZG93LXg9Ii04IgogICAgIGlua3NjYXBlOndpbmRvdy15PSItOCIKICAgICBpbmtzY2FwZTp3aW5kb3ctbWF4aW1pemVkPSIxIiAvPgogIDxtZXRhZGF0YQogICAgIGlkPSJtZXRhZGF0YTciPgogICAgPHJkZjpSREY+CiAgICAgIDxjYzpXb3JrCiAgICAgICAgIHJkZjphYm91dD0iIj4KICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3N2Zyt4bWw8L2RjOmZvcm1hdD4KICAgICAgICA8ZGM6dHlwZQogICAgICAgICAgIHJkZjpyZXNvdXJjZT0iaHR0cDovL3B1cmwub3JnL2RjL2RjbWl0eXBlL1N0aWxsSW1hZ2UiIC8+CiAgICAgICAgPGRjOnRpdGxlPjwvZGM6dGl0bGU+CiAgICAgIDwvY2M6V29yaz4KICAgIDwvcmRmOlJERj4KICA8L21ldGFkYXRhPgogIDxnCiAgICAgaW5rc2NhcGU6bGFiZWw9IkxheWVyIDEiCiAgICAgaW5rc2NhcGU6Z3JvdXBtb2RlPSJsYXllciIKICAgICBpZD0ibGF5ZXIxIj4KICAgIDxwYXRoCiAgICAgICBkPSJtIDYuMDAxLDIuOTk4IDUuMDAxLDUgLTUuMDAxLDUgeiIKICAgICAgIGlkPSJwYXRoMjk5NyIKICAgICAgIGlua3NjYXBlOmNvbm5lY3Rvci1jdXJ2YXR1cmU9IjAiCiAgICAgICBzdHlsZT0iZmlsbDojNzk3OTc5IiAvPgogIDwvZz4KPC9zdmc+)"; // Delete WINAPO SQL from Addon-Produkte and insert a new link after Addon-Produkte. // That way WINAPO SQL looks like big link and is not affected by slideToggle() on Addon-Produkte. jQuery(document).ready(function () { if (jQuery("#n-WINAPO-SQL").length > 0) { var sql_margin_top = jQuery("#n-WINAPO-SQL a").css("margin-top"); var sql_margin_bottom = "calc(" + jQuery("#p-AddOn-Produkte").css("margin-bottom") + " + " + jQuery("#p-AddOn-Produkte div").css("padding-bottom") + ")"; var sql_font_size = jQuery("#n-WINAPO-SQL a").css("font-size"); var sql_padding_left = jQuery("#p-search > h3").css("padding-left"); var sql_line_height = jQuery("#n-WINAPO-SQL a").css("line-height"); var sql_height = jQuery("#n-WINAPO-SQL a").css("height"); jQuery("#n-WINAPO-SQL").detach(); jQuery("#p-AddOn-Produkte").css({ "margin-bottom": "0px" }); jQuery("#p-AddOn-Produkte div").css({ "padding-bottom": "0px" }); jQuery("#p-AddOn-Produkte").after("<a href=\"/Kategorie:WINAPO_SQL\" class=\"portlet generated-sidebar\"><h3>WINAPO SQL</h3></a>"); jQuery("#p-AddOn-Produkte + a > h3").css({ "margin-bottom": "0px", "margin-top": "0px", "padding-left": sql_padding_left, "padding-top": "0px", "padding-bottom": "0px", "font-size": sql_font_size, "line-height": sql_line_height, "height": sql_height }); jQuery("#p-AddOn-Produkte + a").css({"display": "block", "margin-bottom": sql_margin_bottom, "margin-top": sql_margin_top, "padding-top": "0px", "padding-bottom": "0px"}); } // Register slideToggle() on each category. jQuery("div.generated-sidebar.portlet > h3").each(makeOnClick); }); // Registers the slideToggle() function on this and sets up the cookie function makeOnClick(n) { "use strict"; jQuery(this).attr({ "role": "button", "type": "button" }); var cookie = getCookie("showSection" + n); var expanded; if (cookie === null) { expanded = true; setStateCookie(n, expanded); } else { expanded = cookie === "1"; } jQuery(this).attr("aria-pressed", expanded ? "true" : "false"); var css = expanded ? arrow_expanded : arrow_collapsed; jQuery(this).parent().css({ "background-image": css, "background-repeat": "no-repeat" }); if (expanded) { jQuery(this).addClass("expanded"); } else { jQuery(this).addClass("collapsed"); jQuery(this).parent().children("div").hide(); } jQuery(this).click(function () { var newExpanded = jQuery(this).attr("aria-pressed") !== "true"; var newArrow = newExpanded ? arrow_expanded : arrow_collapsed; setStateCookie(n, newExpanded); jQuery(this).parent().css("background-image", newArrow); jQuery(this).attr("aria-pressed", newExpanded ? "true" : "false"); jQuery(this).parent().children("div.pBody:first-of-type").slideToggle('fast'); if (newExpanded) { jQuery(this).removeClass("collapsed").addClass("expanded"); } else { jQuery(this).removeClass("expanded").addClass("collapsed"); } }) function getCookie(key) { "use strict"; var cookieQuery = document.cookie.match('(?:^|;)\\s*' + key + '\\s*=\\s*([^;]+)'); return cookieQuery === null ? null : cookieQuery.pop(); } // Writes the state of the k-th section into a cookie. function setStateCookie(k, expanded) { "use strict"; var now = new Date(); now.setFullYear(now.getFullYear() + 3); var expirationDate = now.toUTCString(); var cookie = "showSection" + k.toString() + "=" + (expanded ? "1" : "0") + "; Expires=" + expirationDate + "; path=/"; document.cookie = cookie; } }