function submit_goToCamera()
{    
    var cam_id = document.getElementById("lokasi-id");        
    cam_id = cam_id.value;    
    
    $("div#cam-viewer-loading-" + cam_id).show()        
    var url = '/detikcom/' + cam_id + "/"
    $.get(url, function (data) {
        $("div.cam-viewer").parent()
        .empty()
        .append(data)        
        $("div#cam-viewer-loading-" + cam_id).fadeOut("slow")
    })
    return false;
}
    

$(function(){
    // Global variabel for flash player testing
    var test_player;
    
    $("form#submit-camera").submit(submit_goToCamera)
    $("form#submit-camera").live("submit", submit_goToCamera)    
    $("a#link-btn-go-id").live("click", submit_goToCamera)    
        
    $("a.link-btn-go-id").click(function(){
        var cam_id = get_id_from_cssid($(this).attr("id"))        
        
        $("div#cam-viewer-loading-" + cam_id).show()    
        var url = '/detikcom/' + cam_id + "/"
        $.get(url, function (data) {
            $("div.cam-viewer").parent()
                .empty()
                .append(data)
            $("div#cam-viewer-loading-" + cam_id).fadeOut("slow")
        })
        return false;

    })
    
    
    $("a.cam-video-link").live("click", function(){
        var cam_id = get_id_from_cssid($(this).attr("id"))        
        $("div#cam-viewer-image-" + cam_id + " img.cam-image").toggle()
        $("div#cam-viewer-image-" + cam_id + " > div.cam-video-wrapper").toggle()
        $(this).children(".video").toggle()
        $(this).children(".image").toggle()
        $("a#cam-refresh-image-" + cam_id).toggle()
        $("a#cam-refresh-video-" + cam_id).toggle()
        
        // Only check flash player version when Live Video was clicked        
        if( typeof(test_player) == "undefined" || test_player == "" ) {            
            test_player = "true";
        }                
        
        if( test_player == "true" ) {            
            //Cek Flash Player version based on setting default	
            var hasReqestedVersion = DetectFlashVer(REQUIRED_MAJOR_VERSION, REQUIRED_MINOR_VERSION, REQUIRED_REVISION);	
            
            if (hasReqestedVersion) {
                $("li#info-player-" + cam_id).hide()
                $("div#info-flash-player-" + cam_id).hide()
                $("div.detik-cam-info").show()
                $("div.detik-cam-sponsor").show()
                $("div.detik-cam-decription").show()
            } else {  // flash player not fullfill requirement
                    $("li#info-player-" + cam_id).show()
                    $("div#info-flash-player-" + cam_id).show()
                    $("div.detik-cam-info").hide()
                    $("div.detik-cam-sponsor").hide()
                    $("div.detik-cam-decription").hide()
            }
            test_player = "false";            
        } else {
            $("li#info-player-" + cam_id).hide()
            $("div#info-flash-player-" + cam_id).hide()
            $("div.detik-cam-info").show()
            $("div.detik-cam-sponsor").show()
            $("div.detik-cam-decription").show()
            test_player = "true";
        }
	
    	var vidurl = '/camvidurl/' + cam_id + "/"	
    	var player = $f("player-"+cam_id)
    	$.get(vidurl, function (data) {
    	    player.stop()
            player.setClip({url:data})
	        player.play()
    	})
    	return false
    })
    
    $("a.cam-bookmark").hover(
        function(){
            $(this).children("img.cam-bookmark-img").attr("src", "http://s.lewatmana.com/trafficlive-media/img/heart.png")
        },
        function(){
            $(this).children("img.cam-bookmark-img").attr("src", "http://s.lewatmana.com/trafficlive-media/img/heartbw.png")
        }
    )
    
    $("a.cam-bookmark").each(mangle_link_for_popup)

    var matches = window.location.href.match(/#favorit(\d+)$/)
    if (matches) {
        $('a#cam-bookmark-' + matches[1]).click()
    }
    
    $("a#add-bookmarkset-link-inline").live("click", function(){
        $("form#bookmark-form").hide()
        $("div.add_set").show()
        return false
    })
    
    $("a#cancel-add-set").live("click", function(){
        $("div.add_set").hide()
        $("form#bookmark-form").show()
        return false
    })
    
    $("form#add-set-inline").live("submit", function(){
        var getName  = $("#id_name").val()
	
	if (getName != "") {
		$.post("/lists/add/",
		    {
		       name: $("#id_name").val(),
		       notes: $("#id_notes").val()
		    },
		    function(data, textStatus) {
			if (textStatus.match(/^success$/i)) {
			    set = JSON.parse(data)
			    $("select#id_bookmark_set").append('<option value="' + set.id + '" selected="selected">' + set.name + '</option>')
			    $("div.add_set").hide()
			    $("form#bookmark-form").show()
			}
			else {
			    alert(textStatus + ": " + data)
			}
		    }
		)		
	}
	else {
		$("p.errors-name").show()
	}

        return false
    })    
    
    $("a.cam-refresh-image").live("click", function(){		
        var cam_id = get_id_from_cssid($(this).attr("id"))        
        $("div#cam-viewer-loading-" + cam_id).show()        
        var url = '/camimgurl/' + cam_id + "/"                
        $.get(url, function (data) {
            var newimg = new Image()
            newimg.src = data
            $("img#cam-image-" + cam_id)
                .css({
                    'backgroundColor': 'Black',
                    opacity: 1
                })
                .attr("src", newimg.src)
            $("div#cam-viewer-loading-" + cam_id).fadeOut("slow")
        })
        return false
    })    
            
    $("a.cam-refresh-video").live("click", function(){
        var cam_id = get_id_from_cssid($(this).attr("id"))        
        var vidurl = '/camvidurl/' + cam_id + "/"
        var player = $f("player-"+cam_id)
        $.get(vidurl, function (data) {
	        player.stop()
            player.setClip({url:data})
	        player.play()
        })
        return false;
    })


    var original_opacity
    $("a.remove-bookmark-link").live("click", function(){
        var bookmark_id = get_id_from_cssid($(this).attr("id"))
        var parent = $(this).parent("li.bookmark-item")
        var bset = $(this).siblings("a").children("span.bookmark-item-set-name")
        var setname = bset.text()
        var setid
        if (bset.attr("id") != undefined) {
            setid = get_id_from_cssid(bset.attr("id"))
        } else {
            setid = get_id_from_cssid($(this).parents("ul.bookmarks").attr("id"))
        }
        $.post("/favourites/remove/" + bookmark_id + "/",
            {
                csrfmiddlewaretoken: 'b7b9d6a95b3dc9486275d46f50a63865'
            },
            function(data, textStatus) {
                if (textStatus.match(/^success$/i)) {
                    parent.remove()
                    $("select#id_bookmark_set").append('<option value="' + setid + '">' + setname + '</option>')
                    $("div.bookmarkset-info ul.bookmarks li#bookmark-" + bookmark_id).remove();
                    $("ul.bookmark-viewer-list li#bookmark-viewer-" + bookmark_id).remove();
                    return false
                }
                else {
                    alert(textStatus + ": " + data)
                }
                return false
            }
        )
        return false
    }).children("img")
        .hover(
            function(){
                original_opacity = $(this).css("opacity")
                $(this).css({opacity: 1.0})
            },
            function(){
                $(this).css({opacity: original_opacity})
            }
        )


    $("form#bookmark-form").live("submit", function(event) {
        if ($("form#bookmark-form select#id_bookmark_set").val() == "")
        {    
            $("form#bookmark-form p.errors").show()
            event.preventDefault()
            return false
        } else {
            $("form#bookmark-form p.errors").hide()
            var url = $(this).attr("action")
            $.post(url,
                {
                    bookmarkset_value: $("select#id_bookmark_set").val()
                },
                function (data, success){})
        }
    })
    
   
})
