mirror of
https://github.com/SuiteCRM/SuiteCRM-Core.git
synced 2025-08-29 04:47:10 +08:00
Squashed 'public/legacy/' changes from 92c30d9960..ee41ae127f
ee41ae127f SuiteCRM 7.13.3 Release 710b977fe9 Fix #10009 - Cannot configure Module Menu Filters on PHP8+ 096b87c982 Fix #9153 - Adding dynamicenum case option for export 0cf566c131 Fix #8897 - Adding missing relationship for SurveyResponses module c25ec3546c Fix #9470 - Set fdow in Calendar popup date selector 1d8ee63779 Fix #9326 - Adding decimal and float case option for export to use user-defined decimal separator 8ecc413cea Fix #9476 - Mass assign security groups only assigns selected on current page 8c8dacb256 Fix #9542 - added checks for count methods c7eeca8db8 Fix #7759, #8273 - Double compose button in subpanels e022f2e094 Fix #9621 - Workflows Calculate Field Actions don't translate dynamicenum fields 461f50a089 Fix #9764 - Add extra To addresses to CC field 4cf46d154d Fix salesagility#9768 - Do not convert link URLs in TinyMCE c5ad471977 Fix #9783 - Compose view quick search 45c5c2a8d0 Fix #9780 - Popup does not show after creating a user 637c15e048 Fix #9812 - Decimal number calculations workflows c025ca0659 Fix #9817 - Typo a8cc7d8d5c Fix #9828 - $mod_strings not in scope for line 395 of the same file 41ef82116b Fix #9849 - allowed_preview is defined twice in the array 646d655e8e Fix #9875 SugarFeed shows 0 seconds ago and negative interval for certain datetime formats f2fa7c3940 Fix #9902 - Workflow - Some Date calculations fail with certain formats e28458a79d Fix #9930 - Recurrent calendar items 7a9c5f2490 Fix #9602 - ProspectLists save function has a duplication issue b3e757172a Fix #9963 - Upgrade league/oauth2-server to latest version 6e61173aa3 Fix #9974 - External Providers saving with no type 1b0b5d6007 Fix #9974 - inbound emails saving with no type git-subtree-dir: public/legacy git-subtree-split: ee41ae127ff74a9182c42af4e1c63db32e2f1fec
This commit is contained in:
parent
444c2169fe
commit
601c0c039b
43 changed files with 356 additions and 201 deletions
16
.github/SECURITY.md
vendored
16
.github/SECURITY.md
vendored
|
@ -2,20 +2,8 @@
|
|||
|
||||
## Supported Versions
|
||||
|
||||
For a complete compatibility matrix, please see the documentation [here](https://docs.suitecrm.com/admin/compatibility-matrix/).
|
||||
|
||||
| Version | Supported |
|
||||
| ------- | ------------------ |
|
||||
| 7.11.x | :heavy_check_mark: |
|
||||
| 7.10.x | :heavy_check_mark: |
|
||||
| ≤7.8.x | :x: |
|
||||
For a list of supported versions, please see the documentation [Supported Versions](https://docs.suitecrm.com/community/supported-versions/) page.
|
||||
|
||||
## Reporting a Vulnerability
|
||||
|
||||
We take Security seriously here at SuiteCRM so if you have discovered a security risk report it by
|
||||
emailing [security@suitecrm.com](mailto:security@suitecrm.com). This will be delivered to the product team who handle security issues.
|
||||
Please don't disclose security bugs publicly until they have been handled by the security team.
|
||||
|
||||
Your email will be acknowledged within 24 hours during the business week (Mon - Fri), and you’ll receive a more
|
||||
detailed response to your email within 72 hours during the business week (Mon - Fri) indicating the next steps in
|
||||
handling your report.
|
||||
For details on how to report a vulnerability please check our [Security Policy](https://docs.suitecrm.com/community/security-policy/) page.
|
||||
|
|
|
@ -26,6 +26,14 @@ return CustomLoader::mergeCustomArray([
|
|||
|
||||
$shouldCheckPermissions = OsHelper::getOS() !== OsHelper::OS_WINDOWS;
|
||||
|
||||
$oauth2EncKey = $GLOBALS['sugar_config']['oauth2_encryption_key'] ?? '';
|
||||
if (empty($oauth2EncKey)) {
|
||||
$oauth2EncKey = 'SCRM-DEFK';
|
||||
if (isset($GLOBALS['log'])) {
|
||||
$GLOBALS['log']->fatal('WARNING: `oauth2_encryption_key` not set in config.php');
|
||||
}
|
||||
}
|
||||
|
||||
$server = new AuthorizationServer(
|
||||
new ClientRepository(
|
||||
new ClientEntity(),
|
||||
|
@ -41,24 +49,9 @@ return CustomLoader::mergeCustomArray([
|
|||
null,
|
||||
$shouldCheckPermissions
|
||||
),
|
||||
new CryptKey(
|
||||
sprintf('file://%s/%s', $baseDir, ApiConfig::OAUTH2_PUBLIC_KEY),
|
||||
null,
|
||||
$shouldCheckPermissions
|
||||
)
|
||||
$oauth2EncKey
|
||||
);
|
||||
|
||||
$oauth2EncKey = isset($GLOBALS['sugar_config']['oauth2_encryption_key'])
|
||||
? $GLOBALS['sugar_config']['oauth2_encryption_key'] : '';
|
||||
if (empty($oauth2EncKey)) {
|
||||
$oauth2EncKey = 'SCRM-DEFK';
|
||||
if (isset($GLOBALS['log'])) {
|
||||
$GLOBALS['log']->fatal('WARNING: `oauth2_encryption_key` not set in config.php');
|
||||
}
|
||||
}
|
||||
|
||||
$server->setEncryptionKey($oauth2EncKey);
|
||||
|
||||
// Client credentials grant
|
||||
$server->enableGrantType(
|
||||
new ClientCredentialsGrant(),
|
||||
|
|
|
@ -24,4 +24,9 @@ class ClientEntity implements ClientEntityInterface
|
|||
{
|
||||
$this->redirectUri = $uri;
|
||||
}
|
||||
|
||||
public function setIsConfidential($confidential)
|
||||
{
|
||||
$this->isConfidential = $confidential;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -30,18 +30,24 @@ class ClientRepository implements ClientRepositoryInterface
|
|||
/**
|
||||
* @inheritdoc
|
||||
*/
|
||||
public function getClientEntity($clientIdentifier, $grantType, $clientSecret = null, $mustValidateSecret = true)
|
||||
public function getClientEntity($clientIdentifier)
|
||||
{
|
||||
/** @var \OAuth2Clients $client */
|
||||
$client = $this->beanManager->getBeanSafe(\OAuth2Clients::class, $clientIdentifier);
|
||||
if ($mustValidateSecret && hash('sha256', $clientSecret) !== $client->secret) {
|
||||
return null;
|
||||
}
|
||||
|
||||
$this->clientEntity->setIdentifier($clientIdentifier);
|
||||
$this->clientEntity->setName($client->name);
|
||||
$this->clientEntity->setRedirectUri(isset($client->redirect_uri) ? $client->redirect_uri : '');
|
||||
$this->clientEntity->setRedirectUri($client->redirect_uri ?? '');
|
||||
$this->clientEntity->setIsConfidential($client->is_confidential ?? false);
|
||||
|
||||
return $this->clientEntity;
|
||||
}
|
||||
|
||||
public function validateClient($clientIdentifier, $clientSecret, $grantType)
|
||||
{
|
||||
/** @var \OAuth2Clients $client */
|
||||
$client = $this->beanManager->getBeanSafe(\OAuth2Clients::class, $clientIdentifier);
|
||||
|
||||
return hash('sha256', $clientSecret) === $client->secret && $grantType === $client->allowed_grant_type;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<img width="180px" height="41px" src="https://suitecrm.com/wp-content/uploads/2017/12/logo.png" align="right" />
|
||||
</a>
|
||||
|
||||
# SuiteCRM 7.13.2
|
||||
# SuiteCRM 7.13.3
|
||||
|
||||
[](https://github.com/salesagility/suitecrm/blob/hotfix/LICENSE.txt)
|
||||
[](https://github.com/salesagility/SuiteCRM-Core/issues)
|
||||
|
|
12
composer.lock
generated
12
composer.lock
generated
|
@ -2634,16 +2634,16 @@
|
|||
},
|
||||
{
|
||||
"name": "phpseclib/phpseclib",
|
||||
"version": "3.0.17",
|
||||
"version": "3.0.19",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/phpseclib/phpseclib.git",
|
||||
"reference": "dbc2307d5c69aeb22db136c52e91130d7f2ca761"
|
||||
"reference": "cc181005cf548bfd8a4896383bb825d859259f95"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/phpseclib/phpseclib/zipball/dbc2307d5c69aeb22db136c52e91130d7f2ca761",
|
||||
"reference": "dbc2307d5c69aeb22db136c52e91130d7f2ca761",
|
||||
"url": "https://api.github.com/repos/phpseclib/phpseclib/zipball/cc181005cf548bfd8a4896383bb825d859259f95",
|
||||
"reference": "cc181005cf548bfd8a4896383bb825d859259f95",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
@ -2724,7 +2724,7 @@
|
|||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/phpseclib/phpseclib/issues",
|
||||
"source": "https://github.com/phpseclib/phpseclib/tree/3.0.17"
|
||||
"source": "https://github.com/phpseclib/phpseclib/tree/3.0.19"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
|
@ -2740,7 +2740,7 @@
|
|||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2022-10-24T10:51:50+00:00"
|
||||
"time": "2023-03-05T17:13:09+00:00"
|
||||
},
|
||||
{
|
||||
"name": "pimple/pimple",
|
||||
|
|
86
files.md5
86
files.md5
|
@ -1,5 +1,5 @@
|
|||
<?php
|
||||
// created: 2023-02-27 17:00:00
|
||||
// created: 2023-04-18 17:00:00
|
||||
$md5_string = array (
|
||||
'./Api/Core/Config/ApiConfig.php' => '69a1e7b3d7755a2a63499a16ddae81cf',
|
||||
'./Api/Core/Config/slim.php' => 'b134e68765e6a1403577e2a5a06322b8',
|
||||
|
@ -17,7 +17,7 @@ $md5_string = array (
|
|||
'./Api/V8/Config/services/factories.php' => 'abedc3b0445f9076cf55fb81f922999b',
|
||||
'./Api/V8/Config/services/globals.php' => 'd1bdcccf5150b16b84fc8192f63affdd',
|
||||
'./Api/V8/Config/services/helpers.php' => 'd15737677999e4f7307443aa83da8afa',
|
||||
'./Api/V8/Config/services/middlewares.php' => 'a7e3340374c5bfb6b26b4d99e61a8935',
|
||||
'./Api/V8/Config/services/middlewares.php' => '29a5b5660def75ac119fe9bc7bdb9a53',
|
||||
'./Api/V8/Config/services/params.php' => '9fd77ca190fbcea45ad11f156d5db9b7',
|
||||
'./Api/V8/Config/services/services.php' => '1c6d1cc19c087015430b4b965705e2fb',
|
||||
'./Api/V8/Config/services/validators.php' => '884d713ad8ed932500039acaf285fa45',
|
||||
|
@ -52,11 +52,11 @@ $md5_string = array (
|
|||
'./Api/V8/JsonApi/Response/RelationshipResponse.php' => '8a9824924da4a9ef5640ce9ec1e9c7cb',
|
||||
'./Api/V8/Middleware/ParamsMiddleware.php' => 'd05b267a88e6a36a2558cd8931961861',
|
||||
'./Api/V8/OAuth2/Entity/AccessTokenEntity.php' => '1b53023bd78223ddac6400d29af48d96',
|
||||
'./Api/V8/OAuth2/Entity/ClientEntity.php' => '248eb82b0426a4671e3cd64693f8527d',
|
||||
'./Api/V8/OAuth2/Entity/ClientEntity.php' => '8a948d82e84eaf8f32e3ad5c46cea9dd',
|
||||
'./Api/V8/OAuth2/Entity/RefreshTokenEntity.php' => '64d0cf96978dd4bf7e8bc837580eed7c',
|
||||
'./Api/V8/OAuth2/Entity/UserEntity.php' => 'a44c52eb54ef1372d513f3e109f3d108',
|
||||
'./Api/V8/OAuth2/Repository/AccessTokenRepository.php' => 'de0a2861e710deb9fdfa961c1d02ad3e',
|
||||
'./Api/V8/OAuth2/Repository/ClientRepository.php' => '6ffd84f5fb058688af763b4988afd270',
|
||||
'./Api/V8/OAuth2/Repository/ClientRepository.php' => '090628beafc7a308aeaf83b20f81cb18',
|
||||
'./Api/V8/OAuth2/Repository/RefreshTokenRepository.php' => '48555f23e91d557b41a1f9c7baa6425d',
|
||||
'./Api/V8/OAuth2/Repository/ScopeRepository.php' => 'd659a64126adaef03952a8187d76608f',
|
||||
'./Api/V8/OAuth2/Repository/UserRepository.php' => '91fef170d05002a8215747e0365e67d7',
|
||||
|
@ -116,7 +116,7 @@ $md5_string = array (
|
|||
'./ModuleInstall/PackageManager/tpls/PackageManagerLicense.tpl' => 'df5e267d1df5ce08fb9406e42d5b4816',
|
||||
'./ModuleInstall/PackageManager/tpls/PackageManagerScripts.tpl' => '98e396c0aa57329731fda19c790fffb2',
|
||||
'./ModuleInstall/extensions.php' => 'de30837895f67175b7fbc04274a837a6',
|
||||
'./README.md' => '92d28c27542d1ec479f07123ef7231cf',
|
||||
'./README.md' => 'b20a248fa6702bc317e0b5db7d784a01',
|
||||
'./RoboFile.php' => '045b82c1df69553824d0e4ffcce6e03c',
|
||||
'./SugarSecurity.php' => '47e316b2d408e8c5192c8ea4a4f921b3',
|
||||
'./TreeData.php' => '32873e20cb5fd33f9d1cdaf18c3cac5c',
|
||||
|
@ -507,8 +507,8 @@ $md5_string = array (
|
|||
'./build/push_output.sh' => 'cde8cd38e3b0c4e988ec4be7d81faa89',
|
||||
'./build/travis-ci-apache' => 'e1e212c4eaf679b6ec620cd0b12f4571',
|
||||
'./campaign_tracker.php' => '321e43ca8b664e6ca57ae5589e8c0667',
|
||||
'./composer.json' => '6bd6f8c467d45fa7b42f41a565c3c15b',
|
||||
'./composer.lock' => '0fe6766d5b5428b16abaa4da96e2af12',
|
||||
'./composer.json' => '2823f5a7f99159cec8dab6b36249e0fb',
|
||||
'./composer.lock' => 'ad7c44c6eb91e2484a68386053ada8a8',
|
||||
'./cron.php' => '0b8b6bd839a2232a8da074b31feaa708',
|
||||
'./crossdomain.xml' => '24b7711640c652b21aa89c9d83d6ec13',
|
||||
'./data/BeanFactory.php' => '3007bf65ebc77baa76c338ce6a068790',
|
||||
|
@ -665,7 +665,7 @@ $md5_string = array (
|
|||
'./include/MVC/View/views/view.vcard.php' => 'e7bddb455a4f14ad36ecde6470c71b68',
|
||||
'./include/MVC/View/views/view.xml.php' => '2a7ed1f6384a9c362c4a61f5d7d8b8d2',
|
||||
'./include/MVC/preDispatch.php' => 'f1720fa7dea86c02e0663227c2c08203',
|
||||
'./include/MassUpdate.php' => 'e1e7bb76e9479209bc9fdb54411eae97',
|
||||
'./include/MassUpdate.php' => '31962debf6e06728dff2e7e8f1b59310',
|
||||
'./include/MySugar/DashletsDialog/DashletsDialog.php' => '0b7c1af1bb21b3af9b735178de2f3a89',
|
||||
'./include/MySugar/MySugar.php' => 'eaffdea2231df9ec4a457fb57d499ca4',
|
||||
'./include/MySugar/dashboardstyle.css' => '4cce65e52281263e484140a1d4b8d2e2',
|
||||
|
@ -913,7 +913,7 @@ $md5_string = array (
|
|||
'./include/SugarFields/Fields/Datetime/SugarFieldDatetime.php' => 'b8af991b751ff491d59598e131496081',
|
||||
'./include/SugarFields/Fields/Datetimecombo/Datetimecombo.js' => '943fe4f97ca790d58abeedcfb704d3e4',
|
||||
'./include/SugarFields/Fields/Datetimecombo/EditView.tpl' => '08ec47bdf15639c759cab09a00b09070',
|
||||
'./include/SugarFields/Fields/Datetimecombo/RangeSearchForm.tpl' => '8c2e3b3d4ba9a274bac3cec52d8ab452',
|
||||
'./include/SugarFields/Fields/Datetimecombo/RangeSearchForm.tpl' => 'c1e863e4edb0152dfb3936bb6bf7ae90',
|
||||
'./include/SugarFields/Fields/Datetimecombo/SearchView.tpl' => 'ed305267b63968f4f603154ad7344a79',
|
||||
'./include/SugarFields/Fields/Datetimecombo/SugarFieldDatetimecombo.php' => '73008c0cdd41970570617b3f5a5dbfd0',
|
||||
'./include/SugarFields/Fields/Download/DetailView.tpl' => 'e05dbaa1b573284715b870612087e6cb',
|
||||
|
@ -1227,7 +1227,7 @@ $md5_string = array (
|
|||
'./include/Sugarpdf/sugarpdf/sugarpdf.smarty.php' => '3123177f2bb0240b00e37c433d149c66',
|
||||
'./include/Sugarpdf/sugarpdf_config.php' => '01452207250f2f90396b4543eeecfde6',
|
||||
'./include/Sugarpdf/sugarpdf_default.php' => 'ed59f131878639034df56183b7a121a2',
|
||||
'./include/SuiteEditor/SuiteEditorConnector.php' => '30ded6167f0dd3abda0f18487659633b',
|
||||
'./include/SuiteEditor/SuiteEditorConnector.php' => 'a776d9b9a8512fa5f5b00c4c9c417698',
|
||||
'./include/SuiteEditor/SuiteEditorDirectHTML.php' => 'b5f7f66a383397e4a541e0ce51fef039',
|
||||
'./include/SuiteEditor/SuiteEditorInterface.php' => 'cdf72097a74c1ca0bf8cbd2f4b5cdb8e',
|
||||
'./include/SuiteEditor/SuiteEditorMozaik.php' => 'a44e4f678cbcaf8c823486be62ab98a3',
|
||||
|
@ -1305,7 +1305,7 @@ $md5_string = array (
|
|||
'./include/SuiteGraphs/rgraph/scripts/jsmin' => '9631c7fbf2f120539f148a7550209634',
|
||||
'./include/SuiteGraphs/rgraph/scripts/jsmin.txt' => '9d43948e40a94c857c47a869da01d385',
|
||||
'./include/SuiteMozaik.php' => '8060bf6d838174cfa0df04e311a6f8a7',
|
||||
'./include/TemplateHandler/TemplateHandler.php' => '80f3e44aebe28d25481f3a45f24c1926',
|
||||
'./include/TemplateHandler/TemplateHandler.php' => 'f815b572b2c4db21a58c9ab698416a21',
|
||||
'./include/TestCaseAbstract.php' => '4a9fb42e6c0229f8c8101183320e17bf',
|
||||
'./include/TimeDate.php' => '7dabddc78edd8048ed129b080a488579',
|
||||
'./include/URIFilter.php' => 'bafc11e1aab5f2eb3839569f5109ee63',
|
||||
|
@ -1350,7 +1350,7 @@ $md5_string = array (
|
|||
'./include/dir_inc.php' => '4ec954313ef7c8b164ec1232a1ec1bd7',
|
||||
'./include/entryPoint.php' => '6c03ccc488eae94ac702743421951115',
|
||||
'./include/entryPointConfirmOptInConnector.php' => '66fed04564c4f4182f3b277d5b6dfafc',
|
||||
'./include/export_utils.php' => '5f539efced9a07f53e78663126d1fc5d',
|
||||
'./include/export_utils.php' => '1e623019f674e2a29b4039768ec6f92f',
|
||||
'./include/externalAPI/Base/ExternalAPIBase.php' => 'e52639773bbdaa1d9e3308fd7a41e392',
|
||||
'./include/externalAPI/Base/ExternalAPIPlugin.php' => '9f8d318d518a9f950fd0d80a6bac7c20',
|
||||
'./include/externalAPI/Base/ExternalOAuthAPIPlugin.php' => 'fd065e2de29e6fa0dfc86956e2c86230',
|
||||
|
@ -1443,7 +1443,7 @@ $md5_string = array (
|
|||
'./include/generic/SugarWidgets/SugarWidgetSubPanelTopButton.php' => '73ebbe4637525a45798ba4e0d5c365d9',
|
||||
'./include/generic/SugarWidgets/SugarWidgetSubPanelTopButtonQuickCreate.php' => '6946d51342aebdc39995af316bea01c5',
|
||||
'./include/generic/SugarWidgets/SugarWidgetSubPanelTopButton_c.php' => '4ac7dc01f8edc3ba751645cd14c11da5',
|
||||
'./include/generic/SugarWidgets/SugarWidgetSubPanelTopComposeEmailButton.php' => '8b4d187c36d140ad08bcf9675d3ec750',
|
||||
'./include/generic/SugarWidgets/SugarWidgetSubPanelTopComposeEmailButton.php' => '7067242d738d9fa30c6a1ef575f30984',
|
||||
'./include/generic/SugarWidgets/SugarWidgetSubPanelTopCreateAccountNameButton.php' => '7c8026d84033b772fb86a537e5f5220f',
|
||||
'./include/generic/SugarWidgets/SugarWidgetSubPanelTopCreateCampaignLogEntryButton.php' => 'ec6f42ed41fdba39de226e44a0041aec',
|
||||
'./include/generic/SugarWidgets/SugarWidgetSubPanelTopCreateCampaignMarketingEmailButton.php' => 'abe7be4f90fdf815b3d59687dd0823b5',
|
||||
|
@ -1505,7 +1505,7 @@ $md5_string = array (
|
|||
'./include/images/tour/profile_link.png' => '672c8e5595b6beb00b29d4cf7360ca59',
|
||||
'./include/images/university.png' => 'd779a477591af9d7236120e86647e7df',
|
||||
'./include/images/university2.png' => '346083109b89352e3a4b77cc249c56df',
|
||||
'./include/javascript/EmailsComposeViewModal.js' => 'f3e5e7623ee85de221dd60d3c7cfcb3f',
|
||||
'./include/javascript/EmailsComposeViewModal.js' => '18ba828fcff89d1e5828eb7f7f0fd940',
|
||||
'./include/javascript/ajaxUI.js' => '35ec428357ec0b09e18594c631fa7e3f',
|
||||
'./include/javascript/alerts.js' => '5c5a51e2923a0977b83eaa2548382f8d',
|
||||
'./include/javascript/bindWithDelay.js' => '9e9858d872371595cc135dad5ae079ee',
|
||||
|
@ -1684,7 +1684,7 @@ $md5_string = array (
|
|||
'./include/javascript/quickCompose.js' => '047d7eea0263fa0c2cd9bdb53ecf6258',
|
||||
'./include/javascript/quicksearch.js' => '97475c83c2614b54f3a0dd63edb2dfb2',
|
||||
'./include/javascript/report_additionals.js' => '094fef2462c9d640ee3ef4dc7af613d0',
|
||||
'./include/javascript/sugar_3.js' => '1648c3c6a4f2e6ba8eecb9425f897251',
|
||||
'./include/javascript/sugar_3.js' => '3be088993cbe4b3d3a733d4b758b8acc',
|
||||
'./include/javascript/sugar_connection_event_listener.js' => 'c8a148e865988e17f9b0328de44803a7',
|
||||
'./include/javascript/sugar_yui_overrides.js' => 'd99ea792b967d53cef54e0b870acdd88',
|
||||
'./include/javascript/sugarwidgets/SugarYUILoader.js' => '959d552199b65eab09ed534ade65b064',
|
||||
|
@ -2400,7 +2400,7 @@ $md5_string = array (
|
|||
'./include/utils/recaptcha_utils.php' => '73f5eddf707788c1dff4b7d07dc82656',
|
||||
'./include/utils/security_utils.php' => 'e953d0b673df3df313ecf1ac975e8f57',
|
||||
'./include/utils/sugar_file_utils.php' => '1c1915cad8c88feb0edbf5bbaee106c4',
|
||||
'./include/utils.php' => 'c480479dc541aa24577afd445574a9d5',
|
||||
'./include/utils.php' => '1e3e93fc5e6ea40782efdb5aaf7b5f8c',
|
||||
'./include/vCard.php' => '44052bbedcdaba3fdf67cfc10a112e75',
|
||||
'./include/ytree/ExtNode.php' => '000d4ccbdb6e0a7628c636128781b5e3',
|
||||
'./include/ytree/JQueryTree.php' => '3712d2224b93818b990b876f8405b745',
|
||||
|
@ -2550,7 +2550,7 @@ $md5_string = array (
|
|||
'./jssource/src_files/include/SugarFields/Fields/File/SugarFieldFile.js' => '5673fcbe388ef5af0fe7eca8dddf68d9',
|
||||
'./jssource/src_files/include/SugarFields/Fields/Time/Time.js' => '22a9dadf3e02d6c7ee71b3d50639fc10',
|
||||
'./jssource/src_files/include/connectors/formatters/default/company_detail.js' => 'c0225f1761182495ea499b5dcbc60efa',
|
||||
'./jssource/src_files/include/javascript/EmailsComposeViewModal.js' => '51b2ed7cb42b4198e4c5ecb438c56bcb',
|
||||
'./jssource/src_files/include/javascript/EmailsComposeViewModal.js' => '74dd4532c759be8c557b5acc3d777159',
|
||||
'./jssource/src_files/include/javascript/ajaxUI.js' => 'fd171bf28ec63478d1518753b48d1a6f',
|
||||
'./jssource/src_files/include/javascript/alerts.js' => '4cc19550e5d856a240b80c6317666eee',
|
||||
'./jssource/src_files/include/javascript/calendar.js' => 'ca77fc30f0070b4ffbfa48cef294a76f',
|
||||
|
@ -2573,7 +2573,7 @@ $md5_string = array (
|
|||
'./jssource/src_files/include/javascript/quickCompose.js' => '31c8e3efcf325c0c805018587fa585cb',
|
||||
'./jssource/src_files/include/javascript/quicksearch.js' => '0329400df3d1b8e4eab0765f8fe9f2e4',
|
||||
'./jssource/src_files/include/javascript/report_additionals.js' => 'baca991df446eaf401dda47d1685fad1',
|
||||
'./jssource/src_files/include/javascript/sugar_3.js' => '6dc9b5bab2dd6bf363cec7dff16aa248',
|
||||
'./jssource/src_files/include/javascript/sugar_3.js' => '771fe4c868309601b2349fb1367cac2e',
|
||||
'./jssource/src_files/include/javascript/sugar_connection_event_listener.js' => '431e88e62c5a7005693189d1e9d8e916',
|
||||
'./jssource/src_files/include/javascript/sugar_yui_overrides.js' => 'efbf74aa5e7d0af070ae7faab7725538',
|
||||
'./jssource/src_files/include/javascript/sugarwidgets/SugarYUILoader.js' => 'abc59adf77cf85c0424dbcb6c356bee8',
|
||||
|
@ -2602,7 +2602,7 @@ $md5_string = array (
|
|||
'./jssource/src_files/modules/Accounts/Account.js' => '6d64bb3ea8c66d71c154ba70cca2e118',
|
||||
'./jssource/src_files/modules/Administration/javascript/Administration.js' => 'd6ceb885790e2541eecfec634e6ab255',
|
||||
'./jssource/src_files/modules/Administration/javascript/Async.js' => 'f062dbc229f6307d094319abaebb2c7c',
|
||||
'./jssource/src_files/modules/Calendar/Cal.js' => '3b871a0b63105ae7a682fb4bfa2fc523',
|
||||
'./jssource/src_files/modules/Calendar/Cal.js' => '4a93979d5a83795c93084c548e476d3a',
|
||||
'./jssource/src_files/modules/Campaigns/DetailView.js' => '1396aec60d5e7a6737c455c4d8b39200',
|
||||
'./jssource/src_files/modules/Campaigns/WebToLead.js' => 'e64509ddd0e0ff5bc5cfbeaaae358883',
|
||||
'./jssource/src_files/modules/Campaigns/wizard.js' => 'a4f7ae104e285c343542a99ce42b7770',
|
||||
|
@ -2682,7 +2682,7 @@ $md5_string = array (
|
|||
'./lib/API/OAuth2/.htaccess' => '4fe6db46ff1074349c8ffbb840c30de9',
|
||||
'./lib/API/OAuth2/Entities/AccessTokenEntity.php' => '7ae1d3fb58d93978e8802c6107c9b593',
|
||||
'./lib/API/OAuth2/Entities/AuthCodeEntity.php' => 'a706d552fe2a097564054bb53ba395dd',
|
||||
'./lib/API/OAuth2/Entities/ClientEntity.php' => 'e34f5af49b6cb98c39bd54c7efc4f3ef',
|
||||
'./lib/API/OAuth2/Entities/ClientEntity.php' => '80670314ff11b61a041927ba0b56c616',
|
||||
'./lib/API/OAuth2/Entities/RefreshTokenEntity.php' => '6cb5c21827a7e9cc2d1f7daf4f3e85c7',
|
||||
'./lib/API/OAuth2/Entities/ScopeEntity.php' => '195f52de4555f43b9e7acdedfe0813f8',
|
||||
'./lib/API/OAuth2/Entities/UserEntity.php' => '48c5de4290e11e0138eed5c24373425c',
|
||||
|
@ -2694,7 +2694,7 @@ $md5_string = array (
|
|||
'./lib/API/OAuth2/README.md' => '234c6e1b678f70e885d02420b9c455ff',
|
||||
'./lib/API/OAuth2/Repositories/AccessTokenRepository.php' => '88a3f5a9e3869759af0cae5ee520f288',
|
||||
'./lib/API/OAuth2/Repositories/AuthCodeRepository.php' => 'be361c081aff6b102eaf5e2b8d1a5389',
|
||||
'./lib/API/OAuth2/Repositories/ClientRepository.php' => 'ddd015a458c983f24eccc3c11aeb22d2',
|
||||
'./lib/API/OAuth2/Repositories/ClientRepository.php' => '0abcf1553d09aa0409c4fdceede7c034',
|
||||
'./lib/API/OAuth2/Repositories/RefreshTokenRepository.php' => '74b1dbf688ac3ef7289b324400a69bed',
|
||||
'./lib/API/OAuth2/Repositories/ScopeRepository.php' => '7040aafea10ace42cc275adc44a2515f',
|
||||
'./lib/API/OAuth2/Repositories/UserRepository.php' => '8ff1a576ddad72f26edb2ed21ab3370d',
|
||||
|
@ -3557,13 +3557,13 @@ $md5_string = array (
|
|||
'./modules/AOS_Quotes/views/view.detail.php' => '7050a7beda6b696f1bc19dc5da86d2bd',
|
||||
'./modules/AOS_Quotes/views/view.edit.php' => 'd7febe2bec502ba7d36aa5d4d8d6207c',
|
||||
'./modules/AOW_Actions/AOW_Action.php' => '4dbe91f2bac732292e9992f89a73b852',
|
||||
'./modules/AOW_Actions/FormulaCalculator.php' => 'b8e36954646d4716949264e2fc2808af',
|
||||
'./modules/AOW_Actions/FormulaCalculator.php' => 'ca0ad3d6019656144ae5666f79067790',
|
||||
'./modules/AOW_Actions/actionLines.js' => 'de3626663801a14f67f46649d6983fd6',
|
||||
'./modules/AOW_Actions/actionLines.php' => '6bb52c4830237a808c51e18b8c7e954c',
|
||||
'./modules/AOW_Actions/actions/actionBase.php' => 'cc44a21a3198ee703b0390c7df0bcf49',
|
||||
'./modules/AOW_Actions/actions/actionComputeField.css' => '4f63069fbf5aee464d8b0f24e7049276',
|
||||
'./modules/AOW_Actions/actions/actionComputeField.js' => '2f39d2288a3dbe7dc85b3b185ce1fdc5',
|
||||
'./modules/AOW_Actions/actions/actionComputeField.php' => '81159ddc7e2d91425e9db4fbea2ef075',
|
||||
'./modules/AOW_Actions/actions/actionComputeField.php' => '680aa3489a3af38d4586f9d57a04fe9f',
|
||||
'./modules/AOW_Actions/actions/actionCreateRecord.js' => 'd74993b3fd078cbd54a445c6b3470eda',
|
||||
'./modules/AOW_Actions/actions/actionCreateRecord.php' => '537fbede6eeb62ac3ba1e5e77c6e4ada',
|
||||
'./modules/AOW_Actions/actions/actionModifyRecord.php' => 'a382c7b13f2896df64d70055ad92b2d0',
|
||||
|
@ -3844,7 +3844,7 @@ $md5_string = array (
|
|||
'./modules/Bugs/vardefs.php' => '855c5012b57a7060f7c62cd437532019',
|
||||
'./modules/Bugs/views/view.detail.php' => 'cf1a69a74ff14047728196953d63e53b',
|
||||
'./modules/Bugs/views/view.edit.php' => 'f406f3c7f19e15cd646373151994fa1c',
|
||||
'./modules/Calendar/Cal.js' => '106379c83260c2472f7c65114d7a9fdb',
|
||||
'./modules/Calendar/Cal.js' => 'bc6138c43cd476b7b51b084745f54cf5',
|
||||
'./modules/Calendar/Calendar.php' => '8b5970e1adbf735e0d7f5222012f48ec',
|
||||
'./modules/Calendar/CalendarActivity.php' => '9e55048969b6abcb58443296057f8fce',
|
||||
'./modules/Calendar/CalendarDisplay.php' => 'fd05f849dff1db7bb47713be26e6a3d2',
|
||||
|
@ -4022,7 +4022,7 @@ $md5_string = array (
|
|||
'./modules/CampaignLog/metadata/subpanels/default.php' => '9383d139ae417578b7c03083b9e6ba2a',
|
||||
'./modules/CampaignLog/vardefs.php' => '0279a427e36779734ca01a0e5cbe0cc5',
|
||||
'./modules/CampaignTrackers/CampaignTracker.php' => 'da574620bcf7b37822c4e6bb581f1f08',
|
||||
'./modules/CampaignTrackers/DetailView.html' => 'ada3001b4092fc1dabbce8b8e7ac1452',
|
||||
'./modules/CampaignTrackers/DetailView.html' => '8cb6bb4cd9751f106908cde8530b857e',
|
||||
'./modules/CampaignTrackers/DetailView.php' => '6c3394e0140f5f5f0db95d392a4deb55',
|
||||
'./modules/CampaignTrackers/EditView.html' => '3487ab500ce49be8c7bca18661aae85b',
|
||||
'./modules/CampaignTrackers/EditView.php' => '32b4ad96e104b9ef6c8de33941a44b94',
|
||||
|
@ -4166,27 +4166,27 @@ $md5_string = array (
|
|||
'./modules/Charts/Dashlets/MyPipelineBySalesStageDashlet/MyPipelineBySalesStageDashlet.data.php' => 'db145e4a88bb0123a85711fc11086944',
|
||||
'./modules/Charts/Dashlets/MyPipelineBySalesStageDashlet/MyPipelineBySalesStageDashlet.en_us.lang.php' => '37653e556058a7d870d9068d0cb6ba66',
|
||||
'./modules/Charts/Dashlets/MyPipelineBySalesStageDashlet/MyPipelineBySalesStageDashlet.meta.php' => '653575a48fa00ea0f255b77d1c71b1cf',
|
||||
'./modules/Charts/Dashlets/MyPipelineBySalesStageDashlet/MyPipelineBySalesStageDashlet.php' => 'a15176af7907c7bb663ef129dfd9480e',
|
||||
'./modules/Charts/Dashlets/MyPipelineBySalesStageDashlet/MyPipelineBySalesStageDashlet.php' => '9657e9b2f8a1c7f22ace761b9ac7d7bb',
|
||||
'./modules/Charts/Dashlets/OpportunitiesByLeadSourceByOutcomeDashlet/OpportunitiesByLeadSourceByOutcomeConfigure.tpl' => 'fc2d41ca60cc48e8aaadeff33b86a382',
|
||||
'./modules/Charts/Dashlets/OpportunitiesByLeadSourceByOutcomeDashlet/OpportunitiesByLeadSourceByOutcomeDashlet.data.php' => 'f48481748e948d7e34f5f4d107337cf0',
|
||||
'./modules/Charts/Dashlets/OpportunitiesByLeadSourceByOutcomeDashlet/OpportunitiesByLeadSourceByOutcomeDashlet.en_us.lang.php' => '2cd6f4ad46a1ab7d5eda7fd7b0fc74ac',
|
||||
'./modules/Charts/Dashlets/OpportunitiesByLeadSourceByOutcomeDashlet/OpportunitiesByLeadSourceByOutcomeDashlet.meta.php' => 'bcf1fd2ac113bdc8fcd2f6e96c51a003',
|
||||
'./modules/Charts/Dashlets/OpportunitiesByLeadSourceByOutcomeDashlet/OpportunitiesByLeadSourceByOutcomeDashlet.php' => 'd10584b71ecae05337e09416a8e6d5bd',
|
||||
'./modules/Charts/Dashlets/OpportunitiesByLeadSourceByOutcomeDashlet/OpportunitiesByLeadSourceByOutcomeDashlet.php' => '05b29826395af568d7e4ee5c835c0438',
|
||||
'./modules/Charts/Dashlets/OpportunitiesByLeadSourceDashlet/OpportunitiesByLeadSourceConfigure.tpl' => '2cf2e807cc447c1598aea3d505cc75ab',
|
||||
'./modules/Charts/Dashlets/OpportunitiesByLeadSourceDashlet/OpportunitiesByLeadSourceDashlet.data.php' => '0218cf7d787951c29c1f3b04dca27951',
|
||||
'./modules/Charts/Dashlets/OpportunitiesByLeadSourceDashlet/OpportunitiesByLeadSourceDashlet.en_us.lang.php' => 'edd88945059f81c532d016f95444a98a',
|
||||
'./modules/Charts/Dashlets/OpportunitiesByLeadSourceDashlet/OpportunitiesByLeadSourceDashlet.meta.php' => 'bf1bb6cd51103d14eeacaff384e40b8f',
|
||||
'./modules/Charts/Dashlets/OpportunitiesByLeadSourceDashlet/OpportunitiesByLeadSourceDashlet.php' => 'a04d3590123fedf06307669ae9532645',
|
||||
'./modules/Charts/Dashlets/OpportunitiesByLeadSourceDashlet/OpportunitiesByLeadSourceDashlet.php' => '02e47ce89a90cf141b5454dcfd5074d8',
|
||||
'./modules/Charts/Dashlets/OutcomeByMonthDashlet/OutcomeByMonthConfigure.tpl' => '7ad6e7c4257461f7feee56097396246c',
|
||||
'./modules/Charts/Dashlets/OutcomeByMonthDashlet/OutcomeByMonthDashlet.data.php' => '16949b783f0a69792b6835e71c5c9603',
|
||||
'./modules/Charts/Dashlets/OutcomeByMonthDashlet/OutcomeByMonthDashlet.en_us.lang.php' => 'eee5d2fd10a5dcb2894534c62a76e8ad',
|
||||
'./modules/Charts/Dashlets/OutcomeByMonthDashlet/OutcomeByMonthDashlet.meta.php' => '70ea288301c466bb9ee60f20d51b8d41',
|
||||
'./modules/Charts/Dashlets/OutcomeByMonthDashlet/OutcomeByMonthDashlet.php' => '39825a53b6d4bb9be403cd3f352fc80a',
|
||||
'./modules/Charts/Dashlets/OutcomeByMonthDashlet/OutcomeByMonthDashlet.php' => 'b0111e98d1b6fc34f28839ae8f80d002',
|
||||
'./modules/Charts/Dashlets/PipelineBySalesStageDashlet/PipelineBySalesStageConfigure.tpl' => '3c086ab793adc64ffff1bbbcf18ee44f',
|
||||
'./modules/Charts/Dashlets/PipelineBySalesStageDashlet/PipelineBySalesStageDashlet.data.php' => '98c44d741c97fa63549c1177c063c582',
|
||||
'./modules/Charts/Dashlets/PipelineBySalesStageDashlet/PipelineBySalesStageDashlet.en_us.lang.php' => '126f0a5dcb381d4f7fc057cd7bb7fc45',
|
||||
'./modules/Charts/Dashlets/PipelineBySalesStageDashlet/PipelineBySalesStageDashlet.meta.php' => '4ae341b9fb86bae9af35a6025a212bdc',
|
||||
'./modules/Charts/Dashlets/PipelineBySalesStageDashlet/PipelineBySalesStageDashlet.php' => '394769d6159a0e3ff8ab077193ba94b8',
|
||||
'./modules/Charts/Dashlets/PipelineBySalesStageDashlet/PipelineBySalesStageDashlet.php' => 'd0eae425809765cabaf12ebe4e4bc09c',
|
||||
'./modules/Charts/Dashlets/PredefinedChartDashletScript.tpl' => 'a84073e4b5722d39e693f023eb7813b1',
|
||||
'./modules/Charts/DynamicAction.php' => '6c9664747a453c6ee31a4fd782e9b485',
|
||||
'./modules/Charts/PredefinedChart.php' => 'd0dda7dc2f45335974c808153a5a8eed',
|
||||
|
@ -4585,7 +4585,7 @@ $md5_string = array (
|
|||
'./modules/Emails/EmailUI.php' => '7cc23aa2caa633911ea7db193a6f2a70',
|
||||
'./modules/Emails/EmailUIAjax.php' => '474940d575ae666cd0b00437f75e76d4',
|
||||
'./modules/Emails/EmailValidatorException.php' => 'cb225382f8842456d005769be4f3752d',
|
||||
'./modules/Emails/EmailsController.php' => 'f65ff3b077e89ce9d3e4d9002d8d89ed',
|
||||
'./modules/Emails/EmailsController.php' => '28c277df9e14bc1235dbd6605fa3e8c9',
|
||||
'./modules/Emails/EmailsControllerActionGetFromFields.php' => '79f7a51f4969318d92e273efd42c961f',
|
||||
'./modules/Emails/EmailsDataAddress.php' => 'a5f8b75980e59788f7eb2a8339e7703f',
|
||||
'./modules/Emails/EmailsDataAddressCollector.php' => 'ac58f57fb9df4b7dd52d4cff78cbc59c',
|
||||
|
@ -4608,10 +4608,10 @@ $md5_string = array (
|
|||
'./modules/Emails/controller.php' => '65d6d5ad5e977930403a2b89cb15004a',
|
||||
'./modules/Emails/field_arrays.php' => 'f8ad985446f13141ea7365aa8565c500',
|
||||
'./modules/Emails/include/ComposeView/ComposeView.php' => '45b1a69671ca5c5f2a8ab1455e9f730c',
|
||||
'./modules/Emails/include/ComposeView/ComposeView.tpl' => '02a1b64bfde0a319fcac90b1b9ebda13',
|
||||
'./modules/Emails/include/ComposeView/ComposeView.tpl' => 'c84113fe9c29883d6722824c32111a71',
|
||||
'./modules/Emails/include/ComposeView/ComposeViewBlank.tpl' => '22365ce6727ffb560e5ad3fc187f13f2',
|
||||
'./modules/Emails/include/ComposeView/ComposeViewToolbar.tpl' => '656b26827857375278124e4610b9ff06',
|
||||
'./modules/Emails/include/ComposeView/EmailsComposeView.js' => '38f9a7aefa68cb1c453cf39e3a7bf54d',
|
||||
'./modules/Emails/include/ComposeView/EmailsComposeView.js' => '65fcff78a6d86eb59bf4fe841df3b79e',
|
||||
'./modules/Emails/include/DetailView/EmailsDetailView.php' => 'f95937f398f37afe3927ecc035b8b743',
|
||||
'./modules/Emails/include/DetailView/EmailsDraftDetailView.php' => 'baafca815e89a4c0ec3df8b6192552ea',
|
||||
'./modules/Emails/include/DetailView/EmailsNonImportedDetailView.php' => 'ef9ecbcf65fa6f03e32f94b6a9805b2f',
|
||||
|
@ -4750,7 +4750,7 @@ $md5_string = array (
|
|||
'./modules/Employees/views/view.list.php' => '3fac70b690d87e7e7dd95f5e2602d129',
|
||||
'./modules/ExternalOAuthConnection/ExternalOAuthConnection.php' => 'cbb2e64b88e64434b92fd0fcbd8e2ac4',
|
||||
'./modules/ExternalOAuthConnection/Menu.php' => '6ae8433d8a70354ed103bf6c9c227b8a',
|
||||
'./modules/ExternalOAuthConnection/controller.php' => 'bfc8e833c3a36ac58f6ffa562573ae55',
|
||||
'./modules/ExternalOAuthConnection/controller.php' => 'f2b4e030365c48b92d08be2210e8cf3a',
|
||||
'./modules/ExternalOAuthConnection/entrypoint/redirectToExternalOAuth.php' => '5c7689fab50bbb50b2b10c9a5bf497c8',
|
||||
'./modules/ExternalOAuthConnection/entrypoint/setExternalOAuthToken.php' => '7b079da4660ddb159a9b529bd05905f8',
|
||||
'./modules/ExternalOAuthConnection/js/authenticate.js' => '2f9c2092d9fe9735c3b860d693d87969',
|
||||
|
@ -4773,7 +4773,7 @@ $md5_string = array (
|
|||
'./modules/ExternalOAuthConnection/views/view.list.php' => 'bf6a7674a1b649099afa941fb7d2e0ba',
|
||||
'./modules/ExternalOAuthProvider/ExternalOAuthProvider.php' => 'ff4f5725e6ea98b07c06317087b54d30',
|
||||
'./modules/ExternalOAuthProvider/Menu.php' => '1d5f42e855c60778bb371e2451bd7c44',
|
||||
'./modules/ExternalOAuthProvider/controller.php' => '4092c7ff3987c1df62c2180a0708c7de',
|
||||
'./modules/ExternalOAuthProvider/controller.php' => 'ca4c0caf7ab8de22f2ccb3d49c7b4e91',
|
||||
'./modules/ExternalOAuthProvider/language/en_us.lang.php' => '250b259d406bce7a9bf834e1b9a4c936',
|
||||
'./modules/ExternalOAuthProvider/metadata/SearchFields.php' => '0238216ef6c3eb39b0a71e70bb58d592',
|
||||
'./modules/ExternalOAuthProvider/metadata/detailviewdefs.php' => 'de6eaf9ac35fe3ae956553769281345d',
|
||||
|
@ -5332,7 +5332,7 @@ $md5_string = array (
|
|||
'./modules/Notes/tpls/QuickCreate.tpl' => '329a21edbab2d4181cf6db7fc28edd3a',
|
||||
'./modules/Notes/vardefs.php' => 'b9ef43050cd204496c101efbb2bac717',
|
||||
'./modules/OAuth2Clients/Menu.php' => '543ff4403826bdf5cb75db86bfb26530',
|
||||
'./modules/OAuth2Clients/OAuth2Clients.php' => 'c8d96775b766e4c90fa78f1c23688a09',
|
||||
'./modules/OAuth2Clients/OAuth2Clients.php' => '04a5864daa02df2919507b2ac16f8eb3',
|
||||
'./modules/OAuth2Clients/controller.php' => 'bf680521d60e7e64e7966415f1a3e79c',
|
||||
'./modules/OAuth2Clients/js/ClientCredentialsValidation.js' => 'f8652093bb42e1082e8a1b69a6a73f74',
|
||||
'./modules/OAuth2Clients/js/PasswordCredentialsValidation.js' => 'd20b36468c15522c07606ddfe6204c64',
|
||||
|
@ -5574,7 +5574,7 @@ $md5_string = array (
|
|||
'./modules/ProspectLists/Popup_picker.html' => '242e9467d08481a15f24f9dc62663a94',
|
||||
'./modules/ProspectLists/ProspectList.php' => '4b34527c253a2637e2f6b4ff72990bb8',
|
||||
'./modules/ProspectLists/ProspectListFormBase.php' => '36adb8d278a608299c2d6ff183af7fd2',
|
||||
'./modules/ProspectLists/Save.php' => '9b3bad7aff47a312451e34a44f63fee8',
|
||||
'./modules/ProspectLists/Save.php' => '80045359c8b035593ab8197bbc7f985c',
|
||||
'./modules/ProspectLists/SubPanelView.html' => '12a8e783bd44a156e193bc1be8247cda',
|
||||
'./modules/ProspectLists/SubPanelView.php' => 'c2f9c067fc5a8b04272ea96b2b865ddc',
|
||||
'./modules/ProspectLists/TargetListUpdate.php' => 'fb273882f80b2dacdcb28239ddfe8e97',
|
||||
|
@ -5710,7 +5710,7 @@ $md5_string = array (
|
|||
'./modules/SchedulersJobs/language/en_us.lang.php' => '213c773d3b36dfdc0b2932d936fe091b',
|
||||
'./modules/SchedulersJobs/metadata/subpanels/default.php' => '40952b491d66cd328be1237e7dc0750c',
|
||||
'./modules/SchedulersJobs/vardefs.php' => 'd0606930f15664bf4b40846afead6d3d',
|
||||
'./modules/SecurityGroups/AssignGroups.php' => 'd27ab498ec58d4e232b7f7ec607e410c',
|
||||
'./modules/SecurityGroups/AssignGroups.php' => '36a0479e931f51d46c5fb8c16aaffe2f',
|
||||
'./modules/SecurityGroups/Forms.php' => 'd41d8cd98f00b204e9800998ecf8427e',
|
||||
'./modules/SecurityGroups/MassAssign.php' => '12fe7e2a54311bba14fba390fda8a523',
|
||||
'./modules/SecurityGroups/Menu.php' => '17fdeb091b747acd1b2a698bc3a88bbc',
|
||||
|
@ -5778,7 +5778,7 @@ $md5_string = array (
|
|||
'./modules/Studio/DropDowns/EditView.tpl' => '1daa9d2575cfd5788576f7c8f06940a5',
|
||||
'./modules/Studio/Forms.php' => 'f1b9c09d71cbf6919f46b99b9a0286d3',
|
||||
'./modules/Studio/JSTransaction.js' => '54c0f25b68890452424d8819eeead469',
|
||||
'./modules/Studio/SaveTabs.php' => '75d018757e60ea2eaf6439edae57b1ea',
|
||||
'./modules/Studio/SaveTabs.php' => 'c094c676c1e7b64b9f2d2f393724c280',
|
||||
'./modules/Studio/TabGroups/EditViewTabs.php' => '0d3792d18876f5dfbf3599510dc04bb3',
|
||||
'./modules/Studio/TabGroups/EditViewTabs.tpl' => '943135f9e634454cbcc1a7d678d054a7',
|
||||
'./modules/Studio/TabGroups/TabGroupHelper.php' => 'c56673375908c7ceb08d28a23204b572',
|
||||
|
@ -5803,7 +5803,7 @@ $md5_string = array (
|
|||
'./modules/SugarFeed/Dashlets/SugarFeedDashlet/UserPostForm.tpl' => 'ef42d6abc5fd5f672d6540224aa3730e',
|
||||
'./modules/SugarFeed/Forms.php' => 'd41d8cd98f00b204e9800998ecf8427e',
|
||||
'./modules/SugarFeed/Menu.php' => '22842b6d2806ee33c75378a3ce284121',
|
||||
'./modules/SugarFeed/SugarFeed.php' => 'c2587f755157c000474ed565a0253e42',
|
||||
'./modules/SugarFeed/SugarFeed.php' => 'ae0dfdefaa62cf798f9e1603fc9cdf46',
|
||||
'./modules/SugarFeed/SugarFeedFlush.php' => 'c5861f849a67f9129ddd03006f336ea3',
|
||||
'./modules/SugarFeed/action_view_map.php' => 'ef827ccc71707c55e2f4aeee52a3ea38',
|
||||
'./modules/SugarFeed/feedLogicBase.php' => 'bfb4cbeba25d3e81b7acfc1316aef90b',
|
||||
|
@ -5893,7 +5893,7 @@ $md5_string = array (
|
|||
'./modules/SurveyResponses/metadata/studio.php' => 'd1a4aee4586f29bc1d22f2719b156bd1',
|
||||
'./modules/SurveyResponses/metadata/subpanels/default.php' => 'fcece223dc6df7455f9d979e50d17ef1',
|
||||
'./modules/SurveyResponses/tpls/detailquestionresponses.tpl' => 'e721176cde9db9ee091ae29b11e68ac8',
|
||||
'./modules/SurveyResponses/vardefs.php' => '0282afec38f3202a4227f3596e3e9b2c',
|
||||
'./modules/SurveyResponses/vardefs.php' => '19965a10a71f556459d978ed5a52990c',
|
||||
'./modules/Surveys/Dashlets/SurveysDashlet/SurveysDashlet.meta.php' => '8a0be697554c54281b29bd9bc8facfd8',
|
||||
'./modules/Surveys/Dashlets/SurveysDashlet/SurveysDashlet.php' => '533474ccb58910c160091f6898494202',
|
||||
'./modules/Surveys/Entry/Survey.php' => '61d81ae614ff0e25a75763a52ef1eeb6',
|
||||
|
@ -6093,7 +6093,7 @@ $md5_string = array (
|
|||
'./modules/Users/authentication/SugarAuthenticate/FactorAuthEmailCode.tpl' => '7d47d05738a22f219f9a96ee5393792c',
|
||||
'./modules/Users/authentication/SugarAuthenticate/FactorAuthFactory.php' => '02b5b7c4588faf6268b79741850379c4',
|
||||
'./modules/Users/authentication/SugarAuthenticate/FactorAuthInterface.php' => '01bb1e373dcf4cc53dc3ff41f0040d00',
|
||||
'./modules/Users/authentication/SugarAuthenticate/SugarAuthenticate.php' => 'b4b7219975758e1c1ef4d10725e5c495',
|
||||
'./modules/Users/authentication/SugarAuthenticate/SugarAuthenticate.php' => '7844f2aa29e40d890a7ecd80605e060b',
|
||||
'./modules/Users/authentication/SugarAuthenticate/SugarAuthenticateUser.php' => 'c59bb9e71e48bed5bb9322ec9416e7b9',
|
||||
'./modules/Users/controller.php' => '65021ed13247766dc3353cdbf8e8dada',
|
||||
'./modules/Users/entryPointSaveGoogleApiKey.php' => 'af2395a659fbe4c935ac555e4f3b592b',
|
||||
|
@ -6355,7 +6355,7 @@ $md5_string = array (
|
|||
'./soap.php' => 'e28988c2e0b8e2c484587b537a710525',
|
||||
'./sugar_version.json' => 'bdfbcefae2f9af559bef6a36367df7bb',
|
||||
'./sugar_version.php' => 'db7b6c8d51f87879fce1e6172eedfbed',
|
||||
'./suitecrm_version.php' => 'b94f5eb3153f82f1259c2f4b62d036d9',
|
||||
'./suitecrm_version.php' => 'b2203e609053399bc053aa7df09524eb',
|
||||
'./themes/SuiteP/css/Dawn/color-palette.scss' => 'e64677d79e1d68c069bdc2dc661c4f99',
|
||||
'./themes/SuiteP/css/Dawn/icons.scss' => 'd59f8c5855e7a8df09542a663835a196',
|
||||
'./themes/SuiteP/css/Dawn/select.ico' => '22393ad23f16c3f1462455bae8f20279',
|
||||
|
|
|
@ -1238,17 +1238,17 @@ EOQ;
|
|||
*/
|
||||
public function addDate($displayname, $varname)
|
||||
{
|
||||
global $timedate;
|
||||
global $timedate, $app_strings, $app_list_strings, $theme, $current_user;
|
||||
//letrium ltd
|
||||
$displayname = addslashes($displayname);
|
||||
$userformat = '(' . $timedate->get_user_date_format() . ')';
|
||||
$cal_dateformat = $timedate->get_cal_date_format();
|
||||
global $app_strings, $app_list_strings, $theme;
|
||||
$cal_fdow = $current_user->get_first_day_of_week() ? $current_user->get_first_day_of_week() : '0';
|
||||
|
||||
$javascriptend = <<<EOQ
|
||||
<script type="text/javascript">
|
||||
Calendar.setup ({
|
||||
inputField : "${varname}jscal_field", daFormat : "$cal_dateformat", ifFormat : "$cal_dateformat", showsTime : false, button : "${varname}jscal_trigger", singleClick : true, step : 1, weekNumbers:false
|
||||
inputField : "${varname}jscal_field", daFormat : "$cal_dateformat", ifFormat : "$cal_dateformat", showsTime : false, button : "${varname}jscal_trigger", singleClick : true, step : 1, startWeekday: $cal_fdow, weekNumbers:false
|
||||
});
|
||||
</script>
|
||||
EOQ;
|
||||
|
@ -1296,10 +1296,10 @@ EOQ;
|
|||
*/
|
||||
public function addDatetime($displayname, $varname)
|
||||
{
|
||||
global $timedate;
|
||||
global $timedate, $app_strings, $app_list_strings, $theme, $current_user;
|
||||
$userformat = $timedate->get_user_time_format();
|
||||
$cal_dateformat = $timedate->get_cal_date_format();
|
||||
global $app_strings, $app_list_strings, $theme;
|
||||
$cal_fdow = $current_user->get_first_day_of_week() ? $current_user->get_first_day_of_week() : '0';
|
||||
|
||||
$javascriptend = <<<EOQ
|
||||
|
||||
|
@ -1337,6 +1337,7 @@ EOQ;
|
|||
button : "{$varname}_trigger",
|
||||
singleClick : true,
|
||||
step : 1,
|
||||
startWeekday: $cal_fdow,
|
||||
weekNumbers:false
|
||||
});
|
||||
|
||||
|
|
|
@ -101,6 +101,7 @@ button : "start_range_{$id}_trigger",
|
|||
singleClick : true,
|
||||
dateStr : "{$date_value}",
|
||||
step : 1,
|
||||
startWeekday: {$CALENDAR_FDOW|default:'0'},
|
||||
weekNumbers:false
|
||||
{rdelim}
|
||||
);
|
||||
|
@ -126,6 +127,7 @@ button : "end_range_{$id}_trigger",
|
|||
singleClick : true,
|
||||
dateStr : "{$date_value}",
|
||||
step : 1,
|
||||
startWeekday: {$CALENDAR_FDOW|default:'0'},
|
||||
weekNumbers:false
|
||||
{rdelim}
|
||||
);
|
||||
|
|
|
@ -78,6 +78,7 @@ class SuiteEditorConnector
|
|||
height : '480',
|
||||
plugins: ['code', 'table', 'link', 'image'],
|
||||
toolbar: ['fontselect | fontsizeselect | bold italic underline | forecolor backcolor | styleselect | outdent indent | link image'],
|
||||
convert_urls: false,
|
||||
}"
|
||||
);
|
||||
}
|
||||
|
|
|
@ -171,7 +171,7 @@ class TemplateHandler
|
|||
);
|
||||
$contents = $this->ss->fetch($tpl);
|
||||
// Insert validation and quick search stuff here
|
||||
if ($view === 'EditView' || $ajaxSave || $view === 'ConvertLead' || strpos($view, 'QuickCreate')) {
|
||||
if ($view === 'EditView' || $ajaxSave || $view === 'ConvertLead' || $view === 'ComposeView' || strpos($view, 'QuickCreate')) {
|
||||
global $dictionary, $beanList, $app_strings, $mod_strings;
|
||||
$mod = $beanList[$module];
|
||||
|
||||
|
|
|
@ -278,6 +278,13 @@ function export($type, $records = null, $members = false, $sample=false)
|
|||
require_once('modules/Currencies/Currency.php');
|
||||
$value = currency_format_number($value);
|
||||
break;
|
||||
// Fix Issue 9326 - Adding Decimal and Float case to retrieve user-defined decimal separator
|
||||
case 'decimal':
|
||||
case 'float':
|
||||
$user_dec_sep = (!empty($current_user->id) ? $current_user->getPreference('dec_sep') : null);
|
||||
$dec_sep = empty($user_dec_sep) ? $sugar_config['default_decimal_seperator'] : $user_dec_sep;
|
||||
$value = str_replace('.', $dec_sep, $value);
|
||||
break;
|
||||
|
||||
//if our value is a datetime field, then apply the users locale
|
||||
case 'datetime':
|
||||
|
@ -306,6 +313,8 @@ function export($type, $records = null, $members = false, $sample=false)
|
|||
|
||||
break;
|
||||
|
||||
// Fix Issue 9153 - Exporting DynamicDropdown fields return keys
|
||||
case 'dynamicenum':
|
||||
case 'enum':
|
||||
if (isset($focus->field_name_map[$fields_array[$key]]['options']) &&
|
||||
isset($app_list_strings[$focus->field_name_map[$fields_array[$key]]['options']]) &&
|
||||
|
|
|
@ -101,13 +101,12 @@ class SugarWidgetSubPanelTopComposeEmailButton extends SugarWidgetSubPanelTopBut
|
|||
|
||||
$emailUI = new EmailUI();
|
||||
$emailUI->appendTick = false;
|
||||
$button = '<a class="email-link" onclick="$(document).openComposeViewModal(this);" data-module="'
|
||||
$button = '<div type="hidden" onclick="currentModule=\''
|
||||
. $bean->module_name . '\';$(document).openComposeViewModal(this);" data-module="'
|
||||
. $bean->module_name . '" data-record-id="'
|
||||
. $bean->id . '" data-module-name="'
|
||||
. $bean->name .'" data-email-address="'
|
||||
. $bean->email1 .'">'
|
||||
. $app_strings['LBL_COMPOSE_EMAIL_BUTTON_LABEL']
|
||||
. '</a>';
|
||||
. $bean->email1 .'">';
|
||||
}
|
||||
|
||||
return $button;
|
||||
|
|
|
@ -36,7 +36,7 @@
|
|||
* reasonably feasible for technical reasons, the Appropriate Legal Notices must
|
||||
* display the words "Powered by SugarCRM" and "Supercharged by SuiteCRM".
|
||||
*/(function($){$.fn.EmailsComposeViewModal=function(options){"use strict";var self=this;var opts=$.extend({},$.fn.EmailsComposeViewModal.defaults,options);self.handleClick=function(e){"use strict";var self=this;self.emailComposeView=null;var opts=$.extend({},$.fn.EmailsComposeViewModal.defaults);var composeBox=$('<div></div>').appendTo(opts.contentSelector);composeBox.messageBox({"showHeader":false,"showFooter":false,"size":'lg'});composeBox.setBody('<div class="email-in-progress"><img src="themes/'+SUGAR.themes.theme_name+'/images/loading.gif"></div>');composeBox.show();$.ajax({type:"GET",cache:false,url:'index.php?module=Emails&action=ComposeView&in_popup=1'}).done(function(data){if(data.length===0){console.error("Unable to display ComposeView");composeBox.setBody(SUGAR.language.translate('','ERR_AJAX_LOAD'));return;}
|
||||
composeBox.setBody(data);self.emailComposeView=composeBox.controls.modal.body.find('.compose-view').EmailsComposeView();$(self.emailComposeView).on('sentEmail',function(event,composeView){composeBox.hide();composeBox.remove();});$(self.emailComposeView).on('disregardDraft',function(event,composeView){if(typeof messageBox!=="undefined"){var mb=messageBox({size:'lg'});mb.setTitle(SUGAR.language.translate('','LBL_CONFIRM_DISREGARD_DRAFT_TITLE'));mb.setBody(SUGAR.language.translate('','LBL_CONFIRM_DISREGARD_DRAFT_BODY'));mb.on('ok',function(){mb.remove();composeBox.hide();composeBox.remove();});mb.on('cancel',function(){mb.remove();});mb.show();}else{if(confirm(self.translatedErrorMessage)){composeBox.hide();composeBox.remove();}}});composeBox.on('cancel',function(){composeBox.remove();});composeBox.on('hide.bs.modal',function(){composeBox.remove();});}).fail(function(data){composeBox.controls.modal.content.html(SUGAR.language.translate('','LBL_EMAIL_ERROR_GENERAL_TITLE'));});return $(self);};self.construct=function(){"use strict";$(opts.buttonSelector).click(self.handleClick)};self.destruct=function(){};self.construct();return $(self);};$.fn.openComposeViewModal=function(source){"use strict";window.event.preventDefault();window.event.stopImmediatePropagation();var self=this;self.emailComposeView=null;var opts=$.extend({},$.fn.EmailsComposeViewModal.defaults);var composeBox=$('<div></div>').appendTo(opts.contentSelector);composeBox.messageBox({"showHeader":false,"showFooter":false,"size":'lg'});composeBox.setBody('<div class="email-in-progress"><img src="themes/'+SUGAR.themes.theme_name+'/images/loading.gif"></div>');composeBox.show();var relatedId=$('[name="record"]').val();var ids='&ids=';if($(source).attr('data-record-id')!==''){ids=ids+$(source).attr('data-record-id');relatedId=$(source).attr('data-record-id');}
|
||||
composeBox.setBody(data);self.emailComposeView=composeBox.controls.modal.body.find('.compose-view').EmailsComposeView();$(self.emailComposeView).on('sentEmail',function(event,composeView){composeBox.hide();composeBox.remove();});$(self.emailComposeView).on('disregardDraft',function(event,composeView){if(typeof messageBox!=="undefined"){var mb=messageBox({size:'lg'});mb.setTitle(SUGAR.language.translate('','LBL_CONFIRM_DISREGARD_DRAFT_TITLE'));mb.setBody(SUGAR.language.translate('','LBL_CONFIRM_DISREGARD_DRAFT_BODY'));mb.on('ok',function(){mb.remove();composeBox.hide();composeBox.remove();});mb.on('cancel',function(){mb.remove();});mb.show();}else{if(confirm(self.translatedErrorMessage)){composeBox.hide();composeBox.remove();}}});composeBox.on('cancel',function(){composeBox.remove();});composeBox.on('hide.bs.modal',function(){composeBox.remove();});$("#emails_email_templates_name").change(function(){$.fn.EmailsComposeView.onTemplateChange()});}).fail(function(data){composeBox.controls.modal.content.html(SUGAR.language.translate('','LBL_EMAIL_ERROR_GENERAL_TITLE'));});return $(self);};self.construct=function(){"use strict";$(opts.buttonSelector).click(self.handleClick)};self.destruct=function(){};self.construct();return $(self);};$.fn.openComposeViewModal=function(source){"use strict";window.event.preventDefault();window.event.stopImmediatePropagation();var self=this;self.emailComposeView=null;var opts=$.extend({},$.fn.EmailsComposeViewModal.defaults);var composeBox=$('<div></div>').appendTo(opts.contentSelector);composeBox.messageBox({"showHeader":false,"showFooter":false,"size":'lg'});composeBox.setBody('<div class="email-in-progress"><img src="themes/'+SUGAR.themes.theme_name+'/images/loading.gif"></div>');composeBox.show();var relatedId=$('[name="record"]').val();var ids='&ids=';if($(source).attr('data-record-id')!==''){ids=ids+$(source).attr('data-record-id');relatedId=$(source).attr('data-record-id');}
|
||||
else{var inputs=document.MassUpdate.elements;for(var i=0;i<inputs.length;i++){if(inputs[i].name==='mass[]'&&inputs[i].checked){ids=ids+inputs[i].value+',';}}}
|
||||
var targetModule=currentModule;if($(source).attr('data-module')!==''){targetModule=$(source).attr('data-module');}
|
||||
var url='index.php?module=Emails&action=ComposeView&in_popup=1&targetModule='+targetModule+ids+'&relatedModule='+currentModule+'&relatedId='+relatedId;$.ajax({type:"GET",cache:false,url:url}).done(function(data){if(data.length===0){console.error("Unable to display ComposeView");composeBox.setBody(SUGAR.language.translate('','ERR_AJAX_LOAD'));return;}
|
||||
|
@ -47,4 +47,4 @@ populateEmailAddress=$(this).attr('data-record-email');if(dataEmailAddress!=='')
|
|||
if(populateEmailAddress!==''){if(targetCount>0){targetList=targetList+',';}
|
||||
targetList=targetList+dataEmailName+' <'+populateEmailAddress+'>';targetCount++;}});if(targetCount>0){$(self.emailComposeView).find('#to_addrs_names').val(targetList);}
|
||||
if(targetCount<2){$(self.emailComposeView).find('#parent_type').val(populateModule);$(self.emailComposeView).find('#parent_name').val(populateModuleName);$(self.emailComposeView).find('#parent_id').val(populateModuleRecord);}
|
||||
$(self.emailComposeView).on('sentEmail',function(event,composeView){composeBox.hide();composeBox.remove();});$(self.emailComposeView).on('disregardDraft',function(event,composeView){if(typeof messageBox!=="undefined"){var mb=messageBox({size:'lg'});mb.setTitle(SUGAR.language.translate('','LBL_CONFIRM_DISREGARD_DRAFT_TITLE'));mb.setBody(SUGAR.language.translate('','LBL_CONFIRM_DISREGARD_DRAFT_BODY'));mb.on('ok',function(){mb.remove();composeBox.hide();composeBox.remove();});mb.on('cancel',function(){mb.remove();});mb.show();}else{if(confirm(self.translatedErrorMessage)){composeBox.hide();composeBox.remove();}}});composeBox.on('cancel',function(){composeBox.remove();});composeBox.on('hide.bs.modal',function(e){e.preventDefault();var mb=messageBox({size:'lg'});mb.setTitle(SUGAR.language.translate('','LBL_CONFIRM_DISREGARD_EMAIL_TITLE'));mb.setBody(SUGAR.language.translate('','LBL_CONFIRM_DISREGARD_EMAIL_BODY'));mb.on('ok',function(){mb.remove();composeBox.hide();composeBox.remove();});mb.on('cancel',function(){mb.remove();});mb.show();});}).fail(function(data){composeBox.controls.modal.content.html(SUGAR.language.translate('','LBL_EMAIL_ERROR_GENERAL_TITLE'));});return $(self);};$.fn.EmailsComposeViewModal.defaults={'selected':'INBOX','buttonSelector':'[data-action=emails-show-compose-modal]','contentSelector':'#content'};}(jQuery));
|
||||
$(self.emailComposeView).on('sentEmail',function(event,composeView){composeBox.hide();composeBox.remove();});$(self.emailComposeView).on('disregardDraft',function(event,composeView){if(typeof messageBox!=="undefined"){var mb=messageBox({size:'lg'});mb.setTitle(SUGAR.language.translate('','LBL_CONFIRM_DISREGARD_DRAFT_TITLE'));mb.setBody(SUGAR.language.translate('','LBL_CONFIRM_DISREGARD_DRAFT_BODY'));mb.on('ok',function(){mb.remove();composeBox.hide();composeBox.remove();});mb.on('cancel',function(){mb.remove();});mb.show();}else{if(confirm(self.translatedErrorMessage)){composeBox.hide();composeBox.remove();}}});composeBox.on('cancel',function(){composeBox.remove();});composeBox.on('hide.bs.modal',function(e){e.preventDefault();var mb=messageBox({size:'lg'});mb.setTitle(SUGAR.language.translate('','LBL_CONFIRM_DISREGARD_EMAIL_TITLE'));mb.setBody(SUGAR.language.translate('','LBL_CONFIRM_DISREGARD_EMAIL_BODY'));mb.on('ok',function(){mb.remove();composeBox.hide();composeBox.remove();});mb.on('cancel',function(){mb.remove();});mb.show();});$("#emails_email_templates_name").change(function(){$.fn.EmailsComposeView.onTemplateChange()});}).fail(function(data){composeBox.controls.modal.content.html(SUGAR.language.translate('','LBL_EMAIL_ERROR_GENERAL_TITLE'));});return $(self);};$.fn.EmailsComposeViewModal.defaults={'selected':'INBOX','buttonSelector':'[data-action=emails-show-compose-modal]','contentSelector':'#content'};}(jQuery));
|
|
@ -573,8 +573,9 @@ URL+='&create='+create;if(metadata!=''&&metadata!=undefined){URL+='&metadata='+m
|
|||
if(popup_request_data.jsonObject){var request_data=popup_request_data.jsonObject;}else{var request_data=popup_request_data;}
|
||||
var field_to_name_array_url='';if(request_data&&request_data.field_to_name_array!=undefined){for(var key in request_data.field_to_name_array){if(key.toLowerCase()!='id'){field_to_name_array_url+='&field_to_name[]='+encodeURIComponent(key.toLowerCase());}}}
|
||||
if(field_to_name_array_url){URL+=field_to_name_array_url;}
|
||||
win=SUGAR.util.openWindow(URL,windowName,windowFeatures);if(window.focus){win.focus();}
|
||||
win=SUGAR.util.openWindow(URL,windowName,windowFeatures);if(win){if(win.focus){win.focus();}
|
||||
win.popupCount=popupCount;return win;}
|
||||
return;}
|
||||
var from_popup_return=false;function replaceHTMLChars(value){return value.replace(/&/gi,'&').replace(/</gi,'<').replace(/>/gi,'>').replace(/'/gi,'\'').replace(/"/gi,'"');}
|
||||
function set_return_basic(popup_reply_data,filter){var form_name=popup_reply_data.form_name;var name_to_value_array=popup_reply_data.name_to_value_array;for(var the_key in name_to_value_array){if(the_key=='toJSON'){}
|
||||
else if(the_key.match(filter)){var displayValue=replaceHTMLChars(name_to_value_array[the_key]);if(window.document.forms[form_name]&&window.document.forms[form_name].elements[the_key]){if(window.document.forms[form_name].elements[the_key].tagName=='SELECT'){var selectField=window.document.forms[form_name].elements[the_key];for(var i=0;i<selectField.options.length;i++){if(selectField.options[i].text==displayValue){selectField.options[i].selected=true;SUGAR.util.callOnChangeListers(selectField);break;}}}else{window.document.forms[form_name].elements[the_key].value=displayValue;SUGAR.util.callOnChangeListers(window.document.forms[form_name].elements[the_key]);}}}}}
|
||||
|
|
|
@ -504,13 +504,6 @@ function get_sugar_config_defaults(): array
|
|||
'jpg'
|
||||
],
|
||||
'upload_maxsize' => 30000000,
|
||||
'allowed_preview' => [
|
||||
'pdf',
|
||||
'gif',
|
||||
'png',
|
||||
'jpeg',
|
||||
'jpg'
|
||||
],
|
||||
'import_max_execution_time' => 3600,
|
||||
// 'use_php_code_json' => returnPhpJsonStatus(),
|
||||
'verify_client_ip' => true,
|
||||
|
|
|
@ -97,6 +97,9 @@
|
|||
composeBox.on('hide.bs.modal', function () {
|
||||
composeBox.remove();
|
||||
});
|
||||
$( "#emails_email_templates_name" ).change(function() {
|
||||
$.fn.EmailsComposeView.onTemplateChange()
|
||||
});
|
||||
}).fail(function (data) {
|
||||
composeBox.controls.modal.content.html(SUGAR.language.translate('', 'LBL_EMAIL_ERROR_GENERAL_TITLE'));
|
||||
});
|
||||
|
@ -252,6 +255,9 @@
|
|||
});
|
||||
mb.show();
|
||||
});
|
||||
$( "#emails_email_templates_name" ).change(function() {
|
||||
$.fn.EmailsComposeView.onTemplateChange()
|
||||
});
|
||||
}).fail(function (data) {
|
||||
composeBox.controls.modal.content.html(SUGAR.language.translate('', 'LBL_EMAIL_ERROR_GENERAL_TITLE'));
|
||||
});
|
||||
|
|
|
@ -4510,17 +4510,15 @@ function open_popup(module_name, width, height, initial_filter, close_popup, hid
|
|||
if (field_to_name_array_url) {
|
||||
URL += field_to_name_array_url;
|
||||
}
|
||||
|
||||
win = SUGAR.util.openWindow(URL, windowName, windowFeatures);
|
||||
|
||||
if (window.focus) {
|
||||
// put the focus on the popup if the browser supports the focus() method
|
||||
if(win) {
|
||||
$(win).focus(function(){
|
||||
win.focus();
|
||||
}
|
||||
|
||||
});
|
||||
win.popupCount = popupCount;
|
||||
|
||||
return win;
|
||||
}
|
||||
return '';
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -288,6 +288,8 @@ CAL.repeat_type_selected = function () {
|
|||
}
|
||||
CAL.load_form = function (module_name, record, edit_all_recurrences, cal_event) {
|
||||
CAL.disable_creating = true;
|
||||
CAL.reset_edit_dialog();
|
||||
CAL.disable_buttons();
|
||||
var e;
|
||||
var to_open = true;
|
||||
|
||||
|
|
|
@ -63,4 +63,9 @@ class ClientEntity implements ClientEntityInterface
|
|||
{
|
||||
$this->redirectUri = $uri;
|
||||
}
|
||||
|
||||
public function setIsConfidential($confidential)
|
||||
{
|
||||
$this->isConfidential = $confidential;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -42,7 +42,6 @@ namespace SuiteCRM\API\OAuth2\Repositories;
|
|||
|
||||
use League\OAuth2\Server\Repositories\ClientRepositoryInterface;
|
||||
use SuiteCRM\API\OAuth2\Entities\ClientEntity;
|
||||
use SuiteCRM\API\OAuth2\Exception\GrantTypeNotAllowedForClient;
|
||||
|
||||
class ClientRepository implements ClientRepositoryInterface
|
||||
{
|
||||
|
@ -50,7 +49,7 @@ class ClientRepository implements ClientRepositoryInterface
|
|||
* {@inheritdoc}
|
||||
* @return null|ClientEntity
|
||||
*/
|
||||
public function getClientEntity($clientIdentifier, $grantType, $clientSecret = null, $mustValidateSecret = true)
|
||||
public function getClientEntity($clientIdentifier)
|
||||
{
|
||||
$client = new \OAuth2Clients();
|
||||
$client->retrieve($clientIdentifier);
|
||||
|
@ -58,25 +57,23 @@ class ClientRepository implements ClientRepositoryInterface
|
|||
return null;
|
||||
}
|
||||
|
||||
if ($client->allowed_grant_type !== $grantType) {
|
||||
throw new GrantTypeNotAllowedForClient();
|
||||
}
|
||||
|
||||
if (
|
||||
$mustValidateSecret === true
|
||||
&& (bool)$client->is_confidential === true
|
||||
&& hash('sha256', $clientSecret) !== $client->secret
|
||||
) {
|
||||
return null;
|
||||
}
|
||||
|
||||
$clientEntity = new ClientEntity();
|
||||
$clientEntity->setIdentifier($clientIdentifier);
|
||||
$clientEntity->setName($client->name);
|
||||
|
||||
$redirect_url = isset($client->redirect_uri) ? $client->redirect_uri : '';
|
||||
$clientEntity->setRedirectUri($redirect_url);
|
||||
$clientEntity->setRedirectUri($client->redirect_uri ?? '');
|
||||
$clientEntity->setIsConfidential($client->is_confidential ?? false);
|
||||
|
||||
return $clientEntity;
|
||||
}
|
||||
|
||||
public function validateClient($clientIdentifier, $clientSecret, $grantType)
|
||||
{
|
||||
$client = new \OAuth2Clients();
|
||||
$client->retrieve($clientIdentifier);
|
||||
if (empty($client->id)) {
|
||||
return null;
|
||||
}
|
||||
|
||||
return hash('sha256', $clientSecret) === $client->secret && $grantType === $client->allowed_grant_type;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -404,8 +404,8 @@ class FormulaCalculator
|
|||
}
|
||||
|
||||
if (($params = $this->evaluateFunctionParams("datediff", $text, $childItems)) != null) {
|
||||
$d1 = new DateTime($params[0]);
|
||||
$d2 = new DateTime($params[1]);
|
||||
$d1 = new DateTime($this->getDBFormat($params[0]));
|
||||
$d2 = new DateTime($this->getDBFormat($params[1]));
|
||||
$diff = $d1->diff($d2);
|
||||
|
||||
switch ($params[2]) {
|
||||
|
@ -660,7 +660,7 @@ class FormulaCalculator
|
|||
{
|
||||
$prefix = $isTime ? 'PT' : 'P';
|
||||
|
||||
$datetime = new DateTime($datestring);
|
||||
$datetime = new DateTime($this->getDBFormat($datestring));
|
||||
|
||||
if ($isAdd) {
|
||||
$datetime->add(new DateInterval($prefix . $ammount . $type));
|
||||
|
@ -849,4 +849,43 @@ class FormulaCalculator
|
|||
{
|
||||
return sprintf("%0" . $digits . "d", $value);
|
||||
}
|
||||
|
||||
/**
|
||||
* Outputs date and datetime values in DB format
|
||||
*
|
||||
* @param String $date
|
||||
* @return String
|
||||
*/
|
||||
private function getDBFormat($date) {
|
||||
// 1) If WF is thrown by the after_save LH, the bean is already loaded and the date/datetime value
|
||||
// is properly formatted, so will only change the timezone value from UTC to user's one.
|
||||
// 2) If WF is run by the scheduler task, will change date/datetime value to DB format.
|
||||
$formatDate = 'Y-m-d';
|
||||
$validDate = DateTime::createFromFormat($formatDate, $date);
|
||||
$formatDateTime = 'Y-m-d H:i:s';
|
||||
$validDateTime = DateTime::createFromFormat($formatDateTime, $date);
|
||||
if ($validDate && $validDate->format($formatDate) === $date) {
|
||||
// Nothing to do
|
||||
return $date;
|
||||
} else if ($validDateTime && $validDateTime->format($formatDateTime) === $date) {
|
||||
// Set TZ to user's TZ
|
||||
global $timedate, $current_user;
|
||||
$date = $timedate->fromDb($date);
|
||||
$date = $timedate->tzUser($date, $current_user);
|
||||
return $date->format('Y-m-d H:i:s');
|
||||
} else { // In this case the WF is run by the cron
|
||||
global $current_user, $timedate;
|
||||
if(strpos($date, " ") !== false){
|
||||
$type = 'datetime';
|
||||
} else{
|
||||
$type = 'date';
|
||||
}
|
||||
$date = $timedate->fromUserType($date, $type, $current_user);
|
||||
if ($date) {
|
||||
return $date->asDb(false);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -105,10 +105,11 @@ class actionComputeField extends actionBase
|
|||
|
||||
for ($i = 0; $i < count($formulas); $i++) {
|
||||
if (array_key_exists($formulas[$i], $relateFields) && isset($relateFields[$formulas[$i]]['id_name'])) {
|
||||
$bean->{$relateFields[$formulas[$i]]['id_name']} =
|
||||
$calculator->calculateFormula($formulaContents[$i]);
|
||||
$calcValue = $calculator->calculateFormula($formulaContents[$i]);
|
||||
$bean->{$relateFields[$formulas[$i]]['id_name']} = ( is_numeric($calcValue) ? (float)$calcValue : $calcValue );
|
||||
} else {
|
||||
$bean->{$formulas[$i]} = $calculator->calculateFormula($formulaContents[$i]);
|
||||
$calcValue = $calculator->calculateFormula($formulaContents[$i]);
|
||||
$bean->{$formulas[$i]} = ( is_numeric($calcValue) ? (float)$calcValue : $calcValue );
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -152,7 +153,7 @@ class actionComputeField extends actionBase
|
|||
if ($parameterTypes[$i] == actionComputeField::FORMATTED_VALUE) {
|
||||
$dataType = $bean->field_name_map[$parameters[$i]]['type'];
|
||||
|
||||
if ($dataType == 'enum') {
|
||||
if ($dataType == 'enum' || $dataType == 'dynamicenum') {
|
||||
$resolvedParameters[$i] =
|
||||
$GLOBALS['app_list_strings'][$bean->field_defs[$parameters[$i]]['options']][$bean->{$parameters[$i]}];
|
||||
} else {
|
||||
|
|
|
@ -75,7 +75,7 @@ field_name="contact_invitees";if(v.module=="Lead")
|
|||
field_name="lead_invitees";var str=CAL.get(field_name).value;CAL.get(field_name).value=str+v.fields.id+",";});}
|
||||
CAL.repeat_type_selected=function(){var rt;if(rt=CAL.get("repeat_type")){if(rt.value=='Weekly'){var nodes=CAL.query(".weeks_checks_div");CAL.each(nodes,function(i,v){nodes[i].style.display="block";});}else{var nodes=CAL.query(".weeks_checks_div");CAL.each(nodes,function(i,v){nodes[i].style.display="none";});}
|
||||
if(rt.value==''){CAL.get("repeat_interval").setAttribute("disabled","disabled");CAL.get("repeat_end_date").setAttribute("disabled","disabled");}else{CAL.get("repeat_interval").removeAttribute("disabled");CAL.get("repeat_end_date").removeAttribute("disabled");}}}
|
||||
CAL.load_form=function(module_name,record,edit_all_recurrences,cal_event){CAL.disable_creating=true;var e;var to_open=true;if(module_name!="Meetings"&&module_name!="Calls"){to_open=false;}
|
||||
CAL.load_form=function(module_name,record,edit_all_recurrences,cal_event){CAL.disable_creating=true;CAL.reset_edit_dialog();CAL.disable_buttons();var e;var to_open=true;if(module_name!="Meetings"&&module_name!="Calls"){to_open=false;}
|
||||
if(module_name=="Tasks"){var url='index.php?to_pdf=1&module=Home&action=AdditionalDetailsRetrieve&bean='+cal_event.module+'&id='+cal_event.record;var body=SUGAR.language.translate('app_strings','LBL_LOADING_PAGE');$.ajax(url).done(function(data){SUGAR.util.globalEval(data);$('.modal-cal-tasks-edit .modal-body .container-fluid').html(result.body);}).fail(function(){$('.modal-cal-tasks-edit .modal-body .container-fluid').html(SUGAR.language.translate('app_strings','LBL_EMAIL_ERROR_GENERAL_TITLE'));}).always(function(){});$('.modal-cal-tasks-edit .modal-body .container-fluid').html(body);$('.modal-cal-tasks-edit').modal('show');$('#btn-view-task').unbind().click(function(){window.location.assign('index.php?module='+cal_event.module+'&action=DetailView&record='+cal_event.record);});$('#btn-tasks-full-form').unbind().click(function(){window.location.assign('index.php?module='+cal_event.module+'&action=EditView&record='+cal_event.record);});}else if(module_name=="FP_events"){var url='index.php?to_pdf=1&module=Home&action=AdditionalDetailsRetrieve&bean='+cal_event.module+'&id='+cal_event.record;var body=SUGAR.language.translate('app_strings','LBL_LOADING_PAGE');$.ajax(url).done(function(data){SUGAR.util.globalEval(data);$('.modal-cal-events-edit .modal-body .container-fluid').html(result.body);}).fail(function(){$('.modal-cal-events-edit .modal-body .container-fluid').html(SUGAR.language.translate('app_strings','LBL_EMAIL_ERROR_GENERAL_TITLE'));}).always(function(){});$('.modal-cal-events-edit .modal-body .container-fluid').html(body);$('.modal-cal-events-edit').modal('show');$('#btn-view-events').unbind().click(function(){window.location.assign('index.php?module='+cal_event.module+'&action=DetailView&record='+cal_event.record);});$('#btn-events-full-form').unbind().click(function(){window.location.assign('index.php?module='+cal_event.module+'&action=EditView&record='+cal_event.record);});}
|
||||
if(to_open&&CAL.records_openable){CAL.get("form_content").style.display="none";CAL.disable_buttons();CAL.get("title-cal-edit").innerHTML=CAL.lbl_loading;CAL.repeat_tab_handle(module_name);ajaxStatus.showStatus(SUGAR.language.get('app_strings','LBL_LOADING'));params={};if(edit_all_recurrences){params={stay_on_tab:true};}
|
||||
CAL.open_edit_dialog(params);CAL.get("record").value="";if(!edit_all_recurrences){edit_all_recurrences="";}
|
||||
|
|
|
@ -73,7 +73,7 @@
|
|||
</tr>
|
||||
<tr>
|
||||
<td width="25%"><span>{MOD.LBL_EDIT_OPT_OUT}</span></td>
|
||||
<td width="75%"><span><input name="is_optout" id=="is_optout" class="checkbox" type="checkbox" disabled {IS_OPTOUT_CHECKED}/></span></td>
|
||||
<td width="75%"><span><input name="is_optout" id="is_optout" class="checkbox" type="checkbox" disabled {IS_OPTOUT_CHECKED}/></span></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="25%"><span>{MOD.LBL_EDIT_TRACKER_URL}</span></span></td>
|
||||
|
|
|
@ -85,7 +85,7 @@ class MyPipelineBySalesStageDashlet extends DashletGenericChart
|
|||
global $app_list_strings;
|
||||
|
||||
$selected_datax = array();
|
||||
if (count($this->mypbss_sales_stages) > 0) {
|
||||
if (isset($this->mypbss_sales_stages) && count($this->mypbss_sales_stages) > 0) {
|
||||
foreach ($this->mypbss_sales_stages as $key) {
|
||||
$selected_datax[] = $key;
|
||||
}
|
||||
|
@ -316,7 +316,7 @@ EOD;
|
|||
$tempx = $user_sales_stage;
|
||||
|
||||
//set $datax using selected sales stage keys
|
||||
if (count($tempx) > 0) {
|
||||
if (isset($tempx) && count($tempx) > 0) {
|
||||
foreach ($tempx as $key) {
|
||||
$datax[$key] = $app_list_strings['sales_stage_dom'][$key];
|
||||
array_push($selected_datax, $key);
|
||||
|
@ -379,7 +379,7 @@ EOD;
|
|||
" AND opportunities.date_closed >= ". DBManagerFactory::getInstance()->convert("'".$this->mypbss_date_start."'", 'date').
|
||||
" AND opportunities.date_closed <= ". DBManagerFactory::getInstance()->convert("'".$this->mypbss_date_end."'", 'date') .
|
||||
" AND opportunities.assigned_user_id = users.id AND opportunities.deleted=0 ";
|
||||
if (count($this->mypbss_sales_stages) > 0) {
|
||||
if (isset($this->mypbss_sales_stages) && count($this->mypbss_sales_stages) > 0) {
|
||||
$query .= " AND opportunities.sales_stage IN ('" . implode("','", $this->mypbss_sales_stages) . "') ";
|
||||
}
|
||||
$query .= " GROUP BY opportunities.sales_stage ,users.user_name,opportunities.assigned_user_id";
|
||||
|
|
|
@ -136,7 +136,7 @@ class OpportunitiesByLeadSourceByOutcomeDashlet extends DashletGenericChart
|
|||
|
||||
|
||||
$url_params = array();
|
||||
if (count($this->lsbo_ids) > 0) {
|
||||
if (isset($this->lsbo_ids) && count($this->lsbo_ids) > 0) {
|
||||
$url_params['assigned_user_id'] = array_values($this->lsbo_ids);
|
||||
}
|
||||
|
||||
|
@ -255,10 +255,10 @@ EOD;
|
|||
$query = "SELECT lead_source,sales_stage,sum(amount_usdollar/1000) as total, ".
|
||||
"count(*) as opp_count FROM opportunities ";
|
||||
$query .= " WHERE opportunities.deleted=0 ";
|
||||
if (count($this->lsbo_ids) > 0) {
|
||||
if (isset($this->lsbo_ids) && count($this->lsbo_ids) > 0) {
|
||||
$query .= "AND opportunities.assigned_user_id IN ('".implode("','", $this->lsbo_ids)."') ";
|
||||
}
|
||||
if (count($this->lsbo_lead_sources) > 0) {
|
||||
if (isset($this->lsbo_lead_sources) && count($this->lsbo_lead_sources) > 0) {
|
||||
$query .= "AND opportunities.lead_source IN ('".implode("','", $this->lsbo_lead_sources)."') ";
|
||||
} else {
|
||||
$query .= "AND opportunities.lead_source IN ('".implode("','", array_keys($GLOBALS['app_list_strings']['lead_source_dom']))."') ";
|
||||
|
|
|
@ -251,10 +251,10 @@ EOD;
|
|||
$query = "SELECT lead_source,sum(amount_usdollar/1000) as total,count(*) as opp_count ".
|
||||
"FROM opportunities ";
|
||||
$query .= "WHERE opportunities.deleted=0 ";
|
||||
if (count($this->pbls_ids) > 0) {
|
||||
if (isset($this->pbls_ids) && count($this->pbls_ids) > 0) {
|
||||
$query .= "AND opportunities.assigned_user_id IN ('".implode("','", $this->pbls_ids)."') ";
|
||||
}
|
||||
if (count($this->pbls_lead_sources) > 0) {
|
||||
if (isset($this->pbls_lead_sources) && count($this->pbls_lead_sources) > 0) {
|
||||
$query .= "AND opportunities.lead_source IN ('".implode("','", $this->pbls_lead_sources)."') ";
|
||||
} else {
|
||||
$query .= "AND opportunities.lead_source IN ('".implode("','", array_keys($GLOBALS['app_list_strings']['lead_source_dom']))."') ";
|
||||
|
|
|
@ -249,7 +249,7 @@ EOD;
|
|||
$query .= " WHERE opportunities.date_closed >= ".DBManagerFactory::getInstance()->convert("'".$this->obm_date_start."'", 'date') .
|
||||
" AND opportunities.date_closed <= ".DBManagerFactory::getInstance()->convert("'".$this->obm_date_end."'", 'date') .
|
||||
" AND opportunities.deleted=0";
|
||||
if (count($this->obm_ids) > 0) {
|
||||
if (isset($this->obm_ids) && count($this->obm_ids) > 0) {
|
||||
$query .= " AND opportunities.assigned_user_id IN ('" . implode("','", $this->obm_ids) . "')";
|
||||
}
|
||||
$query .= " GROUP BY sales_stage,".
|
||||
|
|
|
@ -269,7 +269,7 @@ EOD;
|
|||
$tempx = $user_sales_stage;
|
||||
|
||||
//set $datax using selected sales stage keys
|
||||
if (count($tempx) > 0) {
|
||||
if (isset($tempx) && count($tempx) > 0) {
|
||||
foreach ($tempx as $key) {
|
||||
$datax[$key] = $app_list_strings['sales_stage_dom'][$key];
|
||||
$selected_datax[] = $key;
|
||||
|
|
|
@ -814,6 +814,21 @@ class EmailsController extends SugarController
|
|||
$this->bean->parent_name = $parent_name;
|
||||
}
|
||||
|
||||
$arrayOfToNames = explode(", ", $this->bean->to_addrs_names);
|
||||
$mailbox = BeanFactory::getBean('InboundEmail', $this->bean->mailbox_id);
|
||||
|
||||
if(count($arrayOfToNames) > 1){
|
||||
foreach($arrayOfToNames as $name){
|
||||
if($name !== $mailbox->email_user){
|
||||
if(!empty($this->bean->cc_addrs_names)){
|
||||
$this->bean->cc_addrs_names .= ', ' .$name;
|
||||
} else {
|
||||
$this->bean->cc_addrs_names = $name;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if ($mode === self::COMPOSE_BEAN_MODE_REPLY_TO || $mode === self::COMPOSE_BEAN_MODE_REPLY_TO_ALL) {
|
||||
// Move email addresses from the "from" field to the "to" field
|
||||
$this->bean->to_addrs = $this->bean->from_addr;
|
||||
|
|
|
@ -261,6 +261,9 @@
|
|||
{rdelim}
|
||||
{rdelim}{/if});
|
||||
{rdelim});
|
||||
$( "#emails_email_templates_name" ).change(function() {ldelim}
|
||||
$.fn.EmailsComposeView.onTemplateChange()
|
||||
{rdelim});
|
||||
</script>
|
||||
{/if}
|
||||
</form>
|
||||
|
|
|
@ -1553,6 +1553,41 @@
|
|||
});
|
||||
};
|
||||
|
||||
$.fn.EmailsComposeView.onTemplateChange = function (args) {
|
||||
var confirmed = function (args) {
|
||||
var args = JSON.parse(args);
|
||||
var form = $('[name="' + args.form_name + '"]');
|
||||
$.post('index.php?entryPoint=emailTemplateData', {
|
||||
emailTemplateId: args.name_to_value_array.emails_email_templates_idb
|
||||
}, function (jsonResponse) {
|
||||
var response = JSON.parse(jsonResponse);
|
||||
$.fn.EmailsComposeView.loadAttachmentDataFromAjaxResponse(response);
|
||||
$(form).find('[name="name"]').val(response.data.subject);
|
||||
tinymce.activeEditor.setContent(response.data.body_from_html, {format: 'html'});
|
||||
$.fn.EmailsComposeView.updateSignature();
|
||||
});
|
||||
set_return(args);
|
||||
};
|
||||
var mb = messageBox();
|
||||
mb.setTitle(SUGAR.language.translate('Emails', 'LBL_CONFIRM_APPLY_EMAIL_TEMPLATE_TITLE'));
|
||||
mb.setBody(SUGAR.language.translate('Emails', 'LBL_CONFIRM_APPLY_EMAIL_TEMPLATE_BODY'));
|
||||
mb.show();
|
||||
|
||||
mb.on('ok', function () {
|
||||
"use strict";
|
||||
var id=$('#emails_email_templates_idb').val();
|
||||
var name=$('#emails_email_templates_name').val();
|
||||
args = JSON.stringify({"form_name":"ComposeView","name_to_value_array":{"emails_email_templates_idb": id,"emails_email_templates_name": name}})
|
||||
confirmed(args);
|
||||
mb.remove();
|
||||
});
|
||||
|
||||
mb.on('cancel', function () {
|
||||
"use strict";
|
||||
mb.remove();
|
||||
});
|
||||
}
|
||||
|
||||
$.fn.EmailsComposeView.onParentSelect = function (args) {
|
||||
set_return(args);
|
||||
if (isValidEmail(args.name_to_value_array.email1)) {
|
||||
|
@ -1574,13 +1609,14 @@
|
|||
$.fn.EmailsComposeView.defaults = {
|
||||
"tinyMceOptions": {
|
||||
menubar: false,
|
||||
toolbar: ['fontselect | fontsizeselect | bold italic underline | forecolor backcolor | styleselect | outdent indent'],
|
||||
plugins: ['link'],
|
||||
toolbar: ['fontselect | fontsizeselect | bold italic underline | forecolor backcolor | styleselect | outdent indent | link'],
|
||||
formats: {
|
||||
bold: {inline: 'b'},
|
||||
italic: {inline: 'i'},
|
||||
underline: {inline: 'u'}
|
||||
},
|
||||
convert_urls: true,
|
||||
convert_urls: false,
|
||||
relative_urls: false,
|
||||
remove_script_host: false,
|
||||
}
|
||||
|
|
|
@ -45,11 +45,16 @@ class ExternalOAuthConnectionController extends SugarController
|
|||
{
|
||||
public function action_EditView() {
|
||||
$this->view = 'edit';
|
||||
if (!empty($this->bean) && !empty($_REQUEST['type'])) {
|
||||
|
||||
if (empty($_REQUEST['type'])){
|
||||
$_REQUEST['type'] = 'personal';
|
||||
}
|
||||
|
||||
if (!empty($this->bean)) {
|
||||
$this->bean->type = $_REQUEST['type'];
|
||||
}
|
||||
|
||||
if (empty($_REQUEST['record']) && !empty($_REQUEST['type']) && $_REQUEST['type'] === 'personal') {
|
||||
if (empty($_REQUEST['record']) && $_REQUEST['type'] === 'personal') {
|
||||
$this->hasAccess = true;
|
||||
return;
|
||||
}
|
||||
|
|
|
@ -45,11 +45,17 @@ class ExternalOAuthProviderController extends SugarController
|
|||
{
|
||||
public function action_EditView() {
|
||||
$this->view = 'edit';
|
||||
if (!empty($this->bean) && !empty($_REQUEST['type'])) {
|
||||
|
||||
if (empty($_REQUEST['type'])){
|
||||
$_REQUEST['type'] = 'personal';
|
||||
}
|
||||
|
||||
|
||||
if (!empty($this->bean)) {
|
||||
$this->bean->type = $_REQUEST['type'];
|
||||
}
|
||||
|
||||
if (empty($_REQUEST['record']) && !empty($_REQUEST['type']) && $_REQUEST['type'] === 'personal') {
|
||||
if (empty($_REQUEST['record']) && $_REQUEST['type'] === 'personal') {
|
||||
$this->hasAccess = true;
|
||||
return;
|
||||
}
|
||||
|
|
|
@ -57,6 +57,11 @@ class OAuth2Clients extends SugarBean
|
|||
*/
|
||||
public $redirect_uri;
|
||||
|
||||
/**
|
||||
* @var string
|
||||
*/
|
||||
public $allowed_grant_type;
|
||||
|
||||
/**
|
||||
* @var string
|
||||
*/
|
||||
|
|
|
@ -76,7 +76,6 @@ if (!empty($_REQUEST['duplicateId'])) {
|
|||
$focus->set_relationship('prospect_lists_prospects', $rel, true);
|
||||
}
|
||||
}
|
||||
$focus->save();
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -26,7 +26,7 @@ class AssignGroups
|
|||
//sanity check
|
||||
if (in_array($bean->module_dir, array_keys($security_modules))) {
|
||||
//add each group in securitygroup_list to new record
|
||||
$rel_name = SecurityGroup::getLinkName($bean->module_dir,"SecurityGroups");
|
||||
$rel_name = SecurityGroup::getLinkName($bean->module_dir, "SecurityGroups");
|
||||
|
||||
$bean->load_relationship($rel_name);
|
||||
foreach ($_REQUEST['securitygroup_list'] as $group_id) {
|
||||
|
@ -69,8 +69,8 @@ class AssignGroups
|
|||
}
|
||||
|
||||
/** //test user popup
|
||||
//always have this loaded
|
||||
echo '<script type="text/javascript" src="modules/SecurityGroups/javascript/popup_relate.js"></script>';
|
||||
* //always have this loaded
|
||||
* echo '<script type="text/javascript" src="modules/SecurityGroups/javascript/popup_relate.js"></script>';
|
||||
*/
|
||||
global $sugar_config;
|
||||
|
||||
|
@ -111,7 +111,7 @@ class AssignGroups
|
|||
if ($module == 'Users') {
|
||||
$rel_name = "SecurityGroups";
|
||||
} else {
|
||||
$rel_name = SecurityGroup::getLinkName($module,"SecurityGroups");
|
||||
$rel_name = SecurityGroup::getLinkName($module, "SecurityGroups");
|
||||
}
|
||||
|
||||
//this only works if on the detail view of the record actually saved...
|
||||
|
@ -145,7 +145,7 @@ EOQ;
|
|||
}
|
||||
|
||||
|
||||
$no_mass_assign_list = array("Emails"=>"Emails","ACLRoles"=>"ACLRoles"); //,"Users"=>"Users");
|
||||
$no_mass_assign_list = array("Emails" => "Emails", "ACLRoles" => "ACLRoles"); //,"Users"=>"Users");
|
||||
//check if security suite enabled
|
||||
$action = strtolower($action);
|
||||
if (isset($module) && ($action == "list" || $action == "index" || $action == "listview")
|
||||
|
@ -167,7 +167,7 @@ EOQ;
|
|||
$form_header = get_form_header($current_module_strings['LBL_MASS_ASSIGN'], '', false);
|
||||
|
||||
$groups = $groupFocus->get_list("name", "", 0, -99, -99);
|
||||
$options = array(""=>"");
|
||||
$options = array("" => "");
|
||||
foreach ($groups['list'] as $group) {
|
||||
$options[$group->id] = $group->name;
|
||||
}
|
||||
|
@ -238,11 +238,14 @@ function send_massassign(mode, no_record_txt, start_string, end_string, del) {
|
|||
ar.push(document.MassUpdate.elements[wp].value);
|
||||
}
|
||||
}
|
||||
if(document.MassAssign_SecurityGroups.uid.value != '') document.MassAssign_SecurityGroups.uid.value += ',';
|
||||
document.MassAssign_SecurityGroups.uid.value += ar.join(',');
|
||||
if(document.MassUpdate.uid.value != '') {
|
||||
document.MassUpdate.uid.value += ',';
|
||||
document.MassUpdate.uid.value += ar.join(',');
|
||||
document.MassAssign_SecurityGroups.uid.value = document.MassUpdate.uid.value;
|
||||
if(document.MassAssign_SecurityGroups.uid.value == '') {
|
||||
alert(no_record_txt);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
break;
|
||||
case 'entire':
|
||||
|
|
|
@ -45,7 +45,8 @@ if (!defined('sugarEntry') || !sugarEntry) {
|
|||
|
||||
|
||||
require_once('modules/Studio/TabGroups/TabGroupHelper.php');
|
||||
TabGroupHelper::saveTabGroups($_POST);
|
||||
$tg = new TabGroupHelper();
|
||||
$tg->saveTabGroups($_POST);
|
||||
ob_clean();
|
||||
if (!empty($_POST['grouptab_lang'])) {
|
||||
header('Location: index.php?module=Studio&action=TabGroups&lang='.$_POST['grouptab_lang']);
|
||||
|
|
21
modules/SugarFeed/SugarFeed.php
Executable file → Normal file
21
modules/SugarFeed/SugarFeed.php
Executable file → Normal file
|
@ -476,9 +476,26 @@ class SugarFeed extends Basic
|
|||
|
||||
$timedate->getInstance()->userTimezone();
|
||||
$currentTime = $timedate->now();
|
||||
//Fix #9875 SugarFeed shows 0 seconds ago and negative interval for certain datetime formats
|
||||
//Use proper user datetime format to convert datetime string to timestamp
|
||||
$user_format=$timedate->get_date_time_format();
|
||||
$first=date_create_from_format($user_format,$currentTime);
|
||||
if(empty($first)){
|
||||
LoggerManager::getLogger()->warn('SugarFeed getTimeLapse: Could not fetch currentTime ');
|
||||
$first=0;
|
||||
}
|
||||
else{
|
||||
$first=$first->getTimestamp();
|
||||
}
|
||||
|
||||
$first = strtotime($currentTime);
|
||||
$second = strtotime($startDate);
|
||||
$second=date_create_from_format($user_format,$startDate);
|
||||
if(empty($second)){
|
||||
LoggerManager::getLogger()->warn('SugarFeed getTimeLapse: Could not fetch startDate ');
|
||||
$second=0;
|
||||
}
|
||||
else{
|
||||
$second=$second->getTimestamp();
|
||||
}
|
||||
|
||||
$seconds = $first - $second;
|
||||
$minutes = $seconds / 60;
|
||||
|
|
|
@ -217,6 +217,25 @@ $dictionary['SurveyResponses'] = array(
|
|||
'lhs_key' => 'id',
|
||||
'relationship_type' => 'one-to-many',
|
||||
),
|
||||
// Fix Issue 8897 - Adding missing relationships to SurveyResponses and Contacts/Accounts
|
||||
'surveyresponses_contacts' => array(
|
||||
'rhs_module' => 'SurveyResponses',
|
||||
'rhs_table' => 'surveyresponses',
|
||||
'rhs_key' => 'contact_id',
|
||||
'lhs_module' => 'Contacts',
|
||||
'lhs_table' => 'contacts',
|
||||
'lhs_key' => 'id',
|
||||
'relationship_type' => 'one-to-many',
|
||||
),
|
||||
'surveyresponses_accounts' => array (
|
||||
'rhs_module' => 'SurveyResponses',
|
||||
'rhs_table' => 'surveyresponses',
|
||||
'rhs_key' => 'account_id',
|
||||
'lhs_module' => 'Accounts',
|
||||
'lhs_table' => 'accounts',
|
||||
'lhs_key' => 'id',
|
||||
'relationship_type' => 'one-to-many',
|
||||
),
|
||||
),
|
||||
'optimistic_locking' => true,
|
||||
'unified_search' => true,
|
||||
|
|
|
@ -363,7 +363,7 @@ class SugarAuthenticate
|
|||
*/
|
||||
public function validateIP()
|
||||
{
|
||||
global $sugar_config;
|
||||
global $sugar_config, $mod_strings;
|
||||
// grab client ip address
|
||||
$clientIP = query_client_ip();
|
||||
$classCheck = 0;
|
||||
|
|
|
@ -3,5 +3,5 @@ if (!defined('sugarEntry') || !sugarEntry) {
|
|||
die('Not A Valid Entry Point');
|
||||
}
|
||||
|
||||
$suitecrm_version = '7.13.2';
|
||||
$suitecrm_timestamp = '2023-03-02 12:00:00';
|
||||
$suitecrm_version = '7.13.3';
|
||||
$suitecrm_timestamp = '2023-04-24 12:00:00';
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue