
var widget_folder = '/projects/voucherwidgets/';

function searchkeyword()
{
    //because the text is hardcoded and this data is outside the support of the site.lang
    //I am forced to create a seperate instance of the widget_data.php file with translations
    //For each site - Cathy 08/04/10
    language = document.getElementById('language').value;
    searchURL = "";
    switch(language){
        case('en-GB'): default:
            searchURL ="http://www.myvouchercodes.co.uk/discountsdeals/";
            keywordMessage = "Please enter keyword";
            break;
        case('en-US'):
            searchURL = "http://www.couponcodes4u.com/discountsdeals/";
            keywordMessage = "Please enter keyword";
            break;
        case('en-IE'):
            searchURL = "http://www.myvouchercodes.ie/discountsdeals/";
            keywordMessage = "Please enter keyword";
            break;
        case('fr'):
            searchURL = "http://www.codespromotion.fr/code-magasins-boutiques-recherche/";
            keywordMessage = "Entrez vos mots clefs";
            break;
        case('de'):
            searchURL = "http://www.topgutscheincode.de/code-shop-suchen/";
            keywordMessage = "Bitte Suchbegriff eingeben";
            break;
    }
   if(Trim(document.getElementById('vKeyword').value) == '')
   {
    alert(keywordMessage);
    return false;
   }
   else
   {
    keyword = document.getElementById('vKeyword').value;
    document.frmadd.target = "_blank";
    document.frmadd.action = searchURL+keyword;
    //url = "http://www.myvouchercodes.co.uk/discountsdeals/"+keyword
    //window.open(url);
   }
}
function Trim(s)
{
	return s.replace(/^\s+/g, '').replace(/\s+$/g, '');
}

function generatecode()
{
  record = document.getElementById('widget_record').value;
  record = base64_encode(record);
  widget_color_bg = document.getElementById('widget_color_bg').value;
  widget_color_bg = base64_encode(widget_color_bg);
  widget_color_fg = document.getElementById('widget_color_fg').value;
  widget_color_fg = base64_encode(widget_color_fg);
  widget_content_bg = document.getElementById('widget_content_bg').value;
  widget_content_bg = base64_encode(widget_content_bg);
  widget_content_fg = document.getElementById('widget_content_fg').value;
  widget_content_fg = base64_encode(widget_content_fg);
  border_color = document.getElementById('border_color').value;
  border_color = base64_encode(border_color);
  border_size = document.getElementById('border_size').value;
  border_size = base64_encode(border_size);
  language = document.getElementById('language').value;

  code = site_url + widget_folder + "widgets.php?records="+record+"&mainbgcolor="+widget_color_bg+"&mainforecolor="+widget_color_fg+"&contentbgcolor="+widget_content_bg+"&contentforecolor="+widget_content_fg+"&bordercolor="+border_color+"&bordersize="+border_size+"&language="+language
  //document.getElementById('widget_code').value = code;

  var url = site_url + widget_folder + "widgets.php";
  url = url + "?records="+record+"&mainbgcolor="+widget_color_bg+"&mainforecolor="+widget_color_fg+"&contentbgcolor="+widget_content_bg+"&contentforecolor="+widget_content_fg+"&bordercolor="+border_color+"&bordersize="+border_size+"&language="+language
  //document.getElementById('showLoading').style.display='';

  jQuery.post(url,{},function(data)
	{
		jQuery('#widgetpreview').html(data);
		document.getElementById('widget_code').value = data;
		jQuery('#pane2').jScrollPane({showArrows:true, scrollbarWidth: 15, arrowSize: 16});
		//document.getElementById('showLoading').style.display='none';
	});
}
function changebgcolor(id)
{
 var regColorcode = /^(#)?([0-9a-fA-F]{3})([0-9a-fA-F]{3})?$/;

 if(regColorcode.test(document.getElementById(id).value) == true)
 {
  document.getElementById(id).style.background = document.getElementById(id).value;
 }
}
function utf8_encode ( argString ) {
    var string = (argString+'').replace(/\r\n/g, "\n").replace(/\r/g, "\n");

    var utftext = "";
    var start, end;
    var stringl = 0;

    start = end = 0;
    stringl = string.length;
    for (var n = 0; n < stringl; n++) {
        var c1 = string.charCodeAt(n);
        var enc = null;

        if (c1 < 128) {
            end++;
        } else if((c1 > 127) && (c1 < 2048)) {
            enc = String.fromCharCode((c1 >> 6) | 192) + String.fromCharCode((c1 & 63) | 128);
        } else {
            enc = String.fromCharCode((c1 >> 12) | 224) + String.fromCharCode(((c1 >> 6) & 63) | 128) + String.fromCharCode((c1 & 63) | 128);
        }
        if (enc !== null) {
            if (end > start) {
                utftext += string.substring(start, end);
            }
            utftext += enc;
            start = end = n+1;
        }
    }

    if (end > start) {
        utftext += string.substring(start, string.length);
    }

    return utftext;
}
function base64_encode(data)
{
    var b64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
    var o1, o2, o3, h1, h2, h3, h4, bits, i = 0, ac = 0, enc="", tmp_arr = [];

    if (!data) {
        return data;
    }

    data = utf8_encode(data+'');

    do { // pack three octets into four hexets
        o1 = data.charCodeAt(i++);
        o2 = data.charCodeAt(i++);
        o3 = data.charCodeAt(i++);

        bits = o1<<16 | o2<<8 | o3;

        h1 = bits>>18 & 0x3f;
        h2 = bits>>12 & 0x3f;
        h3 = bits>>6 & 0x3f;
        h4 = bits & 0x3f;

        // use hexets to index into b64, and append result to encoded string
        tmp_arr[ac++] = b64.charAt(h1) + b64.charAt(h2) + b64.charAt(h3) + b64.charAt(h4);
    } while (i < data.length);

    enc = tmp_arr.join('');

    switch( data.length % 3 ){
        case 1:
            enc = enc.slice(0, -2) + '==';
        break;
        case 2:
            enc = enc.slice(0, -1) + '=';
        break;
    }

    return enc;
}
function showNewXml(xmlfile)
{
	record = base64_encode(document.getElementById('record').value);
	widget_color_bg = base64_encode(document.getElementById('mainbgcolor').value);
	widget_color_fg = base64_encode(document.getElementById('mainforegroundcolor').value);
	widget_content_bg = base64_encode(document.getElementById('contentbgcolor').value);
	widget_content_fg = base64_encode(document.getElementById('contentforegroundcolor').value);
	border_color = base64_encode(document.getElementById('bordercolor').value);
	border_size = base64_encode(document.getElementById('bordersize').value);
	site_url = document.getElementById('site_url').value;
        language = document.getElementById('language').value;
	xml = xmlfile;
	if(xml == "")
		xml = 'mostpopular';

        widgetLanguage = "";
        //because the text is hardcoded and this data is outside the support of the site.lang
        //I am forced to create a seperate instance of the widget_data.php file with translations
        //For each site - Cathy 08/04/10
        switch(language){
            case('en-GB'): default:
                widgetLanguage ="widgets_data-UK.php";
                break;
            case('en-US'):
                widgetLanguage = "widgets_data-US.php";
                break;
            case('en-IE'):
                widgetLanguage = "widgets_data-IE.php";
                break;
            case('fr'):
                widgetLanguage = "widgets_data-FR.php";
                break;
            case('de'):
                widgetLanguage = "widgets_data-DE.php";
                break;
        }
        
        
        var url = site_url + widget_folder + widgetLanguage;




  	url = url + "?xml="+xmlfile+"&records="+record+"&mainbgcolor="+widget_color_bg+"&mainforecolor="+widget_color_fg+"&contentbgcolor="+widget_content_bg+"&contentforecolor="+widget_content_fg+"&bordercolor="+border_color+"&bordersize="+border_size+"&language="+language
	//jQuery('#displaywidgetdata').html("<img src='images/loading.gif'/>");

	//alert(url);
	//$.getJSON(url + "&jsoncallback=?", function(data){
  	jQuery.getJSON(url + "&aja=1&jsoncallback=?", function(data1){
		jQuery('#displaywidgetdata').html(data1.dataret);
		jQuery('#pane2').jScrollPane({showArrows:true, scrollbarWidth: 15, arrowSize: 16});
  	});

  	/*
  	jQuery.post(url,{},function(data)
	{
		jQuery('#displaywidgetdata').html(data);
		jQuery('#pane2').jScrollPane({showArrows:true, scrollbarWidth: 15, arrowSize: 16});
	});
	*/
	/*
	alert(url)
	jQuery.getJSON(url,
	function dates(datos)
	{
		alert(1);
		alert(datos);
		jQuery('#displaywidgetdata').html(datos);
		jQuery('#pane2').jScrollPane({showArrows:true, scrollbarWidth: 15, arrowSize: 16});
	});
	*/


}
