Revision [3139]

This is an old revision of WikkaCodeStructure made by JavaWoman on 2004-12-13 18:37:51.

 

Wikka Code Structure


A few days ago I had a little discussion with JsnX in TheLounge (the #wikka channel on irc.reenode.net) about "external" type programs (not part of Wikka but providing important functionality), actions, plugins... and how to organize it all better into a directory structure. I'd been thinking about the same things myself, but somehow didn't quite pick up on what JsnX was proposing (I was probably "multitasking and doing other things while talking to JsnX on #wikka, sorry).

So, I'll now try to take it from there and try to give a worked example of what I had in mind (and possibly JsnX as well).

Rationale
My rationale for this proposal is as follows:
So here is how I'd structure the directory (some comments included in PHP-style):

Proposal
[wikka]/

[wikka]/3rdparty/
[wikka]/3rdparty/core/
[wikka]/3rdparty/core/geshi/			#I'd say this provides core functionality, could be debatable though
[wikka]/3rdparty/plugins/
[wikka]/3rdparty/plugins/freemind/		#cannot be turned off yet but is not needed functionality
[wikka]/3rdparty/plugins/safehtml/		#can be turned off globally
[wikka]/3rdparty/plugins/wikiedit2/		#can be turned off globally

[wikka]/actions/

[wikka]/actions/core/
# "overall management" actions (referring to other pages than the current one)
[wikka]/actions/core/category.php
[wikka]/actions/core/highscores.php
[wikka]/actions/core/interwikilist.php
[wikka]/actions/core/lastusers.php
[wikka]/actions/core/mychanges.php
[wikka]/actions/core/orphanedpages.php
[wikka]/actions/core/ownedpages.php
[wikka]/actions/core/pageindex.php
[wikka]/actions/core/recentchanges.php
[wikka]/actions/core/recentcomments.php
[wikka]/actions/core/recentlycommented.php
[wikka]/actions/core/textsearch.php
[wikka]/actions/core/textsearchexpanded.php
# page structure rather than content
[wikka]/actions/core/footer.php			#should this really be an "action"?
[wikka]/actions/core/header.php			#should this really be an "action"?
# page content (or referring to/changing the current page only)
[wikka]/actions/core/backlinks.php
[wikka]/actions/core/color.php			#remove colour.php or include colour.php that only does an include of color.php: don't have duplicated code!
[wikka]/actions/core/include.php
[wikka]/actions/core/image.php			#and disallow dynamic image inclusion via url: not valid html
[wikka]/actions/core/lastedit.php
[wikka]/actions/core/nocomments.php
[wikka]/actions/core/table.php

[wikka]/actions/plugins/
# system management
[wikka]/actions/plugins/emailpassword.php	#access control may not be desired/implemented
[wikka]/actions/plugins/usersettings.php	#access control may not be desired/implemented
[wikka]/actions/plugins/feedback.php
# page content
[wikka]/actions/plugins/calendar.php
[wikka]/actions/plugins/files.php
[wikka]/actions/plugins/flash.php
[wikka]/actions/plugins/googleform.php
[wikka]/actions/plugins/iframe.php		#now in intranet dir: it's really an action!
[wikka]/actions/plugins/mindmap.php
[wikka]/actions/plugins/rss.php

[wikka]/css/
[wikka]/docs/
[wikka]/formatters/
[wikka]/handlers/
[wikka]/images/
[wikka]/setup/
[wikka]/xml/


Notes

Comments?
Comments and better ideas welcome, of course.
There are no comments on this page.
Valid XHTML :: Valid CSS: :: Powered by WikkaWiki