更新文件: fs_share.py, requirements.txt, sim.txt, xy115-1.txt, get115list.py 等159个文件
This commit is contained in:
99
htdocs/script.js
Normal file
99
htdocs/script.js
Normal file
@ -0,0 +1,99 @@
|
||||
// Cached plugin reference (or null. if it could not be instantiated)
|
||||
var sharePointPlugin = undefined;
|
||||
|
||||
function onLoad() {
|
||||
// console.log("loaded.");
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Find (and cache) an available ActiveXObject Sharepoint plugin.
|
||||
*
|
||||
* @returns {ActiveXObject} or null
|
||||
*/
|
||||
function getSharePointPlugin() {
|
||||
if( sharePointPlugin !== undefined ) {
|
||||
return sharePointPlugin;
|
||||
}
|
||||
sharePointPlugin = null;
|
||||
|
||||
var plugin = document.getElementById("winFirefoxPlugin");
|
||||
|
||||
if ( plugin && typeof plugin.EditDocument === "function" ) {
|
||||
window.console && console.log("Using embedded custom SharePoint plugin.");
|
||||
sharePointPlugin = plugin;
|
||||
} else if( "ActiveXObject" in window ){
|
||||
plugin = null;
|
||||
try {
|
||||
plugin = new ActiveXObject("SharePoint.OpenDocuments.3"); // Office 2007+
|
||||
} catch(e) {
|
||||
try {
|
||||
plugin = new ActiveXObject("SharePoint.OpenDocuments.2"); // Office 2003
|
||||
} catch(e2) {
|
||||
try {
|
||||
plugin = new ActiveXObject("SharePoint.OpenDocuments.1"); // Office 2000/XP
|
||||
} catch(e3) {
|
||||
window.console && console.warn("Could not create ActiveXObject('SharePoint.OpenDocuments'): (requires IE <= 11 and matching security settings.");
|
||||
}
|
||||
}
|
||||
}
|
||||
if( plugin ){
|
||||
window.console && console.log("Using native SharePoint plugin.");
|
||||
sharePointPlugin = plugin;
|
||||
}
|
||||
}
|
||||
return sharePointPlugin;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Open an MS Office document either with SharePoint plugin or using the 'ms-' URL prefix.
|
||||
*
|
||||
* @param {object} opts
|
||||
* @returns {boolean} true if the URL could be opened
|
||||
*/
|
||||
function openWebDavDocument(opts) {
|
||||
var ofe_link = opts.ofe + opts.href, // (e.g. 'ms-word:ofe|u|http://server/path/file.docx')
|
||||
url = opts.href;
|
||||
|
||||
var plugin = getSharePointPlugin();
|
||||
var res = false;
|
||||
|
||||
if( plugin ) {
|
||||
try {
|
||||
res = plugin.EditDocument(url);
|
||||
if( res === false ) {
|
||||
window.console && console.warn("SharePoint plugin.EditDocument(" + url + ") returned false");
|
||||
}
|
||||
} catch(e) {
|
||||
window.console && console.warn("SharePoint plugin.EditDocument(" + url + ") raised an exception", e);
|
||||
}
|
||||
}
|
||||
if ( res === false ) {
|
||||
if( ofe_link ) {
|
||||
window.console && console.log("Could not use SharePoint plugin: trying " + ofe_link);
|
||||
window.open(ofe_link, "_self");
|
||||
res = true;
|
||||
}
|
||||
}
|
||||
return res;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Event delegation handler for clicks on a-tags with class 'msoffice'.
|
||||
*/
|
||||
function onClickTable(event) {
|
||||
var target = event.target || event.srcElement,
|
||||
opts = {
|
||||
href: target.href,
|
||||
ofe: target.getAttribute("data-ofe")
|
||||
};
|
||||
|
||||
if( target.className === "msoffice" ){
|
||||
if( openWebDavDocument(opts) ){
|
||||
// prevent default processing if the document could be opened
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user