Skip to content

Releases: thinkshout/salesforce

Release for 7.x-3.2

30 Jul 03:51
Compare
Choose a tag to compare

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...
Read more