var strf = function(str, values) {
    if (values) {
        jQuery.each(values, function(key, val) {
          var skey = '%{' + key + '}s';
          str = str.replace(new RegExp(skey,'g'), val);
        }); 
        
    };
    return str;    
}

var redirect = function (to, sleep) {
    var sleep = (sleep == undefined) ? 5 : sleep;
    setTimeout(function(){
            document.location = to;
    }, sleep);
};    


var animateForm = function(form_el, method) {
    var form_el = (form_el == undefined) ? "#main_form_id" : form_el;
   
    var can_focused = true;
    $(form_el).find("input").each(function(i) {        
        if ($(this).attr('type') != 'hidden') {
            /*$(this).focus( function () {
                $(this).parent().parent().addClass("focused");                    
            });   
            $(this).blur( function () {
                $(this).parent().parent().removeClass("focused");                    
            });*/
            if (can_focused) {
                //if (! $(this).parent().parent().parent().hasClass("err")) {
                //    $(this).focus();
                //}
                $(this).focus();
                can_focused = false;
            };
            $(this).keypress(function(event) {                
                if (event.keyCode == '13') {
                    if (method == undefined) {
                        $(form_el).submit();    
                    } else {
                        method();
                    }
                    return false;
                };                
            });
        };
    });
};

var addSubmitEvent = function(submit_el, form_el, before_handler) {    
    var submit_el = (submit_el == undefined) ? ".butt_sign_in" : submit_el;
    var form_el = (form_el == undefined) ? "#main_form_id" : form_el;    
    $(submit_el).click(function() {
        fl = true
        if (before_handler != undefined) {
            if (before_handler() == false) {
                fl = false;
            }
        }
        if (fl) {
            $(form_el).submit();        
        }    
        return false;
    });    
};    


function showHintHendler(){
    return false;
}
function closeHint(){
    $('#hint_dlg').hide(0);
} 

var showHint = function (ell, text) {
    var position = $(ell).offset();        
    $('#hint_dlg').css('left', position.left + 2);
    $('#hint_dlg').css('top', position.top + 35);
    $('#hint_dlg_text_id').html(text);
    $('#hint_dlg').show(500);
}

var setHints = function() {
    $('*[jHintText]').each(function() {
        var text = $(this).attr('jHintText');
        if ( text != '') {
            $(this).mouseover(function() { showHint(this, text); return false; });
            $(this).mouseleave(closeHint);
            $('#hint_dlg').mouseleave(closeHint);
        }
    });

}



var currentVideoId = null;
var userId = null
var videoList = [];
var videoOptions = {};

var currUrlParams = {};
var i18n = {};
var addthis_config = {
    services_compact: 'blogger,wordpress,livejournal,favorites,gmail,yoolink,linkedin,igoogle,amazonwishlist,diigo,more',
    ui_click: false,
    ui_language: 'en'    
};
var addthis_share = {
};

var embed_sizes = [ [320, 180 + 36], [480, 270 + 36], [640, 360 + 36] ];

var findVideo = function(id) {
    for (i = 0; i < videoList.length; i++) {
        if (videoList[i].id == id) {
            return videoList[i]
        }
    }
    return null;
};


var addVideo = function(video_data) {
    video_data = JSON.parse(video_data);
    if (video_data) {
        var video = findVideo(video_data.id);
        if (video) {
            jQuery.extend(true, video, video_data);
        } else {
            videoList.push(video_data);
        };        
    };
};

var getCurrentDomain = function() {
    return 'http://' + location.host
};    

