Не давно начал программировать на JS

. Взял готовый скрипт и потихоньку переделываю под себя. Коменты автора не удалял. Вообщем есть сервер Icecast 2 - с него берутся данные при помощи файла get.php
<?php
readfile('http://creepyradio.ru:8000/status2.xsl');
?>
Потом этот файл запрашивает parser.js
// Функция для упрощения написания, задаёт содержимое элементу DOM. Лень - двигатель прогресса!
function set (id, dat)
{
var d = $("."+ id);
d.innerHTML = dat;
}
function getXmlHttp() // получаем объект XMLHttpRequest, код взят из многочисленных примеров
{
var xmlhttp;
try {
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (E) {
xmlhttp = false;
}
}
if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
xmlhttp = new XMLHttpRequest();
}
return xmlhttp;
}
function req () // запрос данных
{
var xmlhttp = getXmlHttp()
xmlhttp.open("GET", "/get.php", true); // просим данные у сервера в асинхронном режиме
xmlhttp.onreadystatechange = function()
{
if (xmlhttp.readyState == 4) {
if(xmlhttp.status == 200)
processResult(xmlhttp.responseText); // отдаём на обработку
}
};
xmlhttp.send(null);
}
function processResult (res) // обработка входящих данных
{
var csRes = eval("(" + res + ")"); // да-да, тут должен использоваться jQuery, ибо безопасность и так далее. Но, так как это просто скрипт с примером, не буду ударяться в подробности.
var a = []; // пустой массив, для дальнейших действий
rjname = null
a = csRes["/stream_128"]; // если да, работаем с данными от него
var titlemas = a["title"];
trackname = titlemas.split('|');
rjname = trackname[1];
track = trackname[0];
$(".trackholder").text( track ); // Отображаем текущий трек
// Задаём все нужные нам поля (жанр, кол-во слушателей, описание станции и т.д.)
$(".sName").text(a["name"]);
$(".sDescr").text( rjname );
setInterval("req()", 15000); // Если всё прошло удачно, через 15 секунд обновим информацию о станции
// Здесь вместо setInterval используем setTimeout, чтобы при неработающем icecast скрипт не просил данные впустую.
}
req(); // первый запрос
Вот тут два вопроса

:
1) Если DJ переподключается бесконечно сыпится ошибка, лечится перезагрузкой страницы: net::err_insufficient_resources с жалобой на 39 строчку ( xmlhttp.send(null); ). В чем беда? Наличие ошибки до моих исправлений не проверял.
2) В строчке 45 ( var csRes = eval("(" + res + ")"); ) советуют вставить jquery, но ввиду скудности знаний не пойму что тут надо вставить.
Заранее спасибо за ответы

)))