diff --git a/app/libraries/AdminUtilities.php b/app/libraries/AdminUtilities.php index b66ab4c5e..cb93ceb7f 100644 --- a/app/libraries/AdminUtilities.php +++ b/app/libraries/AdminUtilities.php @@ -4,6 +4,7 @@ use Airavata\Model\Workspace\GatewayApprovalStatus; use Airavata\Model\Workspace\Notification; use Airavata\Model\Workspace\NotificationPriority; +use Airavata\Model\Status\JobState; use Airavata\Model\Credential\Store\CredentialOwnerType; use Illuminate\Support\Facades\Log; @@ -300,7 +301,19 @@ public static function get_experiments_of_time_range($inputs) foreach ($experiments as $experiment) { //var_dump( $experiment); exit; $expValue = ExperimentUtilities::get_experiment_values($experiment, true); + $jobDetails = ExperimentUtilities::get_job_details($experiment->experimentId); + foreach( $jobDetails as $index => $jobDetail){ + if(isset($jobDetail->jobStatuses)){ + $jobDetails[ $index]->jobStatuses[0]->jobStateName = JobState::$__names[$jobDetail->jobStatuses[0]->jobState]; + } + else{ + $jobDetails[ $index]->jobStatuses = [new stdClass()]; + $jobDetails[ $index]->jobStatuses[0]->jobStateName = null; + } + } + $expContainer[$expNum]['experiment'] = $experiment; + $expContainer[$expNum]['jobDetails'] = $jobDetails; $expValue["editable"] = false; $expContainer[$expNum]['expValue'] = $expValue; $expNum++; diff --git a/app/libraries/ExperimentUtilities.php b/app/libraries/ExperimentUtilities.php index ab91a3b9d..64f24ecd8 100755 --- a/app/libraries/ExperimentUtilities.php +++ b/app/libraries/ExperimentUtilities.php @@ -1243,7 +1243,18 @@ public static function get_expsearch_results_with_pagination($inputs, $limit, $o if(Config::get('pga_config.airavata')["data-sharing-enabled"]){ if (SharingUtilities::userCanRead(Session::get('username'), $experiment->experimentId, ResourceType::EXPERIMENT)) { $expValue = ExperimentUtilities::get_experiment_values($experiment, true); + $jobDetails = ExperimentUtilities::get_job_details($experiment->experimentId); + foreach( $jobDetails as $index => $jobDetail){ + if(isset($jobDetail->jobStatuses)){ + $jobDetails[ $index]->jobStatuses[0]->jobStateName = JobState::$__names[$jobDetail->jobStatuses[0]->jobState]; + }else { + $jobDetails[ $index]->jobStatuses = [new stdClass()]; + $jobDetails[ $index]->jobStatuses[0]->jobStateName = null; + } + } + $expContainer[$expNum]['experiment'] = $experiment; + $expContainer[$expNum]['jobDetails'] = $jobDetails; if ($expValue["experimentStatusString"] == "FAILED") $expValue["editable"] = false; $expContainer[$expNum]['expValue'] = $expValue; @@ -1251,7 +1262,17 @@ public static function get_expsearch_results_with_pagination($inputs, $limit, $o } }else{ $expValue = ExperimentUtilities::get_experiment_values($experiment, true); + $jobDetails = ExperimentUtilities::get_job_details($experiment->experimentId); + foreach( $jobDetails as $index => $jobDetail){ + if(isset($jobDetail->jobStatuses)){ + $jobDetails[ $index]->jobStatuses[0]->jobStateName = JobState::$__names[$jobDetail->jobStatuses[0]->jobState]; + }else { + $jobDetails[ $index]->jobStatuses = [new stdClass()]; + $jobDetails[ $index]->jobStatuses[0]->jobStateName = null; + } + } $expContainer[$expNum]['experiment'] = $experiment; + $expContainer[$expNum]['jobDetails'] = $jobDetails; if ($expValue["experimentStatusString"] == "FAILED") $expValue["editable"] = false; $expContainer[$expNum]['expValue'] = $expValue;