var setVideo = function(player_id, video_url, thumb_url, options) {
    var tEll, player = $f(player_id);            
    var settings = {
        width: 689,
        height: 424,
        player_key: '',
        autoPlay: true,
        autoHide: 'never',
        autoBuffering: false,
        title: '',
        date: '',
        creator: ''
    };    
    jQuery.extend(settings, options);    
    var play_list = []
    if ((thumb_url && !settings.autoPlay) || !video_url) {
        play_list.push({        
            url: thumb_url
        });
    };
    if (video_url) {
        play_list.push({ 
            url: video_url,
            autoBuffering: settings.autoBuffering,
            bufferLength: 2,
            autoPlay: settings.autoPlay,
            scaling: "fit",
            //title: settings.title,
            details: { 
                date: settings.date, 
                creator: settings.creator
            },
            provider: 'pseudo'
        });
    };
    
    if (play_list.length > 0) { 
        if (!player) {             
            try {
            player = $f(player_id, 
                {
                    src: getCurrentDomain() + "/static/flowplayer/flowplayer.commercial.swf",
                    //wmode: 'opaque',
                    wmode: 'transparent',
                    width: settings.width,
                    height: settings.height                                                                  
                }, { 
                    key: settings.key, 
                    playlist: play_list,
                    plugins: {                                                      
                        flex: {  
                            url: getCurrentDomain() + "/static/flowplayer/buttons_flex.swf",  
                            type: "classLibrary"  
                        },   
                        controls: {  
                            url: getCurrentDomain() + '/static/flowplayer/flowplayer.controls-skinless.swf',  
                            skin: 'flex', 
                            autoHide: settings.autoHide,
                            hideDelay: 1000,
                            stop:  true
                        },
                        pseudo: {
                              url: getCurrentDomain() + '/static/flowplayer/flowplayer.pseudostreaming.swf',
                              queryString: escape('?start=${start}&rnd=' + Math.random()) 
                        }
                    }
                }
            ).load(); 
            } catch (e) { alert(e); };
        } else { 
            if (!player.isLoaded()) {
                player.load(function() {
                    player.setPlaylist(play_list).play();
                });
            } else {
                player.setPlaylist(play_list).play();
            }            
        }
    }
}

var deleteVideo = function(player_id) {
    var player = $f(player_id);
    if (player) {
        $f(player_id).unload();
    }    
}

var setProgressBar = function(progressbar_id, options) {        
    var settings = {
        width: 751,
        height: 213,
        progress_bar_area_html: '',
        progress_bar_area_html_el: '',
        status_url: '',
        getting_interval: 1000,
        status_list: '',
        start: 'slow'
    };
    jQuery.extend(settings, options);    
    
    if (settings.progress_bar_area_html && settings.progress_bar_area_html_el) {
        var progress_bar_area = $(settings.progress_bar_area_html_el);
        if  (progress_bar_area) {
            progress_bar_area.html(settings.progress_bar_area_html);
        }
    };
    if ($(progressbar_id)) {        
        var flashvars = {
            status_list: settings.status_list,
            current_url: settings.status_url, 
            getting_interval: settings.getting_interval, 
            start: settings.start
        };
        var params = {
            menu: "false",
            salign: "lt",
            wmode: 'transparent',
            bgcolor: '#000000'
        };
        var attributes = {
            id: "myDynamicContent",
            name: "myDynamicContent"
        };            
        
        swfobject.embedSWF("/static/video_editor/status.swf", progressbar_id, settings.width, settings.height, "9.0.0", "/static/swfobject/expressInstall.swf", flashvars , params, attributes);        
        return true;
    }
    return false;
}


