Releases: thinkshout/salesforce
Release for 7.x-3.2
Major additions in this release:
New admin page
The /admin/config/salesforce/settings page where you can configure which version of the API you're using. You can also configure pulls via a webhook instead of cron.
Additionally, the mappings pages have been cleaned up by Issue #1980688: Push/pull UI improvements. This removes the temptation to try to sync or push an item if, say, you only have the Salesforce Pull module enabled.
New hooks
Issue #1909990: hook_salesforce_push_entity_allowed, hook_salesforce_push_success, hook_salesforce_push_fail for filtering entities before push, and for reacting to push successes and failures.
Issue #2745063: hook_salesforce_pull_mapping_object_alter and hook_salesforce_push_mapping_object_alter for manipulating mapping_object objects Immediately before pull or push
Issue #2688033: hook_salesforce_pull_entity_presave, hook_salesforce_pull_entity_insert, and hook_salesforce_pull_entity_update, which mimic the default hook_entity_XX, but also expose the original Salesforce Mapping values for consideration.
Side note here: If you are using a dev version of the Salesforce module and taking advantage of hook_salesforce_push_entity_allowed_by_mapping, that function will no longer work, as it's been rolled into hook_salesforce_push_entity_allowed.
New functionality
You can now do pulls from Salesforce via a webhook instead of cron by visiting /salesforce/webhook/pull and including a token. Option can be set up here: /admin/config/salesforce/settings
You can also now delete without using the SOAP module. Note: This requires you to be on a version of the Salesforce API of 29.0 (Winter '14) or greater. This setting can be checked here: /admin/config/salesforce/settings. See Issue #2730357 for more.
If you're using SOAP, you can overwrite the default WSDL by setting the variable "salesforce_partner_wsdl" to a given path. Currently there's no UI for this, but the variable can be set using Drush or as a $conf variable in your settings.php file.
New drush command
Drush command "sf-execute-query" to directly query Salesforce. See Issue #2637508.
Changes since 7.x-3.1:
- #2755309 by aaronbauman: Allow override of WSDL
- Revert "Issue #1802698 by seanB: Consider switching from AES to Encrypt"
- #1861564: Can't count on libraries_get_path() in an install file.
- #1802698 by seanB: Consider switching from AES to Encrypt
- Unsuccessful submission when key is incorrect type.
- Warnings on Admin if validating during ajax call for Drupal entity.
- 1951744: SAVED_UPDATED not returned if you're saving a revision.
- #2392387: Adding comment.
- #2392387 by gcb: URI validation fails on salesforce pull mapping "website" to "link"
- #1861564 by aaronbauman: salesforce_soap_requirements() cannot access libraries_get_path()
- Improved testing comment.
- #2642094 by aaronbauman, mpotter: Should SF pull process use "pull_trigger_date" instead of "LastModifiedDate"?
- #1118736 by aaronbauman, stella: Add push success/failure hooks for REST
- #2612942 by aaronbauman: errors during salesforce_pull_map_fields()
- #2612934 by aaronbauman: Exception during exception handling
- #2605128 by aaronbauman: Bubble exceptions during cron pull
- #2605072 by aaronbauman: More helpful error messaging in salesforce_pull_map_fields()
- Running tests through coder and adding unit test for salesforce_mapping_load_multiple.
- #1909990 Adding example usage to hook_salesforce_push_success, hook_salesforce_push_fail and hook_salesforce_push_entity_allowed.
- 2488000: Small documentation error.
- Github Issue #100: Avoid undefined index warnings if no is set.
- #2612860: Add missing parameter to documentation.
- #1980688 Only allow syncing when both push and pull modules enabled.
- #2688033: Cleaning up api parameters.
- #2745063: Small fixes to API documentation examples.
- #2644918 by asherry: _uri() functions error after menu cache clear
- #2745063 by rjacobs: Add alter hooks to manipulate mapping objects on pull and push (for custom prematching, etc.)
- #2730357 by rjacobs, aaronbauman: Sync deletions on pull without using SOAP client
- #2688033 by rjacobs, aaronbauman, chrisolof: Add entity_presave/insert/update sf pull hooks
- #2637508 by jfhovinne: Drush command to execute a SOQL query
- #2642888 by stephen.colson: Queries with spaces not translated
- #2644714 by bdone: Allow 'salesforce_endpoint' values in test environment
- #2643472 by asherry: Strict warning: Only variables should be passed by reference in salesforce_mapping_form_submit
- #2640502 by gcb: Allow for null RecordTypeId
- #2622064 by eugenesia: Cannot access Salesforce REST API through Squid proxy
- #2499821 by TravisCarden: Salesforce::apiCall() has PHP version dependency
- #1980688 by pianomansam, mpotter: Better UI when only one mapping direction enabled
- #1889658 by Mèche, othmen, markisatacomputer: RTBC - Taxonomy Terms pulling without vid
- #2622126 by aaronbauman: Store Salesforce Object Type Name in salesforce_mapping_object table
- #2612860 by aaronbauman: Add "getUpdated()" wrapper to Salesforce class; Update default salesforce api version to Winter '14
- #2748067 by mariacha1: Upserting any item during batch processing cron attempts to upsert all subsequent records
- #2748535 by mariacha1: Async option cron run fails to remove push items from queue unless salesforce_soap is enabled
- Handle allowed record types configuration set by features
- Merge branch '7.x-3.x' of github.com:thinkshout/salesforce into 7.x-3.x
- Merge pull request #100 from thinkshout/webhooks
- Standardize on the REQUEST_TIME constant
- Process salesforce_pull queue items as part of webhook request
- Refactor webhook and cron pull actions into a single function
- Broader code style updates
- Add actual webhook url to the field help text
- Move webhook related code into salesforce_pull until/if we have non-pull webhooks
- #2641994: swapped out undefined method Salesforce::verifyId for convertId
- Add throttle to salesforce pull - prevent too many from running at once
- Add a webhook callback for salesforce pull.
- Use same level of permission as oauth_callback. Add example for key
- Webhook settings and access.
- #2601416 by gcb: Updates pushing to non-updateable fields causes errors
- #2616300 by jfhovinne: Add OFFSET clause to SalesforceSelectQuery
- #2605100 by aaronbauman: Fix import to integer property (allow mapping SF checkbox to Node status)
- Add documentation for hook_salesforce_query_alter()
- Combine hook_salesforce_push_entity_allowed_by_mapping into hook_salesforce_push_entity_allowed with the additional $mapping argument.
- Fix references to $synced_entity, and refactor $mapping_object reference
- #2611098 by aaronbauman, sergei_brill: Undefined variable
- Switch sort method, so the list is sorted in a more expected way.
- Display field key alongside the field name, to disambiguate fields with the same name.
- Update pull value callback for relation endpoint fieldmap type (i.e. salesforce_mapping_relation_endpoints_fieldmap_pull_value) to ensure directional endpoints only get returned if they match the...