/*
 * some notes:
 * - define global var "license_type" in the php script with values "images||links||research||real_estate"
 */


// console will gracefully degrade on non existing firebug...
if (! ("console" in window) || !("firebug" in console)) {
    var names = ["log", "debug", "info", "warn", "error", "assert", "dir", "dirxml", "group"
                 , "groupEnd", "time", "timeEnd", "count", "trace", "profile", "profileEnd"];
    window.console = {};
    for (var i = 0; i <names.length; ++i) window.console[names[i]] = function() {};
}
var is_signedin = false;
var isc_lastwanted = false;

var next_action_after_signin = false;

$(document).ready(function(){
  
  if(!$.browser.msie){
    // hack: if not IE, set bottom to zero for the image
    // this is for safety only, in case user send wrong or no browser
    // we try first in php and redo it here.
    $(".iscpre img").css("bottom","0px");
  } 
  /*
  try first with img max-height...
  
  $('.row')
    .live('mouseover', function(){
      $(this).css('overflow', 'visible');
    })
    .live('mouseout', function(){
      $(this).css('overflow', 'hidden');      
    });
  */
  $("#button_to_checkout_page").click(function(event){
  // redirect to checkout page...
    event.stopPropagation();
    is_signedin = checkSignedIn();
    if (is_signedin == false){
      // showSignInSelection();
      do_signin();
      return false;
    }
  });  
  
  // get and show licenses
  $(".show_licenses").live("click", function(event){
    /*
    switch (license_type){
      case 'images':
        var id = this.id.replace("iscatc_", "");
        next_action_after_signin = 'get_licenses('+id+')';  // next action after signin
        break;
      default:
        next_action_after_signin = 'get_licenses(false)';  // next action after signin
        break;
    }    
    event.stopPropagation();
    is_signedin = checkSignedIn();
    if (is_signedin == false){
      showSignInSelection();
      return;
    }
    */    
    switch (license_type){
      case 'images':
        var id = this.id.replace("iscatc_", "");
        get_licenses(id);
        break;
      default:
        get_licenses(false);
        break;
    }
  });
  
  // popup lighbox
  $(".iscatl").live("click", function(event){
    switch (license_type){
      case 'images':
        var id = this.id.replace("iscatl_", "");
        next_action_after_signin = 'get_lightbox('+id+')';  // next action after signin
        break;
      default:
        // nothing
        break;
    }    
    event.stopPropagation();
    is_signedin = checkSignedIn();
    if (is_signedin == false){
      showSignInSelection();
      return;
    }
    switch (license_type){
      case 'images':
        var id = this.id.replace("iscatl_", "");
        get_lightbox(id);
        break;
      default:
        // nothing
        break;
    }
  });  
  
  // show preview image with additional data
  $(".iscpre").click(function(event){
    
    var id = this.id.replace("iscpre_", "");  // this as first, we need the id
    next_action_after_signin = 'show_image_preview('+id+')';  // next action after signin
    
    event.stopPropagation();
    /*
    is_signedin = checkSignedIn();
    if (is_signedin == false){
      showSignInSelection();
      return;
    }
    */
    var id = this.id.replace("iscpre_", "");
    show_image_preview(id);
  });
  
	// remove from cart
	$(".iscrfc").click(function(event){
	  event.stopPropagation();
    var id = this.id.replace("iscrfc_", "");
    removeFromCart(id);
	});
	
	// remove from lightbox
	$(".iscrfl").click(function(event){
	  event.stopPropagation();
    is_signedin = checkSignedIn();
    if (is_signedin == false){
      showSignInSelection();
      return;
    }
    var id = this.id.replace("iscrfl_", "");
    removeFromLightbox(id);
	});
	
	// show ordered image information (invoice)
	$(".iscsi").click(function(event){
    event.stopPropagation();
    is_signedin = checkSignedIn();
    if (is_signedin == false){
      showSignInSelection();
      return;
    }
    var data = $.metadata.get(this);
    show_order_image_details(data);
	});
	
	// show download popup ( with additional hints for user and the image in original size)
	$(".iscdl").click(function(event){
		event.stopPropagation();
    is_signedin = checkSignedIn();
    if (is_signedin == false){
      showSignInSelection();
      return;
    }
    var id = this.id.replace("iscdl_", "iscsi_");
    var source = document.getElementById(id);
    var data = $.metadata.get(source);
    show_image_download(data);
	});		

  // do remaining initial work...
  $.metadata.setType("attr", "data");
  $.metadata.defaults.single = "data";
  create_popup_frame();
  setupModal();

});