var setToolBar = function(video_obj, options) {
    var settings = {
        downloads_el: '#tb_downloads_id',
        postonline_el: '#tb_postonline_id',
        embed_el: '#tb_embed_id',
        remix_el: '#tb_remix_id',
        mix_el: '#tb_mix_id',
        change_effects_el: '#tb_change_effects_id',
        edit_el: '#tb_edit_id',
        change_resolution_el: '#tb_change_resolution_id'        
    }
    if (options != null) {
        if (options != undefined)
            jQuery.extend(settings, options);
        var postonline = $(settings.postonline_el);
        var downloads = $(settings.downloads_el);
        var remix = $(settings.remix_el);
        var embed = $(settings.embed_el);
        var mix = $(settings.mix_el);
        var change_effects = $(settings.change_effects_el);
        var change_resolution = $(settings.change_resolution_el);
        if (postonline) {                                   
            if (video_obj.status == 3) {
                if (postonline.hasClass("dis")) {
                    postonline.removeClass("dis");
                }
            } else {                   
                if (!postonline.hasClass("dis")) {
                    postonline.addClass("dis");
                }
            }
        }
        if (downloads) {            
            if (video_obj.has_downloads && userId == video_obj.user_id) {
                if (downloads.hasClass("dis")) {
                    downloads.removeClass("dis");
                }
                if (video_obj.profile_can_download) {
                    if (downloads.hasClass("pro-dialog")) {
                        downloads.removeClass("pro-dialog");
                    }
                } else {
                    if (!downloads.hasClass("pro-dialog")) {
                        downloads.addClass("pro-dialog");
                    }
                }                
            } else {                
                if (!downloads.hasClass("dis")) {
                    downloads.addClass("dis");
                }                                
                if (downloads.hasClass("pro-dialog")) {
                    downloads.removeClass("pro-dialog");
                }
            }
        }
        if (embed) {
            if (video_obj.status == 3 && userId == video_obj.user_id) {
                if (embed.hasClass("dis")) {
                    embed.removeClass("dis");
                } /*else {
                    embed.addClass("dis");
                }*/                
            } else {                   
                if (!embed.hasClass("dis")) {
                    embed.addClass("dis");
                }
            }
        };    
        if (remix) {
            if (userId == video_obj.user_id) {
                remix.attr('href', '/video/remix/' + video_obj.id + '/');
            }    
        } 
        if (mix) {
            if (userId == video_obj.user_id && video_obj.can_mix) {
                mix.attr('href', '/video/mix/' + video_obj.id + '/');
                if (mix.hasClass("dis")) {
                    mix.removeClass("dis");
                };                 
                if (video_obj.profile_can_mix) {
                    mix.unbind('click');
                } else {
                    mix.click(proDialogClick);                    
                }                
            } else {
                mix.attr('href', 'javascript:void(0);');
                if (!mix.hasClass("dis")) {
                    mix.addClass("dis");
                };
                mix.unbind('click');                
            }
        }
        if (change_effects) {
            if (userId == video_obj.user_id && video_obj.can_change_effects) {
                change_effects.attr('href', '/video/changeEffects/' + video_obj.id + '/');
                if (change_effects.hasClass("dis")) {
                    change_effects.removeClass("dis");
                };                
                if (video_obj.profile_can_change_effects) {
                    change_effects.unbind('click');
                } else {
                    change_effects.click(proDialogClick);                    
                }
            } else {
                change_effects.attr('href', 'javascript:void(0);');
                if (!change_effects.hasClass("dis")) {
                    change_effects.addClass("dis");
                };
                change_effects.unbind('click');
            }
        }        
        if (change_resolution) {
            if (userId == video_obj.user_id && video_obj.can_render) {
                if (change_resolution.hasClass("dis")) {
                    change_resolution.removeClass("dis");
                }                 
            } else {
                if (!change_resolution.hasClass("dis")) {
                    change_resolution.addClass("dis");
                }                             
            }
        }

    }     
}

var setVideoData = function(video_obj, options, player_id, is_play) {
    is_play = (is_play == undefined) ? false : is_play;        
    if (currentVideoId) {
        var thumb_link = $('#' + currentVideoId + '_thumb_link_id');
        if (thumb_link && thumb_link.hasClass('sel')) {
            thumb_link.removeClass('sel');
        }
    }        
    if (video_obj) {
        var thumb_link = $('#' + video_obj.id + '_thumb_link_id');
        if (thumb_link && !thumb_link.hasClass('sel')) {
            thumb_link.addClass('sel');                
        }            
    }
    currentVideoId = video_obj.id;    
    
    if (options.title_el) {
        var title = $(options.title_el);
        if (title) {
            if (video_obj.status == 3)
                title.html(video_obj.title);   
            else
                title.html(video_obj.title + ' (<span class="st' + video_obj.status + '">' + video_obj.status_title + '</span>)');   
        };        
    };
    
    var status = (is_play && video_obj.status == 2 && video_obj.video_url) ? 3 : video_obj.status;
    switch(status) {
        case 1:
            deleteVideo(player_id);
            $("#" + player_id).html('<img src="' + video_obj.thumb_player_url + '" alt="'+ video_obj.status_title + '" width="' + options.width + '" height="' + options.height + '" border="0" />');
            break
        case 2:
            try {                 
                deleteVideo(player_id);                
                if (!setProgressBar(options.progressbar_opt.progressbar_id, $.extend({}, options.progressbar_opt, { status_url: strf(options.progressbar_opt.status_url, {id: video_obj.id})  }))) {                    
                    $("#" + player_id).html('<img src="' + video_obj.thumb_player_url + '" alt="'+ video_obj.status_title + '" width="' + options.width + '" height="' + options.height + '" border="0" />');            
                };
            } catch(e) {               
                $("#" + player_id).html('<img src="' + video_obj.thumb_player_url + '" alt="'+ video_obj.status_title + '" width="' + options.width + '" height="' + options.height + '" border="0" />');            
            }    
            break
        case 3:       
            jQuery.extend(options, {title: video_obj.title, date: video_obj.date, creator: video_obj.creator});
            setVideo(player_id, video_obj.video_url, video_obj.thumb_player_url, options);        
            break
        default:
            deleteVideo(player_id);
            $("#" + player_id).html('<img src="' + video_obj.thumb_player_url + '" alt="'+ video_obj.status_title + '" width="' + options.width + '" height="' + options.height + '" border="0" />');            
    }
    setToolBar(video_obj, options.toolbar);
}

var refreshVideo = function(video, auto_play) {
    var curr_video = findVideo(video.id);
    if (curr_video != null) {
        jQuery.extend(curr_video, video);
        var thumb_link = $('#' + video.id + '_thumb_link_id');
        if (thumb_link) {
            if (video.is_rerendering) {
                if (!thumb_link.hasClass('render')) {
                    thumb_link.addClass('render');
                }
            } else {
                if (thumb_link.hasClass('render')) {
                    thumb_link.removeClass('render');
                }            
            }
        };
        $('#' + video.id + '_thumb_id').attr('src', curr_video.thumb_url);        
        $('#' + video.id + '_length_id').html(curr_video.length_str);
        $('#' + video.id + '_status_id').html(curr_video.status_title);
        $('#' + video.id + '_title_link_id').html(curr_video.title);
        $('#' + video.id + '_title_link_id').attr('title', curr_video.title);            

        var play_link = $('#' + video.id + '_play_link_id');
        var share_link = $('#' + video.id + '_share_link_id');
        var mix_link = $('#' + video.id + '_mix_link_id');
        var change_effect_link = $('#' + video.id + '_change_effects_link_id');
        var change_resolution_link = $('#' + video.id + '_change_resolution_link_id');
        if (video.can_play) {
            if (play_link.hasClass('dis')) {
                play_link.href = video.external_url;
                play_link.removeClass('dis');
                play_link.click(function() {
                    setVideoData(video, videoOptions, 'video_player_id', true);                    
                    return false;        
                });                      
                share_link.removeClass('dis');
                share_link.click(function () {
                    tbPostOnlineClick(video.id);
                    return false;
                });                            
            } 
        } else {
            if (!play_link.hasClass('dis')) {
                play_link.addClass('dis');
                play_link.click(function() {
                    return false;        
                });
                play_link.href = 'javascript:void(0);';
                share_link.addClass('dis');
                share_link.click(function () {
                    return false;
                });                
            } 
        };
        if (video.can_mix) {
            mix_link.attr('href', '/video/mix/' + video.id + '/');
            if (mix_link.hasClass('dis')) {
                mix_link.removeClass('dis');
            };    
            if (video.profile_can_mix) {
                mix_link.unbind('click');
            } else {
                mix_link.click(proDialogClick);                    
            }                  
        } else {
            mix_link.attr('href', 'javascript:void(0);');
            if (!mix_link.hasClass('dis')) {
                mix_link.addClass('dis');
            } 
            mix_link.unbind('click');            
        };
        if (video.can_change_effects) {
            change_effect_link.attr('href', '/video/changeEffects/' + video.id + '/');
            if (change_effect_link.hasClass('dis')) {
                change_effect_link.removeClass('dis');
            };    
            if (video.profile_can_change_effects) {
                change_effect_link.unbind('click');
            } else {
                change_effect_link.click(proDialogClick);                    
            }                  
        } else {
            change_effect_link.attr('href', 'javascript:void(0);');
            if (!change_effect_link.hasClass('dis')) {
                change_effect_link.addClass('dis');
            } 
            change_effect_link.unbind('click');            
        };
        if (video.can_render) {
            if (change_resolution_link.hasClass('dis')) {
                change_resolution_link.removeClass('dis');
            }    
        } else {
            if (!change_resolution_link.hasClass('dis')) {
                change_resolution_link.addClass('dis');
            }        
        }
        
        if (auto_play == false)
            setVideoData(curr_video, jQuery.extend({autoPlay: false}, videoOptions), 'video_player_id');
        else
            setVideoData(curr_video, videoOptions, 'video_player_id');
    };
};

