// AUDIO PLAYER
var script = document.createElement('script'); 
script.type = 'text/javascript'; 
script.src = 'http://www.tophit.ru/js/lib.js'; 
document.getElementsByTagName('head')[0].appendChild(script);

var path = window.location.pathname.substring(1);
var isTestPage = path.match(/testing.shtml/);

// NEW >
var votePoint = 0;
var gender = '';
var age = '';
var exvote;

var voter_type = "Z";
var url_pref = "/";
var votingType = "vote";
var confirmText;
var prevTrackId;
var prevTrackVote;

var voptions = {
	a: -3,
	b: -2,
	c: -1,
	d:  1,
	e:  2,
	f:  3
};
// > NEW


function play_track(id,art,song,wd,event) {
    var x = defclickpos(event).x;
    var y = defclickpos(event).y; 
    
    prevTrackId = id;
    getStoredNSVote(id);
 
    var flag = document.getElementById('viddiv');
    if ( flag ) {
			destroy_div('viddiv');
    }

    var player = '';

    player += '<object type="application/x-shockwave-flash" data="http://www.tophit.ru/prev/player.swf" width="180" height="20" z-index="1000">';
    player += '<param name="movie" value="http://www.tophit.ru/prev/player.swf?autostart=yes&soundFile=http://www.tophit.ru/prev/' + id + '_prev.mp3" />';
    player += '<param name= FlashVars value="soundFile=http://www.tophit.ru/prev/' + id + '_prev.mp3&bg=0xf8f8f8&artists=&nbsp;&titles=&nbsp;" />';
    player += '<param name="autostart" value="yes" />';
    player += '</object>';

    var all_div = '';

    all_div += '<table border=0 cellpadding=0 cellspacing=0><tr><td><table style="border-collapse: collapse; border: solid; border-color: #676d7f;">';
    all_div += '<tr><td align=left>' + player + '</td><td align=right><a href="#" onClick="destroy_div(\'viddiv\');return false;"><img src="/img/videobox/closelabel.gif" border=0></a></td></tr>';
    all_div += '<tr><td style="background-color: #d6dae5;" colspan=2 align=center><p class="tbltxt">'+art+' - '+ song +'</p></td></tr>';
    all_div += '</table>';

    all_div += '<table style="border-collapse: collapse; border: solid; border-color: #676d7f; border-width: 1px;" align=center width=100%>';
    all_div += '<tr><td align=center>';

// NEW >
    exvote = new Object();
    exvote.range = new Object();
    exvote.sel = {};  	

    for (vopt in voptions) {
    	tcode = 'exvote.sel[' + voptions[vopt] + '] = \'\';' 
	   	eval(tcode);
    }
  	tcode = 'exvote.sel[' + prevTrackVote + '] = \'checked\';' 
   	eval(tcode);
   	
    var genderSelect = '';
    var ageSelect = '';
  
    genderSelect += '<input type=radio name=gender value="M"';
    if (gender == 'M') {
      genderSelect += ' checked';
     }
    genderSelect += ' onClick="setGender(\'M\');">Мужской&nbsp;&nbsp;<input type=radio name=gender value="F"';
    if (gender == 'F') {
      genderSelect += ' checked';
     }
    genderSelect += ' onClick="setGender(\'F\');">Женский';
  
    ageSelect += '<input type=radio name=age value="1"';
    if (age == 1) {
      ageSelect += ' checked';
     }
    ageSelect += ' onClick="setAge(\'1\');">18-24&nbsp;<input type=radio name=age value=2';
    if (age == 2) {
      ageSelect += ' checked';
     }
    ageSelect += ' onClick="setAge(\'2\');">25-34&nbsp;<input type=radio name=age value=3';
    if (age == 3) {
      ageSelect += ' checked';
     }
    ageSelect += ' onClick="setAge(\'3\');">35-49&nbsp;<input type=radio name=age value=4';
    if (age == 4) {
      ageSelect += ' checked';
     }
    ageSelect += ' onClick="setAge(\'4\');">50+';
  
    var textm3 = 'Это никто и никогда не должен услышать';
    var textm2 = 'Трек мне абсолютно не нравится';
    var textm1 = 'Трек мне скорей не нравится';
    var text1 = 'Трек мне скорей нравится';
    var text2 = 'Трек мне очень нравится';
    var text3 = '100% хит';

    var formContent = '';
    formContent += '<table cellpadding=0 cellspacing=1 border=0 width=100%>';
    formContent += '<tr><td colspan=6 align=center style="font-size: 12px; color: #777777; font-weight: bold;">Ваша личная оценка качества трека</td></tr>';
    formContent += '<tr><td class=tvotecell3 style="background-color: #fc9e9e;" title="' + textm3 + '">-3<br><input type=radio name=vote value="-3" onClick="setVote(\'-3\');" ' + exvote.sel[-3] + '></td>';
    formContent += '<td class=tvotecell3 style="background-color: #fbd0d0;" title="' + textm2 + '">-2<br><input type=radio name=vote value="-2" onClick="setVote(\'-2\');" ' + exvote.sel[-2] + '></td>';
    formContent += '<td class=tvotecell3 style="background-color: #fbeaea;" title="' + textm1 + '">-1<br><input type=radio name=vote value="-1" onClick="setVote(\'-1\');" ' + exvote.sel[-1] + '></td>';
    formContent += '<td class=tvotecell4 style="background-color: #d9f9da;" title="' + text1 + '">+1<br><input type=radio name=vote value="1" onClick="setVote(\'1\');" ' + exvote.sel[1] + '></td>';
    formContent += '<td class=tvotecell4 style="background-color: #b3ffbf;" title="' + text2 + '">+2<br><input type=radio name=vote value="2" onClick="setVote(\'2\');" ' + exvote.sel[2] + '></td>';
    formContent += '<td class=tvotecell4 style="background-color: #82ff97;" title="' + text3 + '">+3<br><input type=radio name=vote value="3" onClick="setVote(\'3\');" ' + exvote.sel[3] + '></td></tr>';
    formContent += '</table>';
    formContent += '<table cellpadding=0 cellspacing=1 border=0 width=100%>';  
    formContent += '<tr><td class=tvotecell style="padding: 2px;">Пол: ' + genderSelect + '</td></tr>';  
    formContent += '<tr><td class=tvotecell>Возраст: ' + ageSelect + '</td></tr>';  
    formContent += '<tr><td class=tvotecell><a href="#" onClick="destroy_div(\'viddiv\');return false;" class=infohr style="text-decoration: underline;">Выставить оценку и закрыть</a></td></tr>';  
    formContent += '</table>';  
// > NEW
		if (isTestPage == null) {
	    all_div += formContent;
	  }

    all_div += '</td></tr></table></td></tr></table>';

    create_div( 'viddiv','','','','','','white',all_div,'visible');

    var myDiv = document.getElementById('viddiv'); 

    myDiv.style.left = x - 180;
    myDiv.style.top = y;

    countPlay(id);
    
    return false;
}

function countPlay(id) {
  var xmlHttp = MakeRequestObject()
 
  xmlHttp.onreadystatechange=function() {
    if(xmlHttp.readyState==4) {
      var resp = xmlHttp.responseText;
      if (resp == "ok") {
      }
      if (resp == "false") {
      }
      return true;
    }
  }

  if (id != '') {  
    xmlHttp.open("GET", "/cgi-bin/ajax/count_preview_listen.cgi?track_id=" + id, true);
    xmlHttp.send(null);
  }
}

// NEW >
function setVote(vote) {
  votePoint = vote;
  commitVote(prevTrackId);
}

function setGender(myGender) {
  gender = myGender;
  commitGender();
}

function setAge(myAge) {
  age = myAge;
  commitAge();  
}

function commitVote(track_id) {
  if (votePoint != "-3") {
    if (votePoint != "-2") {
      if (votePoint != "-1") {
        if (votePoint != "1") {
          if (votePoint != "2") {
            if (votePoint != "3") {
              alert("Выберите, пожалуйста, Вашу оценку качества трека.");
              return;
             }
           }
         }
       }
     }
   }
   
  var url_pref = "/";

  if (gender != "M") {
    if (gender != "F") {
      alert('Пожалуйста, укажите Ваш пол.');
      return;
     }
  }

  if (age == "") {
    alert('Пожалуйста, укажите Ваш возраст.')
    return;
  }
  if (age > 4) {
   alert('Пожалуйста, укажите Ваш возраст. Оценка не принята.')
   return;
  }
  if (age < 1) {
    alert('Пожалуйста, укажите Ваш возраст. Оценка не принята.')
    return;
   }

  var xmlHttp = MakeRequestObject()
 
  xmlHttp.onreadystatechange=function() {
    if(xmlHttp.readyState==4) {
      var resp = xmlHttp.responseText;
      if (resp == "ok") {
        return true;
      }
      if (resp == "badparam") {
        alert('Произошла ошибка при передаче параметров.');
        return false;
      }
      if (resp != "ok") {
        alert('Ошибка соединения с сервером. Пожалуйста, попробуйте обновить страницу. В случае, если неисправность не устраняется, пожалуйста, сообщите об этом менеджерам проекта.');
        return false;
      }
    }
  }

  if ((track_id != '') && (votePoint != '')) {  
   	var taction = 'setvote';
    xmlHttp.open("GET", "/cgi-bin/testingns.cgi?action=" + taction + "&track_id=" + track_id + "&vote=" + votePoint + "&gender=" + gender + "&age=" + age, true);
    xmlHttp.send(null);
    votingType = "vote";
    track_id = '';
   }
}

function getStoredNSVote(track_id, event) {
	var xhReq = createXMLHttpRequest();
	xhReq.open("GET", "/cgi-bin/testingns.cgi?action=ajaxgetvote&track_id=" + track_id, false);
 	xhReq.send(null);
	var serverResponse = xhReq.responseText;

	if (serverResponse) {
		eval(serverResponse);
		prevTrackVote = vregobj.vote;
	} else {
		alert("Ошибка обработки данных. Попробуйте обновить страницу. В случае повторения ошибки обратитесь к администрации сайта.");
		return;
	}
}

function commitGender() {
	var xhReq = createXMLHttpRequest();
	xhReq.open("GET", "/cgi-bin/testingns.cgi?action=setgender&gender=" + gender, false);
 	xhReq.send(null);
	var serverResponse = xhReq.responseText;

	if (serverResponse) {
	} else {
		alert("Ошибка обработки данных. Попробуйте обновить страницу. В случае повторения ошибки обратитесь к администрации сайта.");
		return;
	}
}

function commitAge() {
	var xhReq = createXMLHttpRequest();
	xhReq.open("GET", "/cgi-bin/testingns.cgi?action=setage&age=" + age, false);
 	xhReq.send(null);
	var serverResponse = xhReq.responseText;

	if (serverResponse) {
	} else {
		alert("Ошибка обработки данных. Попробуйте обновить страницу. В случае повторения ошибки обратитесь к администрации сайта.");
		return;
	}
}

function createXMLHttpRequest() {
   try { return new XMLHttpRequest(); } catch(e) {}
   try { return new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) {}
   alert("XMLHttpRequest not supported");
   return null;
}

// > NEW

