KLanding/movielib/js/jquery.script.js
2015-12-12 10:00:06 +00:00

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'});
}
}});
});
});