Leveraging existing api modules from something like postnuke

Leveraging existing api modules from something like postnuke

per Steven Williams -
Nombre de respostes: 3

hi, all:

I wanted to throw something out to the moodle developer community for comment: I have been an avid user of postnuke (and, before that, phpnuke) as a content repository. We use it extensively for http://www.glo.org which is a outreach arm of international studies programs at UCLA, USC and a few other university partners.

When we happened upon moodle and started using it for some of our K-12 partners, we noticed that there were more than a few design parallels with the postnuke/phpnuke programming structure. [We also noticed, gleefully, vast improvements over such features as user authentication and such.] We noticed that Martin and colleagues have taken steps to integrate moodle's authentication structure with LDAP as well as with postnuke itself leading me to wonder:

Is there currently any thought about using postnuke's api structure so that modules and blocks created for it could be leveraged into a moodle environment, and vice versa? [We're partial to postnuke since we currently use it, but also because we believe it has a sounder api structure from which developers design their modules and blocks.] For example, we love the ability to bring XML/RSS newsfeeds into postnuke which has a native import structure that allows these feeds to be dropped into a block format. [Actually, the XML/RSS feed is part of a module called *blocks*]. Another example, gallery [see http://gallery.menalto.com] is a stand alone program that easily becomes a beautiful postnuke module with a couple of simple tweaks.

There are modules for link collections, for weather, for an array of web tools that would have a number of possible uses in an edu environment. [If you'd like to see the number and depth of module development, go to: http://mods.postnuke.com.]

QUESTION: Is there anyone who can comment on the possible integration of a postnuke api module structure with moodle? If so, can you comment on how difficult it might be to build this integration into moodle so that postnuke modules could be easily integrated.

best,

steve
**************************
Steven C. Williams, PhD
Los Angeles, CA, USA
http://www.glo.org
http://learn.glo.org
**************************

 

Mitjana de qualificacions: -
En resposta a Steven Williams

Re: Leveraging existing api modules from something like postnuke

per Martin Dougiamas -
Imatge Core developers Imatge Documentation writers Imatge Moodle HQ Imatge Particularly helpful Moodlers Imatge Plugin developers Imatge Testers
I'm not against the idea at all, but I think it will be a non-trivial bit of work (even though I've not had a good look at the Postnuke API - I got quite put off the whole nuke thing after looking at the Phpnuke code once).

There are two issues here:

1) using modules as "blocks" on the front page and on the course pages, and

2) using modules as "activities" within courses.

Currently, Moodle's "blocks" are hardcoded, so changes to have them work in a similar fashion to Postnuke will require significant changes. Still this is probably the best place for Postnuke modules to fit in.

For activities, it might be possible to write a Moodle module that acts as a wrapper to present a Postnuke API to Postnuke modules (a bit like the opposite of Postwrap). Moodle activity modules have a lot of special functions that most Postnuke modules wouldn't have (eg tracking and grading).

It's something we can keep in mind during the re-design for Moodle 2 later this year. Please keep discussing it here if anyone has further ideas on this topic.
En resposta a Steven Williams

Re: Leveraging existing api modules from something like postnuke

per Ray Kingdon -
Having had a fairly unsuccessful hack at one Moodle module and developed another, I think we should perhaps look to the current Moodle API. This would seem a sensible first step towards either incorporating, moving towards or rejecting the postnuke API.

I must say it would be handy to have an overview of the Moodle API. I've got a reasonable handle on the DB functions but there's a lot of other stuff there which I'm only vaguely aware of. This, of course, raises the question on the stability of moodlelib, weblib, datalib, etc. Certainly the postnuke API is well documented. But I don't know whether a similar exercise on the Moodle API is timely.

En resposta a Ray Kingdon

Moodle API

per Martin Dougiamas -
Imatge Core developers Imatge Documentation writers Imatge Moodle HQ Imatge Particularly helpful Moodlers Imatge Plugin developers Imatge Testers
What was that old catch cry? "The source code IS the documentation" Complicitat You've done an excellent job already using just the source code, Ray! Somrient

The Application Program Interface (API) documentation does definitely need to be done at some point. I don't know if now is quite the best time, as it's been changing quite a lot up until the last release, and will definitely suffer further improvements when I get back to developing full-time in a few months.

At the moment it's not too bad, as the number of modules and programmers is small enough to adjust when an API change is made, but obviously it will get harder as the project grows. datalib is relatively stable now, but I think moodlelib and weblib will probably still be changing.

I would like to aim for an API freeze in Moodle 2.0 in the second half of this year, after a large number of things get cleaned up (eg interface code). How does that sound?

I've learnt a lot of new things from Moodle 1 (which I see as a prototype) and I really want to get all these new ideas into Moodle 2.