﻿var isOS = checkOS();
var isBrowser = isCheckBrowser();
var isPlugin = isCheckPlugin();
// 試聴プレーヤー動作対象ブラウザチェック
function isCheckBrowser(){
    var brw = checkBrowser();
    if(brw == "Firefox" || brw == 'winIE' || brw == 'Safari' || brw == 'Chrome')
    {
        return true;
    }    
    return false;
}

function isCheckPlugin(){
    var plugins = navigator.plugins;
    if(checkBrowser() == "Firefox" || checkBrowser() == "Safari" || checkBrowser() == "Chrome")
    {
        for(i = 0; i < plugins.length; i++){
            if(plugins[i].filename.indexOf("np-mswmp.dll") > -1)
            {
                return true;
            }
        }
        return false;
    }
    return true;
}
function checkOS() {
	var userAgent = navigator.userAgent;
	if (navigator.userAgent.indexOf('Win',0) != -1) {
		return true;
	}
	return false;
}
function checkBrowser() {
	var userAgent = navigator.userAgent;
	if(navigator.userAgent.indexOf('Win',0) != -1 && userAgent.indexOf('Sleipnir') != -1)
	{
	    if(userAgent.indexOf('Sleipnir/2.7') != -1 
	    || userAgent.indexOf('Sleipnir/2.6') != -1 
	    || userAgent.indexOf('Sleipnir/2.5') != -1 
	    || userAgent.indexOf('Sleipnir/2.4') != -1 
	    || userAgent.indexOf('Sleipnir/2.3') != -1
	    || userAgent.indexOf('Sleipnir/2.2') != -1
	    || userAgent.indexOf('Sleipnir/2.1') != -1
	    || userAgent.indexOf('Sleipnir/1.') != -1 ){
	        return 'Sleipnir';
	    }
	}
	if (navigator.userAgent.indexOf('Win',0) != -1 && navigator.appName == "Microsoft Internet Explorer") {
		return 'winIE';
	}
	if (userAgent.indexOf('Netscape') != -1) {
		return 'NN';	
	}
	if (navigator.userAgent.indexOf('Win',0) != -1 && userAgent.indexOf('Firefox') != -1) {
		return 'Firefox';
	}
    //Safariより先にチェックする必要アリ
	if (userAgent.indexOf('Chrome') != -1) {
		return 'Chrome';
	}
	if (userAgent.indexOf('Safari') != -1) {
		return 'Safari';
	}
	if (userAgent.indexOf('Opera') != -1) {
		return 'Opera';
	}
	
	return '';
}

function checkErr(url){

    var u = window.location.pathname; 
    var path = "";
    if (u.match(/\/(contact|contents|genre|ranking|search|store)\//)) path = "../player/"; 
    else if (u.match(/\/(doc)\//)) path = "../../player/"; 
    else path = "./player/";

    var plgErrURL = path + "err_plugin.aspx";
    var brwErrURL = path + "err_browser.aspx";
    var chkBrw = checkBrowser();
    if(!isOS){
        return brwErrURL;
    }
    if(!isBrowser){
        return brwErrURL;
    }
    if(!isPlugin){
        //FireFoxのみ
        return plgErrURL;
    }
    return url;    
}

var tit = "musico_player";
var opt = "width=320, height=500, left=150, top=150, menubar=no, toolbar=no, location=no, status=no, resizable=no, scrollbars=no";

function openMusicoPlayer(url){
    
    openWindow(checkErr(url), tit, opt);
}

function GetAflParam()
{
    if(document.cookie.indexOf('external') > -1)
    {
        return '&afl=external';
    }
     return '&p=internal';
}
function retrial(sURL) {
        
    if(isWMPlayer()){      
        if(sURL.indexOf('trial.aspx') != -1){
            sURL = sURL + GetAflParam();
        }

        try
        {
        	    if(window.location.href.indexOf('stage.musico.jp') >= 0 )
	            {
	                var pageTracker = _gat._getTracker("UA-338179-3");
                    pageTracker._initData();
                    pageTracker._setClientInfo(true);
                    pageTracker._setDetectFlash(true);
                    pageTracker._setDetectTitle(false);
		            pageTracker._trackPageview(sURL);
	            }
	            else if(window.location.href.indexOf('musico.jp') >= 0 )
	            {
	                var pageTracker = _gat._getTracker("UA-338179-2");
                    pageTracker._initData();
                    pageTracker._setClientInfo(true);
                    pageTracker._setDetectFlash(true);
                    pageTracker._setDetectTitle(false);
		            pageTracker._trackPageview(sURL);
	            }

        }
        catch(e)
        {
        }
        
        try{
            location.href = sURL;
            return;
        }
        catch(e)
        {
        }
        
    }else{
        sURL = sURL.replace("trial.aspx", "player.aspx");
        sURL = sURL + GetAflParam();
        if(sURL.indexOf('player.aspx') != -1){
            openWindow(checkErr(sURL), tit, opt);
        }
    }
}

function trial(id) {
    
    if(isWMPlayer()){
        var file = "trial.aspx?id=" + id + GetAflParam();
        var path = getPath(file);        
    
	    try
	    {
            if(window.location.href.indexOf('stage.musico.jp') >= 0 )
	        {
                var pageTracker = _gat._getTracker("UA-338179-3");
                pageTracker._initData();
                pageTracker._setClientInfo(true);
                pageTracker._setDetectFlash(true);
                pageTracker._setDetectTitle(false);
                pageTracker._trackPageview(path);
	         }
	         else if(window.location.href.indexOf('musico.jp') >= 0 )
	         {
                var pageTracker = _gat._getTracker("UA-338179-2");
                pageTracker._initData();
                pageTracker._setClientInfo(true);
                pageTracker._setDetectFlash(true);
                pageTracker._setDetectTitle(false);
                pageTracker._trackPageview(path);
	         }		    
	    }
	    catch(e)
	    {
	    }
	    
	    try
	    {    
		    location.href = path;
		    return;
	    }
	    catch(e)
	    {
	    }
        
    }else{
        var file = "player.aspx?id=" + id + GetAflParam();
        var path = getPath(file);	            
        openWindow(checkErr(path), tit, opt);
    }
}

function getPath(file){
    var u = window.location.pathname; 
    var path = "";
    if (u.match(/\/(contact|contents|genre|ranking|search|store|nifty)\//)) path = "../contents/"+file; 
    else if (u.match(/\/(doc)\//)) path = "../../contents/"+file; 
    else path = "./contents/"+file;
    
    return path;
}

function openWindow(path, tit, opt){
    var win = window.open(path, tit, opt);
    if(win && !win.closed){
        win.focus();
    }
}

