schmap.inputs = ['name','phone', 'addr',  'tmsg'];
var schmapme = {zoom:15,maptype:'m',iconcode:''};
schmapmeText = {};
schmap.isIE = navigator.appName.indexOf("Microsoft") != -1;
function setStarrat(evt){
    schmapme.starrating = evt.value;
}
function finish(flag) {
    if(schmap.date){
		schmap.date.updatePlaceDateTime();
	}
	if(schmapme['tmsg'] || schmapme['tmsg'] === ''){
		schmapme.notes = schmapme['tmsg'];
	}
    var okToSendReq = true;
    if (okToSendReq){
        var urlString = '';
        urlString += "&passcode=" + passCode;
        var addedPhone = false;
        var addedIcon = false;
        for(var k in schmapme){
            if (k.substr(0,4) == "icon") {
                    schmapme[k] = icondata[selectedIconIdx].iconcode;
                    addedIcon = true;
                }
                urlString += '&' + k + '=' + encode(schmapme[k]);
        }
        if (!addedIcon && selectedIconIdx != 0) {
            urlString += "&iconcode=" + icondata[selectedIconIdx].iconcode;
        }
        reqType = "updatetwitter";
		logDebug('urlString  ' ,urlString);
		//alert(urlString);
        loadXMLDoc('/servlet/updateurl', 'post', urlString);
		if(typeof(schmapme.photopath) !== 'undefined'){schmapme.photopath = 0;}
        //alert ('lat=' + schmapme['lat'] + '; long=' + schmapme['long']);
    }
}

function tweetfollowed(req){
    if(req == "status=1"){
	    alert(tweetupText.tmp_alert);
 	}else {
	    $('followbtn').parentNode.innerHTML = tweetupText.success_text;
	}
	removeElementClass(document.body, 'waiting');
}
function followMe(){
    if(schmapme.tuser && schmapme.tpwd){
	addElementClass(document.body, 'waiting');
		var urlString = '';
		urlString += "&username=" + schmapme.tuser
				  +"&password=" +schmapme.tpwd;
				  +"&following=Geotweeting" 
		reqType = "following";
		loadXMLDoc('/servlet/twitter/follow', 'post', urlString);
	} else {
    	alert (tweetupText.nonamepass_alert); 
        usernameRequired();
	}
}

function showSuccessScreen() {
    var s = $('schmapMeLink');
	s.href = 'http://' + location.host +'/' + userUrl;
	schmap.copyUrl = s.innerHTML = 'http://schmap.me/' + userUrl;
	$('schmapMeLink1').value = 'http://' + location.host +'/' + userUrl;
    //var s1 = $('schmapMeLink1');
	//s1.href = 'http://' + location.host +'/' + userUrl;
	//s1.innerHTML = 'http://schmap.me/' + userUrl;
	$('save').href = 'http://' + location.host +'/' + userUrl +'/' + userUrl + '.vcf';
	var mapSource = tweetupText.mapsource || 'maps';
	$('directions').href = 'http://' + mapSource + '.google.com/maps?daddr=' + schmapme['lat'] + ',' + schmapme['long'];
	hideElement('edit');
	showElement('share');
	schmap.editMode = false;
	schmapme['p'] = "u";
    // showElement('successScreen'); 
     // var schmapme_url = $('schmapme-url');
    // schmapme_url.href= 'http://' + document.location.host + '/' + userUrl;
    // schmapme_url.innerHTML = document.location.host + '/' + userUrl;
 	// connect('followbtn', 'onclick', followMe);
	
    // window.frames["success"].setup(userUrl, 'Map and Contacts');
}
function goToTwitter(flag){
    schmap.shareTo = flag;
    if(schmapme['tmsg']){
	var tmsg = schmapme['tmsg'];
	}else {
	var tmsg = '';
	}
	if(!schmap.textLength){
	var plus = "";
	}else {
	var plus = "+";
	}
	if(schmap['shareTo'] == 't'){
    window.location.href ="http://twitter.com/home/?status=" + tmsg.replace(/%20/g,'+') 
	                      + plus + '+' + "http://schmap.me/" + userUrl;
	} else {
	window.location.href = "http://www.facebook.com/share.php?u="+document.location.host+"/" + userUrl;
    // hideElement($('content'));
	}
}

function shareTo(web){
    schmap.shareTo = web;
    if(schmapme['tmsg']){
	var tmsg = schmapme['tmsg'];
	}else {
	var tmsg = '';
	}
	if(!schmap.textLength){
	var plus = "";
	}else {
	var plus = "+";
	}
	var d = schmapme.tmsg || '';
	if(schmap['shareTo'] == 'twitter'){
    var shareToUrl ="http://twitter.com/home/?status=" + tmsg.replace(/%20/g,'+') 
	                      + plus + '+' + "http://schmap.me/" + userUrl;
	} else if(schmap['shareTo'] == 'facebook') {
	var shareToUrl = "http://www.facebook.com/share.php?u="+document.location.host+"/" + userUrl;
	}else if(schmap['shareTo'] == 'xiaonei') {
	var shareToUrl = "http://share.xiaonei.com/share/ShareOperate.do?action=sharelink&weblink=http://"+document.location.host+"/" + userUrl;
	}else if(schmap['shareTo'] == 'fanfou') {
	var shareToUrl = "http://fanfou.com/sharer?u="+document.location.host+"/" + userUrl + "&t=" + schmapme.name + "&d=" + d+ "&s=bm";
	}else if(schmap['shareTo'] == 'jiwai') {
	var shareToUrl = "http://jiwai.de/wo/share/s?u="+document.location.host+"/" + userUrl + "&t=" + schmapme.name + "&d=" + d ;
	}else if(schmap['shareTo'] == 'kaixin') {
	var shareToUrl = "http://www.kaixin001.com/repaste/share.php?rurl="+document.location.host+"/" + userUrl+ "&rtitle=" + schmapme.name + "&rcontent=" + 'http://' + document.location.host + '/' +userUrl;
	}else if(schmap['shareTo'] == 'douban') {
	var shareToUrl = " http://www.douban.com/recommend/?url="+document.location.host+"/" + userUrl+ "&title=" + schmapme.name + "&sel=" + d + "v=1";
	}else if(schmap['shareTo'] == 'mail'){	
		var subject = encodeURIComponent(schmapme.name + '电子地图');
		var body = '%0D%0Dhttp://' + document.location.host + "/" + userUrl
		var shareToUrl = 'mailto:?subject=' + subject + '&body=' + body;
	} else if(schmap['shareTo'] == 'bookmark'){	
	    var o= $(web).parentNode;
		var url = 'http://' + document.location.host+"/" + userUrl;
		var title = schmapme.name;
		var isSafari = navigator.userAgent.toLowerCase().indexOf('webkit')!=-1;
		if( window.sidebar){ // Firefox
			window.sidebar.addPanel(title, url,'');
		}else if(document.all){ //IE
			window.external.AddFavorite(url, title); 
		} else if(isSafari){
			alert('请按 Ctrl + D 键 添加到书签');
			
		}var shareToUrl ="#bookmark";
	}

	$(web).parentNode.href = shareToUrl;
}

function showGeneralErrorScreen() {
 //$('gototwitter').href="#"
	//hideElement('resultForm');
	//hideElement('searchC');
    //showElement('generalErrorScreen');
}  

function tweetupdated(req){
    if(req.search('status=1') != -1){
	    //showGeneralErrorScreen();
	}else{
	   req = req.match(/\[url=(.*)&passcode=(.*)\]/);
	   if(req && req.length){
	       userUrl = req[1];
	       passCode = req[2];
		   }
		showSuccessScreen();
		schmap.formerRating = schmapme.starrating;
		schmap.formerPhonetype = $('phonetype').selectedIndex;
		schmap.formerIcon = icondata[selectedIconIdx].iconcode;
		schmap.formerPoint = {'latitue':schmapme['lat'],'longitude':schmapme['long']};
	}
	removeElementClass(document.body, 'waiting');
}

function msgCheck(){
    var len = this.value.length;
 	if(len > 117){
		this.value = this.value.substring(0, 117);
		this.style.backgroundColor = 'red'
		callLater(0.8,function(){$('tmsg').style.backgroundColor = 'white';});
	}else{
		this.style.backgroundColor = 'white'
	}
	schmap.textLength = 117 - this.value.length;
  	$('charsleft').innerHTML = 117 - this.value.length
	schmapme.tmsg = this.value;
}

function previewImg() {
         if(document.upform.photofile.value.toLowerCase().search('.jpg') == -1){
            alert(wrong_format);
            return;
        }	
 
	document.upform.submit();
		connect('uploadedimage', 'onload', iframeloaded);

	// callLater(1,function(){
	// window.frames['uploadedimage'].contentWindow.document.onreadystatechange =  iframeloaded;
	// });
	hideElement('photoBg');
	showElement('spinner');
	switchMode();
	//$('photoBg').src = "/images/loading.gif";
}
function iframeloaded() { 
    var now = new Date();
	var photoforder = window.frames['uploadedimage'].document.body.innerHTML;
	photoforder = photoforder.split('photofolder=')[1];
	photoforder = photoforder.split('/photos')[0];
 	schmapme['photopath'] = photoforder + '/photos';
    callLater(0.1,function(){$('photoBg').src = photoforder + "/photos/photo.jpg?" + now.getTime()})
;
	hideElement('spinner');
	showElement('photoBg');
	showElement('clear');
	hideElement('photofile');
	//switchMode();
}

