diff --git a/Classes/Domain/Model/JobApplication.php b/Classes/Domain/Model/JobApplication.php index fd8b999a08c98ec003d22e1d1647c0d1c577dd22..d2274f61b901ee71e99c14f2e457379e7d4f8609 100644 --- a/Classes/Domain/Model/JobApplication.php +++ b/Classes/Domain/Model/JobApplication.php @@ -161,6 +161,31 @@ class JobApplication extends AbstractEntity { */ protected $privacyPolicy = FALSE; + /** + * @var string + */ + protected $freetextField1 = ''; + + /** + * @var string + */ + protected $freetextField2 = ''; + + /** + * @var string + */ + protected $freetextField3 = ''; + + /** + * @var string + */ + protected $freetextField4 = ''; + + /** + * @var string + */ + protected $freetextField5 = ''; + /** * Job application constructor. */ @@ -497,4 +522,79 @@ class JobApplication extends AbstractEntity { public function setPrivacyPolicy($privacyPolicy) { $this->privacyPolicy = $privacyPolicy; } + + /** + * @return string + */ + public function getFreetextField1(): string { + return $this->freetextField1; + } + + /** + * @param string $freetextField1 + * @return void + */ + public function setFreetextField1(string $freetextField1): void { + $this->freetextField1 = $freetextField1; + } + + /** + * @return string + */ + public function getFreetextField2(): string { + return $this->freetextField2; + } + + /** + * @param string $freetextField2 + * @return void + */ + public function setFreetextField2(string $freetextField2): void { + $this->freetextField2 = $freetextField2; + } + + /** + * @return string + */ + public function getFreetextField3(): string { + return $this->freetextField3; + } + + /** + * @param string $freetextField3 + * @return void + */ + public function setFreetextField3(string $freetextField3): void { + $this->freetextField3 = $freetextField3; + } + + /** + * @return string + */ + public function getFreetextField4(): string { + return $this->freetextField4; + } + + /** + * @param string $freetextField4 + * @return void + */ + public function setFreetextField4(string $freetextField4): void { + $this->freetextField4 = $freetextField4; + } + + /** + * @return string + */ + public function getFreetextField5(): string { + return $this->freetextField5; + } + + /** + * @param string $freetextField5 + * @return void + */ + public function setFreetextField5(string $freetextField5): void { + $this->freetextField5 = $freetextField5; + } } diff --git a/Configuration/TCA/tx_sgjobs_domain_model_job_application.php b/Configuration/TCA/tx_sgjobs_domain_model_job_application.php index 3a76740fb15128df872f06d4e7a172144e213352..ef216edaffd9c402d425b37751fb1b0b17ac422e 100644 --- a/Configuration/TCA/tx_sgjobs_domain_model_job_application.php +++ b/Configuration/TCA/tx_sgjobs_domain_model_job_application.php @@ -52,7 +52,7 @@ $columns = [ 'interface' => [], 'types' => [ '1' => [ - 'showitem' => '--palette--;;sysLanguageAndHidden,job_id,job,job_title,company,gender,first_name,last_name,street,city,zip,country,nationality,education,birth_date,phone,mobile,email,message,privacy_policy,cover_letter,cv,certificate,div,--palette--;;richtext[*]:rte_transform[mode=ts],--div--;LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:tabs.access,starttime,endtime', + 'showitem' => '--palette--;;sysLanguageAndHidden,job_id,job,job_title,company,gender,first_name,last_name,street,city,zip,country,nationality,education,birth_date,phone,mobile,email,message,privacy_policy,cover_letter,cv,certificate,div,--palette--;;richtext[*]:rte_transform[mode=ts],--div--;LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:tabs.access,starttime,endtime,--div--;LLL:EXT:sg_jobs/Resources/Private/Language/locallang_db.xlf:tca.freetext_fields_tab,freetext_field1,freetext_field2,freetext_field3,freetext_field4,freetext_field5', ], ], 'palettes' => [ @@ -360,6 +360,51 @@ $columns = [ 'type' => 'check', 'default' => 0 ] + ], + 'freetext_field1' => [ + 'exclude' => FALSE, + 'label' => 'LLL:EXT:sg_jobs/Resources/Private/Language/locallang_db.xlf:tx_sgjobs_domain_model_job_application.freetext_field1', + 'config' => [ + 'type' => 'input', + 'size' => 30, + 'eval' => 'trim' + ], + ], + 'freetext_field2' => [ + 'exclude' => FALSE, + 'label' => 'LLL:EXT:sg_jobs/Resources/Private/Language/locallang_db.xlf:tx_sgjobs_domain_model_job_application.freetext_field2', + 'config' => [ + 'type' => 'input', + 'size' => 30, + 'eval' => 'trim' + ], + ], + 'freetext_field3' => [ + 'exclude' => FALSE, + 'label' => 'LLL:EXT:sg_jobs/Resources/Private/Language/locallang_db.xlf:tx_sgjobs_domain_model_job_application.freetext_field3', + 'config' => [ + 'type' => 'input', + 'size' => 30, + 'eval' => 'trim' + ], + ], + 'freetext_field4' => [ + 'exclude' => FALSE, + 'label' => 'LLL:EXT:sg_jobs/Resources/Private/Language/locallang_db.xlf:tx_sgjobs_domain_model_job_application.freetext_field4', + 'config' => [ + 'type' => 'input', + 'size' => 30, + 'eval' => 'trim' + ], + ], + 'freetext_field5' => [ + 'exclude' => FALSE, + 'label' => 'LLL:EXT:sg_jobs/Resources/Private/Language/locallang_db.xlf:tx_sgjobs_domain_model_job_application.freetext_field5', + 'config' => [ + 'type' => 'input', + 'size' => 30, + 'eval' => 'trim' + ], ] ], ]; diff --git a/Resources/Private/Language/de.locallang_db.xlf b/Resources/Private/Language/de.locallang_db.xlf index 3ad8107537b008e6e90c745581d7ac8ac9942e40..964286ba8cfc76ce32c8a2b7f8b81be6f4968473 100644 --- a/Resources/Private/Language/de.locallang_db.xlf +++ b/Resources/Private/Language/de.locallang_db.xlf @@ -25,6 +25,10 @@ <source><![CDATA[SEO]]></source> <target><![CDATA[SEO]]></target> </trans-unit> + <trans-unit id="tca.freetext_fields_tab" approved="yes"> + <source><![CDATA[Other information]]></source> + <target><![CDATA[Sonstige Infos]]></target> + </trans-unit> <trans-unit id="tx_sgjobs.application_privacyPolicyPage" approved="yes"> <source><![CDATA[Privacy policy page]]></source> <target><![CDATA[Dateschutzinformationsseite]]></target> @@ -513,6 +517,26 @@ <source><![CDATA[Zip]]></source> <target><![CDATA[PLZ]]></target> </trans-unit> + <trans-unit id="tx_sgjobs_domain_model_job_application.freetext_field1" approved="yes"> + <source><![CDATA[Free text field 1]]></source> + <target><![CDATA[Freitextfeld 1]]></target> + </trans-unit> + <trans-unit id="tx_sgjobs_domain_model_job_application.freetext_field2" approved="yes"> + <source><![CDATA[Free text field 2]]></source> + <target><![CDATA[Freitextfeld 2]]></target> + </trans-unit> + <trans-unit id="tx_sgjobs_domain_model_job_application.freetext_field3" approved="yes"> + <source><![CDATA[Free text field 3]]></source> + <target><![CDATA[Freitextfeld 3]]></target> + </trans-unit> + <trans-unit id="tx_sgjobs_domain_model_job_application.freetext_field4" approved="yes"> + <source><![CDATA[Free text field 4]]></source> + <target><![CDATA[Freitextfeld 4]]></target> + </trans-unit> + <trans-unit id="tx_sgjobs_domain_model_job_application.freetext_field5" approved="yes"> + <source><![CDATA[Free text field 5]]></source> + <target><![CDATA[Freitextfeld 5]]></target> + </trans-unit> <trans-unit id="tx_sgjobs_domain_model_location" approved="yes"> <source><![CDATA[Location]]></source> <target><![CDATA[Arbeitsort]]></target> diff --git a/Resources/Private/Language/locallang_db.xlf b/Resources/Private/Language/locallang_db.xlf index c0c4d6f1da62cc7da59d1dcb5fd7bb9389bf637f..e0e4a6e5767b529d9c23d116a960074e185279b6 100644 --- a/Resources/Private/Language/locallang_db.xlf +++ b/Resources/Private/Language/locallang_db.xlf @@ -24,6 +24,9 @@ <trans-unit id="tca.seo_tab"> <source><![CDATA[SEO]]></source> </trans-unit> + <trans-unit id="tca.freetext_fields_tab"> + <source><![CDATA[Other information]]></source> + </trans-unit> <trans-unit id="tx_sgjobs.application_privacyPolicyPage"> <source><![CDATA[Privacy policy page]]></source> </trans-unit> @@ -393,6 +396,21 @@ <trans-unit id="tx_sgjobs_domain_model_job_application.zip"> <source><![CDATA[Zip]]></source> </trans-unit> + <trans-unit id="tx_sgjobs_domain_model_job_application.freetext_field1"> + <source><![CDATA[Free text field 1]]></source> + </trans-unit> + <trans-unit id="tx_sgjobs_domain_model_job_application.freetext_field2"> + <source><![CDATA[Free text field 2]]></source> + </trans-unit> + <trans-unit id="tx_sgjobs_domain_model_job_application.freetext_field3"> + <source><![CDATA[Free text field 3]]></source> + </trans-unit> + <trans-unit id="tx_sgjobs_domain_model_job_application.freetext_field4"> + <source><![CDATA[Free text field 4]]></source> + </trans-unit> + <trans-unit id="tx_sgjobs_domain_model_job_application.freetext_field5"> + <source><![CDATA[Free text field 5]]></source> + </trans-unit> <trans-unit id="tx_sgjobs_domain_model_location"> <source><![CDATA[Location]]></source> </trans-unit> diff --git a/ext_tables.sql b/ext_tables.sql index 26eb29c7b784d8f45317852c628b4c93b3d45711..e7dfc79cd5c152e995de7473ad92cb60e63351ac 100644 --- a/ext_tables.sql +++ b/ext_tables.sql @@ -1,4 +1,5 @@ -CREATE TABLE tx_sgjobs_domain_model_job ( +CREATE TABLE tx_sgjobs_domain_model_job +( path_segment text DEFAULT '' NOT NULL, title text DEFAULT '' NOT NULL, job_id varchar(30) DEFAULT '' NOT NULL, @@ -30,15 +31,18 @@ CREATE TABLE tx_sgjobs_domain_model_job ( related_jobs varchar(255) DEFAULT '' NOT NULL ); -CREATE TABLE tx_sgjobs_domain_model_department ( +CREATE TABLE tx_sgjobs_domain_model_department +( title text DEFAULT '' NOT NULL ); -CREATE TABLE tx_sgjobs_domain_model_experience_level ( +CREATE TABLE tx_sgjobs_domain_model_experience_level +( title text DEFAULT '' NOT NULL ); -CREATE TABLE tx_sgjobs_domain_model_company ( +CREATE TABLE tx_sgjobs_domain_model_company +( city varchar(255) DEFAULT '' NOT NULL, zip varchar(255) DEFAULT '' NOT NULL, name varchar(255) DEFAULT '' NOT NULL, @@ -51,7 +55,8 @@ CREATE TABLE tx_sgjobs_domain_model_company ( identifying_url varchar(255) DEFAULT '' NOT NULL ); -CREATE TABLE tx_sgjobs_domain_model_contact ( +CREATE TABLE tx_sgjobs_domain_model_contact +( title varchar(255) DEFAULT '' NOT NULL, first_name varchar(255) DEFAULT '' NOT NULL, last_name varchar(255) DEFAULT '' NOT NULL, @@ -65,27 +70,33 @@ CREATE TABLE tx_sgjobs_domain_model_contact ( image int(11) unsigned DEFAULT '0' ); -CREATE TABLE tx_sgjobs_domain_model_job_application ( - job_id text DEFAULT '' NOT NULL, - job int(11) unsigned DEFAULT '0' NOT NULL, - job_title text DEFAULT '' NOT NULL, - company text DEFAULT '' 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 varchar(255) DEFAULT '' NOT NULL, - country text DEFAULT '' NOT NULL, - nationality text DEFAULT '' NOT NULL, - education text DEFAULT '' NOT NULL, - birth_date text DEFAULT '' 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, - certificate int(11) unsigned DEFAULT '0' NOT NULL, - cv int(11) unsigned DEFAULT '0' NOT NULL, - privacy_policy tinyint(4) unsigned DEFAULT '0' NOT NULL +CREATE TABLE tx_sgjobs_domain_model_job_application +( + job_id text DEFAULT '' NOT NULL, + job int(11) unsigned DEFAULT '0' NOT NULL, + job_title text DEFAULT '' NOT NULL, + company text DEFAULT '' 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 varchar(255) DEFAULT '' NOT NULL, + country text DEFAULT '' NOT NULL, + nationality text DEFAULT '' NOT NULL, + education text DEFAULT '' NOT NULL, + birth_date text DEFAULT '' 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, + certificate int(11) unsigned DEFAULT '0' NOT NULL, + cv int(11) unsigned DEFAULT '0' NOT NULL, + privacy_policy tinyint(4) unsigned DEFAULT '0' NOT NULL, + freetext_field1 text DEFAULT '' NOT NULL, + freetext_field2 text DEFAULT '' NOT NULL, + freetext_field3 text DEFAULT '' NOT NULL, + freetext_field4 text DEFAULT '' NOT NULL, + freetext_field5 text DEFAULT '' NOT NULL );