function initPopups() { /** * Lovescanner helpers */ window.lsHelper = new function() { var self = this; self.getRandomizedUrl = function(url) { var currentUrl = url.replace(/#.*/, '').replace(/.?rnd\=\d+/g, ''); var separator = currentUrl.match(/\?/) ? '&' : '?'; return currentUrl + separator + 'rnd=' + (Math.random() + '').replace('.', ''); }; self.pageRefresh = function(timeout, url) { var _pageRefresh = function() { document.location.href = self.getRandomizedUrl(url ? url : document.location.href); }; if (timeout) { setTimeout(_pageRefresh, timeout); } else { _pageRefresh(); } }; self.setFormFieldError = function(formFieldElement, isError, message) { try { var elementContainer = formFieldElement.parents('.form-item'); if (!elementContainer || elementContainer.length == 0) { var elementContainer = formFieldElement.parents('.unit'); if (isError) { elementContainer.find('.green_alert').hide(); elementContainer.find('.red_alert').show(); elementContainer.find('input').addClass('field-error'); if (message) { if ($.isArray(message)) { message = message[0]; } elementContainer.find('.alert_text').html(message).show(); } } else { elementContainer.find('.red_alert').hide(); elementContainer.find('.green_alert').show(); elementContainer.find('.alert_text').hide(); elementContainer.find('input.field-error').removeClass('field-error'); } } else { var formMessage = elementContainer.find('.form-message'); var formTooltip = elementContainer.find('.form-tooltip'); if (isError) { formTooltip.hide(); formMessage.removeClass('form-ok').addClass('form-error').show(); if (message) { if ($.isArray(message)) { message = message[0]; } formMessage.html(message); } } else { formTooltip.show(); formMessage.removeClass('form-error').addClass('form-ok').hide(); } } } catch (exc) { _exc(exc); } }; self.setFormError = function(formElement, isError, message) { try { if (isError && message) { formElement.find('.error').html(message); } else { formElement.find('.error').html(' '); } } catch (exc) { _exc(exc); } }; }; /** * Lovescanner popup */ window.lsPopup = new function() { var self = this; self._element = []; self._container = []; self._wrapper = []; self._contentWrapper = []; self._content = []; self._blocker = []; self._hideTimeout = null; //self._iframe = []; self._options = null; var options = { 'lovescanner': { lsPopupWidth: 572, lsPopupChildWidthOffset: 22, theme: 'default', animationTime: 700, closeButtonShown:true }, 'sexscanner': { lsPopupWidth: 500, lsPopupChildWidthOffset: 50, animationTime: 700, closeButtonShown:true }, 'lovebook' : { lsPopupWidth: 530, lsPopupChildWidthOffset: 0, theme: 'default', lsPopupWidthShrinked:340, lsPopupChildWidthOffsetShrinked:0, animationTime: 100, closeButtonShown:true }, 'topdatingsitesuk': { lsPopupWidth: 572, lsPopupChildWidthOffset: 22, theme: 'default', animationTime: 700, closeButtonShown:true }, 'topdatingsitesusa': { lsPopupWidth: 572, lsPopupChildWidthOffset: 22, theme: 'default', animationTime: 700, closeButtonShown:true } }; self._defaultOptions = $.extend({}, options[window.theme.getName()]); self.loadUrl = function(url, callback, options) { self._options = options; if(options && typeof options.closeButtonShown != 'undefined') self._defaultOptions.closeButtonShown = options.closeButtonShown; self.loadStart(); self.show(); if(self._defaultOptions.closeButtonShown) self.showCloseButton(); if (self._isImage(url)) { self._loadImage(url, callback); } else { $.ajax({ url: url, context: this, success: $.isFunction(callback) ? callback : self._processAjaxResponse, error: self.loadFinish }); } }; self.submitForm = function(form, callback) { self.loadStart(); self.show(); $(form).ajaxSubmit({ success: $.isFunction(callback) ? callback : self._processAjaxResponse, error: self.loadFinish }); }; self.show = function(options) { if(options) self._options = options; if (self._hideTimeout !== null) { window.clearTimeout(self._hideTimeout); self._hideTimeout = null; } if (self._element.is(":visible")) { return; } self._element.show(); self._blocker.show(); if ($.browser.msie && parseFloat($.browser.version) < 7) { $('select').css({ visibility: 'hidden' }); } }; self.hide = function(hideTimeout) { if(self._options && self._options.display == 'modal') { return; } if (self._hideTimeout !== null) { window.clearTimeout(self._hideTimeout); self._hideTimeout = null; } if (hideTimeout > 0) { self._hideTimeout = window.setTimeout(self.hide, hideTimeout); return; } if (!self._element.is(":visible")) { return; } if ($.browser.msie && parseFloat($.browser.version) == 8) { self._container.hide(); self._element.hide(); self._blocker.hide(); } else { self._container.fadeOut(400, function () { self._element.hide(); self._blocker.hide(); if ($.browser.msie && parseFloat($.browser.version) < 7) { $('select').css({ visibility: 'visible' }); } }); } self._shrinked = false; }; self.shrink = function(){ if (self._shrinked) return; self._wrapperOrigW = self._wrapper.css('width'); self._elementOrigW = self._element.css('width'); self._contentWrapperOrigW = self._contentWrapper.css('width'); var lsPopupWidthShr = self._defaultOptions.lsPopupWidthShrinked; var theme = self._defaultOptions.theme; if (self._options) { if (self._options.width) { lsPopupWidthShr = self._options.width; } if (self._options.theme) { theme = self._options.theme; } } self.setTheme(theme); var lsPopupMarginLeft = -parseInt(lsPopupWidthShr / 2); self._element.css({ 'width': lsPopupWidthShr + 'px', 'margin-left': lsPopupMarginLeft + 'px' }); self._wrapper.css({ 'width': lsPopupWidthShr - self._defaultOptions.lsPopupChildWidthOffset }); self._contentWrapper.css({ 'width': lsPopupWidthShr - self._defaultOptions.lsPopupChildWidthOffsetShrinked }); self._shrinked = true; }; self.restoreOrigin = function(){ if(!self._shrinked) return; var lsPopupWidth = self._defaultOptions.lsPopupWidth; var theme = self._defaultOptions.theme; if (self._options) { if (self._options.width) { lsPopupWidth = self._options.width; } if (self._options.theme) { theme = self._options.theme; } } self.setTheme(theme); var lsPopupMarginLeft = -parseInt(lsPopupWidth / 2); self._element.css({ 'width': lsPopupWidth + 'px', 'margin-left': lsPopupMarginLeft + 'px' }); self._wrapper.css({ 'width': lsPopupWidth - self._defaultOptions.lsPopupChildWidthOffset }); self._contentWrapper.css({ 'width': lsPopupWidth - self._defaultOptions.lsPopupChildWidthOffsetShrinked }); self._shrinked = false; } self.update = function(text, options) { self.show(options); self._processResponse(text); }; self.loadStart = function () { if (self._element.is(":visible")) { self._wrapper.css({ 'height': self._wrapper.height() }); self._element.addClass('lsPopup-loadingOpened'); } else { self._element.addClass('lsPopup-loading'); } self.hideCloseButton(); }; self.loadFinish = function () { self._wrapper.css({ 'height': 'auto' }); self._element.removeClass('lsPopup-loading lsPopup-loadingOpened'); if (!self._container.is(":visible")) { if ($.browser.msie && parseFloat($.browser.version) == 8) { self._container.show(); } else { self._container.fadeIn(self._defaultOptions.animationTime); } } if(self._defaultOptions.closeButtonShown) self.showCloseButton(); }; //alert($.browser.msie + ' '+ $.browser.version + ' ' + (parseFloat($.browser.version) == 8)); self.hideCloseButton = function() { self._element.find('.lsPopup-close').hide(); }; self.showCloseButton = function() { self._element.find('.lsPopup-close').show(); }; self.setTheme = function(name) { if (self._element.length != 0 && name) { var theme = 'lsPopupTheme-' + name; var elementClass = self._element.attr('class').replace(/lsPopupTheme-(\S+)/, theme); self._element.attr('class', elementClass); } }; self._build = function() { if (self._element.length == 0) { self._element = $('#lsPopup'); if (self._element.length == 0) { var theme = self._defaultOptions.theme ? 'lsPopupTheme-' + self._defaultOptions.theme : ''; var html = ''; html += '