create new tag
, view all tags
I am interested in using TWiki as an educational tool.

The site I am developing is http://didattica.dma.unifi.it/Plugins.WebTeach comments are welcome (the site is mostly in italian, however).

the goal is to allow students and teachers to exchange scientific informations.

I choose to adopt the following policy:

  • webs are generally writable only by a selected staff (teachers), but all pages can be annotated by everyone,
  • there is also the possibility of "private" webs, reserved to internal discussions among teachers and students in a given course (i.e. as "home" webs),
  • a page can contain mathematics and plots (I plan to implement also 3d images and maybe drawings, if TWikiDrawApplet will work with netscape),
  • each user should be able to choose the preferred language, so LocalizationIsNeeded
  • I'm planning to develop multiple-choice tests using the same approach

At present I'm using a simple authorization scheme based on Apache's rewrite rules (see userAuthorizationSchemes), but I'm working along the lines described in AuthenticationBasedOnGroups.

I have adopted AndreaSterbini's MultiLevelWikiWebs, and I think to further extend this concept, as explained in that page

I use latex and gnuplot (see MathematicsWiki).

I extended the wiki sintax to include words with spaces: the approach os different from WikiWordswithSpaces: in my approach an expression [[this_is_a_page]] becomes a file this_is_a_page.txt and is visualized without underscores (it may change in the future)

I have implemented a comment mechanism, so that a page can be commented in a threaded way, possibly by people with different authorization mechanisms. I attach a tar+gz file in which one can find

  • diff from the 09/09 beta release including AndreaSterbini's modifications (marked by #AS ... #/AS) and FrancoBagnoli's (marked as #FB tag ... #/FB, in which tag specifies the kind of modifications),
  • wikireply.pm modeled after wikisearch.pm
  • a new view.tmpltemplate
  • the gnuplot utility

-- FrancoBagnoli - 26 Sep 2000

You have some very nice extensions. Some are perfect examples of TWikiPlugins (LaTeX, gnuplot), some could eventually go into the TWikiProductionRelease (wikireply).

I need some more time to examine the code.

-- PeterThoeny - 26 Sep 2000

I attach to this document the "bin" and "templates" directories of WebTeach (and I'll keep the attachment up to date)

I changed extensively the basic (beta0909) version of twiki:

  • the body part of messages is cached in a directory /twiki/cache/web/topic (together with generated images). This is compulsory since latex2html is so slow to generate gif-formulas from latex source.
  • i'm working on a SLURP function wich would permit to include-transform a file (attachment) or an url from, say, latex to pdf, doc to html, fig to gif, ecc.
  • latex and gnuplot figures with a lot of enhancements (borders, captions, alignment, etc.)
  • multi-language support (choice of templates and text formatting rules for accented letters)
  • threaded discussions (now called Comments)

All modificatins are marked by #FB

-- FrancoBagnoli - 09 Oct 2000

I wrote a set of modules to handle authentication/authorizations in TWiki. They run under mod_perl.

TWikiPasswd: reads and cache informations about users: wikiname, loginname, password (crypted), ips These informations are held in the file $TWiki::passwdFilename (they should be removed from home pages, and registration should be modified to set those informations using this module) If one user open a connection connect from a machine whose ip is listed in the password file, authentication is not required.

For the moment I only use the username/password scheme, other options could be to use coockies or path-info

TWikiGroup: reads and cache the list of users belonging to one group (held in files like Main/AdminGroup). Used internally by TWikiGroups

TWikiGroups: reads and cache the list of users belonging to all groups (foung scanning files "*Group.txt" in the Main web)

TWikiPerm: handles authorization: it receives the user, the action required and the path to a web (or subweb) and/or topic. It the reads (and cache) /Main/TWikiPreferences, <web>/WebPreferences, [<subweb>/WebPreferences,..], [<topic>] looking for lines :

   (ALLOW|DENY) <action pattern> TO <list of users or groups>
   <!-- ALLOW ^view TO * -->              
   <!-- DENY (?!view) TO BillGates -->
which is a little paranoic (the simple pattern "view" can match "preview", the (?! ..) pattern is a negative lookahead, a simpler approach is
   <!-- ALLOW view TO * -->
   <!-- ALLOW * TO MyGroup AnotherGuy mybossloginname -->
   <!-- DENY * to * -->
since the first match stops the matching, this results in allowing view to everybody, everything to people in MyGroup and to AnotherGuy and myboss (I can use either the twikiname and the loginname), but denying editing/preview/attach, etc. to all other people.

Access to attachment and to cache is equivalent to action "view" on topic.

You do not need to put ALLOW/DENY on sgml comments, but I think this is the general use.

TWiki: it simply initializes the hashes for authentication and group management and defines a set of global variables (it will merge with wikicfg).


  1. ) install mod_perl
  2. ) make a link from /home/httpd/bin/TWiki*.pm to /etc/httpd/lib/perl/ (or where mod_perl moduli should stay).
  3. ) in /etc/httpd/conf add the line "Include conf/twiki.conf"
  4. ) see the included twiki.conf


  1. ) modify registration in order to allow peple to insert ip, change password, change loginnames, etc.
  2. ) Move wikicfg.pm, wiki.pm and view to mod_perl, using the above modules
  3. ) Provide an alternative implementation based on SQL connections for passwords, groups, etc.

-- FrancoBagnoli - 18 Oct 2000

Uploaded the lastest version (it may even work!)

-- FrancoBagnoli - 05 Nov 2000

Looks like an AddOn. Anyone know whether this has-been/is-going-to-be turned into a PlugIn? AddOn=TWiki.PlugIn - what's the difference, I ponder.

-- MartinCleaver - 12 Jul 2001

Wow, I really like the commenting functionality. People - go play on WebTeach. You have to register but it is good.

-- MartinCleaver - 12 Jul 2001

The reply functionality would be nice to have as plugin!

-- HansDonner - 12 Aug 2001

Topic attachments
I Attachment History Action Size Date Who Comment
Unknown file formatgz reply.tar.gz   manage 8.2 K 2000-09-26 - 10:56 FrancoBagnoli threaded comments and more
Unknown file formatgz webteach.tar.gz   manage 100.1 K 2000-11-05 - 08:38 FrancoBagnoli bin and templates from webteach (w authentication)
Edit | Attach | Watch | Print version | History: r11 < r10 < r9 < r8 < r7 | Backlinks | Raw View | Raw edit | More topic actions
Topic revision: r11 - 2001-09-28 - MikeMannix
  • Learn about TWiki  
  • Download TWiki
This site is powered by the TWiki collaboration platform Powered by Perl Hosted by OICcam.com Ideas, requests, problems regarding TWiki? Send feedback. Ask community in the support forum.
Copyright © 1999-2017 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.