simplestyle
Version:
Simple Style Guide Tool based on Atomic Web Design
110 lines (80 loc) • 3.17 kB
JavaScript
var jQuery = jQuery.noConflict();
(function ($) {
'use strict';
var strabag = strabag || {};
var searchIconSVG = "<svg class='icon icon-arrow-up' style='width: 22px; height: 22px;'><use xlink:href='/_layouts/15/images/wpxp.strabag.design/icons.svg#icon-search2'></use></path>";
var footerLink = ".btn-up";
var btnBrgrMenu = ".menu-burger";
var ctnBrgrCnt = ".menu-burger-content";
// Replace all search icons as an SVG
strabag.replaceSrchIcon = function () {
var searchIcon = $('#ctl00_PlaceHolderSearchArea_SmallSearchInputBox1_csr_SearchLink');
if (searchIcon.length !== 0) {
searchIcon.html(searchIconSVG);
}
};
// Hand workspace scroll up events
strabag.scrollUp = function (event) {
$("#s4-workspace").animate({
scrollTop: 0
});
}
// Handle all burger click events
strabag.burgerEvent = function () {
var active = 'active'; // Optimisation for minification
var menu = $(btnBrgrMenu); // request burger button
var menuContent = $(ctnBrgrCnt); // request burger content;
if (menu.length !== 0) {
// Burger is activated
if (menu.hasClass(active)) {
menu.removeClass(active);
menuContent.removeClass(active);
console.log('menu-isactive');
} else {
console.log('menu-isinactive');
menu.addClass(active);
menuContent.addClass(active);
}
}
};
// Add Burger Content to Responsive Drop Down
strabag.burgerMenu = function () {
var commAsMember = $('#tdMyCommunitiesAsMember');
var commAsOwner = $('#tdMyCommunitiesAsOwner');
var importantLinks = $('#tdImportantLinks');
// add communities as member
if (commAsMember.length !== 0) {
$(ctnBrgrCnt).append('<div class=menu-item-header>Communities as Member</div>');
$(ctnBrgrCnt).append(commAsMember.html());
} else {
}
// add communities as owners
if (commAsOwner.length !== 0) {
$(ctnBrgrCnt).append('<div class=menu-item-header>Communities as Owner</div>');
$(ctnBrgrCnt).append(commAsOwner.html());
} else {
}
// add important links
if (importantLinks.length !== 0) {
$(ctnBrgrCnt).append('<div class=menu-item-header>Important Links</div>');
$(ctnBrgrCnt).append(importantLinks.html());
} else {
}
};
// Bind all required events to the user interface
strabag.bindEvents = function () {
$(btnBrgrMenu).bind('click', strabag.burgerEvent);
$(footerLink).bind('click', strabag.scrollUp);
}
// Fire up when document finished loading
$(document).ready(function () {
// Bind all events
strabag.bindEvents();
// FixUp Search Cicons
strabag.replaceSrchIcon();
// launch burger menu filling
strabag.burgerMenu();
// make sure all SVG's are loaded'
svg4everybody();
});
}(jQuery));