[Gambas-devel] New Gambas wiki

Sebastian Kulesz sebikul at ...176...
Sun Sep 30 01:22:31 CEST 2012


On Sat, Sep 29, 2012 at 6:22 PM, Benoît Minisini
<gambas at ...1...> wrote:
> To Sebastian:
>
> Some pages work, some other don't (for example 'Gambas object models').
> But I can't tell you why!
>
> Administration login is now useless as soon as you have session
> management. Just have a default administrator user.
>
> Where can I test the new markup syntax? How do you manage the
> compatibility between the old syntax and the new one?
>
> Maybe each page should have a boolean flag in the database : old syntax
> and new syntax. All new pages will use the new syntax by default. We
> should be able to switch between the old one and the new one with a
> checkbox.
>
> Did you think about a new look too?
>
> Tell us everything. :-)
>
> --
> Benoît Minisini
>
> ------------------------------------------------------------------------------
> How fast is your code?
> 3 out of 4 devs don\\\'t know how their code performs in production.
> Find out how slow your code is with AppDynamics Lite.
> http://ad.doubleclick.net/clk;262219672;13503038;z?
> http://info.appdynamics.com/FreeJavaPerformanceDownload.html
> _______________________________________________
> Gambas-devel mailing list
> Gambas-devel at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/gambas-devel

I couldn't do much work on the syntax because the current code is a
spaghetti. I had to add some patches to workaround some path issues,
but this meant some regressions in other parts of the code. As the CGI
script stops when it hits any kind of error, pages that can't be
parsed correctly are shown halved or blank, every case is different,
and without breakpoints it's really hard to debug (i had to do more
that 500 builds!).
The new syntax would be trivial to implement, the only hard part is to
write an script to convert the old one.

Where i need some help is when parsing the special commands. I
couldn't port the code that analyzes symbols, components and classes.

With the login system, i guess the administrator link can be hidden
except if the user has admin privileges :)

IMO, it would be better to convert the whole database at once. If we
do it on demand, taking into account the amount of pages the wiki has,
it will lead to an enormous amount of fragmentation, and making any
change to the syntax parser would be nearly impossible without
breaking stuff. It should also be easier to catch and fix possible
errors.

I thought about giving the wiki a new look, but i'm not a web
designer, my experience with HTML and CSS is really limited. But a
redesign with a more modern interface would be great!

The code is organized using an MVC design pattern with some global
modules that handle the db scheme, the path requested, and how the
page should be loaded.

Pages and users are handled both in the same way. There is a module
that provides helper functions and a class representing the properties
of each one.They make loading, reading and saving data really easy.

The template consists of a major header webpage, and tiny webpages
that contain a really small amount of code.

4 controllers handle the loading of a webpage depending on what the
user requested, and a main module does the bootstrapping and routing.
Languages and versions are stored inside the session object, so there
is no need to keep the long standing ?v3 in the links.

I will push the code tomorrow night once it's somewhat usable.
Hopefully, it may be used by others as a generic wiki system.

Thanks!




More information about the Devel mailing list