﻿
if (window.attachEvent) {
    window.attachEvent("onload", function () { pageload(); });
    //window.attachEvent("onunload", function() { ShowMessage("Page Can not load!"); });
}
else {
    window.onload = function () { pageload(); };
    //window.onunload = function() { ShowMessage("Page Can not load!"); };
}

function pageload() {
    Sys.WebForms.PageRequestManager.getInstance().add_endRequest(initMessageShow);
    initMessageShow();
    document.onkeydown = EscKeyExit;

    document.onmousemove = getMouseXY;
    document.onmouseup = function () { mouseClickDown = false; mouseMoveAction = ""; };

    //ShowMessage("Your Browser is " + BrowserDetect.browser + " (" + BrowserDetect.version + ") on " + BrowserDetect.OS + " > "+navigator.userAgent);
}


function getClientDateTime() {
    var dt = new Date();
    var monthWord = new Array("January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December");
    return dt.getDate() + "-" + monthWord[dt.getMonth()] + "-" + dt.getFullYear() + " " + dt.getHours() + ":" + dt.getMinutes() + ":" + dt.getSeconds();
}


function getClientTimeZoneOffset() {
    var dt = new Date();
    var tz = -dt.getTimezoneOffset();
    return tz;
}



function initMessageShow() {
    makeHttpRequest('ajax.aspx?session=get&', setMessageShow, false);
}

function setMessageShow(ajaxContent) {
    switch (ajaxContent) {
        case 'loading':
            break;
        case 'error':
            ShowMessage('There was a problem with the request!');
            break;
        default:
            if (ajaxContent != null && ajaxContent != '') {
                ShowMessage(ajaxContent + '<span class="messClose" onclick="popWinClose();">Close</span>');
            }
            makeHttpRequest('ajax.aspx?session=clear&', voidAjax, false);
            break;
    }
}

function voidAjax(ajaxContent) {
}



var myInputVar = "";

function InputConfirmChoice(MyMes, url) {
    myInputVar = "";
    if (document.getElementById("CustomConfirmMessage2") == null) {
        var CustomConfirmMessage2 = document.createElement('div');
        CustomConfirmMessage2.setAttribute("id", "CustomConfirmMessage2");
        CustomConfirmMessage2.style.visibility = 'hidden';
        document.body.appendChild(CustomConfirmMessage2);
    }
    document.getElementById("CustomConfirmMessage2").innerHTML = MyMes +
                                                               ' <input name="fCustomParam" id="fCustomParam" class="TBox200" type="password" onkeyup="getMyInputVar(this)"/>' +
                                                               '<span class="messCancel" onclick="popWinClose();" title="close">Cancel</span>' +
                                                               '<span class="messOK" onclick="GotoURL(\'' + url + '\'+myInputVar);" title="ok">OK</span>';
    popWinShow('CustomConfirmMessage2', 'popWinMessage');
}


function getMyInputVar(iid) {
    myInputVar = iid.value;
}



var startTime;

function speedTest() {
    var d = new Date;
    startTime = d.getTime();
    makeHttpRequest('skin/default/images/speedtest.bmp?', getSpeedTest, false);
    //makeHttpRequest('http://www.glwiz.com/speedtest.bmp?', getSpeedTest, false);
}

function getSpeedTest(ajaxContent) {
    switch (ajaxContent) {
        case 'loading':
            document.getElementById("ispeedtest").innerHTML = '<img src="skin/default/images/loadingTest.gif" class="ajaxSpeedTest"/>';
            break;
        case 'error':
            document.getElementById("ispeedtest").innerHTML = '<img src="skin/default/images/speedtest.png" alt="" class="topGLAd" onclick="speedTest()" />';
            ShowMessage('There is a problem with the request!');
            break;
        default:
            var bytesLoaded = 12000056;
            var d = new Date;
            var time = Math.round((d.getTime() - startTime) / 10) / 100;
            var connSpeed = readablizeBit(Math.round(bytesLoaded / time));
            document.getElementById("ispeedtest").innerHTML = '<img src="skin/default/images/speedtest.png" alt="" class="topGLAd" onclick="speedTest()" />';
            ShowMessage("Speed test Duration: \t\t\t" + time + " second | زمان آزمایش به ثانیه<br/>" +
		                "Connection speed: \t" + connSpeed + " سرعت تقریبی اینترنت شما ");
            break;
    }
}



