File: /var/www/vhosts/creativefellows.nl/training.creativefellows.nl/public/js/app.js
$(document).foundation().ready(function(){
$('.scroll-to-top').scrollToTop();
$(".button[data-cobrand]").cobrandFile();
// open external links in new window
$(document.links).filter(function() {
return this.hostname != window.location.hostname;
}).attr('target', '_blank');
$("#responsive-menu a").click(function(){
if(Foundation.MediaQuery.current == ("small" || "medium") ){
$("#responsive-menu").toggle();
$(".toggle-menu").toggleClass("open");
}
});
$('.multifile').each(function (id,element) {
//console.log("file upload");
var progress_bar= $(this).attr("data-progress");
var files = $(this).attr("data-files");
var uploadname = $(this).attr("data-org-name");
var form_btn = $(this).closest(".form").find(".button");
var upload_cnt = $(this).closest(".form").find("#co-branding-file-count");
var file_count = 0;
$(this).fileupload({
url: "/uploadfiles",
dataType: 'json',
add: function (e, data) {
// data.context = $('<p/>').text('Uploading...').appendTo(document.body);
data.submit();
form_btn.attr('disabled', true);
$('#'+ progress_bar).removeClass("hide");
},
done: function (e, data) {
$.each(data.result.files, function (index, file) {
var link = $('<a>')
.attr('target', '_blank')
.prop('href', file.url)
.prop('class',"pdf-link")
.text(file.name);
var inp = $('<input type="hidden" name="'+ uploadname +'[]">').attr("value",file.url);
var del = $('<a>')
.prop('class','delete-file')
.prop('href', file.deleteUrl)
.html("<i class='fa fa-trash'></i>");
var span = $('<span class="file-row">').append(link).append(del).append(inp);
//console.log('#files-'+uploadname);
$('#files-'+uploadname).append(span);
// delete the file
del.deleteFile();
file_count++;
upload_cnt.val(file_count);
});
},
complete: function(){
var activeUploads = $('#files').fileupload('active');
if(activeUploads == 0){
form_btn.attr('disabled', false);
$('#'+ progress_bar).addClass("hide");
}
},
progressall: function (e, data) {
var progress = parseInt(data.loaded / data.total * 100, 10);
$('#'+ progress_bar +' .progress-meter').css(
'width',
progress + '%'
);
}
}).prop('disabled', !$.support.fileInput)
.parent().addClass($.support.fileInput ? undefined : 'disabled');
});
//console.log( $(".top-bar a:not([href$=contact-us])") );
});
$.fn.cobrandFile = function(){
return this.each(function(){
var plugin = $(this);
var $wrap = $("#selected-cobrand-docs");
var $button = $wrap.find(".button");
var $selected = $("#selected-docs");
var $formDocs = $("#selected-docs-form");
var $files = null;
plugin.init = function()
{
$(this).click(plugin.toggle)
$button.click(plugin.setFormDocs)
}
plugin.toggle = function()
{
// file is checked
$(this).toggleClass("selected");
// set files
plugin.setSelectedFiles();
// check ribbon visbility
plugin.checkVisibility();
// insert files in ribbon
$selected.html("").append( plugin.fileLabels() )
}
plugin.fileLabels = function()
{
var $labels = $("<div>");
$files.each(function(){
var label = $('<span class="label primary"><i class="fal fa-file-pdf"></i> '+ $(this).data("cobrand") +'<input type="hidden" name="co-branding-files[]" value="'+ $(this).data("cobrand") +'"></span>');
$labels.append(label);
});
return $labels;
}
plugin.setFormDocs = function()
{
// set files
plugin.setSelectedFiles();
// insert files in ribbon
$formDocs.html("").append( plugin.fileLabels() )
}
plugin.setSelectedFiles = function()
{
$files = $(".selected[data-cobrand]");
}
plugin.checkVisibility = function(){
if($files.length > 0) $wrap.removeClass("hide");
else $wrap.addClass("hide");
}
// init the plugin
plugin.init();
});
}
/*
* Delete file
*/
$.fn.deleteFile = function()
{
$(this).click(function(event){
event.preventDefault();
var $link = $(this);
var req = $.ajax({
dataType: 'json',
url: $(this).attr("href"),
data:{
test : "test"
},
type: 'DELETE',
success: function(){
$link.closest('span').remove();
}
});
});
}
/*
$(document).pjax('.top-bar a:not([href$=contact-us]), a[ajax-load]', '#view-container', {
fragment: '#view-container',
timeout: 3000
});
$(document).on('pjax:send', function() {
$('#loading').show()
});
$(document).on('pjax:complete', function() {
$('#loading').fadeOut();
$(document).foundation();
scrollToSection();
$(".button[data-cobrand]").cobrandFile();
// open external links in new window
$(document.links).filter(function() {
return this.hostname != window.location.hostname;
}).attr('target', '_blank');
});*/
function scrollToSection(){
var hash = window.location.hash
if ( hash == '' || hash == '#' || hash == undefined ) return false;
var target = $(hash);
target = target.length ? target : $('[name=' + hash.slice(1) +']');
if (target.length) {
$('html,body').scrollTop( target.offset().top - 72 )
}
};
$.fn.scrollToTop = function(){
return this.each(function(){
var plugin = $(this);
plugin.init = function()
{
plugin.click(function(){
$('html, body').animate({scrollTop : 0},800);
return false;
});
$(window).scroll(function(){
if ($(this).scrollTop() > 100) {
plugin.fadeIn();
} else {
plugin.fadeOut();
}
});
}
// init the plugin
plugin.init();
});
}
$.fn.fixednav = function(){
var shrinkHeader = 128;//$('#header').height();
var lastScrollTop = 0;
var elements = $('header');
$(window).scroll(function() {
var scrollYpos = getCurrentScroll();
if(scrollYpos >= shrinkHeader) elements.addClass('has-scrolled');
else elements.removeClass('has-scrolled');
// set scroll pos
lastScrollTop = scrollYpos;
});
function getCurrentScroll()
{
return window.pageYOffset;
}
function checkScrollPosition()
{
var scroll = getCurrentScroll();
if(scroll >= shrinkHeader) elements.addClass('has-scrolled');
}
checkScrollPosition();
}