Fix #13496: Send all dates in the GMT timezone

Since NuSOAP's conversion of dates to the Etc/GMT timezone is not
what we want, rely on PHP's built in formatting to generate the
correct time zone offset.
SOAP Tests: update to use the new date format
VersionTest: make tests run against bugtrackers with existing versions
SOAP tests: centralise the number of issues to retrieve
SOAP filter tests: allow running when issues already exist

These tests assumed that no issues exist in the target repository,
which is not always true. It is more convenient to run against an
existing repository. Also, the tests are enhanced to retrieve a full
page , a partial page and an empty page.
SOAP Tests: use a more predictable option for the preference test

Since the default value for the language has changed between 1.2 and 
1.3 the user preference test is inconsistent across installations. We
now pick the bugnote_order as a less likely preference to be changed.
Fix #13528 : SOAP API accesses undefined variable in error handling
Fix #13415 ( cloning issue with attachments doesn't work )

Thanks to adminactoll for providing the patch.
Removed trailing whitespace
Perform obsolete check against db config also

Previously the check for usage of obsolete configuration variables was
only performed against global variables (defined in config_inc.php).
With this change, a more thorough verification is done, including
values with an override in mantis_config_table.

Detailed information about where the config option is used is printed
with the warning message.

Fixes #13435
Remove "$g_" prefix from obsolete config warning messages

Designating config options using the "$g_" prefix in the warning
messages when checking for obsolete configurations does not make sense
when they are defined in the database.

Removing this previx also makes the messages consistent with the new
admin checks interface in 1.3.

Affects issue #13435
login_page.php return param is ignored when already logged in

This prevents proper behavior when links to bugs are used from an
external application after the initial authentication

Fixes #13060

Aligned form variables initialization for better code readability

Signed-off-by: Damien Regad <damien.regad@merckgroup.com>
Fix syntax error

Introduced in bbebc4e3666eabe91938bcd9251933568a7aa031, forgot to git
add before commit...

Fixes #13060
Improve admin checks for language strings

This brings the following improvements to test_lang.php:

 - Simplify the code by defining a new checkplugins() function for
   plugins language checks, allowing to use a revised checklangdir()
   for both the main and the plugin language strings (removes the
   recursive call)

 - Use PHP scandir() function to retrieve a sorted array of files
   instead of manually building it using opendir() and a loop on
   readdir()

 - Process the languages in alphabetical order

 - Array having strings as keys are valid tokens. Fixes #13643
   This avoids reporting errors is useful for plugin error strings like
   $MANTIS_ERROR['plugin_example_error1'] = 'Error message';

 - Better formatting of error messages

 - Whitespace and coding guidelines fixes
Fix #13644 Deleting an issue with assigned sponsorship throws error
Added basic documentation for integrating with MantisBT
Only update bugnotes when actual fields have changed

Fixes #13377: Calling mc_issue_update creates erroneous "Note View State changed" items in history
Fix #13571: SOAP Api / mci_get_user_id() : added possibility to find user id by email
Extract tag_count and tag_get_all

Affects #13446: Add tags support to soap api
Localisation updates from http://translatewiki.net.