HEX
Server: Apache
System: Linux v38079.2is.nl 3.10.0-1160.119.1.el7.x86_64 #1 SMP Tue Jun 4 14:43:51 UTC 2024 x86_64
User: democfellows (10015)
PHP: 8.1.34
Disabled: opcache_get_status
Upload Files
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();	
	
}