$(document).ready(function() {
$('.ws_next, .ws_prev').css({
'background-color': '#333',
'opacity': '.6',
'border-radius': '50%'
});
$(window).resize(function() {
var height = $('body').height() - 20;
var width = height * 480 / 640;
$('.player-container').css({height: height, width: width});
$('.audio-banner').css({'border': '1px solid #ccc', 'height': height, 'vertical-align': 'middle', 'text-align': 'center'});
$('.audio-banner img').css({
'margin': '0 auto',
'max-height': height - 30,
'max-width': width,
'width': 'auto',
'height': 'auto'
});
$('.audio-banner img').each (function() {
if ($(this).width() >= $(this).height()) {
$(this).css({'width': '100%', 'margin-top': (height - $(this).height() * width / $(this).width()) / 2});
} else {
$(this).css('height', '100%');
}
});
});
window.setTimeout(function() {$(window).resize();}, 100);
var video = $('.player-container video');
if (video.length > 0) {
var player = video.data('mediaelementplayer');
$(window).resize(function() {
$('.mejs-container').css('margin', '0 auto');
var height = $('body').height() - 20;
var width = height * 480 / 640;
player.media.setVideoSize(width, height);
player.setPlayerSize(width, height);
player.setControlSize();
});
window.setTimeout(function() {$(window).resize();}, 100);
window.setTimeout(function() {$(window).resize();}, 200);
}
var audio = $('.player-container audio');
if (audio.length > 0) {
var container = $('.player-container');
var player = audio.data('mediaelementplayer');
$(window).resize(function() {
var height = $('body').height() - 20;
var width = height * 480 / 640;
player.setPlayerSize(width, 0);
container.css({height: height, width: width});
});
window.setTimeout(function() {$(window).resize();}, 100);
window.setTimeout(function() {$(window).resize();}, 200);
}
});
var headID = document.getElementsByTagName("head")[0];
var newScript = document.createElement('script');
newScript.type = 'text/javascript';
newScript.src = '/public/js/jquery/1.7.1/jquery.min.js';
headID.appendChild(newScript);
//var youtubeScript = document.createElement('script');
//youtubeScript.type = 'text/javascript';
//youtubeScript.src = 'https://www.youtube.com/iframe_api';
//headID.appendChild(youtubeScript);
var youtubeScript = document.createElement('script');
youtubeScript.type = 'text/javascript';
youtubeScript.src = '/public/js/3rdparty/youtube/iframe_api.js';
headID.appendChild(youtubeScript);
var cssFile = document.createElement('link');
cssFile.id="fullhtmlreaderinner2css";
cssFile.type = 'text/css';
cssFile.href = '/public/css/fullhtmlreaderinner.css?t=' + ( new Date() ).getTime();
cssFile.rel = 'stylesheet';
cssFile.media="screen";
headID.appendChild(cssFile);
function handle(delta) {
var d=delta*-20;
parent.window.$.kbuuk.htmlreader.onFrameScroll(d);
}
function wheel(event){
var delta = 0;
if (!event) event = window.event;
if (event.wheelDelta) {
delta = event.wheelDelta/120;
if (window.opera) delta = -delta;
} else if (event.detail) {
delta = -event.detail/3;
}
if (delta) handle(delta);
if (event.preventDefault) event.preventDefault();
event.returnValue = false;
return false;
}
if (window.addEventListener) window.addEventListener("DOMMouseScroll", wheel, false);
window.onmousewheel = document.onmousewheel = wheel;
/*
window.onclick =document.click = function(ev)
{
origEl = ev.target || ev.srcElement;
if( origEl.tagName != 'IMG' )
{
$(origEl).toggleClass('selected');
}
parent.window.handleshare();
//fnSelect(origEl);
}
*/
window.onmouseup =document.mouseup = function(ev)
{
var range= null;
if (document.selection) {
if( document.getSelection().rangeCount > 0 )
{
range = document.getSelection().getRangeAt(0);
}
}
else if (window.getSelection) {
if( window.getSelection().rangeCount > 0 )
{
range = window.getSelection().getRangeAt(0);
}
}
parent.window.$.kbuuk.htmlreader.onSelected(range,ev);
origEl = ev.target || ev.srcElement;
//parent.window.$.kbuuk.htmlreader.onAnnotationClicked( origEl );
}
window.onscroll = document.onscroll = function(e)
{
parent.window.$.kbuuk.htmlreader.onIframeScroll();
}
window.onkeydown = function( e )
{
e = e || window.event;
var keyCode = e.keyCode || e.which;
switch(keyCode) {
case 37: //$.ui.keyCode.LEFT:
{
e.preventDefault();
e.stopPropagation();
parent.window.$.kbuuk.htmlreader.previous();
break;
}
case 38: //$.ui.keyCode.UP:
{
e.preventDefault();
e.stopPropagation();
parent.window.$.kbuuk.htmlreader.previous();
break;
}
case 39: //$.ui.keyCode.RIGHT:
{
e.preventDefault();
e.stopPropagation();
parent.window.$.kbuuk.htmlreader.next();
break;
}
case 40: //$.ui.keyCode.DOWN:
{
e.preventDefault();
e.stopPropagation();
parent.window.$.kbuuk.htmlreader.next();
break;
}
case 27: //$.ui.keyCode.ESCAPE:
{
break;
}
default:
return; // allow other keys to be handled
}
}
window.onclick = document.click= function( e)
{
e = e || window.event;
return parent.window.$.kbuuk.htmlreader.onContentClicked(e);
}
window.ontouchstart = document.ontouchstart= function( event)
{
event.preventDefault();
event.stopPropagation()
return parent.window.$.kbuuk.htmlreader.onContentClicked(event);
}
function jumpto(chapter, nav, e, ida)
{
e = e || window.event;
parent.window.$.kbuuk.htmlreader.jumpToChapter( chapter, nav, ida );
e.stopPropagation();
return false;
}
function fnSelect(obj) {
if (document.selection) {
var range = document.body.createTextRange();
range.moveToElementText(obj);
range.select();
//alert( document.getSelection().rangeCount );
}
else if (window.getSelection) {
var range = document.createRange();
range.selectNode(obj);
window.getSelection().addRange(range);
//alert( document.getSelection().rangeCount );
}
}
function fnDeSelect() {
if (document.selection) document.selection.empty();
else if (window.getSelection) window.getSelection().removeAllRanges();
}
function onPlayerReady(event) {
//event.target.playVideo();
event.target.setPlaybackQuality('medium');
}
function onPlayerStateChange(event) {
if (event.data == YT.PlayerState.BUFFERING || event.data == YT.PlayerState.PLAYING) {
event.target.setPlaybackQuality('medium');
}
parent.window.$.kbuuk.htmlreader.showSwipe();
}
function youtubeclicked( youtubeid, event )
{
var d = new Date();
var n = d.getTime();
var code= "var play_" + youtubeid + n + " = new YT.Player('player_' + youtubeid , { " +
" events: { " +
" 'onReady': onPlayerReady, " +
" 'onStateChange': onPlayerStateChange " +
" } " +
" }); ";
window.eval(code);
event.preventDefault();
event.stopPropagation()
return false;
}
window.selectRangeByAnnotation = function( annotation )
{
selectRange( annotation.getAttribute('startTagIndex'),
annotation.getAttribute('startContainerIndex'),
annotation.getAttribute('startOffset'),
annotation.getAttribute('endTagIndex'),
annotation.getAttribute('endContainerIndex'),
annotation.getAttribute('endOffset') );
if(annotation.getAttribute('ntype') == 'Note')
{
if( window.getSelection().rangeCount >0 )
{
parent.window.$.kbuuk.htmlreader.onAnnotationClicked( annotation, window.getSelection().getRangeAt(0) );
}
else
{
parent.window.$.kbuuk.htmlreader.onAnnotationClicked( annotation, null );
}
return false;
}
}
window.selectRange =function (startTagIndex,startContainerIndex, startOffset, endTagIndex,endContainerIndex, endOffset)
{
try{
fnDeSelect();
//console.log(startTagIndex + ',' +startOffset + ',' +endTagIndex + ','+ endOffset);
if (document.createRange) { // all browsers, except IE before version 9
var rangeObj = document.createRange();
rangeObj.setStart($('*[ida="' + startTagIndex +'"]').get(0).childNodes[startContainerIndex], startOffset);
rangeObj.setEnd($('*[ida="' + endTagIndex +'"]').get(0).childNodes[endContainerIndex], endOffset);
window.getSelection().addRange(rangeObj)
}
else { // Internet Explorer before version 9
var rangeObj = document.body.createTextRange();
rangeObj.moveToElementText($('*[ida="' + startTagIndex +'"]').get(0));
rangeObj.moveStart("character", startOffset);
rangeObj.moveToElementText($('*[ida="' + startTagIndex +'"]').get(0));
rangeObj.moveEnd("character", endOffset);
rangeObj.select();
}
}
catch( err )
{
if (document.createRange) { // all browsers, except IE before version 9
var rangeObj = document.createRange();
var startContianer = $('*[ida="' + startTagIndex +'"]').get(0);
while( (startContianer.childNodes.length < startContainerIndex) || startContianer.childNodes[startContainerIndex].nodeType !== 3 || startContianer.childNodes[startContainerIndex].nodeValue.length < startOffset)
{
startContainerIndex --;
if( startContainerIndex < 0 )
{
startContainerIndex = 0;
startOffset = 0;
break;
}
}
rangeObj.setStart($('*[ida="' + startTagIndex +'"]').get(0).childNodes[startContainerIndex], startOffset);
var endContianer = $('*[ida="' + endTagIndex +'"]').get(0);
while( (endContianer.childNodes.length < endContainerIndex) || endContianer.childNodes[endContainerIndex].nodeType !== 3 || endContianer.childNodes[endContainerIndex].nodeValue.length < endOffset)
{
endContainerIndex --;
if( endContainerIndex < 0 )
{
endContainerIndex = 0;
endOffset = 0;
break;
}
}
rangeObj.setEnd($('*[ida="' + endTagIndex +'"]').get(0).childNodes[endContainerIndex], endOffset);
window.getSelection().addRange(rangeObj)
}
}
};