WikiRender and links

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

WikiRender and links

Nicolas Petton
Hi,

WikiRender doesn't work by default, because #urlFor: (the comment says
it must be overriden) returns nil and #exist: and #allowed don't exist.

I think it would probably make sense to have a default implementation.

IMHO, the simplest is to have links like this:

[admin > admin.html] (link to http://website.com/admin.html)
[foo > bar/foo.html] (link to http://website.com/bar/foo.html)

#urlFor: simply becomes :

urlFor: aString
        ^'/', aString asLowercase

#exist: and #allowed: :

exist: aString
        ^self app site urlResolver allURLLinks keys
                contains: [:each | each = (self urlFor: aString)]

allowed: aString
        | observee app right |
        observee := self app site urlResolver allURLLinks at: (self urlFor:
aString) ifAbsent: [^true].
        app := observee app.
        right := self app site securityManager
                isUser: self app user allowedTo: (app class viewRightSymbolFor: #main)
                on: app class name.
        ^right

#allowed: is not perfect because of parameters (admin.html?view=login
for example) but I can work on it.

What do you think ?

Cheers,

Nicolas


--
Nicolas Petton
http://nico.bioskop.fr
             ___
           ooooooo
          OOOOOOOOO
         |Smalltalk|
          OOOOOOOOO
           ooooooo
            \   /
             [|]
--------------------------------
Ma cl? GPG est disponible ici :
http://pgp.mit.edu:11371/pks/lookup?op=get&search=0xE788C34D

-------------- section suivante --------------
Une pi?ce jointe non texte a ?t? nettoy?e...
Nom: non disponible
Type: application/pgp-signature
Taille: 189 octets
Desc: Ceci est une partie de message
        =?ISO-8859-1?Q?num=E9riquement?= =?ISO-8859-1?Q?_sign=E9e?=
Url: http://lists.aidaweb.si/pipermail/aida/attachments/20071106/c7f57bc6/attachment.sig 

Reply | Threaded
Open this post in threaded view
|

WikiRender and links

Janko Mivšek
Hi Nicolas,

It is my intention to open-source in Aida 6.0 a core of my commercial
CMS which use Wiki too and if you wait a bit more you can use this
infrastructure completely (with versioning etc.) I hope this will happen
soon, but at least to the end of year.

Janko

nicolas petton wrote:

> Hi,
>
> WikiRender doesn't work by default, because #urlFor: (the comment says
> it must be overriden) returns nil and #exist: and #allowed don't exist.
>
> I think it would probably make sense to have a default implementation.
>
> IMHO, the simplest is to have links like this:
>
> [admin > admin.html] (link to http://website.com/admin.html)
> [foo > bar/foo.html] (link to http://website.com/bar/foo.html)
>
> #urlFor: simply becomes :
>
> urlFor: aString
> ^'/', aString asLowercase
>
> #exist: and #allowed: :
>
> exist: aString
> ^self app site urlResolver allURLLinks keys
> contains: [:each | each = (self urlFor: aString)]
>
> allowed: aString
> | observee app right |
> observee := self app site urlResolver allURLLinks at: (self urlFor:
> aString) ifAbsent: [^true].
> app := observee app.
> right := self app site securityManager
> isUser: self app user allowedTo: (app class viewRightSymbolFor: #main)
> on: app class name.
> ^right
>
> #allowed: is not perfect because of parameters (admin.html?view=login
> for example) but I can work on it.
>
> What do you think ?
>
> Cheers,
>
> Nicolas
>
>
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> Aida mailing list
> Aida na aidaweb.si
> http://lists.aidaweb.si/mailman/listinfo/aida

--
Janko Miv?ek
AIDA/Web
Smalltalk Web Application Server
http://www.aidaweb.si

Reply | Threaded
Open this post in threaded view
|

WikiRender and links

Nicholas Moore
Interesting. Thats two Nic(h)olas's that you have interested in the
Wiki! If you need help testing, I should be able to help.

Nicholas

Janko Miv?ek wrote:

> Hi Nicolas,
>
> It is my intention to open-source in Aida 6.0 a core of my commercial
> CMS which use Wiki too and if you wait a bit more you can use this
> infrastructure completely (with versioning etc.) I hope this will happen
> soon, but at least to the end of year.
>
> Janko
>
> nicolas petton wrote:
>  
>> Hi,
>>
>> WikiRender doesn't work by default, because #urlFor: (the comment says
>> it must be overriden) returns nil and #exist: and #allowed don't exist.
>>
>> I think it would probably make sense to have a default implementation.
>>
>> IMHO, the simplest is to have links like this:
>>
>> [admin > admin.html] (link to http://website.com/admin.html)
>> [foo > bar/foo.html] (link to http://website.com/bar/foo.html)
>>
>> #urlFor: simply becomes :
>>
>> urlFor: aString
>> ^'/', aString asLowercase
>>
>> #exist: and #allowed: :
>>
>> exist: aString
>> ^self app site urlResolver allURLLinks keys
>> contains: [:each | each = (self urlFor: aString)]
>>
>> allowed: aString
>> | observee app right |
>> observee := self app site urlResolver allURLLinks at: (self urlFor:
>> aString) ifAbsent: [^true].
>> app := observee app.
>> right := self app site securityManager
>> isUser: self app user allowedTo: (app class viewRightSymbolFor: #main)
>> on: app class name.
>> ^right
>>
>> #allowed: is not perfect because of parameters (admin.html?view=login
>> for example) but I can work on it.
>>
>> What do you think ?
>>
>> Cheers,
>>
>> Nicolas
>>
>>
>>
>>
>> ------------------------------------------------------------------------
>>
>> _______________________________________________
>> Aida mailing list
>> Aida at aidaweb.si
>> http://lists.aidaweb.si/mailman/listinfo/aida
>>    
>
>  


-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.aidaweb.si/pipermail/aida/attachments/20071107/9754a223/attachment.htm 

Reply | Threaded
Open this post in threaded view
|

WikiRender and links

Nicolas Petton
In reply to this post by Janko Mivšek

Le mercredi 07 novembre 2007 ? 16:48 +0100, Janko Miv?ek a ?crit :
> Hi Nicolas,
>
> It is my intention to open-source in Aida 6.0 a core of my commercial
> CMS which use Wiki too and if you wait a bit more you can use this
> infrastructure completely (with versioning etc.)

Sounds very interesting ! I really need it in my blog engine, I can't
wait :)

> I hope this will happen
> soon, but at least to the end of year.
>
> Janko
>
> nicolas petton wrote:
> > Hi,
> >
> > WikiRender doesn't work by default, because #urlFor: (the comment says
> > it must be overriden) returns nil and #exist: and #allowed don't exist.
> >
> > I think it would probably make sense to have a default implementation.
> >
> > IMHO, the simplest is to have links like this:
> >
> > [admin > admin.html] (link to http://website.com/admin.html)
> > [foo > bar/foo.html] (link to http://website.com/bar/foo.html)
> >
> > #urlFor: simply becomes :
> >
> > urlFor: aString
> > ^'/', aString asLowercase
> >
> > #exist: and #allowed: :
> >
> > exist: aString
> > ^self app site urlResolver allURLLinks keys
> > contains: [:each | each = (self urlFor: aString)]
> >
> > allowed: aString
> > | observee app right |
> > observee := self app site urlResolver allURLLinks at: (self urlFor:
> > aString) ifAbsent: [^true].
> > app := observee app.
> > right := self app site securityManager
> > isUser: self app user allowedTo: (app class viewRightSymbolFor: #main)
> > on: app class name.
> > ^right
> >
> > #allowed: is not perfect because of parameters (admin.html?view=login
> > for example) but I can work on it.
> >
> > What do you think ?
> >
> > Cheers,
> >
> > Nicolas
> >
> >
> >
> >
> > ------------------------------------------------------------------------
> >
> > _______________________________________________
> > Aida mailing list
> > Aida at aidaweb.si
> > http://lists.aidaweb.si/mailman/listinfo/aida
>
--
Nicolas Petton
http://nico.bioskop.fr
             ___
           ooooooo
          OOOOOOOOO
         |Smalltalk|
          OOOOOOOOO
           ooooooo
            \   /
             [|]
--------------------------------
Ma cl? GPG est disponible ici :
http://pgp.mit.edu:11371/pks/lookup?op=get&search=0xE788C34D

-------------- section suivante --------------
Une pi?ce jointe non texte a ?t? nettoy?e...
Nom: non disponible
Type: application/pgp-signature
Taille: 189 octets
Desc: Ceci est une partie de message
        =?ISO-8859-1?Q?num=E9riquement?= =?ISO-8859-1?Q?_sign=E9e?=
Url: http://lists.aidaweb.si/pipermail/aida/attachments/20071107/3f218172/attachment.sig 

Reply | Threaded
Open this post in threaded view
|

WikiRender and links

Janko Mivšek
In reply to this post by Nicholas Moore
Nicholas Moore wrote:
> Interesting. Thats two Nic(h)olas's that you have interested in the
> Wiki! If you need help testing, I should be able to help.

Interesting indeed! But you can't help here much because all what is
needed is to separate stuff to packages for open-source and packages for
commercial part of BiArt (that's a name of CMS). And to ensure that open
part will stay as a base for commercial part. So, clever use of
extensions, overrides etc. And possibly in a portable way ...

What I would probably need is a help porting that to Squeak, so Nicolas
(without h :), you are welcome for help!

Janko

>
> Nicholas
>
> Janko Miv?ek wrote:
>> Hi Nicolas,
>>
>> It is my intention to open-source in Aida 6.0 a core of my commercial
>> CMS which use Wiki too and if you wait a bit more you can use this
>> infrastructure completely (with versioning etc.) I hope this will happen
>> soon, but at least to the end of year.
>>
>> Janko
>>
>> nicolas petton wrote:
>>  
>>> Hi,
>>>
>>> WikiRender doesn't work by default, because #urlFor: (the comment says
>>> it must be overriden) returns nil and #exist: and #allowed don't exist.
>>>
>>> I think it would probably make sense to have a default implementation.
>>>
>>> IMHO, the simplest is to have links like this:
>>>
>>> [admin > admin.html] (link to http://website.com/admin.html)
>>> [foo > bar/foo.html] (link to http://website.com/bar/foo.html)
>>>
>>> #urlFor: simply becomes :
>>>
>>> urlFor: aString
>>> ^'/', aString asLowercase
>>>
>>> #exist: and #allowed: :
>>>
>>> exist: aString
>>> ^self app site urlResolver allURLLinks keys
>>> contains: [:each | each = (self urlFor: aString)]
>>>
>>> allowed: aString
>>> | observee app right |
>>> observee := self app site urlResolver allURLLinks at: (self urlFor:
>>> aString) ifAbsent: [^true].
>>> app := observee app.
>>> right := self app site securityManager
>>> isUser: self app user allowedTo: (app class viewRightSymbolFor: #main)
>>> on: app class name.
>>> ^right
>>>
>>> #allowed: is not perfect because of parameters (admin.html?view=login
>>> for example) but I can work on it.
>>>
>>> What do you think ?
>>>
>>> Cheers,
>>>
>>> Nicolas
>>>
>>>
>>>
>>>
>>> ------------------------------------------------------------------------
>>>
>>> _______________________________________________
>>> Aida mailing list
>>> Aida na aidaweb.si
>>> http://lists.aidaweb.si/mailman/listinfo/aida
>>>    
>>
>>  
>
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> Aida mailing list
> Aida na aidaweb.si
> http://lists.aidaweb.si/mailman/listinfo/aida

--
Janko Miv?ek
AIDA/Web
Smalltalk Web Application Server
http://www.aidaweb.si

Reply | Threaded
Open this post in threaded view
|

WikiRender and links

Nicolas Petton

Le mercredi 07 novembre 2007 ? 17:35 +0100, Janko Miv?ek a ?crit :

> Nicholas Moore wrote:
> > Interesting. Thats two Nic(h)olas's that you have interested in the
> > Wiki! If you need help testing, I should be able to help.
>
> Interesting indeed! But you can't help here much because all what is
> needed is to separate stuff to packages for open-source and packages for
> commercial part of BiArt (that's a name of CMS). And to ensure that open
> part will stay as a base for commercial part. So, clever use of
> extensions, overrides etc. And possibly in a portable way ...
>
> What I would probably need is a help porting that to Squeak, so Nicolas
> (without h :), you are welcome for help!
I would be glad to help you. You can put your code on the repository we
talked about : http://mc.bioskop.fr/Aida

Cheers,

Nicolas

>
> Janko
>
> >
> > Nicholas
> >
> > Janko Miv?ek wrote:
> >> Hi Nicolas,
> >>
> >> It is my intention to open-source in Aida 6.0 a core of my commercial
> >> CMS which use Wiki too and if you wait a bit more you can use this
> >> infrastructure completely (with versioning etc.) I hope this will happen
> >> soon, but at least to the end of year.
> >>
> >> Janko
> >>
> >> nicolas petton wrote:
> >>  
> >>> Hi,
> >>>
> >>> WikiRender doesn't work by default, because #urlFor: (the comment says
> >>> it must be overriden) returns nil and #exist: and #allowed don't exist.
> >>>
> >>> I think it would probably make sense to have a default implementation.
> >>>
> >>> IMHO, the simplest is to have links like this:
> >>>
> >>> [admin > admin.html] (link to http://website.com/admin.html)
> >>> [foo > bar/foo.html] (link to http://website.com/bar/foo.html)
> >>>
> >>> #urlFor: simply becomes :
> >>>
> >>> urlFor: aString
> >>> ^'/', aString asLowercase
> >>>
> >>> #exist: and #allowed: :
> >>>
> >>> exist: aString
> >>> ^self app site urlResolver allURLLinks keys
> >>> contains: [:each | each = (self urlFor: aString)]
> >>>
> >>> allowed: aString
> >>> | observee app right |
> >>> observee := self app site urlResolver allURLLinks at: (self urlFor:
> >>> aString) ifAbsent: [^true].
> >>> app := observee app.
> >>> right := self app site securityManager
> >>> isUser: self app user allowedTo: (app class viewRightSymbolFor: #main)
> >>> on: app class name.
> >>> ^right
> >>>
> >>> #allowed: is not perfect because of parameters (admin.html?view=login
> >>> for example) but I can work on it.
> >>>
> >>> What do you think ?
> >>>
> >>> Cheers,
> >>>
> >>> Nicolas
> >>>
> >>>
> >>>
> >>>
> >>> ------------------------------------------------------------------------
> >>>
> >>> _______________________________________________
> >>> Aida mailing list
> >>> Aida at aidaweb.si
> >>> http://lists.aidaweb.si/mailman/listinfo/aida
> >>>    
> >>
> >>  
> >
> >
> >
> > ------------------------------------------------------------------------
> >
> > _______________________________________________
> > Aida mailing list
> > Aida at aidaweb.si
> > http://lists.aidaweb.si/mailman/listinfo/aida
>
--
Nicolas Petton
http://nico.bioskop.fr
             ___
           ooooooo
          OOOOOOOOO
         |Smalltalk|
          OOOOOOOOO
           ooooooo
            \   /
             [|]
--------------------------------
Ma cl? GPG est disponible ici :
http://pgp.mit.edu:11371/pks/lookup?op=get&search=0xE788C34D

-------------- section suivante --------------
Une pi?ce jointe non texte a ?t? nettoy?e...
Nom: non disponible
Type: application/pgp-signature
Taille: 189 octets
Desc: Ceci est une partie de message
        =?ISO-8859-1?Q?num=E9riquement?= =?ISO-8859-1?Q?_sign=E9e?=
Url: http://lists.aidaweb.si/pipermail/aida/attachments/20071107/d4bd8aab/attachment.sig