PHPIndex

This page lists files in the current directory. You can view content, get download/execute commands for Wget, Curl, or PowerShell, or filter the list using wildcards (e.g., `*.sh`).

luckysheet
mammothjs
pptxjs
sheetjs
page.css
wget 'https://sme10.lists2.roe3.org/kodbox/plugins/officeViewer/static/jsoffice/page.css'
View Content
/* 错误提示页 */
#msgbox{box-shadow: 0px 10px 40px rgba(0, 0, 0, 0.1);border-radius: 5px;border-radius: 5px;background: #fff;
        font-family: "Lantinghei SC","Hiragino Sans GB","Microsoft Yahei",Helvetica,arial,sans-serif;line-height: 1.5em;
        color:888;margin:0 auto;margin-top: 10%; margin-bottom: 10%; width:500px;font-size:13px;color:#666;word-wrap: break-word;word-break: break-all;max-width: 90%;box-sizing: border-box;max-height: 90%;overflow: auto;padding:30px 30px;}
#msgbox #info {margin-top: 10px; color: #aaa;}
#msgbox #title {color: #333; border-bottom: 1px solid #eee; padding: 10px 0; margin: 0 0 15px; font-size: 20px; font-weight:200;}
#msgbox #info a {color: #64b8fb; text-decoration: none; padding: 2px 0px; border-bottom: 1px solid;}
#msgbox a {text-decoration: none; color: #2196F3;}
#msgbox a:hover {color: #f60; border-bottom: 1px solid}
#msgbox .desc {padding: 10px 0; color: #faad14; }
#msgbox pre {word-break: break-all; word-wrap: break-word; white-space: pre-wrap; 
    background: #002b36; padding: 1em; color: #839496; border-left: 6px solid #8e8e8e; border-radius: 3px;}

/* 文档页 */
body {background: #f6f6f6; margin: 8px 0px;}
body .page-box{background: #fff;}
.page-box.kod-pptxjs-box .slide:after{z-index: 1000000 !important;}

.hidden {display: none;}
page.js
wget 'https://sme10.lists2.roe3.org/kodbox/plugins/officeViewer/static/jsoffice/page.js'
View Content
var page = {
    // 读取二进制流文件内容,转换成html
    getFileInfo: function(callback){
        var tipsLoading = Tips.loadingMask(false,'加载中',0.5);
        var xhr = new XMLHttpRequest();
        xhr.open('GET', FILE_INFO.fileUrl);
        xhr.responseType = "arraybuffer";
        xhr.addEventListener("progress", function (evt) {   //监听进度事件
            if (evt.lengthComputable) {
                var percent = evt.loaded / evt.total;
                tipsLoading.title(Math.round(percent*100)+'%');
            }
        }, false);
        xhr.onload = function (e) {
            // var data = new Uint8Array(xhr.response);
            var data = xhr.response;
            if(!data){tipsLoading.close();tipsLoading = false;return;};
            var file = {name: FILE_INFO.fileName, ext: FILE_INFO.fileExt, content: data};
            callback(file, tipsLoading);
        };
        xhr.send();
    },
    // 错误提示
    showTips: function(msg){
        $("#msgbox #message").html(msg);
        $("#msgbox").removeClass('hidden');
        $(".page-box").addClass('hidden');
        // $("body").addClass('page-loaded');
    }
}
template.html
wget 'https://sme10.lists2.roe3.org/kodbox/plugins/officeViewer/static/jsoffice/template.html'
View Content
<!doctype html>
<head>
	<meta charset="utf-8">
	<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no"/>
	<meta name="apple-mobile-web-app-capable" content="yes"/>
	<title><?php echo clear_html($fileName);?></title>
	<link rel="icon" href="<?php $this->url('static/images/icon.png');?>">
	<script>var kodSdkConfig = {api:'<?php echo APP_HOST;?>'};</script>
	<?php // if(clear_quote($fileApp) != 'pptxjs') $this->link('app/dist/sdk.js','static');?>
	<?php $this->link('app/dist/sdk.js','static');?>
	<?php $this->link('style/lib/font-icon/style.css','static');?>
	<?php $this->link('static/jsoffice/page.css');?>
	<script>
		var BASE_URL = "<?php echo $this->pluginHost.'static/';?>";
		var BASE_URL_API = "<?php echo $this->pluginApi;?>";
		var FILE_INFO = {
			fileUrl:	'<?php echo clear_quote($fileUrl);?>',	// 获取url
			fileName: 	'<?php echo clear_quote($fileName);?>', // 文件名
			savePath:	'<?php echo clear_quote($savePath);?>', // 文件路径;有则可以直接保存;没有且canWrite则可以另存为;
			canWrite:	'<?php echo clear_quote($canWrite);?>',	// 是否可写; 可写才能编辑;
			fileApp:	'<?php echo clear_quote($fileApp);?>',	// 文件打开方式
			fileExt:	'<?php echo clear_quote($fileExt);?>',	// 文件后缀
		};
	</script>
</head>

<!-- <style>
	body:after{
		position:absolute;top:0;right:0;bottom:0;left:0;z-index: 100;
		background:url("<?php echo STATIC_PATH.'images/common/loading-page.gif';?>");
		margin:auto;width:72px;height:72px;background-color:#eee;
		content:"";text-align: center;transition: all 0.5s;
		background-size:100% 100%;background-repeat: no-repeat;
		border-radius:8px;box-shadow: 0 5px 20px rgba(0,0,0,0.05);
	}
	body.page-loaded:after{visibility:hidden;opacity:0;}
</style> -->

<body class="loading">
	<!-- <div class="loading-content"></div>	 -->
	<div class="page-box <?php echo 'kod-' . clear_quote($fileApp) . '-box';?>">
		<div id="output"></div>
	</div>
    <div id="msgbox" class="hidden">
		<!-- <div id="title">打开失败!</div> -->
		<div id="title">
			<span style="font-size:20px;">Office阅读器</span>
			<span style="font-size:14px;margin-left:5px;"> - 本地解析</span>
		</div>
		<div id="message"></div>
		<div id="info"></div>
	</div>

	<?php $this->link('static/jsoffice/page.js');?>
	<?php switch(clear_quote($fileApp)) {
		case 'mammothjs':
			// $this->link('static/jsoffice/mammothjs/mammoth.browser.kod.1.4.20--.js');
			$this->link('static/jsoffice/mammothjs/mammoth.browser.kod.1.4.20.min.js');
			$this->link('static/jsoffice/mammothjs/index.css');
			$this->link('static/jsoffice/mammothjs/index.js');
			break;
		case 'luckysheet':
			$this->link('static/jsoffice/luckysheet/plugins/css/pluginsCss.css');
			$this->link('static/jsoffice/luckysheet/plugins/plugins.css');
			$this->link('static/jsoffice/luckysheet/css/luckysheet.css');
			$this->link('static/jsoffice/luckysheet/assets/iconfont/iconfont.min.css');
			$this->link('static/jsoffice/luckysheet/index.css');
			$this->link('static/jsoffice/luckysheet/plugins/js/plugin.js');
			$this->link('static/jsoffice/luckysheet/luckysheet.umd.js');
			$this->link('static/jsoffice/luckysheet/luckyexcel.umd.min.js');
			$this->link('static/jsoffice/sheetjs/xlsx.core.min.js');
			$this->link('static/jsoffice/luckysheet/utils.js');
			$this->link('static/jsoffice/luckysheet/index.js');
			break;
		case 'pptxjs':
			$this->link('static/jsoffice/pptxjs/css/pptxjs.css');
			$this->link('static/jsoffice/pptxjs/css/nv.d3.min.css');
			$this->link('static/jsoffice/pptxjs/index.css');
			$this->link('static/jsoffice/pptxjs/js/jquery-1.11.3.min.js');
			$this->link('static/jsoffice/pptxjs/js/jszip.min.js');
			$this->link('static/jsoffice/pptxjs/js/filereader.js');
			$this->link('static/jsoffice/pptxjs/js/d3.min.js');
			$this->link('static/jsoffice/pptxjs/js/nv.d3.min.js');
			$this->link('static/jsoffice/pptxjs/js/dingbat.js');
			$this->link('static/jsoffice/pptxjs/js/pptxjs.kod.1.21.1.min.js');
			// $this->link('static/jsoffice/pptxjs/js/pptxjs.kod.1.21.1--.js');
			$this->link('static/jsoffice/pptxjs/js/divs2slides.min.js');
			// $this->link('static/jsoffice/pptxjs/js/jquery.fullscreen-min.js');
			$this->link('static/jsoffice/pptxjs/utils.js');
			$this->link('static/jsoffice/pptxjs/index.js');
			break;
		case 'sheetjs':
			$this->link('static/jsoffice/sheetjs/index.css');
			$this->link('static/jsoffice/sheetjs/xlsx.core.min.js');
			// $this->link('static/jsoffice/sheetjs/ppt.core.min.js');
			$this->link('static/jsoffice/sheetjs/index.js');
			break;
		default:break;
	}?>
</body>
</html>