<?php /** * Class WPML_TP_TM_Jobs * * @author OnTheGoSystems */ class WPML_TP_TM_Jobs { const CACHE_BATCH_ID = 'wpml_tp_tm_jobs_batch_id'; /** @var wpdb $wpdb */ private $wpdb; /** * WPML_TF_Rating_TP_API constructor. * * @param wpdb $wpdb */ public function __construct( wpdb $wpdb ) { $this->wpdb = $wpdb; } /** * @param int $job_id * * @return null|string */ public function get_batch_id( $job_id ) { $cached_batch_id = wp_cache_get( $job_id, self::CACHE_BATCH_ID ); if ( $cached_batch_id ) { return $cached_batch_id; } $query = "SELECT tb.tp_id FROM {$this->wpdb->prefix}icl_translation_batches AS tb LEFT JOIN {$this->wpdb->prefix}icl_translation_status AS ts ON tb.id = ts.batch_id LEFT JOIN {$this->wpdb->prefix}icl_translate_job AS tj ON ts.rid = tj.rid WHERE tj.job_id = %d"; $batch_id = $this->wpdb->get_var( $this->wpdb->prepare( $query, $job_id ) ); wp_cache_set( $job_id, $batch_id, self::CACHE_BATCH_ID ); return $batch_id; } }