add webdav cloud storage support for upload, backup/restore, delete, mkcol

This commit is contained in:
James Feng Cao 2023-01-22 17:27:29 +08:00
parent 53d34196b6
commit 7c38fa2615
13 changed files with 91 additions and 16 deletions

View file

@ -0,0 +1,18 @@
<!DOCTYPE html><html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width" />
<title>webdav links for %2%</title></head><body>
<p><b>Click to install the link menu items:</b></p>
<a href="i:0gdefault.link::Backup2%1%: {let path=`%f`;let iSlash=path.lastIndexOf('/',path.length-2);let f;if('/'!=path[path.length-1])f=path.substring(iSlash+1);else f=path.substring(iSlash+1,path.length-1);location.href='i:0e'+path+':%2%/'+f+'.tgz';}%0A">Backup to %1%</a><br>
<a href="i:0gdefault.link::restoreFrom%1%: {let path=`%f`;let iSlash=path.lastIndexOf('/',path.length-2);let f;if('/'!=path[path.length-1])f=path.substring(iSlash+1);else f=path.substring(iSlash+1,path.length-1);location.href='i:0d%2%/'+f+'.tgz';}%0A">Restore from %1%</a><br>
<a href="i:0gdefault.link::upload_%1%: {let path=`%f`;let iSlash=path.lastIndexOf('/',path.length-2);let f;if('/'!=path[path.length-1])f=path.substring(iSlash+1);else f=path.substring(iSlash+1,path.length-1)+'.tgz';location.href='i:0u'+path+':%2%/'+f;}%0A">upload to %1%</a><br>
<a href="i:0gdefault.link::delete_%1%: {let path=`%f`;let iSlash=path.lastIndexOf('/',path.length-2);let f;if('/'!=path[path.length-1])f=path.substring(iSlash+1);else f=path.substring(iSlash+1,path.length-1)+'.tgz';location.href='i:0wDELETE:%2%/'+f;}%0A">Delete on server %1%</a><br>
<a href="i:0gdefault.link::mkdir_%1%: {let path=`%f`;let iSlash=path.lastIndexOf('/',path.length-2);let f=path.substring(iSlash+1);location.href='i:0wMKCOL:%2%/'+f;}%0A">Make directory on server %1%</a><br>
<p><b>Bookmarks:</b></p>
<a href='i:0wDELETE:%2%/'>Delete on server %1%</a><br>
<a href='i:0wMKCOL:%2%/'>Make directory on server %1%</a><br>
</body></html>

43
en/searchurl/webdav.html Normal file
View file

@ -0,0 +1,43 @@
<!DOCTYPE html><html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width" />
<script>function g(){
let d=document;
let f=d.forms[0];
let loc = window.location.href;
let dir = loc.substring(0, loc.lastIndexOf ("/")+1);
window.open("f:"+f.i.value+"&"+f.u.value+":"+dir+"template/webdav.html");
return false;
}
</script><style>
input{height:40px;width:100%;border-radius:50px;}
</style>
<title>webdav storage</title></head><body>
<p>This page is to generate install-able menu items and bookmarks for webdav cloud storage operations (upload, backup/restore, delete and create directory).</p>
Bookmark the generated page for later use.<br>
<form onsubmit="return g();" style="margin:5px 0 5px 0;padding:0px">
<input name=i placeholder="Name"/><br>
<input name=u placeholder="Server url including path"/><br>
<input type="submit" value="webdav links">
</form>
<p>
<a href="javascript:{let f=document.forms[0];f.i.value='Box';f.u.value='https://dav.box.com/dav';void(0)}">Box</a>
<a href="javascript:{let f=document.forms[0];f.i.value='koofr';f.u.value='https://app.koofr.net/dav/koofr';void(0)}">koofr</a>
<a href="javascript:{let f=document.forms[0];f.i.value='pcloud';f.u.value='https://webdav.pcloud.com';void(0)}">pcloud</a>
<a href="javascript:{let f=document.forms[0];f.i.value='powerfolder';f.u.value='https://my.powerfolder.com/webdav/personal';void(0)}">powerfolder</a>
<a href="javascript:{let f=document.forms[0];f.i.value='yandex';f.u.value='https://webdav.yandex.com';void(0)}">yandex</a>
<a href="javascript:{let f=document.forms[0];f.i.value='opendrive';f.u.value='https://webdav.opendrive.com';void(0)}">opendrive</a>
<a href="javascript:{let f=document.forms[0];f.i.value='sme';f.u.value='https://webdav.storagemadeeasy.com';void(0)}">storagemadeeasy</a>
<a href="javascript:{let f=document.forms[0];f.i.value='teracloud';f.u.value='https://yura.teracloud.jp/dav';void(0)}">teracloud</a>
</p>
</body></html>