Experimint

$.fn.frontend = function($options) {

  //CREATE VARIABLES
  var min_cont_height = 640;
  var load_page = true;
  var animation_running = true;
  var current_page = 'blank';
  var page_home_visited = false;
  var page_grafisch_ontwerp_visited = false;
  var page_webdesign_visited = false;
  var page_fotografie_visited = false;
  var page_info_visited = false;
  var page_contact_visited = false;
  var page_fotografie_active = false;
  var alt_001 = '';
  var alt_002 = '';
  var container_offset = '';
  var facebook_bt_hover = false;
  var twitter_bt_hover = false;


  //LAYOUT
  setLayout();

  setTimeout(function() {
    setLayout();
  }, 350);

  $(window).resize(function() {
    setLayout();
  });

  function setLayout() {
    if ($(window).height() > min_cont_height) {
      $('div#container').height($(window).height());
      $('div#footer').css('top', ($(window).height() - 47));
    } else {
      $('div#container').height(min_cont_height);
      $('div#footer').css('top', ($('div#container').height() - 47));
    }
    if ($(window).width() > $('div#container').width()) {
      $('div.inactive_page_container').css('left', ($('div#container').width() + (($(window).width() - $('div#container').width()) / 2 + 10)));
      $('div.full_width').width($(window).width());
    } else {
      $('div.inactive_page_container').css('left', ($('div#container').width() + 10));
      $('div.full_width').width($('div#container').width() + 7);
    }
    if (load_page == true) {
      $('div#header').css('top', (($('div#container').height() - 104) / 2));
      $('div.footer_header_container').css('margin-left', (($(window).width() - 362) / 2));
    } else {
      $('div#header').css('top', '-7px');
      container_offset = $('div#container').offset();
      $('div.footer_header_container').css('margin-left', (container_offset.left + 6));
      $('div.page_container').css('top', ((($('div#container').height() - 130) - 470) / 2 + 90));
    }
  };



  //PAGE SWITCH

  function pageswitch(old_page, new_page) {
    animation_running = true;
    if (old_page == 'home' || old_page == 'webdesign' || old_page == 'grafisch_ontwerp' || old_page == 'info' || old_page == 'contact') {
      $('div#page_' + old_page).removeClass('active_page_container').addClass('inactive_page_container').animate({
        left: (-1 * (($(window).width() - $('div#container').width()) / 2 + $('div#container').width()))
      }, 1000, 'easeInExpo', function() {
        $('div#page_' + old_page).css('display', 'none');
        setLayout();
        buildpage(new_page);
      });
    } else if (old_page == 'fotografie') {
      $('div#page_fotografie').fadeOut(500, function() {
        $('img#bt_menu_fotografie').attr('src', $('img#bt_menu_fotografie').attr('src').replace(/-active\.(.+)$/i, '.$1'));
        $('img#bt_menu_fotografie').removeClass('bt_menu_active');
        $('img#bt_menu_logo').attr('src', $('img#bt_menu_logo').attr('src').replace(/\.(.+)$/i, '-active.$1'));
        $('img#bt_menu_logo').addClass('bt_menu_active');
        $('div#header, div#footer').fadeIn(1000, function() {
          api.playToggle();
          buildpage(new_page);
        });
      });
    } else if (old_page == 'blank') {
      buildpage(new_page);
    }
  };

  function buildpage(new_page) {
    if (new_page != 'fotografie') {
      $('div#page_' + new_page).css('display', 'block');
      switch (new_page) {
      case 'home':
        if (page_home_visited == false) {
          $('img#bt_menu_logo').attr('src', 'img/no_preload/logo-experimint-active.png');
          $('div#home_slider_holder').nivoSlider({
            effect: 'boxRainGrow',
            slices: 12,
            boxCols: 5,
            boxRows: 4,
            animSpeed: 500,
            pauseTime: 8000,
            directionNav: true,
            directionNavHide: false,
            controlNav: false,
            keyboardNav: false,
            pauseOnHover: false
          });
          $("div#twitter_api").tweet({
            username: "experimint_nl",
            intro_text: "",
            count: 8,
            loading_text: "loading tweets..."
          });
          $('.home_hover').hover(function() {
            if (!$(this).hasClass('active')) {
              $(this).attr('src', $(this).attr('src').replace(/\.(.+)$/i, '-hover.$1'));
            }
          }, function() {
            if (!$(this).hasClass('active')) {
              $(this).attr('src', $(this).attr('src').replace(/-hover\.(.+)$/i, '.$1'));
            }
          });
          page_home_visited = true;
        }
        break;

      case 'webdesign':
        if (page_webdesign_visited == false) {
          $('div#webdesign_slider_holder').nivoSlider({
            effect: 'sliceDown',
            slices: 10,
            boxCols: 10,
            boxRows: 10,
            animSpeed: 750,
            pauseTime: 5000,
            manualAdvance: true,
            directionNav: false,
            keyboardNav: false,
            pauseOnHover: false
          });
          $('div#webdesign_accordion').accordion({
            header: 'div.accordion_header'
          });
          $('img.accordion_btn').hover(function() {
            if (!$(this).hasClass('accordion_btn_active')) {
              $(this).attr('src', $(this).attr('src').replace(/\.(.+)$/i, '-hover.$1'));
            }
          }, function() {
            if (!$(this).hasClass('accordion_btn_active')) {
              $(this).attr('src', $(this).attr('src').replace(/-hover\.(.+)$/i, '.$1'));
            }
          });
          $('img.accordion_btn').click(function() {
            if (!$(this).hasClass('accordion_btn_active')) {
              $('img.accordion_btn_active').attr('src', $('img.accordion_btn_active').attr('src').replace(/-active\.(.+)$/i, '.$1'));
              $('img.accordion_btn_active').removeClass('accordion_btn_active');
              $(this).attr('src', $(this).attr('src').replace(/-hover\.(.+)$/i, '-active.$1'));
              $(this).addClass('accordion_btn_active');
            }
          });
          $('.webdesign_hover').hover(function() {
            if (!$(this).hasClass('active')) {
              $(this).attr('src', $(this).attr('src').replace(/\.(.+)$/i, '-hover.$1'));
            }
          }, function() {
            if (!$(this).hasClass('active')) {
              $(this).attr('src', $(this).attr('src').replace(/-hover\.(.+)$/i, '.$1'));
            }
          });
          page_webdesign_visited = true;
        }
        break;

      case 'grafisch_ontwerp':
        if (page_grafisch_ontwerp_visited == false) {
          $('div#grafisch_ontwerp_slider_holder').nivoSlider({
            effect: 'fold',
            slices: 12,
            boxCols: 12,
            boxRows: 12,
            animSpeed: 750,
            pauseTime: 5000,
            manualAdvance: true,
            directionNav: false,
            keyboardNav: false,
            pauseOnHover: false,
            page_grafisch_ontwerp: true
          });
          $('div.go_btn').hover(function() {
            if (!$(this).hasClass('go_btn_active')) {
              $(this).children('img.go_thumb').attr('src', $(this).children('img.go_thumb').attr('src').replace(/-white\.(.+)$/i, '.$1'));
            }
          }, function() {
            if (!$(this).hasClass('go_btn_active')) {
              $(this).children('img.go_thumb').attr('src', $(this).children('img.go_thumb').attr('src').replace(/\.(.+)$/i, '-white.$1'));
            }
          });
          page_grafisch_ontwerp_visited = true;
        }
        break;

      case 'info':
        if (page_info_visited == false) {
          var email = ['sander', 'experimint', 'nl'];
          $('span.liambot_avoider').html('<a href="mailto:' + email[0] + '@' + email[1] + '.' + email[2] + '" class="info_link">' + email[0] + '@' + email[1] + '.' + email[2] + '</a>');
          page_info_visited = true;
        }
        break;

      case 'contact':
        if (page_contact_visited == false) {
          var form_options = {
            beforeSubmit: function(formData, jqForm, options) {
              $('img#uw_bericht_is_verstuurd').fadeOut(500);
              var submit = true;
              var form = jqForm[0];
              if (form.contact_naam.value.length > 150 || form.contact_naam.value.length < 2) {
                submit = false;
                $('img#contact_name_bg').fadeOut(500);
                $('img#contact_name_error').fadeIn(500);
              } else {
                $('img#contact_name_bg').fadeIn(500);
                $('img#contact_name_error').fadeOut(500);
              }
              var pattern_email = /^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((")(((( |	)*(
))?( |	)+)?(([\x01-\x08\x0e-\x1f\x7f]|!|[#-[]|[]-~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-	
-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*((( |	)*(
))?( |	)+)?(")))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/;
              if (!pattern_email.test(form.contact_email.value)) {
                submit = false;
                $('img#contact_email_bg').fadeOut(500);
                $('img#contact_email_error').fadeIn(500);
              } else {
                $('img#contact_email_bg').fadeIn(500);
                $('img#contact_email_error').fadeOut(500);
              }
              if (form.contact_bericht.value.length < 3 || form.contact_bericht.value.length > 5000) {
                submit = false;
                $('img#contact_bericht_bg').fadeOut(500);
                $('img#contact_bericht_error').fadeIn(500);
              } else {
                $('img#contact_bericht_bg').fadeIn(500);
                $('img#contact_bericht_error').fadeOut(500);
              }
              return submit;
            },
            success: function(responseText, statusText, xhr, $form) {
              switch (responseText) {
              case 'succes':
                $('img#uw_bericht_is_verstuurd').fadeIn(500);
                break;

              case 'no_data':
                alert('Ongeldige invoer');
                break;
              }
            },
            url: 'php/form_contact.php',
            type: 'post',
            clearForm: true
          };
          $('#contact_form').ajaxForm(form_options);
          page_contact_visited = true;
        }
        break;
      }
      current_page = new_page;
      $('div#page_' + new_page).removeClass('inactive_page_container').addClass('active_page_container').animate({
        left: 0
      }, 1000, 'easeOutExpo', function() {
        animation_running = false;
      });
    } else {
      $('div#header, div#footer').fadeOut(800, function() {
        $('div#page_fotografie').fadeIn(600);
        current_page = 'fotografie';
        if (page_fotografie_visited == false) {
          api.playToggle();
          $('img#fotografie_left').click(function() {
            api.prevSlide();
          });
          $('img#fotografie_cross').click(function() {
            pageswitch(current_page, 'home');
          });
          $('img#fotografie_right').click(function() {
            api.nextSlide();
          });
          page_fotografie_visited = true;
        };
      });
    }
  };



  //PRELOADER
  var qLimages = new Array;
  var qLdone = 0;
  var qLimageContainer = "";
  var qLoverlay = "";
  var qLbar = $('div#load_bar');
  var qLpercentage = "";
  var qLoptions = {
    onComplete: function() {},
    backgroundColor: "#000",
    barColor: "#fff",
    barHeight: 1,
    percentage: false,
    deepSearch: true,
    completeAnimation: "fade",
    onLoadComplete: function() {
      $.supersized({
        slides: [{
          image: 'img/backgrounds/001.jpg'
        }, {
          image: 'img/backgrounds/002.jpg'
        }, {
          image: 'img/backgrounds/003.jpg'
        }, {
          image: 'img/backgrounds/004.jpg'
        }, {
          image: 'img/backgrounds/005.jpg'
        }, {
          image: 'img/backgrounds/006.jpg'
        }, {
          image: 'img/backgrounds/007.jpg'
        }, {
          image: 'img/backgrounds/008.jpg'
        }, {
          image: 'img/backgrounds/009.jpg'
        }, {
          image: 'img/backgrounds/010.jpg'
        }, {
          image: 'img/backgrounds/011.jpg'
        }, {
          image: 'img/backgrounds/012.jpg'
        }, {
          image: 'img/backgrounds/013.jpg'
        }, {
          image: 'img/backgrounds/014.jpg'
        }, {
          image: 'img/backgrounds/015.jpg'
        }, {
          image: 'img/backgrounds/016.jpg'
        }, {
          image: 'img/backgrounds/017.jpg'
        }, {
          image: 'img/backgrounds/018.jpg'
        }, {
          image: 'img/backgrounds/019.jpg'
        }, {
          image: 'img/backgrounds/020.jpg'
        }, {
          image: 'img/backgrounds/021.jpg'
        }]
      });
      setTimeout(function() {
        $('div#load_bar_holder').fadeOut(300, function() {
          $(this).remove();
          $('div#header').animate({
            top: "-7px"
          }, 1100, 'easeOutBounce', function() {
            setTimeout(function() {
              var container_offset = $('div#container').offset();
              var loader_bug = false;
              $('div.footer_header_container').animate({
                marginLeft: (container_offset.left + 6)
              }, 400, 'easeOutExpo', function() {
                if (loader_bug == false) {
                  loader_bug = true;
                  $('div.footer_header_container').width(974);
                  load_page = false;
                  $('img#bt_menu_webdesign').fadeIn(300, function() {
                    $('img#bt_menu_grafisch_ontwerp').fadeIn(300, function() {
                      $('img#bt_menu_fotografie').fadeIn(300, function() {
                        setLayout();
                        $('div#footer').fadeIn(600, function() {
                          $('div#bg').fadeOut(1200);
                          $('div.page_container').css('top', ((($('div#container').height() - 130) - 470) / 2 + 90));

                          $('div.fb-like').hover(function() {
                            facebook_bt_hover = true;
                          }, function() {
                            facebook_bt_hover = false;
                            setTimeout(function() {
                              if (facebook_bt_hover == false) {
                                $('div.fb-like').removeClass('fb_active');
                                $('div.fb-like').animate({
                                  top: "10px"
                                }, 200);
                                $('div.fb-like').fadeOut(200);
                              }
                            }, 100);
                          });

                          $('img#bt_menu_facebook').hover(function() {
                            facebook_bt_hover = true;
                            if (!$('div.fb-like').hasClass('fb_active')) {
                              $('div.fb-like').addClass('fb_active');
                              $('div.fb-like').fadeIn(200);
                              $('div.fb-like').animate({
                                top: "0px"
                              }, 200);
                            }
                          }, function() {
                            facebook_bt_hover = false;
                            setTimeout(function() {
                              if (facebook_bt_hover == false) {
                                $('div.fb-like').removeClass('fb_active');
                                $('div.fb-like').animate({
                                  top: "10px"
                                }, 200);
                                $('div.fb-like').fadeOut(200);
                              }
                            }, 100);
                          });

                          $('div.twitter_button').hover(function() {
                            twitter_bt_hover = true;
                          }, function() {
                            twitter_bt_hover = false;
                            setTimeout(function() {
                              if (twitter_bt_hover == false) {
                                $('div.twitter_button').removeClass('tw_active');
                                $('div.twitter_button').animate({
                                  top: "10px"
                                }, 200);
                                $('div.twitter_button').fadeOut(200);
                              }
                            }, 100);
                          });

                          $('img#bt_menu_twitter').hover(function() {
                            twitter_bt_hover = true;
                            if (!$('div.twitter_button').hasClass('tw_active')) {
                              $('div.twitter_button').addClass('tw_active');
                              $('div.twitter_button').fadeIn(200);
                              $('div.twitter_button').animate({
                                top: "0px"
                              }, 200);
                            }
                          }, function() {
                            twitter_bt_hover = false;
                            setTimeout(function() {
                              if (twitter_bt_hover == false) {
                                $('div.twitter_button').removeClass('tw_active');
                                $('div.twitter_button').animate({
                                  top: "10px"
                                }, 200);
                                $('div.twitter_button').fadeOut(200);
                              }
                            }, 100);
                          });

                          $('.hover').hover(function() {
                            if (!$(this).hasClass('bt_menu_active')) {
                              $(this).attr('src', $(this).attr('src').replace(/\.(.+)$/i, '-hover.$1'));
                            }
                          }, function() {
                            if (!$(this).hasClass('bt_menu_active')) {
                              $(this).attr('src', $(this).attr('src').replace(/-hover\.(.+)$/i, '.$1'));
                            }
                          });
                          $('.bt_menu').click(function() {
                            if (animation_running == false) {
                              if (!$(this).hasClass('bt_menu_active')) {
                                $('.bt_menu_active').attr('src', $('.bt_menu_active').attr('src').replace(/-active\.(.+)$/i, '.$1'));
                                $(this).attr('src', $(this).attr('src').replace(/-hover\.(.+)$/i, '-active.$1'));
                                alt_001 = $(this).attr('alt');
                                $('.bt_menu_active').removeClass('bt_menu_active');
                                $(this).addClass('bt_menu_active');
                                pageswitch(current_page, alt_001);
                              }
                            }
                          });
                          $('.bt_page').click(function() {
                            if (animation_running == false) {
                              $('.bt_menu_active').attr('src', $('.bt_menu_active').attr('src').replace(/-active\.(.+)$/i, '.$1'));
                              alt_002 = $(this).attr('alt');
                              $('img#bt_menu_' + alt_002).attr('src', $('img#bt_menu_' + alt_002).attr('src').replace(/\.(.+)$/i, '-active.$1'));
                              $('.bt_menu_active').removeClass('bt_menu_active');
                              $('img#bt_menu_' + alt_002).addClass('bt_menu_active');
                              pageswitch(current_page, alt_002);
                            }
                          })
                          setTimeout(function() {
                            pageswitch(current_page, 'home');
                          }, 1200);
                        });
                      });
                    });
                  });
                }
              });
            }, 250);
          });
        })
      }, 600);
    }
  }

  var afterEach = function() {
      createPreloadContainer();
      createOverlayLoader();
    }
  var createPreloadContainer = function() {
      qLimageContainer = $("<div></div>").appendTo("body").css({
        display: "none",
        width: 0,
        height: 0,
        overflow: "hidden"
      });
      for (var i = 0; qLimages.length > i; i++) {
        var image = $("<img />").attr("src", qLimages[i]).bind("load", function() {
          completeImageLoading();
        });
      }
    }
  var completeImageLoading = function() {
      qLdone++;
      var percentage = (qLdone / qLimages.length) * 100;
      $('div#load_bar').css('width', (percentage * 2.6) + "px");
      if (qLoptions.percentage == true) {
        $(qLpercentage).text(Math.ceil(percentage) + "%");
      }
      if (qLdone == qLimages.length) {
        destroyQueryLoader();
      }
    }
  var destroyQueryLoader = function() {
      $(qLimageContainer).remove();
      qLoptions.onLoadComplete();
    }
  var createOverlayLoader = function() {
      if (qLoptions.percentage == true) {
        qLpercentage = $("<div id='qLpercentage'></div>").text("0%").css({
          height: "40px",
          width: "100px",
          position: "absolute",
          fontSize: "3em",
          top: "50%",
          left: "50%",
          marginTop: "-" + (59 + qLoptions.barHeight) + "px",
          textAlign: "center",
          marginLeft: "-50px",
          color: qLoptions.barColor
        }).appendTo(qLoverlay);
      }
    }
  var findImageInElement = function(element) {
      var url = "";
      if ($(element).css("background-image") != "none") {
        var url = $(element).css("background-image");
      } else if (typeof($(element).attr("src")) != "undefined" && element.nodeName.toLowerCase() == "img") {
        var url = $(element).attr("src");
      }
      url = url.replace(/url\(\"/g, "");
      url = url.replace(/url\(/g, "");
      url = url.replace(/\"\)/g, "");
      url = url.replace(/\)/g, "");
      var urls = url.split(", ");
      for (var i = 0; i < urls.length; i++) {
        if (urls[i].length > 0) {
          var extra = "";
          if ($.browser.msie && $.browser.version < 9) {
            extra = "?" + Math.floor(Math.random() * 3000);
          }
          qLimages.push(urls[i] + extra);
        }
      }
    }
  $.fn.queryLoader2 = function(options) {
    if (options) {
      $.extend(qLoptions, options);
    }
    this.each(function() {
      findImageInElement(this);
      if (qLoptions.deepSearch == true) {
        $(this).find("*:not(script)").each(function() {
          findImageInElement(this);
        });
      }
    });
    afterEach();
    return this;
  };
  window.addEventListener('DOMContentLoaded', function() {
    $(".preload").queryLoader2();
  });
  //$(".preload").queryLoader2();
};
$.fn.frontend = function($options) {
	
	//CREATE VARIABLES
	var min_cont_height = 640;
	var load_page = true;
	var animation_running = true;
	var current_page = 'blank';
	var page_home_visited = false;
	var page_grafisch_ontwerp_visited = false;
	var page_webdesign_visited = false;
	var page_fotografie_visited = false;
	var page_info_visited = false;
	var page_contact_visited = false;
	var page_fotografie_active = false;
	var alt_001 = '';
	var alt_002 = '';
	var container_offset = '';
	var facebook_bt_hover = false;
	var twitter_bt_hover = false;

	
	//LAYOUT
	setLayout();
	
	setTimeout(function(){
		setLayout();
	},350);

	$(window).resize(function() {
  		setLayout();
	});
	
	function setLayout(){
		if ( $(window).height() > min_cont_height ){
			$('div#container').height($(window).height());
			$('div#footer').css('top', ($(window).height()-47));
		} else {
			$('div#container').height(min_cont_height);
			$('div#footer').css('top', ($('div#container').height()-47));
		}
		if ( $(window).width() > $('div#container').width() ){
			$('div.inactive_page_container').css('left', ($('div#container').width()+(($(window).width()-$('div#container').width())/2+10)));
			$('div.full_width').width($(window).width());
		} else {
			$('div.inactive_page_container').css('left', ($('div#container').width()+10));
			$('div.full_width').width($('div#container').width()+7);
		}
		if ( load_page == true ){
			$('div#header').css('top', (($('div#container').height()-104)/2));
			$('div.footer_header_container').css('margin-left', (($(window).width()-362)/2));
		} else {
			$('div#header').css('top', '-7px');
			container_offset = $('div#container').offset();
			$('div.footer_header_container').css('margin-left', (container_offset.left + 6));
			$('div.page_container').css('top', ((($('div#container').height() - 130) - 470)/2+90));
		}
	};
	
	
	
	//PAGE SWITCH
	function pageswitch(old_page, new_page){
		animation_running = true;
		if (old_page == 'home' || old_page == 'webdesign' || old_page == 'grafisch_ontwerp' || old_page == 'info' || old_page == 'contact'){
			$('div#page_' + old_page).removeClass('active_page_container').addClass('inactive_page_container').animate({left: (-1*(($(window).width()-$('div#container').width())/2 + $('div#container').width()))}, 1000, 'easeInExpo', function(){
				$('div#page_' + old_page).css('display', 'none');
				setLayout();
				buildpage(new_page);
			});
		} else if (old_page == 'fotografie'){
			$('div#page_fotografie').fadeOut(500, function(){
				$('img#bt_menu_fotografie').attr('src', $('img#bt_menu_fotografie').attr('src').replace(/-active\.(.+)$/i, '.$1'));
				$('img#bt_menu_fotografie').removeClass('bt_menu_active');
				$('img#bt_menu_logo').attr('src', $('img#bt_menu_logo').attr('src').replace(/\.(.+)$/i, '-active.$1'));
				$('img#bt_menu_logo').addClass('bt_menu_active');
				$('div#header, div#footer').fadeIn(1000, function(){
					api.playToggle();
					buildpage(new_page);
				});
			});
		} else if(old_page == 'blank'){
			buildpage(new_page);
		}  
	};
	
	function buildpage(new_page){
		if(new_page!='fotografie'){
			$('div#page_'+ new_page).css('display', 'block');
			switch (new_page) {
				case 'home' :
					if(page_home_visited == false){
						$('img#bt_menu_logo').attr('src', 'img/no_preload/logo-experimint-active.png');
						$('div#home_slider_holder').nivoSlider({effect: 'boxRainGrow', slices: 12, boxCols: 5, boxRows: 4, animSpeed: 500, pauseTime: 8000, directionNav: true, directionNavHide: false, controlNav: false, keyboardNav: false, pauseOnHover: false});
						$("div#twitter_api").tweet({username: "experimint_nl", intro_text: "", count: 8, loading_text: "loading tweets..."});
						$('.home_hover').hover(function() {
							if(!$(this).hasClass('active')){
								$(this).attr('src', $(this).attr('src').replace(/\.(.+)$/i, '-hover.$1'));
							}
						}, function() {
							if(!$(this).hasClass('active')){
								$(this).attr('src', $(this).attr('src').replace(/-hover\.(.+)$/i, '.$1'));	
							}
						});
						page_home_visited = true;
					}
				break;
				
				case 'webdesign' :
					if(page_webdesign_visited == false){
						$('div#webdesign_slider_holder').nivoSlider({effect: 'sliceDown', slices: 10, boxCols: 10, boxRows: 10, animSpeed: 750, pauseTime: 5000, manualAdvance: true, directionNav: false, keyboardNav: false, pauseOnHover: false});
						$('div#webdesign_accordion').accordion({
							header: 'div.accordion_header'
						});
						$('img.accordion_btn').hover(function() {
							if(!$(this).hasClass('accordion_btn_active')){
								$(this).attr('src', $(this).attr('src').replace(/\.(.+)$/i, '-hover.$1'));
							}
						}, function() {
							if(!$(this).hasClass('accordion_btn_active')){
								$(this).attr('src', $(this).attr('src').replace(/-hover\.(.+)$/i, '.$1'));	
							}
						});
						$('img.accordion_btn').click(function(){
							if(!$(this).hasClass('accordion_btn_active')){
								$('img.accordion_btn_active').attr('src', $('img.accordion_btn_active').attr('src').replace(/-active\.(.+)$/i, '.$1'));
								$('img.accordion_btn_active').removeClass('accordion_btn_active');
								$(this).attr('src', $(this).attr('src').replace(/-hover\.(.+)$/i, '-active.$1'));
								$(this).addClass('accordion_btn_active');
							}
						});
						$('.webdesign_hover').hover(function() {
							if(!$(this).hasClass('active')){
								$(this).attr('src', $(this).attr('src').replace(/\.(.+)$/i, '-hover.$1'));
							}
						}, function() {
							if(!$(this).hasClass('active')){
								$(this).attr('src', $(this).attr('src').replace(/-hover\.(.+)$/i, '.$1'));	
							}
						});
						page_webdesign_visited = true;
					}
				break;
				
				case 'grafisch_ontwerp' :
					if(page_grafisch_ontwerp_visited == false){
						$('div#grafisch_ontwerp_slider_holder').nivoSlider({effect: 'fold', slices: 12, boxCols: 12, boxRows: 12, animSpeed: 750, pauseTime: 5000, manualAdvance: true, directionNav: false, keyboardNav: false, pauseOnHover: false, page_grafisch_ontwerp: true});
						$('div.go_btn').hover(function() {
							if(!$(this).hasClass('go_btn_active')){
								$(this).children('img.go_thumb').attr('src', $(this).children('img.go_thumb').attr('src').replace(/-white\.(.+)$/i, '.$1'));
							}
						}, function() {
							if(!$(this).hasClass('go_btn_active')){
								$(this).children('img.go_thumb').attr('src', $(this).children('img.go_thumb').attr('src').replace(/\.(.+)$/i, '-white.$1'));
							}
						});
						page_grafisch_ontwerp_visited = true;
					}
				break;
				
				case 'info' :
					if(page_info_visited == false){
						var email = ['sander','experimint','nl'];
						$('span.liambot_avoider').html('<a href="mailto:'+email[0]+'@'+email[1]+'.'+email[2]+'" class="info_link">'+email[0]+'@'+email[1]+'.'+email[2]+'</a>');
						page_info_visited = true;
					}
				break;
				
				case 'contact' :
					if(page_contact_visited == false){
						var form_options = {
							beforeSubmit : function(formData, jqForm, options) {
								$('img#uw_bericht_is_verstuurd').fadeOut(500);
								var submit = true;
								var form = jqForm[0];
								if (form.contact_naam.value.length > 150 || form.contact_naam.value.length < 2) {
									submit = false;
									$('img#contact_name_bg').fadeOut(500);
									$('img#contact_name_error').fadeIn(500);
									} else {
										$('img#contact_name_bg').fadeIn(500);
										$('img#contact_name_error').fadeOut(500);
									}
								var pattern_email = /^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/;
								if (!pattern_email.test(form.contact_email.value)) {
									submit = false;
									$('img#contact_email_bg').fadeOut(500);
									$('img#contact_email_error').fadeIn(500);
								} else {
									$('img#contact_email_bg').fadeIn(500);
									$('img#contact_email_error').fadeOut(500);
								}
								if (form.contact_bericht.value.length < 3 || form.contact_bericht.value.length > 5000) {
									submit = false;
									$('img#contact_bericht_bg').fadeOut(500);
									$('img#contact_bericht_error').fadeIn(500);
								} else {
									$('img#contact_bericht_bg').fadeIn(500);
									$('img#contact_bericht_error').fadeOut(500);
								}
								return submit;
							},
							success : function(responseText, statusText, xhr, $form) {
								switch (responseText) {
									case 'succes' :
										$('img#uw_bericht_is_verstuurd').fadeIn(500);
									break;
									
									case 'no_data' :
										alert('Ongeldige invoer');
									break;
								}
							},
							url : 'php/form_contact.php',
							type : 'post',
							clearForm: true
						};
						$('#contact_form').ajaxForm(form_options);
						page_contact_visited = true;
					}
				break;
			}
			current_page = new_page;
			$('div#page_' + new_page).removeClass('inactive_page_container').addClass('active_page_container').animate({left: 0}, 1000, 'easeOutExpo', function(){
				animation_running = false;
			});
		} else {
			$('div#header, div#footer').fadeOut(800, function(){
				$('div#page_fotografie').fadeIn(600);
				current_page = 'fotografie';
				if(page_fotografie_visited == false){
					api.playToggle();
					$('img#fotografie_left').click(function(){
						api.prevSlide();
					});
					$('img#fotografie_cross').click(function(){
						pageswitch(current_page, 'home');
					});
					$('img#fotografie_right').click(function(){
						api.nextSlide();
					});
					page_fotografie_visited = true;
				};
			});
		}
	};
	
	
	
	//PRELOADER
	var qLimages = new Array;
    var qLdone = 0;
    var qLimageContainer = "";
    var qLoverlay = "";
    var qLbar = $('div#load_bar');
    var qLpercentage = "";
    var qLoptions = {
        onComplete: function () {},
        backgroundColor: "#000",
        barColor: "#fff",
        barHeight: 1,
        percentage: false,
        deepSearch: true,
        completeAnimation: "fade",
        onLoadComplete: function () {
        	$.supersized({
				slides: [
				        {image: 'img/backgrounds/001.jpg'},
						{image: 'img/backgrounds/002.jpg'},  
						{image: 'img/backgrounds/003.jpg'},
						{image: 'img/backgrounds/004.jpg'},
						{image: 'img/backgrounds/005.jpg'},
						{image: 'img/backgrounds/006.jpg'},  
						{image: 'img/backgrounds/007.jpg'},
						{image: 'img/backgrounds/008.jpg'},
						{image: 'img/backgrounds/009.jpg'},
						{image: 'img/backgrounds/010.jpg'},  
						{image: 'img/backgrounds/011.jpg'},
						{image: 'img/backgrounds/012.jpg'},
						{image: 'img/backgrounds/013.jpg'},
						{image: 'img/backgrounds/014.jpg'},  
						{image: 'img/backgrounds/015.jpg'},
						{image: 'img/backgrounds/016.jpg'},
						{image: 'img/backgrounds/017.jpg'},
						{image: 'img/backgrounds/018.jpg'},  
						{image: 'img/backgrounds/019.jpg'},
						{image: 'img/backgrounds/020.jpg'},
						{image: 'img/backgrounds/021.jpg'}
						]
			});
        	setTimeout(function(){
	        	$('div#load_bar_holder').fadeOut(300, function(){
	        		$(this).remove();
	        		$('div#header').animate({top: "-7px"}, 1100, 'easeOutBounce', function(){
	        			setTimeout(function(){
	        				var container_offset = $('div#container').offset();
	        				var loader_bug = false;
	            			$('div.footer_header_container').animate({marginLeft: (container_offset.left + 6)}, 400, 'easeOutExpo', function(){
	            				if (loader_bug == false) {
	            					loader_bug = true;
	                				$('div.footer_header_container').width(974);
	                				load_page = false;
	                				$('img#bt_menu_webdesign').fadeIn(300, function(){
	                					$('img#bt_menu_grafisch_ontwerp').fadeIn(300, function(){
	                						$('img#bt_menu_fotografie').fadeIn(300, function(){
	                							setLayout();
	                							$('div#footer').fadeIn(600, function(){
	                								$('div#bg').fadeOut(1200);
	                								$('div.page_container').css('top', ((($('div#container').height() - 130) - 470)/2+90));
	                								
	                								$('div.fb-like').hover(function() {
	                									facebook_bt_hover = true;
	                								}, function() {
	                									facebook_bt_hover = false;
	                									setTimeout(function(){
	                										if(facebook_bt_hover == false){
	                											$('div.fb-like').removeClass('fb_active');
		                										$('div.fb-like').animate({top: "10px"}, 200);
		                										$('div.fb-like').fadeOut(200);
		                									}
	                									},100);
	                								});
	                								
	                								$('img#bt_menu_facebook').hover(function() {
	                									facebook_bt_hover = true;
	                									if(!$('div.fb-like').hasClass('fb_active')){
	                										$('div.fb-like').addClass('fb_active');
	                										$('div.fb-like').fadeIn(200);
	                										$('div.fb-like').animate({top: "0px"}, 200);
	                									}
	                								}, function() {
	                									facebook_bt_hover = false;
	                									setTimeout(function(){
	                										if(facebook_bt_hover == false){
	                											$('div.fb-like').removeClass('fb_active');
		                										$('div.fb-like').animate({top: "10px"}, 200);
		                										$('div.fb-like').fadeOut(200);
		                									}
	                									},100);
	                								});
	                								
	                								$('div.twitter_button').hover(function() {
	                									twitter_bt_hover = true;
	                								}, function() {
	                									twitter_bt_hover = false;
	                									setTimeout(function(){
	                										if(twitter_bt_hover == false){
	                											$('div.twitter_button').removeClass('tw_active');
		                										$('div.twitter_button').animate({top: "10px"}, 200);
		                										$('div.twitter_button').fadeOut(200);
		                									}
	                									},100);
	                								});
	                								
	                								$('img#bt_menu_twitter').hover(function() {
	                									twitter_bt_hover = true;
	                									if(!$('div.twitter_button').hasClass('tw_active')){
	                										$('div.twitter_button').addClass('tw_active');
	                										$('div.twitter_button').fadeIn(200);
	                										$('div.twitter_button').animate({top: "0px"}, 200);
	                									}
	                								}, function() {
	                									twitter_bt_hover = false;
	                									setTimeout(function(){
	                										if(twitter_bt_hover == false){
	                											$('div.twitter_button').removeClass('tw_active');
		                										$('div.twitter_button').animate({top: "10px"}, 200);
		                										$('div.twitter_button').fadeOut(200);
		                									}
	                									},100);
	                								});
	                								
	                								$('.hover').hover(function() {
	                									if(!$(this).hasClass('bt_menu_active')){
	                										$(this).attr('src', $(this).attr('src').replace(/\.(.+)$/i, '-hover.$1'));
	                									}
	                								}, function() {
	                									if(!$(this).hasClass('bt_menu_active')){
	                										$(this).attr('src', $(this).attr('src').replace(/-hover\.(.+)$/i, '.$1'));	
	                									}
	                								});
	                								$('.bt_menu').click(function(){
	                									if (animation_running == false){
		                									if(!$(this).hasClass('bt_menu_active')){
		                										$('.bt_menu_active').attr('src', $('.bt_menu_active').attr('src').replace(/-active\.(.+)$/i, '.$1'));
		                										$(this).attr('src', $(this).attr('src').replace(/-hover\.(.+)$/i, '-active.$1'));
		                										alt_001 = $(this).attr('alt');
		                										$('.bt_menu_active').removeClass('bt_menu_active');
		                										$(this).addClass('bt_menu_active');
		                										pageswitch(current_page, alt_001);
		                									}
	                									}
                									});
	                								$('.bt_page').click(function(){
	                									if (animation_running == false){
	                										$('.bt_menu_active').attr('src', $('.bt_menu_active').attr('src').replace(/-active\.(.+)$/i, '.$1'));
	                										alt_002 = $(this).attr('alt');
	                										$('img#bt_menu_' + alt_002).attr('src', $('img#bt_menu_' + alt_002).attr('src').replace(/\.(.+)$/i, '-active.$1'));
	                										$('.bt_menu_active').removeClass('bt_menu_active');
	                										$('img#bt_menu_' + alt_002).addClass('bt_menu_active');
	                										pageswitch(current_page, alt_002);
	                									}
                									})
	                								setTimeout(function(){
	                									pageswitch(current_page, 'home');
	                								},1200);	
	                							});
	                        				});
	                    				});
	                				});
	            				}
	            			});
	        			},250);
	        		});
	        	})
        	},600);
        }
    }

    var afterEach = function () {
        createPreloadContainer();
        createOverlayLoader();
    }
    var createPreloadContainer = function() {
        qLimageContainer = $("<div></div>").appendTo("body").css({
            display: "none",
            width: 0,
            height: 0,
            overflow: "hidden"
        });
        for (var i = 0; qLimages.length > i; i++) {
            var image = $("<img />").attr("src", qLimages[i]).bind("load", function () {
                completeImageLoading();
            });
        }
    }
    var completeImageLoading = function () {
        qLdone++;
        var percentage = (qLdone / qLimages.length) * 100;
        $('div#load_bar').css('width', (percentage * 2.6) + "px");
        if (qLoptions.percentage == true) {
            $(qLpercentage).text(Math.ceil(percentage) + "%");
        }
        if (qLdone == qLimages.length) {
            destroyQueryLoader();
        }
    }
    var destroyQueryLoader = function () {
        $(qLimageContainer).remove();
        qLoptions.onLoadComplete();
    }
    var createOverlayLoader = function () {
        if (qLoptions.percentage == true) {
            qLpercentage = $("<div id='qLpercentage'></div>").text("0%").css({
                height: "40px",
                width: "100px",
                position: "absolute",
                fontSize: "3em",
                top: "50%",
                left: "50%",
                marginTop: "-" + (59 + qLoptions.barHeight) + "px",
                textAlign: "center",
                marginLeft: "-50px",
                color: qLoptions.barColor
            }).appendTo(qLoverlay);
        }
    }
    var findImageInElement = function (element) {
        var url = "";
        if ($(element).css("background-image") != "none") {
            var url = $(element).css("background-image");
        } else if (typeof($(element).attr("src")) != "undefined" && element.nodeName.toLowerCase() == "img") {
            var url = $(element).attr("src");
        }
        url = url.replace(/url\(\"/g, "");
        url = url.replace(/url\(/g, "");
        url = url.replace(/\"\)/g, "");
        url = url.replace(/\)/g, "");
        var urls = url.split(", ");
        for (var i = 0; i < urls.length; i++) {
            if (urls[i].length > 0) {
                var extra = "";
                if ($.browser.msie && $.browser.version < 9) {
                    extra = "?" + Math.floor(Math.random() * 3000);
                }
                qLimages.push(urls[i] + extra);
            }
        }
    }
    $.fn.queryLoader2 = function(options) {
        if(options) {
            $.extend(qLoptions, options );
        }
        this.each(function() {
            findImageInElement(this);
            if (qLoptions.deepSearch == true) {
                $(this).find("*:not(script)").each(function() {
                    findImageInElement(this);
                });
            }
        });
        afterEach();
        return this;
    };
    window.addEventListener('DOMContentLoaded', function() {
        $(".preload").queryLoader2();
    });
	//$(".preload").queryLoader2();
};