var renderingFinish = function(status, video_data) {
    video_data = JSON.parse(video_data)      
    refreshVideo(video_data);
};


var confirmDlg = function(callback, text, title) {
    if (text != undefined) {
        $('#confirm_dlg_text_id').html(text);
    };    
    if (title != undefined) {
        $('#confirm_dlg_title_id').html(title);
    }
    $("#confirm_dlg_btn_yes_id").click(function() {
        if (jQuery.isFunction(callback)) {
            callback();
        };
        $.modal.close();
    });
    $('#confirm_dlg').modal({
        position: ["20%"],
        containerId:'confirm-container',
        onClose: function (d) {
            $.modal.close();	
        }
    });
}

var errorDlg = function(callback, text, title) {
    if (text != undefined) {
        $('#error_dlg_text_id').html(text);
    };    
    if (title != undefined) {
        $('#error_dlg_title_id').html(title);
    }
    $("#error_dlg_btn_yes_id").click(function() {
        if (jQuery.isFunction(callback)) {
            callback();
        };
        $.modal.close();
    });
    $('#error_dlg').modal({
        position: ["20%"],
        containerId:'error-container',
        onClose: function (d) {
            $.modal.close();	
        }
    });
}
  
var proDlg = function(text) {
    if (text != undefined) {
        $('#error_dlg_text_id').html(text);
    };    
    $('#pro_dlg').modal({
        position: ["20%"],
        containerId:'pro-container',
        onClose: function (d) {
            $.modal.close();	
        }
    });
}

  
var tbEditClick = function(id) {
    var video = findVideo(id);
    if (video) {
        $("#edit_dlg_form_id").load('/video/edit/?id=' + id + '&ajax=yes', function() {                    
            $('#edit_dlg').modal({
                position: ["20%"],
                containerId:'edit-container',
                onShow: function (dialog) {
                    $('#edit_dlg_btn_save_id').click(function (e) {
                        $.post('/video/edit/?ajax=yes', $("#edit_dlg_form_id").serialize(), function(data) {
                                if (data.success) {
                                    refreshVideo(data.data, false);
                                    $.modal.close();
                                } else {
                                    $("#edit_dlg_form_id").html(data.form);
                                    $('form.jNice').jNice(); 
                                    animateForm('#edit_dlg_form_id', function() { $('#edit_dlg_btn_save_id').click(); });                                    
                                }                            
                            }, 
                            "json"
                        )
                    });
                    $('form.jNice').jNice();                    
                    animateForm('#edit_dlg_form_id', function() { $('#edit_dlg_btn_save_id').click(); });
                },
                onClose: function (d) {
                    $.modal.close();	
                }
            });
        });
    }
};


var tbChangeResolutionClick = function(id) {
    var video = findVideo(id);
    if (video)  {
        if (!video.profile_can_download) {
            proDlg();
            return false;
        }
        
        $("#change_resolution_dlg_cont").load('/video/rerender/?id=' + id + '&ajax=yes', function() {                    
            $('#change_resolution_dlg').modal({
                position: ["20%"],
                containerId:'change_resolution-container',
                onShow: function (dialog) {
                    var render_click = function (e) {
                        $.post('/video/rerender/?ajax=yes', $("#change_resolution_dlg_form_id").serialize(), function(data) {
                                if (data.success) {
                                    refreshVideo(data.data, false);
                                    $.modal.close();                                    
                                } else {
                                    $("#change_resolution_dlg_cont").html(data.form);
                                    $('#change_resolution_dlg_btn_render_id').click(render_click);                    
                                    $('#change_resolution_dlg_btn_upgrade_id').click(upgrade_click);
                                    $('#change_resolution_dlg_resolution_id')[0].onchange = function() {change_resolution();};
                                    change_resolution();                                    
                                    $('form.jNice').jNice(); 
                                    animateForm('#change_resolution_dlg_form_id', function() {  $('#change_resolution_dlg_btn_render_id').click(); });                                    
                                }                            
                            }, 
                            "json"
                        )
                    };                    
                    var upgrade_click = function (e) {
                        $.post('/video/rerender/?ajax=yes&upgrade=yes', $("#change_resolution_dlg_form_id").serialize(), function(data) {
                                if (data.success) {
                                    $.modal.close();                                    
                                    location.href = data.redirect_to
                                } else {
                                    $("#change_resolution_dlg_cont").html(data.form);
                                    $('#change_resolution_dlg_btn_render_id').click(render_click);                    
                                    $('#change_resolution_dlg_btn_upgrade_id').click(upgrade_click);
                                    $('#change_resolution_dlg_resolution_id')[0].onchange = function() {change_resolution();};
                                    change_resolution();                                    
                                    $('form.jNice').jNice(); 
                                    animateForm('#change_resolution_dlg_form_id', function() {  $('#change_resolution_dlg_btn_upgrade_id').click(); });                                    
                                }                            
                            }, 
                            "json"
                        )
                    };                                        
                    
                    var get_resolution_data = function(val) {
                        for (var i = 0; i < resolutions_cost.length; i++) {                            
                            if (resolutions_cost[i][0] == val) {
                                return resolutions_cost[i];
                            }
                        }
                        return [0, 0, 'unknown'];
                    }
                    
                    
                    var change_resolution = function() {
                        var val = parseInt($('#change_resolution_dlg_resolution_id').val());
                        if ($.inArray(val, legal_resolutions) >= 0) {
                            $('#change_resolution_dlg_btn_upgrade_id').hide();
                            $('#change_resolution_dlg_msg_upgrade_id').hide();
                            $('#change_resolution_dlg_btn_render_id').show();
                        } else {
                            $('#change_resolution_dlg_btn_render_id').hide();
                            $('#change_resolution_dlg_btn_upgrade_id').show();
                            $('#change_resolution_dlg_msg_upgrade_id').show();
                            var res_data = get_resolution_data(val);
                            $('#change_resolution_dlg_cost_id').html(res_data[1]);
                            $('#change_resolution_dlg_resolution_name_id').html(res_data[2]);
                            
                        }                        
                    };
                    $('#change_resolution_dlg_resolution_id')[0].onchange = function() {change_resolution();};
                    change_resolution();
                    
                    $('#change_resolution_dlg_btn_render_id').click(render_click);                    
                    $('#change_resolution_dlg_btn_upgrade_id').click(upgrade_click);                    
                    $('form.jNice').jNice();                    
                    animateForm('#change_resolution_dlg_form_id', function() { $('#change_resolution_dlg_btn_render_id').click(); });                    
                    animateForm('#change_resolution_dlg_form_id', function() { $('#change_resolution_dlg_btn_upgrade_id').click(); });                    
                },
                onClose: function (d) {
                    $.modal.close();	
                }
            });
        });
    }
};

var YoutubeBtnClick = function(id) {
    showBusyOverlay($('#postonline_dlg')[0], {opacity: 0}, {color: '#C2FE00'});
    $.post('/video/youtube/upload/'+ id +'/status/', {}, function(data) {
            doObjectLoad();
            $("#postonline_dlg_msg_id").html('<div>' + data.message + '</div>');
            if (!data.is_auth) {
                window.open('/video/youtube/upload/'+ id +'/auth/', "");
            };
        }, 
        "json"
    );
    return false;
}

var tbPostOnlineClick = function(id) {
    var video = findVideo(id);
    if (video) {
        $("#postonline_dlg_id_id").attr('value', id);
        $("#postonline_dlg_email_id").attr('value', '');
        $("#postonline_dlg_message_id").html('');
        $("#postonline_dlg_msg_id").html('');
        $("#postonline_dlg_youtube_link_id").click(function() { YoutubeBtnClick(id); return false; });
        
        addthis_share = jQuery.extend(addthis_share, {
            url: video.external_url,            
            title: video.title,
            description: video.description,
            template: i18n.default_video_description + ' "{{title}}": {{url}}'
        }); 
        $('.addthis_button_twitter').attr('href', strf('http://www.addthis.com/bookmark.php?pub=flixtime&v=250&s=twitter&url=%{url}s&title=%{title}s&template=%{template}s', addthis_share))
        $('.addthis_button_facebook').attr('href', strf('http://www.addthis.com/bookmark.php?pub=flixtime&v=250&s=facebook&url=%{url}s&title=%{title}s&content=%{template}s', addthis_share))
        $('.addthis_button_myspace').attr('href', strf('http://www.addthis.com/bookmark.php?pub=flixtime&v=250&s=myspace&url=%{url}s&title=%{title}s&template=%{template}s', addthis_share))
        addthis.button('.addthis_button_compact', addthis_config, addthis_share);        
        $('#postonline_dlg_url_id').attr('value', video.external_url);
        
        $('#meta_title_id').attr('content', video.title);
        $('#meta_description_id').attr('content', i18n.default_video_description + ' "' + video.title + '"');
        $('#meta_image_src_id').attr('href', video.thumb_url);
        
        
        $('#postonline_dlg').modal({
            position: ["20%"],
            containerId:'postonline-container',
            onShow: function (dialog) {
                $('#postonline_dlg_btn_send_id').click(function (e) {
                    showBusyOverlay($('#postonline_dlg')[0], {opacity: 0}, {color: '#C2FE00'});
                    $.post('/video/send/', $("#postonline_dlg_form_id").serialize(), function(data) {
                            doObjectLoad();
                            if (data.success) {
                                $("#postonline_dlg_msg_send_id").html(data.message);
                                setTimeout($.modal.close, 3000);                                
                            } else {
                                $("#postonline_dlg_form_id").html(data.form);
                                $('form.jNice').jNice();
                                animateForm('#postonline_dlg_form_id', function() { $('#postonline_dlg_btn_send_id').click(); });
                            };                        
                        }, 
                        "json"
                    )
                });
                $('form.jNice').jNice();
                animateForm('#postonline_dlg_form_id', function() { $('#postonline_dlg_btn_send_id').click(); });
            },
            onClose: function (d) {
                $.modal.close();	
            }            
        });
    }
};



var getEmbedData = function(video) {
    var sizes = embed_sizes[parseInt($('#embed_dlg_size').val())];
    var autoPlay = Boolean($('input:radio[name=autoplay]:checked').val());
    var loop = Boolean($('input:radio[name=loop]:checked').val());
    var options = {
        width: sizes[0],
        height: sizes[1],
        autoPlay: autoPlay,
        thumb_url: video.thumb_player_url
    };
    var player = $f();
    var code = player.embed(options).getEmbedCode();
    return code                        
}


var tbEmbedClick = function(id) {
    var video = findVideo(id);
    if (video) {
        $('#embed_dlg').modal({
            position: ["20%"],
            containerId:'downloads-container',
            onShow: function (dialog) {
                for(var i=0; i < embed_sizes.length; i++) {
                    $('#embed_dlg_size').append('<option value="' + i + '">' + embed_sizes[i][0] + ' x ' + embed_sizes[i][1] + '</option>');                                        
                }                                
                $('form.jNice').jNice();
                
                $('#embed_dlg_html').html(getEmbedData(video));                    
                
                $('#embed_dlg_size')[0].onchange = function() {
                    $('#embed_dlg_html').html(getEmbedData(video));
                };
                $('.jNiceRadio').click(function(){
                    $('#embed_dlg_html').html(getEmbedData(video));
                });                
            },
            onClose: function (d) {
                $.modal.close();	
            }
        });
    }
};

        
var tbDeleteClick = function(id) {
    var video = findVideo(id);
    if (video) {
        confirmDlg(function() {
            document.location = "/video/delete/" + id + "/?" + jQuery.param(currUrlParams);
        }, strf(i18n.delete_video_confirm_text, {title: video.title}));
    }            
};
        
        
var tbDownloadsClick = function(id) {    
    var video = findVideo(id);
    if (video) {
        $("#downloads_dlg_ul_id").load('/video/downloads/' + id + '/', function() {
            $('#downloads_dlg').modal({
                position: ["20%"],
                minWidth: 250,
                maxWidth: 250,
                containerId:'downloads-container',
                onClose: function (d) {
                    $.modal.close();	
                }
            });
        });                 
    }
};

