Updated Summit CRUD

added slug field

Change-Id: I23104b2a43d26d36642ac3620ed3edafb8ef9768
This commit is contained in:
smarcet 2019-05-13 14:21:58 -03:00
parent 7dc20ed1dd
commit ba8ed68296
5 changed files with 22 additions and 2 deletions

View File

@ -40,6 +40,7 @@ final class SummitValidationRulesFactory
'max_submission_allowed_per_user' => 'sometimes|integer|min:1',
'secondary_registration_link' => 'sometimes|url',
'secondary_registration_label' => 'sometimes|string',
'slug' => 'nullable|string',
];
}
@ -61,8 +62,9 @@ final class SummitValidationRulesFactory
'link' => 'sometimes|url',
'registration_link' => 'sometimes|url',
'max_submission_allowed_per_user' => 'sometimes|integer|min:1',
'secondary_registration_link' => 'sometimes|url',
'secondary_registration_link' => 'sometimes|url',
'secondary_registration_label' => 'sometimes|string',
'slug' => 'nullable|string',
];
}
}

View File

@ -209,7 +209,6 @@ final class OAuth2SummitApiController extends OAuth2ProtectedController
);
}
$summit = $this->summit_service->addSummit($payload);
$serializer_type = $this->serializer_type_selector->getSerializerType();
return $this->created(SerializerRegistry::getInstance()->getSerializer($summit, $serializer_type)->serialize());

View File

@ -51,6 +51,7 @@ class SummitSerializer extends SilverStripeSerializer
'TimeZoneId' => 'time_zone_id:json_string',
'SecondaryRegistrationLink' => 'secondary_registration_link:json_string',
'SecondaryRegistrationLabel' => 'secondary_registration_label:json_string',
'RawSlug' => 'slug:json_string',
];
protected static $allowed_relations = [

View File

@ -137,6 +137,10 @@ final class SummitFactory
$summit->setLink(trim($data['link']));
}
if(isset($data['slug']) ){
$summit->setRawSlug(trim($data['slug']));
}
if(isset($data['secondary_registration_link']) ){
$summit->setSecondaryRegistrationLink(trim($data['secondary_registration_link']));
}

View File

@ -2406,4 +2406,18 @@ SQL;
$track_tag_group = $this->track_tag_groups->matching($criteria)->first();
return $track_tag_group === false ? null : $track_tag_group;
}
/**
* @return string
*/
public function getRawSlug():string{
return $this->slug;
}
/**
* @param string $slug
*/
public function setRawSlug(string $slug):void{
$this->slug = $slug;
}
}