function dump(arr,level) { var dumped_text = ""; if(!level) level = 0; //The padding given at the beginning of the line. var level_padding = ""; for(var j=0;j \"" + value + "\"\n"; } } } else { //Stings/Chars/Numbers etc. dumped_text = "===>"+arr+"<===("+typeof(arr)+")"; } return dumped_text; } $(document).ready(function(){ /*$("#slider").easySlider({ auto: true, continuous: true, controlsShow: false, speed: 1000, pause: 8000 }); */ $(".SkypeButton").click(function(){ $(".SkypeButton img") $('img', this).animate({top:"-10px"}, 200).animate({top:"-4px"}, 200) // first jump $('img', this).animate({top:"-7px"}, 100).animate({top:"-4px"}, 100) // second jump $('img', this).animate({top:"-6px"}, 100).animate({top:"-4px"}, 100); // the last jump }); var options_autoSuggest = { script: 'index.php?route=product/search&keyword=1&description=0&', varname: 'urla', minchars: 3, callback: ajaxSearch, shownoresults: true, timeout:9999999 } var as = new AutoSuggest('filter_keyword', options_autoSuggest); if($('#shadowBoxCartTotals').html()!=null) { $('.cartTotals').html('' + $('#shadowBoxCartTotals').html() + ''); } $("a.hiddenCartDisplayerClass").fancybox({ 'transitionIn' : 'fade', 'transitionOut' : 'fade', 'centerOnScroll' : true, 'type' : 'iframe', 'width' : 650, 'height' : 410, 'autoScale' : false, 'onClosed' : function () { $.ajax({ type: 'get', url: 'index.php?route=module/cart/callback', dataType: 'html', success: function (html) { $('#module_cart_list .middle').html(html); if($('#shadowBoxCartTotals').html().indexOf(' 0')>0) { $('.cartTotals').html(''); $('#module_cart').attr('src','catalog/view/theme/default/image/cartbag.png'); } else { $('.cartTotals').stop(true, true); $('.cartTotals').html('' + $('#shadowBoxCartTotals').html() + ''); $('#module_cart').attr('src','catalog/view/theme/default/image/cartbagfull.png'); } } }); } }); $(document).bind('click', function(e) { var $clicked = $(e.target); if (! $clicked.parents().hasClass("dropdown")) { $("#curr_drop").slideUp(300);; $("#lang_drop").slideUp(300);; } }); $('img').error(function(){ $(this).attr('src', http_server + '/image/no_image.jpg'); }); /* route = getURLVar('route'); if (!route) { $('#tab_home').addClass('selected'); } else { part = route.split('/'); if (route == 'common/home') { $('#tab_home').addClass('selected'); } else if (route == 'account/login') { $('#tab_login').addClass('selected'); } else if (part[0] == 'account') { $('#tab_account').addClass('selected'); } else if (route == 'checkout/cart') { $('#tab_cart').addClass('selected'); } else if (part[0] == 'checkout') { $('#tab_checkout').addClass('selected'); } else { $('#tab_home').addClass('selected'); } } */ $('#module_search input').keydown(function(e) { if (e.keyCode == 13) { moduleSearch(); } }); //Document.ready END }); function popLightBox(url,width,height,scroll) { scroll = typeof(scroll) != 'undefined' ? scroll : 'auto'; $("#popLightBox").attr('href',url); $("#popLightBox").fancybox({ 'width' : width, 'height' : height, 'autoScale' : false, 'transitionIn' : 'fade', 'transitionOut' : 'fade', 'centerOnScroll' : true, 'scrolling' : scroll, 'type' : 'iframe' }); $("#popLightBox").trigger('click'); } function showYouTube(id) { $.fancybox({ 'padding' : 0, 'autoScale' : false, 'transitionIn' : 'fade', 'transitionOut' : 'fade', 'width' : 680, 'height' : 495, 'href' : 'http://www.youtube.com/v/' + id + '&hl=sv_SE&fs=1?rel=0', 'type' : 'swf', 'swf' : { 'wmode' : 'transparent', 'allowfullscreen' : 'true' } }); } function changeTopLogon(inOut) { if(inOut=='loggedin') { $('#logoutLoginLink').html(logoutLink); $('#logoutLoginLink2').html(logoutLink2); } else { $('#logoutLoginLink').html(loginLink); $('#logoutLoginLink2').html(loginLink2); } } var timerID=0; function showCart() { if($('.cartTotals').html()!=null){ if($('.cartTotals').html().indexOf('showCart')>0) { $('#hiddenCartDisplayer').trigger('click'); return; } } $('.cartTotals').html('' + empty_cart + ''); $('.cartTotals').effect("pulsate", { times:2 }, 1000); timerID = setTimeout("$('.cartTotals').html('')", 5000); } function ajaxSearch(obj) { var info = "0"; if(obj.id == undefined) { info = obj; } else { info = obj.id; } if(info.indexOf('http')!=-1) { document.location.href=info; } else if(info==0) { //moduleSearch(); return true; } else { document.location.href=http_server + 'index.php?route=product/product&product_id=' + info; } } function showSupport() { var getWidth = $('#supportHolder').width(); $("#supportHolder").toggle(300); } jQuery.fn.center = function () { this.css("top", ( $(window).height() - this.height() ) / 2+$(window).scrollTop() + "px"); this.css("left", ( $(window).width() - this.width() ) / 2+$(window).scrollLeft() + "px"); return this; } function getURLVar(urlVarName) { var urlHalves = String(document.location).toLowerCase().split('?'); var urlVarValue = ''; if (urlHalves[1]) { var urlVars = urlHalves[1].split('&'); for (var i = 0; i <= (urlVars.length); i++) { if (urlVars[i]) { var urlVarPair = urlVars[i].split('='); if (urlVarPair[0] && urlVarPair[0] == urlVarName.toLowerCase()) { urlVarValue = urlVarPair[1]; } } } } return urlVarValue; } function moduleSearch() { url = 'index.php?route=product/search'; var filter_keyword = $('#filter_keyword').attr('value') if (filter_keyword) { url += '&keyword=' + encodeURIComponent(filter_keyword); } var filter_category_id = $('#filter_category_id').attr('value'); if (filter_category_id) { url += '&category_id=' + filter_category_id; } location = url; } /* $('.switcher').bind('click', function() { $(this).find('.option').slideToggle('fast'); }); */ // Visa skapa konto function showRegister(type) { showLoader(wait); switch(type) { case 'personal': $('#accountDataHolder').load('index.php?route=checkout/acc_login/createaccount','', function() { $('#corp').attr('checked',''); $('#personal').attr('checked','checked'); $('#school').attr('checked',''); loadAjaxForm(); if(typeof nextStep == 'function') { nextStep(); } showLoader('',0); }); break; case 'school': $('#accountDataHolder').load('index.php?route=checkout/acc_login/createaccount&type=school','', function() { $('#corp').attr('checked',''); $('#personal').attr('checked',''); $('#school').attr('checked','checked'); loadAjaxForm(); if(typeof nextStep == 'function') { nextStep(); } showLoader('',0); }); break; case 'login': $('#accountDataHolder').load('index.php?route=checkout/acc_login/','', function() { $('#corp').attr('checked','checked'); $('#personal').attr('checked',''); $('#school').attr('checked',''); if(typeof nextStep == 'function') { nextStep(); } showLoader('',0); }); break; case 'corp': $('#accountDataHolder').load('index.php?route=checkout/acc_login/createaccount&type=corp','', function() { $('#corp').attr('checked','checked'); $('#personal').attr('checked',''); $('#school').attr('checked',''); loadAjaxForm(); if(typeof nextStep == 'function') { nextStep(); } showLoader('',0); }); break; case 'loggedin': if(document.location.href.indexOf('route=checkout/checkoutcart')==-1 && document.location.href.indexOf('route=account/edit')==-1 && document.location.href.indexOf('route=account/account2')==-1) { document.location.href='index.php?route=account/account2'; showLoader('',0); break; } $('#accountDataHolder').load('index.php?route=checkout/acc_login/loggedin','', function() { $('#corp').attr('checked','checked'); $('#personal').attr('checked',''); $('#school').attr('checked',''); if(typeof nextStep == 'function') { nextStep(); } showLoader('',0); }); break; default: } if(typeof nextStep == 'function') { nextStep(); } } // Visa wait-ruta function showLoader(text, timeout) { if(text) { $('#loadText').html(text); $('#loader').center().show(); } if(timeout == 0) { clearTimeout(timerID); $('#loader').hide(); } else if(timeout) { clearTimeout(timerID); timerID = setTimeout ( "$('#loader').hide();", timeout ); } } function forgotPass() { popLightBox(forgotPassText,300,200); } function shake(n,obj) { $(obj).effect("shake", { times: n, direction: "up", distance: 6 }, 100); $(obj).effect("shake", { times: n, direction: "up", distance: 5 }, 80); $(obj).effect("shake", { times: n, direction: "up", distance: 4 }, 70); $(obj).effect("shake", { times: n, direction: "up", distance: 3 }, 60); $(obj).effect("shake", { times: n, direction: "up", distance: 2 }, 50); $(obj).effect("shake", { times: n, direction: "up", distance: 1 }, 40); //$(obj).effect("shake", { times: n, direction: "left", distance: 2 }, 100); //$(obj).effect("shake", { times: n, direction: "down", distance: 5 }, 100); //$(obj).effect("shake", { times: n, direction: "up", distance: 5 }, 150); //$(obj).effect("shake", { times: n, direction: "up", distance: 5 }, 100); } function login(email,pass,md5) { showLoader(loginCustomerText); if(md5) { pass +='&md5=true'; } isLoggedIn = false; $.ajax({ type: 'post', url: 'index.php?route=checkout/acc_login/login', data: 'email=' + email + '&password=' + pass, dataType: 'json', success: function (json) { if(json==false) { $('#login_fel_pass').html('' + login_fel_pass + '
'); } else if(json=='vip') { alert(vip_customer); showRegister('personal'); } else { showRegister('loggedin'); changeTopLogon('loggedin'); isLoggedIn = true; if(typeof nextStep == 'function') { nextStep(); } } } }); showLoader('',500); try { $('#iframe').contentWindow.location.reload(); } catch(err) { //Handle errors here } } function logout() { $.get(http_server + 'index.php?route=account/logout/callback'); changeTopLogon('loggedout'); showRegister('login'); isLoggedIn = false; if(typeof nextStep == 'function') { nextStep(); } if(document.location.href.match(/account\/edit/)) { document.location.href='index.php'; } } function validatePerson(formData, jqForm, options) { //alert(dump(formData)); //alert($("#personal_instrument_1").val()); /* if($('#personal_instrument_1').length != 0) { jQuery("#personal_email").validate({ expression: "if (VAL.match(/^[^\\W][a-zA-Z0-9\\_\\-\\.]+([a-zA-Z0-9\\_\\-\\.]+)*\\@[a-zA-Z0-9_]+(\\.[a-zA-Z0-9_]+)*\\.[a-zA-Z]{2,4}$/)) return true; else return false;", message: "" }); if($('#personal_email_confirm').length != 0) { jQuery("#personal_email_confirm").validate({ expression: "if ((VAL == jQuery('#personal_email').val()) && VAL) return true; else return false;", message: "" }); } if($('#personal_password').length != 0) { jQuery("#personal_password").validate({ expression: "if (VAL.length > 5 && VAL) return true; else return false;", message: "" }); } if($('#personal_password_confirm').length != 0) { jQuery("#personal_password_confirm").validate({ expression: "if ((VAL == jQuery('#password').val()) && VAL) return true; else return false;", message: "" }); } jQuery("#personal_instrument_1").validate({ expression: "if ( VAL!='0') return true; else return false;", message: "" }); jQuery("#personal_firstname").validate({ expression: "if (VAL) return true; else return false;", message: "" }); jQuery("#personal_lastname").validate({ expression: "if (VAL) return true; else return false;", message: "" }); jQuery("#personal_telephone").validate({ expression: "if (VAL.match(/^[0-9\-\(\)\ ]+$/)) return true; else return false;", message: "" }); jQuery("#personal_address_1").validate({ expression: "if (VAL) return true; else return false;", message: "" }); jQuery("#personal_postcode").validate({ expression: "if (VAL.match(/^[0-9]*$/) && VAL) return true; else return false;", message: "" }); jQuery("#personal_city").validate({ expression: "if (VAL) return true; else return false;", message: "" }); jQuery("#personal_country_id").validate({ expression: "if ( VAL!='0' && VAL!='FALSE') return true; else return false;", message: "" }); jQuery("#personal_zone_id").validate({ expression: "if ( VAL!='FALSE') return true; else return false;", message: "" }); } else { //Company jQuery("#personal_email").validate({ expression: "if (VAL.match(/^[^\\W][a-zA-Z0-9\\_\\-\\.]+([a-zA-Z0-9\\_\\-\\.]+)*\\@[a-zA-Z0-9_]+(\\.[a-zA-Z0-9_]+)*\\.[a-zA-Z]{2,4}$/)) return true; else return false;", message: "" }); if($('#personal_email_confirm').length != 0) { jQuery("#personal_email_confirm").validate({ expression: "if ((VAL == jQuery('#personal_email').val()) && VAL) return true; else return false;", message: "" }); } if($('#personal_password').length != 0) { jQuery("#personal_password").validate({ expression: "if (VAL.length > 5 && VAL) return true; else return false;", message: "" }); } if($('#personal_password_confirm').length != 0) { jQuery("#personal_password_confirm").validate({ expression: "if ((VAL == jQuery('#password').val()) && VAL) return true; else return false;", message: "" }); } jQuery("#personal_firstname").validate({ expression: "if (VAL) return true; else return false;", message: "" }); jQuery("#personal_lastname").validate({ expression: "if (VAL && VAL!=' ') return true; else return false;", message: "" }); jQuery("#personal_pnr").validate({ expression: "if (VAL.match(/^[0-9\-]+$/)) return true; else return false;", message: "" }); jQuery("#personal_telephone").validate({ expression: "if (VAL.match(/^[0-9\-\(\)\ ]+$/)) return true; else return false;", message: "" }); jQuery("#personal_address_1").validate({ expression: "if (VAL) return true; else return false;", message: "" }); jQuery("#personal_postcode").validate({ expression: "if (VAL.match(/^[0-9]*$/) && VAL) return true; else return false;", message: "" }); jQuery("#personal_city").validate({ expression: "if (VAL) return true; else return false;", message: "" }); jQuery("#personal_country_id").validate({ expression: "if ( VAL!='0' && VAL!='FALSE') return true; else return false;", message: "" }); jQuery("#personal_zone_id").validate({ expression: "if ( VAL!='FALSE') return true; else return false;", message: "" }); } jQuery('#personal_info').validated(function(){ showLoader(saveCustomerText); return true; });*/ $.validator.addMethod( "regex", function(value, element, regexp) { if (regexp.constructor != RegExp) regexp = new RegExp(regexp); else if (regexp.global) regexp.lastIndex = 0; return this.optional(element) || regexp.test(value); }, "Please check your input." ); $.validator.addMethod( "selectbox", function(value, element, regexp) { if(value==0 || value=='FALSE') { return false; } else { return true; } }, "Please check your input." ); $("#personal_info").validate({ debug:false, wrapper:"li", errorPlacement: function(error, element) { error.appendTo('#error-container'); }, rules: { personal_email: { required: true, email: true }, personal_email_confirm: { required: true, email: true, equalTo: "#personal_email" }, personal_password: { required: true, minlength: 5 }, personal_password_confirm: { required: true, equalTo: "#personal_password" }, personal_instrument_1: { required: true, selectbox: true }, personal_firstname: { required: true }, personal_lastname: { required: true }, personal_telephone: { required: true, regex: /^[0-9 ]+\-{0,1}[0-9 ]+$/ }, personal_address_1: { required: true }, personal_postcode: { required: true, regex: /^[0-9 ]+$/ }, personal_city: { required: true }, personal_country_id: { required: true, selectbox: true }, personal_zone_id: { required: true, selectbox: true }, personal_pnr: { required: false, regex: /^\d{8}\-\d{4}$/ }, personal_lev_postcode: { required: false, regex: /^[0-9 ]+$/ }, corp_corporation: { required: true }, corp_referens: { required: true }, corp_pnr: { required: true, regex: /^\d{6}\-\d{4}$/ } }, messages: { personal_email: "", personal_email_confirm: "", personal_password: "", personal_password_confirm: "", personal_instrument_1: "", personal_firstname: "", personal_lastname: "", personal_telephone: "", personal_address_1: "", personal_postcode: "", personal_city: "", personal_country_id: "", personal_zone_id: "", personal_pnr: "", personal_lev_postcode: "", corp_corporation: "", corp_referens: "", corp_pnr: "" } }); if($("#personal_info").valid()) { showLoader(saveCustomerText); return true; } else { return false; } showLoader(errorCustomerText,5000); } function personSaved(responseText, statusText, xhr, $form) { //alert(responseText); if(responseText=='save') { login($('#personal_email').val(),$('#personal_password').val()); } else if(responseText=='md5'){ login($('#personal_email').val(),$('#pass').val(),true); } else { showRegister('loggedin'); } if(typeof nextStep == 'function') { nextStep(); } showLoader('', 500); //alert('status: ' + statusText + '\n\nresponseText: \n' + responseText); } function disableEnterKey(e) { var key; if(window.event) key = window.event.keyCode; //IE else key = e.which; //firefox if(key == 13) return false; else return true; } function loadAjaxForm() { var options = { //target: '#output1', // target element(s) to be updated with server response beforeSubmit: validatePerson, // pre-submit callback success: personSaved // post-submit callback // other available options: //url: url // override for form's 'action' attribute //type: type // 'get' or 'post', override for form's 'method' attribute //dataType: null // 'xml', 'script', or 'json' (expected server response type) //clearForm: true // clear all form fields after successful submit //resetForm: true // reset the form after successful submit // $.ajax options can be used here too, for example: //timeout: 5000 }; $.fn.ajaxSubmit.debug=false; $("#personal_info").ajaxForm(options); } function changePass() { popLightBox(changePassText,300,200); } function checkIfEmailExists(email) { if(email!="") { window.onbeforeunload=''; $.ajax({ url: 'index.php?route=checkout/acc_login/checkemail&email=' + email, dataType: 'json', success: function(data) { if(data != "") { $("#personal_email").val(''); if(confirm(email_exists_pop)) { forgotPass(); } } } }); } }