
var galleryLoader;
var selectedGallery = 0;
var showGallery_202 = false;
var requestUri_202 = location.href;
var re = /[\?&](ghash=(.*))/gi;
requestUri_202 = requestUri_202.replace(re, '');
if(requestUri_202.indexOf('?') < 0) {
    requestUri_202 = requestUri_202 + '?';
} else {
    requestUri_202 = requestUri_202 + '&';
}
if (galleryLoader == undefined || selectedGallery == 1) {
    showGallery_202 = true;
}
 showGallery_202 = true;
var imageGalleryLeftPos_202       = 31;
var previewImgContainerHeight_202 = 367;
var imageGalleryWidth_202         = 449;
var maxGalleryXPos_202            = 31;
var minGalleryXPos_202            = -409;
var thumbnailsPosition_202        = 'H';
var scrollingSpeed_202            = 60;
var slideShowDelay_202            = 10000;
var ihost_202                     = 'http://images.sonoranseacondo.com/';
var ipath_202                     = ihost_202 + '27/';
var Photos_202                    = new Array();
Photos_202[0] = new Array( ipath_202 + '5323.jpg', ipath_202 + 'thumbnail_5323.jpg', "07_11_07 Mex 014cc_43cc.jpg", "Aerial of Playa Mirador and Whale Hill", "Aerial of Playa Mirador and Whale Hill", "465", "360");
Photos_202[1] = new Array( ipath_202 + '5324.jpg', ipath_202 + 'thumbnail_5324.jpg', "TODD 12-20-06 mex009-133cc.jpg", "Aerial of Playa Mirador and Whale Hill", "Aerial of Playa Mirador and Whale Hill", "465", "360");
Photos_202[2] = new Array( ipath_202 + '5400.jpg', ipath_202 + 'thumbnail_5400.jpg', "4.jpg", "La Casa Linda", "La Casa Linda", "480", "360");
Photos_202[3] = new Array( ipath_202 + '5402.jpg', ipath_202 + 'thumbnail_5402.jpg', "1.jpg", "La Casa Linda", "La Casa Linda", "480", "360");
Photos_202[4] = new Array( ipath_202 + '5403.jpg', ipath_202 + 'thumbnail_5403.jpg', "7.jpg", "La Casa Linda", "La Casa Linda", "480", "360");
Photos_202[5] = new Array( ipath_202 + '5401.jpg', ipath_202 + 'thumbnail_5401.jpg', "20.jpg", "La Casa Linda View", "La Casa Linda View", "480", "360");
Photos_202[6] = new Array( ipath_202 + '5404.jpg', ipath_202 + 'thumbnail_5404.jpg', "lunaysol.jpg", "Luna y Sol", "Luna y Sol", "480", "360");
Photos_202[7] = new Array( ipath_202 + '5405.jpg', ipath_202 + 'thumbnail_5405.jpg', "aventura.jpg", "Aventura", "Aventura", "480", "360");
Photos_202[8] = new Array( ipath_202 + '5414.jpg', ipath_202 + 'thumbnail_5414.jpg', "lunaysol.jpg", "", "", "305", "229");
if (showGallery_202) {
    var preloadPhotos_202 = new Array('' + ihost_202 + 'b_next.gif', '' + ihost_202 + 'b_next_over.gif', '' + ihost_202 + 'b_pause.gif', '' + ihost_202 + 'b_pause_over.gif', '' + ihost_202 + 'b_play.gif', '' + ihost_202 + 'b_play_over.gif', '' + ihost_202 + 'b_previous.gif', '' + ihost_202 + 'b_previous_over.gif', '' + ihost_202 + 'b_scroll_down.gif', '' + ihost_202 + 'b_scroll_down_over.gif', '' + ihost_202 + 'b_scroll_up.gif', '' + ihost_202 + 'b_scroll_up_over.gif', '' + ihost_202 + 'title_bg.gif', '' + ihost_202 + 'show_rental_details.gif', '' + ihost_202 + 'show_rental_details_over.gif', '' + ipath_202 + '5323.jpg', '' + ipath_202 + 'thumbnail_5323.jpg', '' + ipath_202 + 'thumbnail_5324.jpg');
    var preloadPhotos = new Array('' + ihost_202 + 'b_next.gif', '' + ihost_202 + 'b_next_over.gif', '' + ihost_202 + 'b_pause.gif', '' + ihost_202 + 'b_pause_over.gif', '' + ihost_202 + 'b_play.gif', '' + ihost_202 + 'b_play_over.gif', '' + ihost_202 + 'b_previous.gif', '' + ihost_202 + 'b_previous_over.gif', '' + ihost_202 + 'b_scroll_down.gif', '' + ihost_202 + 'b_scroll_down_over.gif', '' + ihost_202 + 'b_scroll_up.gif', '' + ihost_202 + 'b_scroll_up_over.gif', '' + ihost_202 + 'title_bg.gif', '' + ihost_202 + 'show_rental_details.gif', '' + ihost_202 + 'show_rental_details_over.gif', '' + ipath_202 + '5323.jpg', '' + ipath_202 + 'thumbnail_5323.jpg', '' + ipath_202 + 'thumbnail_5324.jpg');
    var preloadPhotosAfter_202 = new Array('' + ipath_202 + '5324.jpg', '' + ipath_202 + '5400.jpg', '' + ipath_202 + 'thumbnail_5400.jpg', '' + ipath_202 + '5402.jpg', '' + ipath_202 + 'thumbnail_5402.jpg', '' + ipath_202 + '5403.jpg', '' + ipath_202 + 'thumbnail_5403.jpg', '' + ipath_202 + '5401.jpg', '' + ipath_202 + 'thumbnail_5401.jpg', '' + ipath_202 + '5404.jpg', '' + ipath_202 + 'thumbnail_5404.jpg', '' + ipath_202 + '5405.jpg', '' + ipath_202 + 'thumbnail_5405.jpg', '' + ipath_202 + '5414.jpg', '' + ipath_202 + 'thumbnail_5414.jpg');
} else {
    var preloadPhotos_202 = new Array(ihost_202 + 'title_bg.gif');
    var preloadPhotos = new Array(ihost_202 + 'title_bg.gif');
}
function drawGallery_202()
{
    if (document.getElementById("gallery_slideshow_202") != null ) {
    igallery_202 = document.getElementById("gallery_slideshow_202");
    } else {
    igallery_202 = document.getElementById("gallery_slideshow");
    }
    if (showGallery_202) {
    preview_pane_202 = document.createElement('div');
    preview_pane_202.setAttribute('id', "previewPane_202");
    gncontainer_202 = document.createElement('div');
    gncontainer_202.setAttribute('id', "galleryTitle_202");
    gnscontainer_202 = document.createElement('div');
    gnTitle_202 = document.createTextNode( "Whale Hill / Mirador / Las Palmas Gallery" );
    gnscontainer_202.appendChild(gnTitle_202);
    gncontainer_202.appendChild(gnscontainer_202);
    preview_pane_202.appendChild(gncontainer_202);
    preview_pane_img_div_202 = document.createElement('div');
    preview_pane_img_div_202.setAttribute('id', 'gPreviewImgContainer_202');
    preview_pane_img_202 = document.createElement('img');
    preview_pane_img_202.setAttribute('id', 'gPreviewImg_202');
    if (Photos_202.length > 0) {
        var margin_top = roundnumber_202( (previewImgContainerHeight_202/2 - 4) - (Photos_202[0][6]/2), 0);
        preview_pane_img_202.setAttribute('src', Photos_202[0][0]);
        preview_pane_img_202.setAttribute('width', Photos_202[0][5]);
        preview_pane_img_202.setAttribute('height', Photos_202[0][6]);
        preview_pane_img_202.setAttribute('style', 'margin-top: ' + margin_top + 'px;');
    }
    preview_pane_img_div_202.appendChild(preview_pane_img_202);
    preview_pane_202.appendChild(preview_pane_img_div_202);
    itext_202 = document.createElement('div');
    itext_202.setAttribute('id', "imgTextContainer_202");
    if (Photos_202.length > 0 && Photos_202[0][3] != '') {
        itext_202.innerHTML = Photos_202[0][3];
    }
    preview_pane_202.appendChild(itext_202);
    sscontainer_202 = document.createElement('div');
    sscontainer_202.setAttribute('id', "slideShowContainer_202");
    prev_img_a_202 = document.createElement('a');
    prev_img_a_202.setAttribute('onclick', "prevPhoto_202();return false");
    prev_img_a_202.setAttribute('href', "javascript:prevPhoto_202();");
    prev_img_a_202.setAttribute('onfocus', "this.blur()");
    prev_img_202 = document.createElement('img');
    prev_img_202.setAttribute('id', 'prevSlideCtrl_202');
    prev_img_202.setAttribute('src', ihost_202 + 'b_previous.gif');
    prev_img_202.setAttribute('alt', 'Previous');
    prev_img_202.setAttribute('title', 'Previous');
    prev_img_a_202.appendChild(prev_img_202);
    sscontainer_202.appendChild(prev_img_a_202);
    stop_img_a_202 = document.createElement('a');
    stop_img_a_202.setAttribute('onclick', "stopSlideShow_202();return false");
    stop_img_a_202.setAttribute('href', "javascript:stopSlideShow_202();");
    stop_img_a_202.setAttribute('id', "stopSlideCtrlA_202");
    stop_img_a_202.setAttribute('onfocus', "this.blur()");
    stop_img_202 = document.createElement('img');
    stop_img_202.setAttribute('id', 'stopSlideCtrl_202');
    stop_img_202.setAttribute('src', ihost_202 + 'b_pause.gif');
    stop_img_202.setAttribute('alt', 'Pause');
    stop_img_202.setAttribute('title', 'Pause');
    stop_img_a_202.appendChild(stop_img_202);
    sscontainer_202.appendChild(stop_img_a_202);
    start_img_a_202 = document.createElement('a');
    start_img_a_202.setAttribute('onclick', "startSlideShow_202();return false");
    start_img_a_202.setAttribute('href', "javascript:startSlideShow_202();");
    start_img_a_202.setAttribute('id', "startSlideCtrlA_202");
    start_img_a_202.setAttribute('onfocus', "this.blur()");
    start_img_202 = document.createElement('img');
    start_img_202.setAttribute('id', 'startSlideCtrl_202');
    start_img_202.setAttribute('src', ihost_202 + 'b_play.gif');
    start_img_202.setAttribute('alt', 'Play');
    start_img_202.setAttribute('title', 'Play');
    start_img_a_202.appendChild(start_img_202);
    sscontainer_202.appendChild(start_img_a_202);
    next_img_a_202 = document.createElement('a');
    next_img_a_202.setAttribute('onclick', "nextPhoto_202();return false");
    next_img_a_202.setAttribute('href', "javascript:nextPhoto_202();");
    next_img_a_202.setAttribute('onfocus', "this.blur()");
    next_img_a_202.setAttribute('class', "none_202");
    next_img_a_202.setAttribute('className', "none_202");
    next_img_202 = document.createElement('img');
    next_img_202.setAttribute('id', 'nextSlideCtrl_202');
    next_img_202.setAttribute('src', ihost_202 + 'b_next.gif');
    next_img_202.setAttribute('alt', 'Next');
    next_img_202.setAttribute('title', 'Next');
    next_img_a_202.appendChild(next_img_202);
    sscontainer_202.appendChild(next_img_a_202);
    preview_pane_202.appendChild(sscontainer_202);
    icontainer_202 = document.createElement('div');
    icontainer_202.setAttribute('id', "galleryContainer_202");
    arr_left_img_div_202 = document.createElement('div');
    arr_left_img_div_202.setAttribute('id', "arrow_left_202");
    arr_left_img_202 = document.createElement('img');
    arr_left_img_202.setAttribute('src', ihost_202 + "b_scroll_left.gif");
    arr_left_img_202.setAttribute('id', "arrow_left_image_202");
    arr_left_img_202.setAttribute('width', "31");
    arr_left_img_202.setAttribute('height', "69");
    arr_left_img_div_202.appendChild(arr_left_img_202);
    icontainer_202.appendChild(arr_left_img_div_202);
    arr_right_img_div_202 = document.createElement('div');
    arr_right_img_div_202.setAttribute('id', "arrow_right_202");
    arr_right_img_202 = document.createElement('img');
    arr_right_img_202.setAttribute('src', ihost_202 + "b_scroll_right.gif");
    arr_right_img_202.setAttribute('id', "arrow_right_image_202");
    arr_right_img_202.setAttribute('width', "33");
    arr_right_img_202.setAttribute('height', "69");
    arr_right_img_div_202.appendChild(arr_right_img_202);
    icontainer_202.appendChild(arr_right_img_div_202);
    the_img_div_202 = document.createElement('div');
    the_img_div_202.setAttribute('id', "theImages_202");
    the_img_div_container_202 = document.createElement('div');
    the_img_div_container_202.setAttribute('style', "left: 31px;");
    for (var i=0; i<Photos_202.length; i++) {
        prev_img_a_202 = document.createElement('a');
        prev_img_a_202.setAttribute('onclick', "showPreview_202(Photos_202[" + i + "][0], " + i +", Photos_202[" + i + "][3], Photos_202[" + i + "][5], Photos_202[" + i + "][6]);return false");
        prev_img_a_202.setAttribute('href', "javascript:showPreview_202(Photos_202[" + i + "][0], " + i +", Photos_202[" + i + "][3], Photos_202[" + i + "][5], Photos_202[" + i + "][6]);");
        prev_img_202 = document.createElement('img');
        prev_img_202.setAttribute('src', Photos_202[i][1]);
        prev_img_202.setAttribute('alt', Photos_202[i][4]);
        if (i == Photos_202.length) {
            prev_img_202.setAttribute('style', 'margin: 0px;');
        }
        prev_img_a_202.appendChild(prev_img_202);
        the_img_div_container_202.appendChild(prev_img_a_202);
    }
    slide_end_div_202 = document.createElement('div');
    slide_end_div_202.setAttribute('id', "slideEnd_202");
    the_img_div_container_202.appendChild(slide_end_div_202);
    the_img_div_202.appendChild(the_img_div_container_202);
    icontainer_202.appendChild(the_img_div_202);
    igallery_202.appendChild(preview_pane_202);
    igallery_202.appendChild(icontainer_202);
}
}
window.ua = navigator.userAgent.toLowerCase();
var Safari = (ua.indexOf('safari') != -1)?true:false;

