Skip to content
Snippets Groups Projects
Commit 47c538c3 authored by Torsten Oppermann's avatar Torsten Oppermann
Browse files

[TASK] Adding job application tca, table etc.. WIP

parent d6732836
No related branches found
Tags 1.6.3
No related merge requests found
......@@ -33,16 +33,11 @@ use TYPO3\CMS\Extbase\Persistence\ObjectStorage;
* The JobApplication model
*/
class JobApplication extends AbstractEntity {
/**
* @var string $jobTitle
* @validate NotEmpty
*/
protected $jobTitle = '';
/**
* @var \SGalinski\SgJobs\Domain\Model\Job
* @var \SGalinski\SgJobs\Domain\Model\Job $job
*/
protected $jobId = '';
protected $job = '';
/**
* @var string $gender
......@@ -98,7 +93,7 @@ class JobApplication extends AbstractEntity {
protected $education = '';
/**
* @var string $birthDate
* @var int $birthDate
*/
protected $birthDate = '';
......@@ -145,32 +140,18 @@ class JobApplication extends AbstractEntity {
$this->certificates = new ObjectStorage();
}
/**
* @return string
*/
public function getJobTitle() {
return $this->jobTitle;
}
/**
* @param string $jobTitle
*/
public function setJobTitle(string $jobTitle) {
$this->jobTitle = $jobTitle;
}
/**
* @return \SGalinski\SgJobs\Domain\Model\Job
*/
public function getJobId() {
return $this->jobId;
public function getJob() {
return $this->job;
}
/**
* @param \SGalinski\SgJobs\Domain\Model\Job $jobId
* @param \SGalinski\SgJobs\Domain\Model\Job $job
*/
public function setJobId(Job $jobId) {
$this->jobId = $jobId;
public function setJob(Job $job) {
$this->job = $job;
}
/**
......@@ -300,17 +281,17 @@ class JobApplication extends AbstractEntity {
}
/**
* @return string
* @return int
*/
public function getBirthDate() {
return $this->birthDate;
}
/**
* @param string $birthDate
* @param int $birthDate
*/
public function setBirthDate(string $birthDate) {
$this->birthDate = $birthDate;
$this->birthDate = (int) $birthDate;
}
/**
......
<?php
return [
'ctrl' => [
'title' => 'LLL:EXT:sg_jobs/Resources/Private/Language/locallang_db.xlf:tx_sgjobs_domain_model_job_application',
'label' => 'title',
'tstamp' => 'tstamp',
'crdate' => 'crdate',
'cruser_id' => 'cruser_id',
'dividers2tabs' => TRUE,
'searchFields' => 'job_id, gender, first_name, last_name, street, city, zip, country, nationality, education, birth_date, phone, mobile, email, message, cover_letter, certificates, cv',
'versioningWS' => 2,
'versioning_followPages' => TRUE,
'origUid' => 't3_origuid',
'languageField' => 'sys_language_uid',
'transOrigPointerField' => 'l10n_parent',
'transOrigDiffSourceField' => 'l10n_diffsource',
'delete' => 'deleted',
'enablecolumns' => [
'disabled' => 'hidden',
'starttime' => 'starttime',
'endtime' => 'endtime',
],
'sortby' => 'sorting',
'iconfile' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::extRelPath('sg_jobs') .
'Resources/Public/Icons/tx_sgjobs_domain_model_job.svg'
],
'interface' => [
'showRecordFieldList' => 'sys_language_uid, l10n_parent, l10n_diffsource, hidden, pid, title, job_id, area, job_function, start_date, alternative_start_date,
company, task, qualification, description, contact',
],
'types' => [
'1' => [
'showitem' => '--palette--;;sysLanguageAndHidden,job_id, gender, first_name, last_name, street, city, zip,
country, nationality, education, birth_date, phone, mobile, email, message, cover_letter, certificates, cv,
div;;richtext[*]:rte_transform[mode=ts],
--div--;LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:tabs.access, starttime, endtime',
],
],
'palettes' => [
'sysLanguageAndHidden' => [
'showitem' => 'sys_language_uid;;;;1-1-1, l10n_diffsource, hidden;;1, ',
'canNotCollapse' => 1,
]
],
'columns' => [
'sys_language_uid' => [
'exclude' => 1,
'label' => 'LLL:EXT:lang/Resources/Private/Language/locallang_general.xml:LGL.language',
'config' => [
'type' => 'select',
'special' => 'languages',
],
],
'l10n_parent' => [
'displayCond' => 'FIELD:sys_language_uid:>:0',
'exclude' => 1,
'label' => 'LLL:EXT:lang/Resources/Private/Language/locallang_general.xml:LGL.l18n_parent',
'config' => [
'type' => 'select',
'items' => [
['', 0],
],
'foreign_table' => 'tx_sgjobs_domain_model_job_application',
'foreign_table_where' => 'AND tx_sgjobs_domain_model_job_application.pid=###CURRENT_PID### AND tx_sgjobs_domain_model_job_application.sys_language_uid IN (-1,0)',
],
],
'l10n_diffsource' => [
'config' => [
'type' => 'passthrough',
],
],
't3ver_label' => [
'label' => 'LLL:EXT:lang/Resources/Private/Language/locallang_general.xml:LGL.versionLabel',
'config' => [
'type' => 'input',
'size' => 30,
'max' => 255,
]
],
'pid' => [
'exclude' => 0,
'label' => 'PID',
'config' => [
'type' => 'none',
]
],
'hidden' => [
'exclude' => 1,
'label' => 'LLL:EXT:lang/Resources/Private/Language/locallang_general.xml:LGL.hidden',
'config' => [
'type' => 'check',
],
],
'starttime' => [
'exclude' => 1,
'l10n_mode' => 'mergeIfNotBlank',
'label' => 'LLL:EXT:lang/Resources/Private/Language/locallang_general.xml:LGL.starttime',
'config' => [
'type' => 'input',
'size' => 13,
'max' => 20,
'eval' => 'datetime',
'checkbox' => 0,
'default' => 0,
'range' => [
'lower' => mktime(0, 0, 0, date('m'), date('d'), date('Y'))
],
],
],
'endtime' => [
'exclude' => 1,
'l10n_mode' => 'mergeIfNotBlank',
'label' => 'LLL:EXT:lang/Resources/Private/Language/locallang_general.xml:LGL.endtime',
'config' => [
'type' => 'input',
'size' => 13,
'max' => 20,
'eval' => 'datetime',
'checkbox' => 0,
'default' => 0,
'range' => [
'lower' => mktime(0, 0, 0, date('m'), date('d'), date('Y'))
],
],
],
'job' => [
'exclude' => 0,
'label' => 'LLL:EXT:sg_jobs/Resources/Private/Language/locallang_db.xlf:tx_sgjobs_domain_model_job_application.job',
'config' => [
'type' => 'select',
'eval' => 'required',
'renderType' => 'selectSingle',
'internal_type' => 'db',
'foreign_table' => 'tx_sgjobs_domain_model_job',
'size' => 1,
'maxitems' => 1,
'multiple' => 0,
'fieldControl' => [
'editPopup' => [
'disabled' => FALSE,
],
'addRecord' => [
'disabled' => FALSE,
]
],
]
],
'gender' => [
'exclude' => 0,
'label' => 'LLL:EXT:sg_jobs/Resources/Private/Language/locallang_db.xlf:tx_sgjobs_domain_model_job_application.gender',
'config' => [
'type' => 'input',
'size' => 30,
'eval' => 'trim, required'
],
],
'first_name' => [
'exclude' => 0,
'label' => 'LLL:EXT:sg_jobs/Resources/Private/Language/locallang_db.xlf:tx_sgjobs_domain_model_job_application.first_name',
'config' => [
'type' => 'input',
'size' => 30,
'eval' => 'trim, required'
],
],
'last_name' => [
'exclude' => 0,
'label' => 'LLL:EXT:sg_jobs/Resources/Private/Language/locallang_db.xlf:tx_sgjobs_domain_model_job_application.last_name',
'config' => [
'type' => 'input',
'size' => 30,
'eval' => 'trim, required'
],
],
'street' => [
'exclude' => 0,
'label' => 'LLL:EXT:sg_jobs/Resources/Private/Language/locallang_db.xlf:tx_sgjobs_domain_model_job_application.street',
'config' => [
'type' => 'input',
'size' => 30,
'eval' => 'trim, required'
],
],
'city' => [
'exclude' => 0,
'label' => 'LLL:EXT:sg_jobs/Resources/Private/Language/locallang_db.xlf:tx_sgjobs_domain_model_job_application.city',
'config' => [
'type' => 'input',
'size' => 30,
'eval' => 'trim, required'
],
],
'zip' => [
'exclude' => 0,
'label' => 'LLL:EXT:sg_jobs/Resources/Private/Language/locallang_db.xlf:tx_sgjobs_domain_model_job_application.zip',
'config' => [
'type' => 'input',
'size' => 30,
'eval' => 'trim, required'
],
],
'country' => [
'exclude' => 0,
'label' => 'LLL:EXT:sg_jobs/Resources/Private/Language/locallang_db.xlf:tx_sgjobs_domain_model_job_application.zip',
'config' => [
'type' => 'input',
'size' => 30,
'eval' => 'trim, required'
],
],
'nationality' => [
'exclude' => 0,
'label' => 'LLL:EXT:sg_jobs/Resources/Private/Language/locallang_db.xlf:tx_sgjobs_domain_model_job_application.zip',
'config' => [
'type' => 'input',
'size' => 30,
'eval' => 'trim, required'
],
],
'education' => [
'exclude' => 0,
'label' => 'LLL:EXT:sg_jobs/Resources/Private/Language/locallang_db.xlf:tx_sgjobs_domain_model_job_application.zip',
'config' => [
'type' => 'input',
'size' => 30,
'eval' => 'trim, required'
],
],
'birth_date' => [
'exclude' => 1,
'label' => 'LLL:EXT:sg_jobs/Resources/Private/Language/locallang_db.xlf:tx_sgjobs_domain_model_job_application.birth_date',
'config' => [
'type' => 'input',
'size' => 13,
'max' => 20,
'eval' => 'date, required',
'checkbox' => 0,
'range' => [
'lower' => mktime(date('m'), date('d'), date('Y'))
],
],
],
'phone' => [
'exclude' => 0,
'label' => 'LLL:EXT:sg_jobs/Resources/Private/Language/locallang_db.xlf:tx_sgjobs_domain_model_job_application.phone',
'config' => [
'type' => 'input',
'size' => 30,
'eval' => 'trim, required'
],
],
'mobile' => [
'exclude' => 0,
'label' => 'LLL:EXT:sg_jobs/Resources/Private/Language/locallang_db.xlf:tx_sgjobs_domain_model_job_application.mobile',
'config' => [
'type' => 'input',
'size' => 30,
'eval' => 'trim, required'
],
],
'email' => [
'exclude' => 0,
'label' => 'LLL:EXT:sg_jobs/Resources/Private/Language/locallang_db.xlf:tx_sgjobs_domain_model_job_application.email',
'config' => [
'type' => 'input',
'size' => 30,
'eval' => 'trim, required'
],
],
'message' => [
'exclude' => 0,
'label' => 'LLL:EXT:sg_jobs/Resources/Private/Language/locallang_db.xlf:tx_sgjobs_domain_model_job_application.message',
'config' => [
'type' => 'input',
'size' => 1024,
'eval' => 'trim, required'
],
],
'cover_letter' => [
'exclude' => 0,
'label' => 'LLL:EXT:sg_jobs/Resources/Private/Language/locallang_db.xlf:tx_sgjobs_domain_model_job_application.cover_letter',
'config' => [
'type' => 'group',
'internal_type' => 'file',
'allowed' => 'pdf, doc',
'size' => 3,
'uploadfolder' => 'uploads/tx_sgjobs/',
'max_size' => 2000,
],
],
'certificates' => [
'exclude' => 0,
'label' => 'LLL:EXT:sg_jobs/Resources/Private/Language/locallang_db.xlf:tx_sgjobs_domain_model_job_application.certificates',
'config' => [
'type' => 'group',
'internal_type' => 'file',
'allowed' => 'pdf, doc',
'size' => 3,
'uploadfolder' => 'uploads/tx_sgjobs/',
'max_size' => 2000,
],
],
'cv' => [
'exclude' => 0,
'label' => 'LLL:EXT:sg_jobs/Resources/Private/Language/locallang_db.xlf:tx_sgjobs_domain_model_job_application.cv',
'config' => [
'type' => 'group',
'internal_type' => 'file',
'allowed' => 'pdf, doc',
'size' => 3,
'uploadfolder' => 'uploads/tx_sgjobs/',
'max_size' => 2000,
],
]
],
];
\ No newline at end of file
......@@ -137,3 +137,60 @@ CREATE TABLE tx_sgjobs_domain_model_contact (
KEY t3ver_oid (t3ver_oid,t3ver_wsid),
KEY language (l10n_parent,sys_language_uid)
);
CREATE TABLE tx_sgjobs_domain_model_job_application (
uid int(11) NOT NULL auto_increment,
pid int(11) DEFAULT '0' NOT NULL,
-- Custom fields
job int(11) unsigned DEFAULT '0' NOT NULL,
gender varchar(30) DEFAULT '' NOT NULL,
first_name text DEFAULT '' NOT NULL,
last_name text DEFAULT '' NOT NULL,
street text DEFAULT '' NOT NULL,
city text DEFAULT '' NOT NULL,
zip text DEFAULT '' NOT NULL,
country text DEFAULT '' NOT NULL,
nationality text DEFAULT '' NOT NULL,
education text DEFAULT '' NOT NULL,
birth_date int(11) unsigned DEFAULT '0' NOT NULL,
phone text DEFAULT '' NOT NULL,
mobile text DEFAULT '' NOT NULL,
email text DEFAULT '' NOT NULL,
message text DEFAULT '' NOT NULL,
cover_letter int(11) unsigned DEFAULT '0' NOT NULL,
certificates int(11) unsigned DEFAULT '0' NOT NULL,
cv int(11) unsigned DEFAULT '0' NOT NULL,
-- TYPO3 fields
sorting int(11) unsigned DEFAULT '0' NOT NULL,
starttime int(11) unsigned DEFAULT '0' NOT NULL,
endtime int(11) unsigned DEFAULT '0' NOT NULL,
tstamp int(11) unsigned DEFAULT '0' NOT NULL,
crdate int(11) unsigned DEFAULT '0' NOT NULL,
cruser_id int(11) unsigned DEFAULT '0' NOT NULL,
deleted tinyint(4) unsigned DEFAULT '0' NOT NULL,
hidden tinyint(4) unsigned DEFAULT '0' NOT NULL,
-- TYPO3 workspace fields
t3ver_oid int(11) DEFAULT '0' NOT NULL,
t3ver_id int(11) DEFAULT '0' NOT NULL,
t3ver_wsid int(11) DEFAULT '0' NOT NULL,
t3ver_label varchar(255) DEFAULT '' NOT NULL,
t3ver_state tinyint(4) DEFAULT '0' NOT NULL,
t3ver_stage int(11) DEFAULT '0' NOT NULL,
t3ver_count int(11) DEFAULT '0' NOT NULL,
t3ver_tstamp int(11) DEFAULT '0' NOT NULL,
t3ver_move_id int(11) DEFAULT '0' NOT NULL,
t3_origuid int(11) DEFAULT '0' NOT NULL,
-- TYPO3 multi language fields
sys_language_uid int(11) DEFAULT '0' NOT NULL,
l10n_parent int(11) DEFAULT '0' NOT NULL,
l10n_diffsource mediumblob,
PRIMARY KEY (uid),
KEY parent (pid),
KEY t3ver_oid (t3ver_oid,t3ver_wsid),
KEY language (l10n_parent,sys_language_uid)
);
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment