[Gambas-devel] New Gambas wiki

Sebastian Kulesz sebikul at ...176...
Sun Sep 30 22:55:33 CEST 2012


On Sat, Sep 29, 2012 at 8:54 PM, Sebastian Kulesz <sebikul at ...176...> wrote:
> On Sat, Sep 29, 2012 at 8:27 PM, Benoît Minisini
> <gambas at ...1...> wrote:
>> Le 30/09/2012 01:22, Sebastian Kulesz a écrit :
>>>
>>> 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.
>>
>> You're right. I will try to do the converter as soon as possible.
>>
>> As for special commands, I must think about it, because everything
>> should be rewritten to be compatible with the markup syntax.
>>
>>>
>>> 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!
>>
>> I mainly think about new interface features, like posting comments. The
>> good looking should be done only with CSS.
>>
>
> I thought about that too. Comments and a subscription system so that
> authors can be notified of changes to certain pages. Maybe we should
> follow the Wikimedia style and add a Discussions and Subscriptions tab
> to each page?
>
>>>
>>> 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.
>>
>> We must be allowed to specify the gambas version and the language in the
>> link, otherwise we can't post a link on a specific documentation for a
>> specific version and a specific language on the web!
>
> It is possible to do that, only that the data is stored in the session
> object and then the URL is cleaned ;) I did this so that search
> crawlers only detect one version of a webpage, instead of n*language +
> n*version. Is this ok?
>
>>
>> --
>> 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 have just uploaded the code. Here is the schema of the users table:

CREATE TABLE IF NOT EXISTS `users` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `sUser` varchar(300) NOT NULL,
  `sPass` varchar(300) NOT NULL,
  `sEmail` varchar(300) NOT NULL,
  `iType` int(11) NOT NULL DEFAULT '0',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 ;

If using apache, you need to use mod_rewrite, place this inside a
.htaccess file on the root folder of the server:

RewriteEngine on
RewriteCond $1 !^(cgi-bin)
RewriteRule ^(.*)$ /cgi-bin/gb.wiki.gambas/$1 [L]

Let me know what you think!

I will add a comments system on the next commit.




More information about the Devel mailing list