function _duplicateTracker($aTracker, $checkUniqueNames = false) { $trackerId = $aTracker['tracker_id']; unset($aTracker['tracker_id']); if ($checkUniqueNames) { $aTrackers = Admin_DA::getTrackers(array('advertiser_id' => $aTracker['advertiser_id'])); Admin_DA::_getUniqueName($aTracker, $aTrackers, @$GLOBALS['strCopy']); } // Massage to real field names Admin_DA::_switch($aTracker, 'advertiser_id', 'clientid'); Admin_DA::_switch($aTracker, 'name', 'trackername'); $newTrackerId = Admin_DA::addTracker($aTracker); if (PEAR::isError($newTrackerId)) { return PEAR::raiseError('failed to add tracker in ' . __FILE__ . ',' . __LINE__); } $aPlacementTrackers = Admin_DA::getPlacementTrackers(array('tracker_id' => $trackerId)); foreach ($aPlacementTrackers as $aPlacementTracker) { $aPlacementTracker['tracker_id'] = $newTrackerId; Admin_DA::duplicatePlacementTracker($aPlacementTracker); } $aVariables = Admin_DA::getVariables(array('tracker_id' => $trackerId)); foreach ($aVariables as $aVariable) { $aVariable['tracker_id'] = $newTrackerId; Admin_DA::duplicateVariable($aVariable); } return $newTrackerId; }