//flash disabling / enabling script 
//used with swfObject flash ebedding script 
//author: Sakari Laaksonen, Naviatech / Satama Interactive
//modified: Josep Maria Roca, Brain Alliance Solutions Oy / Satama Interactive
//Requires changes in the implementation routine of swfobject scripts.
//each new swbobject must be conditionalised according to noflashObj.noflash attribute

//OBJECT CONSTRUCTOR

function flashTogglerObj(css) {
//parameters: default value for showing flash: 0 = show flash, 1 = don't show
//css defines the path to the stylesheet that contains styles for enable/disable button
//if css is not false | 0 | null, it will add a <link> tag that will import the stylesheet defined by 'css'
//see set_button_style() for details

//attributes / vars
this.defaultVal = '1';
this.noflash;
this.cookieName = 'viewNokiaFlash1';

// methods / functions
this.SetCookie = create_cookie; 
this.ReadCookie = read_cookie;
this.ToggleFlash = toggle_flash;
this.SetButton = set_button;
this.SetButtonStyle = set_button_style;

//run inner functions
//if cookie is not found, make it. 
this.noflash = this.ReadCookie(this.cookieName);
if(this.noflash == null) {
this.SetCookie(this.cookieName, this.defaultVal);
this.noflash = this.ReadCookie(this.cookieName);
}
// import button styles if css path is given
if(css) {
this.SetButtonStyle(css);
}
//Make the toggler button
this.SetButton();
}

//INNER FUNCTIONS

//cookie functions from  Nokia survey scripts
function create_cookie(name, value, days) {
if(days) {
var date = new Date();
var expirationTime = 24*60*60*1000*180;  
date.setTime(date.getTime() + expirationTime) //(days*60*60*1000)); *24*60*60*1000
var expires = "; expires="+date.toGMTString();
} else {
expires = "";
}
document.cookie = name+"="+value+expires+"; path=/";
}

function read_cookie(name) {
var nameEQ = name + "=";
var ca = document.cookie.split(';');
for(var i=0; i<ca.length; i++) {
var c = ca[i];
while(c.charAt(0)==' ') {
c = c.substring(1,c.length);
}
if(c.indexOf(nameEQ) == 0) {
return c.substring(nameEQ.length,c.length);
}
}
return null;
}

function set_button_style(css) {
//if css path is set, import the given css  
var headNode = document.getElementsByTagName('head')[0];
if(IE()) {
//IE does not properly support createElement & setAttribute functions
var linkTag = '<link href="'+css+'" rel="stylesheet" type="text/css"/>';
linkNode = document.createElement(linkTag);
} else {
var linkNode = document.createElement('link');
linkNode.setAttribute('href',css);
linkNode.setAttribute('rel' , 'stylesheet');
linkNode.setAttribute('type','text/css');
}
headNode.appendChild(linkNode);
return;
}
  
function toggle_flash() {
//if cookie value = '0', set it to '1' and vice versa
this.noflash !== '1' ? this.SetCookie(this.cookieName,'1') : this.SetCookie(this.cookieName,'0');
//reload the page    
window.location.reload();
}
  
function set_button() {
var text = '';
var description = '';
//set up proper text and description
if (this.noflash !== '1') {
text = 'Tắt flash';
description = 'To skip the flash animation and/or load this page faster, click Disable flash animation.';
}
else {
text = 'Mở flash';
description = 'To switch back to the animated version of this page, click Enable flash animation.';
}

//place the button inside  <div id="flashbuttoncontainer" />
document.getElementById('flashbuttoncontainer').innerHTML = '<span id="flashbutton" title="'+description+'" onclick="FlashToggler.ToggleFlash();">'+text+'</span>';
}

function IE() {
var browser = navigator.appName;
//var version = navigator.appVersion;
return browser == "Microsoft Internet Explorer" //? r = true: r = false;
//return r;
}

// JavaScript Document

