nitro 0.1.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (119) hide show
  1. data/AUTHORS +8 -0
  2. data/ChangeLog +1546 -0
  3. data/LICENCE +32 -0
  4. data/README +278 -0
  5. data/RELEASES +7 -0
  6. data/Rakefile +79 -0
  7. data/bin/cluster.rb +219 -0
  8. data/doc/architecture.txt +28 -0
  9. data/doc/bugs.txt +7 -0
  10. data/doc/css.txt +20 -0
  11. data/doc/ideas.txt +120 -0
  12. data/doc/pg.txt +47 -0
  13. data/doc/svn.txt +82 -0
  14. data/doc/todo.txt +30 -0
  15. data/etc/new-project.rb +18 -0
  16. data/examples/simple/README +15 -0
  17. data/examples/simple/app.rb +31 -0
  18. data/examples/simple/conf/apache.conf +100 -0
  19. data/examples/simple/conf/config.rb +89 -0
  20. data/examples/simple/conf/debug-config.rb +53 -0
  21. data/examples/simple/conf/live-config.rb +48 -0
  22. data/examples/simple/conf/overrides.rb +9 -0
  23. data/examples/simple/conf/requires.rb +51 -0
  24. data/examples/simple/ctl +32 -0
  25. data/examples/simple/env.rb +33 -0
  26. data/examples/simple/install.rb +12 -0
  27. data/examples/simple/lib/articles/entities.rb +35 -0
  28. data/examples/simple/lib/articles/lc-en.rb +36 -0
  29. data/examples/simple/lib/articles/methods.rb +55 -0
  30. data/examples/simple/lib/articles/part.rb +58 -0
  31. data/examples/simple/logs/access_log +2 -0
  32. data/examples/simple/logs/apache.log +3 -0
  33. data/examples/simple/logs/app.log +1 -0
  34. data/examples/simple/logs/events.log +1 -0
  35. data/examples/simple/root/add-article.sx +15 -0
  36. data/examples/simple/root/article-form.ss +20 -0
  37. data/examples/simple/root/comments-form.ss +16 -0
  38. data/examples/simple/root/comments.si +30 -0
  39. data/examples/simple/root/index.sx +44 -0
  40. data/examples/simple/root/shader/shader.xsl +100 -0
  41. data/examples/simple/root/shader/style.css +9 -0
  42. data/examples/simple/root/view-article.sx +30 -0
  43. data/examples/tiny/app.rb +30 -0
  44. data/examples/tiny/conf/apache.conf +100 -0
  45. data/examples/tiny/conf/config.rb +67 -0
  46. data/examples/tiny/conf/requires.rb +40 -0
  47. data/examples/tiny/ctl +31 -0
  48. data/examples/tiny/logs/access_log +9 -0
  49. data/examples/tiny/logs/apache.log +9 -0
  50. data/examples/tiny/root/index.sx +35 -0
  51. data/lib/n/app/cluster.rb +219 -0
  52. data/lib/n/app/cookie.rb +86 -0
  53. data/lib/n/app/filters/autologin.rb +50 -0
  54. data/lib/n/app/fragment.rb +67 -0
  55. data/lib/n/app/handlers.rb +120 -0
  56. data/lib/n/app/handlers/code-handler.rb +184 -0
  57. data/lib/n/app/handlers/page-handler.rb +612 -0
  58. data/lib/n/app/request-part.rb +59 -0
  59. data/lib/n/app/request.rb +653 -0
  60. data/lib/n/app/script.rb +398 -0
  61. data/lib/n/app/server.rb +53 -0
  62. data/lib/n/app/session.rb +224 -0
  63. data/lib/n/app/user.rb +47 -0
  64. data/lib/n/app/webrick-servlet.rb +213 -0
  65. data/lib/n/app/webrick.rb +70 -0
  66. data/lib/n/application.rb +187 -0
  67. data/lib/n/config.rb +31 -0
  68. data/lib/n/db.rb +217 -0
  69. data/lib/n/db/README +232 -0
  70. data/lib/n/db/connection.rb +369 -0
  71. data/lib/n/db/make-release.sh +26 -0
  72. data/lib/n/db/managed.rb +235 -0
  73. data/lib/n/db/mixins.rb +282 -0
  74. data/lib/n/db/mysql.rb +342 -0
  75. data/lib/n/db/psql.rb +378 -0
  76. data/lib/n/db/tools.rb +110 -0
  77. data/lib/n/db/utils.rb +99 -0
  78. data/lib/n/events.rb +118 -0
  79. data/lib/n/l10n.rb +22 -0
  80. data/lib/n/logger.rb +33 -0
  81. data/lib/n/macros.rb +53 -0
  82. data/lib/n/mixins.rb +46 -0
  83. data/lib/n/parts.rb +154 -0
  84. data/lib/n/properties.rb +194 -0
  85. data/lib/n/server.rb +61 -0
  86. data/lib/n/server/PLAYBACK.txt +8 -0
  87. data/lib/n/server/RESEARCH.txt +13 -0
  88. data/lib/n/server/filter.rb +77 -0
  89. data/lib/n/shaders.rb +167 -0
  90. data/lib/n/sitemap.rb +188 -0
  91. data/lib/n/std.rb +69 -0
  92. data/lib/n/sync/clc.rb +108 -0
  93. data/lib/n/sync/handler.rb +221 -0
  94. data/lib/n/sync/server.rb +170 -0
  95. data/lib/n/tools/README +11 -0
  96. data/lib/n/ui/date-select.rb +74 -0
  97. data/lib/n/ui/pager.rb +187 -0
  98. data/lib/n/ui/popup.rb +45 -0
  99. data/lib/n/ui/select.rb +41 -0
  100. data/lib/n/ui/tabs.rb +34 -0
  101. data/lib/n/utils/array.rb +92 -0
  102. data/lib/n/utils/cache.rb +144 -0
  103. data/lib/n/utils/gfx.rb +108 -0
  104. data/lib/n/utils/hash.rb +148 -0
  105. data/lib/n/utils/html.rb +147 -0
  106. data/lib/n/utils/http.rb +98 -0
  107. data/lib/n/utils/mail.rb +28 -0
  108. data/lib/n/utils/number.rb +31 -0
  109. data/lib/n/utils/pool.rb +66 -0
  110. data/lib/n/utils/string.rb +297 -0
  111. data/lib/n/utils/template.rb +38 -0
  112. data/lib/n/utils/time.rb +91 -0
  113. data/lib/n/utils/uri.rb +193 -0
  114. data/lib/xsl/base.xsl +205 -0
  115. data/lib/xsl/ce.xsl +30 -0
  116. data/lib/xsl/localization.xsl +23 -0
  117. data/lib/xsl/xforms.xsl +26 -0
  118. data/test/run.rb +95 -0
  119. metadata +187 -0
data/AUTHORS ADDED
@@ -0,0 +1,8 @@
1
+ * George Moschovitis <gm@navel.gr>
2
+ Architecture and Design, lead developer, documentation, maintainer.
3
+
4
+ * Anastasios Koutoumanos <ak@navel.gr>
5
+ Design, additional coding.
6
+
7
+ * Elias Athanasopoulos <elathan@navel.gr>
8
+ Additional coding.
@@ -0,0 +1,1546 @@
1
+ 21-10-2004 George Moschovitis <gm@navel.gr>
2
+
3
+ * README: final changes before the release.
4
+
5
+ 20-10-2004 George Moschovitis <gm@navel.gr>
6
+
7
+ * lib/n/server/cluster.rb: removed.
8
+
9
+ * lib/n/tools: cleaned up.
10
+
11
+ * lib/n/ui/pager.rb: removed old N2 stuff.
12
+
13
+ * examples/simple/env.rb: introduced and fixed.
14
+
15
+ * reworked many source files to generate better rdoc.
16
+
17
+ * packaged as a Gem.
18
+
19
+ * Rakefile: read version from config,
20
+ fixed gem spec to include all files.
21
+
22
+ * examples/tiny/*: introduced tiny example.
23
+
24
+ * AUTHORS: introduced.
25
+
26
+ * lib/n/app/handlers/page-handler.rb: FUCKIN INCREDIBLE, the xml
27
+ parser was not needed, removed!!!
28
+
29
+ * lib/n/shaders.rb: converted to use ruby-xslt.
30
+
31
+ * README: started working on it.
32
+
33
+ * MIT-LICENCE: added.
34
+
35
+ 19-10-2004 George Moschovitis <gm@navel.gr>
36
+
37
+ * lib/n/app/webrick-servler.rb (#do_GET): better error handling.
38
+
39
+ * examples/simple/conf/apache.conf: cleaned.
40
+
41
+ * examples/simple/*: working sitemap.
42
+
43
+ * examples/simple/root/comments.si: introduced.
44
+ * examples/simple/root/comments-form.ss: introduced.
45
+
46
+ * lib/xsl/base.xsl: deprecated old stuff,
47
+ removed <x:include> macro.
48
+
49
+ * lib/db/psql.rb (#create_table): always create oid_seq and surpress
50
+ the possible error,
51
+ better error reposritng in methods.
52
+
53
+ * examples/simple/lib/lc-en.rb: introduced.
54
+
55
+ * examples/simple/lib/methods.rb: introduced,
56
+ add_article.
57
+
58
+ * examples/simple/lib/entities.rb: introduced.
59
+
60
+ * lib/n/shaders.rc (NilShader): introduced.
61
+ (Shader): transform alias.
62
+
63
+ * lib/n/app/user.rb: introduced,
64
+ (AnonymousUser): defined.
65
+
66
+ * lib/n/app/handlers/page-handler.rb: use $default_shader,
67
+ (#calc_tag): check if shader exists,
68
+ (#transform_script): added support for nil shader,
69
+ (#transform_script): new ULTRA COOL method macro,
70
+ (#transform_script): mega, resolve dynamic includes too.
71
+
72
+ * examples/simple/ctl: improved.
73
+
74
+ * examples/simple: introduced,
75
+ copied some files from app to build the example,
76
+ use shaders,
77
+ use css.
78
+
79
+ * etc/new-project.rb: introduced.
80
+
81
+ * etc: moved from scripts.
82
+
83
+ 18-10-2004 George Moschovitis <gm@navel.gr>
84
+
85
+ * lib/n/db/connection.rb (#match): use safe query.
86
+
87
+ * lib/n/app/webrick-servlet.rb (#do_GET): even better error log.
88
+
89
+ * lib/n/db.rb: added get_by_oid wrapper.
90
+
91
+ * Rakefile: excellent builds tgs, zip and gem,
92
+ dont include .svn dirs,
93
+ RDocTask.
94
+
95
+ * excellent, the reference app runs again.
96
+
97
+ 18-10-2004 George Moschovitis <gm@navel.gr>
98
+
99
+ * lib/p: introduced
100
+
101
+ * lib/xsl: copied the old shaders directory.
102
+
103
+ * bin/cluster.rb: link to the cluster.
104
+
105
+ 18-10-2004 George Moschovitis <gm@navel.gr>
106
+
107
+ * MAJOR CHANGE: recreated directory structure under /nitro
108
+ to make more compatible with other ruby projects.
109
+
110
+ 17-10-2004 George Moschovitis <gm@navel.gr>
111
+
112
+ * app/conf/debug-config.rb: no error_page when debugging to avoid
113
+ loops.
114
+
115
+ * n/app/webrick-servlet.rb: better default error page,
116
+ greatly improved info on default error page.
117
+
118
+ * documented many source files.
119
+
120
+ * n/sitemap.rb: moved out of UI namespace,
121
+ (SitePage): added extra fields: real_uri, shader, level,
122
+ (SiteMap): fixed to_s, extend from Hash.
123
+
124
+ * n/app/handlers/page-handler.rb (#evaluate_script): dont use
125
+ try_render,
126
+ overload_paths FUCKIN MEGA!
127
+
128
+ * n/app/handlers/page-handler.rb (#evaluate_script): dont use
129
+ try_render,
130
+ overload_paths FUCKIN MEGA!
131
+
132
+ * started using :: for Ruby standard methods everywhere.
133
+
134
+ * Rakefile: introduced.
135
+
136
+ * n/utils/gfx.rb (#grab_exif): implemented.
137
+
138
+ * app/env.rb: require "n/db/tools".
139
+
140
+ * p/pictures/entities.rb (Picture#upload): introduced and improved
141
+ from original code.
142
+
143
+ * p/files/entities.rb: added path prop accessor.
144
+
145
+ * p/pictures/methods.rb: introduced,
146
+ (#upload_picture): implemented.
147
+
148
+ * p/pictures/part.rb: introduced
149
+
150
+ * p/pictures/entities.rb: introduced
151
+
152
+ * p/feeds/part.rb: introduced.
153
+
154
+ * p/feeds: renamed from syndication.
155
+
156
+ 14-10-2004 George Moschovitis <gm@navel.gr>
157
+
158
+ * p/geoloc/entities.rb (#country_code_for_ip): introduced.
159
+
160
+ * p/geoloc/scripts/geoip-to-db.rx: introduced and recoded.
161
+
162
+ * n/db/tools.rb (DbTools): converted to class methods.
163
+ (DbTools#alter_table): improved,
164
+ after many fixes the alter table works even for non entities.
165
+
166
+ 13-10-2004 George Moschovitis <gm@navel.gr>
167
+
168
+ * n/db/managed.rb (Module#manage): dont define update methods
169
+ for classes that do not define a primary key.
170
+
171
+ * p/geoloc/methods.rb (distance): introduced and optimized.
172
+
173
+ * converted all prop_accessors to the latest code.
174
+
175
+ * n/db/psql.rb: create table works with new properties api
176
+
177
+ * n/.tc-properties.rb: introduced.
178
+
179
+ * n/properties.rb: removed sql_type,
180
+ (prop_accessor): changed signature.
181
+
182
+ * n/parts.rb: added documentation,
183
+ added dependencies variable in part.
184
+
185
+ * n/app/webrick-servlet.rb: get correct last_ip
186
+
187
+ 12-10-2004 George Moschovitis <gm@navel.gr>
188
+
189
+ * p/sync: introduced.
190
+
191
+ * p/content/mixins.rb: Permissions -> ContentFlags.
192
+
193
+ * p/files/part.rb: introduced.
194
+
195
+ 12-10-2004 George Moschovitis <gm@navel.gr>
196
+
197
+ * p/*: some fixes to make the mixins work again.
198
+
199
+ 12-10-2004 George Moschovitis <gm@navel.gr>
200
+
201
+ * p/glue/part.rb: correctly require methods.
202
+
203
+ * n/mixins/*: removed
204
+
205
+ * n/mixins/rankable.rb: moved to scrap.
206
+
207
+ * p/content/mixins.rb: introduced copied existing modules.
208
+
209
+ * p/glue/mixins.rb: introduced copied existing modules.
210
+
211
+ * n/mixins.rb: introduced, one file for all mixins.
212
+
213
+ * use module instead of namespace.
214
+
215
+ * n/db/psql.rb: use safe_query in create/drop schema.
216
+
217
+ * n/db/*: tried to make compatible with mysql, failed.
218
+
219
+ * n/db/managed.rb (sql_index): improved.
220
+
221
+ 11-10-2004 Elias Athanasopoulos <elathan@navel.gr>
222
+
223
+ * n/db/mysql.rb: Db backend for MySQL.
224
+ * n/.tc-db-mysql.rb: Test Unit for Db's MySQL backend.
225
+
226
+ * scrap/fix-geo-sql.rb: New script. It produces an SQL schema for a
227
+ table with Geographical information about IP addresses.
228
+ * scrap/geo.csv: New file. Geographical Information about IP
229
+ address in CSV format.
230
+
231
+ 11-10-2004 George Moschovitis <gm@navel.gr>
232
+
233
+ * n/properties.rb: prop_accessor alias,
234
+ no trailing __ in __force methods.
235
+
236
+ * p/content/entities.rb (Lockable): introduced,
237
+ (Versionable): introduced,
238
+ (Schedulable): introduced.
239
+
240
+ 11-10-2004 George Moschovitis <gm@navel.gr>
241
+
242
+ * n/db/psql.rb (#create_table): works with new sql_index.
243
+
244
+ * n/db/managed.rb (Module#sql_index): redefined, accepts strings
245
+ and symbols, unique param + extrasql.
246
+
247
+ * p/geoloc: introduced geoloc part.
248
+
249
+ * app/root/m/msg: message big icons.
250
+
251
+ * p/files: introduced part.
252
+
253
+ * gems/ndb.gemspec: fixed to include all needed files.
254
+
255
+ * n/db/utils.rb (DbUtils#write_prop): support for Object,
256
+ Array, Hash objects.
257
+
258
+ * n/db/psql.rb (DbUtils#read_prop): support for Object, Array,
259
+ Hash objects.
260
+
261
+ 10-10-2004 George Moschovitis <gm@navel.gr>
262
+
263
+ * gems: dir introduced.
264
+
265
+ * n/README: introduced.
266
+
267
+ * cell.gemspec: gemspec for cell engine.
268
+
269
+ * ndb.gemspec: gemspec for db.
270
+
271
+ * n/parts.rb (#prepared_statements): introduced,
272
+ added comments.
273
+
274
+ * n/db/connection.rb: removed again sibling methods.
275
+
276
+ * n/db/psql.rb: EXCELLENT, mixin the backend into DbConnection.
277
+
278
+ * n/db.rb: support for multiple backends.
279
+
280
+
281
+ * n/db/mysql.rb: Db backend for MySQL.
282
+ n/.tc-db-mysql.rb: Test Unit for Db's MySQL backend.
283
+
284
+ * scrap/fix-geo-sql.rb: New script. It produces an SQL schema for a table with
285
+ Geographical information about IP addresses.
286
+ scrap/geo.csv: New file. Geographical Information about IP address in CSV format.
287
+
288
+
289
+
290
+ * n/db/mixins.rb: (Entity#__db_pre_insert): use next_oid
291
+
292
+ * n/db/README: slightly improved documentation.
293
+
294
+ * n/db/managed.rb: removed trailing __ from insert, update,
295
+ (#__db_eval_db_insert): use retry_query,
296
+ added more comments.
297
+
298
+ * n/utils/time.rb: removed sql related methods.
299
+
300
+ * n/db/connection.rb: moved many methods to n/db/psql.rb
301
+
302
+ * n/db/psql.rb: introduced,
303
+ (#initialize),
304
+ (#retry_query), (#safe_query)
305
+ (#close): extracted from n/db/connection.rb,
306
+ (#create_schema), (#drop_schema): introduced,
307
+ sql time/date methods,
308
+ (#next_oid): implemented,
309
+ better error messages
310
+
311
+ * n/db/utils.rb (#resolve): removed,
312
+ moved method implementations to backends.
313
+ (#sql_table_to_class): removed,
314
+
315
+ * n/db/utils.rb: introduced, copied stuff from connection.
316
+
317
+ * n/db/connection.rb: cleaned up the code,
318
+ match? alias.
319
+
320
+ * n/db.rb: made wrap_method and rest private,
321
+ removed unused methods,
322
+ cleaned up the code.
323
+
324
+ * n/db/make-release.sh: make n/Db release.
325
+
326
+ * app/root/s/simple/style.css: updated msg styles.
327
+
328
+ * yeah, I got comments displayed.
329
+
330
+ * n/utils/time.rb (#date_time): copied from old code and simplified.
331
+
332
+ * p/users/entities.rb (User): icon -> to_icon
333
+ (User#to_html): introduced.
334
+
335
+ * p/markup/censors.rb: updated.
336
+
337
+ * p/markup/part.rb: introduced, copied from def.rb
338
+ MarkupUtils.
339
+
340
+ * app/root/s/simple/shader.xsl (x:footer): correct w3c.validator
341
+
342
+ 07-10-2004 George Moschovitis <gm@navel.gr>
343
+
344
+ * correct :nodoc: all for test cases.
345
+
346
+ * n/db/*: added much more RDoc comments.
347
+
348
+ * created n/db distribution.
349
+
350
+ * p/messages/def.rb: deleted.
351
+
352
+ * n/.tc-db.rb: tests run again.
353
+
354
+ 06-10-2004 George Moschovitis <gm@navel.gr>
355
+
356
+ * more mass replaces to make older code work.
357
+
358
+ * p/messages/*: many many fixes to make it work again.
359
+
360
+ * p/messages/methods.rb: introduced.
361
+
362
+ 06-10-2004 George Moschovitis <gm@navel.gr>
363
+
364
+ * p/messages/part.rb: introduced.
365
+
366
+ * app/conf/apache.conf: users redirect.
367
+
368
+ * p/users/methods.rb (#register_user): userprofile gets created correctly.
369
+
370
+ * n/db/connection.rb (#retry_query): fixed,
371
+ (DbUtils#sql_write_prop): fixed Time, Date writing
372
+
373
+ * n/app/request.rb (Request#get_cookie): fixed unescape bug.
374
+
375
+ * app/root/s/simple/shader.xsl: top_ads,
376
+ introduced debug-options in footer,
377
+ rss, home link in header.
378
+
379
+ * app/root/s/simple/style.css: improved css.
380
+
381
+ * n/DOCS/css.txt: introduced, info about centering page.
382
+
383
+ 05-10-2004 George Moschovitis <gm@navel.gr>
384
+
385
+ * p/users/entities.rb (RoleOwner#add_role): fixed NASTY bug.
386
+
387
+ * p/users/methods.rb (#update_roles): introduced,
388
+ yeah, it works like cooler,
389
+ handel full clear.
390
+
391
+ * p/glue/std.js: intoduced,
392
+ (cbSetAll): introduced.
393
+
394
+ * p/locales/lc-en.rb: added more strings.
395
+
396
+ * p/users/roles-form.ss: introduced
397
+
398
+ 04-10-2004 George Moschovitis <gm@navel.gr>
399
+
400
+ * app/slude/conf/debug-conf.rb: log to STDERR.
401
+
402
+ * app/root/s/simple/shader.xsl: use <noscript> to be compatible with
403
+ links.
404
+
405
+ * YEAH, editing with vi :)
406
+
407
+ * initialize(*args) for all db mixins.
408
+
409
+ * n/app/webrick-servlet.rb: make error page work for .rx pages.
410
+
411
+ * n/db.rb (#wrap_method): use an ensure clause, NASTY bug!
412
+
413
+ * n/db/connection.rb (#delete): use exec_clear.
414
+
415
+ * p/users/entities.rb (RolesOwner): introduced,
416
+ (RolesOwner): moved level and stuff.
417
+
418
+ * n/utils/time.rb (#sql_date): handle nil input.
419
+
420
+ * n/parts.rb: $roles, roles().
421
+
422
+ * p/content/entities.rb (Category): moved from category.rb
423
+
424
+ * n/category.rb: removed compatibility stuff.
425
+
426
+ 03-10-2004 George Moschovitis <gm@navel.gr>
427
+
428
+ * p/users/methods.rb (#add_role): recoded,
429
+ (#del_role): recoded.
430
+
431
+ * p/users/entities.rb (User#role?): introduced,
432
+ (Role): use char(16) for name,
433
+ (User#add_role): introduced,
434
+ (User#del_role): introduced.,
435
+ (Role#delete): class method to delete roles,
436
+ (UserGroup): introduced.
437
+
438
+ * n/app/page-handler.rb (#transform_script): encode shader in cached
439
+ transformed scripts,
440
+ also check the shader mtime.
441
+
442
+ * scripts to prepare db distribution.
443
+
444
+ * n/app/webrick-servlet.rb (WEBrick): overload HTTPRequest,
445
+ (HTTPRequest#parse_uri): overload to add rewrite support.
446
+ (#__rewrite): temp hack,
447
+ (#__rewrite): made more flexible.
448
+
449
+ * n/DOCS/bugs.txt: introduced.
450
+
451
+ * p/users/part.rb: experimental rewrites.
452
+
453
+ * n/parts.rb: use title/body like content unit,
454
+ (Part#initialize): call rewrites on init.
455
+ introduced $rewrites.
456
+
457
+ * n/DOCS/todo.txt: introduced.
458
+
459
+ * n/app/page-handler.rb (#transform_script): cache the transformed
460
+ scripts,
461
+ calculate super time, invalidate cache from subscripts, MEGA,
462
+ optimized to avoid loading .ss files for transformed.
463
+
464
+ * app/.cache: introduced cache link.
465
+
466
+ 01-10-2004 George Moschovitis <gm@navel.gr>
467
+
468
+ * n/mixins/permissions.rb: introduced.
469
+
470
+ * n/utils/time.rb (#parse_sql_date): handle nils.
471
+
472
+ * n/db/connection.rb (#retry_query): dont allow infinite looped,
473
+ better catch the relation not exists exception.
474
+
475
+ * n/ui/date-select.rb: fixes,
476
+ reverse order if yorder.
477
+
478
+ * p/user/methods.rb (#handle_profile): check for .store,
479
+ grab birthdate,
480
+ (#birthday_users): introduced,
481
+ gets multiparams.
482
+
483
+ * n/db/connection.rb (#sql_write_prop): handle dates.
484
+
485
+ * n/utils/time.rb (#sql_date): introduced,
486
+ (#parse_sql_date): introduced.
487
+
488
+ * n/ui/date-select.rb: introduced.
489
+
490
+ * p/users/icon-form.ss: introduced
491
+ * app/root/users/edit-icon.sx: introduced.
492
+
493
+ * n/app/webrick-servlet.rb (#do_GET): ultracool internal redirect
494
+ to the error page.
495
+
496
+ * app/root/glues/errors.sx: styled.
497
+
498
+ * app/root/layout.css: static style.
499
+
500
+ * p/glue/part.rb: introduced
501
+ * p/glue/methods.rb: same
502
+
503
+ * app/root/glue: moved from system.
504
+
505
+ * n/std.rb: removed CVSXXX methods.
506
+
507
+ 29-09-2004 George Moschovitis <gm@navel.gr>
508
+
509
+ * app/users/emails/reset-password.st: introduced.
510
+
511
+ * app/users/emails/register.st: introduced.
512
+
513
+ * n/utils/mail.rb (#send): made it work.
514
+
515
+ * p/users/methods.rb (#signup_user): use the mail template,
516
+ (#register_user): send email,
517
+ (#reset_password): send email
518
+
519
+ 29-09-2004 George Moschovitis <gm@navel.gr>
520
+
521
+ * n/utils/template.rb: simple templating system.
522
+
523
+ 29-09-2004 George Moschovitis <gm@navel.gr>
524
+
525
+ * app/conf/apache.conf: moved from n/app.
526
+
527
+ * app/conf/config.rb: requires files too.
528
+
529
+ * removed $app_ prefix from some conf variables.
530
+
531
+ * app/root/users/emails/signup.st: introduced template.
532
+
533
+ * n/app/filters/autologin.rb: CHECK the password in the cookie, argh!
534
+
535
+ * p/users/methods.rb (#set_password): introduced,
536
+ (#validate_password): introduced,
537
+ (#force_login): introduced
538
+
539
+ * n/app/request.rb (Request#get): works like delete now.
540
+
541
+ 29-09-2004 George Moschovitis <gm@navel.gr>
542
+
543
+ * n/app/request-part.rb: introduced, copied functionality from
544
+ request.
545
+
546
+ * app/root/s/shader.xsl: use relative ref to base.xsl.
547
+
548
+ * app/conf/config.rb: changed all refs to navel/,
549
+ removed $app_base_dir.
550
+
551
+ 28-09-2004 George Moschovitis <gm@navel.gr>
552
+
553
+ * n/db/connection.rb: include DbTools.
554
+
555
+ * n/app/request.rb (#delete): rebuild qs only from parmeters with
556
+ String keys.
557
+
558
+ * n/app/webrick-servlet.rb (#create_request): only set valid
559
+ parameters to avoid having to use param?
560
+
561
+ * app/app.rb: moved app stuff to config, removed appsrv.
562
+ * app/env.rb: updated
563
+
564
+ 27-09-2004 George Moschovitis <gm@navel.gr>
565
+
566
+ * n/mixins/schedulable.rb: introduced.
567
+
568
+ * p/users/methods.rb: _user postfix to methods,
569
+ (#ban_user): no method check,
570
+ use kick_user.
571
+ (#unban_user): no method check,
572
+ (#close_user): implemented,
573
+ (#open_user): implemented
574
+
575
+ * MEGA, fixed many refs to args()/set_args().
576
+
577
+ * n/app/request.rb: removed old apache stuff,
578
+ removed arg related stuff,
579
+ (RequestPart): local_path -> body.
580
+
581
+ * p/users/methods (#del_user): fixed.
582
+
583
+ * n/db/connection.rb (DbConnection#get_by_oid): introduced, used by
584
+ get.
585
+
586
+ * n/app/fragment.rb: updated to be compatible with
587
+ lru cache changes.
588
+
589
+ * n/app/script.rb: updated to be compatible with
590
+ lru cache changes.
591
+
592
+ * n/app/handlers/page-handler.rb: updated to be compatible with
593
+ lru cache changes.
594
+
595
+ * n/utils/cache.rb: incorporated drak's changes,
596
+ simplified/beautyfied more.
597
+
598
+ * n/app/session.rb (Session#login): check if user is banned.
599
+
600
+ * n/db/connection.rb: (#get): also accept name.
601
+
602
+ * n/db/mixins.rb: created and moved methods from managed.
603
+
604
+ * n/db/tools.rb: created and moved methods from connection.
605
+
606
+ * ChangeLog: moved to the root of the repository.
607
+
608
+ * n/app/request.rb: removed many old apache stuff,
609
+ (#delete): renamed consume method, se the delete name to make
610
+ the request compatible with hashes. So more methods are useful
611
+ from the irb.
612
+
613
+ * p/users/methods.rb (#register): create and populate UserData,
614
+ (#ban): introduced,
615
+ yeah ban kicks out!
616
+
617
+ * n/db.rb: wrap exec, exec_and_clear,
618
+ more wraps.
619
+
620
+ * n/utils/time.rb (#sql_timestamp): pass Time.now by default.
621
+
622
+ * p/users/entities.rb (User#login): update userdata,
623
+ set last_ip.
624
+ (UserData#intialize): set good defaults,
625
+ (User): added flags,
626
+ (User): added magic,
627
+ (User#banned?): introduced,
628
+ (User#closed?): introduced
629
+
630
+ 23-09-2004 George Moschovitis <gm@navel.gr>
631
+
632
+ * yeah, user icons work :)
633
+
634
+ * n/app/request.rb (RequestPart#save): return save part.
635
+
636
+ * n/utils/gfx.rb (#create_thumbnail): greatly simplified
637
+
638
+ * app/root/panel.ss: deleted
639
+
640
+ * n/utils/cache.rb: LRU, LRUSentinel -> Item, Sentinel.
641
+
642
+ * n/app/fragment.rb: removed old code,
643
+ extend N::LRU.
644
+
645
+ * n/app/script.rb: no defcode, pagecode variables,
646
+ (#__cache_put): just pass fragment.
647
+
648
+ 22-09-2004 George Moschovitis <gm@navel.gr>
649
+
650
+ * n/db/connection.rb (DbConnection#child): get one child!
651
+
652
+ * n/db/managed.rb (ManagedChild): introduced this common case,
653
+ (Managed#__db_pk): return string.
654
+ (Managed#__update): uses __db_pk.
655
+
656
+ * p/users/methods.rb (#register): create user profile,
657
+ create user data,
658
+ (#handle_profile): yeah, the profile gets updated.
659
+
660
+ * p/users/entities.rb (Settings): renamed UIProfile,
661
+ (Profile): added more props.
662
+ (BaseProfile): introduced.
663
+ (User): added extra fields.
664
+
665
+ 22-09-2004 Elias Athanasopoulos <elathan@navel.gr>
666
+
667
+ * n/application.rb (Application#parse_arguments): Use optparse.
668
+
669
+ * app/ctl: Modified for optparse.
670
+
671
+ * scrap/user-convert.rb: New script. Convert OG users to DB users.
672
+ * scrap/user-report.rb: New script. Find users with duplicate emails.
673
+
674
+ 22-09-2004 George Moschovitis <gm@navel.gr>
675
+
676
+ * n/app/request.rb (Request#set_errors): only set errors unless empty.
677
+
678
+ * added many missing files in svn.
679
+
680
+ 21-09-2004 George Moschovitis <gm@navel.gr>
681
+
682
+ * FUCKIN MEGA, env works PERFECTLY!
683
+
684
+ * n/app/cluster.rb: start a drb $sessions.
685
+
686
+ * app/env.rb: yeah, use custom drb port, it participates in the cluster
687
+ now.
688
+
689
+ * n/app/server.rb (ServerMixin#initialize): use $drb port form config,
690
+ connect to dbr $sessions.
691
+
692
+ * n/app/filters/autologin.rb: del auth cookie when stale!
693
+
694
+ * yeah, login-logout works correctly.
695
+
696
+ * n/app/parts.rb: removed PartMethods alltogether.
697
+
698
+ * n/app/session.rb (Session#login): call $sessions.logout,
699
+ no request param, not needed.
700
+ (Session#logout): fixed cluster update,
701
+ always del the nauth cookie,
702
+ no params, made more flexible.
703
+ (SessionManager): online_users -> online,
704
+ more simplifications,
705
+ (SessionManager#session_for_name): fixed.
706
+ (Session#finalize): removed.
707
+
708
+ * n/app/request.rb: renamed :ERRORS to "ERRORS",
709
+ (Request#redirect): enforce a meaningful deafult url,
710
+ (Request#set_errors): introduced,
711
+ pass errors as transaction entities to be more general,
712
+ (Request#get_cookie): fixed NASTY bug,
713
+ (Request#errors_to_a): fixed!
714
+ (Request#get_cookie): fixed get_cookie,
715
+ (Request#del_cookie): implemented.
716
+
717
+ 20-09-2004 George Moschovitis <gm@navel.gr>
718
+
719
+ * n/utils/cache.rb: totaly recoded algorithm,
720
+ yeah seems to work and pass the testcases,
721
+ extend from Hash to be more flexible,
722
+ ultracool touch method.
723
+
724
+ 20-09-2004 George Moschovitis <gm@navel.gr>
725
+
726
+ * made all test cases hidden files!
727
+
728
+ 20-09-2004 George Moschovitis <gm@navel.gr>
729
+
730
+ * n/app/response.rb: removed
731
+ * n/server/response.rb: same
732
+ * n/server/request.rb: same
733
+ * n/server/worker.rb: same
734
+ * n/server/protocol.rb: same
735
+ * n/server/proxy-server.rb: same
736
+
737
+ * MAJOR, user the unified requestr everywhere!
738
+
739
+ * n/app/webrick-servlet.rb: removed create_response,
740
+ (#do_GET): updated for unified request/response.
741
+
742
+ * n/app/request.rb: removed more unneeded/n2 stuff,
743
+ use :ERRORS instead of "ERRORS"
744
+ MAJOR, in/out headers,
745
+ moved response methods in request,
746
+ yeah, IT works!,
747
+ (#update_entity): renamed set_entity!
748
+
749
+ * n/mixins/moderated.rb: removed.
750
+ * n/id.rb: removed
751
+ * n/std.rb: renamed standard.rb
752
+
753
+ 20-09-2004 George Moschovitis <gm@navel.gr>
754
+
755
+ * n/web/*: removed the whole directory, YEAH!
756
+
757
+ * app/appsrv.rb: updated
758
+ * app/env.rb: same
759
+
760
+ * n/app/webrick-servlet.rb: removed experimental redirect stuff.
761
+
762
+ * n/app/http.rb: removed, moved functionality to utils/http.
763
+
764
+ * changed namespace in tooo many files to list.
765
+
766
+ * n/server/cluster/*: removed from repository.
767
+
768
+ * copied all stuff from web/server to appserver.
769
+
770
+ * n/web/utils: deleted from repository.
771
+
772
+ * n/shaders/*: moved from web.
773
+
774
+ 20-09-2004 George Moschovitis <gm@navel.gr>
775
+
776
+ * moved scrap outside n.
777
+
778
+ 19-09-2004 George Moschovitis <gm@navel.gr>
779
+
780
+ * Changed tooo many files to log.
781
+
782
+ * app/requires.rb: removed more unneeded requires.
783
+
784
+ * n/standard.rb (Object): removed init_modules,
785
+ (Kernel): pp_exception
786
+
787
+ * n/utils/array.rb: N namespace, no n2 compatibility.
788
+ * n/utils/number.rb: same, ->number
789
+ * n/utils/time.rb: no n2 compatibility.
790
+ * n/utils/strings.rb: same
791
+ * n/utils/graphics.rb: ->gxf.rb, ->GfxUtils, same.
792
+ * n/utils/io.rb: removed, not needed!
793
+ * n/utils/probe.rb: removed, moved functionality to standard!
794
+ * n/utils/uri.rb: copied fromw web/utils, cleaned up.
795
+ * n/utils/http.rb: copied fromw web/utils, cleaned up.
796
+
797
+ * n/appserver/request.rb: introduced,
798
+ removed unused n2 stuff.
799
+
800
+ * app/app.rb: converted Slude to module!
801
+
802
+ * n/appserver/server.rb: (AppServerMixin#initialize_app): introduced,
803
+ (AppServer#initialize): updated.
804
+
805
+ * n/appserver/webrick.rb: converted to Module,
806
+ extend N::Server
807
+
808
+ * n/standard.rb: require "pp"
809
+
810
+ * app/env.rb: fixed!
811
+
812
+ * app/ctl: cool, use the -C.. flag in ruby,
813
+ run cluster too.
814
+
815
+ * app/appsrv.rb: $:.unshift("..") removed.
816
+
817
+ * app/env.rb: $:.unshift("..") is more portable.
818
+
819
+ * n/appserver/cluster.rb: Implemented as application,
820
+ it works as daemon, yeah.
821
+
822
+ * n/application.rb: removed n2 compatibility,
823
+ recoded and simplified,
824
+ suicide -> stop,
825
+ fixed name-title confusion,
826
+ recoded restart,
827
+ no exit!
828
+
829
+ * MAJOR CLEANUP of old n2 code in repository:
830
+
831
+ * n/calendar.rb: removed
832
+ * n/index.sx: removed
833
+ * n/relations.rb: removed
834
+ * n/og.rb: removed
835
+ * n/math.rb: removed
836
+ * n/content.rb: removed
837
+ * n/web/mixins/*: removed
838
+ * n/web/sync/*: removed
839
+ * n/group.rb: removed
840
+
841
+ 17-09-2004 George Moschovitis <gm@navel.gr>
842
+
843
+ * YEAH, converted all R:: to N::
844
+
845
+ * n/parts.rb: module P = namespace for parts,
846
+ register_part,
847
+ attr_accessors, props,
848
+
849
+ * n/web/server/handlers/page-handler (#transform_script): dont
850
+ encode *act* in actions.
851
+
852
+ * app/logs: symbolic link.
853
+
854
+ 17-09-2004 George Moschovitis <gm@navel.gr>
855
+
856
+ * app/root/p: relative link!
857
+
858
+ * app/logs: removed from repository, use a link instead.
859
+
860
+ * app/root/index.sx: updated.
861
+
862
+ * app/root/users/index.sx: introduced
863
+
864
+ * p/users/lc-en.rb: added many strings.
865
+
866
+ * n/web/server/handlers/page-handler: no need for *act*
867
+
868
+ * app/root/s/simple/shader.xsl: use sitemap in header.
869
+
870
+ * app/app.rb (#initialize_sitemap): cleanup, added users.
871
+
872
+ * n/web/server/request.rb (Request#set_arg): value defaults to true
873
+
874
+ 16-09-2004 George Moschovitis <gm@navel.gr>
875
+
876
+ * app/conf/config.rb: localhost as smtp.
877
+
878
+ * n/db/connection (DbConnection#match): introduced.
879
+
880
+ * p/users/lc-en.rb: added strings.
881
+
882
+ * p/users/def.rb (UsersActions#signup): introduced,
883
+ (Users#signup): test for reserved emails.
884
+
885
+ * app/root/scripts/delta.rx: renamed from rb.
886
+
887
+ * n/web/server/request.rb: consume! -> consume.
888
+
889
+ * app/root/users/signup.sx: introduced, beautified
890
+
891
+ * app/root/s/simple/style.css: introduced,
892
+ cool links markup,
893
+ logo,
894
+ cool navigation bar,
895
+ cleaned up layout divs.
896
+
897
+ * app/root/s/simple/print.css: introduced
898
+
899
+ * n/web/server/handlers/page-handler.rb: removed shadermanager ref,
900
+ dont keep pagecode/defcode in the generated script.
901
+
902
+ * n/web/server/handlers/rx-handler.rb: deleted
903
+ * n/web/server/handlers/html-handler.rb: deleted
904
+
905
+ * p/users/signup-form.ss: introduced
906
+
907
+ 15-09-2004 George Moschovitis <gm@navel.gr>
908
+
909
+ * n/Changelog: more tab friendly.
910
+
911
+ 15-09-2004 George Moschovitis <gm@navel.gr>
912
+
913
+ * app/app.rb: Cleaned up!
914
+
915
+ * n/appserver/server.rb: cleaned up!
916
+
917
+ * n/web/server/handlers.rb: (ScriptHandler#compile_script): introduced
918
+ (ScriptHandler#try_render): temp removed the error code from try render
919
+ as it was buggy!
920
+
921
+ * n/appserver/apache.conf: updated
922
+
923
+ * p/locales/def.rb: removed uneeded requires.
924
+
925
+ * n/web/server/handlers/page-handler.rb: removed crappy old inject
926
+ code
927
+
928
+ * n/web/server/handlers/code-handler.rb: introduced,
929
+ after some fixes, it works!
930
+
931
+ * n/utils/strings.rb: removed dpe to funnytran(!!),
932
+ (#to_greeklish): introduced.
933
+
934
+ * n/parts.rb (#require_part): use 'p/' as prefix!
935
+
936
+ * moved parts in a separate directory!
937
+
938
+ * TOTALY CHANGED DIR STRUCTURE, remomoved n1 stuff, and much
939
+ of the n2 stuff.
940
+
941
+ * CONVERTED REPOSITORY TO SUBVERSION!
942
+
943
+ * app/conf/config: removed n1 deps,
944
+ use CodeHandler,
945
+ no HtmlHandler.
946
+
947
+ 14-09-2004 Elias Athanasopoulos <elathan@navel.gr>
948
+
949
+ * n/appserver/webrick.rb: Redirect webrick log to /dev/null.
950
+ * n/utils/graphics.rb (Graphics#create_thumbnail): Support animated GIFs
951
+ for avatars and for files < 60 KBs.
952
+
953
+ * n1/web/utils/html.rb: Do not require n2/web/utils/html.
954
+
955
+ 14-09-2004 George Moschovitis <gm@navel.gr>
956
+
957
+ * n1/* : changed all refs to n1.
958
+
959
+ * app/root/s/deviant/shader.xsl: javascript unescapes cookie!
960
+
961
+ * app/root/panel.ss: javascript fix.
962
+
963
+ * YEAH, the new session is used!
964
+
965
+ * n/web/server/request.rb (#user): updated,
966
+ (#anonymous): updated
967
+
968
+ * n/root/locales/def.rb: use n/l10n.rb now
969
+
970
+ * n/l10n.rb: added locales code.
971
+
972
+ * n/web/server/session.rb (Session): keep user, extend from Hash,
973
+ no need for SKIP_AUTOLOGIN,
974
+ (Session#refresh): cleaned up,
975
+ yeah implemented all session methods,
976
+ (#login): implemented,
977
+ (#logout): implemented
978
+
979
+ * n/web/server/handlers/page-handler.rb (#process): dont http cache if
980
+ $reload_scripts.
981
+
982
+ * n/appserver/filters/autologin.rb: cleaned up,
983
+ use UsersActions.
984
+
985
+ * n/root/users/def.rb (UsersActions#logout): use $users_auth_cookie,
986
+ delete the cookie on logout,
987
+ (UsersActions#login): implemented,
988
+ use session login/logout.
989
+
990
+ * n/root/users/login.rx: introduced
991
+
992
+ * n/db/connection.rb: Array, Hash -> bytea
993
+
994
+ 13-09-2004 George Moschovitis <gm@navel.gr>
995
+
996
+ * MAJOR: $session_manager -> $sessions.
997
+
998
+ * n/appserver/filters/autologin.rb: introduced.
999
+
1000
+ * n/db/managed.rb (Managed#eval_db_read_row): code to read a TrueClass
1001
+
1002
+ * n/db.rb (Db#initialize): fixed bug in creating connections.
1003
+
1004
+ * YEAH, i got a hello world with only n3 code (Cell).
1005
+
1006
+ * app/conf/config.rb: $log -> app.log
1007
+
1008
+ * app: Recoded directory for clean app (Slude).
1009
+
1010
+ * app/ctl.sh: removed webrick refs.
1011
+
1012
+ * n/root/users/def.rb (User): added fields,
1013
+ (UsersActions#login): added,
1014
+ (AnonymousUser): added, hmmm...
1015
+ (User): Level Enumeration,
1016
+ (User): attributes, hmmm...,
1017
+ (User): first, last, full name.
1018
+
1019
+ * n/db/connection.rb (DbConnection#delete_descendants): correctly handle
1020
+ ParrentClass entities,
1021
+ after many fixes seems to kinda work,
1022
+ (DbUtils): boolean type, types with small cap!
1023
+
1024
+ 12-09-2004 George Moschovitis <gm@navel.gr>
1025
+
1026
+ * n/db/connection.rb (DbConnection): fixed bug in deserialize_one,
1027
+ (DbConnection#transaction): introduced,
1028
+ (DbConnection#delete): deletes descendants,
1029
+ (DbConnection#delete_descendants): introduced
1030
+
1031
+ * n/db.rb (Db#open): fixed nasty deserialize false bug!
1032
+
1033
+ * n/db/managed.rb (Child, ParentClass): removed __parent_class,
1034
+ (Managed): introduced #__ancestors_classes, #__descendants_classes
1035
+
1036
+ * lets SLUDE!
1037
+
1038
+ 11-09-2004 George Moschovitis <gm@navel.gr>
1039
+
1040
+ * app/root/s/deviant/style.css: buttonc.
1041
+
1042
+ * __meta__ -> __meta
1043
+
1044
+ * __props__ -> __props
1045
+
1046
+ * n/root/help/category.si,
1047
+ n/root/help/def.rb: fixes to make it work with latest code.
1048
+
1049
+ * n/web/server/handlers/page-handler.rb (#transform_script): AO, AS action
1050
+ macros,
1051
+ actions requests (*act*) are uncacheable.
1052
+
1053
+ * n/root/db: introduced db part.
1054
+
1055
+ 10-09-2004 George Moschovitis <gm@navel.gr>
1056
+
1057
+ * app/requires.rb: removed unneeded requires.
1058
+
1059
+ * app/root/faq/*: removed from CVS
1060
+ * n/root/faq/*: same
1061
+ * n/web/server/handlers/action-handler.rb: same
1062
+ * n/utils/arrays.rb: same
1063
+
1064
+ * n/root/help/def.rb (HelpPart): update_sitemap.
1065
+
1066
+ * n/root/help: RENAMED faq part to help,
1067
+ after many changes seems to work!
1068
+
1069
+ * n/root/admin/def.rb: introduced
1070
+
1071
+ * use $DBG instead of $DEBUG (used by ruby argh!)
1072
+
1073
+ * n/root/editor/def.rb: Introduced.
1074
+
1075
+ * n/root/editor/js: yeah, use tinyMCE.
1076
+
1077
+ 09-09-2004 George Moschovitis <gm@navel.gr>
1078
+
1079
+ * u/utils/tc-cache.rb: introduced,
1080
+ [], []=, delete, clear,
1081
+ recoded, use included hash.
1082
+
1083
+ * n/utils/cache.rb (LRUCache): implemented an LRUCache.
1084
+
1085
+ * use SafeHash instead of SafeCache everywhere.
1086
+
1087
+ * n/utils/hash.rb: splited from cache.rb, only hash utils.
1088
+
1089
+ * introduced VENDOR, VENDOR_URL metadata for parts.
1090
+
1091
+ * n/root/faq/def.rb (FaqActions): $application -> $lm
1092
+
1093
+ * n/appserver/cluster.rb (Slm#set!): optional lm parameter.
1094
+
1095
+ * app/root/faq/index.sx: restructured to avoid db queries in init
1096
+ phase.
1097
+
1098
+ 08-09-2004 George Moschovitis <gm@navel.gr>
1099
+
1100
+ * n/appserver/webrick: dont include Webrick module in the top scope,
1101
+ use a custom logger!
1102
+
1103
+ * after many many changes it kind works again!
1104
+
1105
+ * use symbols for request args.
1106
+
1107
+ * n/web/server/handlers/page-handler.rb (#transform_script): extract
1108
+ initcode (<?i ... ?>) and define __init_render.
1109
+
1110
+ * n/web/server/scripts.rb (#__calc_tag): introduced,
1111
+ (#__calc_lm): former __last_modified,
1112
+ (#__calc_tag): encode subscript tags too,
1113
+ (#__etag): SUPER hash the etag!
1114
+
1115
+ 08-09-2004 Elias Athanasopoulos <elathan@navel.gr>
1116
+
1117
+ * app/webrick.rb ($DEBUG): New constant.
1118
+ * app/joy.rb ($DEBUG): Use it.
1119
+ * n/(various files): Transform $log.debug "" to $log.debug "" if $DEBUG.
1120
+ * n/db/connection.rb (alter_table): Implement.
1121
+
1122
+ 08-09-2004 George Moschovitis <gm@navel.gr>
1123
+
1124
+ * n/web/server/handlers/page-handler.rb (#transform_script): call
1125
+ __init_render for top level scripts.
1126
+
1127
+ 07-09-2004 George Moschovitis <gm@navel.gr>
1128
+
1129
+ * n/web/server/request.rb: script_hash -> tag.
1130
+
1131
+ * n/appserver/webrick-servlet.rb (#do_GET): dont set response content
1132
+ type if already set!
1133
+
1134
+ * n/web/server/fragment.rb (#initialize): default parameters.
1135
+
1136
+ * n/web/server/handlers/page-handler.rb (#process): dont http-cache
1137
+ in admin mode,
1138
+ (#eval_script): totaly changed fragment caching, memory based!
1139
+
1140
+ * n/web/server/scripts.rb (#__init_render): introduced,
1141
+ (#__last_modified): call sub __last_modifieds,
1142
+ (#__last_modified): take script file last_modified into account.
1143
+ (#__cache?): introduced.
1144
+
1145
+ 07-09-2004 Elias Athanasopoulos <elathan@navel.gr>
1146
+
1147
+ * n/scrap/bot.rb: New file.
1148
+ * n/scrap/xmlize.rb: New file.
1149
+ * n/scrap/adjust-colors.rb: New file.
1150
+
1151
+ 06-09-2004 George Moschovitis <gm@navel.gr>
1152
+
1153
+ * n1/og/backend (#get): Set pid from row data!
1154
+
1155
+ * n/web/server/scripts.rb (#__lm_keys): removed
1156
+ (#__last_modified): uses __lm.
1157
+
1158
+ * removed _lm from lm keys.
1159
+
1160
+ * dont encode the uid in etags, nothing to gain.
1161
+
1162
+ * EXCELLENT: the new Cluster system DRAMATICALLY reduces
1163
+ drb calls!
1164
+
1165
+ * n/root/messages/def.rb (MessagesActions): Use $lm eveywhere
1166
+
1167
+ * n/appserver/server.rb (#initialize): use the brand new cluster
1168
+ functionality.
1169
+
1170
+ * n/appserver/cluster.rb: introduced,
1171
+ CHash, SHash,
1172
+ Clm, Slm,
1173
+ Yeah, kinda works!
1174
+ (CHash#[]=): remove dead servers,
1175
+ after A LOT of changes it now works!
1176
+
1177
+ 05-09-2004 George Moschovitis <gm@navel.gr>
1178
+
1179
+ * app/root/faq/index.sx (#__etag): experimental etag calculation
1180
+
1181
+ * yeah, i got a highlevel lm calculated.
1182
+
1183
+ * n/web/server/handlers/rx-handler.rb (#transform_script): made
1184
+ compatible with new page-handler,
1185
+ cleaned up.
1186
+
1187
+ * n/web/server/request.rb (Request#get_lm): introduced,
1188
+ (Request#set_lm): introduced,
1189
+ save timestamp as integer to optimize drb calls.
1190
+
1191
+ * n/web/server/handlers/page-handler.rb (#process): Only send Etags
1192
+ for cacheable pages,
1193
+ (#get_cached_fragment): fixed bug with fragment_hash.
1194
+
1195
+ 04-09-2004 George Moschovitis <gm@navel.gr>
1196
+
1197
+ * YEAH i got the subscripts calculated.
1198
+
1199
+ * n/web/server/webrick-servlet.rb (#create_request): dont keep
1200
+ $app_root_dir prefix!
1201
+
1202
+ * n/web/server/request.rb (Request): top_script.
1203
+
1204
+ * n/web/server/script.rb (Script): sub_scripts,
1205
+ TOO MANY changes to list.
1206
+
1207
+ * n/appserver/webrick-servlet.rb (#do_GET): use fragment.
1208
+
1209
+ * n/web/server/handlers/page-handler.rb (PageHandler#process): return fragment
1210
+ (PageHandler#sub_process): same
1211
+ (PageHanler#__include): use fragment,
1212
+ YEAH, update sub_scripts,
1213
+ TOO MANY changes to list,
1214
+ transform/compile methods dont need request,
1215
+ (#transform_script): calculate sub_scripts.
1216
+
1217
+ 03-09-2004 George Moschovitis <gm@navel.gr>
1218
+
1219
+ * app/root/panel.ss: dump user from cookie,
1220
+ fully replaced user bar with javascript.
1221
+
1222
+ * app/root/s/deviant/shader.xsl (<x:header>): parse nauth cookie.
1223
+
1224
+ * n/web/server/handlers/page-handler.rb (PageHandler#transform_script):
1225
+ added support for output buffers.
1226
+
1227
+ * n/web/shaders/base.xsl: <x:ob-start />,
1228
+ <x:ob-end />
1229
+
1230
+ * n/web/server/script.rb: cleaned up, comments.
1231
+
1232
+ * JOY.GR 1st birthday.
1233
+
1234
+ 02-09-2004 George Moschovitis <gm@navel.gr>
1235
+
1236
+ * app/root/s/deviant/print.css: fixed ref to simple.css
1237
+
1238
+ * n/appserver/apache.conf: use keepalive,
1239
+ SOS, use expires for images!!,
1240
+ fix for css mime type.
1241
+
1242
+ * COOL, i got not modified returned!
1243
+
1244
+ * n/web/server/response.rb (Response#set_not_modified): yeah!
1245
+
1246
+ * n/web/server/handlers/rx-handler.rb: updated to be compatible with
1247
+ changes.
1248
+
1249
+ * n/web/server/handlers/page-handler.rb:many changes to support HTTP Caching
1250
+ (PageHandler#get_compiled_script): always returns a script (or Exception),
1251
+ compiles the script if not exists.
1252
+ (PageHandler#eval_script): gets passed script,
1253
+ (PageHandler#sub_process): introduced, used in includes!
1254
+
1255
+ * n/appserver/webrick-servlet.rb: added some experimental rewrite
1256
+ code, ignore for the moment.
1257
+
1258
+ * n/web/server/script.rb (Script#__etag): hook to calculate the ETag
1259
+ for this page.
1260
+ (Script#__last_modified): hook to calculate last modified for this
1261
+ script.
1262
+
1263
+ 01-09-2004 George Moschovitis <gm@navel.gr>
1264
+
1265
+ * app/root/s/deviant/shader.xsl: <x:error-log />
1266
+
1267
+ * n/web/server/handlers/page-handler.rb (PageScript#__include):
1268
+ updated to be compatible with latest changes,
1269
+ less noise error report in include
1270
+
1271
+ * n/web/server/handlers/rx-handler.rb (RxScript#__include):
1272
+ updated to be compatible with latest changes.
1273
+
1274
+ * n/web/server/handlers.rb (Handler#try_render): use request.log_error
1275
+
1276
+ * n/web/server/request.rb (Request.log_error): special loging.
1277
+
1278
+ * n/utils/strings.rb: converted to StringUtils.
1279
+
1280
+ * app/fora/index.sx: link to rss.
1281
+ * app/fora/forum.sx: same.
1282
+
1283
+ * app/root/scripts/kick.rb: use session_for_user.
1284
+
1285
+ * n/fora/rss.rx: render fora entities.
1286
+
1287
+ * n/syndication: introduced,
1288
+ (SyndicationPart): same,
1289
+ (RSS): same
1290
+
1291
+ * n/syndication: introduced
1292
+
1293
+ 01-09-2004 Elias Athanasopoulos <elathan@navel.gr>
1294
+
1295
+ * app/scripts/og-to-db.rb (cut_prefix, html_escape): New methods. Used
1296
+ to cut the 'fora_' prefix from Forum#name and escape html tags in message
1297
+ bodies.
1298
+ * app/conf/debug-config.rb: Make $srv_url to point to 127.0.0.1.
1299
+ * n/root/markup/emoticons.rb: Switch 'smiley' with 'angel'.
1300
+
1301
+ * n/ui/sitemap.rb (SitePage#initialize): Inherit realm from
1302
+ parent if exists.
1303
+ * n/ui/sitmap.rb (SiteMap#to_s): New method.
1304
+ * n/ui/tc-sitemap.rb: Add testcase.
1305
+
1306
+ * n/standard.rb (CVSVERSION, CVSDATE): New methods to trim common
1307
+ CVS variables.
1308
+
1309
+ * n/root/fora/def.rb: Use CVSVERSION/CVSDATE.
1310
+ * n/faq/def.rb: Likewise.
1311
+ * n/messages/def.rb: Likewise.
1312
+ * n/users/def.rb: Likewise.
1313
+ * n/root/markup/censors.rb: Add more rules.
1314
+
1315
+ * app/root/scripts/kick.rb: New script to kick out users.
1316
+ * app/community/members/photo.sx: Add star members menu.
1317
+ * app/scripts/og-to-db.rb: Emoticonize, html escape messages and cut 'fora_'
1318
+ prefix fromm fora names.
1319
+ * app/root/scripts/kick.rb: New script to kick out users.
1320
+
1321
+ 31-08-2004 George Moschovitis <gm@navel.gr>
1322
+
1323
+ * n/db/managed.rb (Relation): pclass, tclass => Strings.
1324
+
1325
+ * n/root/fora/list.ss: ultra cool activity link!
1326
+
1327
+ * n/root/fora/fora.si: show moderators.
1328
+
1329
+ * n/root/fora/moderators-form.ss: show moderators.
1330
+
1331
+ * app/root/fora/forum-form.sx: tabs.
1332
+
1333
+ * n/root/locales/lc-en.rb: more locales.
1334
+ * n/root/locales/lc-el.rb: same.
1335
+
1336
+ * app/root/s/deviant/style.css: tabs-frame,
1337
+ button-left
1338
+
1339
+ * n/root/fora/def.rb (Forum#moderators): introduced,
1340
+ (ForaActions#add_moderator): introduced,
1341
+ (ForaActions#del_moderator): introduced
1342
+
1343
+ * n/root/users/def.rb (Role): introduced,
1344
+ (UsersActions#add_role): added, error checking, no dupplicates,
1345
+ (UsersActions#del_role): added
1346
+
1347
+ 31-08-2004 Elias Athanasopoulos <elathan@navel.gr>
1348
+
1349
+ * n/ChangeLog: Formatting.
1350
+
1351
+ 30-08-2004 Elias Athanasopoulos <elathan@navel.gr>
1352
+
1353
+ * n/scrap: New directory.
1354
+ * n/scrap/exif_parser.rb: New script.
1355
+ * n/scrap/faq-parser.rb: New script.
1356
+ * n/scrap/time-descr.rb: New script.
1357
+
1358
+ * app/ctl.sh: Modified to restart only Webrick when it is used
1359
+ with the restart parameter.
1360
+
1361
+ * n/DOCS/pg.txt: Created a PostgreSQL Tips file.
1362
+
1363
+ 30-08-2004 George Moschovitis <gm@navel.gr>
1364
+
1365
+ * n/fora/def.rb (ForumeMessage#__pre_insert): use thread_oid unstead
1366
+ of pid to prepare sql traverse.
1367
+
1368
+ * n/db/connection.rb (DbConnection#exec_and_clear): introduced,
1369
+ (DbConnection#deserialize_all/one): clear resultset.
1370
+
1371
+ * app/scripts/og-to-db.rb: moved from root/scripts,
1372
+ optimized + cleaned code,
1373
+ more fixes and it READS the old fora!,
1374
+ call insert_into_tree,
1375
+ set create_time,
1376
+ set fora/category description.
1377
+
1378
+ * n/root/messages/def.rb: (Message): include ParentClass.
1379
+ * n/category.rb: (Category): same
1380
+
1381
+ * n/db.rb: added more documentation.
1382
+
1383
+ * app/root/scripts/delta.rb: better cleanup.
1384
+
1385
+ * n/db/managed.rb: (Child, Relation, SqlTreeTraversable): pclass
1386
+ is stored as String (the actual class name). was a NASTY BUG!,
1387
+ (Child): use ony pid as index, the combined index wasnt used at all,
1388
+ use class.to_s instead of class.name,
1389
+ (ParentClass): extension to child.
1390
+
1391
+ * n/db/mysql-managed.rb: removed
1392
+ * n/db/mysql-connection.rb: removed
1393
+
1394
+ * app/root/faq/search.sx: use the new search infrastructure.
1395
+
1396
+ * n/root/play: removed part for now.
1397
+
1398
+ * app/root/fora/search.sx: introduced.
1399
+
1400
+ * n/glue/def.rb (PartActions#search_basesql): creates a basesql for
1401
+ searching,
1402
+ (PartActions#search_basesql): pass extrasql,
1403
+ (PartActions#search): search and return matching entities.
1404
+
1405
+ 29-08-2004 George Moschovitis <gm@navel.gr>
1406
+
1407
+ * YEAH, environments mostly work!
1408
+
1409
+ * n/appserver/webrick.rb (WebrickAppServer#initialize): use
1410
+ AppServerMixin.
1411
+
1412
+ * n/appserver/server.rb (AppServerMixin): intorduced
1413
+
1414
+ * app/env.rb: incredible, rails like environment allows full access
1415
+ to the appserver internals.
1416
+
1417
+ * app/webrick.rb: rearranged requires to be more flexible.
1418
+
1419
+ * app/app.rb: use the new more flexible configuration system.
1420
+ * app/conf/live-config.rb: live configuration.
1421
+ * app/conf/debug-config.rb: debug configuration.
1422
+
1423
+ * n/root/messages/def.rb: new setup for message styles, more configurable
1424
+ * n/root/messages/form.ss: same
1425
+
1426
+ * app/conf/config.rb new setup for message styles
1427
+
1428
+ * n/ui/sitemap.rb (SitePage): keep realm for each page.
1429
+
1430
+ 28-08-2004 George Moschovitis <gm@navel.gr>
1431
+
1432
+ * YEAH, favourites work with the new code.
1433
+
1434
+ * n/root/fora/favourites.si: use latest code
1435
+
1436
+ * n/root/fora/list.ss: use option_proc
1437
+
1438
+ * n/db.rb: updated db method wrappers.
1439
+
1440
+ * n/root/users/def.rb (FavouriteRelation): use target methods
1441
+ from base relation.
1442
+
1443
+ * n/db/connection.rb (DbConnection#get_join_fields): introduced,
1444
+ read join fields in deserialize methods,
1445
+ cleaned up code,
1446
+ when calling drop_table on a sequenced entity, drop the sequence too.
1447
+
1448
+ * n/db/managed.rb (Managed#eval_db_read_row): made more fault tolerant
1449
+ when properties change,
1450
+ cleaned up code,
1451
+ add join_fields in every managed object,
1452
+ (Relation#targets_for_parent): cool, sets join_fields!,
1453
+ (Relation#count_targets_for_parent): counts targets,
1454
+ (RelationUtils): introduced, copied the above methods
1455
+
1456
+ * n/root/fora/list.ss: fixed style handling
1457
+ * n/root/messages/list.ss: same
1458
+
1459
+ 27-08-2004 George Moschovitis <gm@navel.gr>
1460
+
1461
+ * YEAH, the new db code seems to work!
1462
+
1463
+ * n/root/fora/msg-list.si: fixed count sql
1464
+ * n/root/messages/list.si: same
1465
+
1466
+ * n/db/managed.rb (Managed#eval_db_read_row): uses fields order,
1467
+ works with PGresult.
1468
+
1469
+ * n/properties: name = str representation of symbols.
1470
+
1471
+ * n/db.rb (Db#entity_from_row): creates an entity from row,
1472
+ added fields safe hash that stores managed class db fields order.
1473
+
1474
+ * n/db/connection.rb (DbUtils#sql_write_prop): handle nil case,
1475
+ use exec(),
1476
+ (DbConnection#calc_fields): calculate fiels order from db,
1477
+ better handle empty results in safe/retry query!
1478
+
1479
+ 27-08-2004 Elias Athanasopoulos <elathan@navel.gr>
1480
+
1481
+ * created grab_exif code helper, to extract photo metadata.
1482
+
1483
+ * created a simple util to handle faqs.
1484
+
1485
+ 27-08-2004 George Moschovitis <gm@navel.gr>
1486
+
1487
+ * app/root/fora/activity.sx: use msg-list and latest code.
1488
+ * n/root/fora/activity.si: removed, use msg-list.si instead.
1489
+
1490
+ * n/db/connection.rb (DbUtils#count): count entities helper.
1491
+
1492
+ * n/root/fora/def.rb (MessagesPart): defined LPKEYS
1493
+ * n/root/messages/def.rb (ForaPart): same
1494
+
1495
+ * n/root/messages/list-panel.ss: recoded to be more flexible
1496
+ * n/root/messages/list.si: same
1497
+
1498
+ * n/web/server/script.rb (Script#__init): Compile time initialization.
1499
+
1500
+ * n/db/connection.rb (DbUtils#sql_write_prop): Escape strings!
1501
+
1502
+ * n/root/messages/def.rb (MessagesUtils#calc_pager) :
1503
+ new class with utils, calculates the pager and extrasql.
1504
+
1505
+ 26-08-2004 Elias Athanasopoulos <elathan@navel.gr>
1506
+
1507
+ * n/root/faq/category.si: Localized.
1508
+ * n/root/faq/search-faq-form.ss: Likewise.
1509
+ * n/root/faq/faq-form.ss: Likewise.
1510
+ * n/root/faq/lc-el.rb: Added new locale entries.
1511
+ * n/root/faq/lc-en.rb: Likewise.
1512
+
1513
+ * n/root/fora/activity.si: Localized.
1514
+ * n/root/fora/admin-panel.ss: Likewise.
1515
+ * n/root/fora/fora.si: Likewise.
1516
+ * n/root/fora/list.ss: Likewise.
1517
+ * n/root/fora/msg-form.ss: Likewise.
1518
+ * n/root/fora/msg-list.si: Likewise.
1519
+ * n/root/fora/panel.ss: Likewise.
1520
+ * n/root/fora/lc-el.rb: Added new locale entries.
1521
+ * n/root/fora/lc-en.rb: Likewise.
1522
+
1523
+ * n/root/messages/list-panel.ss: Localised.
1524
+ * n/root/messages/list.si: Likewise
1525
+ * n/root/messages/list.ss: Liewise.
1526
+ * n/root/messages/lc-el.rb: Added new locale entries.
1527
+ * n/root/messages/lc-en.rb: Likewise.
1528
+
1529
+ * n/web/server/handlers/page-handler.rb (PageHandler#transform_script):
1530
+ Make regular expressions non-greedy.
1531
+
1532
+ 26-08-2004 George Moschovitis <gm@navel.gr>
1533
+
1534
+ * app/root/fora/favourites.sx: fora favourites.
1535
+
1536
+ * n/root/glue/tools.ss: remove fav on click.
1537
+
1538
+ * n/appserver/webrick.rb: webrick version of appserver. Quite incredibly
1539
+ by setting the bind address I got a MAJOR speedup.
1540
+
1541
+ * n/db/managed.rb (SqlTreeTraversable#__db_pre_insert): setup depth,
1542
+ rgt, lft if not allready defined (bug).
1543
+
1544
+ * n/appserver/apache.conf: use navel user, mysql passwd and localhost
1545
+ to make compatible with other devs.
1546
+