[Gd-chatter] r10788 - in trunk/libraries/koala: sources/examples/wiki sources/koala www/wiki
cgay at gwydiondylan.org
cgay at gwydiondylan.org
Wed Jun 7 07:56:31 CEST 2006
Author: cgay
Date: Wed Jun 7 07:56:28 2006
New Revision: 10788
Modified:
trunk/libraries/koala/sources/examples/wiki/classes.dylan
trunk/libraries/koala/sources/examples/wiki/library.dylan
trunk/libraries/koala/sources/examples/wiki/wiki.dylan
trunk/libraries/koala/sources/koala/dsp-taglib.dylan
trunk/libraries/koala/www/wiki/admin.dsp
trunk/libraries/koala/www/wiki/edit.dsp
trunk/libraries/koala/www/wiki/header.dsp
trunk/libraries/koala/www/wiki/login.dsp
trunk/libraries/koala/www/wiki/wiki.css
Log:
bug: 7219
* Added a way to specify a title for specialized pages like <login-page>.
* Slightly improved display of "form notes".
Modified: trunk/libraries/koala/sources/examples/wiki/classes.dylan
==============================================================================
--- trunk/libraries/koala/sources/examples/wiki/classes.dylan (original)
+++ trunk/libraries/koala/sources/examples/wiki/classes.dylan Wed Jun 7 07:56:28 2006
@@ -3,7 +3,11 @@
define web-class <wiki-page-diff> (<object>)
data content :: <string>;
- data author :: <string> = if (current-user()) current-user().username else "foobar" end; //XXX: use IP here
+ data author :: <string> = if (current-user())
+ current-user().username
+ else
+ "foobar" //XXX: use IP here
+ end;
data page-version :: <integer>;
data timestamp :: <date> = current-date();
data comment :: <string>;
@@ -30,7 +34,8 @@
define method find-backlinks (title)
let res = make(<stretchy-vector>);
for (page in sort(key-sequence(storage(<wiki-page-content>))))
- if (subsequence-position(latest-text(storage(<wiki-page-content>)[page]), concatenate("[[", title, "]]")))
+ if (subsequence-position(latest-text(storage(<wiki-page-content>)[page]),
+ concatenate("[[", title, "]]")))
add!(res, storage(<wiki-page-content>)[page])
end;
end;
Modified: trunk/libraries/koala/sources/examples/wiki/library.dylan
==============================================================================
--- trunk/libraries/koala/sources/examples/wiki/library.dylan (original)
+++ trunk/libraries/koala/sources/examples/wiki/library.dylan Wed Jun 7 07:56:28 2006
@@ -40,10 +40,9 @@
use xml-rpc-common,
import: { base64-encode, base64-decode };
use strings, import: { index-of, case-insensitive-equal? };
- use web-framework, exclude: { respond-to-get, respond-to-post };
+ use web-framework, exclude: { respond-to-get, respond-to-post, slot-type };
use users;
use storage;
- use simple-xml;
use sequence-diff;
use substring-search;
end;
Modified: trunk/libraries/koala/sources/examples/wiki/wiki.dylan
==============================================================================
--- trunk/libraries/koala/sources/examples/wiki/wiki.dylan (original)
+++ trunk/libraries/koala/sources/examples/wiki/wiki.dylan Wed Jun 7 07:56:28 2006
@@ -21,6 +21,7 @@
end;
define class <wiki-page> (<dylan-server-page>)
+ slot page-title :: false-or(<string>) = #f, init-keyword: page-title:;
end;
define generic page-editable? (page :: <wiki-page>) => (editable? :: <boolean>);
@@ -68,7 +69,7 @@
dynamic-bind (*title* = get-query-value("title") | *default-title*,
*version* = ignore-errors(string-to-integer(get-query-value("v"))),
*content* = page-content(*title*, version: *version*, format: #"html")
- | "(no content)")
+ | "(no content)")
next-method(); // process the DSP template
end;
end;
@@ -125,6 +126,7 @@
define page new-page (<wiki-page>)
(url: "/wiki/new.dsp",
source: "wiki/edit.dsp")
+ keyword page-title:, init-value: "(new page)";
end;
define method respond-to-get
@@ -138,6 +140,7 @@
define page login-page (<wiki-page>)
(url: "/wiki/login.dsp",
source: "wiki/login.dsp")
+ keyword page-title:, init-value: "Login";
end;
define method respond-to-post (page :: <login-page>,
@@ -372,7 +375,7 @@
(page :: <wiki-page>, response :: <response>)
(v :: <boolean>, for-url :: <boolean>)
let out = output-stream(response);
- let title = *title* | "(no title)";
+ let title = *title* | page-title(page) | "(no title)";
write(out, title);
if (*title* & v)
let wiki-page = find-page(*title*);
Modified: trunk/libraries/koala/sources/koala/dsp-taglib.dylan
==============================================================================
--- trunk/libraries/koala/sources/koala/dsp-taglib.dylan (original)
+++ trunk/libraries/koala/sources/koala/dsp-taglib.dylan Wed Jun 7 07:56:28 2006
@@ -266,6 +266,7 @@
let messages = choose(rcurry(instance?, <form-message>), notes);
let errors = choose(rcurry(instance?, <form-error>), notes);
let out = output-stream(response);
+ write(out, "<div class=\"form-notes\">\n");
unless(empty?(messages))
write(out, "<div class=\"form-note-message\">\n");
do(curry(display-form-note, out), messages);
@@ -276,6 +277,7 @@
do(curry(display-form-note, out), errors);
format(out, "</ul></div>\n");
end;
+ write(out, "</div>\n");
end;
end;
Modified: trunk/libraries/koala/www/wiki/admin.dsp
==============================================================================
--- trunk/libraries/koala/www/wiki/admin.dsp (original)
+++ trunk/libraries/koala/www/wiki/admin.dsp Wed Jun 7 07:56:28 2006
@@ -8,10 +8,7 @@
<body>
<%dsp:include url="header.dsp"/>
-
- <div id="form-notes">
<dsp:show-form-notes/>
- </div>
<div id="content">
<h1>Dylan Wiki Administration</h1>
<wiki:privilege value="remove">
Modified: trunk/libraries/koala/www/wiki/edit.dsp
==============================================================================
--- trunk/libraries/koala/www/wiki/edit.dsp (original)
+++ trunk/libraries/koala/www/wiki/edit.dsp Wed Jun 7 07:56:28 2006
@@ -15,9 +15,7 @@
<%dsp:include url="header.dsp"/>
- <div id="form-notes">
<dsp:show-form-notes/>
- </div>
<dsp:if test="login?">
<dsp:then>
Modified: trunk/libraries/koala/www/wiki/header.dsp
==============================================================================
--- trunk/libraries/koala/www/wiki/header.dsp (original)
+++ trunk/libraries/koala/www/wiki/header.dsp Wed Jun 7 07:56:28 2006
@@ -17,6 +17,5 @@
<a href="/wiki/edit.dsp?title=<wiki:show-title v="true" for-url="true"/>">Edit This Page</a>
</dsp:when>
</div>
- <dsp:show-form-notes/>
</div>
<!-- begin user-generated page content -->
Modified: trunk/libraries/koala/www/wiki/login.dsp
==============================================================================
--- trunk/libraries/koala/www/wiki/login.dsp (original)
+++ trunk/libraries/koala/www/wiki/login.dsp Wed Jun 7 07:56:28 2006
@@ -14,8 +14,8 @@
Logged in as <wiki:username/>. <a href="/wiki/logout.dsp">Logout</a>
</dsp:then>
<dsp:else>
- You need to have Cookies enabled to continue.<br>
<dsp:show-form-notes/>
+ Note: You must have Cookies enabled to continue.<br>
<form action="/wiki/login.dsp" method="post">
<div class="login">
Username: <input type="text" name="username" size="20"/> <br/>
Modified: trunk/libraries/koala/www/wiki/wiki.css
==============================================================================
--- trunk/libraries/koala/www/wiki/wiki.css (original)
+++ trunk/libraries/koala/www/wiki/wiki.css Wed Jun 7 07:56:28 2006
@@ -124,6 +124,18 @@
margin: 0; padding: 0
}
+.form-notes
+{
+ margin: 0.2em;
+ background: #ffcccc;
+ border: 1px solid #000000;
+}
+
+.form-note-errors
+{
+ color: #ff0000
+}
+
/*
* content
*/
More information about the chatter
mailing list