function setAgree(evt){
    schmap.agree = evt.checked;
}

function clearPhoto() {
	$('photoBg').src = '/images/spacer.png';
	hideElement('clear');
	$('photoBox').innerHTML = '<input type="file" value="" name="photofile" onchange="previewImg();" id="photofile"/>';
	switchMode();
	if(schmapme.photopath){
 		var urlString = '';
		urlString += "&folderpath=" + schmapme.photopath.replace('/photos', '');
		reqType = "delettempphoto";
		loadXMLDoc('/servlet/deletetempphoto', 'post', urlString);
	} else {
	}
	delete schmapme.photopath;
}

function onJasonLoad(){
	hideElement('iframeC');
	hideElement('example');
	$("search").disabled = false;
	if(!schmap.isIE){
	$("tmsg").focus();
	}
    var s = searchControl['results'];
	AAAA = s
	var c = searchControl['cursor'];BBBB = c
	$('pages').innerHTML =  '';
 	$('resultList').innerHTML = '';
	showElement('searchResult');
	hideElement('resultForm');
	if(s.length == 0){
	    $('resultList').innerHTML = tweetupText.noResult;
		return;
	}
	var hoverBackground = tweetupText.hoverBg || '#f7f7f7';
	for(var i= 0; i < s.length; i++){
	    var r = s [i];
		var li = LI()
		if(r.phoneNumbers){
		    var n = r.phoneNumbers[0].number;
		    
		}else {
		    var n = " ";
		}
		li.innerHTML = r.title +', '+  r.addressLines.toString().replace(/,/g, ', ')
		             + ', ' + n;
		li.result = r;
		li.defaultColor = li.style.background = (i%2 != 1)?'#ffffff':hoverBackground;
		connect(li, 'onmouseover', hightlightResult);
		connect(li, 'onmouseout', delightResult);
		connect(li, 'onclick', gotoForm);
		if(s.length == 1){
		    gotoForm.apply(li)
			return;
		}
 		$('resultList').appendChild(li);
	} 
	if(s.length < 8){
		return;
	}
	for(var i = 0; i < c.pages.length; i ++){
	    if(i == c.currentPageIndex){
		    var pageClass = 'active';
		}else {
		    var pageClass = '';
		}
	    var page = SPAN({'class': pageClass},c.pages[i].label);
		page.page = i;
		connect(page, 'onclick', gotoPage);
		$('pages').appendChild(page);
	}
}

function gotoPage() {
    searchControl.gotoPage(this.page);
}
function hightlightResult(){
    this.style.backgroundColor = '#eeeeee';
}

function delightResult(){
	this.style.backgroundColor = this.defaultColor;
 }

function init(){
    var url = document.location.search;
    var params = parseQueryString(url.substr(1));
	var a1Default = tweetupText.a1Default || 'SCH_DTW';
	schmap.p = params.p || 'SCHMAP';
	schmapme['s'] = params.a1 || a1Default;
	schmapme['a'] = params.a2 || '0';
	schmapme['referrer'] = params.r;
	searchControl = new google.search.LocalSearch();
	var localSearch = new google.search.LocalSearch();
	searchControl.setResultSetSize(google.search.Search.LARGE_RESULTSET);
	 // searchControl.setSearchCompleteCallback(window, onJasonLoad)
	//searchControl.addSearcher(localSearch);
 	//searchControl.draw($("googleH"));
	//searchControl.execute("Google");
	  //google.search.LocalSearch.RawCompletion = onJasonLoad
	searchControl.setSearchCompleteCallback(window, onJasonLoad);
	var submit = $('submit');
	$('search').focus();
	var result=$('searchResult');
	submit.onclick = performSearch;	
	$('search').onclick = function(){
		hideElement('submitdisable');
		showElement('submit');
	}
	if(params.s){
	    $("search").value = params.s;
	    performSearch();
	}
}

function performSearch() {
    if($("search").value.replace(/ /g, '') == ''){
	    addElementClass('search', 'redborder');
		callLater(2, function(){ removeElementClass('search', 'redborder');});
	    return;
	}
	var value = $("search").value;
	if(tweetupText.appid==='z'){
		value += ' 中国';
	}
	searchControl.execute(value);
	clearPhoto();
	cssjs('remove',$('tmsgsimulation'),'saveState');
	hideElement('spinner');
	hideElement('submit');
	showElement('submitdisable');
	showElement('photoBg');
	schmap.photoUploaded =false;
	var arr = ['tmsg','notes','photopath','phone','starrating'];
	for(var i=0;i<arr.length;i+=1){
		if(schmapme[arr[i]]){
			delete schmapme[arr[i]];
		}
	}
}

function gotoForm(){
	hideElement('searchResult');
	showElement('resultForm');

	if(schmap.agree){
	    initForm(this.result,true);
	}else{
	   setupForm(this.result);
	}
}
	
function setupForm(result){
	schmap.agree = true;
	connect('dd-Arrow', 'onclick', showIconsPopup);
	connect(document.body, 'onclick', hideIconsPopup);
	connect('addr','onchange',addrPosition);
	connect('clearRating', 'onclick', clearRate);
	if($('clear'))connect('clear', 'onclick', clearPhoto);
	map(function(ele) {
	            $(ele).defaultString = tweetupText[ele];
				connect(ele, 'onfocus', satartType);
				connect(ele, 'onblur', endType);
				connect(ele, 'onchange', changeText);
				connect(ele + 'simulation', 'onclick', switchField);
				connect(ele, 'onkeyup', switchMode);
				}, schmap.inputs); 
	setRate();
	schmapme['url'] = "";
	schmapme['origin'] = "o";
	schmapme['appid'] = tweetupText['appid'] || 's' ; 
	schmapme['accesskey'] = "";
	schmapme['useremail'] = "";
    initForm(result,false)
	schmap.typed = false;
	$('iframeBox').innerHTML = '<iframe id="placeposition" name="placeposition" onload="initSelectIcon();" frameborder="0" scrolling="no" marginwidth="0" marginheight="0"  allowTransparency="true" style="border-style:none; border-width:0px;" width=316 height=323 src="/common/locallocate.html?lang=' + lang + '"></iframe>'
	createIconsPopup();
	addUploadIcon();
	schmapmeText.addrNotFound= tweetupText.not_found;
	connect('cancel','onclick',cancelChanges);
	connect('saveChanges','onclick',saveChanges);
}   


function initForm(result, initIcon){
	hideElement('edit');
	showElement('share');
	$('infoB').innerHTML = '';
	DDDD = result;
	var infoUrl = parseQueryString(result.url.toString().split('?')[1]);
	if(infoUrl.latlng){
		$('infoB').innerHTML = ' · <a id="info" target="_blank" href=' + result.url + '>' + tweetupText.info_label + '</a>';
		var id = infoUrl.latlng.split(',')[2];
		schmapme.googleplaceid = id;
	}
	schmapme['p'] = "a";
	$('namesimulation').innerHTML = $('name').value = schmapme['name'] = result.titleNoFormatting;
	$('tmsg').value = tweetupText.tmsg;
	$('addr').value = schmapme['addr'] = result.addressLines.join('\n'); 
	$('addrsimulation').innerHTML = schmapme['addr'].replace('\n','<br />');
	$('addr').style.fontSize = '13px';
	$('schmapMeLink').innerHTML = 'http://schmap.me/' + '...';
	$('schmapMeLink1').value = 'http://schmap.me/' + '...';
	var point = {};
    schmapme['lat'] = point.latitude = result['lat']  
    schmapme['long'] = point.longitude = result['lng'];
	schmap.initpoint = point;
	if(initIcon){
	    initSelectIcon();
	}
	schmap.isPhone = false;
	if(result['phoneNumbers']) {
		var n = result.phoneNumbers[0].number;
		var t = result.phoneNumbers[0].type;
		    if (t.length > 0) {
		        if (t == 'main') {
		            t = 'T';
				} else if  (t == 'mobile') {
		            t = 'M';
					$('phonetype').selectedIndex = 1;
				} else {
		        t = 'T';
				}
		    } else {
		        t = 'T';
		    }
		    schmapme['phone'] = (n + ',' + t);
			$('phone').value = n;
			var phoneType = $('phonetype').options[$('phonetype').selectedIndex].text;
            $('phonesimulation').innerHTML ='<span class="phoneT">' + phoneType + ':</span><span id="phoneNumber">' + n + '</span>';
			$('phonetype').value = t;
			connect('phonetype','onchange',changeText);
			schmap.formerPhonetype = $('phonetype').selectedIndex;
			showElement($('phonesimulation').parentNode);
			schmap.isPhone = true;
	} else {
	    hideElement($('phonesimulation').parentNode);
		var n = '';
		delete(schmapme.phone);
		delete(schmapme.phonetype);
	}
	$('tmsgsimulation').innerHTML = tweetupText.tmsg.replace('\n','<br />');
	if($('starrating')){
		hideElement('starrating');
		$('stars').className = 'star0';
	}
	finish();
	map(function(ele) {
			hideElement($(ele).parentNode);
			if(ele == 'phone' && !schmapme['phone']){
			    hideElement('phonesimulation');
			} else{
				showElement(ele + 'simulation');
			}
		}, schmap.inputs);
	schmap.editMode = false;
	schmap.formerRating = 0;
	schmap.formerIcon = icondata[0].iconcode;
	schmap.formerMap = {
		'lat':schmapme['lat'] || 0,
		'long':schmapme['long'] || 0,
		'zoom':schmapme['zoom'] || 15,
		'maptype':schmapme['maptype'] || 'm'
	};
}

function catchEneter(evt){
	evt = ( evt || window.event );
	key = ( evt.keyCode || evt.charCode || evt.which || 0 );
	if ( key == 13 && $("search").value.replace(/ /g, '') != ''){
		performSearch();
		if (evt.stopPropagation) {
			evt.stopPropagation();
		} else {
			evt.cancelBubble = true;
		}
		if (evt.preventDefault) {
			evt.preventDefault();
		} else{
			evt.returnValue = false;
		}
		return true;
	}else{
		hideElement('submitdisable');
		showElement('submit');
	}
	return false;
}

function initSelectIcon (){
    var iconCode = 'A010';
    if (typeof(initIconCode) != "undefined") {
        iconCode = initIconCode;
    }
    selectIcon (iconCode, true,schmap.initpoint);
}

function rememberUser() {
    if(this.checked){
		if(schmapme.tuser && schmapme.tpwd){
			setCookie('user', schmapme.tuser, 36500);
			setCookie('password', schmapme.tpwd, 36500);
		}else{
			alert (tweetupText.nonamepass_alert);
		    this.checked = false;
		 usernameRequired();   
		}
	}else {
	   	setCookie('user', '');
		setCookie('password', '');

	}
}

 
function switchMode(){
	if(!schmap.editMode){
		showElement('edit');
		hideElement('share');
		schmap.editMode = true;
	}
}

function clearRate(){
	schmapme.starrating = 99;
	var a = $('stars')
	a.className = 'star0';
	showRating(0);
	switchMode();
	$('clearRating').style.display='none';
}

function setRate(){
	var i,select,span,
		spans = $('stars').getElementsByTagName('span');
	$('stars').className = 'star';
	schmapme.starrating = 99;
	for(i=0;i<spans.length;i += 1){
		span = spans[i];
		//span.onclick = changeRating;
		connect(span,'onclick',changeRating);
	}
}

function changeRating(evt){
	evt = evt || window.event;
    if(evt && /star/.test(this.id)){
		var rate = this.id.match(/(?:star)(\d)/)[1];
		schmapme.starrating = rate;
		$('stars').className = 'star' + rate;
		$('clearRating').style.display = 'block';
   }else {
		rate = schmap.formerRating;
       $('stars').className = 'star' + schmap.formerRating;
	   if(!/[1-5]/.test(rate)){
	       hideElement('clearRating');
	   }else{
	       showElement('clearRating');
	   }
   }
	switchMode();
	showRating(rate);
	
}
function showRating(rate){
	var s = $('starrating');
	if(rate != 0){
		showElement(s);
		s.style.backgroundPosition = -45+9*rate + 'px 0';
		s.style.height = '7px';
	}  else{
		hideElement(s);
	}
}	
function cancelChanges(){
	if(schmap['photoUploaded']){
		$('photoBg').src = '/' + userUrl + '/photos/photo.jpg';
		showElement('clear');
		hideElement('photofile');
	} else {
		clearPhoto();
	}
	map(function(ele) {
			hideElement($(ele).parentNode);
			var v = '';
			if(ele == 'phone'){
                if(schmap.isPhone){
                    $('phonetype').selectedIndex = schmap.formerPhonetype;
					v = $('phoneNumber').innerHTML;
                }else{
                    v = '';
                }
			}else{
			    v = $(ele + 'simulation').innerHTML.replace(/&amp;/,'&').replace(/<br[^>]*>/gi,'\n');
			}
			showElement(ele + 'simulation');
            $(ele).value = v;
			if(ele === 'tmsg' && $(ele).defaultString.substr(0,15) === v.substr(0,15)){
				cssjs('remove',$(ele + 'simulation'),'saveState');
			}else{
			    cssjs('add',$(ele + 'simulation'),'saveState');
			}
	}, schmap.inputs); 
	changeRating();
	if(icondata[selectedIconIdx].iconcode !== schmap.formerIcon){
	    var point = false,
			reloadMap = false,
			basePath = false;
		for (var n in schmap.formerMap) {
			if(schmap.formerMap[n] != schmapme[n]){
				for(var j in schmap.formerMap){
					schmapme[j] = schmap.formerMap[j];
				}
				point = {'latitude':schmap.formerMap['lat'],'longitude':schmap.formerMap['long']};
				reloadMap = true;
				break;
			} else{
			    reloadMap = false;
			}
		}
		if(schmap.lastSavedUploadedIcon === schmap.formerIcon){
			basePath = '/usericons/';
			icondata[icondata.length - 1] = schmap.lastUploadedIconcode;
			$('IconsPopupDiv').replaceChild(schmap.lastSavedIcon,schmap.lastIcon);
			schmap.lastIcon = schmap.lastSavedIcon;
		}
		selectIcon(schmap.formerIcon,reloadMap,point,basePath);
	}
	hideElement('edit');
	showElement('share');
	schmap.editMode = false;
}

