/** * Returns application specific user settings * * @param ElggUser $user user entity * @param APIApplication $api_application application entity * * @return boolean|APIApplicationUserSetting */ function ws_pack_get_application_user_settings(ElggUser $user, APIApplication $api_application) { $result = false; if (!empty($user) && !empty($api_application)) { if (elgg_instanceof($user, "user") && elgg_instanceof($api_application, "object", APIApplication::SUBTYPE)) { $options = array("type" => "object", "subtype" => APIApplicationUserSetting::SUBTYPE, "limit" => 1, "owner_guid" => $user->getGUID(), "container_guid" => $api_application->getGUID()); if ($entities = elgg_get_entities($options)) { $result = $entities[0]; } else { $entity = new APIApplicationUserSetting(); $entity->owner_guid = $user->getGUID(); $entity->container_guid = $api_application->getGUID(); if ($entity->save()) { $result = $entity; } } } } return $result; }
/** * Returns application specific user settings * * @param ElggUser $user user entity * @param APIApplication $api_application application entity * * @return false|APIApplicationUserSetting */ function ws_pack_get_application_user_settings(ElggUser $user, APIApplication $api_application) { if (!$user instanceof ElggUser || !$api_application instanceof APIApplication) { return false; } $options = ["type" => "object", "subtype" => APIApplicationUserSetting::SUBTYPE, "limit" => 1, "owner_guid" => $user->getGUID(), "container_guid" => $api_application->getGUID()]; $entities = elgg_get_entities($options); if (!empty($entities)) { return $entities[0]; } else { $entity = new APIApplicationUserSetting(); $entity->owner_guid = $user->getGUID(); $entity->container_guid = $api_application->getGUID(); if ($entity->save()) { return $entity; } } return false; }