Пример #1
0
 /**
  * Adds a job item to the xml export.
  *
  * @param $item
  *   The job item entity.
  */
 protected function addItem(JobItemInterface $item)
 {
     $this->startElement('group');
     $this->writeAttribute('id', $item->id());
     // Add a note for the source label.
     $this->writeElement('note', $item->getSourceLabel());
     // @todo: Write in nested groups instead of flattening it.
     $data = \Drupal::service('tmgmt.data')->filterTranslatable($item->getData());
     foreach ($data as $key => $element) {
         $this->addTransUnit($item->id() . '][' . $key, $element, $this->job);
     }
     $this->endElement();
 }
Пример #2
0
 /**
  * {@inheritdoc}
  */
 public function rejectDataItem(JobItemInterface $job_item, array $key, array $values = NULL)
 {
     $key = '[' . implode('][', $key) . ']';
     $job_item->addMessage('Rejected data item @key for job item @item in job @job.', array('@key' => $key, '@item' => $job_item->id(), '@job' => $job_item->getJobId()));
     return TRUE;
 }
Пример #3
0
 /**
  * {@inheritdoc}
  */
 public function getPreviewUrl(JobItemInterface $job_item)
 {
     if ($job_item->getJob()->isActive() && !($job_item->isAborted() || $job_item->isAccepted())) {
         return new Url('tmgmt_content.job_item_preview', ['tmgmt_job_item' => $job_item->id()], ['query' => ['key' => \Drupal::service('tmgmt_content.key_access')->getKey($job_item)]]);
     } else {
         return NULL;
     }
 }
Пример #4
0
 /**
  * Generates a key from job item data that can be used in the URL.
  *
  * @param \Drupal\tmgmt\JobItemInterface $tmgmt_job_item
  *   Job item.
  *
  * @return string
  *   Returns hashed key that is safe to use in the URL.
  */
 public function getKey(JobItemInterface $tmgmt_job_item)
 {
     return Crypt::hmacBase64($tmgmt_job_item->id(), Settings::getHashSalt());
 }
Пример #5
0
 /**
  * {@inheritdoc}
  */
 public function addTaskItem(JobItemInterface $job_item)
 {
     // Save the task to get an id.
     if ($this->isNew()) {
         $this->save();
     }
     $local_task = LocalTaskItem::create(array('tltid' => $this->id(), 'tjiid' => $job_item->id()));
     $local_task->save();
     return $local_task;
 }
Пример #6
0
 /**
  * {@inheritdoc}
  */
 public function getSourceLangCode(JobItemInterface $job_item)
 {
     $source_languages = \Drupal::state()->get('tmgmt.test_source_languages', array());
     if (isset($source_languages[$job_item->id()])) {
         return $source_languages[$job_item->id()];
     }
     return 'en';
 }