/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
//document.write('');
//document.write('');
//document.write('');
var context = "";
var localeChain = "zh_CN";
var context = null;
var pdfDocs = null;
//var pdfDoc = null;
var pageNums = null;
//var pageNum = 1;
var cuur_scale = 1;
var url = '';
$("script[sudy-wp-context]").each(function (i) {
context = $(this).attr("sudy-wp-context");
if (context) {
context = "/" + context;
}else{
context="";
}
});
var fls = flashChecker();
if (/Android|Windows Phone|webOS|iPhone|iPod|iPad|BlackBerry/i.test(navigator.userAgent)) {
fls.f = 0;
// localeChain = "en_US";
}
if (fls.f === 0) {
document.write('');
}
$().ready(function () {
// document.write("您安装了flash,当前flash版本为: " + fls.v + ".x");
$("a[sudy-wp-player]").each(function (i) {
var _href = $(this).attr("href");
var _sudyvideoplayersrc = $(this).attr("sudy-wp-player");
_href = _href.substring(0, _href.lastIndexOf("/") + 1) + _sudyvideoplayersrc;
if (swfPlayer(_href) !== null) {
var prev = $($(this)).prev("img[src*=icon");
$($(this)).replaceWith("
");
if (prev) {
prev.remove();
}
} else if (!jsPlayer(_href)) {
$(this).attr("href", _href);
}
});
$(".wp_pdf_player,div[sudyplayer='wp_pdf_player'],img[sudyplayer='wp_pdf_player']").each(function (i) {
if (!$(this).attr("class")) {
$(this).css("width", "100%");
$(this).css("height", "700px");
}
if (!$(this).attr("class")) {
$(this).attr("class", $(this).attr("sudyplayer"));
}
var id = $(this).attr("id");
var swfsrc = $(this).attr("swsrc");
var pdfsrc = $(this).attr("pdfsrc");
var flexpaper = (context?context:"") + "/_js/_portletPlugs/swfPlayer/flexpaper/FlexPaper_flash/FlexPaperViewer";
var uuid = Math.random().toString();
/**
* 如果本地安装了flash则用原来的方式播放,如果没有安装flash则使用新的方式播放
*/
$(this).html('');
if (!document.getElementById("sudy-pdf-canvas"+id) || !document.getElementById("sudy-pdf-canvas"+id).getContext) {
$(this).html("");
if (true) {
new FlexPaperViewer(flexpaper, id, {config: {
SwfFile: escape(swfsrc + "?src=" + pdfsrc + "&t=" + uuid),
Scale: 1.0,
ZoomTransition: "easeOut",
ZoomTime: 0.5,
ZoomInterval: 0.2,
FitPageOnLoad: false,
FitWidthOnLoad: false,
FullScreenAsMaxWindow: false,
ProgressiveLoading: false,
MinZoomSize: 0.2,
MaxZoomSize: 5,
SearchMatchAll: false,
InitViewMode: "Portrait",
PrintPaperAsBitmap: false,
ViewModeToolsVisible: true,
ZoomToolsVisible: true,
NavToolsVisible: true,
CursorToolsVisible: false,
SearchToolsVisible: false,
localeChain: localeChain
}});
}
return;
}
if(true){
var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串
var isIE = userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1; //判断是否IE<11浏览器
if(isIE){
$(this).replaceWith('');
return;
}
$(this).replaceWith('');
return;
}
if(pdfDocs == null){
pdfDocs = new Map();
pageNums = new Map();
}
$(this).html('' +
'
' +
'
' +
'
' +
'

' +
'

' +
'
' +
'
1' +
'
/' +
'
2' +
'
' +
'
' +
'
' +
'
' +
'
' +
'
' +
'
');
url = $(this).attr("pdfsrc");
PDFJS.getDocument(url).then(function (pdfDoc_) {
pdfDocs.set(id,pdfDoc_);
var pdfDoc = pdfDoc_;
var pageNum = pageNums.get(id);
if(!pageNum){
pageNum=1;
}
queueRenderPage(pageNum, -1,id);
var selectTemplate = '';
for (var i = 0; i < pdfDoc.numPages; i++) {
selectTemplate += ''
}
$(".p-go"+id).html(selectTemplate);
$(".p-pages"+id).html(pdfDoc.numPages);
});
$(".p-go"+id).on('change', function () {
var pageNum = parseInt($(".p-go"+id).val());
var pdfDoc = pdfDocs.get(id);
if (pageNum) {
if (pageNum < 0) {
pageNum = 1;
} else if (pageNum > pdfDoc.numPages) {
pageNum = pdfDoc.numPages;
}
pageNums.set(id,pageNum);
queueRenderPage(pageNum, -1,id);
}
});
var zoomIn = document.getElementById('zoomIn'+id);
var zoomOut = document.getElementById('zoomOut'+id);
zoomIn.addEventListener('click', function () {
var pageNum = pageNums.get(id);
if(!pageNum){
pageNum=1;
}
var _cuur_scale = cuur_scale - 0.1;
if (_cuur_scale <= 0) {
_cuur_scale = cuur_scale;
}
queueRenderPage(pageNum, cuur_scale - 0.1,id);
});
zoomOut.addEventListener('click', function () {
var pageNum = pageNums.get(id);
if(!pageNum){
pageNum=1;
}
queueRenderPage(pageNum, cuur_scale + 0.1,id);
});
});
// $(".wp_pdf_player,div[sudyplayer='wp_pdf_player'],img[sudyplayer='wp_pdf_player']").each(function(i) {
// if (!$(this).attr("class")) {
// $(this).css("width", "100%");
// $(this).css("height", "700px");
// }
// if(!$(this).attr("class")){
// $(this).attr("class",$(this).attr("sudyplayer"));
// }
// var id = $(this).attr("id");
// var swfsrc = $(this).attr("swsrc");
// var pdfsrc = $(this).attr("pdfsrc");
// var flexpaper = context + "/_js/_portletPlugs/swfPlayer/flexpaper/FlexPaper_flash/FlexPaperViewer";
// var uuid = Math.random().toString();
// var sudy_wp_player = $(this).attr("sudy-wp-player");
// if ($(this)[0].tagName == "IMG") {
// $($(this)).replaceWith("");
// }
// /**
// * 如果本地安装了flash则用原来的方式播放,如果没有安装flash则使用新的方式播放
// */
// if (fls.f) {
// new FlexPaperViewer(flexpaper, id, {config: {
// SwfFile: escape(swfsrc + "?src=" + pdfsrc + "&t=" + uuid),
// Scale: 1.0,
// ZoomTransition: "easeOut",
// ZoomTime: 0.5,
// ZoomInterval: 0.2,
// FitPageOnLoad: false,
// FitWidthOnLoad: true,
// FullScreenAsMaxWindow: false,
// ProgressiveLoading: false,
// MinZoomSize: 0.2,
// MaxZoomSize: 5,
// SearchMatchAll: false,
// InitViewMode: "Portrait",
// PrintPaperAsBitmap: false,
// ViewModeToolsVisible: true,
// ZoomToolsVisible: true,
// NavToolsVisible: true,
// CursorToolsVisible: false,
// SearchToolsVisible: false,
// localeChain: localeChain
// }});
// } else {
// var pdfUrl = pdfsrc.substring(0, pdfsrc.lastIndexOf("/"));
// var pdfName = pdfsrc.substring(0, pdfsrc.lastIndexOf("."));
// var sudyImgLen = 0;
// $.ajax({
// url: "http://" + location.host + pdfName + ".json",
// type: 'get',
// data: '',
// dataType: 'json',
// async:false,
// success: function(data) {
// try{
// sudyImgLen = data[0].pdfImgLen;
// }catch(e){
// sudyImgLen = 0;
// }
// },
// error: function(res) {
// sudyImgLen = 0;
// }
//
// });
// if (sudyImgLen > 0) {
// var _data = "[";
// for (var i = 0; i < sudyImgLen; i++) {
// _data += "{\"src\": \"" + pdfName + "_" + (i + 1) + ".png" + "\",\"width\":\"100\",\"height\": \"100\"}";
// if (i < (sudyImgLen - 1)) {
// _data += ",";
// }
// }
// _data += "]";
// $(this).html("");
// pictureViewer(context);
// } else {
//// var flexPaperViewer = new FlexPaperViewer("FlexPaperViewer", id, {config: {
//// IMGFiles: pdfName + '_{page}.png',
//// JSONFile: pdfUrl + "/" + $(this).attr("sudy-wp-player"),
//// PDFFile: pdfsrc,
//// Scale: 1.0,
//// ZoomTransition: "easeOut",
//// ZoomTime: 0.5,
//// ZoomInterval: 0.2,
//// FitPageOnLoad: false,
//// FitWidthOnLoad: true,
//// FullScreenAsMaxWindow: false,
//// ProgressiveLoading: false,
//// MinZoomSize: 0.2,
//// MaxZoomSize: 5,
//// SearchMatchAll: false,
//// InitViewMode: "Portrait",
//// RenderingOrder: 'html,flash',
//// PrintPaperAsBitmap: false,
//// ViewModeToolsVisible: true,
//// ZoomToolsVisible: true,
//// NavToolsVisible: true,
//// CursorToolsVisible: false,
//// SearchToolsVisible: false,
//// jsDirectory: context + '/_js/_portletPlugs/swfPlayer/flexpaper2/js-adaptive/',
//// localeDirectory: context + '/_js/_portletPlugs/swfPlayer/flexpaper2/locale/',
//// localeChain: localeChain
//// }});
// }
// }
// });
});
function onPrevPage(id) {
var pdfDoc = pdfDocs.get(id);
var pageNum = pageNums.get(id);
if(!pageNum){
pageNum=1;
}
pageNum--;
if (pageNum <= 1) {
pageNum=1;
}
pageNums.set(id,pageNum);
queueRenderPage(pageNum, -1,id);
}
/**
* Displays next page.
*/
function onNextPage(id) {
var pdfDoc = pdfDocs.get(id);
var pageNum = pageNums.get(id);
if(!pageNum){
pageNum=1;
}
if (pageNum >= pdfDoc.numPages) {
return;
}
pageNum++;
pageNums.set(id,pageNum);
queueRenderPage(pageNum, -1,id);
}
function queueRenderPage(num, _scale,id) {
var pdfDoc = pdfDocs.get(id);
var num = pageNums.get(id);
if(!num){
num=1;
}
pdfDoc.getPage(num).then(function getPage(page) {
var viewport = null;
var scale = 1;
if (_scale > 0) {
scale = _scale;
viewport = page.getViewport(scale);
} else {
viewport = page.getViewport(scale);
var wrapw = parseInt($("#wrap"+id).css("width"));
if (wrapw < viewport.width) {
scale = wrapw / viewport.width;
viewport = page.getViewport(scale)
}
}
var canvas = document.getElementById('sudy-pdf-canvas'+id);
context = canvas.getContext('2d');
canvas.height = viewport.height;
canvas.width = viewport.width;
var renderContext = {
canvasContext: context,
viewport: viewport
};
cuur_scale = scale;
page.render(renderContext);
if (canvas.width > parseInt($(".wp_pdf_player").css("width"))) {
if (_scale > 0) {
//$(".wp_pdf_player").css("width", (canvas.width + 5) + "px");
}
} else {
//$(".wp_pdf_player").css("width", (parseInt($(window).width()) - 16) + "px");
}
});
$(".p-active"+id).html(num);
}
function swfPlayer(url) {
var r, re;
re = /.(swf)$/i;
r = url.match(re);
return r;
}
function jsPlayer(url) {
var r, re;
re = /.(js)$/i;
r = url.match(re);
return r;
}
function flashChecker() {
var hasFlash = 0; //是否安装了flash
var flashVersion = 0; //flash版本
try{
if (document.all) {
var swf = new ActiveXObject('ShockwaveFlash.ShockwaveFlash');
if (swf) {
hasFlash = 1;
VSwf = swf.GetVariable("$version");
flashVersion = parseInt(VSwf.split(" ")[1].split(",")[0]);
}
} else {
if (navigator.plugins && navigator.plugins.length > 0) {
var swf = navigator.plugins["Shockwave Flash"];
if (swf) {
hasFlash = 1;
var words = swf.description.split(" ");
for (var i = 0; i < words.length; ++i) {
if (isNaN(parseInt(words[i])))
continue;
flashVersion = parseInt(words[i]);
}
}
}
}
}catch(e){}
return {
f: hasFlash,
v: flashVersion
};
}