[dokuwiki] XMLRPC ideas

  • From: Michael Klier <chi@xxxxxxxxxxx>
  • To: dokuwiki@xxxxxxxxxxxxx
  • Date: Thu, 29 May 2008 21:45:38 +0200

Hi everyone,

I'd like to discuss some ideas I have about the XML-RPC interface. At the
moment it has IMHO one flaw which makes it rather difficult to create client
applications, namely page permissions. If you for example like to fetch a page
for editing you use rawPage(). This funciton returns the raw wiki Page as long
you have at least read access. The problem here is, that the client app
doesn't know if it has write access or not. The only way to find that out is
to use putPage() and see if it fails. The fact that a client knows nothing
about the ACLs also makes it hard to implement a xmlrpc fuse filesystem for
exmample.

I have an idea how to overcome that, but I'd like to hear other opinions on
this matter.

We could solve the problem if the listPages() function (which lists all
available wiki pages) would return the wiki pages along with their respective
permissions for the current user and if the rawPage() function (which returns
the raw wiki text) would return the permissions as well (I assume here that a
client app would use rawPage to also "create" new pages). To get the
functionality in the listPages() function one would have to duplicate and
slightly modify the ft_pageLookup() function found in inc/fulltext.php.

These two changes should be enough to allow fully functional client
applications. (except that uploading media isn't possible atm etc. etc. ;-)).

What do you think about it?

Best Regards,
    Chi

-- 
Michael Klier

www:    http://www.chimeric.de
jabber: chi@xxxxxxxxxxxxxxxxxx
key:    http://downloads.chimeric.de/chi.asc
key-id: 0x8308F551

Other related posts: