Content Management System in Seaside

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
14 messages Options
Reply | Threaded
Open this post in threaded view
|

Content Management System in Seaside

cnantais
I have been asked to build a small CMS for a client and would like to
develop it in the Seaside framework.

My question is: what's the best option for storing the pages in the
content management system (files, RDBMS, object db, etc)?

Here are some of the requirements/constraints:
-pages consist of meta data, title, html-tagged content
-no more than 250 pages will be stored
-pages must be searchable (search does not need to be lightning-fast)
-pages will be organized into a hierarchical structure of categories
and subcategories (no more than 3 levels deep).
-will be hosted on a VPS, so I can install whatever is necessary.
-traffic amounts to a few hundred page views per day.

Thanks in advance,

Chad
_______________________________________________
Seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
Reply | Threaded
Open this post in threaded view
|

Re: Content Management System in Seaside

garduino
Hi:

I'm developing a similar project, aimed to be used in Real Estate
business and, may be, some others (as car agencies and so).

My first customer is a small RE company, then I'm not worried about
the persistence, and will plan starting with the best I know: The
Image itself (using object serialization to "back up" my "data") as
I'm using in my project "Promoter".

When the need of a more elaborated persistence arise, I will evaluate
some real object strategy, as Magma by example, but not plan to use
RDBMs anymore :)

HTH.
gsa.



2006/2/9, Chad Nantais <[hidden email]>:

> I have been asked to build a small CMS for a client and would like to
> develop it in the Seaside framework.
>
> My question is: what's the best option for storing the pages in the
> content management system (files, RDBMS, object db, etc)?
>
> Here are some of the requirements/constraints:
> -pages consist of meta data, title, html-tagged content
> -no more than 250 pages will be stored
> -pages must be searchable (search does not need to be lightning-fast)
> -pages will be organized into a hierarchical structure of categories
> and subcategories (no more than 3 levels deep).
> -will be hosted on a VPS, so I can install whatever is necessary.
> -traffic amounts to a few hundred page views per day.
>
> Thanks in advance,
>
> Chad
> _______________________________________________
> Seaside mailing list
> [hidden email]
> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
>


--
Germán S. Arduino
http://www.arsol.biz
http://www.arsol.net
_______________________________________________
Seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
Reply | Threaded
Open this post in threaded view
|

Re: Content Management System in Seaside

Jason Rogers-4
In reply to this post by cnantais
That depends... Are you really interested in storing the pages, or
just the constructs of each page and where in the heirarchy it exists?

Out of curiosity, have you considered using Pier as the CMS itself?
If you are "allowed" to do that and it would work you might be able to
convince the Pier folks (Lukas Renggli and co.) to allow you to commit
to the repository.  That would save you some time and perhaps expense
-- which may translate into more profit. :)  IIRC, Pier has several
strategies for persistence/backups.

On 2/9/06, Chad Nantais <[hidden email]> wrote:

> I have been asked to build a small CMS for a client and would like to
> develop it in the Seaside framework.
>
> My question is: what's the best option for storing the pages in the
> content management system (files, RDBMS, object db, etc)?
>
> Here are some of the requirements/constraints:
> -pages consist of meta data, title, html-tagged content
> -no more than 250 pages will be stored
> -pages must be searchable (search does not need to be lightning-fast)
> -pages will be organized into a hierarchical structure of categories
> and subcategories (no more than 3 levels deep).
> -will be hosted on a VPS, so I can install whatever is necessary.
> -traffic amounts to a few hundred page views per day.
>
> Thanks in advance,
>
> Chad
> _______________________________________________
> Seaside mailing list
> [hidden email]
> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
>


--
Jason Rogers

"Where there is no vision, the people perish..."
    Proverbs 29:18
_______________________________________________
Seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
Reply | Threaded
Open this post in threaded view
|

Re: Content Management System in Seaside

Lukas Renggli
> Out of curiosity, have you considered using Pier as the CMS itself?
> If you are "allowed" to do that and it would work you might be able to
> convince the Pier folks (Lukas Renggli and co.) to allow you to commit
> to the repository.  That would save you some time and perhaps expense
> -- which may translate into more profit. :)  IIRC, Pier has several
> strategies for persistence/backups.

Yes, the requirements you list are exactly what Pier does. Pier is MIT
licensed, so you can basically do whatever you like, read the whole
license to see the details.

> -pages consist of meta data, title, html-tagged content

- The default is a wiki syntax, but you can easily remove that and
just put plain HTML. Title and metadata are supported.

> -no more than 250 pages will be stored

- Pier can handle much more.

> -pages must be searchable (search does not need to be lightning-fast)

- There are visitors that walk over the pages.

> -pages will be organized into a hierarchical structure of categories
> and subcategories (no more than 3 levels deep).

- Nesting is possible.

> -will be hosted on a VPS, so I can install whatever is necessary.

- Free Seasidehosting will be online soon ;-)

> -traffic amounts to a few hundred page views per day.

- Seaside applications can handle much more.

Cheers,
Lukas

--
Lukas Renggli
http://www.lukas-renggli.ch
_______________________________________________
Seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
Reply | Threaded
Open this post in threaded view
|

Re: Content Management System in Seaside

Yanni Chiu
In reply to this post by cnantais
Chad Nantais wrote:
> My question is: what's the best option for storing the pages in the
> content management system (files, RDBMS, object db, etc)?
>
> Here are some of the requirements/constraints:

Who will be updating the content? Users? Writer/editor? Developer?
How many people will do the updating? How frequently?

> -pages consist of meta data, title, html-tagged content

Full HTML content, or just a subset (i.e. bold, paragragh, etc.)?
If you allow full HTML, then wouldn't it be hard to maintain
a consistent site wide look (i.e. it makes it hard for the
CMS to manage the content.)

> -no more than 250 pages will be stored

250 * 20K/page (estimate) gives 5Mb. So you could easily
save all the pages in an image.

> -pages must be searchable (search does not need to be lightning-fast)
> -pages will be organized into a hierarchical structure of categories
> and subcategories (no more than 3 levels deep).
> -will be hosted on a VPS, so I can install whatever is necessary.
> -traffic amounts to a few hundred page views per day.

Assuming that users don't update the site, and a developer can
occasionally update the content supplied by writers (and the
web designer supplied the CSS), then a simple solution would
be to use a saved image. The search would take a bit of
work, but IIRC there was some work done a few years back
on searching mail in Scamper.

--
Yanni Chiu

_______________________________________________
Seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
Reply | Threaded
Open this post in threaded view
|

Re: Content Management System in Seaside

Chad Nantais-2
In reply to this post by Lukas Renggli
I'll install Pier and take it for a ride.  Not totally sure what it
is, so if you can send me a link to an overview or give me a briefing,
that would help save time.

Thanks.

Chad

On 2/9/06, Lukas Renggli <[hidden email]> wrote:

> > Out of curiosity, have you considered using Pier as the CMS itself?
> > If you are "allowed" to do that and it would work you might be able to
> > convince the Pier folks (Lukas Renggli and co.) to allow you to commit
> > to the repository.  That would save you some time and perhaps expense
> > -- which may translate into more profit. :)  IIRC, Pier has several
> > strategies for persistence/backups.
>
> Yes, the requirements you list are exactly what Pier does. Pier is MIT
> licensed, so you can basically do whatever you like, read the whole
> license to see the details.
>
> > -pages consist of meta data, title, html-tagged content
>
> - The default is a wiki syntax, but you can easily remove that and
> just put plain HTML. Title and metadata are supported.
>
> > -no more than 250 pages will be stored
>
> - Pier can handle much more.
>
> > -pages must be searchable (search does not need to be lightning-fast)
>
> - There are visitors that walk over the pages.
>
> > -pages will be organized into a hierarchical structure of categories
> > and subcategories (no more than 3 levels deep).
>
> - Nesting is possible.
>
> > -will be hosted on a VPS, so I can install whatever is necessary.
>
> - Free Seasidehosting will be online soon ;-)
>
> > -traffic amounts to a few hundred page views per day.
>
> - Seaside applications can handle much more.
>
> Cheers,
> Lukas
>
> --
> Lukas Renggli
> http://www.lukas-renggli.ch
> _______________________________________________
> Seaside mailing list
> [hidden email]
> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
>
_______________________________________________
Seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
Reply | Threaded
Open this post in threaded view
|

Re: Content Management System in Seaside

Lukas Renggli
> I'll install Pier and take it for a ride.  Not totally sure what it
> is, so if you can send me a link to an overview or give me a briefing,
> that would help save time.

Sure, I will forward you a paper we wrote for WikiSym in a private mail ...

Lukas

--
Lukas Renggli
http://www.lukas-renggli.ch
_______________________________________________
Seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
Reply | Threaded
Open this post in threaded view
|

Re: Re: Content Management System in Seaside

Chad Nantais-2
In reply to this post by Yanni Chiu
Staff members of the client will be updating content.
There will be about 5 members updating.
There will be about one page update/add per day.

Will be restricted to paragraph, header, bold, list, img and href tags.

Thanks for the lead re: Scamper.  I'll pick thru that code.

Chad

On 2/9/06, Yanni Chiu <[hidden email]> wrote:

> Chad Nantais wrote:
> > My question is: what's the best option for storing the pages in the
> > content management system (files, RDBMS, object db, etc)?
> >
> > Here are some of the requirements/constraints:
>
> Who will be updating the content? Users? Writer/editor? Developer?
> How many people will do the updating? How frequently?
>
> > -pages consist of meta data, title, html-tagged content
>
> Full HTML content, or just a subset (i.e. bold, paragragh, etc.)?
> If you allow full HTML, then wouldn't it be hard to maintain
> a consistent site wide look (i.e. it makes it hard for the
> CMS to manage the content.)
>
> > -no more than 250 pages will be stored
>
> 250 * 20K/page (estimate) gives 5Mb. So you could easily
> save all the pages in an image.
>
> > -pages must be searchable (search does not need to be lightning-fast)
> > -pages will be organized into a hierarchical structure of categories
> > and subcategories (no more than 3 levels deep).
> > -will be hosted on a VPS, so I can install whatever is necessary.
> > -traffic amounts to a few hundred page views per day.
>
> Assuming that users don't update the site, and a developer can
> occasionally update the content supplied by writers (and the
> web designer supplied the CSS), then a simple solution would
> be to use a saved image. The search would take a bit of
> work, but IIRC there was some work done a few years back
> on searching mail in Scamper.
>
> --
> Yanni Chiu
>
> _______________________________________________
> Seaside mailing list
> [hidden email]
> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
>
_______________________________________________
Seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
Reply | Threaded
Open this post in threaded view
|

Re: Content Management System in Seaside

Brad Fuller
In reply to this post by Lukas Renggli
Lukas Renggli wrote:
>> I'll install Pier and take it for a ride.  Not totally sure what it
>> is, so if you can send me a link to an overview or give me a briefing,
>> that would help save time.
>>    
>
> Sure, I will forward you a paper we wrote for WikiSym in a private mail ...
>
>  
if the paper is available, I sure'd like to read it!

brad

--

See Us At GDC 2006
<http://www.cmpevents.com/GD06/a.asp?option=C&V=11&SessID=1954>
*Sonaural Audio Studio
*(408) 799-6123  West San Jose
(408) 799-6124  Cambrian
Hear us online: www.Sonaural.com <http://www.sonaural.com/>
See me on O'Reilly <http://www.oreillynet.com/pub/au/2184>

_______________________________________________
Seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
Reply | Threaded
Open this post in threaded view
|

Re: Content Management System in Seaside

Yanni Chiu
In reply to this post by Chad Nantais-2
Chad Nantais wrote:
> Thanks for the lead re: Scamper.  I'll pick thru that code.

I hope that's not a false lead. But I definitely remember
a thread a year or two back on the squeak-dev list about
text search. There may even be a package on SqueakMap.

_______________________________________________
Seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
Reply | Threaded
Open this post in threaded view
|

Re: Content Management System in Seaside

JennyW-2
In reply to this post by Lukas Renggli
Lukas,

I saw the suggestion to use Pier as a CMS.  I downloaded Pier from
SqueakMap. I'm sure I didn't quite get it right, since some Report
sometimes results in an error (if I'm in a leaf node, I think), and
since clicking on Wiki prompts me to download the file (at least in
Firefox).  But what I saw looks like a good basis for a CMS. The only
thing I'd be concerned about, though, are the URLs. I realize that
Seaside by default has session info in the query string, but for a CMS,
this could be problematic.  What do you think about issues like
bookmarking and search engines? It's nice that URLs like:

http://localhost:8080/seaside/pier/Information/Introduction

work without the query string, and that they're consistent, but I'm
wondering in particular how a search engine would read the page (I would
guess this differs from search engine to search engine).

Thoughts?

Also, is there any sort of role-based security planned for Pier?

Thanks!

Jen

_______________________________________________
Seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
Reply | Threaded
Open this post in threaded view
|

Re: Content Management System in Seaside

Jason Rogers-4
BTW: I had the same problem with reports on leaf nodes.  I patched
PRReportView>>#buildReport with the folllowing code.  I'm sure it's
not the right thing to do, but it got me around the error very
quickly.  If I figure out what I should really do before someone else
I will report back.

buildReport
        ^ self structures isEmptyOrNil ifTrue: [
                (MAReport rows: (Array with: 'Error generating report'))
                        addColumn: (MAColumn new
                                selector: #yourself;
                                comment: '';
                                title: '';
                                yourself);
                        yourself]
                ifFalse: [MAReport rows: self structures description: self description].


On 2/9/06, jennyw <[hidden email]> wrote:

> Lukas,
>
> I saw the suggestion to use Pier as a CMS.  I downloaded Pier from
> SqueakMap. I'm sure I didn't quite get it right, since some Report
> sometimes results in an error (if I'm in a leaf node, I think), and
> since clicking on Wiki prompts me to download the file (at least in
> Firefox).  But what I saw looks like a good basis for a CMS. The only
> thing I'd be concerned about, though, are the URLs. I realize that
> Seaside by default has session info in the query string, but for a CMS,
> this could be problematic.  What do you think about issues like
> bookmarking and search engines? It's nice that URLs like:
>
> http://localhost:8080/seaside/pier/Information/Introduction
>
> work without the query string, and that they're consistent, but I'm
> wondering in particular how a search engine would read the page (I would
> guess this differs from search engine to search engine).
>
> Thoughts?
>
> Also, is there any sort of role-based security planned for Pier?
>
> Thanks!
>
> Jen
>
> _______________________________________________
> Seaside mailing list
> [hidden email]
> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
>


--
Jason Rogers

"Where there is no vision, the people perish..."
    Proverbs 29:18
_______________________________________________
Seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
Reply | Threaded
Open this post in threaded view
|

Re: Content Management System in Seaside

Lukas Renggli
In reply to this post by JennyW-2
Hi Jen,

> I saw the suggestion to use Pier as a CMS.  I downloaded Pier from
> SqueakMap. I'm sure I didn't quite get it right, since some Report
> sometimes results in an error (if I'm in a leaf node, I think), and
> since clicking on Wiki prompts me to download the file (at least in
> Firefox).  But what I saw looks like a good basis for a CMS.

- Reports: This was fixed some time ago. You should update to the
latest version using Monticello from

MCHttpRepository
        location: 'http://mc.lukas-renggli.ch/pier'
        user: ''
        password: ''

- Wiki-download: This is a feature, not a bug. It might be confusing,
but it should indeed offer to download the raw wiki-text of the page.

> thing I'd be concerned about, though, are the URLs. I realize that
> Seaside by default has session info in the query string, but for a CMS,
> this could be problematic.  What do you think about issues like
> bookmarking and search engines?

Bookmarking of the current page, and of all links within a page works
perfectly. If the session string is missing, simply a new session is
created. By going to the Seaside configuration application, you could
even tell Seaside to use cookies instead, what would reduce the size
of the URL.

> http://localhost:8080/seaside/pier/Information/Introduction
>
> work without the query string, and that they're consistent, but I'm
> wondering in particular how a search engine would read the page (I would
> guess this differs from search engine to search engine).
>
> Thoughts?

I don't know about the behaviour of search engines together with Pier,
but there are certainly solutions. I think the plugin called Sitemap
of Philippe Marshall does submit all a sitemap to google using a
special XML protocol. I've never tried it but it might be worth
checking out.

MCHttpRepository
        location: 'http://mc.lukas-renggli.ch/pieraddons'
        user: ''
        password: ''

> Also, is there any sort of role-based security planned for Pier?

There are two security frameworks available that can be loaded as plugin:

- Philippe Marshal build an ACL based security, that is around for
quite a while now and that provides a lot of nice features. It
provides sophisticated tools to manage users, roles, command sets and
access control lists. I don't know if it works with the latest version
of Pier, but you might get some information by browsing to
http://smallwiki.unibe.ch/advanceddesignlabs/admin/.

- I build a tiny security model being very similar to the one of Unix.
Every page gets a collection of executable commands for the owner, the
group and the others. There is a set of commands to (recursively)
change owner, group and modes (similar to chown, chgrp, and chmod).
Users and groups cannot be managed trough the web right now, but that
will be probably improved. There is no inheritance. It is very simple
from implementation point of view, only a couple of classes and it
also works perfectly with OmniBrowser. Load Pier-Security from
http://mc.lukas-renggli.ch/pier or from SqueakMap.

Cheers,
Lukas

--
Lukas Renggli
http://www.lukas-renggli.ch
_______________________________________________
Seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
Reply | Threaded
Open this post in threaded view
|

Re: Content Management System in Seaside

Philippe Marschall
> I don't know about the behaviour of search engines together with Pier,
> but there are certainly solutions. I think the plugin called Sitemap
> of Philippe Marshall does submit all a sitemap to google using a
> special XML protocol. I've never tried it but it might be worth
> checking out.

What is does is it creates a google sitemap. This is an xml file that
lists all the pages in pier with their last change date and url. This
sitemap can then be submitted to google.
This works thanks to Piers bookmarkable urls (static entry points).
The very latest version supports yahoo sitemaps too.

But google indices squeaksource.com and smallwiki 1 quite good too
although they don't have any of these helpers. So I don't know if it's
really needed.

> - Philippe Marshal build an ACL based security, that is around for
> quite a while now and that provides a lot of nice features. It
> provides sophisticated tools to manage users, roles, command sets and
> access control lists. I don't know if it works with the latest version
> of Pier

The very latest version should work fine with the very latest version
of Pier. It just hasn't seen much testing.

Cheers
Philippe
_______________________________________________
Seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside