civicrm-core.git
9 years agoCRM-16373 - Bootstrap subsystems in more predictable order
Tim Otten [Sat, 19 Sep 2015 05:09:01 +0000 (22:09 -0700)]
CRM-16373 - Bootstrap subsystems in more predictable order

Several subsystems were initialized on-demand. This had a weird side-effect
where the container would start initializing and call another service, which
would then (indirectly) try to initialize another container. The two container
instances would not be the same.

This revision enforces a more carefully considered sequence of events (which
will be documented in the wiki page, "Bootstrap Reference").

9 years agoCRM_Core_Error - Don't display HTML crash when running tests
Tim Otten [Sat, 19 Sep 2015 05:03:20 +0000 (22:03 -0700)]
CRM_Core_Error - Don't display HTML crash when running tests

9 years agoCRM-16373 - MagicMerge - Improve comments/readability.
Tim Otten [Sat, 19 Sep 2015 01:00:30 +0000 (18:00 -0700)]
CRM-16373 - MagicMerge - Improve comments/readability.

9 years agoMerge pull request #6774 from totten/master-fs25
Tim Otten [Mon, 21 Sep 2015 03:54:45 +0000 (20:54 -0700)]
Merge pull request #6774 from totten/master-fs25

composer.json - Use symfony/filesystem circa 2.5

9 years agocomposer.json - Use symfony/filesystem circa 2.5
Tim Otten [Mon, 21 Sep 2015 03:00:00 +0000 (20:00 -0700)]
composer.json - Use symfony/filesystem circa 2.5

The rest of the Symfony components are targetting ~2.5, but some reason
we're autoselecting `symfony/filesystem` ~2.7.  That produces errors on
`test-debian6-1`.

9 years agoMerge pull request #6773 from civicrm/eileenmcnaughton-patch-1
Eileen McNaughton [Mon, 21 Sep 2015 02:24:27 +0000 (14:24 +1200)]
Merge pull request #6773 from civicrm/eileenmcnaughton-patch-1

CRM-16555 add code-comments

9 years agoCRM-16555 add code-comments
Eileen McNaughton [Mon, 21 Sep 2015 02:01:34 +0000 (14:01 +1200)]
CRM-16555 add code-comments

The patch added for CRM-16555 should not have been needed as the intention was that the function to getValidProcessors handling for mode would have worked. Adding some comments to indicate this for next time someone looks at it.

9 years agoMerge pull request #6771 from seamuslee001/CRM-17231-Master
Dave Greenberg [Fri, 18 Sep 2015 23:55:35 +0000 (16:55 -0700)]
Merge pull request #6771 from seamuslee001/CRM-17231-Master

CRM-17231 Allow for Multipart Report to be included in the Email Processor

9 years agoPHPCS fixes
Seamus Lee [Fri, 18 Sep 2015 04:43:38 +0000 (04:43 +0000)]
PHPCS fixes

9 years agoFurther tweeks following testing
Seamus Lee [Fri, 18 Sep 2015 04:34:20 +0000 (04:34 +0000)]
Further tweeks following testing

9 years agoPHPCS fixes
Seamus Lee [Wed, 16 Sep 2015 23:45:37 +0000 (23:45 +0000)]
PHPCS fixes

9 years agoCRM-17231 Allow for Multipart Report to be included in the Email Processor
Seamus Lee [Wed, 16 Sep 2015 23:36:45 +0000 (23:36 +0000)]
CRM-17231 Allow for Multipart Report to be included in the Email Processor

9 years agoMerge pull request #6755 from agileware/master-crm-17055
Monish Deb [Fri, 18 Sep 2015 21:45:52 +0000 (03:15 +0530)]
Merge pull request #6755 from agileware/master-crm-17055

CRM-17055: Confirmation email on unpaid events produces syntax error …

9 years agoMerge pull request #6770 from monishdeb/CRM16920
Monish Deb [Fri, 18 Sep 2015 21:36:17 +0000 (03:06 +0530)]
Merge pull request #6770 from monishdeb/CRM16920

CRM-16920 - When coding a report template, can specify a default 'fro…

9 years agoCRM-16920 - When coding a report template, can specify a default 'from' and 'to'...
monishdeb [Fri, 18 Sep 2015 20:39:45 +0000 (02:09 +0530)]
CRM-16920 - When coding a report template, can specify a default 'from' and 'to' for date ranges, but not for integer ranges

https://issues.civicrm.org/jira/browse/CRM-16920

9 years agoMerge pull request #6768 from totten/master-composer-lock
Tim Otten [Fri, 18 Sep 2015 19:51:47 +0000 (12:51 -0700)]
Merge pull request #6768 from totten/master-composer-lock

composer.lock - update

9 years agocomposer.lock - update
Tim Otten [Fri, 18 Sep 2015 19:37:50 +0000 (12:37 -0700)]
composer.lock - update

Previous merges left composer.lock with incorrect hash

9 years agoMerge pull request #6764 from davecivicrm/CRM-15378
Dave Greenberg [Fri, 18 Sep 2015 17:07:38 +0000 (10:07 -0700)]
Merge pull request #6764 from davecivicrm/CRM-15378

CRM-15378 - Add max participants and count to price option browse page.

9 years agoMerge pull request #6757 from yashodha/CRM-17227
Monish Deb [Fri, 18 Sep 2015 09:45:44 +0000 (15:15 +0530)]
Merge pull request #6757 from yashodha/CRM-17227

CRM-17227: Error thrown while saving profile in Contribution page

9 years agoMerge pull request #6765 from totten/master-cdl
Tim Otten [Fri, 18 Sep 2015 08:14:47 +0000 (01:14 -0700)]
Merge pull request #6765 from totten/master-cdl

CRM-14232, CRM-16373 - Fix saving of contact_default_language

9 years agoCRM-14232, CRM-16373 - Fix saving of contact_default_language
Tim Otten [Fri, 18 Sep 2015 04:34:12 +0000 (21:34 -0700)]
CRM-14232, CRM-16373 - Fix saving of contact_default_language

9 years agoMerge pull request #6542 from totten/master-setting-helper
Tim Otten [Fri, 18 Sep 2015 00:49:14 +0000 (17:49 -0700)]
Merge pull request #6542 from totten/master-setting-helper

CRM-16373 - $config based on settings (no config_backend). Use Civi:: helper.

9 years agoMerge pull request #6761 from eileenmcnaughton/CRM-17233
Dave Greenberg [Fri, 18 Sep 2015 00:32:44 +0000 (17:32 -0700)]
Merge pull request #6761 from eileenmcnaughton/CRM-17233

CRM-17233 payment block showing in edit mode on contribution page

9 years agoCRM-15378 - Add max participants and count to price option browse page.
Dave Greenberg [Fri, 18 Sep 2015 00:27:34 +0000 (17:27 -0700)]
CRM-15378 - Add max participants and count to price option browse page.

----------------------------------------
* CRM-15378: Include Max Participants and Participant Count columns when viewing price field options
  https://issues.civicrm.org/jira/browse/CRM-15378

9 years agocivicrm_generated.mysql - regen
Tim Otten [Thu, 17 Sep 2015 05:14:28 +0000 (22:14 -0700)]
civicrm_generated.mysql - regen

9 years agoCRM-16373 - Path, URL Admin - Explain variables
Tim Otten [Thu, 17 Sep 2015 07:51:02 +0000 (00:51 -0700)]
CRM-16373 - Path, URL Admin - Explain variables

9 years agoSettingsManager::getSystemDefaults() - Return defaults even for critical boot settings
Tim Otten [Thu, 17 Sep 2015 05:59:05 +0000 (22:59 -0700)]
SettingsManager::getSystemDefaults() - Return defaults even for critical boot settings

This fixes some issues in tests involving enableComponents.

Upshot: The UI for setting URLs/directories now displays the default values properly.

9 years agoCRM_Core_BAO_Setting - Don't prefill settings
Tim Otten [Thu, 17 Sep 2015 04:49:57 +0000 (21:49 -0700)]
CRM_Core_BAO_Setting - Don't prefill settings

It's no longer necessary to prefill settings because defaults are loaded in
real(ish) time.

Removing this because it depends on ConfigSetting functions which I'd
like to also remove.

9 years agoCRM_Admin_Form_Preferences - Fix loading of settings
Tim Otten [Thu, 17 Sep 2015 04:08:38 +0000 (21:08 -0700)]
CRM_Admin_Form_Preferences - Fix loading of settings

9 years agoCRM-16373 - Migrate config_backend to civicrm_setting
Tim Otten [Thu, 17 Sep 2015 03:59:01 +0000 (20:59 -0700)]
CRM-16373 - Migrate config_backend to civicrm_setting

