aboutsummaryrefslogtreecommitdiffstats
path: root/apps/files_pdfviewer/js/viewer.js
diff options
context:
space:
mode:
authorBartek Przybylski <bart.p.pl@gmail.com>2011-12-27 12:36:51 +0100
committerBartek Przybylski <bart.p.pl@gmail.com>2011-12-27 12:36:51 +0100
commitf7674d06d3819fadb0c019adec8219b1fdd9001c (patch)
tree1f3e62a19dfa86ddc1746af1a29d6bbf63cc7ec7 /apps/files_pdfviewer/js/viewer.js
parent524aaf0e5e890944472f919041146c68a4300184 (diff)
downloadnextcloud-server-f7674d06d3819fadb0c019adec8219b1fdd9001c.tar.gz
nextcloud-server-f7674d06d3819fadb0c019adec8219b1fdd9001c.zip
pdf viewer from Google Code-In program
Diffstat (limited to 'apps/files_pdfviewer/js/viewer.js')
-rwxr-xr-xapps/files_pdfviewer/js/viewer.js55
1 files changed, 55 insertions, 0 deletions
diff --git a/apps/files_pdfviewer/js/viewer.js b/apps/files_pdfviewer/js/viewer.js
new file mode 100755
index 00000000000..2bdc5578588
--- /dev/null
+++ b/apps/files_pdfviewer/js/viewer.js
@@ -0,0 +1,55 @@
+viewer_is_shown = false;
+function hidePDFviewer() {
+ viewer_is_shown = false;
+ $('table').show();
+ $('#controls').html(oldcode);
+ $("#viewer").remove();
+ $("#loading").remove()
+ $("#controls").css({top:"3.5em",height:"2.8em",zIndex:200});
+ document.title = lastTitle;
+}
+function showPDFviewer(dir,filename){
+ if(!viewer_is_shown){
+ $("#editor").hide();
+ var url = OC.filePath('files','ajax','download.php')+'?files='+encodeURIComponent(filename)+"&dir="+encodeURIComponent(dir);
+ $('table').hide();
+ function im(path) { return OC.filePath('files_pdfviewer','js','pdfjs/web/images/'+path); }
+ oldcode = $("#controls").html();
+ $("#controls").empty();
+ $("#controls").html('&nbsp;&nbsp;<div id="controls2" style="display:inline;"> <button id="previous" onclick="PDFView.page--;" oncontextmenu="return false;"> <img src="'+im('go-up.svg')+'" align="top" height="10"/> Previous </button> <button id="next" onclick="PDFView.page++;" oncontextmenu="return false;"> <img src="'+im('go-down.svg')+'" align="top" height="10"/> Next </button> <div class="separator"></div> <input style="width:25px;" type="number" id="pageNumber" onchange="PDFView.page = this.value;" value="1" size="4" min="1" /> <span>/</span> <span id="numPages">--</span> <div class="separator"></div> <button id="zoomOut" title="Zoom Out" onclick="PDFView.zoomOut();" oncontextmenu="return false;"> <img src="'+im('zoom-out.svg')+'" align="top" height="10"/> </button> <button id="zoomIn" title="Zoom In" onclick="PDFView.zoomIn();" oncontextmenu="return false;"> <img src="'+im('zoom-in.svg')+'" align="top" height="10"/> </button> <div class="separator"></div> <select id="scaleSelect" onchange="PDFView.parseScale(this.value);" oncontextmenu="return false;"> <option id="customScaleOption" value="custom"></option> <option value="0.5">50%</option> <option value="0.75">75%</option> <option value="1">100%</option> <option value="1.25" selected="selected">125%</option> <option value="1.5">150%</option> <option value="2">200%</option> <option id="pageWidthOption" value="page-width">Page Width</option> <option id="pageFitOption" value="page-fit">Page Fit</option> </select> <div class="separator"></div> <button id="print" onclick="window.print();" oncontextmenu="return false;"> <img src="'+im('document-print.svg')+'" align="top" height="10"/> Print </button> <button id="download" title="Download" onclick="PDFView.download();" oncontextmenu="return false;"> <img src="'+im('download.svg')+'" align="top" height="10"/> Download </button><button id="close" title="Close viewer" onclick="hidePDFviewer();" oncontextmenu="return false;">x</button> <span id="info">--</span> </div>');
+ oldcontent = $("#content").html();
+ $("#content").html(oldcontent+'<div id="loading">Loading... 0%</div> <div id="viewer"></div>');
+ $("#controls").css({top:"0px",height:"3.5em",zIndex:200});
+ lastTitle = document.title;
+ PDFView.Ptitle = filename;
+ PDFView.open(url,1.00);
+ $("#pageWidthOption").attr("selected","selected");
+ $("header").css({zIndex:0});
+ viewer_is_shown = true;
+ }
+}
+
+var extrahtml = '<li id="extra" style="display:none;"><a title="" href="'+OC.webroot+"/apps/files_pdfviewer/lastopened.php"+'" style="background-image:url(/owncloud/apps/files_pdfviewer/css/history.png)">Last opened</a></li>';
+
+$(document).ready(function(){
+ if(location.href.indexOf("files")!=-1) {
+ PDFJS.workerSrc = OC.filePath('files_pdfviewer','js','pdfjs/build/pdf.js');
+ if(typeof FileActions!=='undefined'){
+ FileActions.register('application/pdf','Edit','',function(filename){
+ showPDFviewer($('#dir').val(),filename);
+ });
+ FileActions.setDefault('application/pdf','Edit');
+ }
+ OC.search.customResults.Text=function(row,item){
+ var text=item.link.substr(item.link.indexOf('file=')+5);
+ var a=row.find('a');
+ a.data('file',text);
+ a.attr('href','#');
+ a.click(function(){
+ var file=text.split('/').pop();
+ var dir=text.substr(0,text.length-file.length-1);
+ showFileEditor(dir,file);
+ });
+ }
+ }
+});