// ------------------- BEGIN AJAX CALLS -------------------

/**
 * get licenses depending on global var license_type
 */ 
function get_licenses(id){
  var data = "m=cart&f=get_licenses&t=json&type=" + license_type + "&id=" + id;
  $.ajax({
    url: "/htmldata/ajax/index.php",
    data: data,
    async: false,
    dataType: "json",
    ifModified: false,
    beforeSend: function(xdr){
    	showModal();
    },
    success: function(r){
    	if (r.error == false){
        display_licenses(r, id);
    	} else {
    		// error case?
    	}
    },
    complete: function(r){
      // 
    },
    error: function(a,b,c){
      // ajax error case?
    }
  });
}

/**
 * get lighboxes
 */ 
function get_lightbox(id){
	$.ajax({
		url: "/htmldata/ajax/index.php",
		data: "m=cart&f=get_all_lightboxes&t=json",
		async: false,
		dataType: "json",
		ifModified: false,
		beforeSend: function(xdr){
    	showModal();
		},
		success: function(r){
			if (r.error == false){
				display_lighboxes(r, id);
			} else {
				// error case?
			}
		},
 		complete: function(r){
      //
		},
		error: function(a,b,c){
		  // ajax error case?
		}
	});
}

/**
 * add a image to a lighbox
 */ 
function addToLightBox(container, id){
	$.ajax({
		url: "/htmldata/ajax/index.php",
		data: "m=cart&f=add_file_lightbox&t=json&id=" + container + "&file_id=" + id,
		async: false,
		dataType: "json",
		ifModified: false,
		beforeSend: function(xdr){
    	showModal();
		},
		success: function(r){
      var output = '<div style="width:100%;height:100%;padding:40px 10px 15px 10px;">';
      if (r.error){
        output += 'Add to lightbox failed.<br />Reason: ' + r.status.message;
      } else {
        output += 'Image added sucessful to your lighbox';
      }
      output += '<div style="margin-top:20px;text-align:center;"><a href="javascript:hideCartFrame();">Close</a></div>';
      output += '</div>';
      $('#cart_frame_content').html(output);
      $('#modalWaitInner').hide();
      updateCartFramePos();
      $('#iscatl_img_'+id).attr({title: 'Image is already in lighbox'});
		},
 		complete: function(r){
 			//	$("#modalWaitInner").hide();
		},
		error: function(a,b,c){
 				//
		}
	});
}

/**
 * create a new lighbox
 */ 
function createLightBox(id){
	var lb = $('#isc_addlightboxname').val();
	if (lb == ""){
		alert ("You must provide a name for the lightbox.");
		$('#isc_addlightboxname').focus();
	} else {
		$.ajax({
			url: "/htmldata/ajax/index.php",
			data: "m=cart&f=create_file_lightbox&t=json&name=" + lb,
			async: false,
			dataType: "json",
			ifModified: false,
			beforeSend: function(xdr){
    	 showModal();
      },
			success: function(r){
			  $("#modalWaitInner").hide();
				if (r.error == false){
					$("#isc_addlightboxname").val("");
					// $("#isc_popup").css("z-index", "100");
					// $("#modalWait").css("z-index", "99");
					$("#isc_nolightboxes").hide();
					$("#isc_lightboxes").append("<tr><td style=\"padding:2px;\">" + lb + "</td><td style=\"padding:2px;\"><span id=\"isc_lighboxaddlink" + r.t_file_container_id + "\"><a style=\"cursor:pointer;\" onclick=\"addToLightBox(" + r.t_file_container_id + "," + id + ");\">&nbsp;<img style=\"cursor:pointer;\" src=\""+icon_addtolightbox+"\" alt=\"Add to lightbox\" title=\"Add to lightbox\" /></a></span></td></tr>");
					$("#isc_lightboxes tr:even").css("background-color", "#eceffa");
				} else {
					alert("Failed creating the lighbox, reason:\n\n"+r.status.message);
					hideModal();
				}
			},
	 		complete: function(r){
        // $("#modalWaitInner").hide();
      },
			error: function(a,b,c){
        // alert ("cart error");
      }
		});
	}
}

