Item11196: Better feedback from UserMapping

The TopicUserMapping and UserMapping interfaces don't use maketext to
translate any user messages.  And they in several places return 0 for
failures with no indication of the errors.

Note that this changes the API for the mappers. The mapper should throw
Error::Simple when encountering issues rather than leaving the user
guessing.

git-svn-id: http://svn.foswiki.org/trunk/core@13642 0b4bb1d4-4e5a-0410-9cc4-b2b747904278
Item11196: perltidy and misc. cleanup

git-svn-id: http://svn.foswiki.org/trunk/core@13643 0b4bb1d4-4e5a-0410-9cc4-b2b747904278
Item11437: Add package navigation to Perl Doc

git-svn-id: http://svn.foswiki.org/trunk/core@13644 0b4bb1d4-4e5a-0410-9cc4-b2b747904278
Item11437: made IncludeHandlers/doc.pm more robust against undef

git-svn-id: http://svn.foswiki.org/trunk/core@13646 0b4bb1d4-4e5a-0410-9cc4-b2b747904278
Item11441: restore redirectto to CommentPlugin

git-svn-id: http://svn.foswiki.org/trunk/core@13647 0b4bb1d4-4e5a-0410-9cc4-b2b747904278
Item11437: It's important to ensure that parameters have default values _before_ you apply any operations to them. In this case, the unit tests gave the game away (another good reason to always run them before checking in)

git-svn-id: http://svn.foswiki.org/trunk/core@13650 0b4bb1d4-4e5a-0410-9cc4-b2b747904278
Item11437: When no package is specified, the default package should be Foswiki not :: .  un-hardcoded SystemWebName.

git-svn-id: http://svn.foswiki.org/trunk/core@13652 0b4bb1d4-4e5a-0410-9cc4-b2b747904278
Item11437: Remove debug logging

git-svn-id: http://svn.foswiki.org/trunk/core@13653 0b4bb1d4-4e5a-0410-9cc4-b2b747904278
Item11443: Throw error if target web missing

Added another message to messages.tmpl

git-svn-id: http://svn.foswiki.org/trunk/core@13655 0b4bb1d4-4e5a-0410-9cc4-b2b747904278
Item11446:  Add endPoint validations

This needs careful review.  The anchor and query strings are not
validated prior to the redirect.    They were not validated previously
but got encoded (and corrupted) by passing the entire string through
getScriptUrl.

git-svn-id: http://svn.foswiki.org/trunk/core@13661 0b4bb1d4-4e5a-0410-9cc4-b2b747904278
Item11437: Fix unit tests by not enriching ---+ package line with 'internal' or 'public'.  This information is still displayed on the top of the PerlDoc page.  If proposal is accepted, then I will revert this change and fix the unit tests.

git-svn-id: http://svn.foswiki.org/trunk/core@13665 0b4bb1d4-4e5a-0410-9cc4-b2b747904278
Item10071: adding +values causes CGI to generate invalid XHTML (specifically, the checked='checked' attribute is generated twice

git-svn-id: http://svn.foswiki.org/trunk/core@13676 0b4bb1d4-4e5a-0410-9cc4-b2b747904278
Item11451: /usr/bin/time -v TestRunner in nightlies

git-svn-id: http://svn.foswiki.org/trunk/core@13690 0b4bb1d4-4e5a-0410-9cc4-b2b747904278
Item11452: Remove ->finish()'d Meta from MetaCache

git-svn-id: http://svn.foswiki.org/trunk/core@13692 0b4bb1d4-4e5a-0410-9cc4-b2b747904278
Item10240: make extender.pl handle vars embedded in other vars, a la Foswiki::Configure::Load

git-svn-id: http://svn.foswiki.org/trunk/core@13737 0b4bb1d4-4e5a-0410-9cc4-b2b747904278
Item11448: Don't mask other errors

The change to catch the redirect to do header cleanup might be masking
other Error::Simple thrown by the topic save.  So if the Error::Simple
is not the restauth redirect, propagate it on up.

Also add a checker to warn if GuestCanComment is inconsistent with the
protection of the rest and restauth scripts.

Finally add a warning to the {AuthScripts} checker.  If any *auth script
is not listed, we need to warn the admin.

git-svn-id: http://svn.foswiki.org/trunk/core@13746 0b4bb1d4-4e5a-0410-9cc4-b2b747904278
Item11436: Global cache for HtPasswdUser:

HtPasswdUser already is caching the file, so that multiple requests in a
single session only require a single read of .htpasswd.

In previous testing, loading ~4400 users from .htpasswd required around
40ms. A topic like System/JQueryAjaxHelper hits the password manager
30 times, so having the session cache saves almost 1200ms of processing
on my test system.

Changing the cache from per-session to global is a relatively small
change, and avoids re-reading .htpasswd repeatedly which could still be
fairly significant on a very busy system.

git-svn-id: http://svn.foswiki.org/trunk/core@13756 0b4bb1d4-4e5a-0410-9cc4-b2b747904278
Item11461: ensure that any obj passed to a befoeSaveHandler isn't marked as unloaded; if it is, then an access check can result in it being reloaded

git-svn-id: http://svn.foswiki.org/trunk/core@13768 0b4bb1d4-4e5a-0410-9cc4-b2b747904278
Item9563:  Refresh prefs cache b4 call afterSave

Prefs are cached, so any attempt to read changed topic preferences in
the afterSaveHandler fails because the cached values from before the
save are returned.

The simple fix appears to be to delete the preferences cache for the
object before dispatching the afterSaveHandler.

Updated unit tests to verify the issue.

There is stil some issue remaining - Foswiki::Func returns null
parameters when called in the afterSaveHandler.

git-svn-id: http://svn.foswiki.org/trunk/core@13771 0b4bb1d4-4e5a-0410-9cc4-b2b747904278
Item11462: Improve Net.pm error message handling

When run under configure, there is no Session.  Calls to logger fail
masking other errors.   Only call logger when there is a session.

Make sure every error is sent to STDERR.

git-svn-id: http://svn.foswiki.org/trunk/core@13776 0b4bb1d4-4e5a-0410-9cc4-b2b747904278