function readablizeBit(bit) {
    bit = bit * 10;
    var s = new Array('Bps', 'Kbps', 'Mbps', 'Gbps', 'Tbps', 'Pbps');
    var e = Math.floor(Math.log(bit) / Math.log(1000));
    return (bit / Math.pow(1000, Math.floor(e))).toFixed(2) + " " + s[e];
}

function readablizeBytes(bytes) {
    var s = new Array('Bytes', 'Kb', 'Mb', 'Gb', 'Tb', 'Pb');
    var e = Math.floor(Math.log(bytes) / Math.log(1024));
    return (bytes / Math.pow(1024, Math.floor(e))).toFixed(2) + " " + s[e];
}




var EscKeyPress;



function printWindow() {
    bV = parseInt(navigator.appVersion);
    if (bV >= 4) window.print();
}



function PrintContentByID(ObjID) {
    docPrint = window.open("", "Print");
    docPrint.document.open();
    docPrint.document.write('<html><head><title>GLWiZ Invoice</title>');
    docPrint.document.write('<link href="skin/Print.css" type="text/css" rel="STYLESHEET">');
    docPrint.document.write('</head><body onLoad="self.print();window.close();">');
    docPrint.document.write(document.getElementById(ObjID).innerHTML);
    docPrint.document.write('</body></html>');
    docPrint.document.close();
    docPrint.focus();
}





function MouseRowIn(RowName) {
    RowName.bgColor = "#dddddd";
}



function MouseRowOut(RowName) {
    RowName.bgColor = "";
}


function ShowDiv(targetId) {
    document.getElementById(targetId).style.display = 'block';
}



function HideDiv(targetId) {
    document.getElementById(targetId).style.display = 'none';
}




function ShowMenu(TitleID, MenuId) {
    document.getElementById(TitleID).className = 'MainMenuTitleOver';
    document.getElementById(MenuId).style.display = 'block';
}



function HideMenu(TitleID, MenuId) {
    document.getElementById(TitleID).className = 'MainMenuTitle';
    document.getElementById(MenuId).style.display = 'none';
}





function EmailContent(email, rname, subject, divid) {
    var body = "";
    if (document.getElementById(divid)) {
        body = "Dear " + rname + ", " + document.getElementById(divid).innerHTML;
    }
    window.open("mailto:" + email + "?subject=" + encodeURIComponent(subject) + "&body=" + escape(body), "SendEmail");
}


// custom Hint ///////////////////////////////////////////////////////////////////////////////////////

function showHint(objID,txt) {
    if (objID != null && txt != null && txt != "") {
        if (document.getElementById("customHint") == null) {
            var customHint = document.createElement('div');
            customHint.setAttribute("id", "customHint");
            document.body.appendChild(customHint);
        }
        var pLeft = (document.getElementById(objID).offsetLeft - 43) + 335;
        var pTop = document.getElementById(objID).offsetTop - 70;
        document.getElementById("customHint").innerHTML = txt;
        document.getElementById("customHint").style.left = pLeft + "px";
        //document.getElementById("customHint").style.top = pTop + "px";
        document.getElementById("customHint").style.top = "62px";
        document.getElementById("customHint").style.visibility = 'visible';
    }
}

function hideHint() {
    if (document.getElementById("customHint") != null) {
        document.getElementById("customHint").style.visibility = 'hidden';
    }
}