/*
 * remove a image from lighbox
 */

function removeFromLightbox(id){
  var source = document.getElementById('iscpre_' + id);
  var data = $.metadata.get(source);
  $.ajax({
  	url: "/htmldata/ajax/index.php",
  	data: "m=cart&f=remove_file_lightbox&t=json&file_id=" + data.id + "&id=" + data.lightboxid,
  	async: false,
  	dataType: "json",
  	ifModified: false,
  	beforeSend: function(xdr){
    	 showModal();
  	},
  	success: function(r){
      if (r.error == false){
  	   $("#iscrfl_"+data.id).parent().parent().parent().remove();
      } else {
        // 
      }
  	},
  	complete: function(r){
      hideModal();
  	},
  	error: function(a,b,c){
  		// ajax error case?
  	}
  });
}

// ------------------- BEGIN DISPLAY LICENSES FUNCTIONS -------------------

function display_licenses(r, id){
  switch (license_type){
    case "images":
      display_licenses_images(r, id);
      break;
    case "links":
      display_licenses_links(r);
      break;
    case "research":
      display_licenses_research(r);
      break;
    case "real_estate":
      display_licenses_real_estate(r);
      break;
    default:
      alert("This type of licenses is not defined yet: " + license_type);
      break;
  }
}

function display_licenses_images(r, id){
	var output = "";
	var rows = 2;
	var ch = "<tr><td class=\"memowidth\" style=\"vertical-align:top;\" colspan=\"5\">Chose a licensing plan.<h2 style=\"margin-top:0px;margin-bottom:5px;color:#3a5eb6;\">Royalty - free</h2></td></tr>";
	var cb = "";
	
  var data = $.metadata.get(document.getElementById('iscpre_' + id));

	var td_left = "<div style=\"margin-top:5px;margin-left:10px;\"><img src=\"" + imagepath4 + data.file + "\" /><br /><b>Image ID:</b><br />" + data.id + "<br /></div>";	// left side of table

	$(r.license).each(function(i){
		if (this.t_license_show_price != null){
			// show rebate price and original price
			var td_original = "<td style=\"padding-left:5px;text-align:right;text-decoration:line-through;\"><b>" + this.t_license_show_price + "</b></td>"; 
			var td_payable  = "<td style=\"padding-left:5px;text-align:right;\"><b>" + this.t_license_price + "</b></td>"; 
		} else {
			// show only original price
			var td_original = "<td></td>"; 
			var td_payable  = "<td style=\"padding-left:5px;text-align:right;\"><b>" + this.t_license_price + "</b></td>"; 
		}
		
		cb += "<tr>" + 
						"<td style=\"\">" + this.t_license_name_en + "</td>" + 
						"<td style=\"padding-left:10px;\"><b> " + r.currency + "</b></td>" + td_original + td_payable +
						"<td style=\"\"><a style=\"cursor:pointer;\" onclick=\"addToCart(" + data.id + "," + this.t_license_id + ");\">" + "<img style=\"cursor:pointer;\" src=\"gfx/isc/icon_add_card_small.jpg\" alt=\"add to shoppingcart\" title=\"add to shoppingcart\" /></a>" + "</td>" + 
          "</tr>";
          
    if (r.license.length > 1 && (rows - 2) < r.license.length){
      cb += "<tr><td colspan=\"4\"><hr style=\"margin:0px;padding:0px;\" /></td><td></td></tr>";
      rows++;
    }
		
    rows++;
		});
	var output = "<table style=\"margin-top:6px;margin-right:10px;margin-bottom:10px;\" border=\"0\"><tr><td style=\"vertical-align:top;padding-right:10px;\" rowspan=\"" + rows + "\">" + td_left + "</td></tr>" + ch + cb + "</table>";
  $('#cart_frame_content').html(output);
  showCartFrame();
}

