|
1
|
|
|
<?php |
|
2
|
|
|
|
|
3
|
|
|
declare(strict_types=1); |
|
4
|
|
|
|
|
5
|
|
|
/* |
|
6
|
|
|
* This file is part of forecast.it.fill project. |
|
7
|
|
|
* (c) Patrick Jaja <[email protected]> |
|
8
|
|
|
* This source file is subject to the MIT license that is bundled |
|
9
|
|
|
* with this source code in the file LICENSE. |
|
10
|
|
|
*/ |
|
11
|
|
|
|
|
12
|
|
|
namespace ForecastAutomation\ProjektronClient\Business; |
|
13
|
|
|
|
|
14
|
|
|
class PayloadDto { |
|
15
|
|
|
private $data; |
|
16
|
|
|
|
|
17
|
|
|
public function __construct(string $task, string $csrfToken, string $username, string $day, string $hours, string $minutes, string $description) { |
|
18
|
|
|
$this->data = [ |
|
19
|
|
|
'daytimerecording,formsubmitted' => 'true', |
|
20
|
|
|
'daytimerecording,Content,singleeffort,TaskSelector,fixedtask,Data_CustomTitle' => 'Einzelbuchen', |
|
21
|
|
|
'daytimerecording,Content,singleeffort,TaskSelector,fixedtask,Data_FirstOnPage' => 'daytimerecording', |
|
22
|
|
|
'daytimerecording,Content,singleeffort,TaskSelector,fixedtask,Data_FirstOnPage' => 'daytimerecording', |
|
23
|
|
|
'daytimerecording,Content,singleeffort,TaskSelector,fixedtask,task,task' => $task, // task |
|
24
|
|
|
'daytimerecording,Content,singleeffort,EffortEditor,effort1,effortStart,effortStart_hour' => '', |
|
25
|
|
|
'daytimerecording,Content,singleeffort,EffortEditor,effort1,effortStart,effortStart_minute' => '', |
|
26
|
|
|
'daytimerecording,Content,singleeffort,EffortEditor,effort1,effortEnd,effortEnd_hour' => '', |
|
27
|
|
|
'daytimerecording,Content,singleeffort,EffortEditor,effort1,effortEnd,effortEnd_minute' => '', |
|
28
|
|
|
'daytimerecording,Content,singleeffort,EffortEditor,effort1,effortExpense,effortExpense_hour' => $hours, |
|
29
|
|
|
'daytimerecording,Content,singleeffort,EffortEditor,effort1,effortExpense,effortExpense_minute' => $minutes, |
|
30
|
|
|
'daytimerecording,Content,singleeffort,EffortEditor,effort1,description,description' => $description, |
|
31
|
|
|
'daytimerecording,Content,singleeffort,recordType' => 'neweffort', |
|
32
|
|
|
'daytimerecording,Content,singleeffort,recordOid' => '', |
|
33
|
|
|
'daytimerecording,Content,singleeffort,recordDate' => $day, // day |
|
34
|
|
|
'daytimerecording,editableComponentNames' => 'daytimerecording,Content,singleeffort daytimerecording,Content,daytimerecordingAllBookingsOfTheDay', |
|
35
|
|
|
'oid' => $task, |
|
36
|
|
|
'user' => $username, |
|
37
|
|
|
'action,MultiComponentDayTimeRecordingAction,daytimerecording' => '0', |
|
38
|
|
|
'BCS.ConfirmDiscardChangesDialog,InitialApplyButtonsOnError' => 'daytimerecording,Apply', |
|
39
|
|
|
'CSRF_Token' => $csrfToken, |
|
40
|
|
|
'daytimerecording,Apply' => 'daytimerecording,Apply', |
|
41
|
|
|
'submitButtonPressed' => 'daytimerecording,Apply', |
|
42
|
|
|
]; |
|
43
|
|
|
} |
|
44
|
|
|
|
|
45
|
|
|
public function getEncodedData() { |
|
46
|
|
|
// URL-encode the data for the POST request |
|
47
|
|
|
return http_build_query($this->data); |
|
48
|
|
|
} |
|
49
|
|
|
} |
|
50
|
|
|
|