function showHint_fav(objID, txt) {
    if (objID != null && txt != null && txt != "") {
        if (document.getElementById("customHint_fav") == null) {
            var customHint_fav = document.createElement('div');
            customHint_fav.setAttribute("id", "customHint_fav");
            document.body.appendChild(customHint_fav);
        }
        var pLeft = (document.getElementById(objID).offsetLeft - 43) + 55;
        var pTop = document.getElementById(objID).offsetTop - 70;
        document.getElementById("customHint_fav").innerHTML = txt;
        document.getElementById("customHint_fav").style.left = pLeft + "px";
        //document.getElementById("customHint_fav").style.top = pTop + "px";
        document.getElementById("customHint_fav").style.top = "570px";

        document.getElementById("customHint_fav").style.visibility = 'visible';
    }
}

function hideHint_fav() {
    if (document.getElementById("customHint_fav") != null) {
        document.getElementById("customHint_fav").style.visibility = 'hidden';
    }
}


// Mouse Wheel Control ///////////////////////////////////////////////////////////////////////////////////////


function wheel(event) {
    var delta = 0;
    if (!event) /* For IE. */
        event = window.event;
    if (event.wheelDelta) { /* IE/Opera. */
        delta = event.wheelDelta / 120;
        /** In Opera 9, delta differs in sign as compared to IE.
        */
        if (window.opera)
            delta = -delta;
    } else if (event.detail) { /** Mozilla case. */
        /** In Mozilla, sign of delta is different than in IE.
        * Also, delta is multiple of 3.
        */
        delta = -event.detail / 3;
    }
    /** If delta is nonzero, handle it.
    * Basically, delta is now positive if wheel was scrolled up,
    * and negative, if wheel was scrolled down.
    */
    if (delta) {
        wheelHandle(delta);
    }
    /** Prevent default actions caused by mouse wheel.
    * That might be ugly, but we handle scrolls somehow
    * anyway, so don't bother here..
    */
    if (event.preventDefault) {
        event.preventDefault();
    }
    event.returnValue = false;
}


function initWheelById(objID) {
    if (document.getElementById(objID).addEventListener) {
        document.getElementById(objID).addEventListener('DOMMouseScroll', wheel, false);
    }
    document.getElementById(objID).onmousewheel = document.getElementById(objID).onmousewheel = wheel;
}




function wheelHandle(delta) {
    if (delta < 0) {
    }
    else {
    }
}


// Mouse Position Control ///////////////////////////////////////////////////////////////////////////////////////

var mouseX = 0;
var mouseY = 0;
var mouseClickDown = false;
var mouseMoveAction = "";
var LastMousePosX;
var LastMousePosY;

function getMouseXY(e) {
    if (!e) { // grab the x-y pos.s if browser is IE
        mouseX = event.clientX + document.body.scrollLeft;
        mouseY = event.clientY + document.body.scrollTop;
    }
    else {  // grab the x-y pos.s if browser is NS
        mouseX = e.pageX;
        mouseY = e.pageY;
    }
    if (mouseX < 0) { mouseX = 0; }
    if (mouseY < 0) { mouseY = 0; }

    if (mouseMoveAction == "scrollContentList") {
        setScrollCotrolMouseMove("vodContainerScroll", "scrollSliderID", "scrollSliderControlID", "scrollSliderFillID")
    }
    return true;
}





// popup Window ///////////////////////////////////////////////////////////////////////////////////////


function newPopWinShow(popupDiv) {
    if (document.getElementById("popWinBG") == null) {
        var popWinBG = document.createElement('div');
        popWinBG.setAttribute("id", "popWinBG");
        document.body.appendChild(popWinBG);
    }

    document.getElementById("popWinBG").style.visibility = 'visible';
    document.getElementById(popupDiv).style.visibility = 'visible';
}


function NewPopWinClose(popupDiv) {
    if (document.getElementById("popWinBG") != null) {
        document.getElementById("popWinBG").style.visibility = 'hidden';
    }

    if (document.getElementById(popupDiv) != null) {
        document.getElementById(popupDiv).style.visibility = 'hidden';
    }
}