function saveChanges(){
    var elmHtml;
	if(typeof(schmapme.photopath) !== 'undefined'){
		schmap.photoUploaded = true;
	}else {
		schmap.photoUploaded = false;
	}
	map(function(ele) {
			hideElement($(ele).parentNode);
			if(!/\S/.test($(ele).value)){
			    $(ele).value = tweetupText[ele];
				if(ele === 'tmsg'){
				    cssjs('remove',$(ele + 'simulation'),'saveState');
				}
			}
            if(ele==='phone'){
                if(schmapme['phone']){
                    showElement('phonesimulation');
                }
                var phoneType = $('phonetype').options[$('phonetype').selectedIndex].text;
                elmHtml = '<span class="phoneT">' + phoneType + ':</span><span id="phoneNumber">' + $('phone').value + '</span>';
            }else{
                showElement(ele + 'simulation');
                elmHtml = $(ele).value.replace(/\n*$/,'').replace(/\n/g,'<br />');
            }
			
            $(ele+'simulation').innerHTML = elmHtml;
		}, schmap.inputs); 
	for (var n in schmap.formerMap) {
		schmap.formerMap[n] = schmapme[n];
	}
	$('copyIntro').innerHTML = tweetupText.copy_text;
	var urlString = '/servlet/geturl?url=' + userUrl + '&passcode=' + passCode;
	reqType = "get";
    loadXMLDoc(urlString);
	
}

function handleSerletResponse(req){
    var params = parseQueryString(req);// make schmapme object 
    schmapme.accesskey = params.accesskey;
	schmapme.url = userUrl;
	schmapme.p = 'u';
	//if(schmapme.photopath) schmapme.photopath = 0;
	if(schmap.useCustomizedIcon){
		moveIcon();
	}else{
	    finish();
	}
}
function switchField(){
	var y = this.offsetHeight;
	var elm = $(this.id.replace('simulation',''));
	if(elm.id == 'name'){
		elm.style.height = y + 'px';
	}
    hideElement(this);
	showElement(elm.parentNode);
	elm.focus();
}

function satartType() {
    ctx = this;
	ctx.style.color = '#797978';
    if(ctx.value !== '' && ctx.value.substring(0,30) !== ctx.defaultString.substring(0,30)){
        return;
    }
	 if(ctx.id === 'tmsg'){
		cssjs('remove',$('tmsgsimulation'),'saveState');
	  }
    ctx.value = '';
}
function endType() {
    var ctx = this;
    if(ctx.value == ''){
	    schmapme[this.id] = '';
        ctx.value = ctx.defaultString;
        ctx.style.color = '#bfbfbf';
	   if(ctx.id == "search"){
	       ctx.style.backgroundColor = '#FDFF92';
	   }
    }    
}
function changeText() { 
    var v = this.value.Trim();
	var p = schmapme['phone'];
	if(this.id == "phone"){
		v = p.replace(p.substring(0,p.indexOf(',')),v);
	}
	if(this.id == "phonetype"){
		schmapme['phone'] = p.replace(p.substring(p.lastIndexOf(',')+1),v);
	}
    logDebug(schmapme.phone);
    if(v !== ''){
        if(this.id == 'webaddr' && !v.match(/<a.*>/)){
            v = 'http://' + v.replace('http://', '');
        }
    }
    schmapme[this.id] =v;
    if (this.id == "addr") {
       addrEncoded = true;
    }
    else if (this.id == "notes") {
       notesEncoded = true;
    }
    else if (this.id == "fax") {
       faxEncoded = true;
    }
	else if(this.id === 'tmsg'){
	   if(this.value === '' || this.value === this.defaultString){
	      cssjs('remove',$('tmsgsimulation'),'saveState');
	   }else{
	      cssjs('add',$('tmsgsimulation'),'saveState');
	   }
	}
	switchMode();
}
function writeCode(){
	
}

