/**
* Fill image with custom/default arttributes
*
* @param LocalImage $image
* @param array $attributes
*
* @return LocalImage
*/
public function fillImage($image, $attributes)
{
$attributes = array_merge(array('date' => date('Y-m-d'), 'content_type' => 'image/jpeg', 'user' => null, 'updated' => new \DateTime(), 'status' => 'unapproved', 'source' => 'local', 'description' => ''), $attributes);
if (isset($attributes['description'])) {
$image->setDescription($attributes['description']);
}
if (isset($attributes['photographer'])) {
$image->setPhotographer($attributes['photographer']);
}
if (isset($attributes['photographer_url'])) {
$image->setPhotographerUrl($attributes['photographer_url']);
}
if (isset($attributes['place'])) {
$image->setPlace($attributes['place']);
}
$image->setDate($attributes['date']);
$image->setContentType($attributes['content_type']);
$image->setUser($attributes['user']);
$image->setUpdated($attributes['updated']);
$image->setSource($attributes['source']);
if (isset($attributes['url'])) {
$image->setUrl($attributes['url']);
}
if ($image->getUser() && $image->getUser()->isAdmin() == true) {
$image->setStatus('approved');
} else {
$image->setStatus($attributes['status']);
}
return $image;
}