/**
 * @author enrique
 */
player = function(settings){
    playLive = function(){
        jQuery.ajax({
            type: "POST",
            dataType: "json",
            url: settings.baseUrl + settings.urlLiveVideo,
            data: "locale=" + settings.locale,
            success: function(msg){ 
                switch (msg['live']) {
                    case 'false':
                        jQuery("#" + settings.liveMessageId).append(msg['msg']);
                        setTimeout(function(){
                            jQuery("#" + settings.liveMessageId).empty();
                        }, 1000)
                        break
                    case 'true':
                        insertPlayer('live', msg['url']);
                        settings.liveId = msg[0]['id_video'];
                        videoName(msg[0]['titulo'], msg[0]['descripcion']);
                        settings.idVideoPlaying = 'Directo';
                        //player_add display: block
                        jQuery("#player_add").css("display", "none");
                        jQuery("#player_embed").css("display", "none");
                        jQuery.ajax({
                            type: "POST",
                            dataType: "json",
                            url: settings.baseUrl + settings.urlShareLive,
                            data: 'id_live=' + msg[0]['id_video']
                        })
                        break
                }
            }
        })
    }
    /**
     * Reproduce un directo windows externo
     */
    playExternalLive = function( idContenedor,idTipo ){
		jQuery.ajax({
			type: "POST",
			dataType: "json",
			url: settings.baseUrl + settings.urlLiveChannel,
			data: "locale=" + settings.locale + "&id_contenedor=" + idContenedor + "&id_tipo_contenedor=" + idTipo,
			success: function(msg){
				insertPlayer('live', msg[0]['url']);
				videoName(msg[0]['nombre'], '');
				settings.idVideoPlaying = 'Directo';
				//player_add display: block
				jQuery("#player_add").css("display", "none");
				jQuery("#player_embed").css("display", "none");
			}
		})
    }
    /** 
     * Inserta el player
     * @param {string} type	Directo o diferido (live,recorded)
     */
    insertPlayer = function(type, url){
        if (type) {
            switch (type) {
                case 'recorded':
                    if (settings.player.stop) {
                        settings.player.stop();
                    }
                    jQuery("#" + settings.contentHolder).empty();
                    settings.player = new jqueryFlowplayer({
                        flowPath: settings.flowPath,
                        videoPath: settings.videoPath,
                        name: settings.playerId,
                        anchura: settings.playerWidth,
                        contentHolder: settings.contentHolder,
                        altura: settings.playerHeight,
                        videoId: settings.initVideoId,
                        videoFile: settings.initVideoFile
                    });
                    jQuery("#player_add").css("display", "");
                    jQuery("#player_embed").css("display", "");
                    jQuery("#" + settings.liveMessageId).empty();
                    
                    break;
                case 'live':
                    switch (settings.liveType) {
                        case 'live':
                            if (settings.player.stop) {
                                settings.player.stop()
                            }
                            jQuery("#" + settings.contentHolder).empty();
                            settings.player = new jqueryWinplayer({
                                name: settings.playerId,
                                anchura: settings.playerWidth,
                                contentHolder: settings.contentHolder,
                                altura: settings.playerHeight,
                                url: url,
                                liveMessageId: settings.liveMessageId
                            });
                            break;
                        case 'p2p':
                        case 'true':
                            if (settings.player.stop) {
                                settings.player.stop()
                            }
                            jQuery("#" + settings.contentHolder).empty();
                            settings.player = new jqueryP2pPlayer({
                                name: settings.playerId,
                                anchura: settings.playerWidth,
                                contentHolder: settings.contentHolder,
                                altura: settings.playerHeight,
                                url: url,
                                liveMessageId: settings.liveMessageId
                            });
                            break;
                    }
                    
                    liveButtons();
                    break;
            }
        }
        else {
            if (!settings.urlVideo) {
                jQuery.ajax({
                    type: "POST",
                    dataType: "json",
                    url: settings.baseUrl + settings.urlActiveLive,
                    data: '',
                    success: function(msg){
                        switch (msg) {
                            case true:
                                playLive();
                                break;
                            case false:
                                insertPlayer('recorded');
                                break;
                        }
                    }
                });
            }
            else {
                insertPlayer('recorded');
            }
        }
    }
    /** 
     * Reproduce un vídeo
     * @param {int} idVideo	Id del vídeo
     * @param {string} videoFile	Nombre del archivo
     */
    playVideo = function(idVideo, videoFile){
        settings.idVideoPlaying = idVideo;
        settings.videoPlayingFile = videoFile;
        if (settings.player.identificador == 'flowplayer') {
            settings.player.startVideo(videoFile)
        }
        else {
            settings.initVideoFile = videoFile;
            insertPlayer('recorded');
        }
        activeDivVideo(idVideo);
        //Aumentamos el número de veces reproducido
        jQuery.ajax({
            type: "POST",
            dataType: "json",
            url: settings.baseUrl + settings.urlShare,
            data: "id_video=" + idVideo,
            success: function(msg){
            }
        })
    }
    
}

