var _ff = typeof(navigator.appName) != "undefined" && navigator.appName.indexOf("Microsoft Internet Explorer")<0;
function createCookie(name,value,days) { if (days) { var date = new Date(); date.setTime(date.getTime()+(days*24*60*60*1000));
    var expires = "; expires="+date.toGMTString(); } else var expires = ""; document.cookie = name+"="+value+expires+"; path=/;"; }
function readCookie(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 eraseCookie(name) { createCookie(name,"",-1); }
var product_is_dragging;
function hilight(item)
{
  var obj = document.getElementById(item);
  obj.oldborder = obj.style.border;
  obj.style.border = "3px solid green";
}
function delight(item)
{
  var obj = document.getElementById(item);
  obj.style.border = obj.oldborder;
}
function add_load_event(func)
{
  var oldonload = window.onload;
  if (typeof(window.onload) != "function")
  {
    window.onload = func;
  } else 
  {
    window.onload = function() 
    {
      if (oldonload) 
      {
        oldonload();
      }
      func();
    }
  }
}
function button_visible(id, visible)
{
  if (visible)
    $("#" + id).show();
  else
    $("#" + id).hide()
}
function button_title(id, v)
{
  $("#" + id + " a").html(v);
}
function set_op(obj, op)
{
  if (!obj) return false;
  obj.opacity = op;
  obj.style.opacity = (op / 100);
  obj.style.MozOpacity = (op / 100);
  obj.style.KhtmlOpacity = (op / 100);
  obj.style.filter = op==100?"":"alpha(opacity=" + op + ")"; 
}
function input_systemname_blur(input)
{
  input.value = str_to_system_name(input.value);
  if (input.value == "")
    input.value = str_to_system_name(document.forms["product_form"].elements["naam"].value);
}
function str_to_system_name(str)
{
  return str.replace(/[_ ]+/g, "-").replace(/[^a-zA-Z0-9-]/g, "").replace(/^-+/, "").replace(/-+$/, "").toLowerCase();
}
function input_name(input)
{
	var obj = document.forms["product_form"].elements["system_name"];
	if (obj.value != "") return;
	obj.value = str_to_system_name(input.value);
	//input_systemname_blur(obj);
}
function input_systemname(e)
{
  var e = e || window.event;
  if (e.keyCode == 16 || e.keyCode == 17) return true;
  return (!e.altKey && e.keyCode >= 65 && e.keyCode <= 90)
    || (!e.shiftKey && ((e.keyCode >= 96 && e.keyCode <= 105) || (e.keyCode >= 48 && e.keyCode <= 58)) )
    || e.keyCode == 36  // end
    || e.keyCode == 35  // home
    || e.keyCode == 37  // links
    || e.keyCode == 39  // rechts
    || e.keyCode == 8   // backspace
    || e.keyCode == 32   // space
    || e.keyCode == 109 // _
    || e.keyCode == 116 // F5
    || e.keyCode == 46; // delete
}
function remove_img(item, ID)
{
  var tmp = arguments.length > 2 ? (arguments[2].indexOf("?") > 0 ? arguments[2].substr(0, arguments[2].indexOf("?")) : arguments[2]) : "";
  var extra_img = arguments.length > 2 ? "&extra_img=" + tmp : "";
  var r = arguments.length > 2 ? refresh_extra_imgs : "r";
  new ajax("./modules/remove_img.php?item="+item+"&ID="+ID+extra_img, r);
}
function price_it(val)
{
  val = String(val);
  var ret = "";
  var decs = val.substr(val.length-2);
  if (val.length < 2) 
    ret = 0 + ",0" + decs;
  else if (val.length < 3)
    ret = 0 + "," + decs;
  else
  {
    var p = val.substr(0, val.length-2);
    for(x = p.length%3; x < 3; x++) p = "0" + p;
    p = String(p).match(new RegExp(".{1,3}", "g")).join(".");
    p = p.replace(/^[0|.]+/, "");
    ret = p + "," + decs;
  }
  return "&euro; " + ret;
}
var cancel_func = null;
function check_keys(e)
{
  switch(e.keyCode)
  {
    case 27: 
      cancelEvent(e);
      no_ajax();
      if (cancel_func) cancel_func();
      $("#foto_large").hide();
      $("#foto_fade").hide();
      $(".order_statie").fadeOut(100);  
      fadeOut("mail_block");    
      break;
  }
}
function close_popup()
{
  if (cancel_func) cancel_func();
  no_ajax();
}
function show_image(vx)
{
  if (typeof(vx) == "object")
  { // Single image
    var obj = $(vx);
    var l = 1;
  } else
  { // Image list
    vx = parseInt(vx);
    if (typeof(fotos) != "undefined")
      vx = vx < 0 ? fotos.length - 1 : (vx >= fotos.length ? 0 : vx);
    var obj = $(".slideshow img[vx="+vx+"]");
    var l = $(".slideshow > img").length;
  }
  
  var img = obj.attr("src");
  cancel_func = function()
  {
    $("#foto_fade").fadeOut(150);
    $("#foto_large").hide();
  };
  var img_short = img.substr(img.lastIndexOf("/") + 1, img.length);
  //var large_img = "./_prod_imgs/large/" + img_short;
  var large_img = img.replace(/_theme\/(.+)\/(small|thumb)/, "_theme/$1/large");
    
  if ($("#foto_large img[img_short="+img_short+"]").length <= 0)
  {
    $("#foto_large").append("<img class='full_img' vx='"+vx+"' img_short='"+img_short+"' src='" + large_img + "' />");
    var obj = $("#foto_large img[img_short="+img_short+"]");
    
    obj.bind("load", function()
    {
      $("#foto_large div.image_block").hide();
      $(this).parent().show();//.centerScreen();
    }).css("cursor", "pointer").bind("click", function() { cancel_func(); });
    obj.wrap("<div class='image_block' />");
    obj = obj.parent();
    obj.prepend("<div class='fs_tl'></div>");
    obj.prepend("<div class='fs_t'></div>");
    obj.prepend("<div class='fs_tr'></div>");
    obj.prepend("<div class='fs_l'></div>");
    obj.prepend("<div class='fs_r'></div>");
    obj.prepend("<div class='fs_bl'></div>");
    obj.prepend("<div class='fs_b'></div>");
    obj.prepend("<div class='fs_br'></div>");
    obj.prepend("<img src='./webimages/imageviewer/fancy_close.png' class='fs_close' onclick='cancel_func();' />");
    if (l > 1)
    {
      obj.prepend("<img src='./webimages/imageviewer/fancy_nav_left.png' class='fs_prev' onclick='show_image("+(vx-1)+");' />");
      obj.prepend("<img src='./webimages/imageviewer/fancy_nav_right.png' class='fs_next' onclick='show_image("+(vx+1)+");' ' />");
    }
    
    var left = ($(window).width()/2) - 400;
    var top =  ($(window).height()/2) - 300;
    obj.css("left", left + "px");
    obj.css("top", top + "px");
    //obj.hide();
  } else 
  {
    var obj = $("#foto_large img[img_short="+img_short+"]").parent();
    var left = ($(window).width()/2) - 400;
    var top =  ($(window).height()/2) - 300;
    obj.css("left", left + "px");
    obj.css("top", top + "px");
    $("#foto_large div.image_block").hide();
    $("#foto_large img[img_short="+img_short+"]").parent().show();
  }

  $("#foto_fade").css("opacity", "0.5").fadeIn(250, function() 
  { 
    $("#foto_large").show().css("top", $(window).scrollTop());
  });//.centerScreen();
}
function cancelEvent(e)
{
  e = e ? e : window.event;
  if(e.stopPropagation)
    e.stopPropagation();
  if(e.preventDefault)
    e.preventDefault();
  e.cancelBubble = true;
  e.cancel = true;
  e.returnValue = false;
  return false;
}
function hookEvent(element, eventName, callback)
{
  if(typeof(element) == "string")
    element = document.getElementById(element);
  if(element == null)
    return;
  if(element.addEventListener)
  {
    if(eventName == 'mousewheel')
      element.addEventListener('DOMMouseScroll', callback, false);  
    element.addEventListener(eventName, callback, false);
  }
  else if(element.attachEvent)
    element.attachEvent("on" + eventName, callback);
}

function unhookEvent(element, eventName, callback)
{
  if(typeof(element) == "string")
    element = document.getElementById(element);
  if(element == null)
    return;
  if(element.removeEventListener)
  {
    if(eventName == 'mousewheel')
      element.removeEventListener('DOMMouseScroll', callback, false);  
    element.removeEventListener(eventName, callback, false);
  }
  else if(element.detachEvent)
    element.detachEvent("on" + eventName, callback);
}
function edit_page(btn)
{
  var save = arguments.length > 1 ? arguments[1] : false;
  if ($("div.editable span.mceEditor").length > 0)
  {
    btn.src = "./webimages/edit.png";
    var v = tinyMCE.get("edit_div").startContent;
    tinyMCE.execCommand('mceRemoveControl', false, "edit_div");
    if (!save) $("div#edit_div").html(v);
    $(".slide_show_container, .slideshow").show();
  } else
  {
    btn.src = "./webimages/cancel.png";
    tinyMCE.settings = info_page_settings;
    tinyMCE.execCommand('mceAddControl', false, "edit_div");
    $(".slide_show_container, .slideshow").hide();
  }
}
function save_page(obj)
{
  var page_ID = $("div#edit_div").attr("file_ID");
  var content = escape(tinyMCE.get(obj.editorId).getContent());
  var url = "./modules/ajax_save_infopage.php?page_ID=" + page_ID + "&content=" + content;
  //document.location.href = url; return;
  new ajax(url, _save_page);
}
function _save_page(xml)
{
  edit_page($("img.edit_icon")[0], true);
}
function get_target(e)
{ 
  var e = e || window.event;
  return e.target ? e.target : e.srcElement;
}
function myTextExtraction(node)
{
  return node.getAttribute("filter_by") ? node.getAttribute("filter_by") : node.innerHTML;
}
function fadeIn(id)
{
  $("#fade").fadeIn(300);
  $("#" + id).fadeIn(300).centerScreen();
}
function fadeOut(id)
{
  $("#fade").fadeOut(200);
  $("#" + id).fadeOut(200);
}
function calert(s)
{
  console.log(s);
}
function add_nieuwsbrief()
{
  var url = "./include/php/ajax_add_nieuwsbrief.php?c=1&email=" + $("input#nieuwsbrief_input").val();
  new ajax(url, function(xml)
  {
    no_ajax();
    if (xml.responseText == "")
      alert("U bent toegevoegd aan de nieuwsbrief!");
    else alert(xml.responseText);
  });
}
function remove_nieuwsbrief()
{
  var url = "./include/php/ajax_add_nieuwsbrief.php?c=-1&email=" + $("input#nieuwsbrief_input").val();
  new ajax(url, function(xml)
  {
    no_ajax();
    if (xml.responseText == "")
      alert("U bent afgemeld voor de nieuwsbrief!");
    else alert(xml.responseText);
  });
}
function input_def_val_focus(e)
{
  var e = e || windows.event;
  var obj = e.target || e.srcElement;
  if ($(obj).attr("actived") == "false")
    $(obj).removeClass("grayed").val("").attr("actived", true);
}
function input_def_val_blur(e)
{
  var e = e ? e : windows.event;
  var obj = e.target || e.srcElement;
  if ($(obj).attr("actived") == "false" || $(obj).val() == "") 
    $(obj).addClass("grayed").val($(obj).attr("empty_value")).attr("actived", false);
}
function search()
{
  if (arguments.length > 0 && arguments[0].keyCode != 13) return;
  document.location.href = _doc_root + "/zoeken/?v=" + $("input#search_input").val();
}
function jquery_selector_escape(str)
{
  return str.replace(/([\!\"\#\$\%\&\'\(\)\*\+\,\.\/\:\;\<\=\>\?\@\[\\\]\^\`\{\|\}\~])/g, "\\$1");
}