var slideShowInterval_202;
var currentPhoto_202           = 0;
var arrowImageHeight_202       = 31;	// Height of arrow image in pixels;
var previewImage_202           = false;
var previewImageParent_202     = false;
var slideSpeed_202             = 0;
var previewImagePane_202       = false;
var slideEndMarker_202         = false;
var galleryContainer_202       = false;
var disablePlay_202            = false;

function getTopPos_202(inputObj)
{
    var returnValue = inputObj.offsetTop;
    while((inputObj = inputObj.offsetParent) != null) {
        returnValue += inputObj.offsetTop;
    }
    return returnValue;
}

function getLeftPos_202(inputObj)
{
    var returnValue = inputObj.offsetLeft;
    while((inputObj = inputObj.offsetParent) != null) {
        returnValue += inputObj.offsetLeft;
    }
    return returnValue;
}

function roundnumber_202(n, d)
{
    n = n - 0;
    if (d == null) d = 2;
    var f = Math.pow(10, d);
    n += Math.pow(10, - (d + 1));
    n = Math.round(n * f) / f;
    n += Math.pow(10, - (d + 1));
    n += '';
    return d == 0 ? n.substring(0, n.indexOf('.')) :  n.substring(0, n.indexOf('.') + d + 1);
}

function showPreview_202(newSrc, idx, imageText, width, height)
{
    currentPhoto_202 = idx;
    var previewImage_202 = document.getElementById('gPreviewImg_202');
    var margin_top_202 = roundnumber_202( (previewImgContainerHeight_202/2 - 4) - (height/2), 0);
    previewImage_202.src = newSrc;
    previewImage_202.width = width;
    previewImage_202.height = height;
    previewImage_202.setAttribute('style', 'margin-top: ' + margin_top_202 + 'px;');
    if (imageText == 'undefined') {
        imageText = '';
    }
    var imgTextContainer_202 = document.getElementById('imgTextContainer_202');
    if (imageText != '') {

    }
    imgTextContainer_202.innerHTML = imageText;
}

