var note = ['S&#322;aby', 'Nic specjalnego', 'Warto obejrze&#263;', 'Dobry', 'Bardzo dobry'];
var note_en = ['Bad material', 'Nothing special', 'Worth to see it', 'Good', 'Very good'];
var backends = './backends/';
var months = ['stycznia','lutego','marca', 'kwietnia', 'maja', 'czerwca', 'lipca', 'sierpnia', 'wrze&#347;nia', 'pazdziernika', 'listopada', 'grudnia'];
var documents = ['../templates/docs/regulamin.html', '../templates/docs/regulamin_en.html', '../templates/docs/program_pl.html', '../templates/docs/program_en.html'];
var maxChars = 500;
var eventListeners = [];
var current_hash = '';

function $(id){return document.getElementById(id)}

function up(obj, cl) { obj.className = (cl==1) ? 'btn1_hover' : 'btn2_hover'; }

function down(obj, cl) { obj.className = (cl==1) ? 'btn1' : 'btn2'; }

function CreateBookmarkLink() {
 title = "Portal medyczny MedTube.pl"; 
 url = "http://www.medtube.pl";
 if (window.sidebar) { // Mozilla Firefox Bookmark
		window.sidebar.addPanel(title, url,"");
	} else if( window.external ) { // IE Favorite
		window.external.AddFavorite( url, title); }
	else if(window.opera && window.print) { // Opera Hotlist
		return true; 
	}
}

function showVideos(list) {
 alert(list.value);
}

function setRating(){
 var v = parseInt($('mean').innerHTML);
 var ratings = [0, 1, 1.5, 2, 2.5, 3, 3.5, 4, 4.5, 5];
 var rate = ratings[v];
 var full = './imgs/kn.png'; var half  = './imgs/kh.png';
 for(var i=0; i<rate; i++){ 
  $('t' + i).src = full;
 }
 var rest = rate.toString();
 if (rest.split('.')[1]>0) {
  $('t' + rest.split('.')[0]).src = half;
 }
}

function valid_login_box(obj, lng) {
  var info = ['Prosimy podać Login i Hasło', 'Please enter Username and Password'];
  if (obj.username.value=='' || obj.password.value=='') { alert(info[lng]); return false;} else return true;
}

function valid_srch_form(obj, lng) {
 var info = ['Prosimy wpisać szukaną frazę', 'Please enter any word'];
 if (obj.q.value=='' || obj.q.value=='Szukaj...' || obj.q.value=='Search...') {alert(info[lng]); return false;}
  else return true;
}

function valid_log_form(obj, lng) {
  var info = ['Prosimy uzupełnić pola Nazwa użytkownika i Hasło', 'Please enter username and password'];
  if (obj.login.value=='' || obj.password.value=='') { alert(info[lng]); return false;} else return true;
}

function pop_img(hash) {
 window.open('pop.php?h='+hash, 'medtube', 'status=no,toolbar=no,location=no,personalbar=no,scrollbars=1,resizable=1,width=750,height=650,left=300,top=100');
}

function pop_doc(i) {
 var location = documents[i];
 window.open(location, 'medtube', 'status=no,toolbar=no,location=no,personalbar=no,scrollbars=1,resizable=1,width=750,height=650,left=300,top=100');
}

function show_faq(query) {
 var q = $(query);
 var state=0;
 if (q.style.display == 'none') {
  q.style.display='block'; 
  state=1;
 }
 if (state==0) q.style.display='none';  
}

function show_content(query) {
 var q = $(query);
 var state=0;
 if (q.style.display == 'none') {
  q.style.display='block'; 
  state=1;
 }
 if (state==0) q.style.display='none';  
}

function searchCategoryTests()
{
  if ($('tests_cat').value == '') {
   alert('Prosimy wskazać jedną ze specjalizacji');
   return false; 
  }
  var category = $('tests_cat').value;
  var ajaxHelper = new sack('./backends/' + 'category_tests.php?c='+category);
  ajaxHelper.onCompletion = function(){responseCategoryTests(ajaxHelper);};
  ajaxHelper.runAJAX();
}

function responseCategoryTests(request){
 $('contener').innerHTML = request.response;
}

function allTests()
{
  var ajaxHelper = new sack('./backends/' + 'all_tests.php');
  ajaxHelper.onCompletion = function(){responseAllTests(ajaxHelper);};
  ajaxHelper.runAJAX();
}

