tiddlywiki_cp 0.4.1 → 0.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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"
|