function initSlide_202(e)
{
    if(document.all) {
        e = event;
    }
    var id = this.id;

    if(this.src.indexOf('over') < 0) {
        this.src = this.src.replace('.gif','_over.gif');
    }

    if (Safari) {
      slideSpeed_202 = 10;
    } else {
        if (thumbnailsPosition_202 == 'V') {
            slideSpeed_202 = e.clientY + Math.max(document.body.scrollTop, document.documentElement.scrollTop) - getTopPos_202(this);
            if(this.src.indexOf('down') >= 0) {
                slideSpeed_202 = (slideSpeed_202) * -1;
            } else {
                slideSpeed_202 = arrowImageHeight_202 - slideSpeed_202;
            }
            slideSpeed_202 = Math.round(slideSpeed_202 * 15 / arrowImageHeight_202);
        } else {
            if(this.id=='arrow_right_image_202') {
                slideSpeedMultiply_202 = Math.floor((e.clientX - this.offsetLeft) / 5);
                slideSpeed_202 = -1 * slideSpeedMultiply_202;
                slideSpeed_202 = Math.max(-10, slideSpeed_202);
            } else {
                slideSpeedMultiply_202 = 10 - Math.floor((e.clientX - this.offsetLeft) / 5);
                slideSpeed_202 = 1 * slideSpeedMultiply_202;
                slideSpeed_202 = Math.min(10, slideSpeed_202);
                if(slideSpeed_202 < 0) { slideSpeed_202 = 10; }
            }
        }
    }
}