function responseAllTests(request) {
  $('test_bar').style.display='block';
  $('doc_list').innerHTML = request.response;
}

function most_down_tests()
{
  var div = $('most_down_tests');
  if(div.innerHTML.length == ''){	
   div.style.display='block';
   var load = $('loader').innerHTML = 'ŁADOWANIE ...  <img src="./imgs/loading.gif"/>';
   var ico = $('arrow_right_down').src = './imgs/btn_right2.jpg';
   var ajaxHelper = new sack('./backends/' + 'most_down_tests.php');
   ajaxHelper.onCompletion = function(){most_down_tests_request(ajaxHelper);};
   ajaxHelper.runAJAX();
  } else {
     var ico = $('arrow_right_down').src = './imgs/btn_right.jpg';
     div.innerHTML=''; div.style.display='none';
	}
}

function most_down_tests_request(request){
 $('most_down_tests').innerHTML = request.response;
 $('loader').innerHTML = '';
}

function latest_tests()
{
  var div = $('latest_tests');
  if(div.innerHTML.length == ''){	   
   div.style.display='block';
   var load = $('loader2').innerHTML = 'ŁADOWANIE ...  <img src="./imgs/loading.gif"/>';	
   var ico = $('arrow_right_latest').src = './imgs/btn_right2.jpg';
   var ajaxHelper = new sack('./backends/' + 'latest_tests.php');
   ajaxHelper.onCompletion = function(){latest_test_request(ajaxHelper);};
   ajaxHelper.runAJAX();
  } else {
     var ico = $('arrow_right_latest').src = './imgs/btn_right.jpg';
     div.innerHTML=''; div.style.display='none';
	}
}

function latest_test_request(request){
 $('latest_tests').innerHTML = request.response;
 $('loader2').innerHTML = '';
}

function moveTestsDown(cat_id, page, all_pages, offset)
{
  var ajaxHelper = new sack('./backends/' + 'getDocsByPage.php?cat='+cat_id+'&m=down&p='+page+'&a='+offset+'&all='+all_pages);
  ajaxHelper.onCompletion = function(){afterRequest(ajaxHelper);};
  ajaxHelper.runAJAX();
}

function moveTestsUp(cat_id, page, all_pages, offset)
{
  var ajaxHelper = new sack('./backends/' + 'getDocsByPage.php?cat='+cat_id+'&m=up&p='+page+'&a='+offset+'&all='+all_pages);
  ajaxHelper.onCompletion = function(){afterRequest(ajaxHelper);};
  ajaxHelper.runAJAX();
}

function afterRequest(request){
	var content = $('doc_list');
	content.innerHTML = request.response;
}

function most_down_tests_cat(cat_id)
{
  var div = $('most_down_tests');
  if(div.innerHTML.length == ''){
   div.style.display='block';  
   $('loader').innerHTML = 'ŁADOWANIE ...  <img src="./imgs/loading.gif"/>';
   $('arrow_right_down').src = './imgs/btn_right2.jpg';
   var ajaxHelper = new sack('./backends/' + 'most_down_tests_cat.php?cat_id='+cat_id);
   ajaxHelper.onCompletion = function(){most_down_tests_cat_request(ajaxHelper);};
   ajaxHelper.runAJAX();
  } else {
     var ico = $('arrow_right_down').src = './imgs/btn_right.jpg';
     div.innerHTML=''; div.style.display='none';
	}
}

function most_down_tests_cat_request(request){
	var content = $('most_down_tests');
	content.innerHTML = request.response;
    $('loader').innerHTML = '';
}

function latest_tests_cat(cat_id)
{
  var div = $('latest_tests');
  if(div.innerHTML.length == ''){
   div.style.display='block';  
   $('arrow_right_latest').src = './imgs/btn_right2.jpg';
   $('loader2').innerHTML = 'ŁADOWANIE ...  <img src="./imgs/loading.gif"/>';
   var ajaxHelper = new sack('./backends/' + 'latest_tests_cat.php?cat_id='+cat_id);
   ajaxHelper.onCompletion = function(){latest_test_cat_request(ajaxHelper);};
   ajaxHelper.runAJAX();
  } else {
     $('arrow_right_latest').src = './imgs/btn_right.jpg';
     div.innerHTML=''; div.style.display='none';
	}
}