var proDialogClick = function() {    
    proDlg();
    return false;
}

var toolBarInit = function() {
    /*$('#tb_edit_id').click(function () {
        if (!$(this).hasClass('dis')) {
            tbEditClick(currentVideoId);
        }
        return false;
    });*/
    $("#tb_tools_id_wrap").hover(
        function(){
            $('.tools_popup',this).css('display', 'block');						
        }, 
        function(){
            $('.tools_popup',this).css('display', 'none');	
        }
    );    
    $('#tb_edit_id').click(function() {
        if (!$(this).hasClass("dis")) {
            tbEditClick(currentVideoId);
        };    
        return false;
    });     
    $('#tb_change_resolution_id').click(function() {
        if (!$(this).hasClass("dis")) {
            tbChangeResolutionClick(currentVideoId);
        };    
        return false;
    });    
    $('#tb_downloads_id').click(function () {
        if (!$(this).hasClass('dis')) {
            if ($(this).hasClass("pro-dialog")) {
                proDialogClick();
            } else {
                tbDownloadsClick(currentVideoId);
            }
        };    
        return false;                
    });            
    $('#tb_postonline_id').click(function () {
        if (!$(this).hasClass('dis')) {
            tbPostOnlineClick(currentVideoId);
        };    
        return false;
    });
    $('#tb_embed_id').click(function () {
        if (!$(this).hasClass('dis')) {
            tbEmbedClick(currentVideoId);
        };    
        return false;
    });    
};


var id_video_menu_close = null;
var video_menu_timer = null;
function jMenu(id){
     if(id_video_menu_close==id){
          clearTimeout(video_menu_timer);
     }
     if($('#m_ul_'+id).css('display')!='block'){
          $('#m_'+id).addClass('cur');
          $('#m_ul_'+id).css('display','block');
     }
     return false;
}

function jMenu2(id){
     if($('#m_ul_'+id).css('display')=='block'){
          $('#m_ul_'+id).css('display','none');
          $('#m_'+id).removeClass('cur');
     }
     return false;
}
function jMenuClose(id){
     video_menu_timer=setTimeout('jMenu2('+id+')', 120);
     id_video_menu_close=id;
}        

var videoListInit = function(autoPlay) {
    autoPlay = (autoPlay == undefined) ? false : autoPlay;
    jQuery.each(videoList, function(i) {                                
        var obj = this;
        var playClick = function() {
            setVideoData(obj, videoOptions, 'video_player_id');                    
            return false;
        };
        $('#' + this.id + '_thumb_link_id').click(playClick);
        $('#' + this.id + '_title_link_id').click(playClick);
        if  (obj.can_play) {
            $('#' + this.id + '_play_link_id').click(function() {
                setVideoData(obj, videoOptions, 'video_player_id', true);                    
                return false;        
            });
            $('#' + this.id + '_share_link_id').click(function () {
                tbPostOnlineClick(obj.id);
                return false;
            });            
        };                
        $('#' + this.id + '_edit_link_id').click(function() {                    
            tbEditClick(obj.id);
            return false;
        });
        var change_resolution_link = $('#' + this.id + '_change_resolution_link_id');
        change_resolution_link.click(function() {
            if (!change_resolution_link.hasClass("dis")) {
                tbChangeResolutionClick(obj.id);
            };    
            return false;
        });
        $('#' + this.id + '_delete_link_id').click(function() {                    
            tbDeleteClick(obj.id);
            return false;
        });
        if (i == 0) {            
            setVideoData(obj, jQuery.extend(true, {autoPlay: autoPlay}, videoOptions), 'video_player_id');
        }                
    });

    jQuery('a.tools_list').hover(
        function(){
            jMenu($(this).attr('id').split('m_')[1]);
        },
        function(){
            jMenuClose($(this).attr('id').split('m_')[1]);
        }
    );
    
    
    $('.pro-dialog').each(function(i) {
        $(this).click(proDialogClick);
    });
};

var deleteAccount = function(confirm_msg) {
    $('#profile_delete_id').click(function() {                    
        confirmDlg(function() {
            document.location = $('#profile_delete_id').attr('href');
        }, confirm_msg);
        return false;
    });
}
