We have a Drupal 4.4.0 installed as it comes out of the box that fulfills 50% of our needs. The other 50% would we fulfilled by a wiki system with

- revision control system and possibility of undo changes
- file upload capabilities
- categories (takonomy) for pages
- simple for users not used to wikies (i.e. TWiki is great but hard to start with)
- simple to install and preferrably PHP based to ease integration with Drupal (i.e. MediaWiki is great but too big boy for our needs)
- a way to store data that makes not too difficult to migrate to another wiki system if needed (i.e. because it has grown so much).

Of course a wiki module for Drupal doing all this would be the perfect solution, having the users management, search and templates integrated. But we haven't been able to find much details about the current Wiki module. Is it able to match these requirements? We have also concerns about the filtering of [[title links with brakets]] combined with big amounts of wiki pages/nodes (say 3.000). Would they make the Drupal system too slow?

Otherwise we should go for alternatives such as Moin, PmWiki, ErfurtWiki, UseMod...

Comments

mosquito’s picture

I actually haven't had a chance to check out the Wiki module associated with Drupal 4.4.0 yet to know what the newest Wiki module supports. In answer to the bulk of your question though, I think overall Drupal may be your answer, though they won't all be in one Wiki module, for that would work counter to the module philosophy.

The base drupal install supports revision control with rollback. You can install a module for file upload. I consider data stored in a MySQL database somewhat easy to migrate. As far as the Wiki module goes, all you really need to figure out is what Wiki syntax it supports.

To figure that out, you can look at the Wiki module help page of people that have installed the Wiki module, for example, my installation. Realize that my installation is still 4.3.2 and that I had to customize the Wiki module to support table.

Regards,
-z

qgil’s picture

I've sent an email to George Fairbanks since he had been working a bit wit the Wiki module. This is his answer, just in case anybody else find it useful.

The idea of wiki is not yet well integrated into Drupal, at least as of the 4.3.x version. A few of the modules support content in multiple formats (PHP, HTML, wikitext, ...) but others do not, including the blog module. Owen's hacks to the wiki module improve it and fix many bugs but in the end are still hacks.

I haven't been pushing on this because I think the main contributors now know there's a desire to have multiple markup languages but this may have to wait for a major Drupal release since it impacts the DB schema non-trivially.

If you feel stuck between CMS'es, join the club. I think most people are only partly happy with the alternatives which is why so many little CMS projects are around.

I was running a wiki and reasonably happy except that it didn't let me control content by login (eg let Joe edit this page but not other people). Now that I'm using Drupal I still can't do per-user, per-page permissions. Plone lets you do all this but is relatively heavyweight and at times shows through it's Zope layer, making administration hard.

Good luck choosing.

-George

The fact is that I'm still not sure wether to choose or not the Wiki module.

One more question in terms of simplicity of use: is it possible with the wiki module to create links to pages that still don't exist but users that click them are able to create it. I mean the typical wiki thing "This page doesn't exist yet, click edit to create it". Or something like that.

alaa’s picture

using 4.4 here with wiki module.

it is possible to create new pages but it adds them as blog pages, haven't explored the possibility of changing this yet.

----
http://www.manalaa.net

dausha’s picture

Just go into the wiki.module, find instances of 'blog' and replace with 'page'. The only instance is line 276. I tested this and it works.

I wish we had options of several different wiki syntax and an ability to customize one ourselves.

chadlupkes’s picture

It looks like the Wiki module simply allows people to use wiki formatting, but does not enable people to edit the pages. I'm hoping someone will continue to work on this. I do not have the skill to do it myself.

rvireday’s picture

Before delving into the depths, let me specify kind of what I would like a bit.

A simple VC schema, that lets me rollback at least the DB nodes, maybe establish baselines, and see the diffs.

e.g.
node/42 - plain node
node/42@@/3
node/42@@/LATEST or node/42/version/3 or node/42/version/0

You might guess I have a bias with ClearCase, which lets you access files with this sort of syntax too. Simple syntax is critical.

Things to consider are:
- How to diff revisions
- Admins should specify number of versions of a node to store
- All changes, including attributes
- Baseline revs - snapshots of the current DB state (doesn't that exist already?)

I don't want a Wiki. I want it available in Drupal, for Content Management systems and just being able to roll back when somebody makes a boo-boo.

moshe weitzman’s picture

how does this differ from the node system's current revision system? it offers rollback and nice urls too.

straider’s picture

I'm a member of a small team, 5 people, that are hard re-coding a huge legacy application and we required these features:
* easy, simple and pratical markup language.
* easy, simple and fast way of linking pages, internally and externally to the site.
* fast and pratical way of categorizing pages in groups.
* fast way of creating new pages.

These were joined together before evaluating what sort of web application the team could deploy to start documenting the technical aspects of reverse engineering the legacy code, solve bugs and issues in the meantime and start updating an already too outdated manual, in a collaborative manner.

The Wiki concept added the revision control to the list of the features, and after evaluating several GPL PHP-based WikiEngines we settled between two: PmWiki and DokuWiki. DokuWiki was the choice, for several reasons: adds code syntax highlight, has editing conflict detection and uses access control lists that enables us to control who has permissions/rights to each group or page. We're very satisfied with it.

Then I started evaluating CMF/CMS that have WikiMarkup modules, for no special reason besides curiosity. I end up with two: Drupal and TextPattern. I just recently deployed Drupal and started playing with it, I haven't really followed-up through the wiki.module.

This all to say that I consider a WikiMarkup module very useful, for the success of most CMS, and I specially like DokuWiki syntax because it's so easy to pickup, use it and be productive. This is not a very-biased comment, simple goes to show the opinion of someone that is very used to using WikiEngines by now.

DokuWiki uses Raw Text Files, and anyone can see the content of those files through a regular text editor. This just to say that the visual differences between the content formatted on the HTML Browser and the content in raw-format on the Text Editor nearly have the same user-friendly aspect: easy to read, emphasizes content without adding "markup syntax noise" and allows fast editing.

How about integrating the DokuWiki parser in the wiki.module, and make it available to nearly all TextArea fields of Drupal? Not for the purpose of making it yet another WikiEngine, but because it's really more pratical to use a simple GUI Editor with a parser that understands WikiMarkup and always outputs valid XHTML.

IMHO, anyone that uses a WikiEngine to produce content and also uses a CMS to manage an enterprise website really understands the differencs between both approaches to content editing.

URL: http://www.splitbrain.org/dokuwiki/wiki:dokuwiki.

mosquito’s picture

http://drupal.org/node/14375

Just submitted this "patch." Though it doesn't directly address the DocuWiki request, I think it might offer a baseline to incorporate support for DocuWiki formatting.

~mosquito.

sire’s picture

use of special export format of mediawiki which offers xml output, might be useful to import from wikipedia where needed

example:
http://en.wikipedia.org/wiki/Special:Export/Train

jsloan’s picture

IMHO, anyone that uses a WikiEngine to produce content and also uses a CMS to manage an enterprise website really understands the differencs between both approaches to content editing.

This is an excellent point!

Within our Intranet we choose the appropriate tool for the job. Drupal was selected for departmental CMS, phpESP for surveys, we are evaluating Moodle for our education course management system(currently we use WebCT), and now I am reviewing wikis - Dokuwiki is the leading candidate at this point.

I did not have to settle for a "one-size-fits-all" so my criteria is best of breed and extensibility via web services(RSS as the core service). So I don't have to compromise purpose. I try to keep it simple and let the tools comunicate.

My intention is for the wikis to be the source of our group documentation and project papers. Then, when appropriate, wiki content will be exported to the CMS. Subsequent changes made in the wiki will be refreshed in the CMS. That way we retain the functionality of the wiki(collaboration, edit history, diffs) with the organizing and publishing strength of Drupal.

The final piece of my content stack will be blogging software. Pivot is where I'm leaning at the moment.

Any comments and suggestions are welcome.

straider’s picture

jsloan,

Someone has worked on a WordPress plugin that accepts content from a DokuWiki site and publishes it in a WordPress driven blog site. You should consider using WordPress, which requires a database engine to store posts, against Pivot, which follows DokuWiki's approach of not using a relational database.

At this point I'm considering using a 3-step content-editing process:
1. Create and Edit content on a DokuWiki-driven site.
2. Export DokuWiki content in HTML format (Copy)
3. Insert exported content in HTML format into Drupal's Create Content area (Paste).

I'm still using Drupal's revision mechanism because sometimes it's faster to edit content through Drupal Content area rather than using the WikiSite. For example, when fixing a typo. The WikiSite is meant more for content creation/publishing and major content editing. Everything else works fine, specially if Quicktags module is enabled.

I haven't thought about using RSS or XML-RPC to "merge" content from one place into the other, so that's a good idea that I must follow through. Thanks for sharing it.

jsloan’s picture

Thanks for the WordPress recommendation and the tip on the plugin. I began my review of WordPress this weekend so your post is timely.

In the past I've used RDF and even NITF(NewsXML) to integrate content. But lately I've been looking at using WSRP for content sharing among some of our applications. But I've not found a PHP implementation, it seems to stay in the Java / .Net world... if anyone knows of a project, please let me know.

I will be following your proposed 3 step process, but web services will replace the copy-n-paste. Speaking of copy-n-paste; I did come across a very nice macro for Open Office Writer that will transform a document into wiki format for Dokuwiki. This puts the editing in a very user/desktop friendly environment that may help "jump-start" a migration from documents to wiki.(then to Drupal!)
see: http://applications.linux.com/print.pl?sid=05/01/10/232235

straider’s picture

jsloan,

Good catch on that one, together with a good idea about "pratical" content-editing.

Where can I find more information about WSRP?

Thanks.

jsloan’s picture

An very nice intro from IBM Developerworks

History with references at Cover Pages

Jaime Chavarriaga gave a presentation titled "WSRP Portlets implementation in PHP" at the International PHP Conference 2004 - I didn't attend and I can't find any reference to the presentation, if any one has info on this please let me know.

... have fun!

Cyrus-1’s picture

JSloan,
Just wanted to let you know I use pivot on VisionDemocracy.com and I've been VERY please with it.

Cyrus
DailyBlue.org

czarphanguye’s picture

In this brief blog entry I'll explain how to install dokuwiki with drupal authentication.

So you have Drupal installed and your user account already established. Next install dokuwiki. Once that's done we now append the rewrite prefs for the clean .htaccess style clean-urls. Add to /etc/httpd/conf/httpd.conf (assumes directory = /var/www/html/wiki and Drupal is installed at /var/www/html/*). Read more...