+--------------------------------------------------------------------+
| CiviCRM version 4.6 |
+--------------------------------------------------------------------+
- | Copyright CiviCRM LLC (c) 2004-2014 |
+ | Copyright CiviCRM LLC (c) 2004-2015 |
+--------------------------------------------------------------------+
| This file is a part of CiviCRM. |
| |
| GNU Affero General Public License or the licensing of CiviCRM, |
| see the CiviCRM license FAQ at http://civicrm.org/licensing |
+--------------------------------------------------------------------+
-*/
+ */
/**
*
* Serves as a wrapper between the UserFrameWork and Core CRM
*
* @package CRM
- * @copyright CiviCRM LLC (c) 2004-2014
+ * @copyright CiviCRM LLC (c) 2004-2015
* $Id$
*
*/
if ($args[0] !== 'civicrm') {
return NULL;
}
+ // CRM-15901: Turn off PHP errors display for all ajax calls
+ if (CRM_Utils_Array::value(1, $args) == 'ajax' || CRM_Utils_Array::value('snippet', $_REQUEST)) {
+ ini_set('display_errors', 0);
+ }
if (!defined('CIVICRM_SYMFONY_PATH')) {
// Traditional Civi invocation path
}
/**
- * Perform general setup
+ * Perform general setup.
*
* @param array $args
* List of path parts.
}
else {
$template->assign('urlIsPublic', FALSE);
- self::versionCheck($template);
+ self::statusCheck($template);
}
if (isset($item['return_url'])) {
}
$result = NULL;
- if (is_array($item['page_callback'])) {
- require_once str_replace('_', DIRECTORY_SEPARATOR, $item['page_callback'][0]) . '.php';
- $result = call_user_func($item['page_callback']);
+ // WISHLIST: Refactor this. Instead of pattern-matching on page_callback, lookup
+ // page_callback via Civi\Core\Resolver and check the implemented interfaces. This
+ // would require rethinking the default constructor.
+ if (is_array($item['page_callback']) || strpos($item['page_callback'], ':')) {
+ $result = call_user_func(Civi\Core\Resolver::singleton()->get($item['page_callback']));
}
elseif (strstr($item['page_callback'], '_Form')) {
$wrapper = new CRM_Utils_Wrapper();
}
else {
$newArgs = explode('/', $_GET[$config->userFrameworkURLVar]);
- require_once str_replace('_', DIRECTORY_SEPARATOR, $item['page_callback']) . '.php';
$mode = 'null';
if (isset($pageArgs['mode'])) {
$mode = $pageArgs['mode'];
unset($pageArgs['mode']);
}
$title = CRM_Utils_Array::value('title', $item);
- if (strstr($item['page_callback'], '_Page')) {
+ if (strstr($item['page_callback'], '_Page') || strstr($item['page_callback'], '\\Page\\')) {
$object = new $item['page_callback']($title, $mode);
$object->urlPath = explode('/', $_GET[$config->userFrameworkURLVar]);
}
- elseif (strstr($item['page_callback'], '_Controller')) {
+ elseif (strstr($item['page_callback'], '_Controller') || strstr($item['page_callback'], '\\Controller\\')) {
$addSequence = 'false';
if (isset($pageArgs['addSequence'])) {
$addSequence = $pageArgs['addSequence'];
}
/**
- * This function contains the default action
+ * This function contains the default action.
*
* @param $action
*
}
/**
- * Show the message about CiviCRM versions
+ * Show status in the footer
*
* @param CRM_Core_Smarty $template
*/
- public static function versionCheck($template) {
- if (CRM_Core_Config::isUpgradeMode()) {
- return;
- }
- $newerVersion = $securityUpdate = NULL;
- if (CRM_Core_BAO_Setting::getItem(CRM_Core_BAO_Setting::SYSTEM_PREFERENCES_NAME, 'versionAlert', NULL, 1) & 1) {
- $newerVersion = CRM_Utils_VersionCheck::singleton()->isNewerVersionAvailable();
- }
- if (CRM_Core_BAO_Setting::getItem(CRM_Core_BAO_Setting::SYSTEM_PREFERENCES_NAME, 'securityUpdateAlert', NULL, 3) & 1) {
- $securityUpdate = CRM_Utils_VersionCheck::singleton()->isSecurityUpdateAvailable();
- }
- $template->assign('newer_civicrm_version', $newerVersion);
- $template->assign('security_update', $securityUpdate);
- }
+ public static function statusCheck($template) {
+ if (CRM_Core_Config::isUpgradeMode()) {
+ return;
+ }
+ $statusSeverity = 0;
+ $statusMessage = ts('System status OK');
+ // TODO: get status from CRM_Utils_Check, if cached
+ $template->assign('footer_status_severity', $statusSeverity);
+ $template->assign('footer_status_message', $statusMessage);
+ }
/**
* @param bool $triggerRebuild
}
CRM_Core_DAO_AllCoreTables::reinitializeCache(TRUE);
CRM_Core_ManagedEntities::singleton(TRUE)->reconcile();
+
+ //CRM-16257 update Config.IDS.ini might be an old copy
+ CRM_Core_IDS::createConfigFile(TRUE);
}
+
}