function latest_test_cat_request(request){
	var content = $('latest_tests');
	content.innerHTML = request.response;
	$('loader2').innerHTML = '';
}

function next_tests(page)
{
  //$('loader2').innerHTML = 'ŁADOWANIE ...  <img src="./imgs/loading.gif"/>';		
  var ajaxHelper = new sack('./backends/' + 'all_tests.php?&m=next&p='+page);
  ajaxHelper.onCompletion = function(){afterTestRequest(ajaxHelper);};
  ajaxHelper.runAJAX();
}

function back_tests(page)
{
  //$('loader2').innerHTML = 'ŁADOWANIE ...  <img src="./imgs/loading.gif"/>';		
  var ajaxHelper = new sack('./backends/' + 'all_tests.php?&m=back&p='+page);
  ajaxHelper.onCompletion = function(){afterTestRequest(ajaxHelper);};
  ajaxHelper.runAJAX();
}

function afterTestRequest(request){
	var content = $('doc_list');
	content.innerHTML = request.response;
}

function next_category_tests(page, cat)
{
  $('loader3').innerHTML = 'ŁADOWANIE ...  <img src="./imgs/loading.gif"/>';		
  var ajaxHelper = new sack('./backends/' + 'category_tests.php?&m=next&p='+page+'&c='+cat);
  ajaxHelper.onCompletion = function(){afterCategoryRequest(ajaxHelper);};
  ajaxHelper.runAJAX();
}

function back_category_tests(page, cat)
{
  $('loader3').innerHTML = 'ŁADOWANIE ...  <img src="./imgs/loading.gif"/>';		
  var ajaxHelper = new sack('./backends/' + 'category_tests.php?&m=back&p='+page+'&c='+cat);
  ajaxHelper.onCompletion = function(){afterCategoryRequest(ajaxHelper);};
  ajaxHelper.runAJAX();
}

function afterCategoryRequest(request){
  var content = $('contener');
  content.innerHTML = request.response;
  $('loader3').innerHTML = '';		
}

function moveTestsDownBar(cat_id, page, all_pages, offset)
{
  $('loader2').innerHTML = 'ŁADOWANIE ...  <img src="./imgs/loading.gif"/>';
  var ajaxHelper = new sack('./backends/' + 'getDocsByPageBar.php?cat='+cat_id+'&m=down&p='+page+'&a='+offset+'&all='+all_pages);
  ajaxHelper.onCompletion = function(){afterBarRequest(ajaxHelper);};
  ajaxHelper.runAJAX();
}

function moveTestsUpBar(cat_id, page, all_pages, offset)
{
  $('loader2').innerHTML = 'ŁADOWANIE ...  <img src="./imgs/loading.gif"/>';
  var ajaxHelper = new sack('./backends/' + 'getDocsByPageBar.php?cat='+cat_id+'&m=up&p='+page+'&a='+offset+'&all='+all_pages);
  ajaxHelper.onCompletion = function(){afterBarRequest(ajaxHelper);};
  ajaxHelper.runAJAX();
}

function afterBarRequest(request){
	var content = $('tests_from_cat');
	content.innerHTML = request.response;
	 $('loader2').innerHTML = '';
}

function getInputFiles(lng)
{
    var header_1 = ['Wybierz plik z dysku', 'Load Your File'];
	var header_2 = ['Opis', 'Description'];	
	var header_3 = ['Prześlij', 'Upload'];
	var header_4 = ['Plik', 'File'];
	var v = parseInt($F('num_seq_img'));
	if(!v){alert('Prosimy wybrać liczbę zdjęć dla sekwencji');return false;}
	var str = '';

	for(var i = 0; i < v; i++){
		str += '<fieldset class="seq" style="width:520px;"><legend> '+header_4[lng] + ' ' + (i+1) + '</legend><div><label>'+header_1[lng]+' <input style="position:relative;top:10px;" type="file" name="' + i + '" /></label><br /><br /><label class="seq_info">'+header_2[lng]+'<textarea name="' + i + '" cols="30" rows="3"></textarea></label></div></fieldset>';
	}
	
	str += '<div><input class="upl_submit" type="submit" name="btn_upload" value="'+header_3[lng]+'" /></div>';
	$('inp_list').update(str);
	return;
}

function viewAlertForm(hash) {
  current_hash = hash
  var ajaxHelper = new sack('./backends/' + 'alertForm.php?h='+hash);
  ajaxHelper.onCompletion = function(){afterAlertRequest(ajaxHelper);};
  ajaxHelper.runAJAX();	
}

function afterAlertRequest(request){
	var content = $(current_hash);
	content.innerHTML = request.response;
}

function close_box(hash) {
 var obj = $(hash); 
 obj.style.display = 'none';
}

function sendAlert() { 
 var sel = $('al_select');
 var r = sel.value;
 if (r=='') {
 	alert('Prosimy wybrać powód zgłoszenia'); return;
 }
 
 var hash = $('hash');
 var v = hash.value;  
 var ajaxHelper=new sack('./backends/sendAlert.php?h='+v+'&r='+r);
 //ajaxHelper.setVar('hash', value);
 ajaxHelper.onCompletion = function(){ afterSendAlertResponse(ajaxHelper);};
 ajaxHelper.runAJAX();
 
}

function afterSendAlertResponse(request){
	if(request.response == '0'){
		alert('Wystąpił wewnętrzny błąd');
		return false;
	}else{
	  alert('Twoje zgłoszenie zostało przyjęte!');
	}
}

function valid_select() {
 if ($('categories').value!='') {
  return true;
 } else {
   alert('Prosimy wskazać jedną z kategorii');
   return false;
  }
}

function show_me(hash, desc, ext, type) {
 var scr_dir = ['./_files/seq/fr/scr/', './_files/ppt/fr/scr/'];
 var big_dir = ['./_files/seq/them/', './_files/ppt/them/'];
 var display = $('inner_img');
 var d = $('image_desc_box');
 display.parentNode.href= big_dir[type] + hash + ext;
 display.parentNode.title = desc;
 display.src  = scr_dir[type] + hash + ext;
 if(desc!='') {
  d.style.display='block'; d.innerHTML = '<div style="padding:5px;">' + desc + '</div>';
 } else d.innerHTML = '';
}

function show_cat_list(lng) {
  
  var ajaxHelper = new sack('./../backends/' + 'category_list.php?lng=' + lng);
  ajaxHelper.onCompletion = function(){afterListRequest(ajaxHelper);};
  ajaxHelper.runAJAX();	
}

function afterListRequest(request) {
 $('cat_list').innerHTML = request.response;
}

function hide_cat_list() {
 $('cat_list').innerHTML='';
}

function show_desc() {
 $('full_desc').style.display = 'block';
 $('desc').style.display='none';
}

function hide_desc() {
 $('full_desc').style.display = 'none';
 $('desc').style.display='block';
}

function valid_contact_form(f) {	
 var subject = f.subject.value;
 var sender = f.sender.value;
 var content = f.content.value;
 if (subject=='' || sender.value=='' || content.value=='') { 
  alert('Prosimy wypełnić wymagane pola formularza'); return false; }
 if (!sender.match(/^[a-zA-Z0-9_.]+@[a-z0-9_.]+\.[a-z0-9_.]+$/i)) {
  alert('Podany adres e-mail jest nieprawidłowy'); return false;
 }	
}

function valid_recomm_form(f) {
 var sender = f.sender.value;
 var from = f.from.value;
 var to = f.to.value;
 if (sender=='' || from=='' || to=='') { 
  alert('Prosimy wypełnić wymagane pola formularza'); return false; 
 }
 if (!from.match(/^[a-zA-Z0-9_.]+@[a-z0-9_.]+\.[a-z0-9_.]+$/i)) {
  alert('Podany adres e-mail nadawcy jest nieprawidłowy'); return false;
 }
 if (!to.match(/^[a-zA-Z0-9_.]+@[a-z0-9_.]+\.[a-z0-9_.]+$/i)) {
  alert('Podany adres e-mail odbiorcy jest nieprawidłowy'); return false;
 }	
}

window.onload = function(){
	for(var i = 0; i < eventListeners.length; i++){
		var f = eventListeners[i];
		f.func.call(f.param);
	}

}

function addEventListener(func, param){
	eventListeners[eventListeners.length] = {'func' : func, 'param' : param}
}

function show(el){if(el = $(el)){el.style.display='block'}}
function hide(el){if(el = $(el)){el.style.display='none'}}
function show_hide(el){if(elm = $(el)){if(elm.style.display=='block'){hide(el)}else{show(el)}}}
