var fobowall;
var fobobase;

function fobosetwall(uri, base)
 {
    fobowall = uri;
    fobobase = base;
}

function fobosetimage(id, uri)
{
  var src = uri;
  if (src.slice(0, 2) == "f=") {
    src = fobowall + "&" + uri;
  }
  var href = src.replace("t=j", "t=t");
  $('a.lti').attr("href", href);
  $(id).slice(0, 1).attr("src", src);
  $('#colourinfo').text("Loading...");
  $('#colourinfo').show(1000, fobohideColourInfo);
  var lqhere = '' + document.location;
  var fragregex = /(#.*)?$/g;
  var lqthere = lqhere.replace(fragregex, "");
  document.location = lqthere + "#" + "fg=" + fobofg + "_" + "bg=" + fobobg;
}


var fobofg = "none";
var fobobg = "none";

function fobosetfgbg(fg, bg)
{
    fobofg = fg;
    fobobg = bg;
    var str = 'f=%7cmehue';
    if (fobofg === 'none') {
	if (fobobg === 'none') {
	    // both none, default image colours
	    fobosetimage('div.imagep div.tndiv a.lti img.tn', fobobase);
	} else {
	    // got bg but default fg
	    fobosetimage('div.imagep div.tndiv a.lti img.tn',
		    'f=%7cmehuebg+bg_' + fobobg + '&amp;t=j&amp;v=0');
	}
    } else {
	if (fobobg === 'none') {
	    // got gg but default bg
	    fobosetimage('div.imagep div.tndiv a.lti img.tn',
		    'f=%7cmehuefg+fg_' + fobofg + '&amp;t=j&amp;v=0');
	} else {
	    // both
	    fobosetimage('div.imagep div.tndiv a.lti img.tn',
		    'f=%7cmehuefgbg+fg_' + fobofg + '+bg_' + fobobg + '&amp;t=j&amp;v=0');
	}

    }
}

function fobohideColourInfo()
{
  $('#colourinfo').fadeOut(2000, foboshowFullColourInfo);
}
function foboshowFullColourInfo()
{
    var href = $('a.lti').attr("href");
  $('#colourinfo').html(
      "<span id='colourinfo'>" +
      "<a href=\"" + href + "\">Explore...</a>"
      + "</span>"
      );
  $('#colourinfo').show(1000);
}

function hidenav()
{
    $('div.npx').hide();
}

function shownav()
{
    $('div.npx').show();
}

function checklocation()
{
    var lqhere = '' + document.location;
    if (lqhere) {
	var lqmatcher = /#fg=([#%]*[A-Za-z0-9]+)_bg=([#%]*[A-Za-z0-9]+)/;
	var lqcolours = lqmatcher.exec(lqhere);
	if (lqcolours && lqcolours.length > 0) {
	    fobosetfgbg(lqcolours[1], lqcolours[2]);
	}
    }
}