function passGeoCode(geo){
    if(schmapme['lat'] != geo.lat() || schmapme['long'] != geo.lng()){
	switchMode();
	}
	schmapme['lat'] = geo.lat();
    schmapme['long'] = geo.lng();
	if(!schmap.hint && $('hint')){
	    showElement('hint');
	}
}
function startDragMarker(){
    if($('hint')){
	    hideElement('hint');
		schmap.hint = true;
	}
}
function getMapType(maptype){
    schmapme.maptype = maptype.substr(0,1);
	switchMode();
}
function getzoomlevel(zoom){
	schmapme.zoom = zoom;
	switchMode();
}
selectIconcallback = function(){
    switchMode();
}

function updateVisibleIcon (src, icondata) {
    var img = $('selected-icon');
	var gapX = (36 - icondata.bigiconwidth) / 2;
	var gapY = (34 - icondata.bigiconheight) / 2;
	img.style.marginTop = gapY + 'px';
	img.style.marginLeft = gapX + 'px';
    window.frames['placeposition'].locallocate.changeIcon 
                (src, icondata.bigiconwidth, icondata.bigiconheight, icondata.bigiconanchorx, icondata.bigiconanchory);            
}

function getFlashMovie(movieName) {
	
	return (schmap.isIE) ? window[movieName] : document[movieName];
}
 
function gettext(){
//document.getElementById('text').select();
    return schmap.copyUrl; 
}
function aftercopyt(t){
     $("copyIntro").innerHTML = '';
	 callLater(0.5, function(){$("copyIntro").innerHTML = tweetupText.copy_success_text;});
     
}
function cssjs(a,o,c1,c2){
	switch (a){
		case 'swap':
			o.className=!cssjs('check',o,c1)?o.className.replace(c2,c1):o.className.replace(c1,c2);
		break;
		case 'add':
			if(!cssjs('check',o,c1)){o.className+=o.className?' '+c1:c1;}
		break;
		case 'remove':
			var rep=o.className.match(' '+c1)?' '+c1:c1;
			o.className=o.className.replace(rep,'');
		break;
		case 'check':
			var found=false;
			var temparray=o.className.split(' ');
			for(var i=0;i<temparray.length;i++){
				if(temparray[i]==c1){found=true;}
			}
			return found;
		break;
	}
}
function addUploadIcon(){
	var c = $('IconsPopupDiv');
	if(!c){return;}
	c.onclick = function(e){
	    e = e || window.event;
		var target = e.target || e.srcElement;
		if(!target.userAdded){
		    schmap.useCustomizedIcon = false;
		}else{
		    schmap.useCustomizedIcon = true;
		}
	}
	schmap.lastIcon = null;
	var temp = '<form autocomplete="off" target="uploadedIcon"  action="/process/uploadicon/iconupload.cgi" ' +   
	       'method="post" enctype="multipart/form-data" name="upIcon" id="upIcon">' + 
			'<span id="addIconInputContainer"><input class="addIcon" type="file" name="upfile" id="upfile" /></span>' +
			'<input name="lasticoncode" type="hidden" value="0" /></form>';
	var div = document.createElement('div');
	div.className = "addIconBox";
	var inputOverlay = '<div class="iconInputOverlay">' + tweetupText.addIconText + '</div>';
	div.innerHTML = temp + inputOverlay;
	div.onclick = cancelClick;
	schmap.iconUpload = c.appendChild(div);
	schmap.iconUploadContainer = div;
	document.upIcon.upfile.onchange = showIconUploading;
}
function cancelClick(e){
    if(window.event){
			window.event.cancelBubble = true;
			return;
		} else if (e && e.stopPropagation){
			e.stopPropagation();
	}
}
 
