function sendMessage($action) { if (module_exists('nodejs')) { if (!isset($this->progress_object)) { if ($progress = progress_get_progress($this->handle)) { $this->progress_object = $progress; $this->progress = $progress->progress; $this->progress_message = $progress->message; } else { $this->progress = 0; $this->progress_message = ''; } } $object = clone $this; $message = (object) array('channel' => 'background_process', 'data' => (object) array('action' => $action, 'background_process' => $object, 'timestamp' => microtime(TRUE)), 'callback' => 'nodejsBackgroundProcess'); drupal_alter('background_process_message', $message); nodejs_send_content_channel_message($message); } }
/** * Implementation of getProgress(). * * @param UltimateCronJob $job * Job to get progress for. * * @return float * Progress for the job. */ public function getProgress($job) { $handle = 'uc-' . $job->name; $progress = progress_get_progress($handle); return $progress ? $progress->progress : FALSE; }