function popWinShow(popupDiv, cssClass) {
    if (document.getElementById("popWinBG") == null) {
        var popWinBG = document.createElement('div');
        popWinBG.setAttribute("id", "popWinBG");
        document.body.appendChild(popWinBG);
    }

    document.getElementById("popWinBG").style.visibility = 'visible';

    if (document.getElementById("popWin") == null) {
        var popWin = document.createElement('div');
        popWin.setAttribute("id", "popWin");
        //popWin.setAttribute("class", cssClass);
        popWin.className = cssClass;
        document.body.appendChild(popWin);
    }
    else {
        //document.getElementById("popWin").setAttribute("class", cssClass);
        document.getElementById("popWin").className = cssClass;
    }

    document.getElementById("popWin").innerHTML = document.getElementById(popupDiv).innerHTML;
    document.getElementById("popWin").style.visibility = 'visible';

    EscKeyPress = true;
    //document.onkeydown = EscKeyExit;
}



function popWinShow_iFrame(url, cssClass) {
    if (document.getElementById("popWinBG") == null) {
        var popWinBG = document.createElement('div');
        popWinBG.setAttribute("id", "popWinBG");
        document.body.appendChild(popWinBG);
    }

    document.getElementById("popWinBG").style.visibility = 'visible';

    if (document.getElementById("popWin") == null) {
        var popWin = document.createElement('div');
        popWin.setAttribute("id", "popWin");
        //popWin.setAttribute("class", cssClass);
        popWin.className = cssClass;
        document.body.appendChild(popWin);
    }
    else {
        //document.getElementById("popWin").setAttribute("class", cssClass);
        document.getElementById("popWin").className = cssClass;
    }

    document.getElementById("popWin").innerHTML = '<span class="IWinClose" onclick="popWinClose();"></span>' +
                                                 '<iframe name="IWinFrame" id="IWinFrame" marginwidth="1" marginheight="1" border="0" frameborder="0"></iframe>';
    frames['IWinFrame'].location.href = url;
    document.getElementById("IWinFrame").style.width = "100%";
    //alert(document.getElementById("popWin").style.height - 25);
    //document.getElementById("IWinFrame").style.height = parseInt(document.getElementById("popWin").style.height - 25) + "px" ;
    document.getElementById("IWinFrame").style.height = "100%";
    document.getElementById("popWin").style.visibility = 'visible';

    EscKeyPress = true;
    //document.onkeydown = EscKeyExit;
}


function popWinClose() {
    if (document.getElementById("popWinBG") != null) {
        document.getElementById("popWinBG").style.visibility = 'hidden';
    }

    if (document.getElementById("popWin") != null) {
        document.getElementById("popWin").style.visibility = 'hidden';
    }
}


function EscKeyExit(e) {
    var x;
    if (document.all) {
        var evnt = window.event;
        x = evnt.keyCode;
    }
    else {
        x = e.keyCode;
    }

    if (x == 27 && EscKeyPress == true) {
        popWinClose();
        EscKeyPress = false;
    }

    if (x == 13) {
        if (!e) {
            if (document.getElementById('searchItemsValue') != null) {
                if (document.getElementById('searchItemsValue').value != '') {
                    document.getElementById('searchItemsKey').click();
                }
            }
            if (document.getElementById('pageHeader_txtUsername') != null) {
                if (document.getElementById('pageHeader_txtUsername').value != '' && document.getElementById('pageHeader_txtPassword').value != '') {
                    document.getElementById('pageHeader_buttonLogin').click();
                }
            }
            window.event.keyCode = 0;
        }
        else {
            if (document.getElementById('searchItemsValue') != null) {
                if (document.getElementById('searchItemsValue').value != '') {
                    switch (currentPartType) {
                        case 'tv':
                            tvChannelSearch(document.getElementById('searchItemsValue').value);
                            break;
                        case 'radio':
                            radioChannelSearch(document.getElementById('searchItemsValue').value);
                            break;
                        case 'tvseries':
                            tvSeriesSearch(document.getElementById('searchItemsValue').value);
                            break;
                        case 'movies':
                            moviesSearch(document.getElementById('searchItemsValue').value);
                            break;
                        case 'vod':
                            vodSearch(document.getElementById('searchItemsValue').value);
                            break;
                        default:
                            break;
                    }
                    return false;
                }
            }
            if (document.getElementById('pageHeader_txtUsername') != null) {
                if (document.getElementById('pageHeader_txtUsername').value != '' && document.getElementById('pageHeader_txtPassword').value != '') {
                    document.getElementById('pageHeader_buttonLogin').click();
                }
            }
        }
        return false;
    }

}



function GotoURL(url) {
    window.location.href = url;
}



function ConfirmChoice(MyMes, url) {
    if (document.getElementById("CustomConfirmMessage") == null) {
        var CustomConfirmMessage = document.createElement('div');
        CustomConfirmMessage.setAttribute("id", "CustomConfirmMessage");
        CustomConfirmMessage.style.visibility = 'hidden';
        document.body.appendChild(CustomConfirmMessage);
    }
    document.getElementById("CustomConfirmMessage").innerHTML = '<span class="IWinClose" onclick="popWinClose();"></span>' +
                                                               MyMes +
                                                               '<span class="messCancel" onclick="popWinClose();">Cancel</span>' +
                                                               '<span class="messOK" onclick="GotoURL(\'' + url + '\');">OK</span>';
    popWinShow('CustomConfirmMessage', 'popWinMessage');
}


function ConfirmChoiceJAVA(MyMes, jsFunction) {
    if (document.getElementById("CustomConfirmMessage") == null) {
        var CustomConfirmMessage = document.createElement('div');
        CustomConfirmMessage.setAttribute("id", "CustomConfirmMessage");
        CustomConfirmMessage.style.visibility = 'hidden';
        document.body.appendChild(CustomConfirmMessage);
    }
    document.getElementById("CustomConfirmMessage").innerHTML = '<span class="IWinClose" onclick="popWinClose();"></span>' +
                                                               MyMes +
                                                               '<span class="messCancel" onclick="popWinClose();">Cancel</span>' +
                                                               '<span class="messOK" onclick="' + jsFunction + ';popWinClose();">OK</span>';
    popWinShow('CustomConfirmMessage', 'popWinMessage');
}


function ShowMessage(MessageText) {
    if (document.getElementById("MessageShow") == null) {
        var MessageShow = document.createElement('div');
        MessageShow.setAttribute("id", "MessageShow");
        MessageShow.style.visibility = 'hidden';
        document.body.appendChild(MessageShow);
    }
    document.getElementById("MessageShow").innerHTML = MessageText + '<span class="messClose" onclick="popWinClose();">Close</span>';
    popWinShow('MessageShow', 'popWinMessage');
}




function Opacity(id, opacStart, opacEnd, millisec) {
    var speed = Math.round(millisec / 100);
    var timer = 0;
    if (opacStart > opacEnd) {
        for (i = opacStart; i >= opacEnd; i--) {
            setTimeout("ChangeOpacity(" + i + ",'" + id + "')", (timer * speed));
            timer++;
        }
    } else if (opacStart < opacEnd) {
        for (i = opacStart; i <= opacEnd; i++) {
            setTimeout("ChangeOpacity(" + i + ",'" + id + "')", (timer * speed));
            timer++;
        }
    }
}


function Opacity_Old(id, opacStart, opacEnd, millisec) {
    var speed = Math.round(millisec / 100);
    var timer = 0;
    if (opacStart > opacEnd) {
        for (i = opacStart; i >= opacEnd; i--) {
            setTimeout("ChangeOpacity(" + i + ",'" + id + "')", (timer * speed));
            timer++;
        }

    } else if (opacStart < opacEnd) {
        for (i = opacStart; i <= opacEnd; i++) {
            setTimeout("ChangeOpacity(" + i + ",'" + id + "')", (timer * speed));
            timer++;
        }
    }
}




function ChangeOpacity(opacity, id) {
    document.getElementById(id).style.opacity = (opacity / 100);
    document.getElementById(id).style.MozOpacity = (opacity / 100);
    document.getElementById(id).style.KhtmlOpacity = (opacity / 100);
    document.getElementById(id).style.filter = "alpha(opacity=" + opacity + ")";
    if (opacity <= 0) {
        document.getElementById(id).style.visibility = 'hidden';
    }
    else {
        document.getElementById(id).style.visibility = 'visible';
    }
}