function display_licenses_links(r){
  var output = output = '<h2 style="margin-bottom: 5px; color: rgb(58, 94, 182);">' + r.license[0].t_license_type_text_en + '</h2>';
  output += '<table style="width:100%">';
  $(r.license).each(function(i){  
    output += '<tr><td style="vertical-align:top;padding:2px;">';
    output += '<a style="cursor:pointer;" onclick="toggleLicenseMemo(\'mlil_' + this.t_license_id + '\'); return false;"><b>' + this.t_license_name_en + '</b></a>';
    output += '<br /><a style="font-size:smaller;font-style:italic;cursor:pointer;" onclick="toggleLicenseMemo(\'mlil_' + this.t_license_id + '\'); return false;"><span id="mlil_' + this.t_license_id + '_memo">Show more info</span></a>';
    output += '</td>';
    output += '<td style="vertical-align:top;padding:2px;"><b>' + r.currency + '</b></td>';
    output += '<td style="vertical-align:top;padding:2px;"><b>' + this.t_license_price + '</b></td>';
    output += '<td style="vertical-align:top;padding:2px; text-align:right;"><a onclick="addToCart(0, ' + this.t_license_id + ', true);" style="cursor: pointer;"><img title="Add to cart" alt="Add to cart" src="icons/icons/cart_add.png" style="cursor: pointer;" /></a></td></tr>';
    output += '</tr><tr id="mlil_' + this.t_license_id + '" style="display:none;"><td colspan="4" style="padding: 5px; background-color: rgb(236, 239, 250);">' + this.t_license_memo_en + '</td></tr>';
  });
  output += '</table>';
  $('#cart_frame_content').html(output);
  showCartFrame();
}

function display_licenses_research(r){
  // console.dir(r);
}
function display_licenses_real_estate(r){
  // console.dir(r);
}


// ------------------- BEGIN CART FUNCTIONS -------------------

function removeFromCart(objectid){
	$.ajax({
		url: "/htmldata/ajax/index.php",
		data: "m=cart&f=remove_file_cart&t=json&connect_id=" + objectid,
		async: false,
		dataType: "json",
		ifModified: false,
		beforeSend: function(xdr){
  	 showModal();
		},
		success: function(r){
			if (r.error == false){
      	$("#isc_tr_item_"+objectid).remove();
      	var rows = $('.colorize');
      	var i = 0;
      	$.each(rows, function() {
      		var background = (i % 2) ? "white" : "#eceffa";
      		$("#" + this.id).css("background-color", background);
      		i++;
      	});
      	// update total rom
      	$('#iscsummaryrow').css("background-color", "#b2c3e7");
      	$("#isc_sum_brutto").empty().append(r.sum_brutto);
      	if (parseFloat(r.sum_tax) > 0){
      		$("#isc_sum_tax").empty().append(r.sum_tax);
      		$("#isc_sum_netto").empty().append(r.sum_netto);
      	}
      	// if (r.count < 1){
      	if (i < 1){
      		$("#iscsummaryrow").remove();
      		$("#isctable").append("<tr><td>Your cart contains no items</td></tr>");
      	}			  
			} else {
				// error case?
			}
		},
 		complete: function(r){
 		  hideModal();
		},
		error: function(a,b,c){
				// ajax error case?
		}
	});
}

function addToCart(objectid, licenseid){
	$.ajax({
		url: "/htmldata/ajax/index.php",
		data: "m=cart&f=add_to_cart&type=" + license_type + "&t=json&id=" + objectid + "&license_id=" + licenseid,
		async: false,
		dataType: "json",
		ifModified: false,
		beforeSend: function(xdr){
    	showModal();
  	},
		success: function(r){
		  switch (license_type){
		    case 'images':
		      added_to_cart_images(r, objectid);
		      break;
		    case 'links':
		      added_to_cart_links(r);
		      break;
		    case 'research':
		      added_to_cart_research(r);
		      break;
		    case 'real_estate':
		      added_to_cart_real_estate(r);
		      break;
		    default:
		      alert("This type of licenses is not defined yet: " + license_type);
		      break;
		  }
		},
 		complete: function(r){
 				// hideModal();
 				// alert ("cart completed");
		},
		error: function(a,b,c){
 				// alert ("cart error");
		}
	});
}

function added_to_cart_images(r, id){
  var output = '<div style="width:100%;height:100%;padding:40px 10px 15px 10px;">';
  if (r.error){
    output += 'Add to cart failed.<br />Reason: ' + r.status.message;
  } else {
    output += 'Image license added successfully to your cart';
  }
  output += '<div style="margin-top:20px;text-align:center;"><a href="javascript:hideCartFrame();">Close</a></div>';
  output += '</div>';
  $('#cart_frame_content').html(output);
  $('#modalWaitInner').hide();
  updateCartFramePos();
  // $('#iscatc_img_'+id).attr({src: addedcartimg, title: 'Image is already in cart'});
}

function added_to_cart_links(r){
  var output = '<div style="width:100%;height:100%;padding:40px 10px 15px 10px;">';
  if (r.error){
    output += 'Add to cart failed.<br />Reason: ' + r.status.message;
  } else {
    output += 'License added sucessful to your cart';
  }
  output += '<div style="margin-top:20px;text-align:center;"><a href="javascript:hideCartFrame();">Close</a></div>';
  output += '</div>';
  $('#cart_frame_content').html(output);
  $('#modalWaitInner').hide();
  updateCartFramePos();    
}

function added_to_cart_research(r){
  // console.dir(r);
}

function added_to_cart_real_estate(r){
  // console.dir(r);
}

// ------------------- BEGIN HELPER FUNCTIONS -------------------
function create_popup_frame(){
  $('body').append('<div id="cart_frame" style="z-index:101;padding:5px;display:none;background-color:#FFFFFF;border:2px solid #3a5eb6;position:absolute;"></div>');
  $('#cart_frame').append('<div id="cart_frame_close" onclick="hideCartFrame();" style="cursor:pointer;position:absolute;padding:2px 4px 2px 4px;background-color:#3a5eb6;top:0px;right:0px;border-left:1px solid black;border-bottom:1px solid black;"><b>X</b></div>')
                  .append('<div id="cart_frame_content" style="width:100%;height:100%;"></div>')
                  .draggable({opacity: 0.7, cursor: 'move'});
}

function hideCartFrame(){
  hideModal();
  $('#cart_frame').hide();
}

function showCartFrame(){
  showModal();
  $('#modalWaitInner').hide();
  updateCartFramePos();
  $('#cart_frame').show();
}

function setupModal(){
  var w = $(document).width();
  var h = $(document).height();
  var ih = window.innerHeight / 2;
  var m = "<div id=\"modalWait\" style=\"z-index:100;display:none;position:absolute;top:0px;left:0px;width:"+w+"px;height:"+h+"px;background-color:black;opacity:0.5;filter:alpha(opacity=50);\"><div id=\"modalWaitInner\" style=\"width:99%;position:relative;top:"+ih+"px;text-align:center;\" ><img src=\"/htmldata/js/emporis/cart/loading_animation.gif\" alt=\"Please wait...\" /></div></div>";
	$("body").append(m);
}

function hideModal(){
  $("#modalWait").hide();
}

function showModal(){
  $("#modalWait").show();
  $('#modalWaitInner').show();
}

function toggleLicenseMemo(id){
  $('#cart_frame_content table').css('width', $('#cart_frame_content table').width());

  id = "#" + id;
  switch (license_type){
    case "links":
      var hide_text = 'Hide more info';
      var show_text = 'Show more info';
      break;
    case "images":
      var hide_text = 'Hide examples';
      var show_text = 'Show examples';
      break;
    case "research":
      var hide_text = 'Hide more info';
      var show_text = 'Show more info';
      break;
    case "real_estate":
      var hide_text = 'Hide more info';
      var show_text = 'Show more info';
      break;
    default:
      alert("This licensetype is not defined yet.");
      break;
  }
  if ($(id).is(':hidden') == true){
    $(id+'_memo').html(hide_text);
  } else {
    $(id+'_memo').html(show_text);
  }
	$(id).toggle();
}

function updateCartFramePos(){
	var w = $(document).width() + "px";
	var h = $(document).height() + "px";
	var windowh = $(window).height();
	var windoww = $(window).width();
	var popuph = $("#cart_frame").height();
	var popupw = $("#cart_frame").width();
	var layerpost = (parseInt((windowh / 2) - (popuph / 2)) + $(window).scrollTop()) + "px";
	var layerposl = (parseInt((windoww / 2) - (popupw / 2)) + $(window).scrollLeft()) + "px";
	$("#cart_frame").css({top:layerpost, left:layerposl});
}

jQuery.fn.hint = function () {
  return this.each(function (){
    // get jQuery version of 'this'
    var t = jQuery(this); 
    // get it once since it won't change
    var title = t.attr('title'); 
    // only apply logic if the element has the attribute
    if (title) { 
      // on blur, set value to title attr if text is blank
      t.blur(function (){
        if (t.val() == '') {
          t.val(title);
          t.addClass('blur');
        }
      });
      // on focus, set value to blank if current value 
      // matches title attr
      t.focus(function (){
        if (t.val() == title) {
          t.val('');
          t.removeClass('blur');
        }
      });

      // clear the pre-defined text when form is submitted
      t.parents('form:first()').submit(function(){
          if (t.val() == title) {
              t.val('');
              t.removeClass('blur');
          }
      });

      // now change all inputs to title
      t.blur();
    }
  });
}

function show_image_preview(id){
  var data = $.metadata.get(document.getElementById('iscpre_' + id));
  
  if (data.imgwidth == "NULL" || data.imgwidth == 0){
    var dimensions = "";
  } else {
    var dimensions = "<tr><td style=\"vertical-align:top;text-align:right;color:blue;padding-right:10px;\"><b>Image dimensions:</b></td><td style=\"vertical-align:top;\"><b>";
    dimensions += data.dpi + " dpi / ";
    dimensions += data.megapixel + " megapixels<br />";
    dimensions += data.width_cm + " x " + data.height_cm + " cm<br />";
    dimensions += data.width_in + " x " + data.height_in + " in<br />";
    dimensions += data.imgwidth + " x " + data.imgheight + " pixels";
    dimensions += "</td></tr>";
  }

  var output = 
    "<table style=\"margin:10px 0px 0px 10px;\"><tr><td style=\"vertical-align:bottom;\"><img style=\"height:" + data.imgh4layer + "\" src=\"" + imagepath5 + data.file + "\" /></td>" + 
    
    "<td style=\"vertical-align:bottom;padding-left:10px;\">" + 
    "<a id=\"iscatl_" + data.id + "\" class=\"iscatl\" title=\"add to lightbox\" style=\"cursor: pointer;\">" + 
    "<img id=\"iscatl_img_" + data.id + "\" alt=\"add to lightbox\" src=\"gfx/isc/icon_add_lightbox.jpg\" />" + 
    "</a>" +
    "<br /><a id=\"iscatc_" + data.id + "\" class=\"show_licenses\">" + 
    "<img id=\"iscatc_img_" + data.id + "\" title=\"add to shoppingcart\" alt=\"add to shoppingcart\" src=\"gfx/isc/icon_add_cart.jpg\" style=\"cursor: pointer;\"/></a></td></tr></table>" + 

    "<table style=\"margin-left:10px;margin-bottom:10px;margin-right:10px;border:0px solid gray;\">" + 
    "<tr><td style=\"vertical-align:top;text-align:right;color:blue;padding-right:10px;\"><b>Image ID:<b></td><td><b>" + data.id + "</td></tr>" +
    "<tr><td style=\"vertical-align:top;text-align:right;color:blue;padding-right:10px;\"><b>Title:</b></td><td><b>" + data.desc + "</td></tr>" +
    "<tr><td style=\"vertical-align:top;text-align:right;color:blue;padding-right:10px;\"><b>Photographer:</b></td><td><b>" + data.photographer + "</td></tr>" +
    dimensions +
    "</table>";  

  $('#cart_frame_content').html(output);
  updateCartFramePos();
  showCartFrame();
}

function display_lighboxes(r, id){
  var data = $.metadata.get(document.getElementById('iscpre_' + id));
    
	var output = "";
	if (r.lightboxes && r.lightboxes.length > 0){
		var rows = 4;
		var lbn = "";
	} else {
		var rows = 5;
		var lbn = "<tr><td id=\"isc_nolightboxes\" colspan=\"2\">You have not created any lightbox yet</td></tr>";
	}
	var lh = "<td colspan=\"2\"><h2 style=\"margin-bottom:0px;color:#3a5eb6;\">Your lightboxes</h2></td>";	// Add to your lightbox header
	var lbas = "<tr><td><table cellpadding=\"0\" cellspacing=\"0\" id=\"isc_lightboxes\">";
	var lbac = "";
	var lbae = "</table></td></tr>";
	var nh = "<tr><td colspan=\"2\"><h2 style=\"margin-bottom:0px;color:#3a5eb6;\">Create a new lightbox</h2></td></tr>";	// Create a new lightbox
	var nb = "<tr><td colspan=\"2\"><input type=\"text\" id=\"isc_addlightboxname\" />&nbsp;<a id=\"isc_createlightboxlink\" style=\"cursor:pointer;\" onclick=\"createLightBox(" + data.id + ");\">Create new lighbox</a></td></tr>";	// fields to creating new lightbox
	var td_left = "<img src=\"" + imagepath4 + data.file + "\" /><br /><b>Image ID:</b><br />" + data.id + "<br />";	// left side of table
	$(r.lightboxes).each(function(i){
		lbac += "<tr><td style=\"padding:2px;\">" + this.name + "</td><td style=\"padding:2px 10px 2px 2px;\"><span id=\"isc_lighboxaddlink" + this.id + "\"><a style=\"cursor:pointer;\" onclick=\"addToLightBox(" + this.id + "," + data.id + ");\">&nbsp;<img style=\"cursor:pointer;\" src=\""+icon_addtolightbox+"\" alt=\"Add to lightbox\" title=\"Add to lightbox\" /><a></span></td></tr>";
		});
	var output = "<table style=\"margin:10px;\" border=\"0\"><tr><td style=\"vertical-align:top;padding-right:10px;\" rowspan=\"" + rows + "\">" + td_left + "</td>" + lh + "</tr>" + lbn + lbas + lbac + lbae + nh + nb + "</table>";
	
  $('#cart_frame_content').html(output);
  
	// append keypress for dynamic generated DOM entry input
	$("#isc_addlightboxname").keypress(function(e){
		if (e.which == 13){
			$("#isc_createlightboxlink").trigger('click');
		}
	});
	$("#isc_lightboxes tr:even").css("background-color", "#eceffa");
  
  updateCartFramePos();
  showCartFrame();
  $('#modalWaitInner').hide();
}

