tiddlywiki_cp 0.4.1 → 0.5.1
Sign up to get free protection for your applications and to get access to all the features.
- data/History.txt +6 -0
- data/Manifest.txt +3 -2
- data/README.txt +4 -0
- data/Rakefile +1 -0
- data/lib/tiddlywiki_cp/r4tw.rb +68 -3
- data/lib/tiddlywiki_cp/version.rb +1 -1
- data/lib/tiddlywiki_cp.rb +15 -0
- data/test/content/tiddly_version_2_3.txt +1 -0
- data/test/test_tiddlywiki_cp.rb +68 -2
- data/website/files/ChangeLog.tiddler +86 -1
- data/website/files/DefaultTiddlers.tiddler +2 -2
- data/website/files/Introduction.tiddler +21 -3
- data/website/files/Usage.tiddler +14 -0
- data/website/files/WebDavPlugin.js +310 -0
- data/website/files/WebDavPlugin.js.div +1 -0
- data/website/index.html +1891 -1395
- metadata +6 -4
- data/website/files/WebDAVSavingPlugin.js +0 -234
- data/website/files/WebDAVSavingPlugin.js.div +0 -1
metadata
CHANGED
@@ -3,8 +3,8 @@ rubygems_version: 0.9.0
|
|
3
3
|
specification_version: 1
|
4
4
|
name: tiddlywiki_cp
|
5
5
|
version: !ruby/object:Gem::Version
|
6
|
-
version: 0.
|
7
|
-
date: 2008-
|
6
|
+
version: 0.5.1
|
7
|
+
date: 2008-04-06 00:00:00 +00:00
|
8
8
|
summary: copy tiddlers to files and vice versa
|
9
9
|
require_paths:
|
10
10
|
- lib
|
@@ -61,6 +61,7 @@ files:
|
|
61
61
|
- test/content/test_fetch.html
|
62
62
|
- test/content/tiddly_version_2_1.txt
|
63
63
|
- test/content/tiddly_version_2_2.txt
|
64
|
+
- test/content/tiddly_version_2_3.txt
|
64
65
|
- test/content/universe.html
|
65
66
|
- test/r4tw/addtag.rb
|
66
67
|
- test/r4tw/all.rb
|
@@ -99,8 +100,8 @@ files:
|
|
99
100
|
- website/files/SiteTitle.tiddler.div
|
100
101
|
- website/files/Usage.tiddler
|
101
102
|
- website/files/Usage.tiddler.div
|
102
|
-
- website/files/
|
103
|
-
- website/files/
|
103
|
+
- website/files/WebDavPlugin.js
|
104
|
+
- website/files/WebDavPlugin.js.div
|
104
105
|
- website/index.html
|
105
106
|
- website/index.xml
|
106
107
|
test_files:
|
@@ -114,6 +115,7 @@ extra_rdoc_files:
|
|
114
115
|
- README.txt
|
115
116
|
- test/content/tiddly_version_2_1.txt
|
116
117
|
- test/content/tiddly_version_2_2.txt
|
118
|
+
- test/content/tiddly_version_2_3.txt
|
117
119
|
executables:
|
118
120
|
- tiddlywiki_cp
|
119
121
|
extensions: []
|
@@ -1,234 +0,0 @@
|
|
1
|
-
/***
|
2
|
-
|''Name:''|WebDAVSavingPlugin|
|
3
|
-
|''Description:''|Saves on a WebDAV server without the need of any ServerSide script.<br>When TiddlyWiki is accessed over http, this plugin permits to save back to the server, using http PUT.|
|
4
|
-
|''Version:''|0.2.1|
|
5
|
-
|''Date:''|Apr 21, 2007|
|
6
|
-
|''Source:''|http://tiddlywiki.bidix.info/#WebDAVSavingPlugin|
|
7
|
-
|''Author:''|BidiX (BidiX (at) bidix (dot) info)|
|
8
|
-
|''License:''|[[BSD open source license|http://tiddlywiki.bidix.info/#%5B%5BBSD%20open%20source%20license%5D%5D ]]|
|
9
|
-
|''~CoreVersion:''|2.2.0 (Beta 5)|
|
10
|
-
***/
|
11
|
-
//{{{
|
12
|
-
version.extensions.WebDAVSavingPlugin = {
|
13
|
-
major: 0, minor: 2, revision: 1,
|
14
|
-
date: new Date("Apr 21, 2007"),
|
15
|
-
source: 'http://tiddlywiki.bidix.info/#WebDAVSavingPlugin',
|
16
|
-
author: 'BidiX (BidiX (at) bidix (dot) info',
|
17
|
-
license: '[[BSD open source license|http://tiddlywiki.bidix.info/#%5B%5BBSD%20open%20source%20license%5D%5D]]',
|
18
|
-
coreVersion: '2.2.0 (Beta 5)'
|
19
|
-
};
|
20
|
-
|
21
|
-
if (!window.bidix) window.bidix = {};
|
22
|
-
bidix.WebDAVSaving = {
|
23
|
-
orig_saveChanges: saveChanges,
|
24
|
-
defaultFilename: 'index.html',
|
25
|
-
messages: {
|
26
|
-
loadOriginalHttpDavError: "Original file can't be loaded",
|
27
|
-
optionsMethodError: "The OPTIONS method can't be used on this ressource : %0",
|
28
|
-
webDavNotEnabled: "WebDAV is not enabled on this ressource : %0",
|
29
|
-
notHTTPUrlError: "WebDAV saving can be used for http viewed TiddlyWiki only",
|
30
|
-
aboutToSaveOnHttpDav: 'About to save on %0 ...' ,
|
31
|
-
folderCreated: "Remote folder '%0' created"
|
32
|
-
}
|
33
|
-
};
|
34
|
-
|
35
|
-
// Save this tiddlywiki with the pending changes
|
36
|
-
saveChanges = function(onlyIfDirty,tiddlers)
|
37
|
-
{
|
38
|
-
var originalPath = document.location.toString();
|
39
|
-
if (originalPath.substr(0,5) == "file:")
|
40
|
-
return bidix.WebDAVSaving.orig_saveChanges(onlyIfDirty,tiddlers);
|
41
|
-
else
|
42
|
-
return bidix.WebDAVSaving.saveChanges(onlyIfDirty,tiddlers);
|
43
|
-
}
|
44
|
-
|
45
|
-
bidix.WebDAVSaving.saveChanges = function(onlyIfDirty,tiddlers)
|
46
|
-
{
|
47
|
-
var callback = function(status,params,original,url,xhr) {
|
48
|
-
url = (url.indexOf("nocache=") < 0 ? url : url.substring(0,url.indexOf("nocache=")-1));
|
49
|
-
if (!status)
|
50
|
-
displayMessage(bidix.WebDAVSaving.messages.optionsMethodError.format([url]));
|
51
|
-
else {
|
52
|
-
if (!xhr.getResponseHeader("DAV"))
|
53
|
-
alert(bidix.WebDAVSaving.messages.webDavNotEnabled.format([url]));
|
54
|
-
else
|
55
|
-
bidix.WebDAVSaving.doSaveChanges();
|
56
|
-
}
|
57
|
-
}
|
58
|
-
if(onlyIfDirty && !store.isDirty())
|
59
|
-
return;
|
60
|
-
clearMessage();
|
61
|
-
var originalPath = document.location.toString();
|
62
|
-
// Check we were loaded from a HTTP or HTTPS URL
|
63
|
-
if(originalPath.substr(0,4) != "http") {
|
64
|
-
alert(bidix.WebDAVSaving.messages.notHTTPUrlError);
|
65
|
-
return;
|
66
|
-
}
|
67
|
-
// is the server WebDAV enabled ?
|
68
|
-
var r = doHttp("OPTIONS",originalPath,null,null,null,null,callback,null,null);
|
69
|
-
if (typeof r == "string")
|
70
|
-
alert(r);
|
71
|
-
}
|
72
|
-
|
73
|
-
bidix.WebDAVSaving.doSaveChanges = function()
|
74
|
-
{
|
75
|
-
var callback = function(status,params,original,url,xhr) {
|
76
|
-
if (!status) {
|
77
|
-
alert(config.messages.loadOriginalHttpDavError);
|
78
|
-
return;
|
79
|
-
}
|
80
|
-
url = (url.indexOf("nocache=") < 0 ? url : url.substring(0,url.indexOf("nocache=")-1));
|
81
|
-
// Locate the storeArea div's
|
82
|
-
var posDiv = locateStoreArea(original);
|
83
|
-
if((posDiv[0] == -1) || (posDiv[1] == -1)) {
|
84
|
-
alert(config.messages.invalidFileError.format([localPath]));
|
85
|
-
return;
|
86
|
-
}
|
87
|
-
bidix.WebDAVSaving.mkbackupfolder(null,null,params,original,posDiv);
|
88
|
-
};
|
89
|
-
// get original
|
90
|
-
var originalPath = document.location.toString();
|
91
|
-
if (originalPath.charAt(originalPath.length-1) == "/")
|
92
|
-
originalPath = originalPath + bidix.WebDAVSaving.defaultFilename;
|
93
|
-
displayMessage(bidix.WebDAVSaving.messages.aboutToSaveOnHttpDav.format([originalPath]));
|
94
|
-
doHttp("GET",originalPath,null,null,null,null,callback,originalPath,null);
|
95
|
-
};
|
96
|
-
|
97
|
-
bidix.WebDAVSaving.mkbackupfolder = function(root,dirs,url,original,posDiv) {
|
98
|
-
if (!root || !dirs) {
|
99
|
-
root = bidix.dirname(url);
|
100
|
-
if (config.options.txtBackupFolder == "")
|
101
|
-
dirs = null;
|
102
|
-
else
|
103
|
-
dirs = config.options.txtBackupFolder.split('/');
|
104
|
-
}
|
105
|
-
if (config.options.chkSaveBackups && dirs && (dirs.length > 0))
|
106
|
-
bidix.WebDAVSaving.mkdir(root,dirs.shift(),dirs,url,original,posDiv);
|
107
|
-
else
|
108
|
-
bidix.WebDAVSaving.saveBackup(url,original,posDiv);
|
109
|
-
};
|
110
|
-
|
111
|
-
bidix.WebDAVSaving.saveBackup = function(url,original,posDiv)
|
112
|
-
{
|
113
|
-
var callback = function(status,params,responseText,url,xhr) {
|
114
|
-
if (!status) {
|
115
|
-
alert(config.messages.backupFailed);
|
116
|
-
return;
|
117
|
-
}
|
118
|
-
url = (url.indexOf("nocache=") < 0 ? url : url.substring(0,url.indexOf("nocache=")-1));
|
119
|
-
displayMessage(config.messages.backupSaved,url);
|
120
|
-
bidix.WebDAVSaving.saveRss(params[0],params[1],params[2]);
|
121
|
-
};
|
122
|
-
if(config.options.chkSaveBackups) {
|
123
|
-
var backupPath = getBackupPath(url);
|
124
|
-
bidix.httpPut(backupPath,original,callback,Array(url,original,posDiv));
|
125
|
-
} else {
|
126
|
-
bidix.WebDAVSaving.saveRss(url,original,posDiv);
|
127
|
-
}
|
128
|
-
}
|
129
|
-
|
130
|
-
bidix.WebDAVSaving.saveRss = function(url,original,posDiv)
|
131
|
-
{
|
132
|
-
var callback = function(status,params,responseText,url,xhr) {
|
133
|
-
if (!status) {
|
134
|
-
alert(config.messages.rssFailed);
|
135
|
-
return;
|
136
|
-
}
|
137
|
-
url = (url.indexOf("nocache=") < 0 ? url : url.substring(0,url.indexOf("nocache=")-1));
|
138
|
-
displayMessage(config.messages.rssSaved,url);
|
139
|
-
bidix.WebDAVSaving.saveEmpty(params[0],params[1],params[2]);
|
140
|
-
};
|
141
|
-
if(config.options.chkGenerateAnRssFeed) {
|
142
|
-
var rssPath = url.substr(0,url.lastIndexOf(".")) + ".xml";
|
143
|
-
bidix.httpPut(rssPath,convertUnicodeToUTF8(generateRss()),callback,Array(url,original,posDiv));
|
144
|
-
} else {
|
145
|
-
bidix.WebDAVSaving.saveEmpty(url,original,posDiv);
|
146
|
-
}
|
147
|
-
}
|
148
|
-
|
149
|
-
bidix.WebDAVSaving.saveEmpty = function(url,original,posDiv)
|
150
|
-
{
|
151
|
-
var callback = function(status,params,responseText,url,xhr) {
|
152
|
-
if (!status) {
|
153
|
-
alert(config.messages.emptyFailed);
|
154
|
-
return;
|
155
|
-
}
|
156
|
-
url = (url.indexOf("nocache=") < 0 ? url : url.substring(0,url.indexOf("nocache=")-1));
|
157
|
-
displayMessage(config.messages.emptySaved,url);
|
158
|
-
bidix.WebDAVSaving.saveMain(params[0],params[1],params[2]);
|
159
|
-
};
|
160
|
-
if(config.options.chkSaveEmptyTemplate) {
|
161
|
-
var emptyPath,p;
|
162
|
-
if((p = url.lastIndexOf("/")) != -1)
|
163
|
-
emptyPath = url.substr(0,p) + "/empty.html";
|
164
|
-
else
|
165
|
-
emptyPath = url + ".empty.html";
|
166
|
-
var empty = original.substr(0,posDiv[0] + startSaveArea.length) + original.substr(posDiv[1]);
|
167
|
-
bidix.httpPut(emptyPath,empty,callback,Array(url,original,posDiv));
|
168
|
-
} else {
|
169
|
-
bidix.WebDAVSaving.saveMain(url,original,posDiv);
|
170
|
-
}
|
171
|
-
}
|
172
|
-
|
173
|
-
bidix.WebDAVSaving.saveMain = function(url,original,posDiv)
|
174
|
-
{
|
175
|
-
var callback = function(status,params,responseText,url,xhr) {
|
176
|
-
if(status) {
|
177
|
-
url = (url.indexOf("nocache=") < 0 ? url : url.substring(0,url.indexOf("nocache=")-1));
|
178
|
-
displayMessage(config.messages.mainSaved,url);
|
179
|
-
store.setDirty(false);
|
180
|
-
} else
|
181
|
-
alert(config.messages.mainFailed);
|
182
|
-
};
|
183
|
-
// Save new file
|
184
|
-
var revised = updateOriginal(original,posDiv);
|
185
|
-
bidix.httpPut(url,revised,callback,null);
|
186
|
-
}
|
187
|
-
|
188
|
-
// asynchronous mkdir
|
189
|
-
bidix.WebDAVSaving.mkdir = function(root,dir,dirs,url,original,posDiv) {
|
190
|
-
var callback = function(status,params,responseText,url,xhr) {
|
191
|
-
url = (url.indexOf("nocache=") < 0 ? url : url.substring(0,url.indexOf("nocache=")-1));
|
192
|
-
if (status == null) {
|
193
|
-
alert("Error in mkdir");
|
194
|
-
return;
|
195
|
-
}
|
196
|
-
if (xhr.status == httpStatus.ContentCreated) {
|
197
|
-
displayMessage(bidix.WebDAVSaving.messages.folderCreated.format([url]),url);
|
198
|
-
bidix.WebDAVSaving.mkbackupfolder(url,params[1],params[2],params[3],params[4]);
|
199
|
-
} else {
|
200
|
-
if (xhr.status == httpStatus.NotFound)
|
201
|
-
bidix.http('MKCOL',url,null,callback,params);
|
202
|
-
else
|
203
|
-
bidix.WebDAVSaving.mkbackupfolder(url,params[1],params[2],params[3],params[4]);
|
204
|
-
}
|
205
|
-
};
|
206
|
-
if (root.charAt(root.length) != '/')
|
207
|
-
root = root +'/';
|
208
|
-
bidix.http('HEAD',root+dir,null,callback,Array(root,dirs,url,original,posDiv));
|
209
|
-
}
|
210
|
-
|
211
|
-
bidix.httpPut = function(url,data,callback,params)
|
212
|
-
{
|
213
|
-
return bidix.http("PUT",url,data,callback,params);
|
214
|
-
}
|
215
|
-
|
216
|
-
bidix.http = function(type,url,data,callback,params)
|
217
|
-
{
|
218
|
-
var r = doHttp(type,url,data,null,null,null,callback,params,null);
|
219
|
-
if (typeof r == "string")
|
220
|
-
alert(r);
|
221
|
-
return r;
|
222
|
-
}
|
223
|
-
|
224
|
-
bidix.dirname = function (filePath) {
|
225
|
-
if (!filePath)
|
226
|
-
return;
|
227
|
-
var lastpos;
|
228
|
-
if ((lastpos = filePath.lastIndexOf("/")) != -1) {
|
229
|
-
return filePath.substring(0, lastpos);
|
230
|
-
} else {
|
231
|
-
return filePath.substring(0, filePath.lastIndexOf("\\"));
|
232
|
-
}
|
233
|
-
};
|
234
|
-
//}}}
|
@@ -1 +0,0 @@
|
|
1
|
-
title="WebDAVSavingPlugin" modifier="BidiX" modified="200704212208" created="200702221114" tags="systemConfig" changecount="4"
|