438 lines
16 KiB
JavaScript
438 lines
16 KiB
JavaScript
// get settings
|
|
var show_fanart;
|
|
var fadeout_fanart;
|
|
var panel_top_time;
|
|
$.ajax({
|
|
dataType: "json",
|
|
url: "function.js.php?option=settings",
|
|
async: false,
|
|
success: function(set){
|
|
show_fanart = set['show_fanart'];
|
|
fadeout_fanart = set['fadeout_fanart'];
|
|
panel_top_time = set['panel_top_time'];
|
|
theme = set['theme'];
|
|
}
|
|
});
|
|
|
|
$(document).ready(function() {
|
|
// show panel header when site load
|
|
$('.panel_top_item, .panel_top_item_title').hide().fadeIn(3000);
|
|
$('.panel_top_item').mouseover(function(){
|
|
$(this).animate({
|
|
opacity: '.7'
|
|
}, {
|
|
queue:false,
|
|
duration:300
|
|
});
|
|
});
|
|
$('.panel_top_item').mouseleave(function(){
|
|
$(this).animate({
|
|
opacity: '1'
|
|
}, {
|
|
queue:false,
|
|
duration:300
|
|
});
|
|
});
|
|
|
|
// hide info panel
|
|
$('.panel_info').delay(4000).fadeOut(4000);
|
|
|
|
// show panels in loop
|
|
$(function() {
|
|
var timeout = panel_top_time * 1000;
|
|
if ($('.panel_top_item').length > 0) {
|
|
$('.panel_top_item').cycle({
|
|
timeout: +timeout
|
|
});
|
|
}
|
|
});
|
|
|
|
// view menu
|
|
$('#view_menu').mouseenter(function () {
|
|
$('#views').show();
|
|
});
|
|
$('#view_menu').mouseleave(function () {
|
|
$('#views').hide();
|
|
});
|
|
$('#watch_menu').mouseenter(function () {
|
|
$('#watches').show();
|
|
});
|
|
$('#watch_menu').mouseleave(function () {
|
|
$('#watches').hide();
|
|
});
|
|
|
|
// Default value for search input
|
|
$('input').focus(function () {
|
|
if ($(this).val() == $(this).attr('title')) {
|
|
$(this).val('');
|
|
}
|
|
}).blur(function () {
|
|
if ($(this).val() == '') {
|
|
$(this).val($(this).attr('title'));
|
|
}
|
|
});
|
|
|
|
// live search movie
|
|
var wait;
|
|
$(document).on('keyup click', '.search', function() {
|
|
clearTimeout(wait);
|
|
wait = setTimeout(function() {
|
|
var video = $('.search').attr('id');
|
|
var search = $('.search').val();
|
|
if (search.length > 0) {
|
|
var url = "function.js.php?option=search&search="+search+"&video="+video;
|
|
$.get(url, function(data) {
|
|
$('#panel_live_search').empty();
|
|
$('#panel_live_search').append(data);
|
|
});
|
|
} else {
|
|
$('#panel_live_search').empty();
|
|
}
|
|
$(document).click(function(){
|
|
$('#panel_live_search').empty();
|
|
});
|
|
}, 500);
|
|
});
|
|
$(document).on('mouseenter', '.live_search_box', function(){
|
|
$(this).addClass('live_hover');
|
|
});
|
|
$(document).on('mouseleave', '.live_search_box', function(){
|
|
$(this).removeClass('live_hover');
|
|
});
|
|
|
|
// change background
|
|
if (show_fanart == '1') {
|
|
var bg = $('#background').attr('src');
|
|
// mouse enter
|
|
$('.movie').mouseenter(function(){
|
|
var movie_id = $(this).attr('id');
|
|
$.ajax({
|
|
url: 'function.js.php?option=fexist&id='+movie_id,
|
|
dataType: 'json',
|
|
success: function(data){
|
|
if (data['fexist'] == 'exist') {
|
|
$('#background').fadeOut(500, function(){
|
|
$(this).delay(100).attr('src', 'cache/'+movie_id+'_f.jpg');
|
|
$(this).fadeIn(500);
|
|
});
|
|
}
|
|
}
|
|
});
|
|
});
|
|
// mouse leave
|
|
$('.movie').mouseleave(function(){
|
|
if (fadeout_fanart == '1') {
|
|
var movie_id = $(this).attr('id');
|
|
$.ajax({
|
|
url: 'cache/'+movie_id+'_f.jpg',
|
|
success: function(data){
|
|
$('#background').fadeOut(500, function(){
|
|
$(this).delay(100).attr('src', bg);
|
|
$(this).fadeIn(500);
|
|
});
|
|
}
|
|
});
|
|
}
|
|
});
|
|
}
|
|
|
|
// toggle panel_box
|
|
$('.panel_box').each(function(){
|
|
var opt = $(this).attr('class').replace('panel_box ', '');
|
|
if (opt == 2) {
|
|
var id = $(this).attr('id');
|
|
$('#'+id).hide();
|
|
}
|
|
});
|
|
$('.panel_box_title').click(function(){
|
|
var id = $(this).attr('id');
|
|
$('#panel_'+id).slideToggle();
|
|
var opt = $('#panel_'+id).attr('class').replace('panel_box ', '');
|
|
if (opt == 1) {
|
|
$('#panel_'+id).attr('alt', 'panel_box 2');
|
|
$.ajax({url: 'function.js.php?option=panel&id=panel_'+id+'&opt=2'});
|
|
}
|
|
if (opt == 2) {
|
|
$('#panel_'+id).attr('alt', 'panel_box 1');
|
|
$.ajax({url: 'function.js.php?option=panel&id=panel_'+id+'&opt=1'});
|
|
}
|
|
});
|
|
|
|
// animate delete button
|
|
$('.animate').mouseenter(function(){
|
|
$(this).css('opacity', '.7');
|
|
});
|
|
$('.animate').mouseleave(function(){
|
|
$(this).css('opacity', '1');
|
|
});
|
|
|
|
// delete movie
|
|
$('.delete_row').click(function(){
|
|
var id = $(this).parent().parent().attr('id');
|
|
var video = $(this).parent().parent().parent().parent().attr('id');
|
|
$('#'+id).hide();
|
|
$.ajax({url: 'function.js.php?option=delete'+video+'&id='+id});
|
|
});
|
|
|
|
// delete all
|
|
$('#delete_all').click(function(){
|
|
var c = $('#delete_all').html();
|
|
return confirm(c);
|
|
});
|
|
|
|
// actor thumbnail
|
|
$('.actor_img').mouseenter(function(){
|
|
$(this).mousemove(function(event) {
|
|
var posX = event.pageX;
|
|
var posY = event.pageY;
|
|
$(this).children('.actor_thumb').css({'top': posY-110, 'left': posX+10});
|
|
});
|
|
$(this).children('.actor_thumb').delay(500).show(0);
|
|
});
|
|
$('.actor_img').mouseleave(function(){
|
|
$('.actor_thumb').dequeue().hide();
|
|
});
|
|
|
|
// extra thumb
|
|
$(document).on('mouseenter', '.ex_thumbs img', function(){
|
|
$(this).animate({'opacity': '.7'}).dequeue();
|
|
});
|
|
$(document).on('mouseleave', '.ex_thumbs img', function(){
|
|
$(this).animate({'opacity': '1'}).dequeue();
|
|
});
|
|
$(document).on('click', '.ex_thumbs img', function(){
|
|
// opened thumb
|
|
var get_link = $(this).attr('src').slice(0, -5);
|
|
// create array for all thumbs
|
|
thumb_array = [];
|
|
$(this).parent().find('img').each(function(thumb){
|
|
thumb_array.push($(this).attr('src').slice(0, -5));
|
|
});
|
|
// actual thumb index
|
|
act = thumb_array.indexOf(get_link);
|
|
show_thumb(thumb_array[act], act, thumb_array);
|
|
});
|
|
$(document).on('click', '.ex_prev', function(){
|
|
act = act - 1;
|
|
$('.ex_thumb_con').fadeOut(300, function(){
|
|
$(this).remove();
|
|
show_thumb(thumb_array[act], act, thumb_array);
|
|
});
|
|
});
|
|
$(document).on('click', '.ex_next', function(){
|
|
act = act + 1;
|
|
$('.ex_thumb_con').fadeOut(300, function(){
|
|
$(this).remove();
|
|
show_thumb(thumb_array[act], act, thumb_array);
|
|
});
|
|
});
|
|
$(document).on('click', '.ex_thumb_con', function(){
|
|
$('.ex_thumb_con').fadeOut(300, function(){
|
|
$('.ex_thumb_con').remove();
|
|
});
|
|
});
|
|
function show_thumb(link, act, thumb_array) {
|
|
var prev = (act == 0 ? '' : '<div class="ex_prev"><</div>');
|
|
var next = (thumb_array.length == act+1 ? '' : '<div class="ex_next">></div>');
|
|
$('body').append('<div class="ex_thumb_con">'+prev+'<img id="opened" class="ex_thumb" src="' + link + '.jpg">'+next+'</div>');
|
|
$("img#opened").load(function() {
|
|
var b = 20; // border size
|
|
var img_h = $(this).height(); // get image height
|
|
var img_w = $(this).width(); // get image width
|
|
var win_h = $(window).height(); // get window height
|
|
var win_w = $(window).width(); // get window width
|
|
if (img_h > win_h - 100) { // if image height is greather than windows height
|
|
var aspect = img_w / img_h; // calculate aspect ratio
|
|
var r_h = img_h - win_h + 100; // get resize value
|
|
img_h = img_h - r_h; // set new image height
|
|
img_w = img_w - (r_h * aspect); // set new image width
|
|
}
|
|
if (img_w > win_w - 100) { // same for width is the above
|
|
var aspect = img_h / img_w;
|
|
var r_w = img_w - win_w + 100;
|
|
img_w = img_w - r_w;
|
|
img_h = img_h - (r_w * aspect);
|
|
}
|
|
var pos_x = (win_w-img_w)/2; // set position X
|
|
var pos_y = (win_h-img_h)/2; // set position Y
|
|
$('.ex_thumb_con').css({'left': '0px', 'top': '0px', 'right': '0px', 'bottom': '0px', 'position': 'fixed', 'display': 'none'});
|
|
$('.ex_thumb').css({'position': 'relative', 'height': img_h+'px', 'width': img_w+'px', 'top':pos_y-b+'px', 'left': pos_x-b+'px', 'border': b+'px solid #fff'});
|
|
$('.ex_prev, .ex_next').css({'top': (win_h-60)/2+'px', 'opacity': '.3', 'user-select': 'none'});
|
|
$('.ex_prev').css({'left': pos_x});
|
|
$('.ex_next').css({'left': pos_x+img_w-60});
|
|
$('.ex_thumb_con').fadeIn(300);
|
|
});
|
|
$('.ex_prev, .ex_next').mouseenter(function(){
|
|
$(this).dequeue().animate({opacity: '1'}, 300);
|
|
});
|
|
$('.ex_prev, .ex_next').mouseleave(function(){
|
|
$(this).dequeue().animate({opacity: '.3'}, 300);
|
|
});
|
|
}
|
|
|
|
// control remote - check connection and change logo
|
|
$.ajax({url: 'function.js.php?option=remote&f=check', dataType: 'json', success: function(data){
|
|
if ('result' in data) {
|
|
$('#r_right img').attr('src', 'templates/'+theme+'/img/xbmc_v.png');
|
|
} else {
|
|
$('#r_right img').attr('src', 'templates/'+theme+'/img/xbmc_vd.png');
|
|
}
|
|
}});
|
|
|
|
// show remote and now playing
|
|
$('#panel_remote').on('mouseenter click', function(){
|
|
keypress = true;
|
|
$.ajax({url: 'function.js.php?option=remote&f=check', dataType: 'json', success: function(data){
|
|
if ('result' in data) {
|
|
$('#r_right img').attr('src', 'templates/'+theme+'/img/xbmc_v.png');
|
|
} else {
|
|
$('#r_right img').attr('src', 'templates/'+theme+'/img/xbmc_vd.png');
|
|
}
|
|
}});
|
|
$('#panel_remote').animate({marginLeft: '10px'}, {queue: false, duration: 500, complete: function(){
|
|
$.ajax({url: 'function.js.php?option=remote&f=playing', dataType: 'json', success: function(data){
|
|
if ('type' in data) {
|
|
$('#np_details').html(data['details']);
|
|
var width = parseInt($('#bar').css('width'));
|
|
var w = (width * (parseInt(data['percentage']) / 100));
|
|
$('#prog').css('width', w+'px');
|
|
$('#now_playing').animate({marginLeft: '10px'}, {queue: false, duration: 500});
|
|
}
|
|
}});
|
|
}});
|
|
|
|
|
|
});
|
|
|
|
// hide remote and now playing
|
|
$('#panel_remote, #now_playing').mouseleave(function(){
|
|
keypress = false;
|
|
$('#panel_remote').animate({marginLeft: '-100px'}, {queue: false, duration: 500, complete: function(){
|
|
$('#now_playing').animate({marginLeft: '-500px'}, {queue: false, duration: 500});
|
|
}});
|
|
});
|
|
|
|
// remote keypresing
|
|
$(document).on('keydown', function(e) {
|
|
if (keypress == true) {
|
|
e.preventDefault();
|
|
$.ajax({url: 'function.js.php?option=remote&f='+e.keyCode});
|
|
}
|
|
});
|
|
|
|
|
|
// hide now playing on stop button
|
|
$('#stop').click(function(){
|
|
$('#now_playing').animate({marginLeft: '-500px'}, {queue: false, duration: 500});
|
|
});
|
|
|
|
// button remote action
|
|
$('#panel_remote img').click(function(){
|
|
var act = $(this).attr('id');
|
|
$.ajax({url: 'function.js.php?option=remote&f='+act});
|
|
});
|
|
|
|
// panel desc
|
|
$('.movie, .episode').mouseenter(function(){
|
|
$(this).children('.xbmc_hide').animate({opacity: 1}, {queue: false, duration: 300});
|
|
});
|
|
$('.movie, .episode').mouseleave(function(){
|
|
$(this).children('.xbmc_hide').animate({opacity: .0}, {queue: false, duration: 300});
|
|
});
|
|
|
|
// create list.m3u
|
|
$('.list').mouseenter(function(){
|
|
var file = $(this).parent().attr('id');
|
|
var id = $(this).parent().parent().attr('id');
|
|
$.ajax({url: 'function.js.php?option=remote&f=list&id='+id+'&file='+file});
|
|
});
|
|
|
|
// play movie in xbmc
|
|
$('.play').click(function(){
|
|
var id = $(this).parent().attr('id');
|
|
var video = $('#panel_list').attr('class');
|
|
$.ajax({url: 'function.js.php?option=remote&f=play&id='+id+'&video='+video});
|
|
});
|
|
|
|
// admin visible - hidden
|
|
$(document).on('click', '.visible', function(){
|
|
var id = $(this).parent().parent().attr('id');
|
|
var video = $(this).parent().parent().parent().parent().attr('id');
|
|
$(this).attr('src', 'admin/img/hidden.png');
|
|
$(this).addClass('hidden');
|
|
$(this).removeClass('visible');
|
|
$.ajax({url: 'function.js.php?option=hide'+video+'&id='+id});
|
|
});
|
|
$(document).on('click', '.hidden', function(){
|
|
var id = $(this).parent().parent().attr('id');
|
|
var video = $(this).parent().parent().parent().parent().attr('id');
|
|
$(this).attr('src', 'admin/img/visible.png');
|
|
$(this).addClass('visible');
|
|
$(this).removeClass('hidden');
|
|
$.ajax({url: 'function.js.php?option=visible'+video+'&id='+id});
|
|
});
|
|
|
|
// admin image delete
|
|
$(document).on('mouseover', '.p_exist, .f_exist', function(){
|
|
$(this).attr('src', 'admin/img/delete.png');
|
|
$(this).on('mouseleave', '', function(){
|
|
$(this).attr('src', 'admin/img/exist.png');
|
|
});
|
|
});
|
|
$(document).on('click', '.p_exist, .f_exist', function(){
|
|
var id = $(this).parent().parent().attr('id');
|
|
var video = $(this).parent().parent().parent().parent().attr('id');
|
|
var type = $(this).parent().attr('class');
|
|
$(this).remove();
|
|
$.ajax({url: 'function.js.php?option=delete'+type+'&id='+id+'&video='+video+'s'});
|
|
});
|
|
|
|
// admin banner
|
|
$(document).on('keyup', '.ban', function() {
|
|
var b = [];
|
|
var f = false;
|
|
$('.ban').each(function(){
|
|
var key = $(this).attr('id');
|
|
var val = $(this).val();
|
|
b.push(key+':'+val);
|
|
if (f == false) {
|
|
if (!$.isNumeric(val)) {
|
|
if (!val.match(/[0-9abcdefABCDEF]{6}/)) {
|
|
f = true;
|
|
}
|
|
}
|
|
}
|
|
});
|
|
banner = b.join(';');
|
|
if (f == false) {
|
|
$.ajax({
|
|
url: 'function.js.php?option=banner&banner='+banner,
|
|
success: function(){
|
|
$('#banner').attr('src', 'cache/banner_v.jpg?'+Math.random());
|
|
}
|
|
});
|
|
}
|
|
});
|
|
|
|
// test XBMC conn
|
|
$('#xbmc_test').click(function(){
|
|
var xbmc_host = $('#xbmc_host').val();
|
|
var xbmc_port = $('#xbmc_port').val();
|
|
var xbmc_login = $('#xbmc_login').val();
|
|
var xbmc_pass = $('#xbmc_pass').val();
|
|
$.ajax({url: 'function.js.php?option=remote&f=xbmc_test&xbmc_host='+xbmc_host+'&xbmc_port='+xbmc_port+'&xbmc_login='+xbmc_login+'&xbmc_pass='+xbmc_pass,
|
|
dataType: 'json',
|
|
success: function(data){
|
|
if ('result' in data) {
|
|
$('#xbmc_test div').html('<img src="admin/img/exist.png">');
|
|
$('#xbmc_test').css({'border': '2px solid #0FE800'});
|
|
$('#xbmc_test img').css({'display': 'block', 'position': 'absolute', 'margin-left': '120px'});
|
|
} else {
|
|
$('#xbmc_test div').html('<img src="admin/img/delete.png">');
|
|
$('#xbmc_test').css('border', '2px solid #FF0000');
|
|
$('#xbmc_test img').css({'display': 'block', 'position': 'absolute', 'margin-left': '120px'});
|
|
}
|
|
}});
|
|
});
|
|
});
|