[pmwiki-users] Fox major update

Hans design5 at softflow.co.uk
Wed Jan 9 11:10:29 CST 2008

I released a major update to Fox:

It has been a bit more than a year ago that fox.php was released.
This new upgrade has many changes, probably 50% of the code has
been rewritten, and much added. Still it should be more or less
backwards compatible. I changed some keywords, but the old ones are
still working.
Because of the scale of changes I took the precaution to save the
previous version as fox-1.php.

Overview of changes:
The new Fox has better and more flexible multi target page handling.
Fox can use specific parameters for each target page.
Fox can now add content at specified markers, either on lines before
or after, or inline.
A replace action has been added. One could use it to do a Search and
Replace on  a page. Or overwrite and replace whole sections.
The way Fox adds content has been changed from a line by line approach
to a string based approach, thereby making Fox capable of inline
additions and replacements.
For adding and replacing content targets can be whole pages, or
sections of a page.
A timer function has been added to preventatively abort processing, if
it takes too long and threatens a php major error, important if Fox
processes many pages.
Messaging has been improved.
Fox can now take parameters from form submissions as well as from url.
Fox will process all target pages in turn, applying the various
templates and parameters. For each page process Fox will first add or
replace or copy content, and do any required PTV updating last, as
part of the individual page process, before the page gets saved.

For a range of new parameters please read the Markup Parameter
section on the Fox cookbook page:

Keyword changes:
place= is now put=
#append is now put=aboveform
#prepend is now put=belowform
#top is now put=top
#bottom is now put=bottom
Note that these as other put= values can refer to the page as a whole
(i.e. 'top' of page content) or to a page section (i.e. 'top' of
section), depending if target=PAGE or target=PAGE#section is used.

New markup (:foxadd .., (:foxreplace .., (:foxcopy ..:
for adding content:
(:foxadd TemplatePage=>TargetPage ...parameters :) or
(:foxadd template=TemplatePage target=TargetPage ...parameters :) or
(:foxadd Template1=>Target1 Template2=>Target2 Template3=>Target3:)
  (multiple targets)
(:foxadd ...:) and (:fox-add ....:) are equivalent.

for replacing content
(:foxreplace TemplatePage=>TargetPage ...parameters :)
etc. as above for 'add'.

for copying content (no template processing):
(:foxcopy Template1=>Target1 Template2=>Target2 :)
etc similar to 'add'.

Please check out the new Fox and give me feedback. Thank you!


More information about the pmwiki-users mailing list