1
0
Fork 0

Ward againt contact_id = 0 in UpdateContact worker

- Add parameter validation in Worker\UpdateContact::add
- Address https://github.com/friendica/friendica/issues/12487#issuecomment-1366833644
This commit is contained in:
Hypolite Petovan 2022-12-28 19:09:34 -05:00
commit e563de4de7
5 changed files with 71 additions and 17 deletions

View file

@ -22,15 +22,19 @@
namespace Friendica\Worker;
use Friendica\Core\Logger;
use Friendica\Core\Worker;
use Friendica\Model\Contact;
use Friendica\Network\HTTPException\InternalServerErrorException;
class UpdateContact
{
/**
* Update contact data via probe
*
* @param int $contact_id Contact ID
* @param int $contact_id Contact ID
* @return void
* @throws InternalServerErrorException
* @throws \ImagickException
*/
public static function execute(int $contact_id)
{
@ -38,4 +42,19 @@ class UpdateContact
Logger::info('Updated from probe', ['id' => $contact_id, 'success' => $success]);
}
/**
* @param array|int $run_parameters Priority constant or array of options described in Worker::add
* @param int $contact_id
* @return int
* @throws InternalServerErrorException
*/
public static function add($run_parameters, int $contact_id): int
{
if (!$contact_id) {
throw new \InvalidArgumentException('Invalid value provided for contact_id');
}
return Worker::add($run_parameters, 'UpdateContact', $contact_id);
}
}