function randomRefresh() {
    var RandInt = Math.floor(Math.random() * 9999);
    var DataTimeNow = new Date();
    var result = DataTimeNow.getSeconds() + (DataTimeNow.getMinutes() * 60) + (DataTimeNow.getHours() * 3600) + (DataTimeNow.getDate() * 86400);
    return String(result) + String(RandInt);
}


// Validator ///////////////////////////////////////////////////////////////////////////////////////


function EmailValidate(value) {
    var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
    return reg.test(EmailAddress);
}



function IntegerValidate(value) {
    var reg = /^([0-9])\d*$/;
    return reg.test(intString);
}




// Ajax Call ///////////////////////////////////////////////////////////////////////////////////////

function makeHttpRequest(url, callback_function, return_xml) {
    var http_request, response, i;
    var activex_ids = ['MSXML2.XMLHTTP.3.0', 'MSXML2.XMLHTTP', 'Microsoft.XMLHTTP'];

    if (window.XMLHttpRequest) { // Mozilla, Safari, IE7+...
        http_request = new XMLHttpRequest();
        if (http_request.overrideMimeType) {
            http_request.overrideMimeType('text/xml');
        }
    }
    else if (window.ActiveXObject) { // IE6 and older
        for (i = 0; i < activex_ids.length; i++) {
            try {
                http_request = new ActiveXObject(activex_ids[i]);
            }
            catch (e) { }
        }
    }

    if (!http_request) {
        ShowMessage('Unfortunately your browser doesn’t support this feature.');
        return false;
    }

    http_request.onreadystatechange = function () {
        if (http_request.readyState !== 4) {
            // not ready yet
            callback_function('loading');
            return;
        }
        if (http_request.status !== 200) {
            // ready, but not OK
            //alert('There was a problem with the request.(Code: ' + http_request.status + ')');
            callback_function('error');
            return;
        }

        if (return_xml) {
            response = http_request.responseXML;
        }
        else {
            try {
                response = http_request.responseText;
            }
            catch (e) {
                response = "";
            }
        }
        callback_function(response);
    };

    var rand = "&ref=" + randomRefresh();
    http_request.open('GET', url + rand, true);
    http_request.send(null);
}






// Set Activity /////////////////////////////////////////////////////////////////////////////////////////

var viewActivityID;
var viewActivityChannelName;
var viewActivityChannelType = "none";
var updateActivityID;

function setActivity(channelName, channelType) {
    clearTimeout(viewActivityID);
    clearInterval(updateActivityID);
    viewActivityChannelName = channelName;
    viewActivityChannelType = channelType;
    //setInterval("makeHttpRequest('ajax.aspx?activity=" + publishingPointName + "&', channelListShow, false)", 30000);
}



function initViewActivity() {
    switch (viewActivityChannelType) {
        case 'live':
            makeHttpRequest('ajax.aspx?activity=add&ppoint=' + viewActivityChannelName + '&', activityCallback, false);
            break;
        case 'vod':
            makeHttpRequest('ajax.aspx?activity=add&ppoint=' + viewActivityChannelName + '&', activityCallback, false);
            break;
    }
}

function updateViewActivity() {
    switch (viewActivityChannelType) {
        case 'live':
            makeHttpRequest('ajax.aspx?activity=update&ppoint=' + viewActivityChannelName + '&', activityCallback, false);
            break;
        case 'vod':
            makeHttpRequest('ajax.aspx?activity=update&ppoint=' + viewActivityChannelName + '&', activityCallback, false);
            break;
    }
}


function activityCallback(ajaxContent) {
    switch (ajaxContent) {
        case 'error':
            //ShowMessage('Error to Add ' + viewActivityChannelName + ' : ' + viewActivityChannelType);
            break;
        case 'ok':
            //ShowMessage('Added ' + viewActivityChannelName + ' : ' + viewActivityChannelType);
            break;
        case 'stratupdate':
            updateActivityID = setInterval('updateViewActivity()', 300000);
            break;
        default:
            break;
    }
}




// Silverlight Installing Check /////////////////////////////////////////////////////////////////////////////
function isSilverlightInstalled() {
    var isSilverlightInstalled = false;
    try {
        try {
            var slControl = new ActiveXObject('AgControl.AgControl');
            isSilverlightInstalled = true;
        }
        catch (e) {
            if (navigator.plugins["Silverlight Plug-In"]) {
                isSilverlightInstalled = true;
            }
        }
    }
    catch (e) {
    }
    return isSilverlightInstalled;
}

var silverreadyforme = true;

if (isSilverlightInstalled() == false) {
    silverreadyforme = false;
}


// Silverlight Player ///////////////////////////////////////////////////////////////////////////////////////

var ply, cnt, src, cfg, slpStateNew, slpStateOld;
var radio = false;
function setSilverlightPlayer(playerHeight, playerWidth) {
    if (silverreadyforme == true) {
        document.getElementById("PlayerContainer").style.height = playerHeight + "px";
        cnt = document.getElementById("PlayerContainer");
        src = 'js/wmvplayer.xaml';
        cfg = { height: playerHeight, width: playerWidth, image: 'skin/default/images/player_bg.png', start: '0', backcolor: '000000', frontcolor: 'FFFFFF', lightcolor: 'FF6600', overstretch: 'fit' };
        ply = new jeroenwijering.Player(cnt, src, cfg);
        addSLPListeners();
    }
    else {
        document.getElementById("PlayerContainer").style.height = playerHeight + "px";
        document.getElementById("PlayerContainer").innerHTML = "<img class=\"silverlightSetup\" src=\"skin/default/images/silverlightSetup.png\" onclick=\"silverlightInstall();\"/>";
    }
}

function addSLPListeners() {
    if (ply.view) {
        ply.addListener('STATE', setSLPState);
    } else {
        setTimeout(addSLPListeners, 100);
    }
};

function setSLPState(ost, nst) {
    slpStateNew = nst;
    slpStateOld = ost;
    if (viewActivityChannelType != "none" && nst == "Playing") {
        clearTimeout(viewActivityID);
        clearInterval(updateActivityID);
        viewActivityID = setTimeout('initViewActivity()', 60000);
    }
    else {
        clearTimeout(viewActivityID);
        clearInterval(updateActivityID);
    }
}

function silverlightInstall() {
    Silverlight.getSilverlight(window.parent.SLVBabak);
}


function slPlay(mediaurl) {
    if (silverreadyforme == true) {
        cfg.file = mediaurl;
        cfg.autostart = 'true';
        if (radio) {
            cfg.logo = 'skin/default/images/radio_bg.png';
        }
        else {
            cfg.logo = '';
        }
        ply = new jeroenwijering.Player(cnt, src, cfg);
        addSLPListeners();
    }
    else {
        if (playCount > 1) {
            ConfirmChoice("Please Install Silverlight", "javascript:silverlightInstall()");
        }
    }
}

function slStop() {
    if (silverreadyforme == true) {
        ply.sendEvent('stop');
    }
}


// Play and Stop Media ///////////////////////////////////////////////////////////////////////////////////////

var playCount = 0;
var playerType;

function playMedia(mediaurl) {
    playCount += 1;
    switch(playerType)
    {
        case 'silverlight':
            slPlay(mediaurl);
            break;
        case 'wmp':
            break;
        default:
            slPlay(mediaurl);
            break;
    }
}



function stopMedia() {    
    switch (playerType) {
        case 'silverlight':
            slStop();
            break;
        case 'wmp':
            break;
        default:
            slStop();
            break;
    }
}

function setRadio(value) {
    radio = value;
}

function setPlayerType(value, playerHeight, playerWidth) {
    switch (value) {
        case 'silverlight':
            playerType = "silverlight";
            setSilverlightPlayer(playerHeight, playerWidth);
            break;
        case 'wmp':
            playerType = "wmp";
            break;
        default:
            playerType = "silverlight";
            setSilverlightPlayer(playerHeight, playerWidth);
            break;
    }
}


function initPlayMedia(ajaxContent) {
    switch (ajaxContent) {
        case 'loading':
            break;
        case 'error':
            ShowMessage('There was a problem with the request!');
            break;
        case 'NA':
            ShowMessage('SERVICE CURRENTLY NOT AVAILABLE!<br>Please wait...');
            break;
        case 'xx':
            stopMedia();
            ShowMessage('کاربر دیگری با نام کاربری شما وارد سایت شده است. امکان پخش همزمان وجود ندارد.<br>لطفا نام کاربری خود را در اختیار شخص ثالثی قرار ندهید');
            break;
        default:
            if (ajaxContent != null && ajaxContent != '') {
                //ajaxContent = ajaxContent.replace("mms", "http");
                playMedia(ajaxContent);
            }
            break;
    }
}



// Browser Detect ///////////////////////////////////////////////////////////////////////////////////////

var BrowserDetect = {
    init: function () {
        this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
        this.version = this.searchVersion(navigator.userAgent) || this.searchVersion(navigator.appVersion) || "an unknown version";
        this.OS = this.searchString(this.dataOS) || "an unknown OS";
    },
    searchString: function (data) {
        for (var i = 0; i < data.length; i++) {
            var dataString = data[i].string;
            var dataProp = data[i].prop;
            this.versionSearchString = data[i].versionSearch || data[i].identity;
            if (dataString) {
                if (dataString.indexOf(data[i].subString) != -1)
                    return data[i].identity;
            }
            else if (dataProp)
                return data[i].identity;
        }
    },
    searchVersion: function (dataString) {
        var index = dataString.indexOf(this.versionSearchString);
        if (index == -1) return;
        return parseFloat(dataString.substring(index + this.versionSearchString.length + 1));
    },
    dataBrowser: [
		{
		    string: navigator.userAgent,
		    subString: "Chrome",
		    identity: "Chrome"
		},
		{ string: navigator.userAgent,
		    subString: "OmniWeb",
		    versionSearch: "OmniWeb/",
		    identity: "OmniWeb"
		},
		{
		    string: navigator.vendor,
		    subString: "Apple",
		    identity: "Safari",
		    versionSearch: "Version"
		},
		{
		    prop: window.opera,
		    identity: "Opera"
		},
		{
		    string: navigator.vendor,
		    subString: "iCab",
		    identity: "iCab"
		},
		{
		    string: navigator.vendor,
		    subString: "KDE",
		    identity: "Konqueror"
		},
		{
		    string: navigator.userAgent,
		    subString: "Firefox",
		    identity: "Firefox"
		},
		{
		    string: navigator.vendor,
		    subString: "Camino",
		    identity: "Camino"
		},
		{		// for newer Netscapes (6+)
		    string: navigator.userAgent,
		    subString: "Netscape",
		    identity: "Netscape"
		},
		{
		    string: navigator.userAgent,
		    subString: "MSIE",
		    identity: "Explorer",
		    versionSearch: "MSIE"
		},
		{
		    string: navigator.userAgent,
		    subString: "Gecko",
		    identity: "Mozilla",
		    versionSearch: "rv"
		},
		{ 		// for older Netscapes (4-)
		    string: navigator.userAgent,
		    subString: "Mozilla",
		    identity: "Netscape",
		    versionSearch: "Mozilla"
		}
	],
    dataOS: [
		{
		    string: navigator.platform,
		    subString: "Win",
		    identity: "Windows"
		},
		{
		    string: navigator.platform,
		    subString: "Mac",
		    identity: "Mac"
		},
		{
		    string: navigator.userAgent,
		    subString: "iPhone",
		    identity: "iPhone/iPod"
		},
		{
		    string: navigator.platform,
		    subString: "Linux",
		    identity: "Linux"
		}
	]

};
BrowserDetect.init();

// end of Browser Detect