function show_order_image_details(data){
  
  if (data.imgwidth == "NULL" || data.imgwidth == 0){
    var dimensions = "";
  } else {
    var dimensions = "<tr><td style=\"vertical-align:top;\"><b>Image dimensions:</b></td><td style=\"vertical-align:top;\">";
    dimensions += data.dpi + " dpi / ";
    dimensions += data.megapixel + " megapixels<br />";
    dimensions += data.width_cm + " x " + data.height_cm + " cm<br />";
    dimensions += data.width_in + " x " + data.height_in + " in<br />";
    dimensions += data.imgwidth + " x " + data.imgheight + " pixels";
    dimensions += "</td></tr>";
  }
  var downloadable = (data.downloadable == '1') ? "Yes" : "No";
  var output = 
    "<div style=\"margin:10px;\">" +
    "<img src=\"" + imagepath5 + data.file + "\" /><br />" +
    "<table style=\"margin-top:5px;border:1px solid gray;\">" + 
    "<tr><td><b>Image ID:<b></td><td>" + data.id + "</td></tr>" +
    "<tr><td><b>Title:</b></td><td>" + data.desc + "</td></tr>" +
    "<tr><td><b>Date:<b></td><td>" + data.purchased_date + "</td></tr>" +
    "<tr><td><b>License:<b></td><td>Unlimited time per usage</td></tr>" +
    "<tr><td><b>Usage:<b></td><td>" + data.license + "</td></tr>" +
    "<tr><td><b>Price:<b></td><td>" + data.currency + " " + data.price + "</td></tr>" +
    "<tr><td><b>Photographer:</b></td><td>" + data.photographer + "</td></tr>" +
    dimensions +																																													
    "<tr><td><b>Copyright:</b></td><td>" + data.photographer + "/Emporis</td></tr>" +
    "</table>" +
    "</div>";
  $('#cart_frame_content').html(output);
  updateCartFramePos();
  showCartFrame();
  $('#modalWaitInner').hide();
}

function show_image_download(data){
  var instructions = "<b>Download image \"" + data.desc + "\"</b><br />Click on the image to open \"Save\" dialog.<br /><br />";
  var image = "<a href=\""+ data.downloadpath + "&file_id=" + data.id + "\"><img src=\"" + imagepath5 + data.file +  "\" title=\"" + data.desc + "\" alt=\"" + data.desc + "\" /></a>";
  var output = "<div style=\"margin:10px;\">" + instructions + image + "</div>";
  $('#cart_frame_content').html(output);
  updateCartFramePos();
  showCartFrame();
  $('#modalWaitInner').hide();
}

function checkSignedIn(){
	var ret;
	$.ajax({
		url: "/htmldata/ajax/index.php",
		data: "m=cart&f=check_signedin&t=json",
		async: false,
		dataType: "json",
		ifModified: false,
		success: function(r){
				if (r.error == false){
					ret = r.signedin;
				}
			},
		error: function(a,b,c){
				ret = false;
		}
	});
	return (ret == 0) ? false : true;
}

function showSignInSelection(){
	var pointto = window.location.search;
	var pointto = encodeURIComponent(pointto.replace("?", ""));
	// fdu 2009-07-13: bug 1367
  // old register page: ?nav=register&forwarding= + pointto 
  // new register page: ?nav=register&regs=image	
	var output = 
	   "<div style=\"margin:10px;text-align:center;\">" +
	   "<br />" +
	   "<b>You are currently not signed in.</b>" +
	   "<br /><br />" +
	   "<a id='cart_signin_link' href='?nav=signin_images&forwarding=" + pointto + "' style=\"cursor:pointer;\">Sign in</a>" +
	   "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;" +
	   "<a href='?nav=register&regs=image" + 
	   "' style=\"cursor:pointer;\">Register</a>" +
	   "</div>";
  $('#cart_frame_content').html(output);
  updateCartFramePos();
  showCartFrame();
  $('#modalWaitInner').hide();
}
