/* [nodename, id, name, navigationtext, href, isnavigation, childs[], templatename] */

if (typeof(decodeURIComponent) == 'undefined') {
  decodeURIComponent = function(s) {
    return unescape(s);
  }
}

function jdecode(s) {
    s = s.replace(/\+/g, "%20")
    return decodeURIComponent(s);
}

var POS_NODENAME=0;
var POS_ID=1;
var POS_NAME=2;
var POS_NAVIGATIONTEXT=3;
var POS_HREF=4;
var POS_ISNAVIGATION=5;
var POS_CHILDS=6;
var POS_TEMPLATENAME=7;
var POS_TARGET=8;
var theSitetree=[ 
	['PAGE','1401',jdecode('Home'),jdecode(''),'/1401.html','true',[],'',''],
	['PAGE','7001',jdecode('Services'),jdecode(''),'/7001.html','true',[],'',''],
	['PAGE','7022',jdecode('Photos+-+Residential'),jdecode(''),'/7022.html','true',[],'',''],
	['PAGE','9301',jdecode('Photos+-+Commercial'),jdecode(''),'/9301.html','true',[],'',''],
	['PAGE','9322',jdecode('Photos+-+Planning'),jdecode(''),'/9322.html','true',[],'',''],
	['PAGE','30501',jdecode('Drawings'),jdecode(''),'/30501.html','true',[],'',''],
	['PAGE','7064',jdecode('Contact+Us'),jdecode(''),'/7064.html','true',[],'',''],
	['PAGE','19001',jdecode('Links'),jdecode(''),'/19001.html','true',[],'','']];
var siteelementCount=8;
theSitetree.topTemplateName='Movement';
theSitetree.paletteFamily='3E6E72';
theSitetree.keyvisualId='1819';
theSitetree.keyvisualName='kv_dummy.jpg';
theSitetree.fontsetId='289';
theSitetree.graphicsetId='354';
theSitetree.contentColor='FFFFFF';
theSitetree.contentBGColor='3E6E72';
var localeDef={
  language: 'en',
  country: 'US'
};
var theTemplate={
				hasFlashNavigation: 'false',
				hasFlashLogo: 	'false',
				hasFlashCompanyname: 'false',
				hasFlashElements: 'false',
				hasCompanyname: 'false',
				name: 			'Movement',
				paletteFamily: 	'3E6E72',
				keyvisualId: 	'1819',
				keyvisualName: 	'kv_dummy.jpg',
				fontsetId: 		'289',
				graphicsetId: 	'354',
				contentColor: 	'FFFFFF',
				contentBGColor: '3E6E72',
				a_color: 		'3E6E72',
				b_color: 		'101C1D',
				c_color: 		'FFFFFF',
				d_color: 		'FFFFFF',
				e_color: 		'FFFFFF',
				f_color: 		'FFFFFF',
				hasCustomLogo: 	'true',
				contentFontFace:'Verdana, Arial, Helvetica, sans-serif',
				contentFontSize:'12',
				useFavicon:     'false'
			  };
