Fossil SCM

Added my AJAX test code after accidentally deleting my local copy (thank goodness the test server still had a copy). See the README if you want to set it up locally under apache.

stephan 2011-09-21 21:17 json
Commit c6c5ad13644f711be7a18f83660fe9871a1e6136
+38
--- a/ajax/README
+++ b/ajax/README
@@ -0,0 +1,38 @@
1
+This is the README for how to set up the Fossil/JSON test web page
2
+under Apache on Unix systems. This is only intended only for
3
+Fossil/JSON developers/tinkerers:
4
+
5
+First, copy cgi-bin/fossil-json.cgi.example to
6
+cgi-bin/fossil-json.cgi. Edit it and correct the paths to the fossil
7
+binary and the repo you want to serve. Make it executable.
8
+
9
+MAKE SURE that the fossil repo you use is world-writable OR that your
10
+Web/CGI server is set up to run as the user ID of the owner of the
11
+fossil file. ALSO: the DIRECTORY CONTAINING the repo file must be
12
+writable by the CGI process.
13
+
14
+Next, set up an apache vhost entry. Mine looks like:
15
+
16
+<VirtualHost *:80>
17
+ ServerAlias fjson
18
+ ScriptAlias /cgi-bin/ /home/stephan/cvs/fossil/fossil-json/ajax/cgi-bin/
19
+ DocumentRoot /home/stephan/cvs/fossil/fossil-json/ajax
20
+</VirtualHost>
21
+
22
+Now add your preferred vhost name (fjson in the above example) to /etc/hosts:
23
+
24
+ 127.0.0.1 ...other aliases... fjson
25
+
26
+Restart your Apache.
27
+
28
+Now visit: http://fjson/
29
+
30
+that will show the test/demo page. If it doesn't, edit index.html and
31
+make sure that:
32
+
33
+ WhAjaj.Connector.options.ajax.url = ...;
34
+
35
+points to your CGI script. In theory you can also do this over fossil
36
+standalone server mode, but i haven't yet tested that particular test
37
+page in that mode.
38
+
--- a/ajax/README
+++ b/ajax/README
@@ -0,0 +1,38 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
--- a/ajax/README
+++ b/ajax/README
@@ -0,0 +1,38 @@
1 This is the README for how to set up the Fossil/JSON test web page
2 under Apache on Unix systems. This is only intended only for
3 Fossil/JSON developers/tinkerers:
4
5 First, copy cgi-bin/fossil-json.cgi.example to
6 cgi-bin/fossil-json.cgi. Edit it and correct the paths to the fossil
7 binary and the repo you want to serve. Make it executable.
8
9 MAKE SURE that the fossil repo you use is world-writable OR that your
10 Web/CGI server is set up to run as the user ID of the owner of the
11 fossil file. ALSO: the DIRECTORY CONTAINING the repo file must be
12 writable by the CGI process.
13
14 Next, set up an apache vhost entry. Mine looks like:
15
16 <VirtualHost *:80>
17 ServerAlias fjson
18 ScriptAlias /cgi-bin/ /home/stephan/cvs/fossil/fossil-json/ajax/cgi-bin/
19 DocumentRoot /home/stephan/cvs/fossil/fossil-json/ajax
20 </VirtualHost>
21
22 Now add your preferred vhost name (fjson in the above example) to /etc/hosts:
23
24 127.0.0.1 ...other aliases... fjson
25
26 Restart your Apache.
27
28 Now visit: http://fjson/
29
30 that will show the test/demo page. If it doesn't, edit index.html and
31 make sure that:
32
33 WhAjaj.Connector.options.ajax.url = ...;
34
35 points to your CGI script. In theory you can also do this over fossil
36 standalone server mode, but i haven't yet tested that particular test
37 page in that mode.
38
--- a/ajax/cgi-bin/fossil-json.cgi.example
+++ b/ajax/cgi-bin/fossil-json.cgi.example
@@ -0,0 +1,2 @@
1
+#!/path/to/fossil/binary
2
+repository: /path/to/repo.fsl
--- a/ajax/cgi-bin/fossil-json.cgi.example
+++ b/ajax/cgi-bin/fossil-json.cgi.example
@@ -0,0 +1,2 @@
 
 
--- a/ajax/cgi-bin/fossil-json.cgi.example
+++ b/ajax/cgi-bin/fossil-json.cgi.example
@@ -0,0 +1,2 @@
1 #!/path/to/fossil/binary
2 repository: /path/to/repo.fsl
--- a/ajax/index.html
+++ b/ajax/index.html
@@ -0,0 +1 @@
1
+<cap
--- a/ajax/index.html
+++ b/ajax/index.html
@@ -0,0 +1 @@
 