function showIconUploading(){
	schmap.iconUploadedSuccess = false;
	var format = this.value.toLowerCase().match(/\.(\w{3,4})/)[1];
	if(!/jpg|gif|png/.test(format)){
		alert('we only support png, gif and jpg.');
		return;
	}
	schmap.iconUploadType = format;
	schmap.uploading = DIV({'class':'uploading'},tweetupText.iconUploading);
	schmap.iconUploadContainer.appendChild(schmap.uploading);
	setTimeout(iconUploadFailed,20000);	
	connect('uploadedIcon', 'onload', iconUploaded);
	document.upIcon.submit();
}
function iconUploadFailed(){
	if(!schmap.iconUploadedSuccess) {
	    schmap.uploading.innerHTML = tweetupText.iconUploadFailed;
	}
}
function iconUploaded(){
	var iconBasePath = '/tempfiles/usericons/';
	schmap.iconUploadContainer.removeChild(schmap.uploading);
	var result = window.frames['uploadedIcon'].document.getElementsByTagName('pre')[0].innerHTML;
	result = parseQueryString(result);
	var iconcode = result['iconcode'];
	var iconWidth = result['width'];
	var iconHeight = result['height'];
	var newIcon = new Image();
	var iconName = iconcode + '_normal.' + schmap.iconUploadType;
	var temp = Math.random();
	newIcon.src = iconBasePath + iconName + '?' + temp;
	newIcon.id = iconcode;
	newIcon.setAttribute('width',iconWidth.toString());
	newIcon.setAttribute('height',iconHeight.toString());
	newIcon.style.cssText = 'margin-left: 4px; margin-top: 4px;';
	var newIconcode = {
	    iconcode:iconcode, 
		bigiconpath:iconName + '?' + temp, 
		bigiconwidth:newIcon.width, 
		bigiconheight:newIcon.height, 
		bigiconanchorx:50, 
		bigiconanchory:50, 
		smalliconpath:iconName, 
		smalliconwidth:newIcon.width, 
		smalliconheight:newIcon.height, 
		smalliconanchorx:50, 
		smalliconanchory:50
	};
	//schmap.lastUploadedIconcode = newIconcode;
	newIcon.userAdded = true;
	if(schmap.lastIcon){
		icondata[icondata.length - 1] = newIconcode;
		$('IconsPopupDiv').replaceChild(newIcon,schmap.lastIcon);
	}else{
	    $('IconsPopupDiv').insertBefore(newIcon,schmap.iconUploadContainer);
		icondata[icondata.length] = newIconcode;
	}
	selectIcon(iconcode,false,false,iconBasePath);
	$('IconsPopupDiv').style.visibility = 'hidden';
	schmap.useCustomizedIcon = true;
	connect(newIcon,'onclick',function(){
	        if(this.id !== icondata[selectedIconIdx].iconcode){
			    selectIcon(iconcode,false,false,iconBasePath);
			}
			if($('hint')){
			    hideElement('hint');
			}
	    });	
	schmap.lastIcon = newIcon;
	schmap.lastIconFileName = iconcode + '.' + schmap.iconUploadType;
	schmap.iconUploadedSuccess = true;
	document.upIcon.reset();
	document.upIcon.lasticoncode.value = iconcode;
}
function showGetErrorScreen(){};
function moveIcon(){
	var param = 'action=move&iconpath=' + schmap.lastIconFileName;
	reqType = 'iconupload';
	loadXMLDoc('/process/uploadicon/iconupload.cgi','post',param);
}
function iconMoveSuccessed(response){
    var result = parseQueryString(response);
	var iconcode = result['iconcode'];
	schmap.lastSavedUploadedIcon = iconcode;
	icondata[icondata.length - 1].iconcode = iconcode;
	icondata[icondata.length - 1].bigiconpath = iconcode + '_normal.' + schmap.iconUploadType;
	schmap.lastUploadedIconcode = icondata[icondata.length - 1];
	schmap.lastIcon.id = iconcode;
	schmap.lastIcon.src = '/usericons/' + icondata[icondata.length - 1].bigiconpath;
	schmap.lastIcon.userAdded = false;
	connect(schmap.lastIcon,'onclick',function(){
	        if(this.id !== icondata[selectedIconIdx].iconcode){
			    selectIcon(iconcode,false,false,'/usericons/');
			}
			if($('hint')){
			    hideElement('hint');
			}
	    });	
	finish();
	schmap.lastSavedIcon = schmap.lastIcon;
	schmap.useCustomizedIcon = false;
}
google.load("search", "1");
google.setOnLoadCallback(init);

