From matthias.berth at googlemail.com Wed Aug 1 19:47:48 2007 From: matthias.berth at googlemail.com (Matthias Berth) Date: Wed, 1 Aug 2007 19:47:48 +0200 Subject: WARenderLoopConfiguration vs WARenderConfiguration Message-ID: <9aa6ae270708011047t3bb500ddq19c1655d6dba75a6@mail.gmail.com> Hello, I was updating my Pier installation (using Pier-Seaside-lr.182 and others), it stumbled at PRPieronfiguration>>ancestors ^ Array with: WARenderConfiguration new not knowing the class WARenderConfiguration. Replacing this with WARenderLoopConfiguration works OK so far. I am running seaside 2.7b1. Looks like the ancestors method comes from Pier-Seaside-lr.182. Maybe WARenderLoopConfiguration got renamed to WARenderConfiguration in Seaside 2.8? Is it OK to use WARenderLoopConfiguration here? If not, where can I get WARenderConfiguration ? best regards Matthias From renggli at iam.unibe.ch Wed Aug 1 20:42:50 2007 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Wed, 1 Aug 2007 20:42:50 +0200 Subject: WARenderLoopConfiguration vs WARenderConfiguration In-Reply-To: <9aa6ae270708011047t3bb500ddq19c1655d6dba75a6@mail.gmail.com> References: <9aa6ae270708011047t3bb500ddq19c1655d6dba75a6@mail.gmail.com> Message-ID: Thank you for reporting this issue. This renaming in Seaside 2.8 was not intentional and I reverted it to the old name. The latest version of Pier should be compatible to Seaside 2.7 again. Name: Pier-All-lr.221 Author: lr Time: 1 August 2007, 8:38:28 pm UUID: 491ee006-70b0-47ed-9a95-841f5ca60a20 Ancestors: Pier-All-lr.220 Dependencies: Pier-Model-lr.156, Pier-Tests-lr.72, Pier-Seaside-lr. 183, Pier-OmniBrowser-lr.25, Pier-Security-lr.82, Pier-Blog-lr.56 - renamed WARenderConfiguration back to WARenderLoopConfiguration to make Pier compatible with Seaside 2.7 - requires to re-register the pier application On 01.08.2007, at 19:47, Matthias Berth wrote: > Hello, > > > I was updating my Pier installation (using Pier-Seaside-lr.182 and > others), it stumbled at > > PRPieronfiguration>>ancestors > ^ Array with: WARenderConfiguration new > > not knowing the class WARenderConfiguration. Replacing this with > WARenderLoopConfiguration works OK so far. > > I am running seaside 2.7b1. Looks like the ancestors method comes from > Pier-Seaside-lr.182. Maybe WARenderLoopConfiguration got renamed to > WARenderConfiguration in Seaside 2.8? > > Is it OK to use WARenderLoopConfiguration here? If not, where can I > get WARenderConfiguration ? > > > best regards > > Matthias > > _______________________________________________ > SmallWiki, Magritte, Pier and Related Tools ... > https://www.iam.unibe.ch/mailman/listinfo/smallwiki -- Lukas Renggli http://www.lukas-renggli.ch -------------- next part -------------- A non-text attachment was scrubbed... Name: smime.p7s Type: application/pkcs7-signature Size: 3774 bytes Desc: not available Url : http://www.iam.unibe.ch/pipermail/smallwiki/attachments/20070801/e0652a99/smime.bin From matthias.berth at googlemail.com Thu Aug 2 12:40:40 2007 From: matthias.berth at googlemail.com (Matthias Berth) Date: Thu, 2 Aug 2007 12:40:40 +0200 Subject: WARenderLoopConfiguration vs WARenderConfiguration In-Reply-To: References: <9aa6ae270708011047t3bb500ddq19c1655d6dba75a6@mail.gmail.com> Message-ID: <9aa6ae270708020340k9548b95u55f5dfd0afe06f56@mail.gmail.com> Thanks, works without problems now :-) Matthias On 8/1/07, Lukas Renggli wrote: > Thank you for reporting this issue. This renaming in Seaside 2.8 was > not intentional and I reverted it to the old name. The latest version > of Pier should be compatible to Seaside 2.7 again. From keith_hodges at yahoo.co.uk Thu Aug 2 20:02:46 2007 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Thu, 02 Aug 2007 19:02:46 +0100 Subject: Repository down? Message-ID: <46B21C46.4040900@yahoo.co.uk> cheers Keith From renggli at iam.unibe.ch Thu Aug 2 20:08:41 2007 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Thu, 2 Aug 2007 20:08:41 +0200 Subject: Repository down? In-Reply-To: <46B21C46.4040900@yahoo.co.uk> References: <46B21C46.4040900@yahoo.co.uk> Message-ID: <63FE9CE8-0628-4153-9AC6-0714ED9C5CA1@iam.unibe.ch> Thanks for reporting. Unfortunately Apache didn't want to restart today due to a GCC update on my Gentoo Linux. Some libraries are now recompiling ... Sorry for the inconvenience. Lukas -- Lukas Renggli http://www.lukas-renggli.ch From renggli at iam.unibe.ch Thu Aug 2 22:28:39 2007 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Thu, 2 Aug 2007 22:28:39 +0200 Subject: [Fwd: Help needed to run widgets in other contexts] In-Reply-To: <46B23C74.6030000@yahoo.co.uk> References: <46B23C74.6030000@yahoo.co.uk> Message-ID: <82071D44-2E1C-4EBF-A54E-05443DC4D52B@iam.unibe.ch> Yes, the code I gave you at that time won't work in Seaside 2.8. WARenderLoop has been completely rewritten to avoid the need to store many unnecessary continuations. This greatly reduces the memory requirements per session. What I suggest to do is that you implement a decoration that you can add around your component. Inside this decoration you store the context-holder and wrap the rendering and callback processing into PRCurrentContext use: contextHolder during: [ ... ] HTH, Lukas On 02.08.2007, at 22:20, Keith Hodges wrote: > Hello Lukas, > > a while ago you gave me this code. Now I am using the latest > seaisde 2.8 it doesnt work as I would like. The widgit works but > its callbacks fail. Any thoughts on what may have changed? > > cheers > > Keith > > > From: Keith Hodges > Date: 27. Juli 2007 04:30:25 GMT+02:00 > To: "small >> \"SmallWiki, Magritte, Pier and Related Tools ...\"" > > Subject: Help needed to run widgets in other contexts > Reply-To: "Magritte, Pier and Related Tools ..." > > > > Help! > > Hi All, > > A while ago Lukas gave me the following code for opening a pier widget > so that it would be able to access its context even though we are not > even in a pier application! > > self - is my control panel which runs in the WADispatcherEditor's > session. > widget is PUUsers or PUGroups > > ControlPanel-callWidget: widget titled: title > > PRCurrentContext use: self during: [ > WARenderLoop new call: (widget > addDecoration: (WAWindowDecoration new > title: title; > yourself); > yourself) ] > > > This works to the extent that the widget displays correctly, > however the > buttons do not work due to PRCurrentContext value being nil. > > I am using the latest everything in the development universes. > > Does anyone have any ideas? > > thanks in advance > > Keith > > > _______________________________________________ > SmallWiki, Magritte, Pier and Related Tools ... > https://www.iam.unibe.ch/mailman/listinfo/smallwiki > > > -- Lukas Renggli http://www.lukas-renggli.ch From renggli at iam.unibe.ch Thu Aug 2 22:32:12 2007 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Thu, 2 Aug 2007 22:32:12 +0200 Subject: Repository down? In-Reply-To: <63FE9CE8-0628-4153-9AC6-0714ED9C5CA1@iam.unibe.ch> References: <46B21C46.4040900@yahoo.co.uk> <63FE9CE8-0628-4153-9AC6-0714ED9C5CA1@iam.unibe.ch> Message-ID: <14B2B41E-AA96-473E-B1C5-F1E3DE5BDE53@iam.unibe.ch> Ok, Apache is finally up and running again. The kernel will also need to be rebuilt and restarted, but that will hopefully only cause a short outage later tonight. If only Linux was written in Smalltalk ;-) Thanks for your patience. Lukas On 02.08.2007, at 20:08, Lukas Renggli wrote: > Thanks for reporting. Unfortunately Apache didn't want to restart > today due to a GCC update on my Gentoo Linux. Some libraries are now > recompiling ... > > Sorry for the inconvenience. > > Lukas > > -- > Lukas Renggli > http://www.lukas-renggli.ch > > > _______________________________________________ > SmallWiki, Magritte, Pier and Related Tools ... > https://www.iam.unibe.ch/mailman/listinfo/smallwiki -- Lukas Renggli http://www.lukas-renggli.ch From keith_hodges at yahoo.co.uk Fri Aug 3 03:00:46 2007 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Fri, 03 Aug 2007 02:00:46 +0100 Subject: [bug] Message-ID: <46B27E3E.2070802@yahoo.co.uk> I found that pasting a 'long dash' character into a pier page results in the contents being rendered like so ? ??? References: <46B27E3E.2070802@yahoo.co.uk> Message-ID: <66666f210708022328g1262dc79gbab4a27ce8970ade@mail.gmail.com> 2007/8/3, Keith Hodges : > I found that pasting a 'long dash' character into a pier page results in > the contents being rendered like so > > ? > > ???v???e???r???s???i???o???n???=???"???1???.???0???"??? > ???e???n???c???o???d???i???n???g???=???"???U???T???F???-???8???"???????>??? ???h???t???m???l??? ???P???U???B???L???I???C??? > ???"???-???/???/???W???3???C???/???/???D???T???D??? ???X???H???T???M???L??? > > I am using the standard WAKom. > > best regards > > Keith > > == > fyi: using pier-beta in 3.10 dev image Are yo using Kom from SqueakMap? If you use Kom from SqueakMap then your only option for Squeak 3.9+ is WAKomEncoded39. Cheers Philippe From renggli at iam.unibe.ch Fri Aug 3 08:42:20 2007 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Fri, 3 Aug 2007 08:42:20 +0200 Subject: [bug] In-Reply-To: <66666f210708022328g1262dc79gbab4a27ce8970ade@mail.gmail.com> References: <46B27E3E.2070802@yahoo.co.uk> <66666f210708022328g1262dc79gbab4a27ce8970ade@mail.gmail.com> Message-ID: <623A30CA-3474-4E5D-8029-F26E722E7BC0@iam.unibe.ch> Pier from SqueakMap comes with a patched version of Kom. With this configuration I cannot reproduce your bug. I can even past any of these characters into a page, display and re-edit: http://jshin.net/i18n/korean/hunmin.html I assume that you are using WAKom and an unpatched version of Kom. In this case you have to use WAKomEncoded39 or the patched version of Kom. Pier doesn't do any encoding conversion. It just stores and displays what it gets from your client/server/seaside instance. Lukas On 03.08.2007, at 08:28, Philippe Marschall wrote: > 2007/8/3, Keith Hodges : >> I found that pasting a 'long dash' character into a pier page >> results in >> the contents being rendered like so >> >> ? >> >> > ???v???e???r???s???i???o??? >> n???=???"???1???.???0???"?? >> ? >> ???e???n???c???o???d???i??? >> n???g???=???"???U???T???F?? >> ?-???8???"???????>???> ???D???O???C???T???Y???P??? >> E??? >> ???h???t???m???l??? >> ???P???U???B???L???I???C??? >> ???"???-???/???/ >> ???W???3???C???/???/ >> ???D???T???D??? >> ???X???H???T???M???L??? >> >> I am using the standard WAKom. >> >> best regards >> >> Keith >> >> == >> fyi: using pier-beta in 3.10 dev image > > Are yo using Kom from SqueakMap? If you use Kom from SqueakMap then > your only option for Squeak 3.9+ is WAKomEncoded39. > > Cheers > Philippe > > > _______________________________________________ > SmallWiki, Magritte, Pier and Related Tools ... > https://www.iam.unibe.ch/mailman/listinfo/smallwiki > -- Lukas Renggli http://www.lukas-renggli.ch From keith_hodges at yahoo.co.uk Fri Aug 3 08:57:18 2007 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Fri, 03 Aug 2007 07:57:18 +0100 Subject: [bug] In-Reply-To: <66666f210708022328g1262dc79gbab4a27ce8970ade@mail.gmail.com> References: <46B27E3E.2070802@yahoo.co.uk> <66666f210708022328g1262dc79gbab4a27ce8970ade@mail.gmail.com> Message-ID: <46B2D1CE.1090205@yahoo.co.uk> > Are yo using Kom from SqueakMap? If you use Kom from SqueakMap then > your only option for Squeak 3.9+ is WAKomEncoded39. > > Cheers > Philippe > > thanks for the advice. I am using whatever version of Kom is loaded when you load seaside-beta from the 'development' universe. Is this the patched one? Keith From norbert at hartl.name Fri Aug 3 12:07:10 2007 From: norbert at hartl.name (Norbert Hartl) Date: Fri, 03 Aug 2007 12:07:10 +0200 Subject: Pier and Albatross versions Message-ID: <1186135630.7442.3.camel@localhost> Hi, I'm trying to see the albatross tests running. These require pier to run. I installed pier from universes (production and beta) but had no success using the newest version from squeaksource. In pier-beta I get Internal Error MessageNotUnderstood: UndefinedObject>>default [] in WAApplication>>updateRoot: {[:each | each default updateRoot: anHtmlRoot]} Which versions should I use? thanks, Norbert From norbert at hartl.name Fri Aug 3 12:10:35 2007 From: norbert at hartl.name (Norbert Hartl) Date: Fri, 03 Aug 2007 12:10:35 +0200 Subject: Pier and Albatross versions In-Reply-To: <1186135630.7442.3.camel@localhost> References: <1186135630.7442.3.camel@localhost> Message-ID: <1186135835.7442.6.camel@localhost> On Fri, 2007-08-03 at 12:07 +0200, Norbert Hartl wrote: > Hi, > > I'm trying to see the albatross tests running. These > require pier to run. I installed pier from universes > (production and beta) but had no success using the > newest version from squeaksource. > > In pier-beta I get > > Internal Error > MessageNotUnderstood: UndefinedObject>>default > > [] in WAApplication>>updateRoot: {[:each | each default updateRoot: > anHtmlRoot]} > Sorry, too less information. I get this error while accessing http://localhost:8080/seaside/albatross Running the test APierTest fails while there is no response from the browser. Is there a browser opened while running the tests? Norbert From matthias.berth at googlemail.com Fri Aug 3 13:59:16 2007 From: matthias.berth at googlemail.com (Matthias Berth) Date: Fri, 3 Aug 2007 13:59:16 +0200 Subject: Pier: Invoking a PRCommand from outside, on-the-fly-login, redirect to users page Message-ID: <9aa6ae270708030459g25e78cb7wb4cec21c6fc8049@mail.gmail.com> Hi, I have tried various ways to accomplish this, so far with limited success, any pointers would be appreciated :-) Here is my scenario: - a user fills in a web form on a non-Pier web site - the form is submitted via HTTP post to a URL on the Pier site, like so: http://the.piersite.net/seaside/pier?command=DoSomething - DoSomething is a PRCommand that requires a login - the user logs in - Pier shows a confirmation form that summarizes the data from the original form - user clicks OK - DoSomething is executed - Pier shows the home page of the user http://the.piersite.net/seaside/pier/accounts/joeuser?command=PRViewCommand I can have DoSomething execute successfully, but I cannot make the change to the users home page. Maybe my approach is wrong: - I use Seaside 2.7b with the latest Pier, Magritte etc - I use Pier Unix security - DoSomething is a PRCommand that implements isValidIn: aContext on the class side as aContext isLoggedIn. This, together with configuring PUPierMain as the main class will invoke the on-the-fly login. - I have a made a patch to PRPierMain>>commandFrom: such that the newly created PRCCommand will have a chance to read additional data from the external HTTP Request (inside DoSomething>>processRequest:) - DoSomething answers a custom subclass of WAComponent (say, ConfirmView) in its asComponent method - the ConfirmView knows the DoSomething command so it can display the users data, with a button "Confirm". Clicking the Confirm button will send the message confirm to the view ConfirmView>>confirm command user: self context user.. command execute - I can see that the command executes successfully. Inside DoSomething>>execute I have self answer: (self context structure: self user account "account is a PRStructure" view: UserAccountView) - I have inspected the command at this point, and answer gets the right contents. - However, when I click on the button, the Confirm view just stays there. Do you see any chance to get this working? I have tried to look at Pier Blog and others, but they all seem to use #answer: without problems. I'd be thankful for any hints, or alternative ways to achieve the page flow I described. Cheers Matthias From renggli at iam.unibe.ch Fri Aug 3 14:26:45 2007 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Fri, 3 Aug 2007 14:26:45 +0200 Subject: Pier and Albatross versions In-Reply-To: <1186135630.7442.3.camel@localhost> References: <1186135630.7442.3.camel@localhost> Message-ID: > Which versions should I use? I am sure Damien knows more. Otherwise you might want to try to load the version from SqueakMap. It should work on 3.8 and 3.9. Lukas -- Lukas Renggli http://www.lukas-renggli.ch From renggli at iam.unibe.ch Fri Aug 3 14:31:17 2007 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Fri, 3 Aug 2007 14:31:17 +0200 Subject: Pier and Albatross versions In-Reply-To: <1186135835.7442.6.camel@localhost> References: <1186135630.7442.3.camel@localhost> <1186135835.7442.6.camel@localhost> Message-ID: <42A4ADE9-F3B6-414B-A971-9174AFB60BA8@iam.unibe.ch> > Running the test APierTest fails while there is no response > from the browser. Is there a browser opened while running > the tests? As far as I know Albatros it always opens a browser while running the tests. Lukas -- Lukas Renggli http://www.lukas-renggli.ch From keith_hodges at yahoo.co.uk Fri Aug 3 15:20:48 2007 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Fri, 03 Aug 2007 14:20:48 +0100 Subject: Pier: Invoking a PRCommand from outside, on-the-fly-login, redirect to users page In-Reply-To: <9aa6ae270708030459g25e78cb7wb4cec21c6fc8049@mail.gmail.com> References: <9aa6ae270708030459g25e78cb7wb4cec21c6fc8049@mail.gmail.com> Message-ID: <46B32BB0.9000901@yahoo.co.uk> Matthias, I tried some stuff in the PRPierControlPanel which operates on pier, yet runs in the context of the seaside/config For code which does this check out the Magma-PersistencyManager and it depends upon Seaside28Jetsam. This is the crucial bit non trivial bit for me, where self responds to #context ControlPanel-callWidget: widget titled: title PRCurrentContext use: self during: [ WARenderLoop new call: (widget addDecoration: (WAWindowDecoration new title: title; yourself); yourself) ] FYI: This was working in 2.7, but no longer works in 2.8 best regards Keith From matthias.berth at googlemail.com Fri Aug 3 16:08:36 2007 From: matthias.berth at googlemail.com (Matthias Berth) Date: Fri, 3 Aug 2007 16:08:36 +0200 Subject: Pier: Invoking a PRCommand from outside, on-the-fly-login, redirect to users page In-Reply-To: <46B32BB0.9000901@yahoo.co.uk> References: <9aa6ae270708030459g25e78cb7wb4cec21c6fc8049@mail.gmail.com> <46B32BB0.9000901@yahoo.co.uk> Message-ID: <9aa6ae270708030708x1cf0f23chabfc73f30e8a7354@mail.gmail.com> Keith, thanks, interesting. So this snippet lets you render the Pier widget from another Seaside app, and all the interactions etc work as expected? Can I interpret it as embedding parts of Pier in a Seaside app? PRCurrentContext use: self during: [...] looks pretty mysterious to me. I'm not sure, but I think that everything is already set up more or less to run inside Pier once I have logged in. The login executes a Pier command, and Confirm is another Pier command, both of them are successful, it's only that Confirm does not go where I want it to go. Cheers Matthias On 8/3/07, Keith Hodges wrote: > Matthias, > > I tried some stuff in the PRPierControlPanel which operates on pier, yet > runs in the context of the seaside/config > > For code which does this check out the Magma-PersistencyManager and it > depends upon Seaside28Jetsam. > > This is the crucial bit non trivial bit for me, where self responds to > #context > > ControlPanel-callWidget: widget titled: title > > PRCurrentContext use: self during: [ > WARenderLoop new call: (widget > addDecoration: (WAWindowDecoration new > title: title; > yourself); > yourself) ] > > FYI: This was working in 2.7, but no longer works in 2.8 > > best regards > > Keith > > > > _______________________________________________ > SmallWiki, Magritte, Pier and Related Tools ... > https://www.iam.unibe.ch/mailman/listinfo/smallwiki > From norbert at hartl.name Fri Aug 3 16:18:03 2007 From: norbert at hartl.name (Norbert Hartl) Date: Fri, 03 Aug 2007 16:18:03 +0200 Subject: Pier and Albatross versions In-Reply-To: References: <1186135630.7442.3.camel@localhost> Message-ID: <1186150683.7442.57.camel@localhost> On Fri, 2007-08-03 at 14:26 +0200, Lukas Renggli wrote: > > Which versions should I use? > > I am sure Damien knows more. > > Otherwise you might want to try to load the version from SqueakMap. > It should work on 3.8 and 3.9. > Albatross is not on squeakmap. Pier from squeakmap loads seaside 2.8 and albatross is using registerObjectForBacktracking. Norbert From renggli at iam.unibe.ch Fri Aug 3 18:54:33 2007 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Fri, 3 Aug 2007 18:54:33 +0200 Subject: Pier: Invoking a PRCommand from outside, on-the-fly-login, redirect to users page In-Reply-To: <9aa6ae270708030708x1cf0f23chabfc73f30e8a7354@mail.gmail.com> References: <9aa6ae270708030459g25e78cb7wb4cec21c6fc8049@mail.gmail.com> <46B32BB0.9000901@yahoo.co.uk> <9aa6ae270708030708x1cf0f23chabfc73f30e8a7354@mail.gmail.com> Message-ID: <671C4759-D59D-45AE-B459-2F4E92A14B2A@iam.unibe.ch> I slightly refactored your changes so that they are in the right package and that they match the way Seaside implements these methods. PRCommand now understands #updateUrl: and #initialRequest: (the former #processRequest:). These changes makes some of the Pier code much simpler and generally more powerful. Thanks for providing the initial implementation. To see an example of the interplay of these methods have a look at PRViewCommand that implements #updateUrl: and #initialRequest:. HTH, Lukas On 03.08.2007, at 16:08, Matthias Berth wrote: > Keith, > > thanks, interesting. So this snippet lets you render the Pier widget > from another Seaside app, and all the interactions etc work as > expected? Can I interpret it as embedding parts of Pier in a Seaside > app? > > PRCurrentContext use: self during: [...] looks pretty mysterious to > me. > > I'm not sure, but I think that everything is already set up more or > less to run inside Pier once I have logged in. The login executes a > Pier command, and Confirm is another Pier command, both of them are > successful, it's only that Confirm does not go where I want it to go. > > > Cheers > > Matthias > > On 8/3/07, Keith Hodges wrote: >> Matthias, >> >> I tried some stuff in the PRPierControlPanel which operates on >> pier, yet >> runs in the context of the seaside/config >> >> For code which does this check out the Magma-PersistencyManager >> and it >> depends upon Seaside28Jetsam. >> >> This is the crucial bit non trivial bit for me, where self >> responds to >> #context >> >> ControlPanel-callWidget: widget titled: title >> >> PRCurrentContext use: self during: [ >> WARenderLoop new call: (widget >> addDecoration: (WAWindowDecoration new >> title: title; >> yourself); >> yourself) ] >> >> FYI: This was working in 2.7, but no longer works in 2.8 >> >> best regards >> >> Keith >> >> >> >> _______________________________________________ >> SmallWiki, Magritte, Pier and Related Tools ... >> https://www.iam.unibe.ch/mailman/listinfo/smallwiki >> > > _______________________________________________ > SmallWiki, Magritte, Pier and Related Tools ... > https://www.iam.unibe.ch/mailman/listinfo/smallwiki -- Lukas Renggli http://www.lukas-renggli.ch From damien.pollet at gmail.com Mon Aug 6 23:58:39 2007 From: damien.pollet at gmail.com (Damien Pollet) Date: Mon, 6 Aug 2007 23:58:39 +0200 Subject: Changing the title of the Header component ? Message-ID: <34b4844b0708061458l519519abh7b5052b06ae0e21e@mail.gmail.com> I'm trying to make a custom header as a subclass of PRHeaderWidget. I'd like it to have a title and a subtitle so I made subtitleDescription, defaults, and accessor inspired by the ones for title in PRHeaderWidget. Changing the subtitle from the Settings command works, but not the title. As far as I understand it, the PRComponent holds the state to configure instances of the PRHeaderWidget. When changing its settings, it will update that state, unless it has fields with the same name. In this case, #title from PRComponent is masking the one in PRHeaderWidget, so when I change the Title from the web, I'm changing the structure instead of the seaside component configuration... is this really wanted? shouldn't the Edit command modify the structure and Settings the component settings? Or was the idea that Edits are persisted but not Settings ? -- Damien Pollet type less, do more [ | ] http://typo.cdlm.fasmz.org From keith_hodges at yahoo.co.uk Tue Aug 7 00:45:01 2007 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Mon, 06 Aug 2007 23:45:01 +0100 Subject: Changing the title of the Header component ? In-Reply-To: <34b4844b0708061458l519519abh7b5052b06ae0e21e@mail.gmail.com> References: <34b4844b0708061458l519519abh7b5052b06ae0e21e@mail.gmail.com> Message-ID: <46B7A46D.1070502@yahoo.co.uk> Damien Pollet wrote: > I'm trying to make a custom header as a subclass of PRHeaderWidget. > I'd like it to have a title and a subtitle so I made > subtitleDescription, defaults, and accessor inspired by the ones for > title in PRHeaderWidget. > > Changing the subtitle from the Settings command works, but not the > title. As far as I understand it, the PRComponent holds the state to > configure instances of the PRHeaderWidget. When changing its settings, > it will update that state, unless it has fields with the same name. > In this case, #title from PRComponent is masking the one in > PRHeaderWidget, so when I change the Title from the web, I'm changing > the structure instead of the seaside component configuration... is > this really wanted? shouldn't the Edit command modify the structure > and Settings the component settings? Or was the idea that Edits are > persisted but not Settings ? > > Dear Damien, from what I remember the title in the header widget is set to the name of the PRKernel which you are using. To rename this. I think that (PRKernel instanceNamed: 'pier') name: 'new name'. should do it. In the Pier-PersistencyManager package I provide a control panel UI for renaming and adding/removing kernels. I havent had a chance to fully get this working in Seaside 2.8, but if you are only using a non-magma persistency it should be ok. Keith From damien.pollet at gmail.com Tue Aug 7 01:54:30 2007 From: damien.pollet at gmail.com (Damien Pollet) Date: Tue, 7 Aug 2007 01:54:30 +0200 Subject: Changing the title of the Header component ? In-Reply-To: <46B7A46D.1070502@yahoo.co.uk> References: <34b4844b0708061458l519519abh7b5052b06ae0e21e@mail.gmail.com> <46B7A46D.1070502@yahoo.co.uk> Message-ID: <34b4844b0708061654t2638df8fxaa36f1080b03266a@mail.gmail.com> On 07/08/07, Keith Hodges wrote: > from what I remember the title in the header widget is set to the name > of the PRKernel which you are using. Yes, the default value for the header title is %k, which gets expanded to the kernel name. You can have the root or current page title also, see PRMacroExpander. So the PRComponent gets %k as a default title and you can change it from the web with both Edit and Settings commands. The problem is that the new title is stored in the PRComponent, not the PRHeaderWidget, and the latter doesn't have access to the new value so it always uses its default. -- Damien Pollet type less, do more [ | ] http://typo.cdlm.fasmz.org From damien.pollet at gmail.com Tue Aug 7 02:18:49 2007 From: damien.pollet at gmail.com (Damien Pollet) Date: Tue, 7 Aug 2007 02:18:49 +0200 Subject: Small changes to the URL updating Message-ID: <34b4844b0708061718h46336106x2299a3d765fad34c@mail.gmail.com> Hi, I committed Pier-Model-cdlm.159 and Pier-Seaside-cdlm.186. I tweaked #updateUrl: to not add the view and command parameters if the values are the default ones that would be guessed by PRPiermain>>commandFrom: Hopefully the patch makes sense, please review :) -- Damien Pollet type less, do more [ | ] http://typo.cdlm.fasmz.org From cappadonza at hotmail.com Thu Aug 9 14:10:35 2007 From: cappadonza at hotmail.com (isaiah) Date: Thu, 9 Aug 2007 05:10:35 -0700 (PDT) Subject: help with Magritte tutorial Message-ID: <12071267.post@talk.nabble.com> hey i working through the magritte tutorial excercises. need ome help with exercise 18. it says "Add a class-instance variable to the MAPersonModel called CustomDescription. initialize it with an emptyinstance of maContainer". i did the following to add a class-instance variable MAPersonModel class instanceVariableNames: 'CustomDescription' how do i initialize this variable if i override the initialize method on the class i get the follwoing warning from system browser "initialize is used in the existing class system, overriding can cause serious problem is this really what you want to do ?" am i doing something wrong, can some one help me ? im not sure what the difference between class variable and class-instance variable -- View this message in context: http://www.nabble.com/help-with-Magritte-tutorial-tf4242237.html#a12071267 Sent from the SmallWiki mailing list archive at Nabble.com. From renggli at iam.unibe.ch Thu Aug 9 15:15:11 2007 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Thu, 9 Aug 2007 15:15:11 +0200 Subject: help with Magritte tutorial In-Reply-To: <12071267.post@talk.nabble.com> References: <12071267.post@talk.nabble.com> Message-ID: > i get the follwoing warning from system browser "initialize is used > in the > existing class system, overriding can cause serious problem is this > really > what you want to do ?" I don't know why Squeak is complaining here. You can safely ignore this warning. > am i doing something wrong, can some one help me ? No, everything correct. > im not sure what the difference between class variable and class- > instance > variable From the Smalltalk FAQ [1]: Class instance variables are similar to class variables, except that they are created for eachsubclass of the defining class. When a class declares a class instance variable, a new variable is created for each subclass of that class. Each subclass then has its own instance of the variable and retains its own value for the variable, but each subclass has a variable with the same name. Only class methods of a class and its subclasses can refer to class instance variables; instance methods cannot. Cheers, Lukas [1] http://www.faqs.org/faqs/smalltalk-faq/ -- Lukas Renggli http://www.lukas-renggli.ch From renggli at iam.unibe.ch Thu Aug 9 15:27:03 2007 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Thu, 9 Aug 2007 15:27:03 +0200 Subject: Small changes to the URL updating In-Reply-To: <34b4844b0708061718h46336106x2299a3d765fad34c@mail.gmail.com> References: <34b4844b0708061718h46336106x2299a3d765fad34c@mail.gmail.com> Message-ID: <95439713-1C47-4853-AE2F-C8D728F1362F@iam.unibe.ch> > I committed Pier-Model-cdlm.159 and Pier-Seaside-cdlm.186. > I tweaked #updateUrl: to not add the view and command parameters if > the values are the default ones that would be guessed by > PRPiermain>>commandFrom: > > Hopefully the patch makes sense, please review :) It looks great. Thanks for the contribution. Cheers, Lukas -- Lukas Renggli http://www.lukas-renggli.ch From renggli at iam.unibe.ch Thu Aug 9 15:37:24 2007 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Thu, 9 Aug 2007 15:37:24 +0200 Subject: Changing the title of the Header component ? In-Reply-To: <34b4844b0708061654t2638df8fxaa36f1080b03266a@mail.gmail.com> References: <34b4844b0708061458l519519abh7b5052b06ae0e21e@mail.gmail.com> <46B7A46D.1070502@yahoo.co.uk> <34b4844b0708061654t2638df8fxaa36f1080b03266a@mail.gmail.com> Message-ID: <08EF9C40-F053-430A-B6B5-0258F385B5D7@iam.unibe.ch> Now I understand this problem. This was caused by a conflict caused by the merging of meta-descriptions. I changed #title to #heading in my latest commit. Thanks for reporting. Lukas On 7 Aug 2007, at 01:54, Damien Pollet wrote: > On 07/08/07, Keith Hodges wrote: >> from what I remember the title in the header widget is set to the >> name >> of the PRKernel which you are using. > > Yes, the default value for the header title is %k, which gets expanded > to the kernel name. You can have the root or current page title also, > see PRMacroExpander. > > So the PRComponent gets %k as a default title and you can change it > from the web with both Edit and Settings commands. The problem is that > the new title is stored in the PRComponent, not the PRHeaderWidget, > and the latter doesn't have access to the new value so it always uses > its default. > > > -- > Damien Pollet > type less, do more [ | ] http://typo.cdlm.fasmz.org > > _______________________________________________ > SmallWiki, Magritte, Pier and Related Tools ... > https://www.iam.unibe.ch/mailman/listinfo/smallwiki -- Lukas Renggli http://www.lukas-renggli.ch From norbert at hartl.name Thu Aug 9 16:32:50 2007 From: norbert at hartl.name (Norbert Hartl) Date: Thu, 09 Aug 2007 16:32:50 +0200 Subject: validate on ElementComponent Message-ID: <1186669970.12249.7.camel@localhost> Hi, isn't validate supposed to be called on componentClasses? I have a component generated from asComponent. I added a componentClass to one of the descriptions. If I call component validate I would have expected that the validate of my componentClass is also called. Do I misunderstand something or is it likely I did something wrong? thanks, Norbert From cappadonza at hotmail.com Thu Aug 9 18:56:45 2007 From: cappadonza at hotmail.com (isaiah) Date: Thu, 9 Aug 2007 09:56:45 -0700 (PDT) Subject: help with Magritte tutorial In-Reply-To: References: <12071267.post@talk.nabble.com> Message-ID: <12076297.post@talk.nabble.com> cool thanks lukas exercise 18 also ays "Override #description on the instance-side, call super and compose it with the CustomDescription." what does this mean how do i compose it Lukas Renggli-2 wrote: > >> i get the follwoing warning from system browser "initialize is used >> in the >> existing class system, overriding can cause serious problem is this >> really >> what you want to do ?" > > I don't know why Squeak is complaining here. You can safely ignore > this warning. > >> am i doing something wrong, can some one help me ? > > No, everything correct. > >> im not sure what the difference between class variable and class- >> instance >> variable > > From the Smalltalk FAQ [1]: Class instance variables are similar to > class variables, except that they are created for eachsubclass of the > defining class. When a class declares a class instance variable, a > new variable is created for each subclass of that class. Each > subclass then has its own instance of the variable and retains its > own value for the variable, but each subclass has a variable with the > same name. Only class methods of a class and its subclasses can refer > to class instance variables; instance methods cannot. > > Cheers, > Lukas > > [1] http://www.faqs.org/faqs/smalltalk-faq/ > > -- > Lukas Renggli > http://www.lukas-renggli.ch > > > _______________________________________________ > SmallWiki, Magritte, Pier and Related Tools ... > https://www.iam.unibe.ch/mailman/listinfo/smallwiki > > -- View this message in context: http://www.nabble.com/help-with-Magritte-tutorial-tf4242237.html#a12076297 Sent from the SmallWiki mailing list archive at Nabble.com. From damien.cassou at gmail.com Thu Aug 9 20:53:55 2007 From: damien.cassou at gmail.com (Damien Cassou) Date: Thu, 9 Aug 2007 20:53:55 +0200 Subject: help with Magritte tutorial In-Reply-To: <12076297.post@talk.nabble.com> References: <12071267.post@talk.nabble.com> <12076297.post@talk.nabble.com> Message-ID: <6ac749c10708091153q258af333t92193a271a9ac188@mail.gmail.com> 2007/8/9, isaiah : > > cool thanks lukas > exercise 18 also ays "Override #description on the instance-side, call super > and > compose it with the CustomDescription." what does this mean how do i compose > it I guess it means something like: MyObject>>description ^ super description copy add: self customDescription; yourself I'm not sure, but I think #copy is important after the call to super. -- Damien Cassou From ramon.leon at allresnet.com Thu Aug 9 20:59:00 2007 From: ramon.leon at allresnet.com (Ramon Leon) Date: Thu, 9 Aug 2007 11:59:00 -0700 Subject: help with Magritte tutorial In-Reply-To: References: <12071267.post@talk.nabble.com> Message-ID: <011c01c7dab7$588303c0$f000a8c0@hq.allresnet.com> > From the Smalltalk FAQ [1]: Class instance variables are > similar to class variables, except that they are created for > eachsubclass of the defining class. When a class declares a > class instance variable, a new variable is created for each > subclass of that class. Each subclass then has its own > instance of the variable and retains its own value for the > variable, but each subclass has a variable with the same > name. Only class methods of a class and its subclasses can > refer to class instance variables; instance methods cannot. > > Cheers, > Lukas Or to put it simply, classes are objects too, and all objects have instance variables. Ramon Leon http://onsmalltalk.com From keith_hodges at yahoo.co.uk Fri Aug 10 05:56:11 2007 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Fri, 10 Aug 2007 04:56:11 +0100 Subject: Customizing magritte/pier Message-ID: <46BBE1DB.90407@yahoo.co.uk> I am looking for some tips/info on how to customize the look of magritte/pier components. My first excursion found this quite difficult. Since it appears that textInput's always have class='text'. I solved this by wrapping them in a div class='agent-code' in a custom component and using the following to effect the styling. .contents form .agent-code input.text { width : auto; } What would be the correct way to change the pier login buttons to 'Login' 'Cancel' rather than 'Save' 'Cancel'. Do I subclass PULogin, and change its asComponent to take the std component and search for its FormDecoration for the button label in order to change it? many thanks in advance Keith From renggli at iam.unibe.ch Fri Aug 10 08:32:54 2007 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Fri, 10 Aug 2007 08:32:54 +0200 Subject: Customizing magritte/pier In-Reply-To: <46BBE1DB.90407@yahoo.co.uk> References: <46BBE1DB.90407@yahoo.co.uk> Message-ID: <2FD65884-A4DA-4E77-ACA5-9D41195BCE93@iam.unibe.ch> > My first excursion found this quite difficult. Since it appears > that textInput's always have class='text'. This is a Seaside feature coming from the fact that IE doesn't support CSS selectors like input[type=text]. > What would be the correct way to change the pier login buttons to > 'Login' 'Cancel' rather than 'Save' 'Cancel'. Do I subclass > PULogin, and > change its asComponent to take the std component and search for its > FormDecoration for the button label in order to change it? I guess that's the easiest way to do, yes. Relabeling with CSS could also work, but again IE will fail to do properly. Note that Pier also puts a class into the body representing the current structure. It does not do so for different commands/views though, so maybe we should add that? Lukas -- Lukas Renggli http://www.lukas-renggli.ch From cappadonza at hotmail.com Fri Aug 10 11:09:18 2007 From: cappadonza at hotmail.com (i p) Date: Fri, 10 Aug 2007 09:09:18 +0000 Subject: help with Magritte tutorial Message-ID: thanks guys the folowing worked. i realised i had to use addAll not add MyObject>>description ^ super description copy addAll: self customDescription; yourself> Date: Thu, 9 Aug 2007 20:53:55 +0200> From: damien.cassou at gmail.com> To: smallwiki at iam.unibe.ch> Subject: Re: help with Magritte tutorial> > 2007/8/9, isaiah :> >> > cool thanks lukas> > exercise 18 also ays "Override #description on the instance-side, call super> > and> > compose it with the CustomDescription." what does this mean how do i compose> > it> > I guess it means something like:> > MyObject>>description> ^ super description copy> add: self customDescription;> yourself> > I'm not sure, but I think #copy is important after the call to super.> > -- > Damien Cassou> > _______________________________________________> SmallWiki, Magritte, Pier and Related Tools ...> https://www.iam.unibe.ch/mailman/listinfo/smallwiki _________________________________________________________________ Explore the seven wonders of the world http://search.msn.com/results.aspx?q=7+wonders+world&mkt=en-US&form=QBRE -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.iam.unibe.ch/pipermail/smallwiki/attachments/20070810/cf3d5fab/attachment-0001.html From keith_hodges at yahoo.co.uk Fri Aug 10 12:31:00 2007 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Fri, 10 Aug 2007 11:31:00 +0100 Subject: Customizing magritte/pier In-Reply-To: <2FD65884-A4DA-4E77-ACA5-9D41195BCE93@iam.unibe.ch> References: <46BBE1DB.90407@yahoo.co.uk> <2FD65884-A4DA-4E77-ACA5-9D41195BCE93@iam.unibe.ch> Message-ID: <46BC3E64.4010106@yahoo.co.uk> >> What would be the correct way to change the pier login buttons to >> 'Login' 'Cancel' rather than 'Save' 'Cancel'. Do I subclass >> PULogin, and >> change its asComponent to take the std component and search for its >> FormDecoration for the button label in order to change it? >> > > I guess that's the easiest way to do, yes. Ok - it's not pretty, but for the record: MyLoginSubclass-asComponent | component | component := super asComponent. component allDecorationsDo: [ :dec | dec class = MAFormDecoration ifTrue: [ dec buttons first value: 'Login' ]]. ^ component > Relabeling with CSS could > also work, but again IE will fail to do properly. > I am afraid IE is main customer in this case. > Note that Pier also puts a class into the body representing the > current structure. It does not do so for different commands/views > though, so maybe we should add that? > Good idea I think Keith From keith_hodges at yahoo.co.uk Fri Aug 10 16:23:13 2007 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Fri, 10 Aug 2007 15:23:13 +0100 Subject: Users Message-ID: <46BC74D1.4050906@yahoo.co.uk> Hello, I have 13000+ users validation records in a database, so I thought I would be clever. I define a pier user, role-dbuser, and use this as a template for creating a "User whose validation is certified by the database" on the fly. Since it is created on the fly and is not known by PRKernel-users, nor is the User-Groups relation maintained, so the groups are only aware of the template user 'role-dbuser'. This works fine until the check on groups permissions in PUSecurity-validateCommand: which reads; (self group notNil and: [ (self group includes: aCommand context user) So I turned it around to read the following, and implemented PUUser includesGroup: (self group notNil and: [ (aCommand context user includesGroup: self group) I thought that you might consider this tweak useful. best regards Keith From keith_hodges at yahoo.co.uk Fri Aug 10 18:00:48 2007 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Fri, 10 Aug 2007 17:00:48 +0100 Subject: Users In-Reply-To: <46BC74D1.4050906@yahoo.co.uk> References: <46BC74D1.4050906@yahoo.co.uk> Message-ID: <46BC8BB0.2030509@yahoo.co.uk> > I thought that you might consider this tweak useful. > > best regards > > Keith > > Just to say that there is more code to change to get this idea working, I just wondered if anyone had any thoughts on the idea in principle. Keith From renggli at iam.unibe.ch Fri Aug 10 18:42:00 2007 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Fri, 10 Aug 2007 18:42:00 +0200 Subject: Users In-Reply-To: <46BC74D1.4050906@yahoo.co.uk> References: <46BC74D1.4050906@yahoo.co.uk> Message-ID: <71A64B96-990D-41F9-9F52-A8389FAFDCA6@iam.unibe.ch> > I have 13000+ users validation records in a database, so I thought I > would be clever. I define a pier user, role-dbuser, and use this as a > template for creating a "User whose validation is certified by the > database" on the fly. That sounds like an exciting project ;-) Seems to be something essential to do authentication trough LDAP or an external for example. > Since it is created on the fly and is not known by PRKernel-users, nor > is the User-Groups relation maintained, so the groups are only > aware of > the template user 'role-dbuser'. What about creating a special group subclass? It could then override #includes: to check for the external user. > So I turned it around to read the following, and implemented PUUser > includesGroup: > > (self group notNil > and: [ (aCommand context user includesGroup: self group) aCommand context user could be nil. Cheers, Lukas -- Lukas Renggli http://www.lukas-renggli.ch From keith_hodges at yahoo.co.uk Sat Aug 11 01:32:03 2007 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Sat, 11 Aug 2007 00:32:03 +0100 Subject: Users In-Reply-To: <71A64B96-990D-41F9-9F52-A8389FAFDCA6@iam.unibe.ch> References: <46BC74D1.4050906@yahoo.co.uk> <71A64B96-990D-41F9-9F52-A8389FAFDCA6@iam.unibe.ch> Message-ID: <46BCF573.2010906@yahoo.co.uk> > aCommand context user could be nil. > > Cheers, > Lukas > > Yes good point, everything worked until I hit the logout button! Keith From keith_hodges at yahoo.co.uk Sat Aug 11 01:37:16 2007 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Sat, 11 Aug 2007 00:37:16 +0100 Subject: Users In-Reply-To: <71A64B96-990D-41F9-9F52-A8389FAFDCA6@iam.unibe.ch> References: <46BC74D1.4050906@yahoo.co.uk> <71A64B96-990D-41F9-9F52-A8389FAFDCA6@iam.unibe.ch> Message-ID: <46BCF6AC.2020408@yahoo.co.uk> Following your suggestion the simplest fix to make this work: PUGroup-includes: anUser anUser ifNil: [ ^ false ]. ^ anUser groups includes: self regards Keith From thams at thams.com Sat Aug 11 01:53:32 2007 From: thams at thams.com (Kurt Thams) Date: Fri, 10 Aug 2007 16:53:32 -0700 Subject: CSS style on Magritte generated component Message-ID: <00e701c7dba9$a8a01d50$cd01a8c0@ararauna> I have a seaside call like this: result := self call: (SurveyResponse new asComponent addValidatedForm; yourself). I can't figure out how to get the css to be applied to this component. (Having SurveryReponse implement #style doesn't do it, nor does having it defined in the class making the call do it). From renggli at iam.unibe.ch Sat Aug 11 08:35:54 2007 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Sat, 11 Aug 2007 08:35:54 +0200 Subject: Customizing magritte/pier In-Reply-To: <46BC3E64.4010106@yahoo.co.uk> References: <46BBE1DB.90407@yahoo.co.uk> <2FD65884-A4DA-4E77-ACA5-9D41195BCE93@iam.unibe.ch> <46BC3E64.4010106@yahoo.co.uk> Message-ID: <05312543-E0E8-4256-BCFF-3216FDDB04C4@iam.unibe.ch> >> Note that Pier also puts a class into the body representing the >> current structure. It does not do so for different commands/views >> though, so maybe we should add that? > > Good idea I think Name: Pier-All-lr.224 Author: lr Time: 11 August 2007, 8:33:38 am UUID: 5779ace6-07cf-499f-84b8-c8c06d78cf03 Ancestors: Pier-All-lr.223 Dependencies: Pier-Model-cdlm.159, Pier-Tests-lr.72, Pier-Seaside-lr. 188, Pier-Security-lr.85, Pier-Blog-lr.57 - not only add the type of the structure, but also the command and view as css classes to the body-tag Lukas -- Lukas Renggli http://www.lukas-renggli.ch From renggli at iam.unibe.ch Sat Aug 11 08:39:36 2007 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Sat, 11 Aug 2007 08:39:36 +0200 Subject: CSS style on Magritte generated component In-Reply-To: <00e701c7dba9$a8a01d50$cd01a8c0@ararauna> References: <00e701c7dba9$a8a01d50$cd01a8c0@ararauna> Message-ID: <531E5EC8-BF2C-4D20-A04A-E014429AED7B@iam.unibe.ch> > I have a seaside call like this: > > result := self call: (SurveyResponse new asComponent addValidatedForm; > yourself). > > I can't figure out how to get the css to be applied to this component. > (Having SurveryReponse implement #style doesn't do it, nor does > having it > defined in the class making the call do it). I guess SurveyResponse is a model class, right? #style has to be implemented in a subclass of WAComponent. Since you cannot modify the component you get from Magritte (of course you can, but that would probably be overkill in your case) it is the simples if you put #style into the WAComponent/WATask you call it from. Another possibility would be to use WAFileLibrary. Check out the class comment. Cheers, Lukas -- Lukas Renggli http://www.lukas-renggli.ch From keith_hodges at yahoo.co.uk Sat Aug 11 21:37:37 2007 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Sat, 11 Aug 2007 20:37:37 +0100 Subject: PULogin command to show 'Login' button In-Reply-To: <46BCF6AC.2020408@yahoo.co.uk> References: <46BC74D1.4050906@yahoo.co.uk> <71A64B96-990D-41F9-9F52-A8389FAFDCA6@iam.unibe.ch> <46BCF6AC.2020408@yahoo.co.uk> Message-ID: <46BE1001.30402@yahoo.co.uk> The cleanest approach I have found to achieve this is: PULogin-asComponent ^ (self description asComponentOn: self) addValidatedForm: (Array with: #save -> 'Login' with: #cancel); yourself It might be worth including this in Pier, since users have often commented to me about it regards Keith From keith_hodges at yahoo.co.uk Sat Aug 11 21:48:53 2007 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Sat, 11 Aug 2007 20:48:53 +0100 Subject: Magritte-ComponentDecoration s Message-ID: <46BE12A5.2070801@yahoo.co.uk> I just committed this to http://mc.lukas-renggli.ch/pieraddons Magritte-ComponentDecorations-kph.1.mcz (note it has a pier extension in it too) This package allows a magritte description to specify decorationClasses: These are added at component creation time and they pick up their parameters from the description's properties (unless I can think of a better way). example: WSLogin-descriptionUsername ^ (super descriptionUsername) decorationClasses: (Array with: MAAnnotationDecoration ) ; propertyAt: #postAnnotation put: '(6-12 letters)'; yourself pier wiki text annotation WSLogin-descriptionUsername ^ (super descriptionUsername) decorationClasses: (Array with: PRAnnotationDecoration ) ; propertyAt: #postAnnotation put: 'or *Register>/Environment/RegistrationComponent*'; yourself best regards Keith From renggli at iam.unibe.ch Sat Aug 11 22:02:38 2007 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Sat, 11 Aug 2007 22:02:38 +0200 Subject: PULogin command to show 'Login' button In-Reply-To: <46BE1001.30402@yahoo.co.uk> References: <46BC74D1.4050906@yahoo.co.uk> <71A64B96-990D-41F9-9F52-A8389FAFDCA6@iam.unibe.ch> <46BCF6AC.2020408@yahoo.co.uk> <46BE1001.30402@yahoo.co.uk> Message-ID: Very good idea. Fixed in: Name: Pier-All-lr.225 Author: lr Time: 11 August 2007, 10:01:33 pm UUID: 2c90b9ce-6ed0-4587-9495-0e550263c1ce Ancestors: Pier-All-lr.224 Dependencies: Pier-Model-lr.160, Pier-Tests-lr.72, Pier-Seaside-lr. 189, Pier-Security-lr.86, Pier-Blog-lr.57 - display proper action lables (add, copy, move, apply, login) in commands, instead of the default save On 11 Aug 2007, at 21:37, Keith Hodges wrote: > The cleanest approach I have found to achieve this is: > > PULogin-asComponent > ^ (self description asComponentOn: self) > addValidatedForm: (Array with: #save -> 'Login' with: > #cancel); > yourself > > It might be worth including this in Pier, since users have often > commented to me about it > > regards > > Keith > > _______________________________________________ > SmallWiki, Magritte, Pier and Related Tools ... > https://www.iam.unibe.ch/mailman/listinfo/smallwiki -- Lukas Renggli http://www.lukas-renggli.ch From keith_hodges at yahoo.co.uk Sat Aug 11 22:11:15 2007 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Sat, 11 Aug 2007 21:11:15 +0100 Subject: PULogin command to show 'Login' button In-Reply-To: References: <46BC74D1.4050906@yahoo.co.uk> <71A64B96-990D-41F9-9F52-A8389FAFDCA6@iam.unibe.ch> <46BCF6AC.2020408@yahoo.co.uk> <46BE1001.30402@yahoo.co.uk> Message-ID: <46BE17E3.4000802@yahoo.co.uk> Lukas Renggli wrote: > Very good idea. Fixed in: > > Name: Pier-All-lr.225 > Thats what I call a fast turn around! Keith From keith_hodges at yahoo.co.uk Sat Aug 11 23:13:00 2007 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Sat, 11 Aug 2007 22:13:00 +0100 Subject: [Bug] Subscripts at beginning of line? Message-ID: <46BE265C.1000204@yahoo.co.uk> If you put @@tiny writing@@ at the beginning of a line, it thinks that you are defining an anchor. cheers Keith From keith_hodges at yahoo.co.uk Sun Aug 12 04:30:54 2007 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Sun, 12 Aug 2007 03:30:54 +0100 Subject: Customizing magritte/pier In-Reply-To: <46BBE1DB.90407@yahoo.co.uk> References: <46BBE1DB.90407@yahoo.co.uk> Message-ID: <46BE70DE.7060309@yahoo.co.uk> > My first excursion found this quite difficult. Since it appears that > textInput's always have class='text'. I solved this by wrapping them in > a div class='agent-code' in a custom component and using the following > to effect the styling. > > .contents form .agent-code input.text { > width : auto; > } > > I was finding it tricky to target specific input.text elements within a custom subclass of MATextInputComponent. how about this change? MAComponentRenderer-classFor: aDescription ^ String streamContents: [ :stream | "" stream nextPutAll: ((self childAt: aDescription) ifNil: [ component ]) cssClass. "" aDescription isReadonly ifTrue: [ stream space; nextPutAll: 'readonly' ]. aDescription isRequired ifTrue: [ stream space; nextPutAll: 'required' ]. (self hasError: aDescription) ifTrue: [ stream space; nextPutAll: 'error' ] ] together with MAComponent-cssClass "Answer a CSS class that should be used when this component is rendered." ^ ((self class fullName readStream) next:2; upToAll: 'Component') asLowercase best regards Keith From renggli at iam.unibe.ch Sun Aug 12 09:20:05 2007 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Sun, 12 Aug 2007 09:20:05 +0200 Subject: [Bug] Subscripts at beginning of line? In-Reply-To: <46BE265C.1000204@yahoo.co.uk> References: <46BE265C.1000204@yahoo.co.uk> Message-ID: <5C152AC9-A02B-4EED-BD99-4FF7319BD87C@iam.unibe.ch> > If you put > > @@tiny writing@@ at the beginning of a line, it thinks that you are > defining an anchor. That's like it is for all overlapping token. As a workaround you can put a space in front, like: @@tiny writing@@ Alternatively, if you don't use anchors you can also remove the anchor handler from the parser. Lukas -- Lukas Renggli http://www.lukas-renggli.ch From keith_hodges at yahoo.co.uk Tue Aug 14 17:55:00 2007 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Tue, 14 Aug 2007 16:55:00 +0100 Subject: [bug/fix] PRContext-copy Message-ID: <46C1D054.8070306@yahoo.co.uk> I discovered that the referential integrity of PRContext <-> PRCommand gets broken when you assign a user to the context because #user: does a copy, but the instance of PRCommand's context is still the pre-copy one. This is fixed by -- PRContext-postCopy self setCommand: command copy. -- cheers Keith From rbb at techgame.net Tue Aug 14 18:23:43 2007 From: rbb at techgame.net (Brian Brown) Date: Tue, 14 Aug 2007 10:23:43 -0600 Subject: Question with ICal-Magritte Message-ID: <300506B2-9C05-46B8-8371-F41C448BADD2@techgame.net> I've started using the really excellent ICal package (thanks Phillipe!), and just loaded the ICal Magritte package. On ICCalendarEntry class>>descriptionUrl, the definition is: descriptionUrl ^(NAUrlDescription selector: #url label: 'Link' priority: 1000) beEditable; yourself NAUrlDescription is not defined anywhere - I would expect it to be named MAUrlDescription, but that isn't defined in my image either ;) Any ideas where I can get this class, or what else should be in here? Thanks! Brian From cnantais at gmail.com Tue Aug 14 19:19:17 2007 From: cnantais at gmail.com (Chad Nantais) Date: Tue, 14 Aug 2007 10:19:17 -0700 Subject: Wizard-type form sequences Message-ID: <3de931600708141019w5150531bo153597ac60b70bd3@mail.gmail.com> I can't seem to find anything in the mailing list archives about this, so here goes... Is there a way to present forms as a sequence of input requests with a 'Next' submit button rather than the default 'Save' and 'Cancel'? Thanks, Chad -- Chad Nantais http://myspace.com/chadnantais From philippe.marschall at gmail.com Tue Aug 14 19:22:41 2007 From: philippe.marschall at gmail.com (Philippe Marschall) Date: Tue, 14 Aug 2007 19:22:41 +0200 Subject: Question with ICal-Magritte In-Reply-To: <300506B2-9C05-46B8-8371-F41C448BADD2@techgame.net> References: <300506B2-9C05-46B8-8371-F41C448BADD2@techgame.net> Message-ID: <66666f210708141022g31f01d61u2dc72ac4a4ef4b7b@mail.gmail.com> 2007/8/14, Brian Brown : > I've started using the really excellent ICal package (thanks > Phillipe!), and just loaded the ICal Magritte package. > > On ICCalendarEntry class>>descriptionUrl, the definition is: > > descriptionUrl > ^(NAUrlDescription selector: #url label: 'Link' priority: 1000) > beEditable; > yourself > > > NAUrlDescription is not defined anywhere - I would expect it to be > named MAUrlDescription, but that isn't defined in my image either ;) You need the NetworkAddress package from: http://source.lukas-renggli.ch/magritteaddons.html I haven't looked at it in a while so stuff might be broken. There are however some tests which you can check out. Cheers Philippe > Any ideas where I can get this class, or what else should be in here? > > Thanks! > > Brian > > > _______________________________________________ > SmallWiki, Magritte, Pier and Related Tools ... > https://www.iam.unibe.ch/mailman/listinfo/smallwiki > From j.squeak at cyberhaus.us Tue Aug 14 23:11:13 2007 From: j.squeak at cyberhaus.us (Jimmie Houchin) Date: Tue, 14 Aug 2007 16:11:13 -0500 Subject: Pier v. Plone Message-ID: <46C21A71.9020204@cyberhaus.us> Hello, I am exploring my options for a couple of websites. I am a big fan of Squeak, Seaside and Pier. But I have been exploring and learning about Plone. There is a tremendous amount of energy and work behind Plone and products available for it. Plone 3.0 is about to be released. They have put a lot of work into UI usability and into a lot of areas which are nice to not necessarily implement yourself. That said, I don't really have a grasp as to how far Pier is from Plone-like abilities for both the end user and the developer. One thing I am looking at is the Plone4Artist product which implements a very sweet package for multimedia and Plone. http://www.plone4artists.com/ I do very much like Squeak over Python. In general I like Seaside/Pier over Zope/Plone. I know that Lukas has used Zope/Plone, but I don't know how current his knowledge is. How far is Pier from offering a competitive experience to end users and developers with regard to something like Plone? Is there any interest in the community of competing in that sphere? Or do most here happily use Seaside/Pier as a toolbox and the bigger application type CMS isn't on the radar? And initially I speak as to a basic Plone 3.0 out-of-the-box capabilities and user/developer experience. Not necessarily the plethora of add-on products. Those can come later if the out-of-the-box experience is compelling enough. Naively it seems that content types are easier to develop in Pier as opposed to Plone. I just don't know how much I could build on Pier towards a Plone-like experience in the time it takes to do some things in Plone. And I really don't know how much of the machinery that makes Plone what it is, is in Pier. Or the effort to get there. Comments regarding my questions above or most anything relevant to Pier v. Plone 3.0 are greatly appreciated. Thanks. Jimmie From renggli at iam.unibe.ch Tue Aug 14 23:54:05 2007 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Tue, 14 Aug 2007 23:54:05 +0200 Subject: [bug/fix] PRContext-copy In-Reply-To: <46C1D054.8070306@yahoo.co.uk> References: <46C1D054.8070306@yahoo.co.uk> Message-ID: > I discovered that the referential integrity of PRContext <-> PRCommand > gets broken when you assign a user to the context because #user: > does a > copy, but the instance of PRCommand's context is still the pre-copy > one. Nice catch. Thanks for reporting. This is tested and fixed in: Name: Pier-All-lr.226 Author: lr Time: 14 August 2007, 11:53:01 pm UUID: a1d051f0-d8f0-4ecb-a8b7-3ee3584a13a3 Ancestors: Pier-All-lr.225 Dependencies: Pier-Model-lr.161, Pier-Tests-lr.73, Pier-Seaside-lr. 189, Pier-Security-lr.86, Pier-Blog-lr.57 fixes and tests "I discovered that the referential integrity of PRContext <-> PRCommand gets broken when you assign a user to the context because #user: does a copy, but the instance of PRCommand's context is still the pre-copy one." (Keith Hodges) -- Lukas Renggli http://www.lukas-renggli.ch From renggli at iam.unibe.ch Tue Aug 14 23:57:28 2007 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Tue, 14 Aug 2007 23:57:28 +0200 Subject: Wizard-type form sequences In-Reply-To: <3de931600708141019w5150531bo153597ac60b70bd3@mail.gmail.com> References: <3de931600708141019w5150531bo153597ac60b70bd3@mail.gmail.com> Message-ID: > I can't seem to find anything in the mailing list archives about > this, so here goes... > > Is there a way to present forms as a sequence of input requests > with a 'Next' submit button rather than the default 'Save' and > 'Cancel'? Use #addValidatedForm: to customize the buttons around your form. self call: (aModel asComponent addValidatedForm: (Array with: #save -> 'Next'); yourself). self call: (aModel ... Cheers, Lukas -- Lukas Renggli http://www.lukas-renggli.ch From rbb at techgame.net Wed Aug 15 00:08:48 2007 From: rbb at techgame.net (Brian Brown) Date: Tue, 14 Aug 2007 16:08:48 -0600 Subject: Question with ICal-Magritte In-Reply-To: <66666f210708141022g31f01d61u2dc72ac4a4ef4b7b@mail.gmail.com> References: <300506B2-9C05-46B8-8371-F41C448BADD2@techgame.net> <66666f210708141022g31f01d61u2dc72ac4a4ef4b7b@mail.gmail.com> Message-ID: Thank you, so far it works fine :) On Aug 14, 2007, at 11:22 AM, Philippe Marschall wrote: > 2007/8/14, Brian Brown : >> I've started using the really excellent ICal package (thanks >> Phillipe!), and just loaded the ICal Magritte package. >> >> On ICCalendarEntry class>>descriptionUrl, the definition is: >> >> descriptionUrl >> ^(NAUrlDescription selector: #url label: 'Link' priority: >> 1000) >> beEditable; >> yourself >> >> >> NAUrlDescription is not defined anywhere - I would expect it to be >> named MAUrlDescription, but that isn't defined in my image either ;) > > You need the NetworkAddress package from: > http://source.lukas-renggli.ch/magritteaddons.html > I haven't looked at it in a while so stuff might be broken. There are > however some tests which you can check out. > > Cheers > Philippe > >> Any ideas where I can get this class, or what else should be in here? >> >> Thanks! >> >> Brian >> >> >> _______________________________________________ >> SmallWiki, Magritte, Pier and Related Tools ... >> https://www.iam.unibe.ch/mailman/listinfo/smallwiki >> > > _______________________________________________ > SmallWiki, Magritte, Pier and Related Tools ... > https://www.iam.unibe.ch/mailman/listinfo/smallwiki From renggli at iam.unibe.ch Wed Aug 15 00:13:49 2007 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Wed, 15 Aug 2007 00:13:49 +0200 Subject: Pier v. Plone In-Reply-To: <46C21A71.9020204@cyberhaus.us> References: <46C21A71.9020204@cyberhaus.us> Message-ID: <1AFDAFB5-43E5-40D6-B807-6DA0AAC6F03C@iam.unibe.ch> > I know that Lukas has used Zope/Plone, but I don't know how current > his > knowledge is. My knowledge of Zope and Plone dates back to 2002. I maintained some legacy Zope projects in 2003, but as I discovered Smalltalk and Seaside around the same time I never went back to Python again. > How far is Pier from offering a competitive experience to end users > and > developers with regard to something like Plone? I have no idea in what state Zope/Plone is today. Maybe I should give another try ... > Is there any interest in the community of competing in that sphere? I am interested, but I can't compete against hundreds of companies and thousands of developers all alone. > Or do most here happily use Seaside/Pier as a toolbox and the bigger > application type CMS isn't on the radar? I am using Seaside/Pier for all my web related projects. > And initially I speak as to a basic Plone 3.0 out-of-the-box > capabilities and user/developer experience. Not necessarily the > plethora > of add-on products. Those can come later if the out-of-the-box > experience is compelling enough. To make the out-of-the-box experience of Pier (especially for those not knowing Smalltalk and Seaside) quite some work is required. > Naively it seems that content types are easier to develop in Pier as > opposed to Plone. This is certainly the case, even if Zope/Plone improved a lot over the past 5 years. Lukas -- Lukas Renggli http://www.lukas-renggli.ch From admin at moedae.com Wed Aug 15 00:44:53 2007 From: admin at moedae.com (Taun) Date: Tue, 14 Aug 2007 18:44:53 -0400 Subject: Pier v. Plone In-Reply-To: <46C21A71.9020204@cyberhaus.us> References: <46C21A71.9020204@cyberhaus.us> Message-ID: <46C23065.9080702@moedae.com> Jimmie, I have been agonizing over the same choice for months. For now, I am sticking with Plone for my clients. I have worked with Smalltalk since the late 80's and Plone since it's inception on top of CMF for Zope. Plone Cons - Past performance - Historically, I have had major performance problems with Plone including memory leaks leading to repeated server restarts on an almost hourly basis under heavy loads. Performance has improved but I am still concerned for the site I am currently creating using Plone. Software Stack - This is my biggest complaint. The Plone stack is too dependent on C libraries and python modules and zope adapters. For example, connecting Plone to postresql requires a postgresql adapter which consists of a stack in C, python and Zope. Like most OpenSource, all the versions have to be compatible. Just the out of the box stack is python C virtual machine binary -> python libraries -> Zope -> CMF -> Plone -> Plone Standard Products. Addon products such as PIL (imaging library) add a 3 layer stack of C module, python module and Zope module. Development environment doesn't hold a candle to Seaside. Plone Pros - Very active community. Tons of interesting Products. Workflow and security model very easy to customise. Easy to add custom products with ArchGenXML and ArgoUML. Very Easy to add custom content types with ArchGenXML and ArgoUML. **Visual Tools like ArgoUML/ArchGenXML are what are really missing from Squeak. You use ArgoUML to create a UML class diagram for your product or content type. You then run ArchGenXML to create a Plone product from the class diagram. I am currently using this process to create a site with 8 custom content types with cross references and it is very easy. http://plone.org/documentation/tutorial/archgenxml-getting-started Squeak Cons - The flip side of all of the Plone Pros. Squeak Pros - I much prefer Smalltalk to Python. I prefer the Smalltalk environment to any Python IDE. I think people write better Smalltalk tools/objects than Python programs. I prefer the architecture and tools of Seaside to Plone. Much shorter stack - Smalltalk VM -> Smalltalk source -> Seaside -> Magritte -> Pier. Fewer C module dependencies for add-on products/objects. Personal Conclusion - Zope/Plone feels like a framework where you are locked into the frame. Smalltalk/Seaside feels like a great tool box to help you build whatever you want. Unfortunately, I would have to build Plone when that is about all I need. If one only needs the functionality provided by Zope, Seaside is the better choice for me. I would be more productive and have a better end product with Seaside versus Zope. I chose painful but functional Plone over Fun but less functional Pier based on the Plone Workflow model, ArchGenXML for products and many available 3rd party products. I really hope to be able to make a different choice in the future. Taun Jimmie Houchin wrote: > Hello, > > I am exploring my options for a couple of websites. I am a big fan of > Squeak, Seaside and Pier. But I have been exploring and learning about > Plone. > > There is a tremendous amount of energy and work behind Plone and > products available for it. Plone 3.0 is about to be released. They have > put a lot of work into UI usability and into a lot of areas which are > nice to not necessarily implement yourself. > > That said, I don't really have a grasp as to how far Pier is from > Plone-like abilities for both the end user and the developer. > > One thing I am looking at is the Plone4Artist product which implements a > very sweet package for multimedia and Plone. > http://www.plone4artists.com/ > > I do very much like Squeak over Python. > In general I like Seaside/Pier over Zope/Plone. > > I know that Lukas has used Zope/Plone, but I don't know how current his > knowledge is. > > How far is Pier from offering a competitive experience to end users and > developers with regard to something like Plone? > > Is there any interest in the community of competing in that sphere? > > Or do most here happily use Seaside/Pier as a toolbox and the bigger > application type CMS isn't on the radar? > > And initially I speak as to a basic Plone 3.0 out-of-the-box > capabilities and user/developer experience. Not necessarily the plethora > of add-on products. Those can come later if the out-of-the-box > experience is compelling enough. > > Naively it seems that content types are easier to develop in Pier as > opposed to Plone. > > I just don't know how much I could build on Pier towards a Plone-like > experience in the time it takes to do some things in Plone. And I really > don't know how much of the machinery that makes Plone what it is, is in > Pier. Or the effort to get there. > > Comments regarding my questions above or most anything relevant to Pier > v. Plone 3.0 are greatly appreciated. > > Thanks. > > Jimmie > > _______________________________________________ > SmallWiki, Magritte, Pier and Related Tools ... > https://www.iam.unibe.ch/mailman/listinfo/smallwiki From tblanchard at mac.com Wed Aug 15 04:40:19 2007 From: tblanchard at mac.com (Todd Blanchard) Date: Tue, 14 Aug 2007 19:40:19 -0700 Subject: Pier v. Plone In-Reply-To: <46C23065.9080702@moedae.com> References: <46C21A71.9020204@cyberhaus.us> <46C23065.9080702@moedae.com> Message-ID: <94EA985D-6DE0-4ACC-9F44-BB03C6C6E911@mac.com> FWIW, I'm using drupal for a musician's website I'm doing - just configure and tweak css - no coding necessary - tons of modules. On Aug 14, 2007, at 3:44 PM, Taun wrote: > Jimmie, I have been agonizing over the same choice for months. For > now, I am sticking with > Plone for my clients. > > I have worked with Smalltalk since the late 80's and Plone since > it's inception on top of > CMF for Zope. > > Plone Cons - > > Past performance - Historically, I have had major performance > problems with Plone > including memory leaks leading to repeated server restarts on an > almost hourly basis under > heavy loads. Performance has improved but I am still concerned for > the site I am currently > creating using Plone. > > Software Stack - This is my biggest complaint. The Plone stack > is too dependent on C > libraries and python modules and zope adapters. For example, > connecting Plone to postresql > requires a postgresql adapter which consists of a stack in C, > python and Zope. Like most > OpenSource, all the versions have to be compatible. Just the out of > the box stack is > python C virtual machine binary -> python libraries -> Zope -> CMF - > > Plone -> Plone > Standard Products. Addon products such as PIL (imaging library) add > a 3 layer stack of C > module, python module and Zope module. > > Development environment doesn't hold a candle to Seaside. > > Plone Pros - > > Very active community. > Tons of interesting Products. > Workflow and security model very easy to customise. > Easy to add custom products with ArchGenXML and ArgoUML. > Very Easy to add custom content types with ArchGenXML and ArgoUML. > **Visual Tools like ArgoUML/ArchGenXML are what are really > missing from Squeak. You use > ArgoUML to create a UML class diagram for your product or content > type. You then run > ArchGenXML to create a Plone product from the class diagram. I am > currently using this > process to create a site with 8 custom content types with cross > references and it is very > easy. > http://plone.org/documentation/tutorial/archgenxml-getting-started > > > Squeak Cons - > > The flip side of all of the Plone Pros. > > Squeak Pros - > > I much prefer Smalltalk to Python. > I prefer the Smalltalk environment to any Python IDE. > I think people write better Smalltalk tools/objects than Python > programs. > I prefer the architecture and tools of Seaside to Plone. > Much shorter stack - Smalltalk VM -> Smalltalk source -> Seaside > -> Magritte -> Pier. > Fewer C module dependencies for add-on products/objects. > > > Personal Conclusion - > > Zope/Plone feels like a framework where you are locked into the > frame. > Smalltalk/Seaside feels like a great tool box to help you build > whatever you want. > Unfortunately, I would have to build Plone when that is about all I > need. > > If one only needs the functionality provided by Zope, Seaside is > the better choice for > me. I would be more productive and have a better end product with > Seaside versus Zope. > > I chose painful but functional Plone over Fun but less > functional Pier based on the > Plone Workflow model, ArchGenXML for products and many available > 3rd party products. > > I really hope to be able to make a different choice in the future. > > > > > Taun > > > Jimmie Houchin wrote: >> Hello, >> >> I am exploring my options for a couple of websites. I am a big fan of >> Squeak, Seaside and Pier. But I have been exploring and learning >> about >> Plone. >> >> There is a tremendous amount of energy and work behind Plone and >> products available for it. Plone 3.0 is about to be released. They >> have >> put a lot of work into UI usability and into a lot of areas which are >> nice to not necessarily implement yourself. >> >> That said, I don't really have a grasp as to how far Pier is from >> Plone-like abilities for both the end user and the developer. >> >> One thing I am looking at is the Plone4Artist product which >> implements a >> very sweet package for multimedia and Plone. >> http://www.plone4artists.com/ >> >> I do very much like Squeak over Python. >> In general I like Seaside/Pier over Zope/Plone. >> >> I know that Lukas has used Zope/Plone, but I don't know how >> current his >> knowledge is. >> >> How far is Pier from offering a competitive experience to end >> users and >> developers with regard to something like Plone? >> >> Is there any interest in the community of competing in that sphere? >> >> Or do most here happily use Seaside/Pier as a toolbox and the bigger >> application type CMS isn't on the radar? >> >> And initially I speak as to a basic Plone 3.0 out-of-the-box >> capabilities and user/developer experience. Not necessarily the >> plethora >> of add-on products. Those can come later if the out-of-the-box >> experience is compelling enough. >> >> Naively it seems that content types are easier to develop in Pier as >> opposed to Plone. >> >> I just don't know how much I could build on Pier towards a Plone-like >> experience in the time it takes to do some things in Plone. And I >> really >> don't know how much of the machinery that makes Plone what it is, >> is in >> Pier. Or the effort to get there. >> >> Comments regarding my questions above or most anything relevant to >> Pier >> v. Plone 3.0 are greatly appreciated. >> >> Thanks. >> >> Jimmie >> >> _______________________________________________ >> SmallWiki, Magritte, Pier and Related Tools ... >> https://www.iam.unibe.ch/mailman/listinfo/smallwiki > > > _______________________________________________ > SmallWiki, Magritte, Pier and Related Tools ... > https://www.iam.unibe.ch/mailman/listinfo/smallwiki From franzl at fjkonrad.de Wed Aug 15 12:09:09 2007 From: franzl at fjkonrad.de (Franz Josef) Date: Wed, 15 Aug 2007 12:09:09 +0200 Subject: Pier v. Plone In-Reply-To: <46C23065.9080702@moedae.com> References: <46C21A71.9020204@cyberhaus.us> <46C23065.9080702@moedae.com> Message-ID: <46C2D0C5.8020702@fjkonrad.de> Some remarks to the statements of Taun. - rg performance - I don't see performance problems with a well configured Plone 2.5.x environment when using CacheFu with Apache. If this isn't enough you can use Squid or Varnish. A prerequisite is of course enough RAM (>= 1 GB). Of course Plone is known, not being the fastest. - rg Software Stack - with 2.5.3 and the upcoming 3.0 release you have the universal installer that takes care about all the dependencies of your libraries. Anyway, I never run in problems on Debian based systems with simply install with apt-get what you read in the install files. I don't see that Pier can reach the the functionality that Plone delivers today in near or mid future. If you make a list with requirements what you need for your app and Plone covers most of them *out of the box* then go with Plone. If you have, let's say 50% what is not covered out of the box then it's a different picture. Of course you can do everything with Plone and some developers do, but this doesn't make always sense. My idea is to use *both*. Plone and Seaside. Use Plone for everything that's easy to use out of the box and use Seaside for requirements that would need special python programming. It should be possible to bring both together with either http://plone.org/products/htmlproxy (a proxy based integration) or http://plone.org/products/windowz/releases (iFrame based integration). I haven't tried this approach but it's on my todo list. regards, Franz Josef Taun schrieb: > Jimmie, I have been agonizing over the same choice for months. For now, I am sticking with > Plone for my clients. > > I have worked with Smalltalk since the late 80's and Plone since it's inception on top of > CMF for Zope. > > Plone Cons - > > Past performance - Historically, I have had major performance problems with Plone > including memory leaks leading to repeated server restarts on an almost hourly basis under > heavy loads. Performance has improved but I am still concerned for the site I am currently > creating using Plone. > > Software Stack - This is my biggest complaint. The Plone stack is too dependent on C > libraries and python modules and zope adapters. For example, connecting Plone to postresql > requires a postgresql adapter which consists of a stack in C, python and Zope. Like most > OpenSource, all the versions have to be compatible. Just the out of the box stack is > python C virtual machine binary -> python libraries -> Zope -> CMF -> Plone -> Plone > Standard Products. Addon products such as PIL (imaging library) add a 3 layer stack of C > module, python module and Zope module. > > Development environment doesn't hold a candle to Seaside. > > Plone Pros - > > Very active community. > Tons of interesting Products. > Workflow and security model very easy to customise. > Easy to add custom products with ArchGenXML and ArgoUML. > Very Easy to add custom content types with ArchGenXML and ArgoUML. > **Visual Tools like ArgoUML/ArchGenXML are what are really missing from Squeak. You use > ArgoUML to create a UML class diagram for your product or content type. You then run > ArchGenXML to create a Plone product from the class diagram. I am currently using this > process to create a site with 8 custom content types with cross references and it is very > easy. > http://plone.org/documentation/tutorial/archgenxml-getting-started > > > Squeak Cons - > > The flip side of all of the Plone Pros. > > Squeak Pros - > > I much prefer Smalltalk to Python. > I prefer the Smalltalk environment to any Python IDE. > I think people write better Smalltalk tools/objects than Python programs. > I prefer the architecture and tools of Seaside to Plone. > Much shorter stack - Smalltalk VM -> Smalltalk source -> Seaside -> Magritte -> Pier. > Fewer C module dependencies for add-on products/objects. > > > Personal Conclusion - > > Zope/Plone feels like a framework where you are locked into the frame. > Smalltalk/Seaside feels like a great tool box to help you build whatever you want. > Unfortunately, I would have to build Plone when that is about all I need. > > If one only needs the functionality provided by Zope, Seaside is the better choice for > me. I would be more productive and have a better end product with Seaside versus Zope. > > I chose painful but functional Plone over Fun but less functional Pier based on the > Plone Workflow model, ArchGenXML for products and many available 3rd party products. > > I really hope to be able to make a different choice in the future. > > > > > Taun > > > Jimmie Houchin wrote: > >> Hello, >> >> I am exploring my options for a couple of websites. I am a big fan of >> Squeak, Seaside and Pier. But I have been exploring and learning about >> Plone. >> >> There is a tremendous amount of energy and work behind Plone and >> products available for it. Plone 3.0 is about to be released. They have >> put a lot of work into UI usability and into a lot of areas which are >> nice to not necessarily implement yourself. >> >> That said, I don't really have a grasp as to how far Pier is from >> Plone-like abilities for both the end user and the developer. >> >> One thing I am looking at is the Plone4Artist product which implements a >> very sweet package for multimedia and Plone. >> http://www.plone4artists.com/ >> >> I do very much like Squeak over Python. >> In general I like Seaside/Pier over Zope/Plone. >> >> I know that Lukas has used Zope/Plone, but I don't know how current his >> knowledge is. >> >> How far is Pier from offering a competitive experience to end users and >> developers with regard to something like Plone? >> >> Is there any interest in the community of competing in that sphere? >> >> Or do most here happily use Seaside/Pier as a toolbox and the bigger >> application type CMS isn't on the radar? >> >> And initially I speak as to a basic Plone 3.0 out-of-the-box >> capabilities and user/developer experience. Not necessarily the plethora >> of add-on products. Those can come later if the out-of-the-box >> experience is compelling enough. >> >> Naively it seems that content types are easier to develop in Pier as >> opposed to Plone. >> >> I just don't know how much I could build on Pier towards a Plone-like >> experience in the time it takes to do some things in Plone. And I really >> don't know how much of the machinery that makes Plone what it is, is in >> Pier. Or the effort to get there. >> >> Comments regarding my questions above or most anything relevant to Pier >> v. Plone 3.0 are greatly appreciated. >> >> Thanks. >> >> Jimmie >> >> _______________________________________________ >> SmallWiki, Magritte, Pier and Related Tools ... >> https://www.iam.unibe.ch/mailman/listinfo/smallwiki >> > > > _______________________________________________ > SmallWiki, Magritte, Pier and Related Tools ... > https://www.iam.unibe.ch/mailman/listinfo/smallwiki > From renggli at iam.unibe.ch Wed Aug 15 13:37:16 2007 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Wed, 15 Aug 2007 13:37:16 +0200 Subject: Pier v. Plone In-Reply-To: <46C2D0C5.8020702@fjkonrad.de> References: <46C21A71.9020204@cyberhaus.us> <46C23065.9080702@moedae.com> <46C2D0C5.8020702@fjkonrad.de> Message-ID: > My idea is to use *both*. Plone and Seaside. Use Plone for everything > that's easy to use out of the box and use Seaside for requirements > that > would need special python programming. It should be possible to bring > both together with either http://plone.org/products/htmlproxy (a proxy > based integration) or http://plone.org/products/windowz/releases > (iFrame > based integration). I haven't tried this approach but it's on my > todo list. I've done several proxy based integrations with Zope and Seaside. This works nicely and is completely transparent, as both application servers are mostly run behind Apache anyway. A visitor can't tell the difference of the Zope and Seaside parts, except by looking at the URL parameters. Eventually I moved everything to SmallWiki (the Pier at that time). > I don't see that Pier can reach the the functionality that Plone > delivers today in near or mid future. What are the missing parts in Seaside (vs. Zope) and Pier (vs. Plone) then? Lukas -- Lukas Renggli http://www.lukas-renggli.ch From matthias.berth at googlemail.com Wed Aug 15 18:45:55 2007 From: matthias.berth at googlemail.com (Matthias Berth) Date: Wed, 15 Aug 2007 18:45:55 +0200 Subject: PRCommandsWidget: problem with collecting available commands? Message-ID: <9aa6ae270708150945i50a5b214kee4e9e5321d9a75f@mail.gmail.com> Hello, I have made a custom subclass of PULogin which will direct users to their homepage after they login. The Commands widget in Pier then shows both PULogin and my CustomLogin command. I'd like to hide PULogin, so I thought I make PULogin invalid (isValidIn: aContext returns false). Problem is that now I get CustomLogin listed twice in the widget. Here is the method, with some comments about what I think is going on PRommandsWidget>>items | commands command | commands := self context commands. "These are all allowed commands" ^ Array streamContents: [:stream | self commandClasses "These are all possible commands" do: [:class | command := commands detect: [:each | each = class or: [each inheritsFrom: class]] ifNone: []. "command is an allowed command that is a subclass of any of the command classes." command isNil ifFalse: [stream nextPut: command]]]. So it iterates over all possible commands (subclasses of PRCommand) and adds allowed commands if they inherit from one of them. My questions are: - What's the point of the inheritance check? - Shouldn't the list of commands in the widget be a subset of the commands allowed in the context? - Why shouldnt the widget just show the commands that the context allows? I'd like to understand this before I patch it :-) Cheers Matthias From j.squeak at cyberhaus.us Wed Aug 15 20:54:47 2007 From: j.squeak at cyberhaus.us (Jimmie Houchin) Date: Wed, 15 Aug 2007 13:54:47 -0500 Subject: Pier v. Plone In-Reply-To: <46C23065.9080702@moedae.com> References: <46C21A71.9020204@cyberhaus.us> <46C23065.9080702@moedae.com> Message-ID: <46C34BF7.5040309@cyberhaus.us> Hello Taun, Thanks for the reply. Taun wrote: > Jimmie, I have been agonizing over the same choice for months. For now, I am sticking with > Plone for my clients. Me too. That's why I decided rather than just jumping into full bore with Zope/Plone purely do to the size of community and a great end-user experience to post a question here. I am glad I did. > I have worked with Smalltalk since the late 80's and Plone since it's inception on top of > CMF for Zope. > > Plone Cons - > Past performance - [snip] > Software Stack - [snip] > > Development environment doesn't hold a candle to Seaside. Oh absolutely. One of my big issues when doing Python. I've never integrated an editor into my brain. :) I was shocked the first time I installed Plone on my Ubuntu laptop. AMD64 3200, 1.25gb ram, 100gb hard disk. It took about 30 minutes to compile and install and was absolutely huge. > Plone Pros - > Very active community. > Tons of interesting Products. > Workflow and security model very easy to customise. > Easy to add custom products with ArchGenXML and ArgoUML. > Very Easy to add custom content types with ArchGenXML and ArgoUML. > **Visual Tools like ArgoUML/ArchGenXML are what are really missing from Squeak. You use > ArgoUML to create a UML class diagram for your product or content type. You then run > ArchGenXML to create a Plone product from the class diagram. I am currently using this > process to create a site with 8 custom content types with cross references and it is very > easy. > http://plone.org/documentation/tutorial/archgenxml-getting-started Looks reasonable. But I haven't yet learned how that works with Plone 3.0 and Zope 3 technologies. I do not know nor desire to Zope 2. > Squeak Cons - > The flip side of all of the Plone Pros. Yes. But that is why I posted. Does the community desire to over time work in such a direction. If core Pier could move to and become =+ Plone core, then we can start talking. Add-ons and products can come when the machinery supports the basic usability and building blocks equal to and better than Plone. > Squeak Pros - > I much prefer Smalltalk to Python. > I prefer the Smalltalk environment to any Python IDE. > I think people write better Smalltalk tools/objects than Python programs. > I prefer the architecture and tools of Seaside to Plone. > Much shorter stack - Smalltalk VM -> Smalltalk source -> Seaside -> Magritte -> Pier. > Fewer C module dependencies for add-on products/objects. Oh absolutely. I am working on website that I have to migrate to a machine not under my control. Most likely Windows. I am a little apprehensive about having him install Plone and me trying to support/develop Plone/Python on Windows. I am not a Windows guy. > Personal Conclusion - > Zope/Plone feels like a framework where you are locked into the frame. > Smalltalk/Seaside feels like a great tool box to help you build whatever you want. > Unfortunately, I would have to build Plone when that is about all I need. > > If one only needs the functionality provided by Zope, Seaside is the better choice for > me. I would be more productive and have a better end product with Seaside versus Zope. Cool. > I chose painful but functional Plone over Fun but less functional Pier based on the > Plone Workflow model, ArchGenXML for products and many available 3rd party products. Fortunately for me. One project I am working on is to replace the current website which is done in an ancient version of MS SharePoint. (Yuck!) So, surpassing it in usability is a fairly low target. And I have the time to make it better after an initial equaling(or better) of the capabilities. The other project I am working on is my own. And for it I am willing to work on improving Pier where it may need it, if in the end overall time spent is equal to or less than a Plone version. And for me that time includes, learning Python more sufficiently to get my hands dirty in the Python side of Zope3/Plone3. Learn Zope3, Learn Plone3. And develop both sites. The learning curve for me is an advantage to Squeak/Seaside/Pier. So I think a good question is... If one is starting from ground zero. An understanding of programming and maybe some web development. But no mastery of Python or Smalltalk or there libraries. If the project requires doing Python or Smalltalk programming in order to fully use the toolset or framework. (ie: not simply a user of the application Plone/Pier). Then which one gets a moderate website up and running the fastest/easiest? I know, very subjective. > I really hope to be able to make a different choice in the future. Me too. That's why I wanted to give Pier an opportunity before I stuck my head into Plone and disappeared for an indeterminate amount of time. If said time could be spent being more productive with better tools and improving those tools and accomplishing the goal in similar time frame. Then I am all Squeak/Seaside/Pier. Thanks again for the reply. Jimmie [snip original message] From renggli at iam.unibe.ch Wed Aug 15 21:03:47 2007 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Wed, 15 Aug 2007 21:03:47 +0200 Subject: PRCommandsWidget: problem with collecting available commands? In-Reply-To: <9aa6ae270708150945i50a5b214kee4e9e5321d9a75f@mail.gmail.com> References: <9aa6ae270708150945i50a5b214kee4e9e5321d9a75f@mail.gmail.com> Message-ID: > - What's the point of the inheritance check? You are right, the inheritance check is completely useless in the current version of Pier. A few years ago the commands to add and edit different structure classes were different subclasses of an abstract add and edit command. Luckily this is no longer the case and therefor this method can be simplified to: PRCommandsWidget>>items | commands | commands := self context commands. ^ self commandClasses select: [ :each | commands includes: each ] I applied the same refactoring to PRViewsWidget which does the same unnecessary and complicated checks. > - Shouldn't the list of commands in the widget be a subset of the > commands allowed in the context? Exactly, this is what the new code is doing. It takes the selected classes in the selected order, and then removes all that are not useable in the current context. > - Why shouldnt the widget just show the commands that the context > allows? To allow people to customize (see the settings of the widget) what commands to show in what order. For example by using two different PRCommandsWidget's you can logically split commands like Login/Logout and Add/Edit/Remove page from each other. Name: Pier-Seaside-lr.191 Author: lr Time: 15 August 2007, 9:03:35 pm UUID: 86949e29-2ca2-438d-bb37-9e8faa2cd905 Ancestors: Pier-Seaside-lr.189 - Fixed PRCommandsWidget>>items and PRViewsWidget>>items that was doing far too much expecting a different command model that has been dropped from pier a long time ago - Kudos to Matthias Berth that reported this problem Cheers, Lukas -- Lukas Renggli http://www.lukas-renggli.ch From j.squeak at cyberhaus.us Wed Aug 15 22:03:21 2007 From: j.squeak at cyberhaus.us (Jimmie Houchin) Date: Wed, 15 Aug 2007 15:03:21 -0500 Subject: Pier v. Plone In-Reply-To: <1AFDAFB5-43E5-40D6-B807-6DA0AAC6F03C@iam.unibe.ch> References: <46C21A71.9020204@cyberhaus.us> <1AFDAFB5-43E5-40D6-B807-6DA0AAC6F03C@iam.unibe.ch> Message-ID: <46C35C09.50508@cyberhaus.us> Lukas Renggli wrote: >> I know that Lukas has used Zope/Plone, but I don't know how current >> his knowledge is. > > My knowledge of Zope and Plone dates back to 2002. I maintained some > legacy Zope projects in 2003, but as I discovered Smalltalk and > Seaside around the same time I never went back to Python again. I can certainly understand that. >> How far is Pier from offering a competitive experience to end users >> and developers with regard to something like Plone? > > I have no idea in what state Zope/Plone is today. Maybe I should give > another try ... Only for comparison, please. :) >> Is there any interest in the community of competing in that sphere? > > I am interested, but I can't compete against hundreds of companies > and thousands of developers all alone. Super! I understand you can't compete alone. But possibly if we started an issue tracker with things that the community would like to see in a Pier distribution so that we have a target to work towards. Then little by little we can improve Pier to where Pier can be a top contender in the CMS marketplace. At least so that those of who choose Smalltalk can use the tool of our choice and be able to justify it to any PHB as necessary. :) >> Or do most here happily use Seaside/Pier as a toolbox and the bigger >> application type CMS isn't on the radar? > > I am using Seaside/Pier for all my web related projects. As I thought. >> And initially I speak as to a basic Plone 3.0 out-of-the-box >> capabilities and user/developer experience. Not necessarily the >> plethora of add-on products. Those can come later if the >> out-of-the-box experience is compelling enough. > > To make the out-of-the-box experience of Pier (especially for those > not knowing Smalltalk and Seaside) quite some work is required. It would be nice to start learning what those areas are from those experienced in both. Hopefully start adding them to the above issue tracker. >> Naively it seems that content types are easier to develop in Pier as >> opposed to Plone. > > This is certainly the case, even if Zope/Plone improved a lot over > the past 5 years. I was watching a presentation on b-org: Creating content types the Plone 2.5 way. http://video.google.com/videoplay?docid=-4512976899640436688&q=plone+duration%3Along&total=16&start=0&num=100&so=1&type=search&plindex=8 It seemed the methodology he was using was also applicable to Plone 3. One guy during the presentation spoke of having to touch 16 files in order to create content types following this model which was spoken of as being a best practice. I would say as far as easily spying out the land, look at the "marketing" type materials on Plone.org. Movies. http://plone.org/about/movies Most of these movies are short. You could probably watch them in a window on one side of your monitor, and do something else on the other. I would initially skip the Better Web Dev. and the Recovery from Addiction unless you want to see how Plone compares to Java,... etc. Other videos from the 2006 Plone conference. http://plone.org/events/conferences/seattle-2006/presentations/session-videos These are longer, but if you have a big enough monitor. You can still watch and get something done. :) The video by Eben Moglen was excellent and not specific to Plone. The video What If Our Systems Could do the Rest? - Bob Boiko was excellent for anybody doing CMS systems. Had nothing specific to Plone. And then there is the laundry list of features in Plone 3. http://plone.org/products/plone/features/3.0 That would give you some easy low lying fruit, just to see what people exploring the CMS marketplace see when looking at Plone. How does Pier compare when looking at these items? What are those things that are appropriate for Seaside/Pier and we would like to see in Pier? What in this list are the low lying fruit? Reasonably short time to implement. Lets start creating a target to shoot for. What would be good projects for Google SoC? What about those things that Esug sponsors? What about students in general? What can we do to enable and give direction to anybody who would like to participate in improving the out-of-box Pier experience. What defines Pier core? What do we want in a rich Pier distribution? So I think the place to start is to see how Pier compares. Then create a roadmap to get to where we want to be. Enable the community to step up to the plate and contribute. We can also pay attention to where we differ philosophically and where we can exploit that difference. ie: the web heresy type stuff. Just some thoughts. Thanks for your time and for your contribution to the Squeak community. It is appreciated. Jimmie Houchin From j.squeak at cyberhaus.us Wed Aug 15 22:21:16 2007 From: j.squeak at cyberhaus.us (Jimmie Houchin) Date: Wed, 15 Aug 2007 15:21:16 -0500 Subject: Pier v. Plone In-Reply-To: <46C2D0C5.8020702@fjkonrad.de> References: <46C21A71.9020204@cyberhaus.us> <46C23065.9080702@moedae.com> <46C2D0C5.8020702@fjkonrad.de> Message-ID: <46C3603C.3020104@cyberhaus.us> Franz Josef wrote: > Some remarks to the statements of Taun. [snip quote] > I don't see that Pier can reach the the functionality that Plone > delivers today in near or mid future. If you make a list with > requirements what you need for your app and Plone covers most of them > *out of the box* then go with Plone. If you have, let's say 50% what is > not covered out of the box then it's a different picture. Of course you > can do everything with Plone and some developers do, but this doesn't > make always sense. My projects definitely require Python or Smalltalk programming. So it seems your saying that if Plone the app can do what you want, then use Plone. Because Plone for the user is fine. But if you have to put on your developer hat and get dirty, then you are on a sliding scale on which at some point things can tip over to Squeak/Seaside/Pier. Correct? But this is what I was looking for. It seems that I could spend a fair amount of time in Zope/Plone creating and editing a plethora of files and that I could spend far less time doing similar programming in Squeak. Spend the difference on developing the things in Pier I might want that Plone has available. Over time that would continue lower the point of enter for Seaside/Pier on the above sliding scale. :) It might not be the near or mid future, but if we create a target and start working towards it. It could eventually come to pass that Pier is competitive at certain levels and a winner on several. Just depends on what your looking for. I think that the productivity in Squeak/Seaside/Pier could enable us to intersect with and compare nicely in the CMS marketplace at some point in the future. The Plone people are already making their list for what they want in Plone 3.5. > My idea is to use *both*. Plone and Seaside. Use Plone for everything > that's easy to use out of the box and use Seaside for requirements that > would need special python programming. It should be possible to bring > both together with either http://plone.org/products/htmlproxy (a proxy > based integration) or http://plone.org/products/windowz/releases (iFrame > based integration). Okay. Here your talking about using Plone when you can be a user, and using Pier when you need to be a developer. I can see some use cases where this could be possible. But I would have to think about it. Seems like it could become complicated if you have a user/member database, authentication and such. Managing permissions to content objects across two content systems seems potentially problematic. Would require some thought. Thanks for the reply. Jimmie [big snip] From rbb at techgame.net Wed Aug 15 22:38:15 2007 From: rbb at techgame.net (Brian Brown) Date: Wed, 15 Aug 2007 14:38:15 -0600 Subject: Pier v. Plone In-Reply-To: <46C34BF7.5040309@cyberhaus.us> References: <46C21A71.9020204@cyberhaus.us> <46C23065.9080702@moedae.com> <46C34BF7.5040309@cyberhaus.us> Message-ID: On Aug 15, 2007, at 12:54 PM, Jimmie Houchin wrote: > Hello Taun, > > Thanks for the reply. > > Taun wrote: >> Jimmie, I have been agonizing over the same choice for months. For >> now, I am sticking with >> Plone for my clients. > > Me too. That's why I decided rather than just jumping into full bore > with Zope/Plone purely do to the size of community and a great end- > user > experience to post a question here. I am glad I did. > I couldn't resist any longer ;) These are my opinions from my experience, so take them with the proverbial grain of salt :) My company is a Python shop - we have many commercial products on the desktop that are all written in Python and it has served us well... That being said, all our web development work is in ... Seaside I have a lot of experience with Zope, I started using it when it was a commercial product known as Principia. I built several sites out of it in the 2.x timeframe, and have delved a bit into 3.0 to see how things had progressed. The things that killed me over time were some of the main "selling points". With Zope/Plone there is a plethora of third party modules and or plugins you can use, with varying levels of configurability or extensibility. I used several of these types of Zope plugins and was usually bit when the zope platform upgraded and they no longer worked, or were not backward compatible because of ZODB being underneath everything. I know that Plone mitigates some that risk; the Plone layer itself is dealing with it. I intensely disliked that fact that I could create "products", mostly strait python code, use a templating language (ZPT or others), and also edit things through the web using the Zope interface. At first that all seemed great, but it just ate up brain cycles trying to get everything to talk together. Zope has a complicated model and getting to what you need can be a pain. Again, Plone may be easier as a layer on top. In Seaside, I write in Smalltalk, whether I am using Magritte, Pier, ShoreComponents, Scriptaculous, etc; and a BIG plus for me: since this is a smaller community, I can actually hire the developers of these technologies to customize, implement, or train and I really know what I am getting. It's not so easy in larger communities. I am someone who has been using Seaside off and on since 2003, and did not come from an OO background, so have had significant hurdles in doing things in OOish ways. I can still create just about any kind of web app I want and do it much, much faster than any of the other ways I have used, including ASP, PHP, cherrypy, albatross, cold fusion, etc. No one else might enjoy my code, however ;) Anyway, my vote is go Pier and Seaside, but your mileage may vary :) Cheers, Brian >> I have worked with Smalltalk since the late 80's and Plone since >> it's inception on top of >> CMF for Zope. >> >> Plone Cons - >> Past performance - [snip] >> Software Stack - [snip] >> >> Development environment doesn't hold a candle to Seaside. > > Oh absolutely. One of my big issues when doing Python. I've never > integrated an editor into my brain. :) > > I was shocked the first time I installed Plone on my Ubuntu laptop. > AMD64 3200, 1.25gb ram, 100gb hard disk. It took about 30 minutes to > compile and install and was absolutely huge. > >> Plone Pros - >> Very active community. >> Tons of interesting Products. >> Workflow and security model very easy to customise. >> Easy to add custom products with ArchGenXML and ArgoUML. >> Very Easy to add custom content types with ArchGenXML and ArgoUML. >> **Visual Tools like ArgoUML/ArchGenXML are what are really >> missing from Squeak. You use >> ArgoUML to create a UML class diagram for your product or content >> type. You then run >> ArchGenXML to create a Plone product from the class diagram. I am >> currently using this >> process to create a site with 8 custom content types with cross >> references and it is very >> easy. >> http://plone.org/documentation/tutorial/archgenxml-getting-started > > Looks reasonable. But I haven't yet learned how that works with Plone > 3.0 and Zope 3 technologies. I do not know nor desire to Zope 2. > > >> Squeak Cons - >> The flip side of all of the Plone Pros. > > Yes. But that is why I posted. Does the community desire to over time > work in such a direction. If core Pier could move to and become =+ > Plone > core, then we can start talking. Add-ons and products can come when > the > machinery supports the basic usability and building blocks equal to > and > better than Plone. > >> Squeak Pros - >> I much prefer Smalltalk to Python. >> I prefer the Smalltalk environment to any Python IDE. >> I think people write better Smalltalk tools/objects than Python >> programs. >> I prefer the architecture and tools of Seaside to Plone. >> Much shorter stack - Smalltalk VM -> Smalltalk source -> >> Seaside -> Magritte -> Pier. >> Fewer C module dependencies for add-on products/objects. > > Oh absolutely. I am working on website that I have to migrate to a > machine not under my control. Most likely Windows. I am a little > apprehensive about having him install Plone and me trying to > support/develop Plone/Python on Windows. I am not a Windows guy. > >> Personal Conclusion - >> Zope/Plone feels like a framework where you are locked into the >> frame. >> Smalltalk/Seaside feels like a great tool box to help you build >> whatever you want. >> Unfortunately, I would have to build Plone when that is about all >> I need. >> >> If one only needs the functionality provided by Zope, Seaside >> is the better choice for >> me. I would be more productive and have a better end product with >> Seaside versus Zope. > > Cool. > >> I chose painful but functional Plone over Fun but less >> functional Pier based on the >> Plone Workflow model, ArchGenXML for products and many available >> 3rd party products. > > Fortunately for me. One project I am working on is to replace the > current website which is done in an ancient version of MS SharePoint. > (Yuck!) So, surpassing it in usability is a fairly low target. And I > have the time to make it better after an initial equaling(or > better) of > the capabilities. > > The other project I am working on is my own. And for it I am > willing to > work on improving Pier where it may need it, if in the end overall > time > spent is equal to or less than a Plone version. > > And for me that time includes, learning Python more sufficiently to > get > my hands dirty in the Python side of Zope3/Plone3. Learn Zope3, Learn > Plone3. And develop both sites. > > The learning curve for me is an advantage to Squeak/Seaside/Pier. > > So I think a good question is... > > If one is starting from ground zero. An understanding of > programming and > maybe some web development. But no mastery of Python or Smalltalk or > there libraries. If the project requires doing Python or Smalltalk > programming in order to fully use the toolset or framework. (ie: not > simply a user of the application Plone/Pier). > Then which one gets a moderate website up and running the > fastest/easiest? I know, very subjective. > >> I really hope to be able to make a different choice in the future. > > Me too. That's why I wanted to give Pier an opportunity before I stuck > my head into Plone and disappeared for an indeterminate amount of > time. > If said time could be spent being more productive with better tools > and > improving those tools and accomplishing the goal in similar time > frame. > Then I am all Squeak/Seaside/Pier. > > Thanks again for the reply. > > Jimmie > > > [snip original message] > > _______________________________________________ > SmallWiki, Magritte, Pier and Related Tools ... > https://www.iam.unibe.ch/mailman/listinfo/smallwiki From renggli at iam.unibe.ch Wed Aug 15 23:36:04 2007 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Wed, 15 Aug 2007 23:36:04 +0200 Subject: Pier v. Plone In-Reply-To: <46C35C09.50508@cyberhaus.us> References: <46C21A71.9020204@cyberhaus.us> <1AFDAFB5-43E5-40D6-B807-6DA0AAC6F03C@iam.unibe.ch> <46C35C09.50508@cyberhaus.us> Message-ID: <69AA5F07-7549-4B78-9E3B-14997306FB34@iam.unibe.ch> > Super! I understand you can't compete alone. But possibly if we > started > an issue tracker with things that the community would like to see in a > Pier distribution so that we have a target to work towards. Then > little > by little we can improve Pier to where Pier can be a top contender in > the CMS marketplace. At least so that those of who choose Smalltalk > can > use the tool of our choice and be able to justify it to any PHB as > necessary. :) Seaside, Magritte and Pier all use the bug tracker of Squeak: http://bugs.squeak.org Select the project 'Squeak Package' and choose Seaside, Magritte or Pier as the category. >> To make the out-of-the-box experience of Pier (especially for those >> not knowing Smalltalk and Seaside) quite some work is required. > > It would be nice to start learning what those areas are from those > experienced in both. Hopefully start adding them to the above issue > tracker. Please report bugs and other issues there. Or just commit your enhancements to the code repositories, there is public write access everywhere. > And then there is the laundry list of features in Plone 3. > http://plone.org/products/plone/features/3.0 That's a nice feature list. I don't think we are too far away from that ... > How does Pier compare when looking at these items? Quickly scanning through the list I identify the following features as already present: - LiveSearch - Human-readable URLs - Powerful page editor (but that could still be improved) - Flexible navigation and always-updated site maps - Adjustable templates on content - Powerful standard content types - Content is automatically formatted for printing - Standards-compliant XHTML and CSS - Accessibility compliant - Pervasive RSS feed support - Rich ecosystem of free add-on products - Cross-platform - Microformat support - "Hot backup" support - Cut/copy/paste operations on content - Always-updated table of contents - Portlets engine - Wiki support - Support for the search engine Sitemap protocol - Support for multiple mark-up formats - Easy collaboration and sharing Things like the following points are extremely easy to implement: - Link and reference integrity checking - Automatic previous/next navigation All the points related to versioning require a minor re-design of some internal data structures. That kind of stuff was already present at some point in the past, but got lost in the process because I was not satisfied with the implementation: - Working Copy support - Versioning, history and reverting content - etc. Other stuff is a bit more complicated, but I don't see anything that wouldn't be possible to add within a couple of hours or days of development effort. Cheers, Lukas -- Lukas Renggli http://www.lukas-renggli.ch From jason.johnson.081 at gmail.com Thu Aug 16 06:13:20 2007 From: jason.johnson.081 at gmail.com (Jason Johnson) Date: Thu, 16 Aug 2007 06:13:20 +0200 Subject: Pier v. Plone In-Reply-To: <46C34BF7.5040309@cyberhaus.us> References: <46C21A71.9020204@cyberhaus.us> <46C23065.9080702@moedae.com> <46C34BF7.5040309@cyberhaus.us> Message-ID: On 8/15/07, Jimmie Houchin wrote: > > Yes. But that is why I posted. Does the community desire to over time > work in such a direction. If core Pier could move to and become =+ Plone > core, then we can start talking. Add-ons and products can come when the > machinery supports the basic usability and building blocks equal to and > better than Plone. And don't just look at Plone. Joomla is very nice as well with all sorts of cool features and add ons (e.g. for the less technical members of your web site team you can set up specific email addresses that if they send mail to the Joomla website the mail gets turned into an article with a template you configure to display it) I can't imagine the answer being anything but "yes of course!". Pier can and should compete in the CMS world. As was mentioned in this thread, with Joomla, and I'm sure Plone and everything else out there, you can get all kinds of components and load them into your site to add new features. But there is always the issue of trying to integrate them. And in some cases you have to do complicated configurations of different software stacks. In Pier we have all the integration of a homogeneous system. Pier can run any component made for Pier *or* Seaside. So if someone writes things for base Seaside, or even some other framework under Seaside Pier can potentially use it. And with the Pier #call:/#answer: scheme, as well as normal message sending, composability really can be a matter of simply sending a message to a component to do it's job. And for building new components, I don't know what the Joomla or Plone frameworks look like but it's hard for me to imagine them being easier to make something new then Seasides, i.e. simply create a normal model-domain object and put a render method, or just a Magritte description to display it! I also personally think that in Seaside we have a much better chance to avoid the configuration nightmare of some of these things. No config files! One should be able to configure and change anything from the code or inside the website itself. We could even have a component that generates apache rewrite rules for your site. :) From ducasse at iam.unibe.ch Thu Aug 16 10:35:42 2007 From: ducasse at iam.unibe.ch (=?ISO-8859-1?Q?st=E9phane_ducasse?=) Date: Thu, 16 Aug 2007 10:35:42 +0200 Subject: Pier v. Plone In-Reply-To: <46C35C09.50508@cyberhaus.us> References: <46C21A71.9020204@cyberhaus.us> <1AFDAFB5-43E5-40D6-B807-6DA0AAC6F03C@iam.unibe.ch> <46C35C09.50508@cyberhaus.us> Message-ID: good idea. Stef On 15 ao?t 07, at 22:03, Jimmie Houchin wrote: > Super! I understand you can't compete alone. But possibly if we > started > an issue tracker with things that the community would like to see in a > Pier distribution so that we have a target to work towards. Then > little > by little we can improve Pier to where Pier can be a top contender in > the CMS marketplace. At least so that those of who choose Smalltalk > can > use the tool of our choice and be able to justify it to any PHB as > necessary. :) From franzl at fjkonrad.de Thu Aug 16 13:11:33 2007 From: franzl at fjkonrad.de (Franz Josef) Date: Thu, 16 Aug 2007 13:11:33 +0200 Subject: Pier v. Plone In-Reply-To: References: <46C21A71.9020204@cyberhaus.us> <46C23065.9080702@moedae.com> <46C2D0C5.8020702@fjkonrad.de> Message-ID: <46C430E5.8060701@fjkonrad.de> Lukas Renggli schrieb: > What are the missing parts in Seaside (vs. Zope) and Pier (vs. Plone) > then? > > Lukas Lukas, I only can speak for Plone not Zope. And I hope my statement wasn?t understood as an offensive. I would love to see that I?m wrong. I also have to correct my sentence. I had not in mind the pure functionality but the big picture with technical and non technical aspects (Plone vs. Pier). Sorry for not being precise enough. So when I compare a CMS with Plone I also look at: - Support/Community - there are 167 companies from 44 countries listed at plone.net who offer commercial support. I know there are a lot more. A lot of them help to improve Plone and/or write add ons. - Maturity - see the number of websites and how prominent some of them are that run with Plone (). - Documentation - several books are available, you will find about 250 documents alone at (useful and comprehensive, most of them up2date (what?s not the default for a community driven Open Source project). You can join an annual conference (325 attendees registered 2006). Parts that are more related to functionality where I see a gap: - Internationalization - Plone supports over 35 languages including right-to-left languages out of the box when it?s installed. It has a good i18n framework and with LinguaPlone you can add the same conent in whatever language you need. - User Management - use Authentication Service (PAS) in Plone and manage your users in a database, LDAP, etc. (haven?t seen something similar for Pier). - Availability of more than 100 add on products that can be used from an end user (you don?t need to be a developer). Examples are full featured web shops, message board systems, registration systems, newsletter integration (details at ). - Scalability - you get it out of the box with ZEO (run 1 to n Plone instances on one content database. Guess this is doable with Magma or Gemstone, but not today out of the box). - Full-text Searching - all the content is searchable even Word or OpenOffice documents and PDF files (with add ons under Linux also for Excel and PowerPoint and other file types). It would be nice if someone of the Pier core developer or a more experienced user than me (I must admit I only played around with Pier in the web-dev-images. So perhaps I missed some important points of Pier) could make an entry at . Then it?s easy to compare Pier to all the other CMS. IMHO Pier today is a powerful CMS framework for a Smalltalk/Squeak programmer. Plone at the other side is also made to be as easy as possible for an end user. Here I see a difference today. It would be interesting how other people position Pier against other popular Open Source CMS today (like Plone, Drupal, Joomla, etc.) and in what direction they wish Pier will develop in the future. Regards, Franz Josef From matthias.berth at googlemail.com Thu Aug 16 13:37:33 2007 From: matthias.berth at googlemail.com (Matthias Berth) Date: Thu, 16 Aug 2007 13:37:33 +0200 Subject: PRCommandsWidget: problem with collecting available commands? In-Reply-To: References: <9aa6ae270708150945i50a5b214kee4e9e5321d9a75f@mail.gmail.com> Message-ID: <9aa6ae270708160437i385ded72ldf987522a6baa03e@mail.gmail.com> Lukas, thanks a lot, this makes it clear. On 8/15/07, Lukas Renggli wrote: > > - What's the point of the inheritance check? > > You are right, the inheritance check is completely useless in the > current version of Pier. [...] > > - Why shouldnt the widget just show the commands that the context > > allows? > > To allow people to customize (see the settings of the widget) what > commands to show in what order. For example by using two different > PRCommandsWidget's you can logically split commands like Login/Logout > and Add/Edit/Remove page from each other. OK , got that. Where are the settings of the widget? Are they accessible through the web somehow? Matthias From matthias.berth at googlemail.com Thu Aug 16 14:03:33 2007 From: matthias.berth at googlemail.com (Matthias Berth) Date: Thu, 16 Aug 2007 14:03:33 +0200 Subject: The best way to extend Pier's user model? Message-ID: <9aa6ae270708160503r2ef53d5dhd051a5ef9c7e5c9c@mail.gmail.com> Hello, I want to give pier users additional attributes (first name, last name, email, etc). So far I was creating a subclass of PUUser. Would it be better to just extend PUUser by a few Magritte descriptions on the class side? When I load new versions of Pier-Unix-Security from Monticello, I guess my additional description methods would be deleted again? And if I put them into my own category *my-customizations (with a star in the name), monticello would leave them alone? And, on a related note, what if I want to change a method in Pier's core (like PULogin class>>isValidIn:), how do I avoid that the next load from monticello gives me that old version again? Cheers Matthias From j.squeak at cyberhaus.us Thu Aug 16 16:08:54 2007 From: j.squeak at cyberhaus.us (Jimmie Houchin) Date: Thu, 16 Aug 2007 09:08:54 -0500 Subject: Pier v. Plone In-Reply-To: <46C430E5.8060701@fjkonrad.de> References: <46C21A71.9020204@cyberhaus.us> <46C23065.9080702@moedae.com> <46C2D0C5.8020702@fjkonrad.de> <46C430E5.8060701@fjkonrad.de> Message-ID: <46C45A76.1060604@cyberhaus.us> Hello Franz, Franz Josef wrote: > Lukas Renggli schrieb: >> What are the missing parts in Seaside (vs. Zope) and Pier (vs. Plone) >> then? >> >> Lukas > Lukas, I only can speak for Plone not Zope. And I hope my statement > wasn?t understood as an offensive. I would love to see that I?m wrong. I > also have to correct my sentence. I had not in mind the pure > functionality but the big picture with technical and non technical > aspects (Plone vs. Pier). Sorry for not being precise enough. > So when I compare a CMS with Plone I also look at: > > - Support/Community - [snip] > - Maturity - [snip] > - Documentation - [snip] Absolutely correct. This is why I wanted to get a feel for community interest, even if that community is small. A small community with a target (goal) can be powerful. I was hoping that if Pier was close enough, that we could create that roadmap and work towards parity in many areas and superiority in others. As Plone didn't start where they are, neither will we. We have to provide a compelling story for the developer and the end user. The end user won't necessarily care about the underlying technology. But, they might care about piles of dependencies. Thirty minute compile times. (Yes, I include Linux users) Thousands of files... As I watched many of the Plone videos it is very apparent that you have to make sure you have the just right combinations for things to work. The right Python, Zope, Plone, Archetypes, ... I heard many questions of can I use x with ZopeX, PloneY, ProductOfQuestionZ? Its anything but simple. All of Plone's end user experience isn't rosy. And this is an aspect which I anticipate will never be pretty. It is the nature of file based systems. Squeak, Seaside, Pier on the other hand if we can deliver a nice end user experience. Will always be nicer than most when it comes to deployment. On the small side just install the VM, *.Sources, *.image, *.changes files and your are ready. You could put them all on a cd and run the thing. Almost nothing else can compete here. IMHO. (at least I haven't seen anything else) > Parts that are more related to functionality where I see a gap: > - Internationalization - Plone supports over 35 languages including > right-to-left languages out of the box when it?s installed. It has a > good i18n framework and with LinguaPlone you can add the same conent in > whatever language you need. I believe when we have the compelling story that we can sell, that these things will come. But the machinery needs to be there to enable such. > - User Management - use Authentication Service (PAS) in Plone and manage > your users in a database, LDAP, etc. (haven?t seen something similar for > Pier). Don't know. > - Availability of more than 100 add on products that can be used from an > end user (you don?t need to be a developer). Examples are full featured > web shops, message board systems, registration systems, newsletter > integration (details at ). This is nice but somewhat deceiving. This argument has been used by Windows people to beat on everybody else for years. I am not saying that that is what your doing. But in those 100+ add-ons we have many duplications. But almost nobody is going to run 3 different blog products, 4 different forum products, ... They'll pick the one they want and go on. The others are just superfluous. What we do need is some quality components which can compete in those areas. The number being fewer is not significant if we can provide the capability and do so well. > - Scalability - you get it out of the box with ZEO (run 1 to n Plone > instances on one content database. Guess this is doable with Magma or > Gemstone, but not today out of the box). I think here the story would be that on the small end, keep it in the image. If you have more data, use Glorp/Postgres. Scaling with Glorp/Postgres would actually win a lot of people. Because there are lots of people who don't like, prefer or have other reasons not to use the ZODB. And with Glorp/Postgres you aren't fighting the way of the system in order to use an RDBMS which some people feel like with Zope/Plone. And then if you want OODB, you probably don't get any better than Gemstone. Gemstone is officially supporting Seaside on there web product. > - Full-text Searching - all the content is searchable even Word or > OpenOffice documents and PDF files (with add ons under Linux also for > Excel and PowerPoint and other file types). Full-text searching. Definitely want that. :) It would be nice to improve the story on doc management. > It would be nice if someone of the Pier core developer or a more > experienced user than me (I must admit I only played around with Pier in > the web-dev-images. So perhaps I missed some important points of Pier) > could make an entry at . Then it?s easy to > compare Pier to all the other CMS. Absolutely. Lukas or whomever might do a simple honest comparison. See if and what work would want to be done for a release before putting an entry on there. Then put it on there and work on improving our story. > IMHO Pier today is a powerful CMS framework for a Smalltalk/Squeak > programmer. Plone at the other side is also made to be as easy as > possible for an end user. Here I see a difference today. It would be > interesting how other people position Pier against other popular Open > Source CMS today (like Plone, Drupal, Joomla, etc.) and in what > direction they wish Pier will develop in the future. Absolutely. That's why I keep speaking about the end use experience. Let me clarify that just in case there is any confusion. Pier the framework vs. Pier the application Pier the framework makes the developers life easier. Pier the application enables non-developers to take Pier and build something interesting without knowing Squeak, Seaside, Pier programming, etc. They just have to be a competent computer user. That is the story that needs to be made compelling. In the end if Pier the application has a great usability story, then developers lives are easier, because we don't have to go out of our way to provide those benefits to the end user. They come with the application. We provide the content types, business logic, whatever else that requires Smalltalk, Python, etc. In the end, I believe that because of Smalltalk there is much of our story which nobody can compete against easily. We just need to catch up where we're behind. I believe that we can provide a compelling story for the marketplace. Smalltalk isn't dying. :) Its time for Smalltalk (Seaside, Pier) to provide the compelling use case for the marketplace. We can do this. And as we go along, we will pick up new co-laborers who are excited about the vision and want to be a part of this story. Got get busy. :) Jimmie From keith_hodges at yahoo.co.uk Thu Aug 16 17:44:09 2007 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Thu, 16 Aug 2007 16:44:09 +0100 Subject: Pier v. Plone In-Reply-To: <46C45A76.1060604@cyberhaus.us> References: <46C21A71.9020204@cyberhaus.us> <46C23065.9080702@moedae.com> <46C2D0C5.8020702@fjkonrad.de> <46C430E5.8060701@fjkonrad.de> <46C45A76.1060604@cyberhaus.us> Message-ID: <46C470C9.2070406@yahoo.co.uk> I think we can compete -eventually. Pier/seaside etc are developed with a minimalist philosophy. Plone/Zope etc have an everything and the kitchen sink philosophy. If you spend time integrating all of the minimalist bits we already have then we may start to have a platform which can compete. e.g 1 x Magma Server to n x Pier clients should work "out of the box". Its just a matter of trying it and doing the configuration. Personally I am a kitchen sink kind of person since it takes me a lot of effort to see the path from A to B without concrete examples. At present building pier/seaside apps are like building a den with lego rather than cardboard. You can assemble what you want out of lots of little pieces, and it will be quite robust. If you want a custom piece you take one you already have and adapt it a bit and carry on building. With plone/zope, you take your cardboard boxes to build your den, the boxes are bigger so you could build your whole den very easily, but adapting boxes is much harder because they are a bit more flimsily assembled and the underlying frameworks are not so concise. My limited experience of zope a few years back when I did attempt to use it for serious things (my ex-company corporate site uses it even today) under the hood is that it is awful code/design. Easy things are easy and slightly more difficult things are impossible. In smalltalk/seaside everything is moderately difficult, but everything is doable in a moderately difficult kind of way.. When you add pier, it becomes, some things are easy you just configure and arrange the components, and the rest is moderately difficult, but still everything is doable in a moderately difficult kind of way once you understand it. If you want to build a mansion out of card board boxes then, you will probably get going quite fast. If you want to build a mansion out of lego its going to take some time. best regards Keith From keith_hodges at yahoo.co.uk Thu Aug 16 17:45:19 2007 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Thu, 16 Aug 2007 16:45:19 +0100 Subject: Another piece Message-ID: <46C4710F.6060809@yahoo.co.uk> I put this in the pieraddons repository, it adds some configuratble debugging hooks. Name: Pier-Debugging-kph.1 Author: kph Time: 16 August 2007, 4:26:56 pm UUID: 207cf14d-4c0d-11dc-8162-000a95edb42a Ancestors: - some debugging hooks with switching in preferences best regards Keith From j.squeak at cyberhaus.us Thu Aug 16 20:42:51 2007 From: j.squeak at cyberhaus.us (Jimmie Houchin) Date: Thu, 16 Aug 2007 13:42:51 -0500 Subject: Pier v. Plone In-Reply-To: <46C470C9.2070406@yahoo.co.uk> References: <46C21A71.9020204@cyberhaus.us> <46C23065.9080702@moedae.com> <46C2D0C5.8020702@fjkonrad.de> <46C430E5.8060701@fjkonrad.de> <46C45A76.1060604@cyberhaus.us> <46C470C9.2070406@yahoo.co.uk> Message-ID: <46C49AAB.7040100@cyberhaus.us> Keith Hodges wrote: > I think we can compete -eventually. > > Pier/seaside > etc are developed with a minimalist philosophy. Is Pier? I know it currently is somewhat minimalist right now. But I don't if that is due to philosophy or due to the current situation of the community. Lukas seems willing for Pier to compete in the Plone space. But is incapable of doing it alone. Very understandable. > Plone/Zope > etc have an everything and the kitchen sink philosophy. > > If you spend time integrating all of the minimalist bits we already have > then we may start to have a platform which can compete. > > e.g 1 x Magma Server to n x Pier clients should work "out of the box". > Its just a matter of trying it and doing the configuration. I have no experience with Magma. Is Magma ready to scale to millions of objects and 10s to 100s of gigabytes of space? I know this isn't the Magma list. But one of the two projects I am working on will have 10+million objects and 10s of gb of space to start with and grow from there. If it is ready. Then fantastic. If not, we still have an excellent story in Glorp/Postgres or Gemstone. My other project is small enough to do in image. (I wish the image itself was scalable to 10s of millions of objects and 10s to 100s of gb space. I have the disk space and many gb of ram. :) > Personally I am a kitchen sink kind of person since it takes me a lot of > effort to see the path from A to B without concrete examples. Me too. That's why I love the squeak-dev/web images. If Pier seeks to be minimalist, which I'm still not sure, then I think that we need to begin to either build a platform on top Seaside/Pier or Seaside which can be the "full stack", "kitchen sink" providing an excellent application which provides an excellent end user experience and capabilities and provides the developer the abilities to deliver a richer customizable experience to their clients. Just need to ascertain whether that is Pier. Or if that is on top of Pier or Seaside. Then start creating the target/roadmap so that over time as people and resources become available we have clearly defined goals and needs which can be accomplished. Then over time it can and will happen. But if we never have direction and everything is just hodge podge. It will never happen. We won't live long enough for evolution, we need creation. :) > At present building pier/seaside apps are like building a den with lego > rather than cardboard. You can assemble what you want out of lots of > little pieces, and it will be quite robust. If you want a custom piece > you take one you already have and adapt it a bit and carry on building. > > With plone/zope, you take your cardboard boxes to build your den, the > boxes are bigger so you could build your whole den very easily, but > adapting boxes is much harder because they are a bit more flimsily > assembled and the underlying frameworks are not so concise. My limited > experience of zope a few years back when I did attempt to use it for > serious things (my ex-company corporate site uses it even today) under > the hood is that it is awful code/design. Easy things are easy and > slightly more difficult things are impossible. I understand. My experience with Zope goes back to when it was Principia and Bobo. Long before I knew of Squeak. I'm even credited in the first Zope book. I helped proofread and sent back comments. My problem was when I delved into the Zope source and I tried follow source back to its roots to try understand things. I ran into way too much magic. My brain could not contain all that. So I through my hands up and left Zope looking for better ways. That is one reason I love Smalltalk/Squeak. Everything is so much more discoverable than searching through bazillion text files trying to make cognitive sense of the array of interconnecting classes and objects and mixins and... and... and... > In smalltalk/seaside everything is moderately difficult, but everything > is doable in a moderately difficult kind of way.. But is it more difficult that doing ZPT, ZCML, .py, .txt, or whatever else in the plethora of files per content object. > When you add pier, it becomes, some things are easy you just configure > and arrange the components, and the rest is moderately difficult, but > still everything is doable in a moderately difficult kind of way once > you understand it. > > If you want to build a mansion out of card board boxes then, you will > probably get going quite fast. > If you want to build a mansion out of lego its going to take some time. Currently, to me, it seems that Plone wins when its Plone the application. The more you go to the framework side, then the advantage starts to slide over the Squeak/Seaside/Pier. I would like to see Pier the application be able to compete with Plone the application. I know it will take time. But as time goes on, if we keep making progress, the decision "for" Pier becomes much easier. Neither Plone nor Pier have "arrived" yet. But in some areas Plone is further down the road. If we want a target and a time frame. And if equaling/beating Plone on some of these is a legitimate goal. Then I would say we could look at Plone 3.5. Work towards having a compelling story vis a vis Plone 3. and before Plone 3.5 comes out have a compelling story towards it. I am not necessarily proposing a time-line. But I am proposing that we establish processes that move us towards a goal. As processes improve, the product improves, the community grows and we hopefully start to attain critical mass to achieve what we desire. I don't believe that the critical mass (sustainable mass) for Squeak/Seaside/Pier is as large as what is required for Python/Zope/Plone or even anywhere close. I would like to be a part of this process. Lukas said that http://bugs.squeak.org/ is the issue tracker for Seaside and Pier. I haven't learned how to use that yet. But I will. Is there a place where we establish and document processes for the community to create Seaside/Pier the platform? A wiki? I didn't see any such on seaside.st? Maybe this needs to be part of the establishing of processes. A place to document established processes and goals. A few more thoughts hopefully towards becoming a productive contributing member of this community. I know I am not qualified for many of the core areas of Pier, but hopefully I can help with components/products on top of Pier core, documentation, etc. Thanks to all who are participating in this dialog. Jimmie From renggli at iam.unibe.ch Thu Aug 16 21:03:29 2007 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Thu, 16 Aug 2007 21:03:29 +0200 Subject: PRCommandsWidget: problem with collecting available commands? In-Reply-To: <9aa6ae270708160437i385ded72ldf987522a6baa03e@mail.gmail.com> References: <9aa6ae270708150945i50a5b214kee4e9e5321d9a75f@mail.gmail.com> <9aa6ae270708160437i385ded72ldf987522a6baa03e@mail.gmail.com> Message-ID: <9FF82DF2-9A0F-44A0-A196-79649C9D5262@iam.unibe.ch> > On 8/15/07, Lukas Renggli wrote: >>> - What's the point of the inheritance check? >> >> You are right, the inheritance check is completely useless in the >> current version of Pier. > [...] >>> - Why shouldnt the widget just show the commands that the context >>> allows? >> >> To allow people to customize (see the settings of the widget) what >> commands to show in what order. For example by using two different >> PRCommandsWidget's you can logically split commands like Login/Logout >> and Add/Edit/Remove page from each other. > > OK , got that. Where are the settings of the widget? Are they > accessible through the web somehow? There is a command called 'settings' available on all structures. Widgets usually have a lot of settings to customize their appearance. Lukas -- Lukas Renggli http://www.lukas-renggli.ch From renggli at iam.unibe.ch Thu Aug 16 21:09:35 2007 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Thu, 16 Aug 2007 21:09:35 +0200 Subject: The best way to extend Pier's user model? In-Reply-To: <9aa6ae270708160503r2ef53d5dhd051a5ef9c7e5c9c@mail.gmail.com> References: <9aa6ae270708160503r2ef53d5dhd051a5ef9c7e5c9c@mail.gmail.com> Message-ID: > I want to give pier users additional attributes (first name, last > name, email, etc). So far I was creating a subclass of PUUser. Would > it be better to just extend PUUser by a few Magritte descriptions on > the class side? Yes, that's usually easier. > When I load new versions of Pier-Unix-Security from Monticello, I > guess my additional description methods would be deleted again? And if > I put them into my own category *my-customizations (with a star in the > name), monticello would leave them alone? Yes, you need to package your extensions properly. If you use a category name as you wrote, Monticello will leave your extensions alone when loading a new version of Pier-Unix-Security. > And, on a related note, what if I want to change a method in Pier's > core (like PULogin class>>isValidIn:), how do I avoid that the next > load from monticello gives me that old version again? Try to avoid that at all cost. If there is really no other way you can use the category naming *my-customizations-override. There are well known drawbacks and probably bugs with this, so better avoid it altogether. Check the archive or ask in the Squeak mailing-list to learn more about Monticello and packaging in Squeak. Cheers, Lukas -- Lukas Renggli http://www.lukas-renggli.ch From renggli at iam.unibe.ch Thu Aug 16 21:54:45 2007 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Thu, 16 Aug 2007 21:54:45 +0200 Subject: Pier v. Plone In-Reply-To: <46C430E5.8060701@fjkonrad.de> References: <46C21A71.9020204@cyberhaus.us> <46C23065.9080702@moedae.com> <46C2D0C5.8020702@fjkonrad.de> <46C430E5.8060701@fjkonrad.de> Message-ID: > - Support/Community - there are 167 companies from 44 countries listed > at plone.net who offer commercial support. I know there are a lot > more. > A lot of them help to improve Plone and/or write add ons. > - Maturity - see the number of websites and how prominent some of them > are that run with Plone (). > - Documentation - several books are available, you will find about 250 > documents alone at (useful and > comprehensive, most of them up2date (what?s not the default for a > community driven Open Source project). You can join an annual > conference > (325 attendees registered 2006). I can hardly do anything about these points, other than using Pier for all sites I am building myself (which I already do, of course). This is also why Pier exists in the first place and where most features come from. > Parts that are more related to functionality where I see a gap: > - Internationalization - Plone supports over 35 languages including > right-to-left languages out of the box when it?s installed. It has a > good i18n framework and with LinguaPlone you can add the same > conent in > whatever language you need. If people provide translations that would be certainly a nice addition. > - Availability of more than 100 add on products that can be used > from an > end user (you don?t need to be a developer). Examples are full > featured > web shops, message board systems, registration systems, newsletter > integration (details at ). There is already a big number of extensions. Have a look at my proposal [1] for the ESUG Innovation Awards 2007 [2]. And don't forget to vote for Pier, this will certainly help to further improve it ... [1] http://www.iam.unibe.ch/~scg/Archive/Reports/Reng07c.pdf [2] http://www.esug.org/conferences/ 15thinternationalsmalltalkjointconference2007/ innovationtechnologyawards/submissions/ > - Full-text Searching - all the content is searchable even Word or > OpenOffice documents and PDF files (with add ons under Linux also for > Excel and PowerPoint and other file types). There is already a full-text search. It does not included uploaded files though. If somebody would implement readers for those strange binary formats, that would certainly be an easy thing to add to the search results. Cheers, Lukas -- Lukas Renggli http://www.lukas-renggli.ch From keith_hodges at yahoo.co.uk Fri Aug 17 03:38:09 2007 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Fri, 17 Aug 2007 02:38:09 +0100 Subject: [Enh] Pier-Shore Message-ID: <46C4FC01.3060601@yahoo.co.uk> Enable PierWidgets to make use of ShoreComponents. All you have to do is configure the application to use PRPierShoreFrame as the root component and all those great shore components are yours! best regards Keith p.s In this initial version there might be a very slight css effect from the shore css, but I tracked it down yet. From keith_hodges at yahoo.co.uk Fri Aug 17 03:48:55 2007 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Fri, 17 Aug 2007 02:48:55 +0100 Subject: [Enh] Pier-ExternalLogin Message-ID: <46C4FE87.4070906@yahoo.co.uk> A small framework to enable external validation plugins to be added and configured for Pier Login. I am using this with a plugin (not included yet) which validates the user/pass against a MYSQL query, then it logs in this user using an internally defined pier-user (or as I call it a "role") as a template. Finally I perform a second query to obtain a UserData record, and a potential invalidation is performed on "any other criteria", such as an account expiry date. You add your plugin by subclassing PUExternalValidationPlugin, and select the plugin to use in the application configuration. Finally your plugin gets the opportunity to customize the Login Dialog's descriptions. This enables you to customize the presentation of the dialog if you add Magritte-ComponentDecoration 's. You should also be able to add extra fields, though I leave this as an exercise for the reader. enjoy Keith From keith_hodges at yahoo.co.uk Fri Aug 17 03:58:54 2007 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Fri, 17 Aug 2007 02:58:54 +0100 Subject: [Enh] PRCommandLink Message-ID: <46C500DE.6090406@yahoo.co.uk> PRCommandLink allows the following syntax *command:PULogin* to generate a link which performs that command. If the user is not authorized the link does not show. Alias's are supported in the normal manner: *Register Here>command:PRRegisterUserCommand* As an advanced example you can include command links in the dialogs of other commands by adding a PRComponentDecoration's to the description. e,g. PUMyLogin-description (super description) componentDecorations: (Array with: PRComponentDecoration); preAnnotation: 'If you do not have an account *Register Here>command:PRRegisterUserCommand*'; yourself. best regards Keith From jason.johnson.081 at gmail.com Fri Aug 17 07:12:06 2007 From: jason.johnson.081 at gmail.com (Jason Johnson) Date: Fri, 17 Aug 2007 07:12:06 +0200 Subject: [Enh] Pier-ExternalLogin In-Reply-To: <46C4FE87.4070906@yahoo.co.uk> References: <46C4FE87.4070906@yahoo.co.uk> Message-ID: If you are making a framework for this part then one thing to consider is passwords. Most frameworks leave this up to the user, so the user does the simplest thing they can: they store plain text passwords. You can tell these sites because when you forget your password and press the password recovery link they send you your password directly (ironically, pgp.com does this too!). Obviously if the password is stored in plain text, then once your site is hacked all your user's passwords will be known. This wont make your users happy. So it would be nice to have some kind of password object or something that always does some kind of one-way encryption on the passwords (e.g. using MD5). It would be nice as well for something to do the whole password recovery stage as well, since this always works the same: user clicks a link, gets an email forwarded that points to a secure site where they can type in a new password, since passwords are not recoverable. Just something to think about. On 8/17/07, Keith Hodges wrote: > A small framework to enable external validation plugins to be added and > configured for Pier Login. > > I am using this with a plugin (not included yet) which validates the > user/pass against a MYSQL query, then it logs in this user using an > internally defined pier-user (or as I call it a "role") as a template. > > Finally I perform a second query to obtain a UserData record, and a > potential invalidation is performed on "any other criteria", such as an > account expiry date. > > You add your plugin by subclassing PUExternalValidationPlugin, and > select the plugin to use in the application configuration. > > Finally your plugin gets the opportunity to customize the Login Dialog's > descriptions. This enables you to customize the presentation of the > dialog if you add Magritte-ComponentDecoration 's. You should also be > able to add extra fields, though I leave this as an exercise for the reader. > > enjoy > > Keith > > _______________________________________________ > SmallWiki, Magritte, Pier and Related Tools ... > https://www.iam.unibe.ch/mailman/listinfo/smallwiki > From renggli at iam.unibe.ch Fri Aug 17 07:30:19 2007 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Fri, 17 Aug 2007 07:30:19 +0200 Subject: [Enh] Pier-ExternalLogin In-Reply-To: References: <46C4FE87.4070906@yahoo.co.uk> Message-ID: <6B94B21F-EE48-4930-8CF5-2D8FD4830404@iam.unibe.ch> > So it would be nice to have some kind of password > object or something that always does some kind of one-way encryption > on the passwords (e.g. using MD5). Pier never stored passwords as plain text. It is using SHA to generate a hash number that is then stored in the user object. > It would be nice as well for something to do the whole password > recovery stage as well, since this always works the same: user clicks > a link, gets an email forwarded that points to a secure site where > they can type in a new password, since passwords are not recoverable. That's easily doable (see for example SqueakSource), the only problem is that a Pier User doesn't include an e-mail address right now. Lukas -- Lukas Renggli http://www.lukas-renggli.ch From keith_hodges at yahoo.co.uk Fri Aug 17 07:33:14 2007 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Fri, 17 Aug 2007 06:33:14 +0100 Subject: [bug] Copying Component settings crosstalk Message-ID: <46C5331A.4040904@yahoo.co.uk> If you copy a component, it seems that the settings for both components are the same instance. There is no longer a ui to change the settings on the original (or is it the copy I am not sure which) Keith From renggli at iam.unibe.ch Fri Aug 17 08:07:23 2007 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Fri, 17 Aug 2007 08:07:23 +0200 Subject: [bug] Copying Component settings crosstalk In-Reply-To: <46C5331A.4040904@yahoo.co.uk> References: <46C5331A.4040904@yahoo.co.uk> Message-ID: <27FA426E-E1A5-42BA-9B15-B236CB218FB6@iam.unibe.ch> That's a bug then. See if this helps: Name: Pier-All-lr.228 Author: lr Time: 17 August 2007, 8:05:13 am UUID: 2768cfa3-da2b-4dd5-a0e9-875969788c60 Ancestors: Pier-All-lr.227 Dependencies: Pier-Model-lr.162, Pier-Tests-lr.73, Pier-Seaside-lr. 193, Pier-Security-lr.86, Pier-Blog-lr.58 - fixed several places where copying did not really copy all the necessary state (thanks to Keith Hodges) Lukas On 17 Aug 2007, at 07:33, Keith Hodges wrote: > If you copy a component, it seems that the settings for both > components > are the same instance. There is no longer a ui to change the > settings on > the original (or is it the copy I am not sure which) > > Keith > > _______________________________________________ > SmallWiki, Magritte, Pier and Related Tools ... > https://www.iam.unibe.ch/mailman/listinfo/smallwiki -- Lukas Renggli http://www.lukas-renggli.ch From keith_hodges at yahoo.co.uk Fri Aug 17 08:22:57 2007 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Fri, 17 Aug 2007 07:22:57 +0100 Subject: [Enh] Pier-ExternalLogin In-Reply-To: References: <46C4FE87.4070906@yahoo.co.uk> Message-ID: <46C53EC1.4030503@yahoo.co.uk> Jason Johnson wrote: > If you are making a framework for this part then one thing to consider > is passwords. Most frameworks leave this up to the user, so the user > does the simplest thing they can: they store plain text passwords. > You can tell these sites because when you forget your password and > press the password recovery link they send you your password directly > (ironically, pgp.com does this too!). > > Obviously if the password is stored in plain text, then once your site > is hacked all your user's passwords will be known. This wont make > your users happy. So it would be nice to have some kind of password > object or something that always does some kind of one-way encryption > on the passwords (e.g. using MD5). > > It would be nice as well for something to do the whole password > recovery stage as well, since this always works the same: user clicks > a link, gets an email forwarded that points to a secure site where > they can type in a new password, since passwords are not recoverable. > > Just something to think about. > > Sure! In the interests of minimal configurable components, this bit only provides the wiring to your supplied plugin. At present using MySql I am storing the passwords in the db PASSWORD("blah") format and querying them the same. However the Cryptography package is capable of generating hash so that plaintext does not need to be exchanged with the server. I haven't got to password reminding schemes, or supervised password resetting yet. I need at least one scheme soon. thanks for a "requirements statement" Keith From keith_hodges at yahoo.co.uk Fri Aug 17 09:21:54 2007 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Fri, 17 Aug 2007 08:21:54 +0100 Subject: [bug] Copying Component settings crosstalk In-Reply-To: <27FA426E-E1A5-42BA-9B15-B236CB218FB6@iam.unibe.ch> References: <46C5331A.4040904@yahoo.co.uk> <27FA426E-E1A5-42BA-9B15-B236CB218FB6@iam.unibe.ch> Message-ID: <46C54C92.8060600@yahoo.co.uk> Lukas Renggli wrote: > That's a bug then. See if this helps: > > This shows up that now if you set the settings for a component, then edit it and #save even with no changes the settings are reset. Keith From matthias.berth at googlemail.com Fri Aug 17 10:41:12 2007 From: matthias.berth at googlemail.com (Matthias Berth) Date: Fri, 17 Aug 2007 10:41:12 +0200 Subject: Documenting Pier... In-Reply-To: <763D4DA2-A6F6-481B-AA32-84E2847BEF6C@iam.unibe.ch> References: <9aa6ae270704170458w2642ed5fy668510c66f948632@mail.gmail.com> <763D4DA2-A6F6-481B-AA32-84E2847BEF6C@iam.unibe.ch> Message-ID: <9aa6ae270708170141p463f9685t6ec924309dcda000@mail.gmail.com> Hi, I wanted to add a FAQ to the pier wiki, but the anonymous login (anonymous/xopu) does not work for me - I get no link to edit the page. Back in April it worked. Please help... Matthias On 4/17/07, Lukas Renggli wrote: > > I'd like to collect some snippets of documentation about Pier. Would > > > > http://smallwiki.unibe.ch/smallwiki/pier/ > > > > be the right place to do so? I was not able to figure out a login to > > that wiki :-( > > The username/password is anonymous/xopu. > > Cheers, > Lukas > > -- > Lukas Renggli > http://www.lukas-renggli.ch > > > > _______________________________________________ > SmallWiki, Magritte, Pier and Related Tools ... > https://www.iam.unibe.ch/mailman/listinfo/smallwiki > From renggli at iam.unibe.ch Fri Aug 17 10:47:23 2007 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Fri, 17 Aug 2007 10:47:23 +0200 Subject: [bug] Copying Component settings crosstalk In-Reply-To: <46C54C92.8060600@yahoo.co.uk> References: <46C5331A.4040904@yahoo.co.uk> <27FA426E-E1A5-42BA-9B15-B236CB218FB6@iam.unibe.ch> <46C54C92.8060600@yahoo.co.uk> Message-ID: Ok, that's another unrelated problem. It is fixed in: Name: Pier-All-lr.229 Author: lr Time: 17 August 2007, 10:46:46 am UUID: aa712c72-6578-4f26-8d00-6d8b0d7795fc Ancestors: Pier-All-lr.228 Dependencies: Pier-Model-lr.162, Pier-Tests-lr.73, Pier-Seaside-lr. 194, Pier-Security-lr.86, Pier-Blog-lr.58 - fixes: "This shows up that now if you set the settings for a component, then edit it and #save even with no changes the settings are reset." (thanks to Keith Hodges) On 17 Aug 2007, at 09:21, Keith Hodges wrote: > Lukas Renggli wrote: >> That's a bug then. See if this helps: >> >> > This shows up that now if you set the settings for a component, then > edit it and #save even with no changes the settings are > reset. > > Keith > > _______________________________________________ > SmallWiki, Magritte, Pier and Related Tools ... > https://www.iam.unibe.ch/mailman/listinfo/smallwiki -- Lukas Renggli http://www.lukas-renggli.ch From renggli at iam.unibe.ch Fri Aug 17 10:48:36 2007 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Fri, 17 Aug 2007 10:48:36 +0200 Subject: Documenting Pier... In-Reply-To: <9aa6ae270708170141p463f9685t6ec924309dcda000@mail.gmail.com> References: <9aa6ae270704170458w2642ed5fy668510c66f948632@mail.gmail.com> <763D4DA2-A6F6-481B-AA32-84E2847BEF6C@iam.unibe.ch> <9aa6ae270708170141p463f9685t6ec924309dcda000@mail.gmail.com> Message-ID: Yes, we broke something when adding Google Analytics to SmallWiki. This is rather strange. I will have a look at it. Cheers, Lukas On 17 Aug 2007, at 10:41, Matthias Berth wrote: > Hi, > > I wanted to add a FAQ to the pier wiki, but the anonymous login > (anonymous/xopu) does not work for me - I get no link to edit the > page. Back in April it worked. > > Please help... > > Matthias > > On 4/17/07, Lukas Renggli wrote: >>> I'd like to collect some snippets of documentation about Pier. Would >>> >>> http://smallwiki.unibe.ch/smallwiki/pier/ >>> >>> be the right place to do so? I was not able to figure out a login to >>> that wiki :-( >> >> The username/password is anonymous/xopu. >> >> Cheers, >> Lukas >> >> -- >> Lukas Renggli >> http://www.lukas-renggli.ch >> >> >> >> _______________________________________________ >> SmallWiki, Magritte, Pier and Related Tools ... >> https://www.iam.unibe.ch/mailman/listinfo/smallwiki >> > > _______________________________________________ > SmallWiki, Magritte, Pier and Related Tools ... > https://www.iam.unibe.ch/mailman/listinfo/smallwiki -- Lukas Renggli http://www.lukas-renggli.ch From jason.johnson.081 at gmail.com Fri Aug 17 11:03:22 2007 From: jason.johnson.081 at gmail.com (Jason Johnson) Date: Fri, 17 Aug 2007 11:03:22 +0200 Subject: [Enh] Pier-ExternalLogin In-Reply-To: <6B94B21F-EE48-4930-8CF5-2D8FD4830404@iam.unibe.ch> References: <46C4FE87.4070906@yahoo.co.uk> <6B94B21F-EE48-4930-8CF5-2D8FD4830404@iam.unibe.ch> Message-ID: On 8/17/07, Lukas Renggli wrote: > > Pier never stored passwords as plain text. It is using SHA to > generate a hash number that is then stored in the user object. Ah good to know. Most things are nice to leave up to the user, but things like this are so fundamental that it's best if the default/template is already using good behavior. Nice to hear that Pier already is. In my mind that is a positive for Pier over many of these other CMSes. > That's easily doable (see for example SqueakSource), the only problem > is that a Pier User doesn't include an e-mail address right now. > > Lukas Good point. I was thinking more along the model point of view, something like: PPaswordManager>>changePassword self confirmUserWantsChangeElse: [ ^ self ]. passwordHash := self encrypt: (self askPassword). The model can be displayed by the different schemes, one way would be to use mail. Or maybe one view would do it directly in the site, not requiring email. Maybe we could even use the call:/answer: system to ask the password. That would probably work whether an HTTP get happens between, or an email conversation, no? :) From renggli at iam.unibe.ch Fri Aug 17 11:27:23 2007 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Fri, 17 Aug 2007 11:27:23 +0200 Subject: Documenting Pier... In-Reply-To: References: <9aa6ae270704170458w2642ed5fy668510c66f948632@mail.gmail.com> <763D4DA2-A6F6-481B-AA32-84E2847BEF6C@iam.unibe.ch> <9aa6ae270708170141p463f9685t6ec924309dcda000@mail.gmail.com> Message-ID: <099AA58F-73A3-4A27-983E-3A1CFAF5FB93@iam.unibe.ch> It should work again. The Google cookies triggered a subtle bug in the cookie parsing code of SmallWiki. Cheers, Lukas On 17 Aug 2007, at 10:48, Lukas Renggli wrote: > Yes, we broke something when adding Google Analytics to SmallWiki. > This is rather strange. I will have a look at it. > > Cheers, > Lukas > > On 17 Aug 2007, at 10:41, Matthias Berth wrote: > >> Hi, >> >> I wanted to add a FAQ to the pier wiki, but the anonymous login >> (anonymous/xopu) does not work for me - I get no link to edit the >> page. Back in April it worked. >> >> Please help... >> >> Matthias >> >> On 4/17/07, Lukas Renggli wrote: >>>> I'd like to collect some snippets of documentation about Pier. >>>> Would >>>> >>>> http://smallwiki.unibe.ch/smallwiki/pier/ >>>> >>>> be the right place to do so? I was not able to figure out a >>>> login to >>>> that wiki :-( >>> >>> The username/password is anonymous/xopu. >>> >>> Cheers, >>> Lukas >>> >>> -- >>> Lukas Renggli >>> http://www.lukas-renggli.ch >>> >>> >>> >>> _______________________________________________ >>> SmallWiki, Magritte, Pier and Related Tools ... >>> https://www.iam.unibe.ch/mailman/listinfo/smallwiki >>> >> >> _______________________________________________ >> SmallWiki, Magritte, Pier and Related Tools ... >> https://www.iam.unibe.ch/mailman/listinfo/smallwiki > > -- > Lukas Renggli > http://www.lukas-renggli.ch > > > _______________________________________________ > SmallWiki, Magritte, Pier and Related Tools ... > https://www.iam.unibe.ch/mailman/listinfo/smallwiki -- Lukas Renggli http://www.lukas-renggli.ch From renggli at iam.unibe.ch Fri Aug 17 11:32:42 2007 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Fri, 17 Aug 2007 11:32:42 +0200 Subject: [Enh] Pier-ExternalLogin In-Reply-To: References: <46C4FE87.4070906@yahoo.co.uk> <6B94B21F-EE48-4930-8CF5-2D8FD4830404@iam.unibe.ch> Message-ID: <94615F98-78B6-4035-9F11-3EC0DB21EA05@iam.unibe.ch> > Good point. I was thinking more along the model point of view, > something like: > > PPaswordManager>>changePassword > self confirmUserWantsChangeElse: [ ^ self ]. > passwordHash := self encrypt: (self askPassword). > > The model can be displayed by the different schemes, one way would be > to use mail. Or maybe one view would do it directly in the site, not > requiring email. > > Maybe we could even use the call:/answer: system to ask the password. > That would probably work whether an HTTP get happens between, or an > email conversation, no? :) What I do and what is very easy to do is to create a secret continuation key that does the login of the requested user. This URL is not displayed in the browser, but sent by mail. Clicking on the URL enables the user to login and to change its password. The potentially dangerous link eventually expires when Seaside cleans up the Session. Lukas -- Lukas Renggli http://www.lukas-renggli.ch From matthias.berth at googlemail.com Fri Aug 17 14:57:00 2007 From: matthias.berth at googlemail.com (Matthias Berth) Date: Fri, 17 Aug 2007 14:57:00 +0200 Subject: The best way to extend Pier's user model? In-Reply-To: References: <9aa6ae270708160503r2ef53d5dhd051a5ef9c7e5c9c@mail.gmail.com> Message-ID: <9aa6ae270708170557t1c497420kda4262309137186c@mail.gmail.com> Thanks a lot, Lukas. I've put a note on extending the user model in the FAQs on the wiki http://smallwiki.unibe.ch/smallwiki/pier/pierunixsecurity/ Matthias From cappadonza at hotmail.com Fri Aug 17 17:48:42 2007 From: cappadonza at hotmail.com (isaiah) Date: Fri, 17 Aug 2007 08:48:42 -0700 (PDT) Subject: Error in PUUsersWidget Message-ID: <12202036.post@talk.nabble.com> hey i got the latest version of pier, when i added a system users component to a page, when i click on any thing on the component which invokes a callback. i get the following error "WAComponentsNotFoundError: Components not found while processing callbacks: an Array(a PUUsersWidget)" . any ideas how to resolve this -- View this message in context: http://www.nabble.com/Error-in-PUUsersWidget-tf4286525.html#a12202036 Sent from the SmallWiki mailing list archive at Nabble.com. From matthias.berth at googlemail.com Fri Aug 17 18:20:58 2007 From: matthias.berth at googlemail.com (Matthias Berth) Date: Fri, 17 Aug 2007 18:20:58 +0200 Subject: Error in PUUsersWidget In-Reply-To: <12202036.post@talk.nabble.com> References: <12202036.post@talk.nabble.com> Message-ID: <9aa6ae270708170920o566cf314v354a6efd18dfd729@mail.gmail.com> Hello, I see the same problem, I have two images, the older one where it works, and the newer one with the problem: Working: Pier-Security-lr.85 Pier-Seaside-lr.185 Pier-Model-lr.158 Not working: Pier-Security-lr.86 Pier-Seaside-lr.192 Pier-Model-lr.161 I've had a look at the changes in Pier-Security, but I have no idea what could cause this problem. Cheers Matthias On 8/17/07, isaiah wrote: > > hey i got the latest version of pier, when i added a system users component > to a page, when i click on any thing on the component which invokes a > callback. i get the following error > "WAComponentsNotFoundError: Components not found while processing callbacks: > an Array(a PUUsersWidget)" . > any ideas how to resolve this > -- > View this message in context: http://www.nabble.com/Error-in-PUUsersWidget-tf4286525.html#a12202036 > Sent from the SmallWiki mailing list archive at Nabble.com. > > > _______________________________________________ > SmallWiki, Magritte, Pier and Related Tools ... > https://www.iam.unibe.ch/mailman/listinfo/smallwiki > From renggli at iam.unibe.ch Fri Aug 17 18:36:37 2007 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Fri, 17 Aug 2007 18:36:37 +0200 Subject: Error in PUUsersWidget In-Reply-To: <9aa6ae270708170920o566cf314v354a6efd18dfd729@mail.gmail.com> References: <12202036.post@talk.nabble.com> <9aa6ae270708170920o566cf314v354a6efd18dfd729@mail.gmail.com> Message-ID: <4E3D6D15-7F9E-4454-8598-2C6611B02806@iam.unibe.ch> The problem is fixed in: Name: Pier-All-lr.230 Author: lr Time: 17 August 2007, 6:35:49 pm UUID: 49baa1a6-da58-4dfb-8c98-ec9d1c2a521e Ancestors: Pier-All-lr.229 Dependencies: Pier-Model-lr.162, Pier-Tests-lr.73, Pier-Seaside-lr. 194, Pier-Security-lr.87, Pier-Blog-lr.58 - fixes: "when i added a system users component to a page, when i click on any thing on the component which invokes a callback. i get the following error 'Components not found while processing callbacks: an Array(a PUUsersWidget)'. " (thanks to isaiah) > I see the same problem, I have two images, the older one where it > works, and the newer one with the problem: > > Working: > Pier-Security-lr.85 > Pier-Seaside-lr.185 > Pier-Model-lr.158 > > Not working: > Pier-Security-lr.86 > Pier-Seaside-lr.192 > Pier-Model-lr.161 > > I've had a look at the changes in Pier-Security, but I have no idea > what could cause this problem. > > Cheers > > Matthias > > > On 8/17/07, isaiah wrote: >> >> hey i got the latest version of pier, when i added a system users >> component >> to a page, when i click on any thing on the component which invokes a >> callback. i get the following error >> "WAComponentsNotFoundError: Components not found while processing >> callbacks: >> an Array(a PUUsersWidget)" . >> any ideas how to resolve this >> -- >> View this message in context: http://www.nabble.com/Error-in- >> PUUsersWidget-tf4286525.html#a12202036 >> Sent from the SmallWiki mailing list archive at Nabble.com. >> >> >> _______________________________________________ >> SmallWiki, Magritte, Pier and Related Tools ... >> https://www.iam.unibe.ch/mailman/listinfo/smallwiki >> > > _______________________________________________ > SmallWiki, Magritte, Pier and Related Tools ... > https://www.iam.unibe.ch/mailman/listinfo/smallwiki -- Lukas Renggli http://www.lukas-renggli.ch -------------- next part -------------- A non-text attachment was scrubbed... Name: smime.p7s Type: application/pkcs7-signature Size: 3774 bytes Desc: not available Url : http://www.iam.unibe.ch/pipermail/smallwiki/attachments/20070817/2f2a8158/smime.bin From keith_hodges at yahoo.co.uk Sat Aug 18 04:02:39 2007 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Sat, 18 Aug 2007 03:02:39 +0100 Subject: [Enh] MACustomDescriptionBuilder Message-ID: <46C6533F.9070502@yahoo.co.uk> I wrote this because I want my data model classes to have one set of #description's to model their data structure and another set of #settings to model the view/filter settings that are available for each class. I dont know what the best way to achieve this with magritte would be, but I figured being able to have multiple sets of descriptions for different unrelated purposes could be very useful. As an implementation detail, it might be useful if the MADescriptionBuilder 'Cache' was a class instance var rather than a classVar. best regards Keith p.s. Lukas, I want to thank you for all of the great help you have provided, especially in the past few days. In http://mc.lukas-renggli.ch/pieraddons Name: Magritte-CustomBuilder-kph.1 Author: kph Time: 18 August 2007, 2:53:47 am UUID: dc2d465c-4d2d-11dc-b626-000a95edb42a Ancestors: - Variant of MADescriptionBuilder that is not tied to #description as a prefix. usage: (MCCustomDescriptionBuilder prefix: #settings) for: anObject Notes: Includes a performance enhancement to double speed of description building. (selectors of Object are ignored) before: [ 1000 timesRepeat: [MADescriptionBuilder default build: (ProductData) ] ] timeToRun. 21622 after: [ 1000 timesRepeat: [(MACustomDescriptionBuilder prefix: #description) build: (ProductData) ] ] timeToRun. 11075 From keith_hodges at yahoo.co.uk Sat Aug 18 05:20:43 2007 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Sat, 18 Aug 2007 04:20:43 +0100 Subject: How to have sub-settings In-Reply-To: <4E3D6D15-7F9E-4454-8598-2C6611B02806@iam.unibe.ch> References: <12202036.post@talk.nabble.com> <9aa6ae270708170920o566cf314v354a6efd18dfd729@mail.gmail.com> <4E3D6D15-7F9E-4454-8598-2C6611B02806@iam.unibe.ch> Message-ID: <46C6658B.2040506@yahoo.co.uk> I am trying to work out how to have a component in pier, one of whose settings select a class, and either other settings options are determined by which class is chosen, or the particular class is able to supply an editor (Internal or external) for the settings which relate to it. any inspiration would be appreciated thanks in advance Keith From cappadonza at hotmail.com Sat Aug 18 10:23:04 2007 From: cappadonza at hotmail.com (i p) Date: Sat, 18 Aug 2007 08:23:04 +0000 Subject: Error in PUUsersWidget Message-ID: thanks lukas i found that when i click on 'Groups' or 'superuser' column sort on the users. i get the following error. if i click on groups i get "MessageNotUnderstood: OrderedCollection>><=" and if i click on 'superUsers' column i get messageNotUnderstood: True>> <=. is it just a matter of adding <= to Boolean so it can respond to the binary message <= , for orderedcollection not sure any ideas ?> From: renggli at iam.unibe.ch> Subject: Re: Error in PUUsersWidget> Date: Fri, 17 Aug 2007 18:36:37 +0200> To: smallwiki at iam.unibe.ch> > The problem is fixed in:> > Name: Pier-All-lr.230> Author: lr> Time: 17 August 2007, 6:35:49 pm> UUID: 49baa1a6-da58-4dfb-8c98-ec9d1c2a521e> Ancestors: Pier-All-lr.229> Dependencies: Pier-Model-lr.162, Pier-Tests-lr.73, Pier-Seaside-lr. > 194, Pier-Security-lr.87, Pier-Blog-lr.58> > - fixes: "when i added a system users component to a page, when i > click on any thing on the component which invokes a callback. i get > the following error 'Components not found while processing callbacks: > an Array(a PUUsersWidget)'. " (thanks to isaiah)> > > I see the same problem, I have two images, the older one where it> > works, and the newer one with the problem:> >> > Working:> > Pier-Security-lr.85> > Pier-Seaside-lr.185> > Pier-Model-lr.158> >> > Not working:> > Pier-Security-lr.86> > Pier-Seaside-lr.192> > Pier-Model-lr.161> >> > I've had a look at the changes in Pier-Security, but I have no idea> > what could cause this problem.> >> > Cheers> >> > Matthias> >> >> > On 8/17/07, isaiah wrote:> >>> >> hey i got the latest version of pier, when i added a system users > >> component> >> to a page, when i click on any thing on the component which invokes a> >> callback. i get the following error> >> "WAComponentsNotFoundError: Components not found while processing > >> callbacks:> >> an Array(a PUUsersWidget)" .> >> any ideas how to resolve this> >> --> >> View this message in context: http://www.nabble.com/Error-in- > >> PUUsersWidget-tf4286525.html#a12202036> >> Sent from the SmallWiki mailing list archive at Nabble.com.> >>> >>> >> _______________________________________________> >> SmallWiki, Magritte, Pier and Related Tools ...> >> https://www.iam.unibe.ch/mailman/listinfo/smallwiki> >>> >> > _______________________________________________> > SmallWiki, Magritte, Pier and Related Tools ...> > https://www.iam.unibe.ch/mailman/listinfo/smallwiki> > -- > Lukas Renggli> http://www.lukas-renggli.ch> _________________________________________________________________ Explore the seven wonders of the world http://search.msn.com/results.aspx?q=7+wonders+world&mkt=en-US&form=QBRE -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.iam.unibe.ch/pipermail/smallwiki/attachments/20070818/4032f202/attachment-0001.html From renggli at iam.unibe.ch Sat Aug 18 11:03:24 2007 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Sat, 18 Aug 2007 11:03:24 +0200 Subject: How to have sub-settings In-Reply-To: <46C6658B.2040506@yahoo.co.uk> References: <12202036.post@talk.nabble.com> <9aa6ae270708170920o566cf314v354a6efd18dfd729@mail.gmail.com> <4E3D6D15-7F9E-4454-8598-2C6611B02806@iam.unibe.ch> <46C6658B.2040506@yahoo.co.uk> Message-ID: <9ABFE461-2577-451C-B756-D7989F9C2895@iam.unibe.ch> > I am trying to work out how to have a component in pier, one of whose > settings select a class, and either other settings options are > determined by which class is chosen, or the particular class is > able to > supply an editor (Internal or external) for the settings which > relate to it. This is something currently not supported by Magritte. That's why the add and edit step are separated. In case of PRComponent there are even 3 steps required: (1) choose to add a component, (2) select the kind of component class to add, and (3) setup the properties of the component class. Of course it would be nice to combine those steps into one, but as I said Magritte is not really designed to support that kind of functionality all automatic. There are many different kind of objects involved and one can think of many different ways how this interaction could happen, which makes it difficult to do meta- descriptions. What I suggest is that you override #asComponent in you command and put some glue code that builds different Magritte forms and displays them depending on the state of the other Magritte components. That works quite well and requires only little manual code to be written. Moreover it can be even combined with manual created forms, etc. Lukas -- Lukas Renggli http://www.lukas-renggli.ch -------------- next part -------------- A non-text attachment was scrubbed... Name: smime.p7s Type: application/pkcs7-signature Size: 3774 bytes Desc: not available Url : http://www.iam.unibe.ch/pipermail/smallwiki/attachments/20070818/c29854de/smime.bin From renggli at iam.unibe.ch Sat Aug 18 11:12:34 2007 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Sat, 18 Aug 2007 11:12:34 +0200 Subject: [Enh] MACustomDescriptionBuilder In-Reply-To: <46C6533F.9070502@yahoo.co.uk> References: <46C6533F.9070502@yahoo.co.uk> Message-ID: <9F41F462-979A-4C89-A0F8-DE129F06F910@iam.unibe.ch> > I wrote this because I want my data model classes to have one set of > #description's to model their data structure and another set of > #settings to model the view/filter settings that are available for > each class. Usually I tag my descriptions to do that, e.g. #beEditable, #beSearchable, #beSetting, etc. This allows to easily define (overlapping) sub-sets of all the existing descriptions. > I dont know what the best way to achieve this with magritte would be, > but I figured being able to have multiple sets of descriptions for > different unrelated purposes could be very useful. Yes, have a look at the senders and implementors in Pier of #beEditable, #isEditable, #beSearchable, #isSearchable, ... > As an implementation detail, it might be useful if the > MADescriptionBuilder 'Cache' was a class instance var rather than a > classVar. The idea was only to have one builder active in the image. Object>>#description uses this default builder. Subclasses might override #description to use a different one, if necessary. > Notes: Includes a performance enhancement to double speed of > description building. (selectors of Object are ignored) I have some projects that add descriptions to Object, so this optimization would break certain things. Lukas -- Lukas Renggli http://www.lukas-renggli.ch -------------- next part -------------- A non-text attachment was scrubbed... Name: smime.p7s Type: application/pkcs7-signature Size: 3774 bytes Desc: not available Url : http://www.iam.unibe.ch/pipermail/smallwiki/attachments/20070818/df678730/smime.bin From renggli at iam.unibe.ch Sat Aug 18 14:58:31 2007 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Sat, 18 Aug 2007 14:58:31 +0200 Subject: Error in PUUsersWidget In-Reply-To: References: Message-ID: > is it just a matter of adding <= to Boolean so it can respond to > the binary message <= , for orderedcollection not sure > any ideas ? Yes, that would help in this case, but I don't know if this is reasonable to do so. I will just commit a small change to Magritte that does not allow sorting for columns other than magnitues and strings by default. This should prevent these errors. Lukas -- Lukas Renggli http://www.lukas-renggli.ch -------------- next part -------------- A non-text attachment was scrubbed... Name: smime.p7s Type: application/pkcs7-signature Size: 3774 bytes Desc: not available Url : http://www.iam.unibe.ch/pipermail/smallwiki/attachments/20070818/2432417d/smime.bin From keith_hodges at yahoo.co.uk Sun Aug 19 02:24:40 2007 From: keith_hodges at yahoo.co.uk (Keith Hodges) Date: Sun, 19 Aug 2007 01:24:40 +0100 Subject: [Enh] MACustomDescriptionBuilder In-Reply-To: <9F41F462-979A-4C89-A0F8-DE129F06F910@iam.unibe.ch> References: <46C6533F.9070502@yahoo.co.uk> <9F41F462-979A-4C89-A0F8-DE129F06F910@iam.unibe.ch> Message-ID: <46C78DC8.3080900@yahoo.co.uk> > > I have some projects that add descriptions to Object, so this > optimization would break certain things. > > Lukas Following your mail I checked a couple of things, and found a significant bug in my optimization..... Putting a breakpoint in #build: when it calls allSelectors shows that it works through the selectors of the following chain of classes! PRComponent class PRStructure class PRDecorated class PRObject class Object class and also it continues to ProtoObject class Class ClassDescription Behavior Object ProtoObject If we are only looking at the class side then thats a lot of selectors which we are not interested in myPRComponent class allSelectors size 1075. (myPRComponent class allSelectorsBelow: Object) size. 577 (myPRComponent class allSelectorsBelow: ProtoObject class) size 50. before [ 1000 timesRepeat: [MADescriptionBuilder default build: (ProductData) ] ] timeToRun. 21622 after [ 1000 timesRepeat: [MADescriptionBuilder default build: (ProductData) ] ] timeToRun. 1717 best regards Keith From matthias.berth at googlemail.com Tue Aug 21 22:22:57 2007 From: matthias.berth at googlemail.com (Matthias Berth) Date: Tue, 21 Aug 2007 22:22:57 +0200 Subject: Magritte: adding a condition on the whole object in its description Message-ID: <9aa6ae270708211322g1398b0d6i7c8acaffd13c32e1@mail.gmail.com> Hello, I want to add a condition to a Magritte-described object that checks the whole object for consistency (and not just a single attribute). Is that possible? Example: Think about creating a workgroup from some of the users of your site. The workgroup has a manager. The condition is that the manager must be one of the members of the workgroup. I've tried to do this. I have two descriptions on the workgroup class side: one for the manager (saying that it can be any of the site's users) and one for the users (saying that this is a subset of all users). I can add a method #description to modify the standard description that is assembled from the description* methods on the class side. So I tried: Workgroup>>description ^super description addCondition: [:workgroup | workgroup users includes: workgroup manager] labelled: 'Manager must be a member of the workgroup'; yourself Alas, trying to edit an existing workgroup, I learned that the argument of the condition block is a MACheckedMemento, so I can't ask it for users. What would be the best way to have this check everytime the work group is edited? Or should I just write the #manager: method such that the condition will be satisfied automatically? Cheers Matthias PS: I want to say a big thank you, especially to Lukas, for the great answers on this list. I have learned something every time, and I was impressed when my questions on how to do something were answered with a patch. PPS: No, this email is not a request for a patch :-) -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.iam.unibe.ch/pipermail/smallwiki/attachments/20070821/f38aae4d/attachment.html From ramon.leon at allresnet.com Tue Aug 21 22:34:19 2007 From: ramon.leon at allresnet.com (Ramon Leon) Date: Tue, 21 Aug 2007 13:34:19 -0700 Subject: Magritte: adding a condition on the whole object in its description In-Reply-To: <9aa6ae270708211322g1398b0d6i7c8acaffd13c32e1@mail.gmail.com> References: <9aa6ae270708211322g1398b0d6i7c8acaffd13c32e1@mail.gmail.com> Message-ID: <002f01c7e432$a6b2c560$f000a8c0@hq.allresnet.com> > Subject: Magritte: adding a condition on the whole object in > its description > > Hello, > > I want to add a condition to a Magritte-described object that > checks the whole object for consistency (and not just a > single attribute). Is that possible? > > Example: Think about creating a workgroup from some of the > users of your site. The workgroup has a manager. The > condition is that the manager must be one of the members of > the workgroup. > > I've tried to do this. I have two descriptions on the > workgroup class side: one for the manager (saying that it can > be any of the site's users) and one for the users (saying > that this is a subset of all users). I can add a method > #description to modify the standard description that is > assembled from the description* methods on the class side. So > I tried: > > Workgroup>>description > ^super description > addCondition: [:workgroup | workgroup users includes: > workgroup manager] > labelled: 'Manager must be a member of the workgroup'; > yourself > > Alas, trying to edit an existing workgroup, I learned that > the argument of the condition block is a MACheckedMemento, so > I can't ask it for users. > > What would be the best way to have this check everytime the > work group is edited? Or should I just write the #manager: > method such that the condition will be satisfied automatically? > > Cheers > Matthias See http://onsmalltalk.com/programming/smalltalk/multiple-field-validation-rules -in-magritte/ to see how to get at the values you're looking for, very similar situation. Ramon Leon http://onsmalltalk.com From matthias.berth at googlemail.com Tue Aug 21 23:16:55 2007 From: matthias.berth at googlemail.com (Matthias Berth) Date: Tue, 21 Aug 2007 23:16:55 +0200 Subject: Magritte: adding a condition on the whole object in its description In-Reply-To: <002f01c7e432$a6b2c560$f000a8c0@hq.allresnet.com> References: <9aa6ae270708211322g1398b0d6i7c8acaffd13c32e1@mail.gmail.com> <002f01c7e432$a6b2c560$f000a8c0@hq.allresnet.com> Message-ID: <9aa6ae270708211416y6531396dh368bbe4c2de3f235@mail.gmail.com> Thanks, that looks like exactly what I need :-) Matthias On 8/21/07, Ramon Leon wrote: > > > Subject: Magritte: adding a condition on the whole object in > > its description > > > > Hello, > > > > I want to add a condition to a Magritte-described object that > > checks the whole object for consistency (and not just a > > single attribute). Is that possible? > > > > Example: Think about creating a workgroup from some of the > > users of your site. The workgroup has a manager. The > > condition is that the manager must be one of the members of > > the workgroup. > > > > I've tried to do this. I have two descriptions on the > > workgroup class side: one for the manager (saying that it can > > be any of the site's users) and one for the users (saying > > that this is a subset of all users). I can add a method > > #description to modify the standard description that is > > assembled from the description* methods on the class side. So > > I tried: > > > > Workgroup>>description > > ^super description > > addCondition: [:workgroup | workgroup users includes: > > workgroup manager] > > labelled: 'Manager must be a member of the workgroup'; > > yourself > > > > Alas, trying to edit an existing workgroup, I learned that > > the argument of the condition block is a MACheckedMemento, so > > I can't ask it for users. > > > > What would be the best way to have this check everytime the > > work group is edited? Or should I just write the #manager: > > method such that the condition will be satisfied automatically? > > > > Cheers > > Matthias > > See > > http://onsmalltalk.com/programming/smalltalk/multiple-field-validation-rules > -in-magritte/ to see how to get at the values you're looking for, very > similar situation. > > Ramon Leon > http://onsmalltalk.com > > > _______________________________________________ > SmallWiki, Magritte, Pier and Related Tools ... > https://www.iam.unibe.ch/mailman/listinfo/smallwiki > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.iam.unibe.ch/pipermail/smallwiki/attachments/20070821/fe4aac36/attachment.html From franzl at fjkonrad.de Thu Aug 23 14:35:59 2007 From: franzl at fjkonrad.de (Franz Josef) Date: Thu, 23 Aug 2007 14:35:59 +0200 Subject: Pier v. Plone In-Reply-To: References: <46C21A71.9020204@cyberhaus.us> <46C23065.9080702@moedae.com> <46C2D0C5.8020702@fjkonrad.de> <46C430E5.8060701@fjkonrad.de> Message-ID: <46CD7F2F.7010301@fjkonrad.de> >> - Full-text Searching - all the content is searchable even Word or >> OpenOffice documents and PDF files (with add ons under Linux also for >> Excel and PowerPoint and other file types). >> > > There is already a full-text search. It does not included uploaded > files though. If somebody would implement readers for those strange > binary formats, that would certainly be an easy thing to add to the > search results. > > Cheers, > Lukas > > Lukas, I've created a page on Swiki that shows how you can use extrnal converters to get the plain text out from various file formats like pdf, postscript, excel, word and powerpoint. There are also some small examples to evaluate. Perhaps this will help you or other Pier developer to implement a full-text search for some external file formats. Regards, Franz Josef From j.squeak at cyberhaus.us Fri Aug 24 00:20:12 2007 From: j.squeak at cyberhaus.us (Jimmie Houchin) Date: Thu, 23 Aug 2007 17:20:12 -0500 Subject: Magritte book Message-ID: <46CE081C.2040006@cyberhaus.us> I am reading Lukas book Magritte ? Meta-Described Web Application Development. I have tried to type in the code and run it. But it doesn't run. :( DateDescription selector: #birthday label: 'Birthday') between: (Date year: 1900) and: Date today; yourself. This is in the latest squeak-dev image. It complains that DateDescription doesn't exist and offers MADateDescription instead. Okay. But then #year: isn't a method in Date either. :( It would be nice if Pier/Magritte/Seaside had current documentation. Would it be possible, reasonable to put up an OO.org doc or some such of the original book so that it could be kept up to date by the community? I know this is asking a lot. But I also hate to ask Lukas to do all of the work by himself. I don't know exactly what would be the best process for community stewardship over material like this. But it would be nice if we had an excellent place to start. And I think this book is. It would be nice if it was current with the current favored images. If this isn't doable for whatever reason, I certainly respect Lukas' wishes concerning his material and authorship. Next best thing until a different book or such material came out would be an excellent errata page for this book. Lets make choosing Squeak/Seaside/Pier as easy as possible. Any way, some thoughts for consideration. Thanks. Jimmie From matthias.berth at googlemail.com Fri Aug 24 10:41:58 2007 From: matthias.berth at googlemail.com (Matthias Berth) Date: Fri, 24 Aug 2007 10:41:58 +0200 Subject: Magritte book In-Reply-To: <46CE081C.2040006@cyberhaus.us> References: <46CE081C.2040006@cyberhaus.us> Message-ID: <9aa6ae270708240141w10700309ndd683a288942751c@mail.gmail.com> I think that an "errata" or "comments" page is an excellent idea. How about a wiki page on http://smallwiki.unibe.ch/smallwiki/pier/ and a hint on http://smallwiki.unibe.ch/smallwiki/pier/pierfaq/ ? You can use anonymous/xopu to login. Cheers Matthias On 8/24/07, Jimmie Houchin wrote: > > I am reading Lukas book Magritte ? Meta-Described Web Application > Development. > > I have tried to type in the code and run it. > But it doesn't run. :( > > DateDescription selector: #birthday label: 'Birthday') > between: (Date year: 1900) and: Date today; > yourself. > > This is in the latest squeak-dev image. > > It complains that DateDescription doesn't exist and offers > MADateDescription instead. Okay. > > But then #year: isn't a method in Date either. :( > > It would be nice if Pier/Magritte/Seaside had current documentation. > > Would it be possible, reasonable to put up an OO.org doc or some such of > the original book so that it could be kept up to date by the community? > > I know this is asking a lot. But I also hate to ask Lukas to do all of > the work by himself. > > I don't know exactly what would be the best process for community > stewardship over material like this. But it would be nice if we had an > excellent place to start. And I think this book is. It would be nice if > it was current with the current favored images. > > If this isn't doable for whatever reason, I certainly respect Lukas' > wishes concerning his material and authorship. Next best thing until a > different book or such material came out would be an excellent errata > page for this book. > > Lets make choosing Squeak/Seaside/Pier as easy as possible. > > Any way, some thoughts for consideration. > > Thanks. > > Jimmie > > > > _______________________________________________ > SmallWiki, Magritte, Pier and Related Tools ... > https://www.iam.unibe.ch/mailman/listinfo/smallwiki > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.iam.unibe.ch/pipermail/smallwiki/attachments/20070824/20454489/attachment-0001.html From cappadonza at hotmail.com Fri Aug 24 10:57:52 2007 From: cappadonza at hotmail.com (i p) Date: Fri, 24 Aug 2007 08:57:52 +0000 Subject: Magritte book Message-ID: "Magritte ? Meta-Described Web ApplicationDevelopment" is not a book. but its Lukas's Masters degree thesis work. The thesis documents the the design and overall architecture of magritte, the benefits of magritte and what problems it solves, this is not going to be updated (i dont think ) as it is not inteded to be a book for magritte, but this document will give you a good understanding of the overall architecture and design decisions made in designing magritte . The wiki would be a good place to have up to date information and current documentation, up to date class names etc Date: Fri, 24 Aug 2007 10:41:58 +0200From: matthias.berth at googlemail.comTo: smallwiki at iam.unibe.chSubject: Re: Magritte bookI think that an "errata" or "comments" page is an excellent idea. How about a wiki page on http://smallwiki.unibe.ch/smallwiki/pier/ and a hint on http://smallwiki.unibe.ch/smallwiki/pier/pierfaq/ ? You can use anonymous/xopu to login.Cheers Matthias On 8/24/07, Jimmie Houchin wrote: I am reading Lukas book Magritte ? Meta-Described Web ApplicationDevelopment.I have tried to type in the code and run it.But it doesn't run. :(DateDescription selector: #birthday label: 'Birthday') between: (Date year: 1900) and: Date today; yourself.This is in the latest squeak-dev image.It complains that DateDescription doesn't exist and offersMADateDescription instead. Okay. But then #year: isn't a method in Date either. :(It would be nice if Pier/Magritte/Seaside had current documentation.Would it be possible, reasonable to put up an OO.org doc or some such ofthe original book so that it could be kept up to date by the community?I know this is asking a lot. But I also hate to ask Lukas to do all ofthe work by himself.I don't know exactly what would be the best process for community stewardship over material like this. But it would be nice if we had anexcellent place to start. And I think this book is. It would be nice ifit was current with the current favored images.If this isn't doable for whatever reason, I certainly respect Lukas' wishes concerning his material and authorship. Next best thing until adifferent book or such material came out would be an excellent erratapage for this book.Lets make choosing Squeak/Seaside/Pier as easy as possible. Any way, some thoughts for consideration.Thanks.Jimmie_______________________________________________SmallWiki, Magritte, Pier and Related Tools ...https://www.iam.unibe.ch/mailman/listinfo/smallwiki _________________________________________________________________ Discover the new Windows Vista http://search.msn.com/results.aspx?q=windows+vista&mkt=en-US&form=QBRE -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.iam.unibe.ch/pipermail/smallwiki/attachments/20070824/1bba079e/attachment.html From j.squeak at cyberhaus.us Fri Aug 24 14:47:12 2007 From: j.squeak at cyberhaus.us (Jimmie Houchin) Date: Fri, 24 Aug 2007 07:47:12 -0500 Subject: Magritte book In-Reply-To: References: Message-ID: <46CED350.3050500@cyberhaus.us> i p wrote: > > "Magritte ? Meta-Described Web Application > Development" is not a book. but its Lukas's Masters degree thesis work. > The thesis documents the the design and overall architecture of > magritte, the benefits of magritte and what problems it solves, this is > not going to be updated (i dont think ) as it is not inteded to be a > book for magritte, but this document will give you a good understanding > of the overall architecture and design decisions made in designing > magritte . > The wiki would be a good place to have up to date information and > current documentation, up to date class names etc [snip original message] Yes, you are technically correct. It is not a book technically. I thought it was his thesis, but missed inside where it said so. Nevertheless. It can provide an excellent foundation for such a book. It is being provided as documentation for Magritte. It would still be nice if this documentation was current. If Lukas wishes for this be to be left alone and remain a thesis and a historic artifact it can be so and with great respect to him for the work he put into his thesis and the value it currently provides. But over time it will diminish as documentation. In any living system if the documentation isn't also changing, then the documentation will at some point become a historic artifact of the program at a point in time. So the question still remains on whether this thesis can form the foundation of a documentation book or booklet which can and will remain current documentation of Magritte, Pier, etc? Or do we from the knowledge gained from all of the materials start from scratch to create such a work? His thesis will always be his thesis. That is a historical and documented fact. But if it is made available as the beginning of some versioned Magritte/Pier documentation then that document can be kept current with the state of Squeak, Seaside, Magritte, Pier. By versioned I mean it can have a version number which states the versions of Squeak, Seaside, Magritte, Pier that are used in its pages. Stale documentation always frustrates and hinders beginners and people exploring new technology. We need to enable the adoption of these tools. Not provide another excuse for passing them by and instead using "industry standard" and accepted tools which in many ways are less productive than the Squeak toolset. Any way just some thoughts. Jimmie From cappadonza at hotmail.com Fri Aug 24 14:58:22 2007 From: cappadonza at hotmail.com (i p) Date: Fri, 24 Aug 2007 12:58:22 +0000 Subject: Magritte book Message-ID: yeh thats a good point, it would be great if we could use the thesis as a foundation to create an up to date versioned Magritte/Pier documentation > Date: Fri, 24 Aug 2007 07:47:12 -0500> From: j.squeak at cyberhaus.us> To: smallwiki at iam.unibe.ch> Subject: Re: Magritte book> > i p wrote:> > > > "Magritte ? Meta-Described Web Application> > Development" is not a book. but its Lukas's Masters degree thesis work. > > The thesis documents the the design and overall architecture of > > magritte, the benefits of magritte and what problems it solves, this is > > not going to be updated (i dont think ) as it is not inteded to be a > > book for magritte, but this document will give you a good understanding > > of the overall architecture and design decisions made in designing > > magritte .> > The wiki would be a good place to have up to date information and > > current documentation, up to date class names etc> [snip original message]> > Yes, you are technically correct. It is not a book technically. I > thought it was his thesis, but missed inside where it said so.> > Nevertheless. It can provide an excellent foundation for such a book. It > is being provided as documentation for Magritte. It would still be nice > if this documentation was current. If Lukas wishes for this be to be > left alone and remain a thesis and a historic artifact it can be so and > with great respect to him for the work he put into his thesis and the > value it currently provides. But over time it will diminish as > documentation. In any living system if the documentation isn't also > changing, then the documentation will at some point become a historic > artifact of the program at a point in time.> > So the question still remains on whether this thesis can form the > foundation of a documentation book or booklet which can and will remain > current documentation of Magritte, Pier, etc? Or do we from the > knowledge gained from all of the materials start from scratch to create > such a work?> > His thesis will always be his thesis. That is a historical and > documented fact. But if it is made available as the beginning of some > versioned Magritte/Pier documentation then that document can be kept > current with the state of Squeak, Seaside, Magritte, Pier.> By versioned I mean it can have a version number which states the > versions of Squeak, Seaside, Magritte, Pier that are used in its pages.> > Stale documentation always frustrates and hinders beginners and people > exploring new technology. We need to enable the adoption of these tools. > Not provide another excuse for passing them by and instead using > "industry standard" and accepted tools which in many ways are less > productive than the Squeak toolset.> > Any way just some thoughts.> > Jimmie> > > > _______________________________________________> SmallWiki, Magritte, Pier and Related Tools ...> https://www.iam.unibe.ch/mailman/listinfo/smallwiki _________________________________________________________________ Discover the new Windows Vista http://search.msn.com/results.aspx?q=windows+vista&mkt=en-US&form=QBRE -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.iam.unibe.ch/pipermail/smallwiki/attachments/20070824/69d7e896/attachment.html From renggli at iam.unibe.ch Fri Aug 24 17:23:04 2007 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Fri, 24 Aug 2007 17:23:04 +0200 Subject: Pier v. Plone In-Reply-To: <46CD7F2F.7010301@fjkonrad.de> References: <46C21A71.9020204@cyberhaus.us> <46C23065.9080702@moedae.com> <46C2D0C5.8020702@fjkonrad.de> <46C430E5.8060701@fjkonrad.de> <46CD7F2F.7010301@fjkonrad.de> Message-ID: > I've created a page on Swiki that > shows how you can use extrnal converters to get the plain text out > from > various file formats like pdf, postscript, excel, word and powerpoint. > There are also some small examples to evaluate. Perhaps this will help > you or other Pier developer to implement a full-text search for some > external file formats. Thanks for writing down this summary. I am afraid that I don't have the time to work on this. Maybe a Google Summer of Code project? The stemming library is also interesting, but I am afraid that this only works for english sources? Maybe there are multilingual stemming libraries where we can just pipe the results from the converters? Lukas -- Lukas Renggli http://www.lukas-renggli.ch From dave at thedesignexperience.org Fri Aug 24 17:26:55 2007 From: dave at thedesignexperience.org (Dave Bauer) Date: Fri, 24 Aug 2007 11:26:55 -0400 Subject: Pier v. Plone In-Reply-To: References: <46C21A71.9020204@cyberhaus.us> <46C23065.9080702@moedae.com> <46C2D0C5.8020702@fjkonrad.de> <46C430E5.8060701@fjkonrad.de> <46CD7F2F.7010301@fjkonrad.de> Message-ID: <6c4e07720708240826rd645d1fybcba793b6bc1d098@mail.gmail.com> On 8/24/07, Lukas Renggli wrote: The stemming library is also > interesting, but I am afraid that this only works for english > sources? Maybe there are multilingual stemming libraries where we can > just pipe the results from the converters? Snowball can do stemming for multiple languages http://snowball.tartarus.org/ The PostgreSQL full text indexer tsearch2 uses it. Dave > > Lukas > > -- > Lukas Renggli > http://www.lukas-renggli.ch > > > _______________________________________________ > SmallWiki, Magritte, Pier and Related Tools ... > https://www.iam.unibe.ch/mailman/listinfo/smallwiki > -- Dave Bauer dave at solutiongrove.com http://www.solutiongrove.com From renggli at iam.unibe.ch Fri Aug 24 19:57:02 2007 From: renggli at iam.unibe.ch (Lukas Renggli) Date: Fri, 24 Aug 2007 19:57:02 +0200 Subject: Magritte book In-Reply-To: <46CE081C.2040006@cyberhaus.us> References: <46CE081C.2040006@cyberhaus.us> Message-ID: <08E42E90-CAD7-45EA-8E5C-26F181E0E922@iam.unibe.ch> > DateDescription selector: #birthday label: 'Birthday') > between: (Date year: 1900) and: Date today; > yourself. Mhh, yes there are several problems with this code: MADateDescription new selectorAccessor: #birthday; label: 'Birthday'; min: (Date year: 1900 day: 1); max: Date today; yourself > Would it be possible, reasonable to put up an OO.org doc or some > such of > the original book so that it could be kept up to date by the > community? What is this? The link doesn't work. > I know this is asking a lot. But I also hate to ask Lukas to do all of > the work by himself. I also thought about the need of updating the documentation, however I have to check with the University in what form this is possible. I will do that when I am back from ESUG. Ping me in case I forget. The sources are all in LaTeX. The documentation in the back is automatically built from the class and method comments, but I don't know if this is useful at all? > Yes, you are technically correct. It is not a book technically. I > thought it was his thesis, but missed inside where it said so. It tells so on the front page, but it is in German because of a strange requirement of the University. There is also a paper that is more recent (but less practical): http://www.iam.unibe.ch/~scg/cgi-bin/scgbib.cgi/abstract=yes?Reng07a I will present it at MODELS 2007 in Nashville. In case anybody feels like chatting about Magritte, Pier, Seaside, Smalltalk or programming in general don't hesitate to send a mail. Cheers, Lukas -- Lukas Renggli http://www.lukas-renggli.ch From j.squeak at cyberhaus.us Fri Aug 24 20:57:56 2007 From: j.squeak at cyberhaus.us (Jimmie Houchin) Date: Fri, 24 Aug 2007 13:57:56 -0500 Subject: Magritte book In-Reply-To: <08E42E90-CAD7-45EA-8E5C-26F181E0E922@iam.unibe.ch> References: <46CE081C.2040006@cyberhaus.us> <08E42E90-CAD7-45EA-8E5C-26F181E0E922@iam.unibe.ch> Message-ID: <46CF2A34.9060002@cyberhaus.us> Lukas Renggli wrote: >> DateDescription selector: #birthday label: 'Birthday') >> between: (Date year: 1900) and: Date today; >> yourself. > > Mhh, yes there are several problems with this code: > > MADateDescription new > selectorAccessor: #birthday; > label: 'Birthday'; > min: (Date year: 1900 day: 1); > max: Date today; > yourself > >> Would it be possible, reasonable to put up an OO.org doc >> or some such of the original book so that it could be >> kept up to date by the community? > > What is this? The link doesn't work. My apologies. It wasn't meant to be a link but rather to an OpenOffice.org word processing document. Which then would be http://www.openoffice.org but you probably already know that when I put it into proper context. >> I know this is asking a lot. But I also hate to ask Lukas to do all of >> the work by himself. > > I also thought about the need of updating the documentation, however > I have to check with the University in what form this is possible. I > will do that when I am back from ESUG. Ping me in case I forget. Super. That would be great. You put a lot of work into that. And I think it forms an excellent basis of understanding and philosophy behind Pier and its design. I would love see the Seaside/Pier community grow and prosper. Good docs can help tremendously. Poor docs can definitely hurt. > The sources are all in LaTeX. The documentation in the back is > automatically built from the class and method comments, but I don't > know if this is useful at all? Someone here may know how to use LaTeX sources. If not then we can attempt any number of things to extract the textual sources. In fact I just did a "select all" in Acrobat and copied the contents to a OO.org doc and it isn't perfect but it is very usable. It would require some reformatting and the images imported into the document. But it is definitely workable. What we would need are the images and licensing permissions from the copyright holders. So if you are wanting to proceed on something like this. You will need to release it under an appropriate license or your choosing. And if the University has copyrights also, they would also. You would then probably want to rename this document to something appropriate and then clean up some of the "thesis" type text inside and giving proper attribution to your original thesis as the foundation and origination of this document. Possibly, even providing a url to your original thesis. >> Yes, you are technically correct. It is not a book technically. I >> thought it was his thesis, but missed inside where it said so. > > It tells so on the front page, but it is in German because of a > strange requirement of the University. Yes. That scared me at first. I just printed out the document and then the Title page is in German. Uh oh. :) But then I turned the page. I could read that. ;) We USAmericans are a wimpy monolingual bunch. :) But in your Acknowledgments you also state this: Thanks for writing with me the two papers, [Duca05] and [Reng06b], which were an important point of reference for this master thesis. Which is what I missed. > There is also a paper that is more recent (but less practical): > > http://www.iam.unibe.ch/~scg/cgi-bin/scgbib.cgi/abstract=yes?Reng07a > > I will present it at MODELS 2007 in Nashville. In case anybody feels > like chatting about Magritte, Pier, Seaside, Smalltalk or programming > in general don't hesitate to send a mail. Thanks for the link. I'll definitely read it also. Anyway, enjoy ESUG. Jimmie From matthias.berth at googlemail.com Fri Aug 24 22:57:41 2007 From: matthias.berth at googlemail.com (Matthias Berth) Date: Fri, 24 Aug 2007 22:57:41 +0200 Subject: Magritte book In-Reply-To: <08E42E90-CAD7-45EA-8E5C-26F181E0E922@iam.unibe.ch> References: <46CE081C.2040006@cyberhaus.us> <08E42E90-CAD7-45EA-8E5C-26F181E0E922@iam.unibe.ch> Message-ID: <9aa6ae270708241357r5c3c052dq875be9793cbb6e8f@mail.gmail.com> Hi Lukas, interesting paper, I did not notice that I can add attributes to a pier page through the web. I'll try that and read up on the user extensibility of Magritte. There is one more thing: "As expected SmallWiki performed better with a cumulated search time of 2456 ms. In Pier the search took 8190 ms, so the meta-driven search is about 30% slower than the hard coded one." I guess you mean that the search in SmallWiki takes only 30% of the time it takes in Pier? Cheers Matthias PS: If you want to release the LaTeX source for your thesis, I could try the automated conversion to html. From there one would go to wiki markup, right? :-) > There is also a paper that is more recent (but less practical): > > http://www.iam.unibe.ch/~scg/cgi-bin/scgbib.cgi/abstract=yes?Reng07a > > I will present it at MODELS 2007 in Nashville. In case anybody feels > like chatting about Magritte, Pier, Seaside, Smalltalk or programming > in general don't hesitate to send a mail. From rbb at techgame.net Fri Aug 24 22:59:31 2007 From: rbb at techgame.net (Brian Brown) Date: Fri, 24 Aug 2007 14:59:31 -0600 Subject: Magritte book In-Reply-To: <46CF2A34.9060002@cyberhaus.us> References: <46CE081C.2040006@cyberhaus.us> <08E42E90-CAD7-45EA-8E5C-26F181E0E922@iam.unibe.ch> <46CF2A34.9060002@cyberhaus.us> Message-ID: <1CF77731-A4A1-470F-9455-AC6A9680E07D@techgame.net> On Aug 24, 2007, at 12:57 PM, Jimmie Houchin wrote: > > Someone here may know how to use LaTeX sources. If not then we can > attempt any number of things to extract the textual sources. > Well, we can certainly use LaTeX and then we could post the PDF, and if some wanted a more "word-processy" interface without a bunch of manual work, we could import it into LyX (www.lyx.org), which works quite well. My .02 cents. - Brian