2 namespace TYPO3\CMS\Linkvalidator\Task;
41 $additionalFields = array();
42 if (empty($taskInfo[
'configuration'])) {
43 if ($schedulerModule->CMD ===
'add') {
44 $taskInfo[
'configuration'] =
'';
45 }
elseif ($schedulerModule->CMD ===
'edit') {
46 $taskInfo[
'configuration'] = $task->getConfiguration();
48 $taskInfo[
'configuration'] = $task->getConfiguration();
51 if (empty($taskInfo[
'depth'])) {
52 if ($schedulerModule->CMD ===
'add') {
53 $taskInfo[
'depth'] = array();
54 }
elseif ($schedulerModule->CMD ===
'edit') {
55 $taskInfo[
'depth'] = $task->getDepth();
57 $taskInfo[
'depth'] = $task->getDepth();
60 if (empty($taskInfo[
'page'])) {
61 if ($schedulerModule->CMD ===
'add') {
62 $taskInfo[
'page'] =
'';
63 }
elseif ($schedulerModule->CMD ===
'edit') {
64 $taskInfo[
'page'] = $task->getPage();
66 $taskInfo[
'page'] = $task->getPage();
69 if (empty($taskInfo[
'email'])) {
70 if ($schedulerModule->CMD ===
'add') {
71 $taskInfo[
'email'] =
'';
72 }
elseif ($schedulerModule->CMD ===
'edit') {
73 $taskInfo[
'email'] = $task->getEmail();
75 $taskInfo[
'email'] = $task->getEmail();
78 if (empty($taskInfo[
'emailOnBrokenLinkOnly'])) {
79 if ($schedulerModule->CMD ===
'add') {
80 $taskInfo[
'emailOnBrokenLinkOnly'] = 1;
81 }
elseif ($schedulerModule->CMD ===
'edit') {
82 $taskInfo[
'emailOnBrokenLinkOnly'] = $task->getEmailOnBrokenLinkOnly();
84 $taskInfo[
'emailOnBrokenLinkOnly'] = $task->getEmailOnBrokenLinkOnly();
87 if (empty($taskInfo[
'emailTemplateFile'])) {
88 if ($schedulerModule->CMD ===
'add') {
89 $taskInfo[
'emailTemplateFile'] =
'EXT:linkvalidator/Resources/Private/Templates/mailtemplate.html';
90 }
elseif ($schedulerModule->CMD ===
'edit') {
91 $taskInfo[
'emailTemplateFile'] = $task->getEmailTemplateFile();
93 $taskInfo[
'emailTemplateFile'] = $task->getEmailTemplateFile();
96 $fieldId =
'task_page';
97 $fieldCode =
'<input type="text" class="form-control" name="tx_scheduler[linkvalidator][page]" id="' . $fieldId .
'" value="' . htmlspecialchars($taskInfo[
'page']) .
'">';
99 $label =
$lang->sL(
'LLL:EXT:linkvalidator/Resources/Private/Language/locallang.xlf:tasks.validate.page');
100 $label = BackendUtility::wrapInHelp(
'linkvalidator', $fieldId, $label);
101 $additionalFields[$fieldId] = array(
102 'code' => $fieldCode,
106 $fieldId =
'task_depth';
107 $fieldValueArray = array(
108 '0' =>
$lang->sL(
'LLL:EXT:lang/locallang_core.xlf:labels.depth_0'),
109 '1' =>
$lang->sL(
'LLL:EXT:lang/locallang_core.xlf:labels.depth_1'),
110 '2' =>
$lang->sL(
'LLL:EXT:lang/locallang_core.xlf:labels.depth_2'),
111 '3' =>
$lang->sL(
'LLL:EXT:lang/locallang_core.xlf:labels.depth_3'),
112 '4' =>
$lang->sL(
'LLL:EXT:lang/locallang_core.xlf:labels.depth_4'),
113 '999' =>
$lang->sL(
'LLL:EXT:lang/locallang_core.xlf:labels.depth_infi')
115 $fieldCode =
'<select class="form-control" name="tx_scheduler[linkvalidator][depth]" id="' . $fieldId .
'">';
116 foreach ($fieldValueArray as $depth => $label) {
117 $fieldCode .=
"\t" .
'<option value="' . htmlspecialchars($depth) .
'"' .
118 (($depth == $taskInfo[
'depth']) ?
' selected="selected"' :
'') .
119 '>' . $label .
'</option>';
121 $fieldCode .=
'</select>';
122 $label =
$lang->sL(
'LLL:EXT:linkvalidator/Resources/Private/Language/locallang.xlf:tasks.validate.depth');
123 $label = BackendUtility::wrapInHelp(
'linkvalidator', $fieldId, $label);
124 $additionalFields[$fieldId] = array(
125 'code' => $fieldCode,
128 $fieldId =
'task_configuration';
129 $fieldCode =
'<textarea class="form-control" name="tx_scheduler[linkvalidator][configuration]" id="' . $fieldId .
'" >' .
130 htmlspecialchars($taskInfo[
'configuration']) .
'</textarea>';
131 $label =
$lang->sL(
'LLL:EXT:linkvalidator/Resources/Private/Language/locallang.xlf:tasks.validate.conf');
132 $label = BackendUtility::wrapInHelp(
'linkvalidator', $fieldId, $label);
133 $additionalFields[$fieldId] = array(
134 'code' => $fieldCode,
137 $fieldId =
'task_email';
138 $fieldCode =
'<textarea class="form-control" rows="5" cols="50" name="tx_scheduler[linkvalidator][email]" id="' . $fieldId .
'">' .
139 htmlspecialchars($taskInfo[
'email']) .
'</textarea>';
140 $label =
$lang->sL(
'LLL:EXT:linkvalidator/Resources/Private/Language/locallang.xlf:tasks.validate.email');
141 $label = BackendUtility::wrapInHelp(
'linkvalidator', $fieldId, $label);
142 $additionalFields[$fieldId] = array(
143 'code' => $fieldCode,
146 $fieldId =
'task_emailOnBrokenLinkOnly';
147 $fieldCode =
'<div class="checkbox"><label><input type="checkbox" name="tx_scheduler[linkvalidator][emailOnBrokenLinkOnly]" id="' . $fieldId .
'" ' .
148 (htmlspecialchars($taskInfo[
'emailOnBrokenLinkOnly']) ?
'checked="checked"' :
'') .
'></label></div>';
149 $label =
$lang->sL(
'LLL:EXT:linkvalidator/Resources/Private/Language/locallang.xlf:tasks.validate.emailOnBrokenLinkOnly');
150 $label = BackendUtility::wrapInHelp(
'linkvalidator', $fieldId, $label);
151 $additionalFields[$fieldId] = array(
152 'code' => $fieldCode,
155 $fieldId =
'task_emailTemplateFile';
156 $fieldCode =
'<input class="form-control" type="text" name="tx_scheduler[linkvalidator][emailTemplateFile]" id="' . $fieldId .
157 '" value="' . htmlspecialchars($taskInfo[
'emailTemplateFile']) .
'">';
158 $label =
$lang->sL(
'LLL:EXT:linkvalidator/Resources/Private/Language/locallang.xlf:tasks.validate.emailTemplateFile');
159 $label = BackendUtility::wrapInHelp(
'linkvalidator', $fieldId, $label);
160 $additionalFields[$fieldId] = array(
161 'code' => $fieldCode,
164 return $additionalFields;
177 if (in_array($currentValue, $configurationArray,
true)) {
178 $selected =
'selected="selected" ';
196 if (!empty($submittedData[
'linkvalidator'][
'email'])) {
198 foreach ($emailList as $emailAdd) {
205 if ($res = $this->
getDatabaseConnection()->exec_SELECTquery(
'*',
'pages',
'uid = ' . (
int)$submittedData[
'linkvalidator'][
'page'])) {
206 if ($this->
getDatabaseConnection()->sql_num_rows($res) == 0 && $submittedData[
'linkvalidator'][
'page'] > 0) {
209 $lang->sL(
'LLL:EXT:linkvalidator/Resources/Private/Language/locallang.xlf:tasks.validate.invalidPage'),
217 $lang->sL(
'LLL:EXT:linkvalidator/Resources/Private/Language/locallang.xlf:tasks.validate.invalidPage'),
221 if ($submittedData[
'linkvalidator'][
'depth'] < 0) {
224 $lang->sL(
'LLL:EXT:linkvalidator/Resources/Private/Language/locallang.xlf:tasks.validate.invalidDepth'),
242 $task->setDepth($submittedData[
'linkvalidator'][
'depth']);
243 $task->setPage($submittedData[
'linkvalidator'][
'page']);
244 $task->setEmail($submittedData[
'linkvalidator'][
'email']);
245 if ($submittedData[
'linkvalidator'][
'emailOnBrokenLinkOnly']) {
246 $task->setEmailOnBrokenLinkOnly(1);
248 $task->setEmailOnBrokenLinkOnly(0);
250 $task->setConfiguration($submittedData[
'linkvalidator'][
'configuration']);
251 $task->setEmailTemplateFile($submittedData[
'linkvalidator'][
'emailTemplateFile']);