/*** image magnification ***/
 $(document).ready(function() {
   $(".imgcontainer .closer").hide();
   $(".imgcontainer .enlarger").click( function() {
     $(".imgcontainer .closer").hide();
     $(".imgcontainer .imgsm").show();
     $(this).parent().find(".imglg").show();
     $(this).parent().find(".imgsm").hide();
     $(this).parent().find(".btnclose").show();
   });
   $(".imgcontainer .closer").click( function() {
     $(".closer").hide()
     $(".enlarger").show()
   });
 });

function posTop() { return typeof window.pageYOffset != 'undefined' ?
  window.pageYOffset : document.documentElement && document.documentElement.scrollTop ?
  document.documentElement.scrollTop : document.body.scrollTop ?
  document.body.scrollTop : 0; }

function gotoUrl(id) {
  location.href = urls[id];
}

getelemsclasstag = function(classname, tag) {
  if (document.getElementsByClassName) {
    var elems = document.getElementsByClassName(classname);
    return elems;
  } else {
    var i = 0; var elems = new Array();
    var tagelems = document.getElementsByTagName(tag);
    for (i=0;i<tagelems.length;i++) {
      if (tagelems[i].className.search(classname) >-1) elems.push(tagelems[i]);
    }
    return elems;
  }
}

function btnobjbackcolor(myobject) {
  $("." + myobject.btnclass).hover( function() {
      $(this).css('background',myobject.backover);
      $(this).css('color',myobject.colorover);
      }
    , function() {
      $(this).css('background',myobject.backout);
      $(this).css('color',myobject.colorout);
      }
  ).css('background',myobject.backout).css('color',myobject.colorout);
}

/***  Sample input object specification
rolls = {
  imagefolder : 'images'
, sources     : ['DOCK-01B', 'DOCK-02']
, imageclass  : 'image-'
, imagedivid  : 'images'
, index       : 0
, slidetime   : 3000
, fadetime    : 1000
}

Sample execution
$(document).ready(function() { 
  libjustroll.createimgs(rolls);
  libjustroll.start(rolls);
}); // document ready
***/


/***  Sample input object specification
guild = {
  imagefolder : 'images'
, sources     : ['mwccCredenza', 'OlesinMemorialCrop', 'PatAndBill', 'PhilLowe', 'Schwamb-640', 'Wilcox-640']
, imageclass  : 'guildimage-'
, imagedivid  : 'guildimages'
, index       : 0
, slidetime   : 4000
, fadetime    : 1000
, setintid    : ''
, controlscls : 'rollcontrol'
, ctlbackover : '#aaa'
, ctlbackout  : '#ccc'
, imgleft     : '80px'
}
  
 
$(document).ready(function() { 
  libjustroll.createimgs(guild);
  libjustroll.start(guild);
  libjustroll.createcontrols(guild);
});dy
***/

libjustroll = { 
  // use if all images are jpg
  createimgs : function(myobject) {
    if(myobject.link==undefined || myobject.link =='') { 
      var prefix = "<div style=\'position:absolute; left:" + myobject.imgleft + ";  \'> <img src=\'" + myobject.imagefolder + '/';
      var postfix = ".jpg\' /></div>\n";
    } else {
      var prefix  = "<div style=\'position:absolute; left:";
          prefix +=  myobject.imgleft;
          prefix +=  ";  \'> <a href=\'";
          prefix +=  myobject.link;
          prefix +=  "\'><img src=\'";
          prefix +=  myobject.imagefolder;
          prefix +=  '/';
      var postfix = ".jpg\' /></a></div>\n";
    }
    for (var i=0;i<myobject.sources.length;i++) {
      var imagehtml = $("#" + myobject.imagedivid).html();
      $("#" + myobject.imagedivid).html( imagehtml + prefix + myobject.sources[i] + postfix);
    }
    images = $("#" + myobject.imagedivid + ' img');
    images.hide();
    for (var j=0;j<images.length;j++) {
     $(images[j]).addClass(myobject.imageclass+j);
    }
    $("." + myobject.imageclass + 0).show(); // show first image
  } // createimgs
  // use if all images are png
, createpng : function(myobject) { 
    var prefix = "<div style=\'position:absolute; left:" + myobject.imgleft + ";  \'> <img src=\'" + myobject.imagefolder + '/';
    var postfix = ".png\' /></div>\n";
    for (var i=0;i<myobject.sources.length;i++) {
      var imagehtml = $("#" + myobject.imagedivid).html();
      $("#" + myobject.imagedivid).html( imagehtml + prefix + myobject.sources[i] + postfix);
    }
    images = $("#" + myobject.imagedivid + ' img');
    images.hide();
    for (var j=0;j<images.length;j++) {
     $(images[j]).addClass(myobject.imageclass+j);
    }
    $("." + myobject.imageclass + 0).show(); // show first image
  } // createpng
, start : function(myobject) { 
    myobject.setintid = setInterval(function(){libjustroll.sift(myobject)}, myobject.slidetime);
  }
, sift : function(myobject)  { 
    var qty = myobject.sources.length;
    if (myobject.index < qty - 1){ myobject.index += 1; }  
    else {myobject.index = 0;}
    libjustroll.showimage(myobject.index, myobject);  
  }
, showimage : function(num, myobject) {  
    $('#' + myobject.imagedivid + ' img').fadeOut(myobject.fadetime);  
    $('#' + myobject.imagedivid + ' img.' + myobject.imageclass + num).stop().fadeIn(myobject.fadetime);  
  }
, stop : function(myobject) {
    clearInterval(myobject.setintid);
  }
, showone : function(myobject) {
    images.hide();
    $('#' + myobject.imagedivid + ' img.' + myobject.imageclass + myobject.index).show();
  }
, createcontrols : function(myobject) {
  rollcontrols = $('.' + myobject.controlscls);
  rollcontrols.css('background',myobject.ctlbackout);
  rollcontrols.hover(function() { $(this).css('background',myobject.ctlbackover)} , function() {$(this).css('background',myobject.ctlbackout)}).css('cursor','pointer');
  $(rollcontrols[0]).click(function(){
    if(myobject.index==0) myobject.index = myobject.sources.length - 1;
    else myobject.index = myobject.index - 1;
    libjustroll.stop(myobject);
    libjustroll.showone(myobject);
    $(rollcontrols[1]).html('Start');
  });
  $(rollcontrols[1]).click(function(){
    if($(this).html()=='Pause') { libjustroll.stop(myobject);$(this).html('Start');}
    else { libjustroll.start(myobject);$(this).html('Pause'); }
  });
  $(rollcontrols[2]).click(function(){
    if(myobject.index==myobject.sources.length - 1) myobject.index = 0;
    else myobject.index = myobject.index + 1;
    libjustroll.stop(myobject);
    libjustroll.showone(myobject);
    $(rollcontrols[1]).html('Start');
  });
  } // end createcontrols
} // close libjustroll

