// script used in page
var state = 0;
var pT = 1;
var loadedPage = '';

hideAjaxLoader = function() {
	new Effect.Opacity('ajax-loader', { duration:0.2, from:1.0, to:0 });		
	state = 0;
}

showAjaxLoader = function(page) { 
	new Effect.Opacity('ajax-loader', { duration:0.2, from:0, to:1.0 });
}

showAjaxPageLoader = function(page) {
	new Effect.Opacity('ajax-loader', { duration:0.2, from:0, to:1.0,
		afterFinish: function(obj) {
			loadPageAjax(page);
		}
	});	
}



loadPage = function(page) {
	if(state == 0 && page != loadedPage) {
		state = 1;
		showAjaxPageLoader(page);		
	}
}

loadPageAjax = function (page) {	
	$('dummy').setOpacity(0); 
	var url = page+'.php';
	
	new Ajax.Request( 
		url, 
		{   
		onSuccess: function(transport) {
			var data = transport.responseText;
			// alert(data);			
			$('dummy').update(data);
			nT = Element.getHeight('dummy');
			new Effect.Opacity('container', {
				duration:0.5, 
				from:1.0, 
				to:0.0,
				afterFinish: function(obj) {
					new Effect.Morph('container', { 
						style:'height:'+nT+'px;', 
						afterFinish: function(target) {																				
							$('container').update(data);
							new Effect.Opacity('container', {
								duration:0.5, 
								from:0, 
								to:1.0,
								afterFinish: function() {
									loadedPage = page;
									// loadBukuTamu();										
									hideAjaxLoader();											
								}
							} );
						}
					} );			
				}			
			} );
		}, 
		onFailure: function(transport) {
			hideAjaxLoader(); alert('Error loading page!');
		}
	} );
	
	// hideAjaxLoader();

}


submitGuestBook = function() {
	
	showAjaxLoader();
	
	var form = $('gb');
	if( $F(form['nama']).blank() ) {
		$('statusgb').update('<span class="red"><strong>Error:</strong></span> Field Nama harus diisi');
		return false;
	}
	if( $F(form['telp']).blank() ) {
		$('statusgb').update('<span class="red"><strong>Error:</strong></span> Field No. Telepon/HP harus diisi'); 
		return false;
	}
	if( $F(form['pesan']).blank() ) {
		$('statusgb').update('<span class="red"><strong>Error:</strong></span> Field Pesan harus diisi'); 
		return false;
	}		
	if( $F(form['kode']).blank() ) {
		$('statusgb').update('<span class="red"><strong>Error:</strong></span> Field Kode Verifikasi harus diisi sesuai dengan angka');
		return false;
	}		

	// start saving...
	$('statusgb').update('Sedang menyimpan, silakan tunggu sebentar...');
	$('ajax-spinner').setOpacity(1);	
	$('statusgb').setOpacity(1);	
	var param = $('gb').serialize();
	new Ajax.Request('ajax.php', {   
		parameters: param,
		onSuccess: function(transport) {       
			if(transport.responseText == '') {
				$('statusgb').update('OK! Form saved.');
				//loadedPage = '';
				//loadPage('buku');
				loadBukuTamu(1);
				$('ajax-spinner').setOpacity(0);
				hideAjaxLoader();				
			} else {
				$('statusgb').update(transport.responseText);
				hideAjaxLoader();
			}
		},
		onFailure: function(transport) {
			alert('An error occured. Please try again later.');
			hideAjaxLoader();			
		}
	}); 

}

deleteBukuTamu = function(id, nama) {
	showAjaxLoader();	
	if(confirm('Hapus data buku tamu dari '+nama+'?')) {
		var param = 'ngaps=delete-buku-tamu&id='+id;
		new Ajax.Request('ajax.php', {   
			parameters: param,
			method: 'get',
			onSuccess: function(transport) {       
				hideAjaxLoader();			
				loadBukuTamu(1, 1);
			}
		});
	}
	
}


loadBukuTamu = function(halaman,admin) {
	showAjaxLoader();	
	var param = 'ngaps=load-buku-tamu&hal='+halaman;
	if(admin == 1) param += '&manage';
	new Ajax.Request('ajax.php', {   
		parameters: param,
		method: 'get',
		onSuccess: function(transport) {       
			$('dummy2').update(transport.responseText);
			lT = Element.getHeight('dummy2');
			new Effect.Opacity('list', {
				duration:0.5, 
				from:1.0, 
				to:0.0,
				afterFinish: function(obj) {
					new Effect.Morph('list', { 
						style:'height:'+lT+'px;', 
						afterFinish: function(target) {																				
							$('list').update(transport.responseText);						
							new Effect.Opacity('list', {
								duration:0.5, 
								from:0, 
								to:1.0,
								afterFinish: function() {
									hideAjaxLoader();												
								}
							} );
						}
					} );			
				}			
			} );

		}
	}); 	
}

updateKode = function() {
	new Ajax.Updater('kode-img', 'kode.php');
}

loadGaleri = function(filename, w, h) {
	showAjaxLoader();	
	var param = 'f='+filename;
	new Ajax.Request('foto.php', {   
		parameters: param,
		method: 'get',
		onSuccess: function(transport) {       

			$('dummy3').update(transport.responseText);
			lT = Element.getHeight('dummy3');
			new Effect.Opacity('galeri', {
				duration:0.5, 
				from:1.0, 
				to:0.0,
				afterFinish: function(obj) {					
					new Effect.Morph('galeri', { 
						style:'height:'+h+'px;',
						afterFinish: function(target) {																				
							$('galeri').update(transport.responseText);						
							new Effect.Opacity('galeri', {
								duration:0.5, 
								from:0, 
								to:1.0,
								afterFinish: function() {
									hideAjaxLoader();												
								}
							} );
						}
					} );			
				}			
			} );

		}
	}); 	

}

