thanks for the fast reply
If you want to be sure to keep a content and a stylesheet you can set the
function isRemoveable of the templates to false (like for the template) and
change the TemplateEdit Action to allow the remove of them if there is
another Template for stylesheet or the contents. You only need a message
which say the type of the template and if there is 2 of the same type, you
can remove one of them.
> 1. The "contents" of a SmallWiki is a combination of pages, folders,
> and resources.
> 2. A "page" and a "resource" are components, and a "folder" is a
> composite of those two components.
yes, it is a composite-pattern, but there are not just those two
components that might be put into a folder:
- First of all it is possible to nest folders, to allow putting
together related content. Furthermore folders are a kind of a
namespace, so you might have pages with the same title in different
- There are other components available to be used with SmallWiki as
extension. As an example some time ago I have written a component
displaying a keyword-index of your wiki. A lot of other components
(have been|are|will be) written during software design courses at the
University of Bern and Brussels. Just to name a few examples: link
collection, photo gallery, forum, address-book, calendar pages, rss
> 3. A "resource" is some uploaded file resource, such as a sound, a
> video clip, or a picture.
Exactly, usually this is for things like you mention: jpg, gif, mp3,
mpg, zip, pdf, doc, ... Actually it is also possible to upload a
html-file to serve static pages/style-sheets ...
> OK, what if I don't care to allow anybody to upload file resources?
> That would leave a "page" as the only interesting component left.
For further information about the design, see the diagrams in the
Smallwiki - Collaborative Content Management
> And why bother having a composite (a "folder") of only one component?
Wikis have always been flat (WikiWorks has one level: Book -> Page,
SWiki has two levels: Shelf -> Book -> Page) and in my opinion this has
a lot of drawbacks. Therefor I decided to implement a real composite
and this gives a lot of power to the users to organize their things. Of
course it also adds some complexity, but I think today everybody is
used to work with folders and files in their filesystem.
After all, it is possible to use SmallWiki without creating any folder:
just put everything into the root, but there will be a mess very soon
> In other words, if I don't care to allow people to upload files to my
> SmallWiki, why would I be interested in anything other than pages (eg,
> children of type SWPage)?
See the examples above.
Seaside mailing list
I have to create a extension of SmallWiki to manage the user's preferences.
In this goal, I would like to put the user's stylesheet in place of the
I see that the template who render the stylesheet tag is the
TemplateBodyContents. The matter is that this one is not removeable from the
template list and then whe can't do the replacement. The only thing we can
do is to put another style tag in the html but I'm not sure all the browsers
will take this second stylesheet in account.
I think it's it should be a good idea to split the TemplateBodyContents in 2
templates: one for the contents and another for the stylesheet (e.g.:
TemplateHeadStylesheet) which is removeable.
PS: sorry for the faults, it's not my mother language
If you load 0.9.23 from the public repository into a new image, the tests
don't run. The various structure #initialize class methods have been
removed, so the class instance variables aren't initialized. Instead of
adding the methods back, could the code be changed so that these variables
are lazily initialized?
Also, the VisitorRendererWiki>>emitCrWithoutDuplicates assumes that #cr
method on stream emits only a Character cr. However, the ANSI standard says
that #cr emits "a sequence of character objects that constitute the
implementation-defined end-of-line sequence" so you can't assume that
Character cr will be put on the stream. Instead of getting the contents, I
would suggest adding an instance variable that says whether the last thing
put on the stream was a #cr from #emitCr.
Many wikis implement a function which allows the user to ask for a list
of pages which link to a particular page.
Many people consider this function to be crucial for working with a wiki
Is this function already implemented as an action?
Or is somebody actively working on this right now?
Any information on this subject is appreciated.
I'd like to create internal links. Links within the same folder work
fine. However let's consider the following situation
page introduction (1)
page verb (2)
I'd like to do a link from page (1) to page (2):
Just a simple link *verb* does not work because the page 'introduction'
is in a folder 'language' and it seems that pages outside this folder
are not considered link target candidats.
How do I have to proceed? Is there a special syntax to navigate?
Or is there a general mark to indicate 'take any page'?
I noticed that I have to click twice on edit to get the page edited
with safari (after the first click I get a cannot open) then after the
second click it works....strange have you noticed the same.
David will work on some management tools, and with roles SW will start
to be much cooler (we modelled already an advance admin-user) scenario
and your role/model works well.
- at paris noury asked me the following: some of his upload are iso cd
files which are around 600 mb.
I imagine that we cannot upload that in the image. :)
I saw the roles management interface of david and this starts to be
usable and good.
David will work one extra day and publish a version to be incorporated
in SW and he will sit with alex to upgrade our server.
- would it be possible to have a one click load bundle? because this
was frsutrating to me to not been able
to load SW for doing the demo at paris. Luckily I had an old image
- Next week we will sit with alex and finish the SwikiSucker :)
I would like to disallow the unser 'anonymous' to view the contents of a
certain folder X while at the same time create a general user (with a
password) which has the rights of the user 'anonymous' and is allowed
to view and edit the folder X.
What do I already know?
server user inspect
gives me a dictionary of the users (instances of SWUser)
shows how to create a couple of permissions and to assign
them to a role. Then a user is created and the role added.
What I do not know is how to do the link between a user (and his
role) and a certain folder.
I would like to know as well how to access the permissions of a certain
server root permissions
does not work.
Thank you for the answer in advance