private function init_original_post()
 {
     // we do not need the original document of the job here
     // but the document with the same trid and in the $this->job->source_language_code
     $this->all_translations = $this->sitepress->get_element_translations($this->job->trid, $this->job->original_post_type);
     $this->original_post = false;
     foreach ($this->all_translations as $t) {
         if ($t->language_code === $this->job->source_language_code) {
             $this->original_post = $this->tm_instance->get_post($t->element_id, $this->job->element_type_prefix);
             //if this fails for some reason use the original doc from which the trid originated
             break;
         }
     }
     $this->original_post = $this->original_post ? $this->original_post : $this->tm_instance->get_post($this->job_instance->get_original_element_id(), $this->job->element_type_prefix);
     if (isset($this->all_translations[$this->job->language_code])) {
         $post_status = new WPML_Post_Status($this->wpdb, $this->sitepress->get_wp_api());
         $this->is_duplicate = $post_status->is_duplicate($this->all_translations[$this->job->language_code]->element_id);
     }
     return $this->original_post;
 }
 private function is_in_basket($trid, $lang)
 {
     return $this->status_helper->get_status(false, $trid, $lang) === ICL_TM_IN_BASKET;
 }