BoltWire

BoltWire 2.0

Below you will find the entire release history for the BoltWire 2.xx series.

boltwire2.73.zip Apr 2, 2009
  • Some fixes to templating so count, prev and next vars work. Also fixes a conflict between the count and sort parameters.
  • Added a { field} and { value} template variable to the info report function, and an index template variable for templates in general.

boltwire2.72.zip Apr 1, 2009
  • Slight change to how the rss skin is called
  • Fixed bug affecting var functions like {( )}

boltwire2.71.zip Mar 31, 2009
  • Another slight fix to the count parameter to avoid getting an extra value returned.
  • Fixed a bug in the postprocessing system.
  • Changed str_ireplace to strtr in utf handling for better php4 support. Also escaped utf chars is now more easily configurable.
  • Much works on divs, p's, & spans so they can nest properly. Also "a's" can be entered now. Still have some minor problems with line spacing.
  • Fixed a recently introduced bug in the undo action.

boltwire2.70.zip Mar 29, 2009
  • Added a new counter command (taps into counter function)
  • Added count and order=random parameters to info function (useful in reports).
  • Slight reworking of code/box/markup and a new html markup to give more intuitive line spacing and also inline styling when desired. (Even markup!) Boxes can no longer take attributes. Use div or span for that. Slight modifications to css.
  • Rewrote the embed command to fix a conflict with the new UTF code.
  • New site page, more friendly to narrow width skins.

boltwire2.69.zip Mar 27, 2009
  • Fixed time function to handle timestamps in to and from parameter.
  • Added rules parameter to include function. Limits which rules are processed on included text. Cool!
  • Changed option input so that [option text] is output to the visible html. To have different internal and external values, use value=
  • Reworked how the rss skin is handled to work properly with action=rss.
  • Changed mailAddress to siteMail in site.config. Updated mail function but not newsletter plugin (yet).

boltwire2.68.zip Mar 24, 2009
  • Fixed titles when an action is called.
  • Added an offset parameter to the breadcrumbs function to eliminate one or more of the first few hierarchies.
  • It's now possible to put \n in an edit value and get line breaks, just like with the create value.
  • Smarter anchors--now they can take a label, and even ' ' (shows anchor name, capitalized). Even UTF anchors!
  • Fixed glitch in info vars pattern in functions.php affecting tags.
  • Smarter info function, can now take alternate pattern parameter and read/write & even delete values (with $1=field and $2value). Quite cool...

boltwire2.67.zip Mar 21, 2009
  • Big improvements to how data and info vars handle UTF. Took awhile, but finally dawned on me one way to do it properly.
  • Changed BOLTlines to BOLTgetlines (seems clearer)
  • Added a powerful rules parameter to templates that allows you to specify which markup rules are processed for the output. Does not work with fmts, of course.
  • Still polishing, lots of little things. And several bug fixes caused by the new vars code. Can't recall everything...
  • Changed copyright date from 2008 to 2009.

boltwire2.66.zip Mar 20, 2009
  • Fixed bug in form action parameter.
  • Include function now allows UTF page names, and page shortcuts.
  • Equal conditional now works with UTF page names.
  • Did some major reworking of vars and info vars to allow utf pages and fields. Somewhat experimental...

boltwire2.65.zip Mar 18, 2009
Full steam ahead to 3.xx. We're almost there!
  • Patch to header markup, so works inside tables and divs.
  • Patch to anchor markup, so line spacing works.
  • Slightly reworked displayFmt/Template to solve some display issues.
  • Added a hook for a myBOLTmarkupRules function in BOLTdomarkup.
  • Repaired group parameter when doing searches from last release.
  • Overhaul of how and when UTF pagenames are encoded/decoded to try and get more reliable, simpler, and safer results. Involved multiple changes.
  • Rewrote BOLTutf8_strip function so only ascii chars appear in the core code.

boltwire2.64.zip Mar 15, 2009
  • Hacked a bug in templates involving bulleted lists of links
  • Improved marking pattern and css styling for horizontal lines.
  • Added % to anchor name pattern to allow utf
  • Can now enter skin arrays in site.config for specific hierarchies
  • Added a $farmUrl variable and $$farm snippet var for use with cleanUrls

boltwire2.63.zip Mar 12, 2009
  • Fixed major security vulnerability with UTFpages.
  • Fixed small bug in displayFmt code involving line returns.

boltwire2.62.zip Mar 9, 2009
  • Fixed a bug in handling stamps by not defining the BOLTstampsDir
  • Added % to several filters for improved utf handling
  • Simplified utf2url and url2utf functions, and got rid of the utf_encode/decode lines.
  • Reworked the searchPageList code so the group parameter can handle utf code. Thanks Hans
  • Changed the displayFmt code to handle utf's.
  • Changed the logic switching in PageShortcuts, it should have been set to false.
  • Simplified the UTF8_strip so it now works properly.
  • Fixed bug in BOLTstampsMax causing page histories to be lost. Very sorry about this bug!
  • Fixed rename command to work with UTF pagenames
  • Fixed login command to allow utf member id's. This could allow just about any kind of member name...

boltwire2.61.zip Mar 6, 2009
  • More improvements to the %encoding problem.

boltwire2.60.zip Mar 2, 2009
  • Tweaked snippets code, again.
  • Removed extra line break in toc template

boltwire2.59.zip Mar 1, 2009
  • Another patch to the vertical line spacing code. Hopefully will work better this time...
  • Several fixes to the divs/box/etc., markup which I messed up a release or two back.
  • Added a farm/pub folder and renamed farm/icon to farm/img.
  • Now img:file.gif scans first local files directory, then farm/img folder. Please rename farm/icon folder to farm/img before upgrading.

boltwire2.58.zip Mar 1, 2009
Another patch to yesterdays big vertical line spacing release, with several reported bugs corrected. Still experimental, but less so.

boltwire2.57.zip Feb 28, 2009
  • Improved fix to BOLTpluginStyles, Header, and Body
  • Fixes to prev/next and other template markups
  • Improved help system. Now:
    • site.help can be viewed on any page from within the help system.
    • A limited markup table is shown to non admins.
    • Note pages like site.help.whatever pages can be linked to by {p}&help=help.whatever.
    • Improved access to plugin functions. (Listed)
    • Added help link to default site actions
  • Changed actions to an inline css list (in snippets)
  • Fixed glitchy behavior with [ messages ] and [ results ]
  • MAJOR reworking of line spacing and css stuff, affecting several markups rules and functions, and default style sheet.

boltwire2.56.zip Feb 27, 2009
Just updated this release to fix a mistake in the new code.
  • Improved action.undo thanks to excellent suggestions from Hans
  • Added a $BOLTpluginsStyles array for inserting styles into a page via function or config.
  • Replaced urlzones parameter with a nozone:side: page* and noprintzone:side: page* parameters for improved control.
  • Added a { prev} and { next} to available template vars.
  • Fixed bug in { count} and { count_total} template vars.
  • New: Fixed bug in the search count parameter.

boltwire2.55.zip Feb 26, 2009
  • Fixed backup command to properly backup pages in sub folders.
  • A couple fixes to the undo and stamp action to get proper times showing.
  • Fixed edit action so changelog and author data gets saved.
  • Fixed stamp/unstamp commands to use utf page names in messages
  • Fixed copy and rename actions to give proper utf changelogs.
  • Fixed searching of utf page names (I think). Maybe can use the same approach for info vars...
  • Added url2utf/utf2url commands/functions.
  • Add id=boltform tags to BoltWire copy, edit, missing, & create actions. Required adding a BOLTattr['form'] setting to the engine and reworking input and form markup functions. But now can style a form, and or give class and id.
  • Added a localTime site.config value to offset your time 3 or -2 (in hours).
  • Added a global $BOLTtime var (for {now}) keyed to localtime, and edited time /commands/functions and pageshortcuts( ) to use this time. Caching, touching, stamping, etc, still uses system time rather than localtime. There may be unexpected consequences of having BOLTtime different from system time...

boltwire2.54.zip Feb 25, 2009
A complete redesign of how vertical line spacing works in BoltWire. It should be considered an experimental release to solicit feedback and help with debugging. On the default skin it looks virtually identical to before. But the underlying html is much improved in terms of XHTML. Still we will need to tighten things up here and there a bit, I"m sure, before I would call this new code stable.

boltwire2.53.zip Feb 24, 2009
  • Added a touch command/function to give more fine-toothed control to caching. Touch resets the last modified time of an existing page. Note, system pages cannot be touched.
  • Change htmlcache to cacheHTML in site config, same with zonecache which is not cacheZones. This makes it easier to find all cache settings.
  • Added a cacheLimit config value which expires cached pages after specified number of seconds, if set.
  • Fixed bugs where cached pages are deleted if real pages no longer exist.
  • Improved nocache function so it is smarter. Can put in a footer for example and put [(nocache main=true)], and neither footer nor main will be cached. Otherwise, will do just zone (if in zone) or page (if in main)
  • Improved action=view so all relevant html/zone caches will be cleared (but recreated if allowed).
  • Added stopwatch tags to help track what is happening with caches.

boltwire2.52.zip Feb 23, 2009
  • Fixed bug introduced in 2.51 involving escaped slashes (broke showhide plugin)
  • Fixed snippets to allow /= =/ markups for javascript snippets.
  • Enhanced BOLTconfig function to allow arrays, defined by BOLTconfig('BOLTarray:index', 'default').
  • Should be able to use code.snippets.skinname also, to override code.snippets.

boltwire2.51.zip Feb 22, 2009
  • Added a BOLTdefaultArray() function similar to the BOLTdefault() function for plugin developers.
  • Fixed an authorization bug in BOLTloadpage.
  • Fixed a bug with messages/results, etc.
  • Reworked snippets to match both field: value and [[#section]]multiple lines[[#end]]. Involved minor tweaks to the code for info vars, escapes, nolines, and snippets code. :) Watch out for ramifications!
  • Site.config can now define arrays using lines like array:index: value.
  • More work on utfPage names, to allow renaming and solve problem of spaces.
  • Improved action.plugins to only show the correct plugin messages on installation.

boltwire2.50.zip Feb 21, 2009
  • Added some line breaks to html output. Shouldn't affect display.
  • Fixed a small bug in the displayTemplate function causing unintended line breaks.
  • Improved mail function's body parameter (auth bug from last release).
  • Fixed small typo in displays (extra line returns).
  • Fixed bug with lists and sorting.
  • Reworked plugin install process to allow for messages from a backup file. See this update plugin: Sandbox? to demo how to works. Still works the same with old plugins.
  • Fixed bug in plugin uninstall button.
  • Smarter handling of UTF page names.

boltwire2.49.zip Feb 19, 2009
  • Improved handling of UTF chars in anchors
  • Added a myBOLTdisplay hook
  • Fixed getzones to show missing action when page not found.
  • A "skin.php" in a skin folder gets included automatically. (And php files excluded when importing skin pages).

boltwire2.48.zip Feb 18, 2009
  • Added a [[=page]] page shortcut to create child pages. Can also use in any action that taps into pageshortcuts (most of them). Note: to get full scripts back, use [[page|=]].
  • Added an optional text=true link to the breadcrumb function to allow non-clickable breadcrumbs.
  • Made slight fixes to the target command to fix a few bugs with UTFpages.
  • Fixed bug recently introduced with titles not being capitalized. Also, ucwords is now used rather then ucfirst.
  • Fixed bug in info "report" when no info values exist.
  • Renamed system file code.skinvars to code.snippets. Should have done with last release!
  • Moved the site actions (in the core) to code.snippets rather than a second call to site.actions (now deleted). This could cause some sites to revert to the core site actions, rather than the site.actions page. To fix, reset code.snippets Action: [(include site.actions)] or copy your custom site.actions page to the snippets page.
  • Fixed what looked like an error regarding server 4.04 error messages.
  • Added a hook for a myBOLTgetzones($zone) function, to allow admins to customize how zones are prepared.
  • Delete action.all and moved code to page "action".
  • Change scripts to call for pages in code.script.scriptname, rather than site.script.scriptname. This means you will need to rename any existing scripts you have.
  • Tightened up some of the functions in BoltWire to better secure pages from being read without proper permissions. Let me know if some glitches are caused.
  • Changed template/fmt finder to also check if exact page name exists, assuming view permission.
  • Fixed small bug in getzone function blocking some action pages it shouldn't.

boltwire2.47.zip Feb 15, 2009
  • Reworked hierarchies so can now use hiearchical custom skins, styles and zones, by simply adding the skinname to the end. (Note: zone.skin* pages will no longer work.) Also added a hook for myBOLTgetlink() if a different hierarchical process is desired.
  • Reworked how skins are installed. Basically, if code.skin.skinname does not exist, all pages in the farm/skins/skinname folder are imported provided they do not end in gif, jpg, png, db, html, css, text, or htaccess. To install, just set skin in site.config. To upgrade a skin, delete the code.skin.name file from your wiki. Everything will get copied over again.
  • Several slight fixes to the displayFmt option so it is more comparable with the displayTemplate in terms of how Fmt's are selected.
  • Snippets now return local page data fields before system wide fields.
  • Added a myBOLTsnippets() hook for developers who want to customize the snippets behavior.

boltwire2.46.zip Feb 13, 2009
Just a few incremental changes to ease us toward 3.xx. Specifically:
  • Eliminated use of templatemarkup, & gettextvar from the core. Hooks still exist for plugins until the switch.
  • Fixed threads when using UTF page names.
  • Changed skinvars to snippets (you will want to rename code.skinvars to code.snippets immediately before or after upgrade.

boltwire2.45.zip Feb 12, 2009
  • Corrected the fix to the exists conditional in the last release. Oops! (Affected plugin installations.)
  • Add special UTF8 page name handling routines. To turn on, set utfPages: true in site.config. Then give it a try! Note this feature should be considered highly experimental...

boltwire2.44.zip Feb 10, 2009
  • Fixed bug in exists conditional involving files and plugin dirs.
  • Added improved source= parameter to all(?) form input fields. Updated title and data actions to take advantage of it.
  • Added a little snippet to allow /= =/ of content in a form input field, so vars,funcs, & if's can be processed at time of form submission (after field replacements).
  • Added an optional myBOLTformFilter($field, $vale) hook to allow custom processing of form input fields. This allows you to do any custom php coding on a field=value pair desired. Conditionals needed as all values will be passed through the function if it exists.
  • Fixed bug in the new list function which affected the backup action, possibly others.
  • Fixed bug affecting parameters in [h] cells.

boltwire2.43.zip Feb 9, 2009
  • Fixed recently introduced glitch in the data action.
  • Tightened a security vulnerability involving data. Now site.auth.data governs permissions for both reading and writing data.

boltwire2.42.zip Feb 8, 2009
This is a pretty significant upgrade on the road to 3.xx. Consider this one a bit experimental with potential to disrupt sites, or produce buggy behavior. I'm releasing to solicit feedback in debugging. The upgrade so far appears to be flawless on my sites.

  • Fixed a bug in the between conditional.
  • Info Vars are now defined by the first instance, not the last on a page.
  • Made a significant change to how page content is escaped to solve a very complex bug involving the history action. Developers can now do BOLTescape($text, false) to unescape a string.
  • Code now removes line returns for inline templates with no content (useful with if's).
  • Rewrote savedata process so there is a core system function available to plugin developers. Also added a data function which allows data field editing in fields specified by setData in site.config.
  • Major rewrite of search/list/find templating process to greatly simplify code, and enhance capabilities. Plugins tapping into the BOLTdisplay function may no longer work.
  • The default template is now customizable in page template.default.
  • Slight fix when external urls are linked to and linkTitles is set to true. Now shows url instead of for label.
  • Significant restructuring of the barn scripts. All system functions are now in engine.php. All markup functions in markups.php. Please remove search.php and library.php from your scripts folder.
  • Moved all default variables into the initialization routine, including BOLTattrs and the signature markups.

boltwire2.41.zip Feb 1, 2009
Some minor fixes to the help system including better formatting of the display and a few more options such as plugins=true to include plugins, and script=engine to only scan engine.php. Can also set helpPage in site.config to some page other than site.help, which is now added to the core distribution.

Other features include a new core report extension to the info function which allows you to display beautiful template outputs of info (any way you want). Also, a sort=field/value and order=reverse is in the core to give more flexibility to other info extensions, as well. This deprecates the core list info extension. Click here for a demo?.

boltwire2.40.zip January 31, 2009
Powerful help system that works by simply adding help=function to any BoltWire url. Accesses actual scripts running BoltWire. To turn it on, set helpSystem: true in site.config. A special feature for help=initialization and help=markuptable.

  • Fixed bug in list function when delimiter set, but no page parameter.
  • Added a few slight fixes to search.php to avoid error messages when the zone is not supplied to certain functions.
  • Added an escape=false option to disable the escaping of templated displays.
  • Added my own custom %E time fmt to give the same as %e but without the leading space. (%e doesn't work on my server anyway). Just a hack to return the current date.
  • Added a value=page:variable option to the box input field to make it easier to set default values. Still need closing box tag.
  • Fixed data action so returns line returns properly when editing multi-line data variables.
  • Added a space between terms in the {data} variable, so it won't break skins quite so easily. Some plugins could be affected...
  • Changed list function to automatically trim each list item for spaces.
  • Reworked data action to properly display text area content.
  • Bullet-proofed a few potential error messages in the search function.
  • Reworked the nolines code to a simpler solution. Could also be used for simple html. Perhaps should rename html...

boltwire2.39.zip January 21, 2009
  • Fixed several bugs when improper values are passed to a conditional.
  • Added a "fix" feature to the target command to convert common text strings to proper page names by stripping out '",?! and converting spaces to underscores. To use add 'fix' to the field name like target_fix or target_fix_1. (The idea was to make it easy to convert blog titles to page names). Configurable via a custom $BOLTfixPage array. And we could expand.

boltwire2.38.zip January 19, 2009
There are lot's of minor and some major changes in this reason. Not sure all of them are documented, but most are here below. Some things that will possibly break are custom action.changes pages, the [[<page]] markup, some uses of the info function, and cron is now an external plugin. Details follow:
  • Fixed bug in cronLastCheck when editing site.config.
  • Fixed bug in caching to delete cached pages when deleting pages.
  • Reworked code in breadcrumb function to be more efficient. Half as long and easier to use. Should not affect any existing sites.
  • Fixed bug causing some strange behaviors with the [ messages ] and the [ results ] string.
  • Changed forms to return a null
    string rather than [unauthorized form]. Looks much better and good for code, such as on the BoltWire site.
  • Fixed a bug in BOLTauth which failed to properly recognize some group authorizations.
  • Added a lastmodified core function and reworked some of the internal mechanisms for sorting, etc. Also deleted the last modified variable in place of the function. Note your action.changes page may need to be upgraded if customized.
  • Did some reworking of the links markup function so that now [[page]] => to [[page| ]] if linkTitles: true in site.config. To show the actual page name in this situation, use [[=page]]. Also better handling of styling & attributes, so can do [[~member||parameter]]
  • At same time, changed pageshortcut function so instead of [[<page]] and [[>page]] (which I never could get to work right). Now you now can use [[...page]] which means copy over p1.p2.p3.page. There's pro's and cons of both ways, but I think this one is cleaner and easier to remember. Plus easier to type.
  • Added a "delimiter" parameter to templating (from the default line return to whatever. One specialized use is getting rid of line breaks in inline templates. Shouldn't affect existing sites.
  • MAJOR rewrite of the info function to simplify the code, enhance functionality, and address some potential security problems. In particular, introduced a new site.auth.info page to control info writing, and a @key_info authorization group. Unfortunately the syntax is also changed slightly for internal advanced functions like count and sum, etc. Added a new delete option. Added a site.auth.info page to core. By default, can only write in the info hierarchy.
  • Renamed and slightly reworked library function BOLTgetTextVar to BOLTinfoVar. The old BOLTgetTextVar function exists to help plugins who might use it.
  • Big improvement to list command to use comm2func protocol, so can now generate templated output via a full parameter string. Existing forms should be unaffected.
  • Added a for=1-5 option to the list command/function equivalent to 1,2,3,4,5. Very cool.
  • Dropped the complex site.auth.data.field pages and added a special (dynamic) @owner group when retrieving data from a users won login page. The former feature can be easily replicated using the approach described in Fancy Auths.
  • Added a nifty markuptable=reload option to templating functions, to overcome some order of operation problems.
  • Added a new copy command (the copy action basically creates a new page with modified content). The copy action does a straight duplication, much like the rename command. Actually, I hijacked the rename command to do this.
  • The create (not edit) function can now take
markers and will substitute them for line returns. This is to help some with the formatting of new pages without requiring a page template.
  • Moved BOLT's internal pseudo cron system to a plugin. And provided better hooks for processing. $BOLTpreProcess and $BOLTpostProcess are now arrays of function names instead simple strings (to allow multiple processes) and added a new $BOLTbackgroundProcess hook (also an array) used by cron, but could be used for any/multiple background jobs. More power and flexibility in the core, less code!
  • Server headers (404,403) are now optional, default turned off. To turn on, set serverHeaers: true in site config. These may not be desireable with IE because of it's internal "friendly" messages system.
  • Added an uploadCase: false option (site.config) which converts all uploads to lowercase. Default behavior is unchanged. Also, if a mixed case link to an image is not found, a check is made for the lower case version, and returned if found. This is to give greater file case insensitivity.
  • Fixed bug in conditionals when a $ appears in the parameters via a get variable.

boltwire2.37.zip December 16, 2008
This new release introduces two caching systems: html caching (full page) and zone caching (specific zones). Just set htmlCache: true or zoneCache: top,bottom,side,etc to turn these on. If using htmlCache, you can exempt one member group, by setting noCacheGroup: admin (or whatever) in site.config. To update the cache, simply run any action on the page--even action=view. VERY FAST, but dynamic content like captcha and page counters won't work. To block caching on a specific page, add [(nocache)] to the page. In zone caching it will only block caching for that one zone.

  • Fixed small bug in counter function.
  • Fixed small bug in create command, involving $1 returning as a msg.
  • Improved log command so content= parameter can appear anywhere in the value string.
  • Reworked stopwatch and error reporting. Remember, both BOLTstopWatch and errorReporting must be set to true in index.php, NOT config.php. Slight tweak in stopwatch to give actual time in seconds.
  • Reworked how cron is called to reduce cpu processing time,
    • Now cron is called only if cronmode is set to active in site.config
    • Added a new cronCheck and cronLast parameter to site.config. The first tells how many seconds to wait between cron calls, and the latter is updated automatically. These new features will further reduce cpu processing time if cronmode is active.
  • Added a upload_no_ext message when a file is selected for uploading that has no extension.
  • Improved page saving routine so ' and " are not escaped when new pages created. This is the only difference I've been able to detect between create and edit.
  • Fixed preview buttons in edit, missing, copy and create action for internationalizations.
  • Fix mail to return ' and " when escaped.
  • Can now hotlink to external images using [^http:...^]]


boltwire2.36.zip December 4, 2008
Several small fixes and a few powerful tweaks to enhance site flexibility. I don't anticipate upgrade problems, but some of the changes were significant. Keep your eyes open and report any problems you notice!

  • Fixed bug in preview function that caused undesired template field replacements.
  • Reworked Engine slightly to automatically redirect all form submissions. No longer need redirect=true in forms. Let me know if you notice any problems with this.
  • Fixed bug where some buttons were relabeled on a form abort.
  • Can now disable certain zones if the action is print by adding header=false to the url (or any other zone, or multiple zones--including main). To make this feature available on any page, set urlzones: true in site.config. Kind of fun.
  • Modified BOLTabort command so forms tapping into the comm2func function can take advantage of it. Fixed core mail function to work properly with this. Other functions may need similar updating.
  • Add capabilities to check code.skinvars.skin for specific fields, before checking in code.skinvars.
  • Successfully merged domarkup and templatemarkup functions. Added a hook for a myBOLTrules function which can be used to modify what rules are processed via a config file. $rules is now a csv string of included $orders and excluded $rules (-$order:$rule). It should allow complete markup control. Much fun!
  • Added a js=clear parameter to forms to make things like [text field value js=clear] really easy. Slight simplification of code concerning js=submit.
  • Fix bug in target command to avoid users creating pages like page.*.

boltwire2.35.zip November 19, 2008
  • Added an auth parameter (at the php level) to the search functions, so can search for pages you cannot view. So far it is only used internally when scanning for email addresses as a login.
  • Slight reworking of the logic in the action.missing and action.edit pages to solve a few quirky problems.
  • Now can use page names in the inlist conditional and they are recognized automatically and processed as expected.
  • Moved the member var markup rule to follow regular page variables, so can be used in retrieving member data in templates.
  • Added a myBOLTMlinks function hook in the end of the links markup function for additional customization.
  • Rewrote BOLTMlinks function for clearer and more concise processing. Watch out for glitches!
  • Simplification of BOLTconfig function.
  • Added quote marks to message output for better validation. And changed ending line return to a style sheet setting (class .message). Could cause lines to be deleted in non-default skins.
  • Fixed code markup to allow ` escapes in it.
  • Made some changes to the nolines markup to improve functionality. May still need some work.
  • Updated the mail function to make php4 compatible.
  • Added a BOLTstripquotes command to library.php to better handle single and double quotes in parameters. A quirk in the BOLTargs function. Cleaned up other code that handled it elsewhere less effectively.
  • When doing templates, BoltWire now first looks for template.name.skin before template.name, to allow skin specific templates.
  • Reworked the preview function to better deal with code pages, and use css (class .preview). Made appropriate changes to code.style. Update your skin style sheets.
  • Fixed bug in table markup, involving <th> not closing properly.
  • Improved translation markup to allow for < or &lt;.
  • Move messages/results markup processing from dotemplate and templatemarkup to makepage function.
  • Can setup a default time format in site.config, like timeFmt: %c (used in time functions if fmt not set) rather than default timestamp. Involved a significant reworking of both the command and function so watch out for bugs.
  • Fixed a small bug in the bullets markup closing a li tag in certain situations.

boltwire2.34.zip October 16, 2008
  • Changed word "created" to "generated" on default bottom zone.
  • Slight rewording of site.config sentence before the plugin list.
  • Upload type checks are now case-insensitive.
  • Can set a loginLabel value in site.config to change the behavior of [[~id]] to show a field other than member. Or can set loginLink to go to a different group than the login group.
  • Title action now redirects so affect shows up immediately. I'm considering making this happen for all actions involving page data automatically...
  • Added an optional id parameter to the various table markups (t,r,c,h).
  • Fix colscolsspan/rowsrowspan problem (and similar related problems). Also made parameter substitutions configurable via $BOLTtableInputs and $BOLTtableOutputs arrays. Similarly, can modify $BOLTtableLabels to reset the trch labels used.
  • Added proper header messages for 404 (missing) and 403 (forbidden).
  • Added a "list" option to the (core) info function so can potentially use for tagging, etc.
  • Removed the urldecode from the {?vars} markup which was causing double decoding.
  • Removed a rather friendly, debugging line from the indexing function. :)

boltwire2.33.zip September 15, 2008
  • Change html tags from fmt to style, so can be used in links.
  • Fixed the defaultPage opton to work as a config value.
  • Fixed search sort parameter to understand "page" (as well as p0 to p9).
  • Fixed a bug in the zones function displaying the wrong value for the main zone.
  • Added template markup processing to the mail command, at least pre,vars,func,if,links.
  • BOLTtemplatemarkup function has a slight fix, adding $pageLink as the default page name. Looks like a bug, but perhaps there was some reason for this omission. Let me know if you notice any problems.
  • Add new { } counter markup for much easier handling. And made a very slight fix to the counter function to work a bit better...
  • Can now have spaces before or after the link address, like [[ test ]] and it is trimmed out.
  • Moved translation effect from pre to end of vars, so can be used on variables, like >>{:field}<<
  • Added a config value for LinkIntAttr/LinkExtAttr so can reset the default attrs on either an internal or external link. By default, external links are still set to rel=nofollow.
  • Virtually all args can now be run through an admin defined BOLTargShortcuts($args, $type) function, to "tweak" arg arrays as per your desires. Type can be table elements, div/p/span, links, form inputs, c_condition, x_command, f_function.

boltwire2.32.zip September 8, 2008
  • A bit of tweaking to improve apostrophe's in logging. These seem to be rather pernicious problems--please report anything that doesn't work right.
  • Tweaked type parameter in searches to accept a number value. Accepts anything numeric including 2008-08-03.
  • Added a line=3 to log's flag capabilities and then a getline function perhaps as well that looks like [(getline "text" page=some.page)], with page optional.
  • Fixed a few trivial bugs here and there as I've tinkered on my own site. Unfortunately I did not document them all.

boltwire2.31.zip August 17, 2008
  • Can now use member id's in email to and from field, if email is available in profile.
  • New source command, similar to function, executed during forms processing.
  • A small hack for the xml:lang parameter (just use xmllang). Also a bug for style/id's in links.
  • Attempted fix of file and ftp links. Please let me know if it does what you want.
  • Added info function and command with many parameters possible, esp: target, field, value, sum, count, counter, exclude, and potential BOLTinfoExtension functions. See the Info Extension solutions page for examples.

boltwire2.30.zip August 17, 2008
  • Added a custom sort capability to the search results. Basically, you create a function called BOLTsortMyFunc and then do sort=myfunc in your search function. It should take one array, and return it sorted as desired.
  • Reworked the comm2func function used in the email and log commands (and some plugins) by adding the entire BOLTarray to the $args passed to the function. This makes them available equally, whether as a separate form input or part of the parameter string. Very cool.
  • Some additional fixes to email function/command. Specifically, allowing you to pass a template in via the body command, and connecting the function output to the commands messaging system.

boltwire2.29.zip August 15, 2008
  • Insert a check for zone.skin.side, etc., in loading page zones.
  • Make it so a skin can import any needed pages, not just skin and style pages.
  • Can now have hierachical custom skin pages, like code.hierarchy.skin.skinname.
  • Now register command verifies the page is actually created. This should help with new users who might have permission problems.
  • Fixed the jump select box which was somehow broken in the last release or so...
  • Fixed bug in fieldreplace function that interfered with the if command.
  • Some fixes to the <nolines> markup.
  • A few other fixes--can't remember what they were... :)

boltwire2.28.zip July 27, 2008
  • Links can now take a second pipe and a variety of parameters (defined in $attrs['link']), or js (if defined in $BOLTlinkJs).

boltwire2.27.zip July 24, 2008
  • Fixed bug in code and embed capabilities (involving some field replacement substitutions).
  • Removed all xxxDir and xxxPages lines from site.config, after making sure default values were set all through BoltWire.
  • Also removed notify: site.notify and notifyMode: demo as these are plugin entries, not core entries.
  • Fixed bug in ingroup condition (introduced in one of the last couple releases only)
  • Finished updating of breadcrumb separator parameter.

boltwire2.26.zip July 23, 2008
  • Improved time function so can set due to hours, minutes weeks, or whatever (in seconds)
  • Added js=submit to auto submit any form on any input type (uses onclick or onchange as appropriate).   
  • Even smarter bullets! Now returns leading linebreak in right places only.
  • Better improvement of how ' and " are handled in forms.
  • Simplified how checked parameter works in radio and checkbox input fields (can just do checked={:field}).
  • Indexing now automatically adds pages names and titles as if part of the page text. Disable by setting indexPlus: none or false in site.config. Can change to page,title,data to also index data or any combinations of the three.
  • Add lines= parameter to source/include functions. Quite versatile...
  • Added separator parameter to breadcrumb function. Thanks Marcus for the code.
  • Added preview capabilities to create/missing/copy actions. Create and missing required a new output=escape option in the preview function.

boltwire2.25.zip July 8, 2008
  • More fixes to the bullets markup. This will solve our problems--once and for all?
  • Reworked the TOC function to set the default offset to 0 instead of 1. If you don't like the way your lists are scooted over to the left, add offset=1 as a parameter.
  • Added a replace=false to the include function to block template insertions. This may affect the email plugin. I haven't checked that out so please be careful if you are using that particularly script...

boltwire2.24.zip July 7, 2008
  • More fixes to the bullets markup.

boltwire2.23.zip July 4, 2008
  • Fixed conflict between bullets and bold markup rules caused by recent change to bold markup.
  • Fixed errors in the edit action and preview function that made it impossible to edit the edit action, and no doubt other problems as well.

boltwire2.22.zip July 2, 2008
  • Fixed BoltWire logo at top to be a link to home...
  • Switched to new {(, [(, and <( markups. Update plugins.
  • Switch log to new multi-parameter settings.
  • A post option for the source command (see safer saves).
  • A preview markup, and rework edit action to use it.
  • Key form submissions to page so can browse multiple pages without killing forms.
  • Released upgrades to forum, blog, inbox, and counter plugins. (Note counter has already been deprecated in favor of the pagedata plugin.)

boltwire2.21.zip June 26, 2008
  • Add new BOLTcomm2func($value, $field) for ease in making a function into a parallel command. Used for example in the mail command.
  • Also all functions in phptools are now also available as commands.
  • Expanded the ReplaceTable to allow entries for SKIN (when skin first loaded) and HTML (final output).
  • Now print skin automatically tries to print the doc, using javascript. If you don't like it, set autoprint: false in site.config
  • Minor bug in how group memberships are set, and a bigger one revolving around changes in the {?vars} markup.

boltwire2.20.zip June 25, 2008
  • Reworked the ReplaceTable code to add "SAVE", "OPEN" (triggered by putting replacetable=true in a source function), and various zone replacement rules (triggered when a zone page is retrieved).
  • Simplified the way groups are handled in the core. Deleted the code for the @owner groups. See the virtual wiki code for a much better way to do this.

boltwire2.19.zip June 24, 2008
  • Improved bullets so can now appear at beginning or end of page content.
  • Moved find function back to core and added a markup= parameter so can search for all instances of a markup in site. This is very cool, and useful... But stripped out the replace capabilities, and made them into a separate replace plugin.
  • Added a new find action, kind of an advanced search function.
  • Persist plugin now has an optional reset parameter which can be used to extend cookies automatically, or delete them. This allows virtually permanent login status, and easy log out capabilities.
  • Fixed color markup to work with or without ' or " and also solved a linespacing problem with the markup.
  • Changed edit action so can now set the target to an anchor and it edits that section or appends the section with an anchor heading. No longer uses section... Did the same with the log command/function. Very cool. Note this involved changes to some of the most basic core functions, so there could be some implications. But so far seems to all be working ok...
  • Updated and reworded the site.plugins page to show both backups and scripts. You will need to add [[#plugins]] to the very top of yoru plugin list on site.config for it to display properly.
  • Slight fix to {?var} markup to work better with UTF. I seem to have chinese character searching working, at least on BoltWire...

boltwire2.18.zip June 19, 2008
  • Reworked links markup so can no do [[~Caveman]] and it will do all the right things... VERY handy.
  • Improved the time function and added a fmt=due parameter which will return the number of days. Also added an offset which can allow you to temper the results. Also cool.
  • Added some pattern checking to avoid invalid page name, and gives a message if one is entered. Avoids a whole string of invalid links along the top...
  • Updated sort=lastmodified option of search function, to work with new index.
  • If index function has pages=, group=, or exclude= the BOLTsearchPageList function is run (based on all parameters), giving you far greater flexibility in developing lists of pages to index. Also, pages that don't exist now get deleted from the index to help keep entries up-to-date.
  • Reworked indexing slightly so that by default all changes are indexed–and that is turned on by default. The goal was to get near instant results. Note, this is in place of sending them to site.index.list for later processing by cron, as before, though that system is all still intact. The default system pages can still be indexed by going to site.index and refreshing the page several times. And you can reindex your site (or any section of it) at any time as desired. To get indexing working make sure indexing: active is in your site.config file.
  • Several small but nice tweaks to forum, blog, and tasks plugins–mostly based on comments from others, and a few ideas of my own. Some require 2.18.

boltwire2.17.zip June 18, 2008
  • Fixed pagedata plugin's reporting capabilities. Added more flexibility to handle things besides numbers. And added a pagedata command to match the function.
  • Changed BoltWire's form key from key to boltkey to free up the "key" field for use in forms.
  • Just released a new poll plugin. Kind of cool...
  • Rewrote enable command to handle php4, and similarly upgraded the pagedata and poll plugins.
  • Released new textvar plugin for changing textvars. Quite cool.
  • Added a new time conditional which takes a to= & from= parameter (can be strtotime recognizable strings), and a page part (like {page}) and will return true if between the two times. Great for time stamped page names.
  • Added a new toc function which is far smarter than the simple toc template, as it can take an optional leader= parameter, and an offset= parameter. Updated the toc template to use it.
  • Added another search parameter: words=false, which ignores word boundaries. This was supposed to help with chinese characters say, where spaces may not be used. But it can be used to find all pages with any word containing a certain string like internationalizations => nation.
  • Slight modification to default style sheet to adjust padding around table cells.

boltwire2.16.zip June 15, 2008
  • Fixed bug in new time command related to how different versions of php handle strtotime. Crashed both the forum and blog plugins on my hosted site! Strange error... But it's working now.
  • Fixed bug in restore command and overwrite function involving failure to check the site.folders page for alt locations.

boltwire2.15.zip June 14, 2008
  • Add a ||highlight|| markup to core. Need to add the corresponding style to your skins.
  • Now fmt markups will go to end of line if no closing tag found: + >> __ ** // || ^^
  • Added template parameter to session commands (like edit). It's superior to the source= parameter, which will likely be dropped.
  • Now @author group is in core. (Looks to author data value for current page. Should match member name.)
  • Added @key_register to site.auth.write for login*, added authkey=register to register action (just before register command), and fixed BOLTauth to recognize key_groups when not logged in. Commented out @new group from BOLTauth as I don't think it is necessary any longer.
  • Added an exclude= parameter to postcount plugin for excluding headers and footers, etc.
  • Polished up site pages with a header
  • Fixed copyright symbol in bottom zone
  • Repaired action.backup--broken with recent changes to list function.
  • Added a site.public page and will begin moving public function pages (like cron and actions) to this hierarchy to help simplify permissions.

boltwire2.14.zip June 10, 2008
  • Fix text vars to allow page names (ie: a dot).
  • Now logging checks site.auth.log if fails site.auth.edit.
  • Dropped @owner and @new from site.auth.write for login*. See new fancy auth solution and authkey command below.
  • Added authkey command to unlock fields for special actions>>when there's a matching permission key.
  • Added a cool stopwatch=true parameter to any function.

boltwire2.13.zip June 6, 2008
  • Fixed bug in search function caused by cached index data and possibly other bugs as well.
  • Add altindex parameter to index and search functions to allow multiple, customized index files (ie docs => docs.index). Setting this also cause index to use an alternate index log (docs => site.index.docs).
  • Added an index action to index a page. With an advanced index option for indexing multiple pages if an admin.
  • Indexing now takes place automatically before cron is called>>on every page change. Plugins (like presence and the pageviews script) can exclude frequently changed pages from indexing.
  • Site notifications are now handled differently. After upgrading to the new plugin, you must manually add the command notify=page (can be csv list) to any forms where you desire site notifications to be logged. Also notifylog function was reworked a good bit and is now called notify. Still uses the site.notify page as usual. And sendnotify remains unchanged.
  • I'm offering a new "pageviews" plugin to replace the counter plugin which will lighten indexing significantly. If you are using the old plugin see the old counter solutions page and the new pageviews solution page for more details.
  • Fixed a bug in the exists function when dealing with other dirs.
  • Added a case=false parameter to equal condition to enable case insensitive checking.
  • Updated stopwatch function to work with the engine. It has probably been broken for several releases now.

boltwire2.12.zip June 4, 2008
  • Small fixes to the list and index functions. Should not cause any noticeable changes>>but needed for tags plugin.

boltwire2.11.zip June 2, 2008
  • Small fixes to UTF and external/interwiki links, code, etc.
  • Add simple conditional processing to search functions. Eliminated the new "limit" parameter as no longer needed.
  • Fixed bug in more / less conditions when only one parameter exists giving false matches.

boltwire2.10.zip May 30, 2008
  • Improved search template parameter to be able to take inline templates. (Similar to old fmt functionality).
  • Fixed bug in list/fmt parameter so final "join" gets removed.
  • Added a powerful time command (similar to the time function). Can take a time str (converts to a timestamp) or a fmt (uses current time) or both separated by a pipe (|). And it does exactly what you expect.
  • Added a useful reset_field command which allows you to reset a field value on the fly. Note: does not retrigger the field if a command. Though that could be added with one more line if desired. Just not sure it is necessary.
  • Reworked the counter function to get a slight bit more and easier functionality out of it. I've discovered some very powerful uses for it in templates... For example automatic table summaries. I used it in the blog engine. May break existing uses (such as the counter script).
  • Added a limit parameter to the search function, similar to count but measures actual output.
  • Fixed index function to search for UTF characters
  • Reworked plugin enable command to work on older BoltWire fields
  • Can use a template page in a fmt. Must only have lower order markups, like all fmt's.
  • Got <center>, <right>, <left> and the new <justify> working.
  • Fixed problem in IE7 trimming off tail end of page. Finally!
  • A few bugs here and there...

boltwire2.09.zip May 25, 2008
A minor release fixing a few misc bugs. Note the changelog for version 2.08 if you have not yet upgraded to UTF-8.
  • Fixed bug in the search function when no template declared
  • Now can add reload=true to the url to get a reload mark for your downloads. (You can still put it in the markup, also).
  • A fix to the html markups, recently introduced.
  • Rewrote page output/cron routine, as in some cases the tail end of the page was omitted.

boltwire2.08.zip May 20, 2008
The major change in this release is that BoltWire now handles everything in UTF-8. A few warnings:
  • This is likely to be buggy for awhile so proceed with caution. Php has poor support of UTF. BoltWire does not rely on mb_string overloading which is not available on some servers. In fact it should work fine on php4.
  • If you already have internationalizations in your wiki and it is encoded in ISO-8859, you will want to run utf8_fix.php on your pages directory. Put this script side by side with index.php and call it in your browser. On most English sites, there is no need for this.
  • To help with testing, this release has a temporary utf function with 1st parameter possibilities of length, upper, lower, check and strip, and 2nd parameter of a string. Please test this some.
  • All page names are now automatically stripped of any non-ascii chars. Including links, etc.
  • Please let me know if you notice any problems. I'm hoping most can be fixed without too much trouble. Also note some plugins may no longer work perfectly. Keep your fingers crossed!

boltwire2.07.zip May 20, 2008
  • Fixed a bug in zones function (when no zone page exists).
  • Fixed a bug in the exclude parameter of the search function which caused it to omit some pages it shouldn't have.
  • Added a type parameter to the various search capabilities so can do type=side or type=side,header,footer. Can also do type=-side,header,footer.
  • Small bug in functions.php when no parameters are set.
  • Reworked the list function to make it more powerful (replacing { item} with the full range of { p} variables) and hooked the search function into it for fmt= parameters. This means fmt= no longer uses the template engine>>resulting in big speed increase, but a small functionality loss. Or more accurately, some things now can only be done in templates. Let me know if you have questions.
  • Add a "join" parameter to the list function (can be used with fmt search results as well).
  • Disabled conflict resolution in the search indexing function.
  • Extra protection against cron infinite loop. Now cron cannot be run on site.cron.

boltwire2.06.zip May 16, 2008
  • Minor fix in image markup to render (more) valid xhtml
  • Fixed bug in plugins action
  • Small fix in zones action (the template)
  • Fixed important bug in undo action.
  • Major reworking of cron and notifications plugin to solve several bugs and get it working fully. Both proved quite a challenge. Still need a tutorial though!

boltwire2.05.zip May 14, 2008
  • Fixes small bug in upload markup, omitting page name.
  • Upload authorization failures now abort rather than giving the demo mode message.
  • Added upload_auth_fail message to site.messages.

boltwire2.04.zip May 14, 2008
  • Upgraded the search sort capabilities to work with the new indexing system.
  • FieldKey is now set dynamically to field name. This separates each field's login system
  • Deleted lines in site.config that are now related to plugins
  • Added index=true option to search function
  • Search command now returns query rather than csv list. Can use fmt=csv to replicate the old behavior if needed
  • Solved edit bug that caused glitches when editing pages that didn't exist (by changing stamp warnng to a message).
  • Rewrote site.index page to have a button for reindexing the entire site. Involved some fixes to the BOLTsavepage function.
  • Closes what may have been a security vulnerability opened up in 1.15. Have not thoroughly verified.

boltwire2.03.zip May 13, 2008
  • Added capability of multiple lines in bullets.
  • Rewrote indexing function for speed boost, added site.index page.
  • Changed find= to text= in search parameters.
  • Diffs now stored as page data for quicker histories, updated related actions.
  • Reworked stamping code for better functionality.
  • Renamed history action to undo action.
  • Renamed install action to plugins action.

boltwire2.02.zip April 30, 2008
  • Reworked the forward function to allow actions
  • Rewrote edit action to forward to action.missing if a page doesn't exist
  • Added an honorLines: true parameter to site config to allow better paragraph handling where turned off
  • Input fields now close with /> (except select and textareas to render better XHTML.

boltwire2.01.zip April 29, 2008
This is an important maintenance release fixing a good number of bugs (at least a dozen). It also adds a bit of basic math capability to the new counter function. Still exploring options for it. Otherwise>>no major changes.

boltwire2.00.zip April 28, 2008
This is a major new release with many new capabilities, and some old capabilities moved to plugins. At less than half the size of 1.0 it is both leaner and meaner! Worth the upgrade! There are a few areas of concern to migrate from 1.0 to 2.0, but it's doable. And it should be even more stable within a couple release, as the initial change bugs are ironed out. For info on the changes between 1.0 and 2.0, click here. It will also take some time to udate the BoltWire documentation and skins, snippets, plugins, etc.