var webappMappings = {};
webappMappings['5000']=webappMappings['5000-']={
webappId:    '5000',
documentId:  '1401',
internalId:  '',
customField: '20110405-152941'
};
webappMappings['1006']=webappMappings['1006-1006']={
webappId:    '1006',
documentId:  '1401',
internalId:  '1006',
customField: '1006'
};
webappMappings['7008']=webappMappings['7008-14816']={
webappId:    '7008',
documentId:  '7064',
internalId:  '14816',
customField: 'language:en;country:US;'
};
webappMappings['5000']=webappMappings['5000-']={
webappId:    '5000',
documentId:  '7001',
internalId:  '',
customField: '20101014-015049'
};
webappMappings['5000']=webappMappings['5000-']={
webappId:    '5000',
documentId:  '7022',
internalId:  '',
customField: '20110720-153754'
};
webappMappings['5000']=webappMappings['5000-']={
webappId:    '5000',
documentId:  '7064',
internalId:  '',
customField: '20110405-153058'
};
webappMappings['5000']=webappMappings['5000-']={
webappId:    '5000',
documentId:  '9322',
internalId:  '',
customField: '20101014-014027'
};
webappMappings['5000']=webappMappings['5000-']={
webappId:    '5000',
documentId:  '9301',
internalId:  '',
customField: '20110720-160427'
};
webappMappings['5000']=webappMappings['5000-']={
webappId:    '5000',
documentId:  '30501',
internalId:  '',
customField: '20110720-203934'
};
webappMappings['5000']=webappMappings['5000-']={
webappId:    '5000',
documentId:  '19001',
internalId:  '',
customField: '20100819-015404'
};
var canonHostname = 'cmworker03.yourhostingaccount.com';
var accountId     = 'AENDU0IN2Q1S';
var companyName   = 'John+Sutton%2C+Architect';
var htmlTitle	  = 'John+Sutton%2C+Architect';
var metaKeywords  = 'John+Sutton+Architect%2C+architect%2C+Architects%2C+Designers%2C+Drafting%2C+Design%2C+graphics%2C+green+building%2C+eco+friendly%2C+sustainable+design%2C+energy+efficient%2C+solar%2C+geothermal%2C+title+24%2C+solar+panels%2C+ADA%2C+Caifornia+state+building+code%2C+california%2C+Placerville%2C+Folsom%2C+El+Dorado+Hills%2C+Sacramento%2C+Roseville%2C+Citrus+Heights%2C+Elk+Grove%2C+Shingle+springs%2C+Rancho+Cordova%2C+Natomas%2C+Orange+County%2C+Newport+Beach%2C+Salt+Lake+City%2C+Redding%2C+Eureka%2C+Residential%2C+Custom+Homes%2C+apartments%2C+townhouses%2C+condominiums%2C+infill%2C+green+communities%2C+golf+course+homes%2C+remodels%2C+additions%2C+commercial%2C+insitutional%2C+offices%2C+office+buildings%2C+churches%2C+schools%2C+restaurants%2C+childrens+center%2C+adult+day+care%2C+adult+education%2C+site+plans%2C+surveys%2C+models%2C+color+boards%2C+presentations%2C+3d%2C+rendering%2C+visualization%2C+pre-design%2C+schematic+design%2C+estimating%2C+feasibility+studies%2C+design+development%2C+construction+documents%2C+construction+administration%2C+bidding%2C+negotiations%2C+as+builts%2C+post+construction%2C+single+family+homes%2C+subdivisions%2C+parcel+maps%2C+consultation%2C+design+review%2C+architectural+review+committee%2C+el+dorado+hills+business+park%2C+el+dorado+hills+business+park+owners+association%2C+code+violations%0A%0A%0A%0AAdult+Day+Care%2C%0A%0A%0A%0AEl+Dorado+Hills+Architects%2C%0A%0A%0A%0AFolsom+Architects%2C%0A%0A%0A%0ALincoln+Architects%2C%0A%0A%0A%0APlacerville+Architects%2C%0A%0A%0A%0AResidential+Architects%2C%0A%0A%0A%0ARetail+Architects%2C%0A%0A%0A%0ARetirement+Housing%2C%0A%0A%0A%0ARetirement+communities%2C%0A%0A%0A%0ARoseville+Architects%2C%0A%0A%0A%0ASacramento+Architects%2C%0A%0A%0A%0ASenior+Housing%2C%0A%0A%0A%0ASouth+Lake+Tahoe+architects%2C%0A%0A%0A%0Aadditions+to+house%2C%0A%0A%0A%0Aarchitecture+service%2C%0A%0A%0A%0Abusiness+architects%2C%0A%0A%0A%0Acad+drafting%2C%0A%0A%0A%0Adrafter%2C%0A%0A%0A%0Adrafting%2C%0A%0A%0A%0Agarage+renovation%2C%0A%0A%0A%0Ahome+design%2C%0A%0A%0A%0Ahome+remodeling%2C%0A%0A%0A%0Ahome+remodeling+jobs%2C%0A%0A%0A%0Ahome+renovation%2C%0A%0A%0A%0Ahouse+additions%2C%0A%0A%0A%0Ahouse+architect%2C%0A%0A%0A%0Ahouse+architecture%2C%0A%0A%0A%0Ahouse+design%2C%0A%0A%0A%0Ahouse+kitchen+design%2C%0A%0A%0A%0Ahouse+remodeling%2C%0A%0A%0A%0Aoffice+architects%2C%0A%0A%0A%0Aremodel%2C%0A%0A%0A%0Aremodeling%2C%0A%0A%0A%0Arenovations%2C%0A%0A%0A%0Aresidential+design%2C%0A%0A%0A%0Aroom+addition%2C%0A%0A%0A%0Atenant+improvements%2C%0A%0A%0A%0A+architecture%2C+architectural+drawings%2C+designer%2C+design%2C+interior+design%2C+interior+designer%2C+construction+management%2C+drafter%2C+drafting%2C+draftsman%2C+conditional+use+permit%2C+special+use+permit%2Chome+addition%2C+housing%2C+drawing%2C+plans%2C+plan%2C+house+plans%2C+blueprints%2C+building+plans%2C+construction%2C+contractor%2C+permit%2C+permits%2C+building%2C+building+permit%2C+permit+drawings%2C+permits%2C+design%2C+construction+documentation%2C+CD%2C+CD%27s%2C+construction+documents%2C+shop+drawings%2C+as-builts%2C+as-built%2C+as+builts%2C+as+built%2C+consultant%2C+project+management%2C+2nd+story+addition%2C+basement%2C+home+design%2C+kitchen%2C+kitchen+remodel%2C+bathroom%2C+bathroom+remodel%2C+renovations%2C+interior+alterations%2C+bath%2C+shower%2C+carpentry%2C+cabinets%2C+cabinetwork%2C+code+issues%2C+building+code%2C+construction%2C+construction+without+permit%2C+builder%2C+design+build%2C+consultant%2C+contractor%2C+deck%2C+drafter%2C+drafting%2C+draftsperson%2C+drawings%2C+engineer%2C+engineering%2C+family+room+addition%2C+floor+plans%2C+home+addition%2C+home+design%2C+home+plans%2C+house+plans%2C+kitchen%2C+loft+addition%2C+studio%2C+garage%2C+new+house%2C+permit%2C+plans%2C+remodeling%2C+remodels%2C+renovation%2C+residential%2C+commercial%2C+restaurant%2C+retaining+walls%2C+retrofit%2C+room+addition%2C+sections%2C+seismic%2C+shearwall%2C+bearing+wall%2C+siding%2C+roof%2C+structural%2C+building+permit%2C+permit+expeditor%2C+design+and+drafting%2C+blue+prints%2C+drawings%2C+blueprints%2C+contractor%2C+construction%2C+design%2C+construction+plans%2C+architectural+plan%2C+room+additions+plans%2C+construction+plans%2C+drafting%2C+architectural+permit+drawings%2C+home+addition%2C+housing%2C+remodeling%2C+contractor';
var metaContents  = 'John+Sutton%2C+Architect+-+providing+quality+architectural+services+since+1991';
theSitetree.getById = function(id, ar) {
	if (typeof(ar) == 'undefined'){
		ar = this;
	}
	for (var i=0; i < ar.length; i++) {
		if (ar[i][POS_ID] == id){
			return ar[i];
		}
		if (ar[i][POS_CHILDS].length > 0) {
			var result=this.getById(id, ar[i][POS_CHILDS]);
			if (result != null){
				return result;
			}
		}
	}
	return null;
};

theSitetree.getParentById = function(id, ar) {
	if (typeof(ar) == 'undefined'){
		ar = this;
	}
	for (var i=0; i < ar.length; i++) {
		for (var j = 0; j < ar[i][POS_CHILDS].length; j++) {
			if (ar[i][POS_CHILDS][j][POS_ID] == id) {
				// child found
				return ar[i];
			}
			var result=this.getParentById(id, ar[i][POS_CHILDS]);
			if (result != null){
				return result;
			}
		}
	}
	return null;
};

theSitetree.getName = function(id) {
	var elem = this.getById(id);
	if (elem != null){
		return elem[POS_NAME];
	}
	return null;
};

theSitetree.getNavigationText = function(id) {
	var elem = this.getById(id);
	if (elem != null){
		return elem[POS_NAVIGATIONTEXT];
	}
	return null;
};

theSitetree.getHREF = function(id) {
	var elem = this.getById(id);
	if (elem != null){
		return elem[POS_HREF];
	}
	return null;
};

theSitetree.getIsNavigation = function(id) {
	var elem = this.getById(id);
	if (elem != null){
		return elem[POS_ISNAVIGATION];
	}
	return null;
};

theSitetree.getTemplateName = function(id, lastTemplateName, ar) {
	if (typeof(lastTemplateName) == 'undefined'){
		lastTemplateName = this.topTemplateName;
	}
	if (typeof(ar) == 'undefined'){
		ar = this;
	}
	for (var i=0; i < ar.length; i++) {
		var actTemplateName = ar[i][POS_TEMPLATENAME];
		if (actTemplateName == ''){
			actTemplateName = lastTemplateName;
		}
		if (ar[i][POS_ID] == id) {
			return actTemplateName;
		}
		if (ar[i][POS_CHILDS].length > 0) {
			var result=this.getTemplateName(id, actTemplateName, ar[i][POS_CHILDS]);
			if (result != null){
				return result;
			}
		}
	}
	return null;
};

theSitetree.getByXx = function(lookup, xx, ar) {
    if (typeof(ar) == 'undefined'){
    	ar = this;
    }
    for (var i=0; i < ar.length; i++) {
        if (ar[i][xx] == lookup){
        	return ar[i];
        }
        if (ar[i][POS_CHILDS].length > 0) {
        	var result=this.getByXx(lookup, xx, ar[i][POS_CHILDS]);
            if (result != null){
                return result;
               }
        }
    }
    return null;
};

function gotoPage(lookup) {
	if(__path_prefix__ == "/servlet/CMServeRES" && typeof (changePage) == 'function'){
		changePage(lookup);
		return;
	}
	var page = theSitetree.getHREF(lookup);
	if (!page) {
		var testFor = [ POS_NAME, POS_NAVIGATIONTEXT ];
		for (var i=0 ; i < testFor.length ; i++) {
			var p = theSitetree.getByXx(lookup, testFor[i]);
			if (p != null) {
				page = p[POS_HREF];
				break;
			}
		}
	}
	document.location.href = (new URL(__path_prefix__ + page, true, true)).toString();
};

