bug fixes

This commit is contained in:
Marc Michalsky forumZFD 2021-02-09 16:55:03 +01:00
parent 5864b4c1d2
commit 208d058f3f
Signed by untrusted user who does not match committer: marc.koch
GPG key ID: 12406554CFB028B9
3 changed files with 18 additions and 13 deletions

View file

@ -111,7 +111,7 @@ function civicrm_api3_twingle_event_Sync(array $params): array {
Civi::cache('long')->set('twinglecampaign_twingle_api', $twingleApi); Civi::cache('long')->set('twinglecampaign_twingle_api', $twingleApi);
} }
// If an id or a project_id is given, synchronize only this one campaign // If an id or a event_id is provided, synchronize only this one campaign
if ($params['id'] || $params['event_id']) { if ($params['id'] || $params['event_id']) {
// Get project from db via API // Get project from db via API
@ -166,7 +166,7 @@ function civicrm_api3_twingle_event_Sync(array $params): array {
} }
} }
// If no id but an event_id and/or a project_id is given, synchronize all // If no id but an event_id and/or a project_id is provided, synchronize all
// all events or just the events of the given project // all events or just the events of the given project
$result_values = []; $result_values = [];
@ -285,7 +285,7 @@ function civicrm_api3_twingle_event_Sync(array $params): array {
} }
} }
// Give back results // Return results
if ($errors_occurred > 0) { if ($errors_occurred > 0) {
$errorMessage = ($errors_occurred > 1) $errorMessage = ($errors_occurred > 1)
? "$errors_occurred synchronisation processes resulted with an error" ? "$errors_occurred synchronisation processes resulted with an error"

View file

@ -184,7 +184,7 @@ function civicrm_api3_twingle_project_Sync(array $params): array {
// instantiate project with values from TwingleProject.Get // instantiate project with values from TwingleProject.Get
$project = new TwingleProject($project_from_civicrm, $id); $project = new TwingleProject($project_from_civicrm, $id);
// push project to Twingle // push project to Twingle
$result = pushToTwingle($project, $twingleApi, $params); $result = _pushProjectToTwingle($project, $twingleApi, $params);
if ($result['is_error'] != 0) { if ($result['is_error'] != 0) {
$errors_occurred++; $errors_occurred++;
$result_values[$project->getId()] = $result_values[$project->getId()] =
@ -451,7 +451,7 @@ function _projectSync(TwingleProject $project,
// If both versions are still synchronized // If both versions are still synchronized
else { else {
$response[] = $project->getResponse('TwingleProject up to date'); $response = $project->getResponse('TwingleProject up to date');
return civicrm_api3_create_success( return civicrm_api3_create_success(
$response, $response,
$params, $params,

View file

@ -67,18 +67,23 @@ function civicrm_api3_twingle_sync_Sync(array $params): array {
// Synchronize all TwingleEvent campaigns // Synchronize all TwingleEvent campaigns
foreach ($projects as $project) { foreach ($projects as $project) {
if (is_array($project)) { // If the project is of type 'event', synchronize all its events
if (is_array($project) && $project['project_type'] == 'event') {
$_params = $params; $_params = $params;
$_params['project_id'] = $project['project_id']; $_params['project_id'] = $project['project_id'];
$result_values[] = [ $events = civicrm_api3(
'project' => $project,
'events' => array_values(
civicrm_api3(
'TwingleEvent', 'TwingleEvent',
'sync', 'sync',
$_params $_params
)['values'] )['values'];
), $result_values[] = [
'project' => $project,
'events' => array_values($events),
];
}
else {
$result_values[] = [
'project' => $project
]; ];
} }
} }