inside out project STEP-106 to STEP-107 app.js Code Changes

Created Diff never expires
14 removals
Lines
Total
Removed
Words
Total
Removed
To continue using this feature, upgrade to
Diffchecker logo
Diffchecker Pro
104 lines
38 additions
Lines
Total
Added
Words
Total
Added
To continue using this feature, upgrade to
Diffchecker logo
Diffchecker Pro
128 lines
// inside out project STEP-106
// inside out project STEP-106


window.onload = init();
window.onload = init();


function init() {
function init() {


window.addEventListener('scroll', function(e) {
window.addEventListener('scroll', function(e) {
var distanceY = window.pageYOffset || document.documentElement.scrollTop,
var distanceY = window.pageYOffset || document.documentElement.scrollTop,
shrinkOn = 300,
shrinkOn = 300,
header = document.querySelector("header");
header = document.querySelector("header");
if (distanceY > shrinkOn) {
if (distanceY > shrinkOn) {
classie.add(header, "smaller");
classie.add(header, "smaller");
} else {
} else {
if (classie.has(header, "smaller")) {
if (classie.has(header, "smaller")) {
classie.remove(header, "smaller");
classie.remove(header, "smaller");
}
}
}
}
});
});




$.ajax({
$.ajax({
method: 'GET',
method: 'GET',
url: 'https://me.inside-out-project.com/wp-json/wp-api-menus/v2/menus/3',
url: 'https://me.inside-out-project.com/wp-json/wp-api-menus/v2/menus/3',
dataType: 'json',
dataType: 'json',
success: function(data) {
success: function(data) {
$('nav').hide();
$('nav').hide();
var menu = menuBuilder(data.items);
var menu = menuBuilder(data.items);
$('nav').html(menu).slideDown();
$('nav').html(menu).slideDown();
$('nav li a').click(function() {
$('nav li a').click(function() {
getPage($(this).data("pgid"));
getPage($(this).data("pgid"), $(this).data("callkind"));
});
});
getPage(314);
getPage(314,'pages');
$("#loaderDiv").fadeOut("slow");
$("#loaderDiv").fadeOut("slow");
},
},
error: function() {
error: function() {
console.log('all is not good');
console.log('all is not good');
}
}
});
});


$.ajax({
$.ajax({
method: 'GET',
method: 'GET',
url: 'https://me.inside-out-project.com/wp-json/wp-api-menus/v2/menus/12',
url: 'https://me.inside-out-project.com/wp-json/wp-api-menus/v2/menus/12',
dataType: 'json',
dataType: 'json',
success: function (data) {
success: function (data) {
var menu = menuBuilder(data.items, 'genLinks', 'footer-ul');
var menu = menuBuilder(data.items, 'genLinks', 'footer-ul');
$('#genLinks').replaceWith(menu);
$('#genLinks').replaceWith(menu);
$('#genLinks li a').click(function () {
$('#genLinks li a').click(function () {
getPage($(this).data("pgid"));
getPage($(this).data("pgid"), $(this).data("callkind"));
});
});
},
},
error: function () {
error: function () {
console.log('all is not good');
console.log('all is not good');
}
}
});
});
getPosts();
}
}




function menuBuilder(obj, targetEl, classInfo) {
function menuBuilder(obj, targetEl, classInfo) {
var theMenu = '';
var theMenu = '';
if (obj.length > 0) {
if (obj.length > 0) {
let target = (targetEl)?' id="'+targetEl+'"':'';
let target = (targetEl)?' id="'+targetEl+'"':'';
let elClass = (classInfo)?' class="'+classInfo+'"':'';
let elClass = (classInfo)?' class="'+classInfo+'"':'';
theMenu = theMenu + '<ul'+target+''+elClass+'>';
theMenu = theMenu + '<ul'+target+''+elClass+'>';
console.log(theMenu+' '+target);
obj.forEach(function (item) {
obj.forEach(function (item) {
theMenu = theMenu + '<li><a href="#" data-pgid="' + item.object_id + '">' + item.title + '</a>';
theMenu = theMenu + '<li><a href="#" data-pgid="' + item.object_id + '" data-callkind="pages">' + item.title + '</a>';
if (item.children) {
if (item.children) {
theMenu = theMenu + menuBuilder(item.children);
theMenu = theMenu + menuBuilder(item.children);
}
}
theMenu = theMenu + '</li>';
theMenu = theMenu + '</li>';
});
});
theMenu = theMenu + '</ul>';
theMenu = theMenu + '</ul>';
} else {
} else {
console.log('no data');
console.log('no data');
}
}
return theMenu;
return theMenu;
}
}
function getPage(obj) {
function getPage(objId, objType) {
$("#loaderDiv").fadeIn("slow");
$("#loaderDiv").fadeIn("slow");
$('html').animate({scrollTop: 0}, 'slow');
$.ajax({
$.ajax({
method: 'GET',
method: 'GET',
url: 'https://me.inside-out-project.com/wp-json/wp/v2/pages/' + obj,
url: 'https://me.inside-out-project.com/wp-json/wp/v2/'+objType+'/' + objId,
dataType: 'json',
dataType: 'json',
success: function(data) {
success: function(data) {
var pgbuild = '';
var pgbuild = '';
pgbuild = '<section><div class="container">' + data.content.rendered + '</div></section>';
pgbuild = '<section><div class="container">' + data.content.rendered + '</div></section>';
$("#content").fadeOut(function() {
$("#content").fadeOut(function() {
$('html').animate({
scrollTop: 0
}, 'slow'); //IE, FF
$('body').animate({
scrollTop: 0
}, 'slow'); //chrome, don't know if Safari works
$(this).html(pgbuild).fadeIn();
$(this).html(pgbuild).fadeIn();
$("#loaderDiv").fadeOut("slow");
$("#loaderDiv").fadeOut("slow");
});
});
},
},
error: function() {
error: function() {
console.log('bad');
console.log('bad');
}
}
});
});
}
}

function getPosts() {

$.ajax({
method: 'GET',
url: 'https://me.inside-out-project.com/wp-json/wp/v2/posts?orderby=date&order=asc&per_page=5',
dataType: 'json',
success: function (data) {
$("#latestPosts").html('<p id="postLdr"><i class="fa fa-cogs"></i> Loading Posts</p>');
data.forEach(function (item) {

var myDate = new Date(item.date);

$("#latestPosts").prepend('<p><a href="#" data-pgid="' + item.id + '" data-callkind="posts">' + item.title.rendered + '<span>' + myDate.getMonth() + '-' + myDate.getDay() + '-' + myDate.getFullYear() + '</span></a></p>');

});
$('#latestPosts p a').click(function () {
getPage($(this).data("pgid"), $(this).data("callkind"));
});

$("#postLdr").remove();
},
error: function () {
console.log('bad');
}
});
}