
var mp = {
	domReady: function () {
		
		if ( !($.cookie('LF-mp')) && mp.methods.cookiesEnabled()) {
			mp.methods.showMP();
		};
		
		$('.mp_activate').click(function (event) {
			mp.events.onclickActivate( $(this) );
		});	
			
		$('.mp_close').click(function (event) {
			event.preventDefault();
		});
		
	},

	template: '<div id="popupmain" class="frame">\
			<div id="snake"></div>\
			<div id="header"></div>\
			<div id="greet"></div>\
			<div id="plaintxt">\
				Vi vil så nødigt, at du går glip af vigtig information og medlemstilbud, fordi vi ikke kender dig godt nok.<br /><br />\
				Ved at opdatere din mailadresse og dine øvrige data er du sikker på at modtage:\
				<ul>\
					<li> Ugeskrift for Læger</li>\
					<li>Nyhedsbreve</li>\
					<li>Korrekt kontingentopkrævning</li>\
					<li>\
						Relevant information fra:<br />\
						Lægeforeningen,\
						FAS, Yngre Læger\
						og PLO\
					</li>\
				</ul>\
			</div>\
			<div id="lukvindue" class="lukvindue">\
				<ul>\
					<li>\
						<a id="mp_state01" class="mp_close mp_activate" href="#">Jeg er ikke medlem af Lægeforeningen</a><br />\
					</li>\
					<li>\
						<a id="mp_state02" class="mp_close mp_activate" href="#">Mine data er allerede opdateret</a><br />\
					</li>\
					<li>\
						<a id="mp_state03" class="mp_close mp_activate" href="#">Ikke lige nu - mind mig om det senere</a>\
					</li>\
				</ul>\
			</div>\
			<div id="bottomtxt" class="plaintxt">\
				Du kan også <a id="mp_state04" class="mp_activate" href="mailto:pv@dadl.dk?Subject=Opdater%20mine%20data&Body=Navn%3A%0A%0AMedlemsnummer%3A%0A%0AF%F8lgende%20data%20skal%20rettes%3A%0A%0AJeg%20kan%20kontaktes%20p%E5%20telefon%3A%0A">sende en mail</a> eller ringe til Lægeforeningens Medlemsregistrering på telefon 35 44 83 79.<br />\
				<br />\
				Vær opmærksom på, at rettelserne først er synlige på Læger.dk efter et par dage.<div id="action">\
				<input id="mp_state05" class="mp_activate button green" type="button" id="yesgo" value="Ja, jeg vil opdatere mine oplysninger" /></div>\
			</div>\
		</div>',
	
	settings: { 
		'state01': 730, 		// Udsæt 2 år
		'state02': 180, 		// Udsæt 6 mnd
		'state03': 3, 			// Udsæt 3 dg
		'state04': 365, 		// Udsæt 1 år
		'state05': 365,	 		// Udsæt 1 år
		'fadeInTimer': 500,		// Fade in, milliseconds
		'fadeOutTimer': 500,	// Fade out, milliseconds
		'loginUrl': 'http://lfdb.laeger.dk/sso/jsp/login.jsp?site2pstoretoken=v1.2~22A007EF~2CA31C6462D588EFE53694301B7F591B2DED87B5C31991F673FB33000E1AED82259409094D865B4293FF965B0C5777E768D29B5220884789726126F82F08DF5A2129A7C1DD42A7CA3EBEE5534936120DA1562CB93183209278A37C7D033147C907F1E6B1C4DEA2C67995C21753C50CC6D369D1EDBD5A03FA1875170154ECDF1EFC35875D85772FE07CC9286C87053BAC37D83C0EDBC182F66C990168EFC2F96ADB4C33E98FB29E8C6EB1466106D20F075D516A5B6B663BCFA000D393360F8A140990475002E9513B7F0777D6F583D2DD6B446D909CA46145CDF3C50BDE2DEC31642AE3AE235350788124BA1935833E32215FAD1CBFABEE2100081FD91977EC21&p_error_code=&p_submit_url=http%3A%2F%2Flfdb.laeger.dk%2Fsso%2Fauth&p_cancel_url=http%3A%2F%2Fwww.laeger.dk%2Fportal%2Fpage%2Fportal%2FAE3833561F384F69AECDD0DBD84F5F0F&ssousername='
	},
	
	events: {
		
		onclickActivate: function ($element) {
			var expDays = 7;
			var gotoLogin = false;
			
			switch($element.attr('id')) {
				case 'mp_state01':
					expDays = mp.settings.state01;
			 		break;
				case 'mp_state02':
				  	expDays = mp.settings.state02;
					break;
				case 'mp_state03':
					expDays = mp.settings.state03;
					break;
				case 'mp_state04':
					expDays = mp.settings.state04;
					break;
				case 'mp_state05':
		  			expDays = mp.settings.state05;
					gotoLogin = true;
					break;
				default:
					expDays = 7;
			};	
			
			mp.methods.setCookie(expDays);
			
			mp.methods.hideMP();
			
			if ( gotoLogin ) {
				document.location.href = mp.settings.loginUrl;
			}
		}
		
	},
	
	methods: {
		
		setCookie: function (expDays) {
			$.cookie("LF-mp", "defer", { expires: expDays });
		},
		
		setCoverHeight: function () {			
			$('#cover').height($(document).height());			
		},
		
		cookiesEnabled: function () {
			$.cookie("LF-test", true);
			
			return $.cookie('LF-test');
		},
		
		hideMP: function ($element) {			
			$('#popupmain, #cover').fadeOut( mp.settings.fadeOutTimer, function(){
				$(this).remove();
			});			
		},
		
		showMP: function () {
			$('body').append('<div id="cover"></div>');
			mp.methods.setCoverHeight();
			
			$('body').append(mp.template);
			$('#cover').show().animate( {opacity: 0.7 }, 'mp.settings.fadeInTimer');
			$('#popupmain').fadeIn('mp.settings.fadeInTimer');
			$.cookie("LF-test", null);
		}
	}
}
$(document).ready(mp.domReady);


/**
 * jQuery Cookie plugin
 *
 * Copyright (c) 2010 Klaus Hartl (stilbuero.de)
 * Dual licensed under the MIT and GPL licenses:
 * http://www.opensource.org/licenses/mit-license.php
 * http://www.gnu.org/licenses/gpl.html
 *
 */
jQuery.cookie = function (key, value, options) {

    // key and at least value given, set cookie...
    if (arguments.length > 1 && String(value) !== "[object Object]") {
        options = jQuery.extend({}, options);

        if (value === null || value === undefined) {
            options.expires = -1;
        }

        if (typeof options.expires === 'number') {
            var days = options.expires, t = options.expires = new Date();
            t.setDate(t.getDate() + days);
        }

        value = String(value);

        return (document.cookie = [
            encodeURIComponent(key), '=',
            options.raw ? value : encodeURIComponent(value),
            options.expires ? '; expires=' + options.expires.toUTCString() : '', // use expires attribute, max-age is not supported by IE
            options.path ? '; path=' + options.path : '',
            options.domain ? '; domain=' + options.domain : '',
            options.secure ? '; secure' : ''
        ].join(''));
    }

    // key and possibly options given, get cookie...
    options = value || {};
    var result, decode = options.raw ? function (s) { return s; } : decodeURIComponent;
    return (result = new RegExp('(?:^|; )' + encodeURIComponent(key) + '=([^;]*)').exec(document.cookie)) ? decode(result[1]) : null;
};

