Refactoring Profile:: selectors

This commit is contained in:
Philipp Holzer 2019-07-28 00:19:38 +02:00
parent 930ce855f8
commit 2f5928f43a
No known key found for this signature in database
GPG Key ID: D8365C3D36B77D90
2 changed files with 20 additions and 10 deletions

View File

@ -6206,13 +6206,13 @@ function api_friendica_profile_show($type)
// get data of the specified profile id or all profiles of the user if not specified // get data of the specified profile id or all profiles of the user if not specified
if ($profile_id != 0) { if ($profile_id != 0) {
$r = Profile::select(api_user(), $profile_id); $r = Profile::getById(api_user(), $profile_id);
// error message if specified gid is not in database // error message if specified gid is not in database
if (!DBA::isResult($r)) { if (!DBA::isResult($r)) {
throw new BadRequestException("profile_id not available"); throw new BadRequestException("profile_id not available");
} }
} else { } else {
$r = Profile::select(api_user()); $r = Profile::getListByUser(api_user());
} }
// loop through all returned profiles and retrieve data and users // loop through all returned profiles and retrieve data and users
$k = 0; $k = 0;

View File

@ -46,22 +46,32 @@ class Profile
} }
/** /**
* @brief Returns the profile based on a ID * @brief Returns default profile for a given user ID and ID
*
* @param int $uid The contact ID
* @param int $id The contact owner ID
* @param array $fields The selected fields
*
* @return array Profile data for the ID
* @throws \Exception
*/
public static function getById(int $uid, int $id, array $fields = [])
{
return DBA::selectFirst('profile', $fields, ['uid' => $uid, 'id' => $id]);
}
/**
* @brief Returns profile data for the contact owner
* *
* @param int $uid The User ID * @param int $uid The User ID
* @param int $id The id of the profile (optional)
* @param array $fields The fields to retrieve * @param array $fields The fields to retrieve
* *
* @return array Array of profile data * @return array Array of profile data
* @throws \Exception * @throws \Exception
*/ */
public static function select(int $uid, int $id = null, array $fields = []) public static function getListByUser(int $uid, array $fields = [])
{ {
if (empty($id)) { return DBA::selectToArray('profile', $fields, ['uid' => $uid]);
return DBA::selectToArray('profile', $fields, ['uid' => $uid]);
} else {
return DBA::selectFirst('profile', $fields, ['uid' => $uid, 'id' => $id]);
}
} }
/** /**