PicHome2.0
This commit is contained in:
@@ -11,46 +11,123 @@ if(!defined('IN_OAOOA') ) {
|
||||
if(!$rid = dzzdecode($_GET['path'],'',0)){
|
||||
exit('Access Denied');
|
||||
}
|
||||
//require_once(MOD_PATH . './jwt/jwtmanager.php' );
|
||||
require_once(DZZ_ROOT.MOD_PATH . '/jwt/jwtmanager.php' );
|
||||
$app=C::t('app_market')->fetch_by_identifier('onlyoffice_view','dzz');
|
||||
|
||||
$onlyofficesetting = C::t('setting')->fetch('onlyofficesetting',true);
|
||||
$onlyDocumentUrl=$onlyofficesetting['onlyofficeurl'];
|
||||
$onlyofficedocurl = $onlyofficesetting['onlyofficedocurl'] ? $onlyofficesetting['onlyofficedocurl']:getglobal('siteurl');
|
||||
$onlyofficesetting =unserialize($app['extra']);
|
||||
$onlyDocumentUrl=$onlyofficesetting['DocumentUrl'];
|
||||
//$onlyDocumentUrl='http://192.168.124.11:90/';
|
||||
$onlyofficesetting['secret']=$onlyofficesetting['secret'];
|
||||
$onlyofficedocurl = $onlyofficesetting['FileUrl'] ? $onlyofficesetting['FileUrl']:getglobal('siteurl');
|
||||
$onlyDocumentUrl=rtrim(str_replace('web-apps/apps/api/documents/api.js','',$onlyDocumentUrl),'/').'/web-apps/apps/api/documents/api.js';
|
||||
$host=explode(':',$_SERVER['HTTP_HOST']);
|
||||
$onlyDocumentUrl=str_replace(array('localhost','127.0.0.1'),$host[0],$onlyDocumentUrl);
|
||||
|
||||
if(empty($onlyDocumentUrl)) showmessage('应用文档服务器为空,不能调用,请卸载重新安装');
|
||||
$pathdata = DB::fetch_first("select v.path,ra.path as fpath from %t r left join %t ra on ra.rid = r.rid left join %t v on r.appid=v.appid where r.rid = %s", array('pichome_resources','pichome_resources_attr', 'pichome_vapp', $rid));
|
||||
if(empty($onlyDocumentUrl)) showmessage('应用服务器为空,不能调用,请联系系统管理员');
|
||||
/*$pathdata = DB::fetch_first("select v.path,ra.path as fpath from %t r left join %t ra on ra.rid = r.rid left join %t v on r.appid=v.appid where r.rid = %s", array('pichome_resources','pichome_resources_attr', 'pichome_vapp', $rid));
|
||||
$patharr = explode(':',$pathdata['path']);
|
||||
$did = is_numeric($patharr[1]) ? $patharr[1]:1;
|
||||
$connectdata = C::t('connect_storage')->fetch($did);
|
||||
if(!$connectdata['docstatus']){
|
||||
showmessage('该文件预览需文档处理支持,当前存储位置未开启文档处理,如需预览请联系管理员开启文档处理');
|
||||
exit();
|
||||
}
|
||||
//$path=dzzdecode(rawurldecode($_GET['path']));
|
||||
$docexts=array('doc', 'docx', 'rtf', 'odt', 'htm', 'html', 'mht', 'txt');
|
||||
$sheetexts=array('xls', 'xlsx', 'ods', 'csv');
|
||||
$showexts=array('ppt', 'pptx', 'pps', 'ppsx', 'odp');
|
||||
$meta=C::t('pichome_resources')->fetch($rid);
|
||||
$connectdata = C::t('connect_storage')->fetch($did);*/
|
||||
//if(!$connectdata['docstatus']){
|
||||
// showmessage('该文件预览需文档处理支持,当前存储位置未开启文档处理,如需预览请联系管理员开启文档处理');
|
||||
// exit();
|
||||
//}
|
||||
|
||||
$docexts=array('doc', 'docm', 'docx', 'docxf', 'dot', 'dotm', 'dotx', 'epub', 'fodt', 'fb2', 'htm', 'html','mht', 'odt', 'oform', 'ott', 'oxps', 'pdf', 'rtf', 'txt', 'djvu', 'xml', 'xps','wps');
|
||||
$sheetexts=array('xls', 'xlsx', 'ods', 'csv','fods','ots','xlsm','xlt','xltm','xltx');
|
||||
$showexts=array('ppt', 'pptx', 'pps', 'ppsx', 'odp','fodp','otp','pot','potm','potx','ppsm','pptm');
|
||||
$_G['DOC_SERV_FILLFORMS'] = array(".oform", ".docx");
|
||||
$_G['DOC_SERV_VIEWD'] = array(".pdf", ".djvu", ".xps", ".oxps");
|
||||
$_G['DOC_SERV_EDITED'] = array(".docx", ".xlsx", ".csv", ".pptx", ".txt", ".docxf");
|
||||
$_G['DOC_SERV_CONVERT'] = array(".docm", ".doc", ".dotx", ".dotm", ".dot", ".odt", ".fodt", ".ott", ".xlsm", ".xlsb", ".xls", ".xltx", ".xltm", ".xlt", ".ods", ".fods", ".ots", ".pptm", ".ppt", ".ppsx", ".ppsm", ".pps", ".potx", ".potm", ".pot", ".odp", ".fodp", ".otp", ".rtf", ".mht", ".html", ".htm", ".xml", ".epub", ".fb2");
|
||||
|
||||
$meta=IO::getMeta($rid);
|
||||
$meta['title'] = $meta['name'];
|
||||
if($meta['ext']=='wps'){
|
||||
$meta['ext']='doc';
|
||||
}
|
||||
if(in_array($meta['ext'],$docexts)){
|
||||
$documentType='text';
|
||||
$documentType='word';
|
||||
}elseif(in_array($meta['ext'],$sheetexts)){
|
||||
$documentType='spreadsheet';
|
||||
$documentType='cell';
|
||||
}elseif(in_array($meta['ext'],$showexts)){
|
||||
$documentType='presentation';
|
||||
$documentType='slide';
|
||||
}
|
||||
$mode='view';
|
||||
$perm_edit=0;
|
||||
$perm_download=0;
|
||||
$perm_print=0;
|
||||
$perm_edit=false;
|
||||
$perm_download=false;
|
||||
$perm_print=false;
|
||||
$fullscreenstream = getglobal('siteurl').'index.php?mod=onlyoffice_view&path='.$_GET['path'];
|
||||
|
||||
$key=$rid;
|
||||
$stream= $onlyofficedocurl . 'index.php?mod=io&op=getStream&hash='.VERHASH.'&path=' . dzzencode($rid.'_3', '', 0, 0);
|
||||
|
||||
$saveurl='';
|
||||
$config = [
|
||||
"type" => helper_browser::ismobile()?"mobile":"desktop",
|
||||
"documentType" => $documentType,
|
||||
"document" => [
|
||||
"title" => $meta['title'],
|
||||
"url" => $stream,
|
||||
"fileType" => $meta['ext'],
|
||||
"key" => $key,
|
||||
"info" => [
|
||||
"owner" => $meta['username'],
|
||||
"uploaded" => dgmdate($meta['dateline'],'Y-m-d'),
|
||||
// "folder"=>$meta['relpath'],
|
||||
],
|
||||
"permissions" => [ // the permission for the document to be edited and downloaded or not
|
||||
"comment" => true,
|
||||
"copy" => $perm_download,
|
||||
"download" => $perm_download,
|
||||
"edit" => $perm_edit,
|
||||
"print" => $perm_print,
|
||||
"fillForms" => false,//$editorsMode != "view" && $editorsMode != "comment" && $editorsMode != "embedded" && $editorsMode != "blockcontent",
|
||||
"modifyFilter" =>false, //$editorsMode != "filter",
|
||||
"modifyContentControl" =>false, //$editorsMode != "blockcontent",
|
||||
"review" =>false, //$canEdit && ($editorsMode == "edit" || $editorsMode == "review"),
|
||||
"rename"=>false,
|
||||
"changeHistory"=>false
|
||||
]
|
||||
],
|
||||
"editorConfig" => [
|
||||
"actionLink" =>null, //empty($_GET["actionLink"]) ? null : json_decode($_GET["actionLink"]),
|
||||
"mode" => $mode,
|
||||
"lang" => "zh",
|
||||
"location" => "cn",
|
||||
"callbackUrl" => $saveurl, // absolute URL to the document storage service
|
||||
"createUrl" => null,
|
||||
"user" => [ // the user currently viewing or editing the document
|
||||
"id" => $_G['uid'],
|
||||
"name" => $_G['username'],
|
||||
"group" => $_G['group']['grouptitle']
|
||||
],
|
||||
|
||||
"customization" => [ // the parameters for the editor interface
|
||||
"about" => false, // the About section display
|
||||
"comments" => true,
|
||||
"feedback" => false, // the Feedback & Support menu button display
|
||||
"forcesave" => false, // adds the request for the forced file saving to the callback handler when saving the document
|
||||
"goback" => false,
|
||||
"plugins" => false,
|
||||
"autosave" => false,
|
||||
"compactToolbar" => true,
|
||||
"leftMenu" => false,
|
||||
"rightMenu" => false,
|
||||
"toolbar" => false,
|
||||
"header" => false,
|
||||
"uiTheme"=> empty($_GET['theme'])?"theme-light":'theme-'.$_GET['theme'],
|
||||
"features"=> [
|
||||
"spellcheck"=>[
|
||||
"mode" => false,
|
||||
]
|
||||
]
|
||||
|
||||
]
|
||||
]
|
||||
];
|
||||
if($onlyofficesetting['secret']){
|
||||
$config["token"] = jwtEncode($config,$onlyofficesetting['secret']);
|
||||
}
|
||||
include template('main');
|
||||
Reference in New Issue
Block a user