| Code Coverage | ||||||||||
| Classes and Traits | Functions and Methods | Lines | ||||||||
| Total |  | 0.00% | 0 / 1 |  | 0.00% | 0 / 1 | CRAP |  | 0.00% | 0 / 27 | 
| ChangeStatusButton |  | 0.00% | 0 / 1 |  | 0.00% | 0 / 1 | 30 |  | 0.00% | 0 / 27 | 
| run |  | 0.00% | 0 / 1 | 30 |  | 0.00% | 0 / 27 | |||
| <?php | |
| namespace humhub\modules\tasks\widgets; | |
| use humhub\components\Widget; | |
| use humhub\modules\tasks\models\Task; | |
| use humhub\widgets\Button; | |
| class ChangeStatusButton extends Widget | |
| { | |
| /** | |
| * @var Task | |
| */ | |
| public $task; | |
| /** | |
| * @inheritdoc | |
| */ | |
| public function run() | |
| { | |
| $state = $this->task->state; | |
| $proceedConfig = $state->getProceedConfig(); | |
| $revertConfig = $state->getRevertConfig(); | |
| if(empty($proceedConfig) && empty($revertConfig)) { | |
| return ''; | |
| } | |
| if($state->canProceed($state->getDefaultProceedState())) { | |
| $primaryState = $state->getDefaultProceedState(); | |
| $primaryUrl = $primaryState->getProceedUrl(); | |
| $primaryStateConfig = $proceedConfig[$primaryState->getStatusId()]; | |
| unset($proceedConfig[$primaryState->getStatusId()]); | |
| } else if($state->canRevert($state->getDefaultRevertState())) { | |
| $primaryState = $state->getDefaultRevertState(); | |
| $primaryUrl = $primaryState->getRevertUrl(); | |
| $primaryStateConfig = $revertConfig[$primaryState->getStatusId()]; | |
| unset($revertConfig[$primaryState->getStatusId()]); | |
| } else { | |
| return ''; | |
| } | |
| return $this->render('changeStatusButton', [ | |
| 'task' => $this->task, | |
| 'proceedConfig' => $proceedConfig, | |
| 'revertConfig' => $revertConfig, | |
| 'primaryUrl' => $primaryUrl, | |
| 'primaryStateConfig' => $primaryStateConfig]); | |
| } | |
| } |