window.addEvent('domready', function() {

if (iscomments>0) {
	$('addCommentButton').addEvent('click', function(e){ if ($('new_comment').get('value')>"") { e.stop();  commentSlide.slideOut();  addComment(); scrollTo(0, 600); }});
	var commentSlide = new Fx.Slide('newComment');
}

if (isopenedgallery>0) {
	var uploadSlide = new Fx.Slide('uploading');
	uploadSlide.hide();
    $('uploading').setStyle('display', 'block');
    $('expandUpload').addEvent('click', function(e){ e.stop(); uploadSlide.toggle(); });
	if (user_id>0) {
		var up = new FancyUpload2($('demo-status'), $('demo-list'), {
			verbose: true,
			url: $('form-demo').action,
			path: host+'modules/uploader/source/Swiff.Uploader.swf',
			typeFilter: {
				'Images (*.jpg, *.jpeg, *.gif, *.png)': '*.jpg; *.jpeg; *.gif; *.png'
			},
			target: 'demo-browse',

			onLoad: function() {
				$('demo-status').removeClass('hide');
				$('demo-fallback').destroy();
				this.target.addEvents({
					click: function() {
						return false;
					},
					mouseenter: function() {
						this.addClass('hover');
					},
					mouseleave: function() {
						this.removeClass('hover');
						this.blur();
					},
					mousedown: function() {
						this.focus();
					}
				});

				$('demo-clear').addEvent('click', function() {
					up.remove();
					return false;
				});
				$('demo-close').addEvent('click',  function(e){ e.stop(); uploadSlide.toggle(); });
				$('demo-upload').addEvent('click', function() {
					up.start();
					return false;
				});
			},

			onSelectFail: function(files) {
				files.each(function(file) {
					new Element('li', {
						'class': 'validation-error',
						html: file.validationErrorMessage || file.validationError,
						title: 'removeTitle',
						events: {
							click: function() {
								this.destroy();
							}
						}
					}).inject(this.list, 'top');
				}, this);
			},

			onFileSuccess: function(file, response) {
				var json = new Hash(JSON.decode(response, true) || {});
				if (json.get('status') == '1') {
					file.element.addClass('file-success');
					file.info.set('html', json.get('input'));
					insert=json.get('thumb');
					exist=$('allImages').get('html');
					if (exist>"") {
						result=insert+""+exist;
						$('allImages').empty();
						$('allImages').set('html', result);
					}

				} else {
					file.element.addClass('file-failed');
					file.info.set('html', '<strong>Ошибка:</strong> ' +json.get('error') );
					//alert(response);
				}
			},
			onFail: function(error) {
				switch (error) {
					case 'hidden':
						alert('Чтобы использовать загрузчик, разрешите Adobe Flash в вашем браузере');
						break;
					case 'blocked':
						alert('Чтобы использовать загрузчик, разрешите Adobe Flash');
						break;
					//case 'empty':
						//alert('Требуемый файл не найден.');
						//break;
					case 'flash':
						alert('Чтобы использовать загрузчик, обновите Adobe Flash до 9 версии или выше.')
				}
			}

		});
	}
}
if (typeof(editPanorama)=='number') {
}
if (typeof(uploadPanorama)=='number') {
	if (user_id>0) {
		var up = new FancyUpload2($('demo-status'), $('demo-list'), {
			verbose: true,
			url: $('form-demo').action,
			path: host+'modules/uploader/source/Swiff.Uploader.swf',
			typeFilter: {
				'Images (*.jpg, *.jpeg)': '*.jpg; *.jpeg;'
			},
			target: 'demo-browse',

			onLoad: function() {
				$('demo-status').removeClass('hide');
				$('demo-fallback').destroy();
				this.target.addEvents({
					click: function() {
						return false;
					},
					mouseenter: function() {
						this.addClass('hover');
					},
					mouseleave: function() {
						this.removeClass('hover');
						this.blur();
					},
					mousedown: function() {
						this.focus();
					}
				});

				$('demo-clear').addEvent('click', function() {
					up.remove();
					return false;
				});
				$('demo-close').addEvent('click',  function(e){ e.stop(); uploadSlide.toggle(); });
				$('demo-upload').addEvent('click', function() {
					up.start();
					return false;
				});
			},

			onSelectFail: function(files) {
				files.each(function(file) {
					new Element('li', {
						'class': 'validation-error',
						html: file.validationErrorMessage || file.validationError,
						title: 'removeTitle',
						events: {
							click: function() {
								this.destroy();
							}
						}
					}).inject(this.list, 'top');
				}, this);
			},

			onFileSuccess: function(file, response) {
				var json = new Hash(JSON.decode(response, true) || {});
				if (json.get('status') == '1') {
					file.element.addClass('file-success');
					file.info.set('html', json.get('name'));
					name=json.get('name');
					id=json.get('id');
					width=json.get('width');
					height=json.get('height');
					$('uploading').empty();
					var photo_url=host+'img.php?'+name+'&500&justuploaded';
					$('uploading').set('html', "<div style=\"text-align:center\"><img src=\""+photo_url+"\" width=\"500\" height=\"250\" alt=\"\" border=\"0\"><br/><br/>Панорама успешно загружена. Размеры "+width+"x"+height+"</div>");
					$('uploadedPanoramaName').set('html', id);
                    $('addButton').set('style', "display:block");
				} else {
					file.element.addClass('file-failed');
					file.info.set('html', '<strong>Ошибка:</strong> ' +json.get('error') );
					//alert(response);
				}
			},
			onFail: function(error) {
				switch (error) {
					case 'hidden':
						alert('Чтобы использовать загрузчик, разрешите Adobe Flash в вашем браузере');
						break;
					case 'blocked':
						alert('Чтобы использовать загрузчик, разрешите Adobe Flash');
						break;
					//case 'empty':
						//alert('Требуемый файл не найден.');
						//break;
					case 'flash':
						alert('Чтобы использовать загрузчик, обновите Adobe Flash до 9 версии или выше.')
				}
			}

		});
	}
}

});

function savePhotoName(value, id) { var layer='upload_photo_name_'+id; markAsWaitingSmall(layer); var pars="photo_id="+id+"&content="+encodeURIComponent(value)+"&target=gallery&action=changePhotoName"; var url=host+"modules/ajax.action.php"; var clear=true; AjaxRequest(layer, url, pars, clear); var photoNameId='new_photo_name_'+id; $(photoNameId).empty(); $(photoNameId).set('html', value+"."); }
function loadPagesPhotos(gallery, page) { var layer='allImages'; var pars="gallery="+gallery+"&page="+page+"&action=loadPagesPhotos"; var url=host+"modules/ajax.action.php"; var clear=true; AjaxRequest(layer, url, pars, clear); }

// USERS PHOTOS
	function changeUserPhotoName(photo_id) {
    	var name=$('new_name_'+photo_id).get('value');
    	layer="new_name_indicator_"+photo_id;
    	markAsWaitingSmall(layer);
  		url=host+"modules/ajax.action.php";
  		var pars="action=changeUserPhotoName&id="+photo_id+"&name="+encodeURIComponent(name);
  		var clear=true;
  		AjaxRequest(layer, url, pars, clear);
  		setTimeout('$('+layer+').empty();', 1500);
	}
    function deleteUserPhoto(photo_id) {
	    value=confirm("Вы уверены, что хотите удалить фотографию?");
	    if (value) {
	  		//$('userPhoto_'+photo_id).empty();
	  		var layer="userPhotoContent_"+photo_id;
	  		url=host+"modules/ajax.action.php";
	  		var pars="action=deleteUserPhoto&id="+photo_id;
	  		var clear=true;
	  		AjaxRequest(layer, url, pars, clear);
	 	}
    }

// USERS PANORAMAS


	function deleteUserPanorama(photo_id) {
	    value=confirm("Вы уверены, что хотите удалить панораму?");
	    if (value) {
	  		var layer="userPhotoContent_"+photo_id;
	  		url=host+"modules/ajax.panorama.php";
	  		var pars="action=deleteUserPanorama&id="+photo_id;
	  		var clear=true;
	  		AjaxRequest(layer, url, pars, clear);
	 	}
    }

// Карта яндекса для загрузки панорам
function setBalloonInfo (placemark, geoPoint, text) {
    var content = '';
    if (text) {
    content += '<div class="title">' + text + '</div>';
    }
    content += '<span class="coords-title"> Координаты: </span>' + geoPoint.toString();
    placemark.setBalloonContent(content);
    document.getElementById('coords').value = geoPoint.toString();
}

function changeLocation() {
	var point=$('panoramaTown').get('value');
	var town_longitude=longitude[point];
	var town_latitude=latitude[point];
	var town_scale=scale[point];
	var newpointCenter = new YMaps.GeoPoint(town_longitude, town_latitude);
	//map = YMaps.Map(document.getElementById("YMapsID"));
    map.setCenter(newpointCenter, town_scale);
    placemark.setGeoPoint(newpointCenter);
    setBalloonInfo(placemark, newpointCenter);
}
function moveMap(longitude, latitude) {
	var scale=16;
	var currentScale=map.getZoom();
	if (currentScale!=scale) { map.setZoom(16, {smooth:true});}
	var newpointCenter = new YMaps.GeoPoint(longitude, latitude);
	map.panTo(newpointCenter, {flying:true});

}

function returnMap() {	//var newpointCenter = new YMaps.GeoPoint(longitude, latitude);
	//map.panTo(newpointCenter);
}

	function saveNewPanorama(rw) {
		var id=$('uploadedPanoramaName').get('text');
		if (id>0) {
			var link=host+rw+"user/edit-panorama/"+id;
			window.location=link;
		}
		else { alert('Загрузите панораму'); }
	}

    function saveViewpoint(id) {		var hlookat = parseFloat($('viewpoint_panorama').get('view.hlookat'));
		var vlookat = parseFloat($('viewpoint_panorama').get('view.vlookat'));
		var fov = parseFloat($('viewpoint_panorama').get('view.fov'));
        $('saveViewPointButton').set('style', 'color:#ededed');
  		var layer="status1";
  		url=host+"modules/ajax.panorama.php";
  		var pars='action=editPanoramaViewpoint&id='+id+'&hlookat='+hlookat+'&vlookat='+vlookat+'&fov='+fov;
  		var clear=true;
  		AjaxRequest(layer, url, pars, clear);
  		setTimeout("$('saveViewPointButton').set('style', 'color:#4c4d4d');", 500);
    }

    function saveNorthpoint(id) {
        var north = parseFloat($('north_panorama').get('view.hlookat'));
  		$('saveNorthPointButton').set('style', 'color:#ededed');
  		var layer="";
  		url=host+"modules/ajax.panorama.php";
  		var pars='action=editPanoramaNorthpoint&id='+id+'&north='+north;
  		var clear=false;
  		AjaxRequest(layer, url, pars, clear);
  		setTimeout("$('saveNorthPointButton').set('style', 'color:#4c4d4d');", 500);
  		var newheading=(270-north);
  		$('north_panorama').set('plugin[radar].heading', newheading);
    }

    function saveHotspot(id, toid) {
		var hlookat = parseFloat($('hotspot_panorama').get('view.hlookat'));
		var vlookat = parseFloat($('hotspot_panorama').get('view.vlookat'));
  		var layer="status3";
  		url=host+"modules/ajax.panorama.php";
  		var pars='action=editPanoramaHotSpot&id='+id+'&toid='+toid+'&hlookat='+hlookat+'&vlookat='+vlookat;
  		var clear=true;
  		AjaxRequest(layer, url, pars, clear);

    }

    function deleteHotspot(id, toid) {
  		var layer="status3";
  		url=host+"modules/ajax.panorama.php";
  		var pars='action=deletePanoramaHotSpot&id='+id+'&toid='+toid;
  		var clear=true;
  		AjaxRequest(layer, url, pars, clear);

    }

	function savePanorama(id) {
		var scrollTo="";
        var cropX=$('cX').get('html');
        var cropY=$('cY').get('html');
        var imageWidth=$('iW').get('html');
        var imageHeight=$('iH').get('html');
        var cropWidth=$('cW').get('html');
        var cropHeight=$('cH').get('html');

		var panoramaName=$('panorama_name').get('value');
		var panoramaAddress=$('panorama_address').get('value');
		var panoramaDescription=$('panorama_description').get('value');
	    var location=$('coords').get('value');
	    var town_id=$('panoramaTown').get('value');
	    var day=$('panorama_day').get('value');
	    var month=$('panorama_month').get('value');
	    var year=$('panorama_year').get('value');
	    var hour=$('panorama_hour').get('value');
	    var minute=$('panorama_minute').get('value');

		if (location=='0,0') { var errmsg="Укажите место съемки";  scrollTo="step6";}
		//if (panoramaDescription=='') { var errmsg="Введите описание панорамы"; scrollTo="step5"; }
		if ((hour==-1) || (minute==-1)) { var errmsg="Введите время съемки панорамы"; scrollTo="step4"; }
		if ((day==0) || (month==0) || (year==0)) { var errmsg="Введите дату съемки панорамы"; scrollTo="step4"; }
		//if (panoramaAddress=='') { var errmsg="Введите адрес места съемки"; scrollTo="step3"; }
	    if (panoramaName=='') { var errmsg="Введите название панорамы"; scrollTo="step2"; }

		if (errmsg) {
	    	alert(errmsg);
	    	var scroll = new Fx.Scroll($(document.body), { wait: false, duration: 800, offset: {'x': 0, 'y': -10}, transition: Fx.Transitions.Quad.easeInOut });
	    	scroll.toElement(scrollTo);
		}
		else {
		  		$('savePanoramaButton').set('style', 'color:#ededed');
		  		var layer="indicator";
		  		url=host+"modules/ajax.panorama.php";
		  		var pars='action=editPanorama&id='+id+'&name='+encodeURIComponent(panoramaName)+'&address='+encodeURIComponent(panoramaAddress)+'&description='+encodeURIComponent(panoramaDescription)+'&location='+encodeURIComponent(location)+'&town_id='+town_id+'&day='+day+'&month='+month+'&year='+year+'&hour='+hour+'&minute='+minute+'&cropX='+cropX+'&cropY='+cropY+'&imageWidth='+imageWidth+'&imageHeight='+imageHeight+'&cropWidth='+cropWidth+'&cropHeight='+cropHeight;
		  		var clear=true;
		  		AjaxRequest(layer, url, pars, clear);
		  		setTimeout("$('savePanoramaButton').set('style', 'color:#4c4d4d');", 500);
		}
	}

	function loadAllPanoramas(page, sort, sort_direction, category, parent) {		  		var layer="allPanoBlock";
		  		url=host+"modules/ajax.action.php";
		  		var pars="action=showAllPano&page="+page+"&sort="+sort+"&sort_direction="+sort_direction+"&category="+category+"&parent="+parent;
		  		var clear=true;
		  		AjaxRequest(layer, url, pars, clear);
	}


	function panorama2center(obj) {
		var pan = 0;
		var tilt = 0;
		$(obj).call('moveto('+pan+','+tilt+')');
	}
	function panorama2horizon (obj) {
		var pan = $(obj).get('view.hlookat');
		var tilt = 0;
		$(obj).call('moveto('+pan+','+tilt+')');
	}
	function panorama2saved (obj,pan, tilt) {
		$(obj).call('moveto('+pan+','+tilt+')');
	}


	function swithHSVisible(id) {		var layer="saveHSButton_layer_"+id;
		if ($(layer).getStyle('display')=='none') {			$(layer).setStyle('display', 'block');
		}
		else {			$(layer).setStyle('display', 'none');
		}
	}

	function hideHSLayer(id) {		var layer="saveHSButton_layer_"+id;
		$(layer).setStyle('display', 'none');
	}

	function reloadHotspotsImage(id) {  		var layer="hotspots_image";
  		url=host+"modules/ajax.panorama.php";
  		var pars="action=reloadHotspotsImage&id="+id;
  		var clear=true;
  		markAsWaiting(layer);
  		AjaxRequest(layer, url, pars, clear);
	}



