Skip to content

Conversation

@laurent-bientz
Copy link

@laurent-bientz laurent-bientz commented Aug 13, 2021

Hello @dawguk,

Thanks for your great library, it helped me a lot to build some useful analytics.

This PR allows to pass additional filters to the getActivityList() method because I needed to search for specific distances, between dates, sort by a column, [...], it's possible on Garmin Connect:

image

Rather than adding X new parameters to your method, I just decided to add an optional array and merging it with the existing params:

public function getActivityList($intStart = 0, $intLimit = 10, $strActivityType = null, $filters = array())

Full example:

$response = $client->getActivityList(0, 1, 'running', [
	'minDistance' => 4902,
	'maxDistance' => 5100,
	'startDate' => '2021-01-01',
	'endDate' => '2021-08-13',
	'sortBy' => 'elapsedDuration',
	'sortOrder' => 'asc',
]);

Note that getActivityList($filters = array()) would have been enough (because we can define start, limit & activityType in the same array) but to preserve backward compatibility, I decided to let the legacy params even if we can override them in that array.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant