Applications¶
translation state of Applications module
the application module offers an application formular, a list of applications and a detail view of an application. Depending on the users privileges the detail view offers a way to invite or reject an applicant, to rate an application or to forward an application by email.
If the PDF Module is installed, the Application can be downloaded as a PDF document with attachments and social profiles embedded.
Options¶
You can configure the possible mime-types or the maximum size of attachments by copying the applicationOptions into your config/autoload directory. Remove the “.dist” extention and adjust the values.
$options = array(
/*
* maximum size in bytes of an uploaded attachment, default 5MB
*/
'attachmentsMaxSize' => '5000000',
/*
* allowed Mime-Type of an uploaded Attachment, default images, *.PDF, *.DOC, *.ODT
*/
'attachmentsMimeType' => array('image','application/pdf', 'application/vnd.oasis.opendocument.text', 'application/msword'),
/*
* maximum amount of uploaded attachments
*/
'attachmentsCount' => 5,
/*
* maximum size in bytes of an uploaded contact photo. default 500kB
*/
'contactImageMaxSize' => '500000',
/*
* allowed Mime-Type of an uploaded contact photo
*/
'contactImageMimeType' => array('image'),
/*
* allowed Mime-Types, images, plain text, *.PDF, *.DOC, *.ODT
*/
'allowedMimeTypes' => array('image','text','application/pdf', 'application/vnd.oasis.opendocument.text', 'application/msword'),
);
AbstractIdentifiableModificationDateAwareEntity
Events¶
you can attach Listeners to the following events
Name | description | |
---|---|---|
EVENT_APPLICATION_POST_CREATE | application.post.create | Thrown, after an application was saved in the Database |
EVENT_APPLICATION_PRE_DELETE | application.pre.delete | Thrown, befor an application is removed from the Database |
EVENT_APPLICATION_STATUS_CHANGE | application.status.change | Thrown, befor an application is removed from the Database |
API¶
It is possible to create an application through a POST request to api/apply passing in the apply id of the job ad as query parameter.
The data must be sent with the content type multipart/form-data
Field | Value |
---|---|
Contact | |
contact[gender] | |
contact[first_name] | First name |
contact[last_name] | Last name |
contact[birthday] | YYYY-mm-dd |
contact[street] | |
contact[house_number] | |
contact[postal_code] | |
contact[city] | |
contact[country] | |
contact[email] | |
contact[image] | user image (avatar) (must be an image) |
General application data | |
summary | The cover letter |
Facts | |
facts[expected_salary] | |
facts[earliest_starting_date] | |
facts[driving_license] | Possible values: 0, 1, yes, no |
Attachments | |
attachments[] | One or multiple files |
Every property of an application and its embedded documents can be send using the above mapping stategy. Field name ‘attachments[]’ sends a file as attachment for example.
The response is a json string. The complete application entity is returned.
# On success (HTTP-Code: 200)
{
"status": "OK",
"entity": {
"resource_id": "Entity/Application",
"job": "5c5abf660fc61f047c063b28",
"user": "token:****************",
"status": null,
"contact": {
"birth_day": null,
"birth_month": null,
"birth_year": null,
"email": null,
"is_email_verified": null,
"gender": null,
"first_name": "Firstname",
"house_number": null,
"last_name": null,
"display_name": null,
"phone": null,
"postal_code": null,
"city": null,
"image": "/file/Applications.Attachment/user-image.png",
"street": null,
"country": null
},
"summary": null,
"facts": {},
"cv": {},
"attachments": [
"/file/Applications.Attachment/some-attachment.doc",
"/file/Applications.Attachment/other-attachment.pdf"
],
"profiles": {},
"attributes": {},
"id": null,
"date_created": null,
"date_modified": null
}
}
# on Failure
# Either HTTP-Code 400 (No job for the apply id or invalid application data)
# or HTTP-Code 405 (Invalid request method)
{ "status": "Error", "message": "Meaningful error message" }