--- a/ajax/index.html
+++ b/ajax/index.html
@@ -0,0 +1 @@
1 <cap
--- a/ajax/js/fossil-ajaj.js
+++ b/ajax/js/fossil-ajaj.js
@@ -0,0 +1,21 @@
1
+/**
2
+ This file contains a WhAjaj extension for use with Fossil/JSON.
3
+
4
+ Autho
5
+ this function one gets the
6
+ in userName and this.authToke}
7
+ e*
8
+ This f/**
9
+ Thito the file contains a W/**
10
+ This file contains a WhAjaj extension for use with Fossil/JSON.
11
+
12
+ Autho
13
+ this function one gets the
14
+ in userName and this.authToke}
15
+ else {/**
16
+ Tokenselftry { WhAjaj extension for u/**try { WhAjaj extension for u/**
17
+/**
18
+ This file /**
19
+ ThiRequestSP-specifi || undefine()
20
+ };
21
+ }
--- a/ajax/js/fossil-ajaj.js
+++ b/ajax/js/fossil-ajaj.js
@@ -0,0 +1,21 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
--- a/ajax/js/fossil-ajaj.js
+++ b/ajax/js/fossil-ajaj.js
@@ -0,0 +1,21 @@
1 /**
2 This file contains a WhAjaj extension for use with Fossil/JSON.
3
4 Autho
5 this function one gets the
6 in userName and this.authToke}
7 e*
8 This f/**
9 Thito the file contains a W/**
10 This file contains a WhAjaj extension for use with Fossil/JSON.
11
12 Autho
13 this function one gets the
14 in userName and this.authToke}
15 else {/**
16 Tokenselftry { WhAjaj extension for u/**try { WhAjaj extension for u/**
17 /**
18 This file /**
19 ThiRequestSP-specifi || undefine()
20 };
21 }
--- a/ajax/js/whajaj.js
+++ b/ajax/js/whajaj.js
@@ -0,0 +1,318 @@
1
+/**
2
+ This file provides a JS interface into the core functionality of
3
+ a whiki CGI back-endver
4
+ insofar as possible.
5
+
6
+ All functionality is part of a class name framework.
7
+
8
+ Author: Stephan Beal (http://wanderinghorse.net/home/stephan/)
9
+
10
+ License: Public Domain
11
+
12
+ This framework is directly derived from code originally found in
13
+ http://code.google.com/
14
+ http://whiki.wanderinghorse.net, where it contained quite a bit
15
+ of application-specific logic. It was eventually (the 3rd time i
16
+ needed it) split off into its own library to simplify inclusion
17
+ into my many mini-projects.
18
+*/
19
+
20
+
21
+/**
22
+ The WhAjaj function is primarily a namespace, and not intended
23
+ to called or instantiated via the 'new' operator.
24
+*/
25
+function WhAjaj()
26
+{
27
+}
28
+
29
+/** Returns a millisecew Date()).getTime();
30
+};
31
+
32
+/** Returns a Unix Epoch timestamp (in seconds) in integer format.
33
+
34
+
35
+ FIXME: keys w/o '=', or with no value, "should probably" be
36
+ treated as boolean onds) in integer format.
37
+
38
+ Reminder to self: (1.1 %1.2) evaluate
39
+ in JS, and thus this implementation is less thundefinedation is less than optimal.
40
+*/
41
+WhAjaj.unixTimestamp = function()
42
+{
43
+ var ts = (new Date()).getTime();
44
+ return parseInt( ""+((ts / 1000) % ts) );
45
+};
46
+
47
+/**
48
+ Returns true if v is-a Array instance.
49
+*/
50
+WhAja {name:name, password:pw**
51
+ This file provides a JS interface into the core functionality of
52
+ JSON-centric back-ends. It sends GET or JSON POST requests to
53
+ a back-end and expecJ the very first
54
+ and see where i
55
+ break my other
56
+ th that
57
+ string). The initiatingest object is
58
+ can normally specific expects JSON responses. The exact semantics of
59
+ the underlying back-end and overlying front-/**
60
+ This file prov callbacks (set in
61
+( require it in some
62
+ which
63
+ *
64
+ This file prov interface into the
65
+ indicates an
66
+ to produces
67
+ a back-end a/**
68
+ This f
69
+ //if( json ) json = json.replace(/ö/g,"\\u00f6") /* ONLY FOR A SPECIFIC TEST */;
70
+ for deeply archaic reasons whichmight no longer apply.
71
+ var xhr = if( xhr && xhr
72
+ =()Success This file provides a JS interface into the core functionality of
73
+ JSON-centric back-ends. It sends GET or JSON POST requests to
74
+ a back-end and expects JSON responses. The exact semantics of
75
+ the underlying back-end and overlying front-end are not its concern,
76
+ and it leaves the interpretation of the data up to the client/server
77
+ insofar as possible.
78
+
79
+ All functionality is part of a class named WhAjaj, and that class
80
+ acts as namespace for this framework.
81
+
82
+ Author: Stephan Beal (http://wanderinghorse.net/home/stephan/)
83
+
84
+ License: Public Domain
85
+
86
+ This framework is directly derived from code originally found in
87
+ http://code.google.com/
88
+ http://whiki.wanderinghorse.net, where it contained quite a bit
89
+ of application-specific logic. It was eventually (the 3rd time i
90
+ needed it) split off into its own library to simplify inclusion
91
+ into my many mini-projects.
92
+*/
93
+
94
+
95
+/**
96
+ The WhAjaj function is primarily a namespace, and not intended
97
+ to called or instantiated via the 'new' operator.
98
+*/
99
+function WhAjaj()
100
+{
101
+}
102
+
103
+/** Returns a millisecew Date()).getTime();
104
+};
105
+
106
+/** Returns a Unix Epoch timestamp (in seconds) in integer format.
107
+
108
+ Reminder to self: (1.1 %1.2) evaluate
109
+ in JS, and thus this implementation is less thundefinedation is less than optimal.
110
+*/
111
+WhAjaj.unixTimestamp = function()
112
+{
113
+ var ts = (new Date()).getTime();
114
+ return parseInt( ""+((ts / 1000) % ts) );
115
+};
116
+
117
+/**
118
+ Returns true if v is-a Array instance.
119
+*/
120
+WhAja {name:name, password:pw**
121
+ This file provides a JS interface into the core functionality of
122
+ JSON-centric back-ends. It sends GET or JSON POST requests to
123
+ a back-end and expecJ the very first
124
+ and see where i
125
+ break my other
126
+ th that
127
+ string). The initiatingest object is
128
+ can normally specific expects JSON responses. The exact semantics of
129
+ the underlying back-end and overlying front-/**
130
+ This file prov callbacks (set in
131
+( require it in some
132
+ which
133
+ *
134
+ This file prov interface into the
135
+ indicates an
136
+ to produces
137
+ a back-end a/**
138
+ This f
139
+ //if( json ) json = json.replace(/ö/g,"\\u00f6") /* ONLY FOR A SPECIFIC TEST */;
140
+ for deeply archaic reasons whichmight no longer apply.
141
+ var xhr = if( xhr && xhr
142
+ =()vides a JS interface into the core functionality of
143
+ JSON-centric back-ends. It sends GET or JSON POST requests to
144
+ a back-end and expects JSON responses. The exact semantics of
145
+ the underlying back-end and overlying front-end are not its concern,
146
+ and it leaves the interpretation of the data up to the client/server
147
+ insofar as possible.
148
+
149
+ All functionality is part of a class named WhAjaj, and that class
150
+ acts as namespace for this frameworkthis.options = a backvar onError =opt.onError) ? try{
151
+
152
+ This le provides a JS interface into the core functionality of
153
+ JSON-centric back-ends. It sends GET or JSON POST requests to
154
+ a back-end and expects
155
+*/*/;
156
+);wr.writeghorse.net/home/step/**
157
+ This file provides a JS interfac JS interface into the coterface into the core functionality of
158
+ JSON-centric back-ends. It sends GET or JSON POST requests to
159
+ a back-end and expects JSON responses. The exact semantics of
160
+ the underlying back-end and overlying front-enrdSuccess( request, jn,
161
+ and it leaves the /**
162
+ This file provides a JS interface into the core functionality of
163
+ JSON-centric back-ends. It sends GET or JSON POST requests to
164
+ a back-end and expects JSON responses. The exact semantics of
165
+ the underlying back-end and overlying front-end are not its concern,
166
+ and it leaves the interpretation of the data up to the client/server
167
+ insofar as possible.
168
+
169
+ All functionality is part of a class named WhAjaj, and that class
170
+ acts as namespace for this framework.
171
+
172
+ Author: Stephan Beal (http://wanderinghorse.net/home/stephan/)
173
+
174
+ License: Public Domain
175
+
176
+ This framework is directly derived from code originally found in
177
+ http://code.google.com/
178
+ http://whiki.wanderinghorse.net, where it contained quite a bit
179
+ of application-specific logic. It was eventually (the 3rd time i
180
+ needed it) split off into its own library to simplify inclusion
181
+ into my many mini-projects.
182
+*/
183
+
184
+
185
+/**
186
+ The WhAjaj function is primarily a namespace, and not intended
187
+ to called or instantiated via the 'new' operator.
188
+*/
189
+function WhAjaj()
190
+{
191
+}
192
+
193
+/** Returns a millisecew Date()).getTime();
194
+};
195
+
196
+/** Returns a Unix Epoch timestamp (in seconds) in integer format.
197
+
198
+ Reminder to self: (1.1 %1.2) evaluate
199
+ in JS, and thus this implementation is less thundefinedation is less than optimal.
200
+*/
201
+WhAjaj.unixTimestamp = function()
202
+{
203
+ var ts = (new Date()).getTime();
204
+ return parseInt( ""+((ts / 1000) % ts) );
205
+};
206
+
207
+/**
208
+ Returns true if v is-a Array instance.
209
+*/
210
+WhAja {name:name, password:pw**
211
+ This file provides a JS interface into the core functionality of
212
+ JSON-centric back-ends. It sends GET or JSON POST requests to
213
+ a back-end and expecJ the very first
214
+ and see where i
215
+ break my other
216
+ th that
217
+ string). The initiatingest object is
218
+ can normally specific expects JSON responses. The exact semantics of
219
+ the underlying back-end and overlying front-/**
220
+ This file prov callbacks (set in
221
+( require it in some
222
+ which
223
+ *
224
+ This file prov interface into the
225
+ indicates an
226
+ to produces
227
+ a back-end a/**
228
+ This f
229
+ //if( json ) json = json.replace(/ö/g,"\\u00f6") /* ONLY FOR A SPECIFIC TEST */;
230
+ for deeply archaic reasons whichmight no longer apply.
231
+ var xhr = if( xhr && xhr
232
+ =()Success This file provides a JS interface into the core functionality of
233
+ JSON-centric back-ends. It sends GET or JSON POST requests to
234
+ a back-end and expects JSON responses. The exact semantics of
235
+ the underlying back-end and overlying front-end are not its concern,
236
+ and it leaves the interpretation of the data up to the client/server
237
+ insofar as possible.
238
+
239
+ All functionality is part of a class named WhAjaj, and that class
240
+ acts as namespace for this framework.
241
+
242
+ Author: Stephan Beal (http://wanderinghorse.net/home/stephan/)
243
+
244
+ License: Public Domain
245
+
246
+ This framework is directly derived from code originally found in
247
+ http://code.google.com/
248
+ http://whiki.wanderinghorse.net, where it contained quite a bit
249
+ of application-specific logic. It was eventually (the 3rd time i
250
+ needed it) split off into its own library to simplify inclusion
251
+ into my many mini-projects.
252
+*/
253
+
254
+
255
+/**
256
+ The WhAjaj function is primarily a namespace, and not intended
257
+ to called or instantiated via the 'new' operator.
258
+*/
259
+function WhAjaj()
260
+{
261
+}
262
+
263
+/** Returns a millisecew Date()).getTime();
264
+};
265
+
266
+/** Returns a Unix Epoch timestamp (in seconds) in integer format.
267
+
268
+ Reminder to self: (1.1 %1.2) evaluate
269
+ in JS, and thus this implementation is less thundefinedation is less than optimal.
270
+*/
271
+WhAjaj.unixTimestamp = function()
272
+{
273
+ var ts = (new Date()).getTime();
274
+ return parseInt( ""+((ts / 1000) % ts) );
275
+};
276
+
277
+/**
278
+ Returns true if v is-a Array instance.
279
+*/
280
+WhAja {name:name, password:pw**
281
+ This file provides a JS interface into the core functionality of
282
+ JSON-centric back-ends. It sends GET or JSON POST requests to
283
+ a back-end and expecJ the very first
284
+ and see where i
285
+ break my other
286
+ th that
287
+ string). The initiatingest object is
288
+ can normally specific expects JSON responses. The exact semantics of
289
+ the underlying back-end and overlying front-/**
290
+ This file prov callbacks (set in
291
+( require it in some
292
+ which
293
+ *
294
+ This file prov interface into the
295
+ indicates an
296
+ to produces
297
+ a back-end a/**
298
+ This f
299
+ //if( json ) json = json.replace(/ö/g,"\\u00f6") /* ONLY FOR A SPECIFIC TEST */;
300
+ for deeply archaic reasons whichmight no longer apply.
301
+ var xhr = if( xhr && xhr
302
+ =()vides a JS interface into the core functionality of
303
+ JSON-centric back-ends. It sends GET or JSON POST requests to
304
+ a back-end and expects JSON responses. The exact semantics of
305
+ the underlying back-enjQuery;
306
+work.
307
+
308
+ Author: /**
309
+ This 'POST'R@3iW,C5@2Tj,2F@2bA,8:Passwordb@2dT,1A@2hl,1:X24@2iw,4:6000U@3iW,7:an AJAXk@2le,H:
310
+ thatn@2md,M@3RD,G@2oW,G@8f0,E:is passed as
311
+C@6yB,X@2pP,_: can normally ignore it
312
+ _@2qT,M@2rD,5:
313
+ 8@4pS,1e@2rZ,I:
314
+ whichm@2tT,5:
315
+ 8@22G,F:this error infob@2ue,L@3MB,I: is that this dataV@2vq,C:
316
+ X@2wK,A: to reportO@2bB,h@2xM,1: 9@2kj,O@2yB,a: is unexpected and is as fatal to theL@2ol,W@2zr,4: K@2d0,Cp@2~X,1:XDO@3CM,1:XJm@3Pk,1IQ@3ow,x@5lF,K@6OG,Dn@5Bi,x@5Pt,m@5ZE,Q@6jS,M@6y0,1:
317
+8@3il,I@5IV,M@8Ql,4HW@5Tf,2u@9kB,2jR7xs; This file provivides a JS interface into the core functionality of
318
+ a whiki CGI back-endv
--- a/ajax/js/whajaj.js
+++ b/ajax/js/whajaj.js
@@ -0,0 +1,318 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
--- a/ajax/js/whajaj.js
+++ b/ajax/js/whajaj.js
@@ -0,0 +1,318 @@
1 /**
2 This file provides a JS interface into the core functionality of
3 a whiki CGI back-endver
4 insofar as possible.
5
6 All functionality is part of a class name framework.
7
8 Author: Stephan Beal (http://wanderinghorse.net/home/stephan/)
9
10 License: Public Domain
11
12 This framework is directly derived from code originally found in
13 http://code.google.com/
14 http://whiki.wanderinghorse.net, where it contained quite a bit
15 of application-specific logic. It was eventually (the 3rd time i
16 needed it) split off into its own library to simplify inclusion
17 into my many mini-projects.
18 */
19
20
21 /**
22 The WhAjaj function is primarily a namespace, and not intended
23 to called or instantiated via the 'new' operator.
24 */
25 function WhAjaj()
26 {
27 }
28
29 /** Returns a millisecew Date()).getTime();
30 };
31
32 /** Returns a Unix Epoch timestamp (in seconds) in integer format.
33
34
35 FIXME: keys w/o '=', or with no value, "should probably" be
36 treated as boolean onds) in integer format.
37
38 Reminder to self: (1.1 %1.2) evaluate
39 in JS, and thus this implementation is less thundefinedation is less than optimal.
40 */
41 WhAjaj.unixTimestamp = function()
42 {
43 var ts = (new Date()).getTime();
44 return parseInt( ""+((ts / 1000) % ts) );
45 };
46
47 /**
48 Returns true if v is-a Array instance.
49 */
50 WhAja {name:name, password:pw**
51 This file provides a JS interface into the core functionality of
52 JSON-centric back-ends. It sends GET or JSON POST requests to
53 a back-end and expecJ the very first
54 and see where i
55 break my other
56 th that
57 string). The initiatingest object is
58 can normally specific expects JSON responses. The exact semantics of
59 the underlying back-end and overlying front-/**
60 This file prov callbacks (set in
61 ( require it in some
62 which
63 *
64 This file prov interface into the
65 indicates an
66 to produces
67 a back-end a/**
68 This f
69 //if( json ) json = json.replace(/ö/g,"\\u00f6") /* ONLY FOR A SPECIFIC TEST */;
70 for deeply archaic reasons whichmight no longer apply.
71 var xhr = if( xhr && xhr
72 =()Success This file provides a JS interface into the core functionality of
73 JSON-centric back-ends. It sends GET or JSON POST requests to
74 a back-end and expects JSON responses. The exact semantics of
75 the underlying back-end and overlying front-end are not its concern,
76 and it leaves the interpretation of the data up to the client/server
77 insofar as possible.
78
79 All functionality is part of a class named WhAjaj, and that class
80 acts as namespace for this framework.
81
82 Author: Stephan Beal (http://wanderinghorse.net/home/stephan/)
83
84 License: Public Domain
85
86 This framework is directly derived from code originally found in
87 http://code.google.com/
88 http://whiki.wanderinghorse.net, where it contained quite a bit
89 of application-specific logic. It was eventually (the 3rd time i
90 needed it) split off into its own library to simplify inclusion
91 into my many mini-projects.
92 */
93
94
95 /**
96 The WhAjaj function is primarily a namespace, and not intended
97 to called or instantiated via the 'new' operator.
98 */
99 function WhAjaj()
100 {
101 }
102
103 /** Returns a millisecew Date()).getTime();
104 };
105
106 /** Returns a Unix Epoch timestamp (in seconds) in integer format.
107
108 Reminder to self: (1.1 %1.2) evaluate
109 in JS, and thus this implementation is less thundefinedation is less than optimal.
110 */
111 WhAjaj.unixTimestamp = function()
112 {
113 var ts = (new Date()).getTime();
114 return parseInt( ""+((ts / 1000) % ts) );
115 };
116
117 /**
118 Returns true if v is-a Array instance.
119 */
120 WhAja {name:name, password:pw**
121 This file provides a JS interface into the core functionality of
122 JSON-centric back-ends. It sends GET or JSON POST requests to
123 a back-end and expecJ the very first
124 and see where i
125 break my other
126 th that
127 string). The initiatingest object is
128 can normally specific expects JSON responses. The exact semantics of
129 the underlying back-end and overlying front-/**
130 This file prov callbacks (set in
131 ( require it in some
132 which
133 *
134 This file prov interface into the
135 indicates an
136 to produces
137 a back-end a/**
138 This f
139 //if( json ) json = json.replace(/ö/g,"\\u00f6") /* ONLY FOR A SPECIFIC TEST */;
140 for deeply archaic reasons whichmight no longer apply.
141 var xhr = if( xhr && xhr
142 =()vides a JS interface into the core functionality of
143 JSON-centric back-ends. It sends GET or JSON POST requests to
144 a back-end and expects JSON responses. The exact semantics of
145 the underlying back-end and overlying front-end are not its concern,
146 and it leaves the interpretation of the data up to the client/server
147 insofar as possible.
148
149 All functionality is part of a class named WhAjaj, and that class
150 acts as namespace for this frameworkthis.options = a backvar onError =opt.onError) ? try{
151
152 This le provides a JS interface into the core functionality of
153 JSON-centric back-ends. It sends GET or JSON POST requests to
154 a back-end and expects
155 */*/;
156 );wr.writeghorse.net/home/step/**
157 This file provides a JS interfac JS interface into the coterface into the core functionality of
158 JSON-centric back-ends. It sends GET or JSON POST requests to
159 a back-end and expects JSON responses. The exact semantics of
160 the underlying back-end and overlying front-enrdSuccess( request, jn,
161 and it leaves the /**
162 This file provides a JS interface into the core functionality of
163 JSON-centric back-ends. It sends GET or JSON POST requests to
164 a back-end and expects JSON responses. The exact semantics of
165 the underlying back-end and overlying front-end are not its concern,
166 and it leaves the interpretation of the data up to the client/server
167 insofar as possible.
168
169 All functionality is part of a class named WhAjaj, and that class
170 acts as namespace for this framework.
171
172 Author: Stephan Beal (http://wanderinghorse.net/home/stephan/)
173
174 License: Public Domain
175
176 This framework is directly derived from code originally found in
177 http://code.google.com/
178 http://whiki.wanderinghorse.net, where it contained quite a bit
179 of application-specific logic. It was eventually (the 3rd time i
180 needed it) split off into its own library to simplify inclusion
181 into my many mini-projects.
182 */
183
184
185 /**
186 The WhAjaj function is primarily a namespace, and not intended
187 to called or instantiated via the 'new' operator.
188 */
189 function WhAjaj()
190 {
191 }
192
193 /** Returns a millisecew Date()).getTime();
194 };
195
196 /** Returns a Unix Epoch timestamp (in seconds) in integer format.
197
198 Reminder to self: (1.1 %1.2) evaluate
199 in JS, and thus this implementation is less thundefinedation is less than optimal.
200 */
201 WhAjaj.unixTimestamp = function()
202 {
203 var ts = (new Date()).getTime();
204 return parseInt( ""+((ts / 1000) % ts) );
205 };
206
207 /**
208 Returns true if v is-a Array instance.
209 */
210 WhAja {name:name, password:pw**
211 This file provides a JS interface into the core functionality of
212 JSON-centric back-ends. It sends GET or JSON POST requests to
213 a back-end and expecJ the very first
214 and see where i
215 break my other
216 th that
217 string). The initiatingest object is
218 can normally specific expects JSON responses. The exact semantics of
219 the underlying back-end and overlying front-/**
220 This file prov callbacks (set in
221 ( require it in some
222 which
223 *
224 This file prov interface into the
225 indicates an
226 to produces
227 a back-end a/**
228 This f
229 //if( json ) json = json.replace(/ö/g,"\\u00f6") /* ONLY FOR A SPECIFIC TEST */;
230 for deeply archaic reasons whichmight no longer apply.
231 var xhr = if( xhr && xhr
232 =()Success This file provides a JS interface into the core functionality of
233 JSON-centric back-ends. It sends GET or JSON POST requests to
234 a back-end and expects JSON responses. The exact semantics of
235 the underlying back-end and overlying front-end are not its concern,
236 and it leaves the interpretation of the data up to the client/server
237 insofar as possible.
238
239 All functionality is part of a class named WhAjaj, and that class
240 acts as namespace for this framework.
241
242 Author: Stephan Beal (http://wanderinghorse.net/home/stephan/)
243
244 License: Public Domain
245
246 This framework is directly derived from code originally found in
247 http://code.google.com/
248 http://whiki.wanderinghorse.net, where it contained quite a bit
249 of application-specific logic. It was eventually (the 3rd time i
250 needed it) split off into its own library to simplify inclusion
251 into my many mini-projects.
252 */
253
254
255 /**
256 The WhAjaj function is primarily a namespace, and not intended
257 to called or instantiated via the 'new' operator.
258 */
259 function WhAjaj()
260 {
261 }
262
263 /** Returns a millisecew Date()).getTime();
264 };
265
266 /** Returns a Unix Epoch timestamp (in seconds) in integer format.
267
268 Reminder to self: (1.1 %1.2) evaluate
269 in JS, and thus this implementation is less thundefinedation is less than optimal.
270 */
271 WhAjaj.unixTimestamp = function()
272 {
273 var ts = (new Date()).getTime();
274 return parseInt( ""+((ts / 1000) % ts) );
275 };
276
277 /**
278 Returns true if v is-a Array instance.
279 */
280 WhAja {name:name, password:pw**
281 This file provides a JS interface into the core functionality of
282 JSON-centric back-ends. It sends GET or JSON POST requests to
283 a back-end and expecJ the very first
284 and see where i
285 break my other
286 th that
287 string). The initiatingest object is
288 can normally specific expects JSON responses. The exact semantics of
289 the underlying back-end and overlying front-/**
290 This file prov callbacks (set in
291 ( require it in some
292 which
293 *
294 This file prov interface into the
295 indicates an
296 to produces
297 a back-end a/**
298 This f
299 //if( json ) json = json.replace(/ö/g,"\\u00f6") /* ONLY FOR A SPECIFIC TEST */;
300 for deeply archaic reasons whichmight no longer apply.
301 var xhr = if( xhr && xhr
302 =()vides a JS interface into the core functionality of
303 JSON-centric back-ends. It sends GET or JSON POST requests to
304 a back-end and expects JSON responses. The exact semantics of
305 the underlying back-enjQuery;
306 work.
307
308 Author: /**
309 This 'POST'R@3iW,C5@2Tj,2F@2bA,8:Passwordb@2dT,1A@2hl,1:X24@2iw,4:6000U@3iW,7:an AJAXk@2le,H:
310 thatn@2md,M@3RD,G@2oW,G@8f0,E:is passed as
311 C@6yB,X@2pP,_: can normally ignore it
312 _@2qT,M@2rD,5:
313 8@4pS,1e@2rZ,I:
314 whichm@2tT,5:
315 8@22G,F:this error infob@2ue,L@3MB,I: is that this dataV@2vq,C:
316 X@2wK,A: to reportO@2bB,h@2xM,1: 9@2kj,O@2yB,a: is unexpected and is as fatal to theL@2ol,W@2zr,4: K@2d0,Cp@2~X,1:XDO@3CM,1:XJm@3Pk,1IQ@3ow,x@5lF,K@6OG,Dn@5Bi,x@5Pt,m@5ZE,Q@6jS,M@6y0,1:
317 8@3il,I@5IV,M@8Ql,4HW@5Tf,2u@9kB,2jR7xs; This file provivides a JS interface into the core functionality of
318 a whiki CGI back-endv

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button