/** *gets tracking code based on campaign *@return tracking javascript for pardot api */ public static function GetPardotTrackingJs() { $html = false; $campaign = PardotConfig::getCampaignCode(); if ($campaign) { $tracker_cache = SS_Cache::factory('Pardot'); if (!($tracking_code_template = $tracker_cache->load('pardot_tracking_code_template'))) { $api_credentials = PardotConfig::getPardotCredentials(); $pardot = new Pardot_API(); if (!$pardot->is_authenticated()) { $pardot->authenticate($api_credentials); } $account = $pardot->get_account(); if (isset($account->tracking_code_template)) { $tracking_code_template = $account->tracking_code_template; $tracker_cache->save($tracking_code_template, 'pardot_tracking_code_template'); } } $tracking_code_template = str_replace('%%CAMPAIGN_ID%%', $campaign + 1000, $tracking_code_template); $campaign = $campaign + 1000; $html = <<<HTML <script> type="text/javascript"> piCId = '{$campaign}'; {$tracking_code_template} </script> HTML; } return $html; }
/** * This function starts the routine, and is the first function * to execute off the URL accessor (defined in @see _config.php) */ public function index() { $pardot = new Pardot_API(PardotConfig::getPardotCredentials()); $forms_object = $pardot->get_forms(PardotConfig::getPardotCredentials()); $forms = array(); foreach ($forms_object as $form_object) { $forms[]['name'] = $form_object->name; } $forms = new ArrayList($forms); $content_object = $pardot->get_dynamicContent(PardotConfig::getPardotCredentials()); $contents = array(); foreach ($content_object as $content) { $contents[]['name'] = $content->name; } $contents = new ArrayList($contents); return $this->customise(array('Forms' => $forms, 'DynamicContent' => $contents))->renderWith(array("PardotModalForm")); }
/** * caches pardot dynamic content from the pardot api. * * @return array Array of dynamic content objects */ public static function cacheDynamicContentFromPardotApi() { $pardot = new Pardot_API(PardotConfig::getPardotCredentials()); $dynamicContent = $pardot->get_dynamicContent(); $pardot_cache = SS_Cache::factory('Pardot'); $pardot_cache->save(serialize($dynamicContent), 'serialized_dynamic_content'); return $dynamicContent; }
/** *checks current pardot api credentials *@return string api key if valid, empty string if non-valid */ public static function validApiCredentials() { $pardot = new Pardot_API(); return $pardot->authenticate(self::getPardotCredentials()); }