function stopSlide_202()
{
    slideSpeed_202 = 0;
    this.src = this.src.replace('_over', '');
}

function slidePreviewPane_202()
{
    if(slideSpeed_202 != 0) {
        if (thumbnailsPosition_202 == 'V') {
            var topPos_202 = previewImagePane_202.style.top.replace(/[^\-0-9]/g,'')/1;

            if(slideSpeed_202 < 0 && slideEndMarker_202.offsetTop < (previewImageParent_202.offsetHeight - topPos_202)) {
                slideSpeed_202 = 0;
            }
            topPos_202 = topPos_202 + slideSpeed_202;
            if(topPos_202 > 0) {
                topPos_202 = 0;
            }
            previewImagePane_202.style.top = topPos_202 + 'px';
        } else {
            var leftPos_202 = previewImageParent_202.offsetLeft;
            leftPos_202 = leftPos_202/1 + slideSpeed_202;
            if(leftPos_202 > maxGalleryXPos_202) {
                leftPos_202 = maxGalleryXPos_202;
                slideSpeed_202 = 0;
            }
            if(leftPos_202 < minGalleryXPos_202){
                leftPos_202 = minGalleryXPos_202;
                slideSpeed_202 = 0;
            }
			previewImageParent_202.style.left = leftPos_202 + 'px';
        }
    }
    setTimeout('slidePreviewPane_202()', scrollingSpeed_202);
}

function revealThumbnail_202()
{
    this.style.filter = 'alpha(opacity=100)';
    this.style.opacity = 1;
}

function hideThumbnail_202()
{
    this.style.filter = 'alpha(opacity=50)';
    this.style.opacity = 0.5;
}

function initGalleryScript_202()
{
    drawGallery_202();

    previewImageParent_202 = document.getElementById('theImages_202');
    if( previewImageParent_202 != null ) {
        galleryContainer_202  = document.getElementById('galleryContainer_202');

        previewImagePane_202 = document.getElementById('theImages_202').getElementsByTagName('DIV')[0];
        previewImagePane_202.style.top = '0px';

        var images_202 = previewImagePane_202.getElementsByTagName('IMG');
        for(var no=0; no<images_202.length; no++) {
            images_202[no].onmouseover = revealThumbnail_202;
            images_202[no].onmouseout = hideThumbnail_202;
        }
        slideEndMarker_202 = document.getElementById('slideEnd_202');

        if (thumbnailsPosition_202 == 'V') {
            document.getElementById('arrow_up_image_202').onmousemove = initSlide_202;
            document.getElementById('arrow_up_image_202').onmouseout = stopSlide_202;

            document.getElementById('arrow_down_image_202').onmousemove = initSlide_202;
            document.getElementById('arrow_down_image_202').onmouseout = stopSlide_202;
        } else {
            document.getElementById('arrow_left_image_202').onmousemove = initSlide_202;
            document.getElementById('arrow_left_image_202').onmouseout = stopSlide_202;

            document.getElementById('arrow_right_image_202').onmousemove = initSlide_202;
            document.getElementById('arrow_right_image_202').onmouseout = stopSlide_202;
        }

        document.getElementById('prevSlideCtrl_202').onmousemove = initCtrlBtn_202;
        document.getElementById('prevSlideCtrl_202').onmouseout = stopCtrlBtn_202;

        document.getElementById('startSlideCtrl_202').onmousemove = initCtrlBtn_202;
        document.getElementById('startSlideCtrl_202').onmouseout = stopCtrlBtn_202;

        document.getElementById('stopSlideCtrl_202').onmousemove = initCtrlBtn_202;
        document.getElementById('stopSlideCtrl_202').onmouseout = stopCtrlBtn_202;

        document.getElementById('nextSlideCtrl_202').onmousemove = initCtrlBtn_202;
        document.getElementById('nextSlideCtrl_202').onmouseout = stopCtrlBtn_202;

        slidePreviewPane_202();
    }
}

function rprentals_button_202(rpr_el)
{
    if(rpr_el.src.indexOf('over') < 0) {
        rpr_el.src = rpr_el.src.replace('.gif', '_over.gif');
    } else {
        rpr_el.src = rpr_el.src.replace('_over.gif', '.gif');
    }
}

/*** Slide show functions ***/
function initCtrlBtn_202()
{
    if (this.id != 'startSlideCtrl_202' || disablePlay_202 == false) {
        if(this.src.indexOf('over') < 0) {
            this.src = this.src.replace('.gif', '_over.gif');
        }
    }
}
function stopCtrlBtn_202()
{
    if (this.id != 'startSlideCtrl_202' || disablePlay_202 == false) {
        if(this.src.indexOf('over') >= 0) {
            this.src = this.src.replace('_over', '');
        }
    }
}
function nextPhoto_202()
{
    currentPhoto_202++;
    if (currentPhoto_202 >= Photos_202.length) { currentPhoto_202 = 0; }
    showPreview_202(Photos_202[currentPhoto_202][0], currentPhoto_202, Photos_202[currentPhoto_202][3], Photos_202[currentPhoto_202][5], Photos_202[currentPhoto_202][6]);
}

function prevPhoto_202()
{
    currentPhoto_202--;
    if (currentPhoto_202 >= Photos_202.length || currentPhoto_202 < 0) { currentPhoto_202 = Photos_202.length-1; }
    showPreview_202(Photos_202[currentPhoto_202][0], currentPhoto_202, Photos_202[currentPhoto_202][3], Photos_202[currentPhoto_202][5], Photos_202[currentPhoto_202][6]);
}

function doSlideshow_202()
{
    nextPhoto_202( );
    slideShowInterval_202 = setTimeout("doSlideshow_202()", slideShowDelay_202);
}

function startSlideShow_202(initpic)
{
    slideShowInterval_202 = setTimeout("doSlideshow_202()", slideShowDelay_202);
    var elm = document.getElementById('startSlideCtrl_202');
    var elm_ctrl = document.getElementById('startSlideCtrlA_202');
    disablePlay_202 = true;
    if(elm.src.indexOf('over') < 0) {
        elm.src = elm.src.replace('.gif', '_over.gif');
    }
}

function stopSlideShow_202()
{
    clearTimeout(slideShowInterval_202);
    var elm = document.getElementById('startSlideCtrl_202');
    var elm_ctrl = document.getElementById('startSlideCtrlA_202');
    disablePlay_202 = false;
    if(elm.src.indexOf('over') >= 0) {
        elm.src = elm.src.replace('_over', '');
    }
}

function initGalleryScript()
{
    initGalleryScript_202();
}

function viodAction_202()
{

}

// Image Preloader
function ImagePreloader_202(images, callback)
{
	// store the callback
	this.callback = callback;

	// initialize internal state.
	this.nLoaded = 0;
	this.nProcessed = 0;
	this.aImages = new Array;

	// record the number of images.
	this.nImages = images.length;

	// for each image, call preload()
	for ( var i = 0; i < images.length; i++ )
		this.preload_202(images[i]);
}
ImagePreloader_202.prototype.preload_202 = function(image)
{
	// create new Image object and add to array
	var oImage = new Image;
	this.aImages.push(oImage);

	// set up event handlers for the Image object
	oImage.onload = ImagePreloader_202.prototype.onload_202;
	oImage.onerror = ImagePreloader_202.prototype.onerror_202;
	oImage.onabort = ImagePreloader_202.prototype.onabort_202;

	// assign pointer back to this.
	oImage.oImagePreloader = this;
	oImage.bLoaded = false;
	oImage.source = image;

	// assign the .src property of the Image object
	oImage.src = image;
}
ImagePreloader_202.prototype.onComplete_202 = function()
{
	this.nProcessed++;
	if ( this.nProcessed == this.nImages )
		this.callback(this.aImages);
}
ImagePreloader_202.prototype.onload_202 = function()
{
	this.bLoaded = true;
	this.oImagePreloader.nLoaded++;
	this.oImagePreloader.onComplete_202();
}
ImagePreloader_202.prototype.onerror_202 = function()
{
	this.bError = true;
	this.oImagePreloader.onComplete_202();
}
ImagePreloader_202.prototype.onabort_202 = function()
{
	this.bAbort = true;
	this.oImagePreloader.onComplete_202();
}

// Image Preloader
function ImagePreloader(images,callback)
{
	// store the callback
	this.callback = callback;

	// initialize internal state.
	this.nLoaded = 0;
	this.nProcessed = 0;
	this.aImages = new Array;

	// record the number of images.
	this.nImages = images.length;

	// for each image, call preload()
	for ( var i = 0; i < images.length; i++ )
		this.preload(images[i]);
}
ImagePreloader.prototype.preload = function(image)
{
	// create new Image object and add to array
	var oImage = new Image;
	this.aImages.push(oImage);

	// set up event handlers for the Image object
	oImage.onload = ImagePreloader.prototype.onload;
	oImage.onerror = ImagePreloader.prototype.onerror;
	oImage.onabort = ImagePreloader.prototype.onabort;

	// assign pointer back to this.
	oImage.oImagePreloader = this;
	oImage.bLoaded = false;
	oImage.source = image;

	// assign the .src property of the Image object
	oImage.src = image;
}
ImagePreloader.prototype.onComplete = function()
{
	this.nProcessed++;
	if ( this.nProcessed == this.nImages )
		this.callback(this.aImages);
}
ImagePreloader.prototype.onload = function()
{
	this.bLoaded = true;
	this.oImagePreloader.nLoaded++;
	this.oImagePreloader.onComplete();
}
ImagePreloader.prototype.onerror = function()
{
	this.bError = true;
	this.oImagePreloader.onComplete();
}
ImagePreloader.prototype.onabort = function()
{
	this.bAbort = true;
	this.oImagePreloader.onComplete();
}

/**** invalid preloader ****
// Image Preloader
function ImagePreloader(images,callback)
{
	// store the callback
	this.callback = callback;

  for ( var i = 0; i < images.length; i++ ) { preLdImg(images[i]); }
  this.callback(images);
}

//this part special for safari only
function preLdImg(oHref) {
  if( typeof( oHref ) != 'string' ) { return; }
  if( window.imgLdAr ) { for( var x = 2; x < window.imgLdAr.length; x++ ){ imgLdAr[x].onerror = null; imgLdAr[x].onload = null; } }
  window.imgLdAr = new Array(); window.imgCount = 0; window.hasLoadedImg = new Array();
  for( var x = 2; x < arguments.length; x++ ) {
    if( typeof( arguments[x] ) != 'string' || !document.images ) { self.location.href = oHref; }
    imgLdAr[x] = new Image();
    imgLdAr[x].onload = new Function( //write the function as a string. Allows me to put in the number of images
      'if( hasLoadedImg[imgLdAr['+x+'].src] ){ return; } hasLoadedImg[imgLdAr['+x+'].src] = true; window.imgCount++;'+
      ( arguments[1] ? ( arguments[1] + '( window.imgCount / ' + ( arguments.length - 2 ) + ' );' ) : '' )+
      "if( imgCount == " + ( arguments.length - 2 ) + " ) { self.location.href = '"+oHref+"'; }" );
    imgLdAr[x].onerror = new Function( "for(var x = 2;x<window.imgLdAr.length;x++){imgLdAr[x].onerror=null;imgLdAr[x].onload=null;}if( window.confirm( 'Pre-load error:\\n\\nThe following image failed to load:\\n'+this.src+'\\n\\nDo you want to jump to the next page without pre-loading images?' ) ) { self.location.href = '"+oHref+"'; }" );
    imgLdAr[x].src = arguments[x];
    if( imgLdAr[x].complete ) { imgLdAr[x].onload(); }
  }
}
*******/


if (galleryLoader == undefined) {
    document.write('<div id="gallery_slideshow_202"><\/div>');
    var giv = new ImagePreloader_202(preloadPhotos_202, initGalleryScript_202);
    var aiv = new ImagePreloader_202(preloadPhotosAfter_202, viodAction_202);
}

