You are here

public function MailChimpCampaignController::resetCache in Mailchimp 7.3

Same name and namespace in other branches
  1. 7.5 modules/mailchimp_campaign/includes/mailchimp_campaign.controller.inc \MailChimpCampaignController::resetCache()
  2. 7.2 modules/mailchimp_campaign/mailchimp_campaign.entity.inc \MailChimpCampaignController::resetCache()
  3. 7.4 modules/mailchimp_campaign/includes/mailchimp_campaign.controller.inc \MailChimpCampaignController::resetCache()

Implement to clear MailChimp campaign data caches.

Parameters

array $ids: Optional array of campaign IDs to clear cache for.

Overrides EntityAPIController::resetCache

File

modules/mailchimp_campaign/includes/mailchimp_campaign.controller.inc, line 44
MailChimpCampaign controller class.

Class

MailChimpCampaignController
@file MailChimpCampaign controller class.

Code

public function resetCache(array $ids = NULL) {
  parent::resetCache($ids);
  if ($cached_campaigns = cache_get('campaigns', 'cache_mailchimp')) {

    // Reset granular campaigns.
    if (isset($ids)) {
      foreach ($cached_campaigns->data as $id => $cached_campaign) {
        if (in_array($id, $ids)) {
          unset($cached_campaigns->data[$id]);
        }
      }
    }
    $cache_data = isset($cached_campaigns) ? $cached_campaigns->data : NULL;
    cache_set('campaigns', $cache_data, 'cache_mailchimp');
  }
}