// JavaScript Document
var dcaro_itemList = [
    {url: 'http://www.apollolocksmithsandglaziers.co.uk/images/caro/9.jpg', title: ''},
    {url: 'http://www.apollolocksmithsandglaziers.co.uk/images/caro/1.jpg', title: ''},
    {url: 'http://www.apollolocksmithsandglaziers.co.uk/images/caro/8.jpg', title: ''},
    {url: 'http://www.apollolocksmithsandglaziers.co.uk/images/caro/2.jpg', title: ''},
    {url: 'http://www.apollolocksmithsandglaziers.co.uk/images/caro/7.jpg', title: ''},
    {url: 'http://www.apollolocksmithsandglaziers.co.uk/images/caro/3.jpg', title: ''},
    {url: 'http://www.apollolocksmithsandglaziers.co.uk/images/caro/6.jpg', title: ''},
    {url: 'http://www.apollolocksmithsandglaziers.co.uk/images/caro/4.jpg', title: ''},
    {url: 'http://www.apollolocksmithsandglaziers.co.uk/images/caro/5.jpg', title: ''},
    {url: 'http://www.apollolocksmithsandglaziers.co.uk/images/caro/10.jpg', title: ''}
];

dcaro_itemList.sort(function() {return 0.5 - Math.random()})

function dcaro_itemVisibleInCallback(carousel, item, i, state, evt)
{
    // The index() method calculates the index from a
    // given index who is out of the actual item range.
    var idx = carousel.index(i, dcaro_itemList.length);
    carousel.add(i, dcaro_getItemHTML(dcaro_itemList[idx - 1]));
};

function dcaro_itemVisibleOutCallback(carousel, item, i, state, evt)
{
    carousel.remove(i);
};

/**
 * Item html creation helper.
 */
function dcaro_getItemHTML(item)
{
    return '<img src="' + item.url + '" border="0" alt="' + item.title + '" />';
};

jQuery(document).ready(function() {
	try 
	{
    jQuery('#dcaro').jcarousel({
        wrap: 'circular',
		auto: 1,
		scroll: 1,
		animation: 1000,
        itemVisibleInCallback: {onBeforeAnimation: dcaro_itemVisibleInCallback},
        itemVisibleOutCallback: {onAfterAnimation: dcaro_itemVisibleOutCallback}
    });
	}
	catch (err)
	{
	}
});


function dcaro_initCallback(carousel)
{
    // Disable autoscrolling if the user clicks the prev or next button.
    carousel.buttonNext.bind('click', function() {
        carousel.startAuto(0);
    });

    carousel.buttonPrev.bind('click', function() {
        carousel.startAuto(0);
    });

    // Pause autoscrolling if the user moves with the cursor over the clip.
    carousel.clip.hover(function() {
        carousel.stopAuto();
    }, function() {
        carousel.startAuto();
    });
};

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

