src/Cms/WorkflowsBundle/Entity/WorkflowStage.php line 19

Open in your IDE?
  1. <?php
  2. namespace Cms\WorkflowsBundle\Entity;
  3. use Cms\TenantBundle\Entity\TenantedEntity;
  4. use Doctrine\Common\Collections\ArrayCollection;
  5. use Doctrine\ORM\Mapping as ORM;
  6. /**
  7.  * Class WorkflowStage
  8.  * @package Cms\WorkflowsBundle\Entity
  9.  *
  10.  * @ORM\Entity(
  11.  *     repositoryClass = "Cms\WorkflowsBundle\Doctrine\WorkflowStageRepository"
  12.  * )
  13.  * @ORM\Table(
  14.  *     name = "cms__workflows_workflow_stage"
  15.  * )
  16.  */
  17. class WorkflowStage extends TenantedEntity {
  18.     const STAGE_ACTIONS__TRANSLATE 0;
  19.     const STAGE_ACTIONS__SCAN_TEXT 1;
  20.     const STAGE_ACTIONS__SCAN_IMAGE 2;
  21.     const STAGE_ACTIONS__SCAN_VIDEO 3;
  22.     const STAGE_ACTIONS__SCAN_BINARY 4;
  23.     const STAGE_ACTIONS__SCAN_ADA 5;
  24.     const STAGE_ACTIONS__ENFORCEMENT_REVIEW 6;
  25.     public function __construct()
  26.     {
  27.         $this->reviewers = new ArrayCollection();
  28.     }
  29.     /**
  30.      * @var int
  31.      *
  32.      * @ORM\Column(
  33.      *     type = "integer",
  34.      *     nullable = false
  35.      * )
  36.      */
  37.     protected $actionType WorkflowStage::STAGE_ACTIONS__ENFORCEMENT_REVIEW;
  38.     /**
  39.      * @var string
  40.      *
  41.      * @ORM\Column(
  42.      *     type = "string",
  43.      *     nullable = false
  44.      * )
  45.      */
  46.     protected $candidateContentType WorkflowContent::CONTENT_TYPES__ALL;
  47.     /**
  48.      * @var int
  49.      *
  50.      * @ORM\Column(
  51.      *     type = "integer",
  52.      *     nullable = false
  53.      * )
  54.      */
  55.     protected $workflowIndex;
  56.     /**
  57.      * @var string
  58.      *
  59.      * @ORM\Column(
  60.      *     type = "string",
  61.      *     nullable = true
  62.      * )
  63.      */
  64.     protected $workflowStageName;
  65.     /**
  66.      * @var string
  67.      *
  68.      * @ORM\Column(
  69.      *     type = "string",
  70.      *     nullable = true
  71.      * )
  72.      */
  73.     protected $workflowStageDescription;
  74.     /**
  75.      * @var Workflow
  76.      *
  77.      * @ORM\ManyToOne(
  78.      *     targetEntity = "Cms\WorkflowsBundle\Entity\Workflow",
  79.      * )
  80.      * @ORM\JoinColumn(
  81.      *     name = "workflow",
  82.      *     referencedColumnName = "id",
  83.      *     onDelete = "CASCADE"
  84.      * )
  85.      */
  86.     protected $workflow;
  87.     /**
  88.      * @return int
  89.      */
  90.     public function getIndex() {
  91.         return $this->workflowIndex;
  92.     }
  93.     /**
  94.      * @return Workflow
  95.      */
  96.     public function getWorkflow() {
  97.         return $this->workflow;
  98.     }
  99.     /**
  100.      * @param WorkflowContent $content
  101.      * @return Boolean
  102.      */
  103.     public function isRequiredFor($content) {
  104.         return WorkflowContent::CONTENT_TYPES__ALL == WorkflowContent::CONTENT_TYPES__ALL || $this->candidateContentType == $content->getContentType();
  105.     }
  106.     /**
  107.      * @param Workflow $workflow
  108.      * @return WorkflowStage
  109.      */
  110.     public function setWorkflow($workflow$index)
  111.     {
  112.         $this->workflow $workflow;
  113.         $this->workflowIndex $index;
  114.         return $this;
  115.     }
  116.     /**
  117.      * @param string $name
  118.      * @return WorkflowStage
  119.      */
  120.     public function setName($name)
  121.     {
  122.         $this->name $name;
  123.         return $this;
  124.     }
  125.     /**
  126.      * @param string $description
  127.      * @return WorkflowStage
  128.      */
  129.     public function setDescription($description)
  130.     {
  131.         $this->description $description;
  132.         return $this;
  133.     }
  134. }