There are two steps at which we convert config_backend:

 * In loading the upgrade environment, we may need access to old settings.
   So SettingsBag supports reading config_backend for the active domain.
 * As a specific upgrade step (for 4.7.alpha1), we migrate all values
   for all domains (unless there's already a setting).

9 years agoCRM_Core_Config - Expose userFrameworkVersion, replyTo, versionCheck, initialized
Tim Otten [Thu, 17 Sep 2015 01:50:57 +0000 (18:50 -0700)]
CRM_Core_Config - Expose userFrameworkVersion, replyTo, versionCheck, initialized

The first three were migrated to settings; although core no longer accesses them on $config,
we may need to migrate them, and it doesn't hurt to provide them for backward-compatibility.

Initialized was a just a bug.

9 years agoCRM-14707 - CRM_Utils_Hook::runHooks - Cache function names
Tim Otten [Wed, 16 Sep 2015 04:43:23 +0000 (21:43 -0700)]
CRM-14707 - CRM_Utils_Hook::runHooks - Cache function names

9 years agoCRM-14707 - CRM_Core_BAO_Cache::setItem - Don't fire hooks
Tim Otten [Wed, 16 Sep 2015 04:41:23 +0000 (21:41 -0700)]
CRM-14707 - CRM_Core_BAO_Cache::setItem - Don't fire hooks

9 years agoMemcache for extension, setting, and string caches
Tim Otten [Wed, 16 Sep 2015 03:53:53 +0000 (20:53 -0700)]
Memcache for extension, setting, and string caches

9 years agoCRM_Core_Config - Simplify. Current cache commands are pointless.
Tim Otten [Wed, 16 Sep 2015 02:55:04 +0000 (19:55 -0700)]
CRM_Core_Config - Simplify. Current cache commands are pointless.

9 years agoMagicMerge - Changes to properties should not be persistent across requests
Tim Otten [Wed, 16 Sep 2015 02:30:00 +0000 (19:30 -0700)]
MagicMerge - Changes to properties should not be persistent across requests

9 years agoRemove CRM_Core_Config_Defaults
Tim Otten [Wed, 16 Sep 2015 02:01:03 +0000 (19:01 -0700)]
Remove CRM_Core_Config_Defaults

9 years agoMagicMerge - Per-request cache of path/url properties
Tim Otten [Wed, 16 Sep 2015 01:55:26 +0000 (18:55 -0700)]
MagicMerge - Per-request cache of path/url properties

9 years agoCivi::paths() - Decouple settings from paths. Allow path vars.
Tim Otten [Tue, 15 Sep 2015 22:58:17 +0000 (15:58 -0700)]
Civi::paths() - Decouple settings from paths. Allow path vars.

There has been a policy underwhich paths and URLs are assumed to be relative
to different points (urls => webroot; paths => sites/*/files/civicrm).  For
some settings, this is fairly confusing.  The policy had been encoded in
`SettingsBag::getPath` and `SettingsBag::getUrl`.  It's particularly
confusing because (sometimes) the default value of a specific property isn't
really aligned with the policy.

This revision attempts to cleanup in two ways:

 1. It removes policy from `SettingsBag` and puts it in `Civi\Core\Paths`.
 2. It makes the policy less important by allowing variables in the paths.
   * `[civicrm.files]/upload` might evaluate to `/var/www/sites/default/files/civicrm/upload`
   * `[cms.root]/myuploads` might evaluate to `/var/www/myuploads`

The revision also updates MagicMerge to store various path and URL policies
in `getPropertyMap()` rather than adhoc callbacks.

9 years agoCRM-16373 - rm CRM_Core_Config_Variables
Tim Otten [Tue, 15 Sep 2015 07:37:14 +0000 (00:37 -0700)]
CRM-16373 - rm CRM_Core_Config_Variables

9 years agocivicrm_navigation.tpl - Move defaults into settings/*.php
Tim Otten [Tue, 15 Sep 2015 07:18:10 +0000 (00:18 -0700)]
civicrm_navigation.tpl - Move defaults into settings/*.php

For a large number of settings, defaults are declared twice -- once in
`xml/templates/civicrm_navigation.tpl` and once in `settings/*.php`.  In
many cases, these are identical/redundant, but there are a couple where the
defaults diverged.

I believe the `civicrm_navigation.tpl` values have generally taken precedent
on new installations, so this commit revises `settings/*.php` to fix any
discrepancies.

9 years agoSettingsBag::setDb() - Merge in CRM_Core_BAO_Setting::_setItem and ::dao()
Tim Otten [Tue, 15 Sep 2015 04:41:15 +0000 (21:41 -0700)]
SettingsBag::setDb() - Merge in CRM_Core_BAO_Setting::_setItem and ::dao()

9 years agoCRM_Core_BAO_Setting - Remove redundant static cache
Tim Otten [Tue, 15 Sep 2015 04:16:13 +0000 (21:16 -0700)]
CRM_Core_BAO_Setting - Remove redundant static cache

Before CRM-16373, the setting cache was stored in a static property of the
BAO.  This data is now loaded into objects -- which are stored in the
container.

This is essentially the same for a typical request, and (for unit-testing)
it provides simpler cleanup between tests.

9 years agoCRM-16373 - SettingsManager - useMandatory() to apply post-boot changes
Tim Otten [Tue, 15 Sep 2015 00:58:45 +0000 (17:58 -0700)]
CRM-16373 - SettingsManager - useMandatory() to apply post-boot changes

Note: The global `$civicrm_setting` is meant to provide sysadmins with a way
to override settings in `civicrm.settings.php`, but it has traditionally
been possible for extensions to manipulate `$civicrm_setting` in a hook.  If
you do this, please call `useMandatory()` to tell SettingsManager to re-scan
`$civicrm_setting`.

9 years agoSettingsBag - Add getDefault(), getMandatory(). Cleanup comments.
Tim Otten [Tue, 15 Sep 2015 00:56:13 +0000 (17:56 -0700)]
SettingsBag - Add getDefault(), getMandatory(). Cleanup comments.

9 years agosettings/ - Add comment about critical/bootstrap settings.
Tim Otten [Tue, 15 Sep 2015 00:09:28 +0000 (17:09 -0700)]
settings/ - Add comment about critical/bootstrap settings.

9 years agoCRM-16373 - Simplify UpdateConfigBackend and doSiteMove()
Tim Otten [Sun, 13 Sep 2015 04:18:10 +0000 (21:18 -0700)]
CRM-16373 - Simplify UpdateConfigBackend and doSiteMove()

doSiteMove() has been performing a search-and-replace against data
structures which haven't exist since at least 4.0; it seems quite unlikely
that this works.  Anecdotally, the workflow around this either incomplete or
buggy/broken.  Simplifying this is simply a reflection of the reality that
it doesn't do what it was written to do.

Instead, doSiteMove() now resets to a standard baseline/default.

9 years agoCRM_Utils_PDF_Utils::pdflib - Remove unused function with quaint data defaults
Tim Otten [Sun, 13 Sep 2015 00:57:17 +0000 (17:57 -0700)]
CRM_Utils_PDF_Utils::pdflib - Remove unused function with quaint data defaults

9 years agoapi_v3_SettingTest - Fix up
Tim Otten [Sat, 12 Sep 2015 22:13:55 +0000 (15:13 -0700)]
api_v3_SettingTest - Fix up

9 years agoCRM_Core_Config - Bind to the settings of the active domain at the moment of setup.
Tim Otten [Sat, 12 Sep 2015 23:23:58 +0000 (16:23 -0700)]
CRM_Core_Config - Bind to the settings of the active domain at the moment of setup.

I'm not sure this is actually a good behavior, but it's the old behavior,
and there's a unit-test which checks for it.

9 years agoCore.settings.php - doNotAttachPDFReceipt - Match previous defaults
Tim Otten [Sat, 12 Sep 2015 21:47:04 +0000 (14:47 -0700)]
Core.settings.php - doNotAttachPDFReceipt - Match previous defaults

9 years agoconfig->countryLimit - Don't directly modify array
Tim Otten [Sat, 12 Sep 2015 20:58:37 +0000 (13:58 -0700)]
config->countryLimit - Don't directly modify array

When using magic method for countryLimit, it's difficult to directly modify
the array.  It's easier to replace the array as a whole.

9 years agoSettings - Remove special cases for `prefetch` and `config_only`
Tim Otten [Sat, 12 Sep 2015 07:15:21 +0000 (00:15 -0700)]
Settings - Remove special cases for `prefetch` and `config_only`

9 years agoRemove invalid $config->defaultSymbol
Tim Otten [Sat, 12 Sep 2015 07:00:03 +0000 (00:00 -0700)]
Remove invalid $config->defaultSymbol

Even in v4.5, this field appears to have been undefined, but it probably
behaved correctly anyway because the undefined value was passed into a
function which didn't need it.

9 years agoCleanup `config_only` settings (maxFileSize, doNotAttachPDFReceipt, resCacheCode)
Tim Otten [Sat, 12 Sep 2015 06:34:49 +0000 (23:34 -0700)]
Cleanup `config_only` settings (maxFileSize, doNotAttachPDFReceipt, resCacheCode)

9 years agoMove BAO_Setting::getSettingSpecification => SettingsMetdata::getMetadata
Tim Otten [Sat, 12 Sep 2015 06:16:24 +0000 (23:16 -0700)]
Move BAO_Setting::getSettingSpecification => SettingsMetdata::getMetadata

When this function is in the BAO, it requires that the DAO exist. In a new
installation running GenCode, this can create dependency loop (where
generating code requires ts(), and using ts() requires settings, and using
settings requires that you already have the generated code).

9 years agoCRM_Core_I18n - Use CRM_Core_Config less
Tim Otten [Sat, 12 Sep 2015 06:15:34 +0000 (23:15 -0700)]
CRM_Core_I18n - Use CRM_Core_Config less

9 years agoCRM_Utils_Cache::create - Use factory function
Tim Otten [Sat, 12 Sep 2015 03:36:44 +0000 (20:36 -0700)]
CRM_Utils_Cache::create - Use factory function

Low-level tools like GenCode may run without access to a database. When we
try to use caching in central code, the cache-accesses are prone to
crashing. The problem -- in this environment, we shouldn't even try to use
databse for caching.

`CRM_Utils_Cache::create()` will attempt to create the best cache it can,
depending on what services are available.

9 years agoCRM_Core_I18n::crm_translate_raw - Don't lookup $config->lcMessages for every string
Tim Otten [Sat, 12 Sep 2015 03:22:49 +0000 (20:22 -0700)]
CRM_Core_I18n::crm_translate_raw - Don't lookup $config->lcMessages for every string

Accessing `$config` is now be a little slower, and this function accounted
for about half of all calls.

9 years agoGenCode - More complete env
Tim Otten [Sat, 12 Sep 2015 01:15:26 +0000 (18:15 -0700)]
GenCode - More complete env

9 years agoCRM_Utils_System - Cleanup useFrameworkRelativeBase
Tim Otten [Fri, 11 Sep 2015 08:15:01 +0000 (01:15 -0700)]
CRM_Utils_System - Cleanup useFrameworkRelativeBase

9 years agoCRM-16373 - CRM_Core_Config - Use `Runtime` and `MagicMerge`
Tim Otten [Fri, 11 Sep 2015 08:07:25 +0000 (01:07 -0700)]
CRM-16373 - CRM_Core_Config - Use `Runtime` and `MagicMerge`

9 years agoCivi\Core\SettingsManager - Don't try to read settings if there's no DB
Tim Otten [Fri, 11 Sep 2015 05:03:37 +0000 (22:03 -0700)]
Civi\Core\SettingsManager - Don't try to read settings if there's no DB

9 years agoCRM-16373 - Civi\Core\SettingsManager - Load defaults *after* core bootstrap.
Tim Otten [Thu, 10 Sep 2015 23:36:28 +0000 (16:36 -0700)]
CRM-16373 - Civi\Core\SettingsManager - Load defaults *after* core bootstrap.

9 years agoCRM_Extension_System - Make it a little easier to skim.
Tim Otten [Thu, 10 Sep 2015 23:34:05 +0000 (16:34 -0700)]
CRM_Extension_System - Make it a little easier to skim.

9 years agoCRM-16373 - CRM_Core_Config_Variables should be strictly about data
Tim Otten [Thu, 10 Sep 2015 21:38:55 +0000 (14:38 -0700)]
CRM-16373 - CRM_Core_Config_Variables should be strictly about data

The distribution of variables and functions between `CRM_Core_Config` and
`CRM_Core_Config_Variables` seems pretty random.  In anticipation of
swapping out `CRM_Core_Config_Variables`, make a few changes:

 * Move various functions from `CRM_Core_Config_Variables` to BAOs (`provinceLimit, `countryLimit`, `defaultContactCountry`, `defaultContactCountryName`, `defaultCurrencySymbol`)
 * Put deprecated stubs in `CRM_Core_Config`
 * Move most variables from `CRM_Core_Config` to `CRM_Core_Config_Variables`.

9 years agoCRM_Core_Config - Fix bugs in path/dir settings
Tim Otten [Wed, 9 Sep 2015 20:50:11 +0000 (13:50 -0700)]
CRM_Core_Config - Fix bugs in path/dir settings

9 years agoCRM-16373 - Search Settings - Fix dupes (eg contact_reference_options/autocompleteCon...
Tim Otten [Wed, 9 Sep 2015 06:18:34 +0000 (23:18 -0700)]
CRM-16373 - Search Settings - Fix dupes (eg contact_reference_options/autocompleteContactReference)

Note:
 * The `autocompleteContactReference` and `autocompleteContactSearch` settings don't seem to be really stored as such.
 * The form includes various hacks which effectively saves these fields in `contact_reference_options` and `contact_autocomplete_options`.
 * At runtime, the application logic checks for `contact_reference_options` and `contact_autocomplete_options`.
 * This situation predates the declarations of `autocompleteContactReference` and `autocompleteContactSearch` in `Search.setting.php`. It seems likely
   that these settings have never been useful.

The fields still have some hacks, but they should be a bit easier to read/trace/grep.

9 years agoCRM-16373 - Localization - Rearrange load/save logic
Tim Otten [Tue, 8 Sep 2015 21:23:42 +0000 (14:23 -0700)]
CRM-16373 - Localization - Rearrange load/save logic

 * Declare missing setting `languageLimit`
 * Allow saving admin form -- even when using makeMultilingual, makeSinglelingual, addLanguage, and/or languageLimit
 * Move onChange logic for `lcMessages` from `ConfigSetting::add()` to `onChangeLcMessages()`
 * Move locale init from `ConfigSetting::retrieve()` to `applyLocale()`

9 years agoCRM-16373 - CRM_Admin_Form_Setting - Generate error instead of saving config fields
Tim Otten [Tue, 8 Sep 2015 00:14:32 +0000 (17:14 -0700)]
CRM-16373 - CRM_Admin_Form_Setting - Generate error instead of saving config fields

9 years agoCRM-16373 - CRM_Admin_Form_Setting_Search - Don't save through ConfigSetting::add()
Tim Otten [Tue, 8 Sep 2015 02:21:03 +0000 (19:21 -0700)]
CRM-16373 - CRM_Admin_Form_Setting_Search - Don't save through ConfigSetting::add()

9 years agoCRM-16373 - CRM_Admin_Form_Setting_Date - Don't save through ConfigSetting::add()
Tim Otten [Tue, 8 Sep 2015 01:48:15 +0000 (18:48 -0700)]
CRM-16373 - CRM_Admin_Form_Setting_Date - Don't save through ConfigSetting::add()

9 years agoCRM-16373 - CRM_Admin_Form_Setting_Misc - Don't save through ConfigSetting::add()
Tim Otten [Tue, 8 Sep 2015 01:30:23 +0000 (18:30 -0700)]
CRM-16373 - CRM_Admin_Form_Setting_Misc - Don't save through ConfigSetting::add()

9 years agoCRM-16373 - Migrate Map/Geocode settings
Tim Otten [Tue, 8 Sep 2015 01:09:25 +0000 (18:09 -0700)]
CRM-16373 - Migrate Map/Geocode settings

9 years agoCRM-16373 - Localization - Save through settings instead of domain
Tim Otten [Sun, 6 Sep 2015 01:01:18 +0000 (18:01 -0700)]
CRM-16373 - Localization - Save through settings instead of domain

9 years agoConfigSetting::fixParams - Remove legacy handling for countryLimit, provinceLimit...
Tim Otten [Mon, 7 Sep 2015 23:54:56 +0000 (16:54 -0700)]
ConfigSetting::fixParams - Remove legacy handling for countryLimit, provinceLimit, defaultContactCountry

This appears to be migration logic for handling a change in the format of
select config fields.  The migration logic appears to originate before v3.0.
Since we're only supporting upgrades from v4.0+, there's no point in keeping
it.

9 years agoCRM_Core_BAO_ConfigSetting::formatParams - Remove silly function
Tim Otten [Mon, 7 Sep 2015 23:39:23 +0000 (16:39 -0700)]
CRM_Core_BAO_ConfigSetting::formatParams - Remove silly function

This function is basically just array_merge().

In theory, there's a side-effect where NULL values in `$values` are unset,
but neither use-case seems to make any use of `$values` afterward, and that
smells like an accidental side-effect anyway.

9 years agoCRM-16373 - Mailer settings - Remove reliance on CRM_Core_BAO_ConfigSetting::create
Tim Otten [Sat, 5 Sep 2015 19:23:13 +0000 (12:23 -0700)]
CRM-16373 - Mailer settings - Remove reliance on CRM_Core_BAO_ConfigSetting::create

9 years agoCRM-16373, CRM-14349 - Config - Disintermediate localeCustomStrings
Tim Otten [Fri, 28 Aug 2015 02:29:24 +0000 (19:29 -0700)]
CRM-16373, CRM-14349 - Config - Disintermediate localeCustomStrings

localeCustomStrings has a pretty w.e.i.r.d. lifecycle (involving table `civicrm_word_replacements`
and column `civicrm_domain.locale_cusotm_Strings`).  This commit does not unweird it, but the
weirdness no longer involves special-case logic on `CRM_Core_Config*` -- all the weirdness is
concentrated in `CRM_Core_BAO_WordReplacements` and `CRM_Admin_Form_WordReplacements`.

9 years agoCRM-16373 - Simplify loading of enableComponents
Tim Otten [Thu, 27 Aug 2015 23:03:54 +0000 (16:03 -0700)]
CRM-16373 - Simplify loading of enableComponents

9 years agoCRM_Core_BAO_Setting::dao() - Don't filter on group, but do save a blank group.
Tim Otten [Thu, 27 Aug 2015 23:01:08 +0000 (16:01 -0700)]
CRM_Core_BAO_Setting::dao() - Don't filter on group, but do save a blank group.

9 years agoCRM-16373 - Save URLs and paths through settings instead of domain
Tim Otten [Sun, 23 Aug 2015 17:03:44 +0000 (10:03 -0700)]
CRM-16373 - Save URLs and paths through settings instead of domain

9 years agocivicrm_api3_setting_getvalue - Skip $config. Use settings.
Tim Otten [Sun, 23 Aug 2015 22:46:41 +0000 (15:46 -0700)]
civicrm_api3_setting_getvalue - Skip $config. Use settings.

9 years ago(Directory,Url).setting.php - Tweaks
Tim Otten [Sun, 23 Aug 2015 17:01:38 +0000 (10:01 -0700)]
(Directory,Url).setting.php - Tweaks

9 years agoCRM_Core_BAO_Preferences - Remove unused file/class/functions
Tim Otten [Sun, 23 Aug 2015 16:05:55 +0000 (09:05 -0700)]
CRM_Core_BAO_Preferences - Remove unused file/class/functions

9 years agoCRM-16373 - CRM_Core_Config_Defaults - Split setValues() into pieces
Tim Otten [Sun, 23 Aug 2015 15:58:33 +0000 (08:58 -0700)]
CRM-16373 - CRM_Core_Config_Defaults - Split setValues() into pieces

The major pieces:
 * `userSystem->getDefaultFileStorage`
 * `userSystem->getCiviSourceStorage`
 * `getCustomFileUploadDir`, `getCustomPhpPathDir`, `getImageUploadDir`, etc

9 years agoCRM_Utils_Geocode - Read settings instead of config
Tim Otten [Sun, 23 Aug 2015 15:58:01 +0000 (08:58 -0700)]
CRM_Utils_Geocode - Read settings instead of config

9 years agoCRM-16373 - SettingsBag - Add getUrl/getPath/setUrl/setPath
Tim Otten [Sun, 23 Aug 2015 09:43:12 +0000 (02:43 -0700)]
CRM-16373 - SettingsBag - Add getUrl/getPath/setUrl/setPath

9 years agoCRM-16373 - CRM_Core_Config - Simplify initialization, esp `templateCompileDir`
Tim Otten [Sun, 23 Aug 2015 08:38:35 +0000 (01:38 -0700)]
CRM-16373 - CRM_Core_Config - Simplify initialization, esp `templateCompileDir`

Generally, this commit removes some silly 1-line functions, misplaed
functions, duplicated steps, obvious comments, and expired comments.

There is a change in `templateCompileDir`.

The `templateCompileDir` had two different intialization blocks (in
different places), which likely arose from variations in the code-paths used
for memcache systems.  Both routines append a locale and create the dir.

This is redundant, and it unnecessarily forces us to resolve the locale
early during initialization.  But honestly we don't need to append the
locale until much later (when/if Smarty is first used).

There are a few oddballs who use `$config->templateCompileDir` and they may
see a slight change (working with the real templateCompileDir rather than
the locale subdir):

 * The cleanup. If this code causes a change, it will be an improvement:
   instead of cleaning the Smarty cache for one locale, it'll clean the
   entire Smarty cache for all locales.
 * Random temp files. The temp files seem to be transactional in nature
   (tied to the specific invocatoin) and not to the locale.

9 years agoCRM-16373 - Config - Migrate `userFrameworkUsersTableName` to settings
Tim Otten [Sat, 22 Aug 2015 11:29:06 +0000 (04:29 -0700)]
CRM-16373 - Config - Migrate `userFrameworkUsersTableName` to settings

There was some code to initialize this field on Joomla and WordPress, but it
appears to be pointless -- the value is only used within the Drupal UF.
More generally, this is a good thing - we should use CMS API's rather than
peeking into their schema.

9 years agoCRM-16373 - Config - Remove `userFrameworkVersion`
Tim Otten [Sat, 22 Aug 2015 10:42:07 +0000 (03:42 -0700)]
CRM-16373 - Config - Remove `userFrameworkVersion`

This is only very rarely used -- seems silly to look it up on every page
request and to cache it config object.

9 years agoCRM-16373 - Config - Remove `smartyDir`, `pluginsDir`, and `sqlDir`
Tim Otten [Sat, 22 Aug 2015 10:21:14 +0000 (03:21 -0700)]
CRM-16373 - Config - Remove `smartyDir`, `pluginsDir`, and `sqlDir`

9 years agoCRM-16373 - Config - Remove `componentRegistry`
Tim Otten [Sat, 22 Aug 2015 10:10:04 +0000 (03:10 -0700)]
CRM-16373 - Config - Remove `componentRegistry`

9 years agoCRM-16373 - CRM_*_Config - Remove unused component config stuff
Tim Otten [Sat, 15 Aug 2015 11:53:59 +0000 (04:53 -0700)]
CRM-16373 - CRM_*_Config - Remove unused component config stuff

This code seems to generate default value for domain.config_backend.
However, the only one which defined any defaults was CiviMail, and that's
now moved over to `settings/`.

9 years agoCRM-16373 - settings - Declare mailer settings
Tim Otten [Sat, 15 Aug 2015 11:45:54 +0000 (04:45 -0700)]
CRM-16373 - settings - Declare mailer settings

Conflicts:
settings/Mailing.setting.php

9 years agoCRM-16373 - Config - Remove `enableComponentIDs`
Tim Otten [Sat, 22 Aug 2015 09:45:39 +0000 (02:45 -0700)]
CRM-16373 - Config - Remove `enableComponentIDs`

Note: `enableComponents` is heavily used, but `enableComponentIDs` is only
used once.  Generally, it's much easier to write tests based on names
(`enableComponents`) than IDs (`enableComponentIDs`).

9 years agoCRM-13244 - Civi\Core\Container - Allow hooks to modify container. Cache it.
Tim Otten [Thu, 23 Jul 2015 02:00:31 +0000 (19:00 -0700)]
CRM-13244 - Civi\Core\Container - Allow hooks to modify container. Cache it.

Conflicts:
composer.json

9 years agoCRM_Core_BAO_Setting::getItem() - Fix calls which use deprecated parameters. Fix...
Tim Otten [Sat, 22 Aug 2015 08:46:25 +0000 (01:46 -0700)]
CRM_Core_BAO_Setting::getItem() - Fix calls which use deprecated parameters. Fix dedupe_email_default conflict.

For `dedupe_email_default`, the default values in `getItem()` and in
`settings/` disagree.  The default in `settings/` seems better IMHO.

9 years agoCRM-11743 - Civi::log() - Add short hand for logging
Tim Otten [Fri, 21 Aug 2015 06:05:18 +0000 (23:05 -0700)]
CRM-11743 - Civi::log() - Add short hand for logging

9 years agochecksum_timeout - Use consistent naming
Tim Otten [Thu, 20 Aug 2015 11:14:04 +0000 (04:14 -0700)]
checksum_timeout - Use consistent naming

This was a weird one:

 * The admin form rendered HTML element "checksumTimeout" but saved setting "checksum_timeout", which required workarounds.
 * The runtime code read the setting as "checksum_timeout".
 * The metadata defined setting "checksumTimeout". `prefetch` is enabled, but there's no `config_key` or `legacy_key`.

I believe this means that the runtime and admin form worked (because they
agreed that the name was "checksum_timeout"), but the Setting API would not
work (because it used "checksumTimeout").

This revision standardizes on "checksum_timeout" on the theory that
"checksum_timeout" was the actual value used at runtime. This means:

 * If you had configured the form and had it working correctly, it should
   still work correctly.
 * If you had a script to set "checksumTimeout" via API, then it wasn't
   working before, and it's still not working now.