
var galleryLoader;
var selectedGallery = 0;
var showGallery_207 = false;
var requestUri_207 = location.href;
var re = /[\?&](ghash=(.*))/gi;
requestUri_207 = requestUri_207.replace(re, '');
if(requestUri_207.indexOf('?') < 0) {
    requestUri_207 = requestUri_207 + '?';
} else {
    requestUri_207 = requestUri_207 + '&';
}
if (galleryLoader == undefined || selectedGallery == 1) {
    showGallery_207 = true;
}
 showGallery_207 = true;
var imageGalleryLeftPos_207       = 31;
var previewImgContainerHeight_207 = 367;
var imageGalleryWidth_207         = 449;
var maxGalleryXPos_207            = 31;
var minGalleryXPos_207            = 31;
var thumbnailsPosition_207        = 'H';
var scrollingSpeed_207            = 60;
var slideShowDelay_207            = 10000;
var ihost_207                     = 'http://images.sonoranseacondo.com/';
var ipath_207                     = ihost_207 + '27/';
var Photos_207                    = new Array();
if (showGallery_207) {
    var preloadPhotos_207 = new Array('' + ihost_207 + 'b_next.gif', '' + ihost_207 + 'b_next_over.gif', '' + ihost_207 + 'b_pause.gif', '' + ihost_207 + 'b_pause_over.gif', '' + ihost_207 + 'b_play.gif', '' + ihost_207 + 'b_play_over.gif', '' + ihost_207 + 'b_previous.gif', '' + ihost_207 + 'b_previous_over.gif', '' + ihost_207 + 'b_scroll_down.gif', '' + ihost_207 + 'b_scroll_down_over.gif', '' + ihost_207 + 'b_scroll_up.gif', '' + ihost_207 + 'b_scroll_up_over.gif', '' + ihost_207 + 'title_bg.gif', '' + ihost_207 + 'show_rental_details.gif', '' + ihost_207 + 'show_rental_details_over.gif');
    var preloadPhotos = new Array('' + ihost_207 + 'b_next.gif', '' + ihost_207 + 'b_next_over.gif', '' + ihost_207 + 'b_pause.gif', '' + ihost_207 + 'b_pause_over.gif', '' + ihost_207 + 'b_play.gif', '' + ihost_207 + 'b_play_over.gif', '' + ihost_207 + 'b_previous.gif', '' + ihost_207 + 'b_previous_over.gif', '' + ihost_207 + 'b_scroll_down.gif', '' + ihost_207 + 'b_scroll_down_over.gif', '' + ihost_207 + 'b_scroll_up.gif', '' + ihost_207 + 'b_scroll_up_over.gif', '' + ihost_207 + 'title_bg.gif', '' + ihost_207 + 'show_rental_details.gif', '' + ihost_207 + 'show_rental_details_over.gif');
    var preloadPhotosAfter_207 = new Array('');
} else {
    var preloadPhotos_207 = new Array(ihost_207 + 'title_bg.gif');
    var preloadPhotos = new Array(ihost_207 + 'title_bg.gif');
}
function drawGallery_207()
{
    if (document.getElementById("gallery_slideshow_207") != null ) {
    igallery_207 = document.getElementById("gallery_slideshow_207");
    } else {
    igallery_207 = document.getElementById("gallery_slideshow");
    }
    if (showGallery_207) {
    txtContainer_207 = document.createElement('div');
    txtContainer_207.setAttribute('id', "galleryEMsg_207");
    txtName_207 = document.createTextNode( 'No photos.' );
    txtContainer_207.appendChild(txtName_207);
    igallery_207.appendChild(txtContainer_207);
}
}
window.ua = navigator.userAgent.toLowerCase();
var Safari = (ua.indexOf('safari') != -1)?true:false;

var slideShowInterval_207;
var currentPhoto_207           = 0;
var arrowImageHeight_207       = 31;	// Height of arrow image in pixels;
var previewImage_207           = false;
var previewImageParent_207     = false;
var slideSpeed_207             = 0;
var previewImagePane_207       = false;
var slideEndMarker_207         = false;
var galleryContainer_207       = false;
var disablePlay_207            = false;

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

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

function roundnumber_207(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_207(newSrc, idx, imageText, width, height)
{
    currentPhoto_207 = idx;
    var previewImage_207 = document.getElementById('gPreviewImg_207');
    var margin_top_207 = roundnumber_207( (previewImgContainerHeight_207/2 - 4) - (height/2), 0);
    previewImage_207.src = newSrc;
    previewImage_207.width = width;
    previewImage_207.height = height;
    previewImage_207.setAttribute('style', 'margin-top: ' + margin_top_207 + 'px;');
    if (imageText == 'undefined') {
        imageText = '';
    }
    var imgTextContainer_207 = document.getElementById('imgTextContainer_207');
    if (imageText != '') {

    }
    imgTextContainer_207.innerHTML = imageText;
}

function initSlide_207(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_207 = 10;
    } else {
        if (thumbnailsPosition_207 == 'V') {
            slideSpeed_207 = e.clientY + Math.max(document.body.scrollTop, document.documentElement.scrollTop) - getTopPos_207(this);
            if(this.src.indexOf('down') >= 0) {
                slideSpeed_207 = (slideSpeed_207) * -1;
            } else {
                slideSpeed_207 = arrowImageHeight_207 - slideSpeed_207;
            }
            slideSpeed_207 = Math.round(slideSpeed_207 * 15 / arrowImageHeight_207);
        } else {
            if(this.id=='arrow_right_image_207') {
                slideSpeedMultiply_207 = Math.floor((e.clientX - this.offsetLeft) / 5);
                slideSpeed_207 = -1 * slideSpeedMultiply_207;
                slideSpeed_207 = Math.max(-10, slideSpeed_207);
            } else {
                slideSpeedMultiply_207 = 10 - Math.floor((e.clientX - this.offsetLeft) / 5);
                slideSpeed_207 = 1 * slideSpeedMultiply_207;
                slideSpeed_207 = Math.min(10, slideSpeed_207);
                if(slideSpeed_207 < 0) { slideSpeed_207 = 10; }
            }
        }
    }
}

function stopSlide_207()
{
    slideSpeed_207 = 0;
    this.src = this.src.replace('_over', '');
}

function slidePreviewPane_207()
{
    if(slideSpeed_207 != 0) {
        if (thumbnailsPosition_207 == 'V') {
            var topPos_207 = previewImagePane_207.style.top.replace(/[^\-0-9]/g,'')/1;

            if(slideSpeed_207 < 0 && slideEndMarker_207.offsetTop < (previewImageParent_207.offsetHeight - topPos_207)) {
                slideSpeed_207 = 0;
            }
            topPos_207 = topPos_207 + slideSpeed_207;
            if(topPos_207 > 0) {
                topPos_207 = 0;
            }
            previewImagePane_207.style.top = topPos_207 + 'px';
        } else {
            var leftPos_207 = previewImageParent_207.offsetLeft;
            leftPos_207 = leftPos_207/1 + slideSpeed_207;
            if(leftPos_207 > maxGalleryXPos_207) {
                leftPos_207 = maxGalleryXPos_207;
                slideSpeed_207 = 0;
            }
            if(leftPos_207 < minGalleryXPos_207){
                leftPos_207 = minGalleryXPos_207;
                slideSpeed_207 = 0;
            }
			previewImageParent_207.style.left = leftPos_207 + 'px';
        }
    }
    setTimeout('slidePreviewPane_207()', scrollingSpeed_207);
}

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

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

function initGalleryScript_207()
{
    drawGallery_207();

    previewImageParent_207 = document.getElementById('theImages_207');
    if( previewImageParent_207 != null ) {
        galleryContainer_207  = document.getElementById('galleryContainer_207');

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

        var images_207 = previewImagePane_207.getElementsByTagName('IMG');
        for(var no=0; no<images_207.length; no++) {
            images_207[no].onmouseover = revealThumbnail_207;
            images_207[no].onmouseout = hideThumbnail_207;
        }
        slideEndMarker_207 = document.getElementById('slideEnd_207');

        if (thumbnailsPosition_207 == 'V') {
            document.getElementById('arrow_up_image_207').onmousemove = initSlide_207;
            document.getElementById('arrow_up_image_207').onmouseout = stopSlide_207;

            document.getElementById('arrow_down_image_207').onmousemove = initSlide_207;
            document.getElementById('arrow_down_image_207').onmouseout = stopSlide_207;
        } else {
            document.getElementById('arrow_left_image_207').onmousemove = initSlide_207;
            document.getElementById('arrow_left_image_207').onmouseout = stopSlide_207;

            document.getElementById('arrow_right_image_207').onmousemove = initSlide_207;
            document.getElementById('arrow_right_image_207').onmouseout = stopSlide_207;
        }

        document.getElementById('prevSlideCtrl_207').onmousemove = initCtrlBtn_207;
        document.getElementById('prevSlideCtrl_207').onmouseout = stopCtrlBtn_207;

        document.getElementById('startSlideCtrl_207').onmousemove = initCtrlBtn_207;
        document.getElementById('startSlideCtrl_207').onmouseout = stopCtrlBtn_207;

        document.getElementById('stopSlideCtrl_207').onmousemove = initCtrlBtn_207;
        document.getElementById('stopSlideCtrl_207').onmouseout = stopCtrlBtn_207;

        document.getElementById('nextSlideCtrl_207').onmousemove = initCtrlBtn_207;
        document.getElementById('nextSlideCtrl_207').onmouseout = stopCtrlBtn_207;

        slidePreviewPane_207();
    }
}

function rprentals_button_207(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_207()
{
    if (this.id != 'startSlideCtrl_207' || disablePlay_207 == false) {
        if(this.src.indexOf('over') < 0) {
            this.src = this.src.replace('.gif', '_over.gif');
        }
    }
}
function stopCtrlBtn_207()
{
    if (this.id != 'startSlideCtrl_207' || disablePlay_207 == false) {
        if(this.src.indexOf('over') >= 0) {
            this.src = this.src.replace('_over', '');
        }
    }
}
function nextPhoto_207()
{
    currentPhoto_207++;
    if (currentPhoto_207 >= Photos_207.length) { currentPhoto_207 = 0; }
    showPreview_207(Photos_207[currentPhoto_207][0], currentPhoto_207, Photos_207[currentPhoto_207][3], Photos_207[currentPhoto_207][5], Photos_207[currentPhoto_207][6]);
}

function prevPhoto_207()
{
    currentPhoto_207--;
    if (currentPhoto_207 >= Photos_207.length || currentPhoto_207 < 0) { currentPhoto_207 = Photos_207.length-1; }
    showPreview_207(Photos_207[currentPhoto_207][0], currentPhoto_207, Photos_207[currentPhoto_207][3], Photos_207[currentPhoto_207][5], Photos_207[currentPhoto_207][6]);
}

function doSlideshow_207()
{
    nextPhoto_207( );
    slideShowInterval_207 = setTimeout("doSlideshow_207()", slideShowDelay_207);
}

function startSlideShow_207(initpic)
{
    slideShowInterval_207 = setTimeout("doSlideshow_207()", slideShowDelay_207);
    var elm = document.getElementById('startSlideCtrl_207');
    var elm_ctrl = document.getElementById('startSlideCtrlA_207');
    disablePlay_207 = true;
    if(elm.src.indexOf('over') < 0) {
        elm.src = elm.src.replace('.gif', '_over.gif');
    }
}

function stopSlideShow_207()
{
    clearTimeout(slideShowInterval_207);
    var elm = document.getElementById('startSlideCtrl_207');
    var elm_ctrl = document.getElementById('startSlideCtrlA_207');
    disablePlay_207 = false;
    if(elm.src.indexOf('over') >= 0) {
        elm.src = elm.src.replace('_over', '');
    }
}

function initGalleryScript()
{
    initGalleryScript_207();
}

function viodAction_207()
{

}

// Image Preloader
function ImagePreloader_207(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_207(images[i]);
}
ImagePreloader_207.prototype.preload_207 = 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_207.prototype.onload_207;
	oImage.onerror = ImagePreloader_207.prototype.onerror_207;
	oImage.onabort = ImagePreloader_207.prototype.onabort_207;

	// 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_207.prototype.onComplete_207 = function()
{
	this.nProcessed++;
	if ( this.nProcessed == this.nImages )
		this.callback(this.aImages);
}
ImagePreloader_207.prototype.onload_207 = function()
{
	this.bLoaded = true;
	this.oImagePreloader.nLoaded++;
	this.oImagePreloader.onComplete_207();
}
ImagePreloader_207.prototype.onerror_207 = function()
{
	this.bError = true;
	this.oImagePreloader.onComplete_207();
}
ImagePreloader_207.prototype.onabort_207 = function()
{
	this.bAbort = true;
	this.oImagePreloader.onComplete_207();
}

// 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_207"><\/div>');
    var giv = new ImagePreloader_207(preloadPhotos_207, initGalleryScript_207);
    var aiv = new ImagePreloader_207(preloadPhotosAfter_207, viodAction_207);
}

