public function summary()
 {
     $experiment = ExperimentUtilities::get_experiment($_GET['expId']);
     //var_dump( $detailedExperiment); exit;
     if ($experiment != null) {
         $project = ProjectUtilities::get_project($experiment->projectId);
         $expVal = ExperimentUtilities::get_experiment_values($experiment, $project);
         $jobDetails = ExperimentUtilities::get_job_details($experiment->experimentId);
         //var_dump( $jobDetails); exit;
         foreach ($jobDetails as $index => $jobDetail) {
             if (isset($jobDetail->jobStatus)) {
                 $jobDetails[$index]->jobStatus->jobStateName = JobState::$__names[$jobDetail->jobStatus->jobState];
             } else {
                 $jobDetails[$index]->jobStatus = new stdClass();
                 $jobDetails[$index]->jobStatus->jobStateName = null;
             }
         }
         $expVal["jobDetails"] = $jobDetails;
         $data = array("expId" => Input::get("expId"), "experiment" => $experiment, "project" => $project, "jobDetails" => $jobDetails, "expVal" => $expVal);
         if (Input::has("dashboard")) {
             $detailedExperiment = ExperimentUtilities::get_detailed_experiment($_GET['expId']);
             $data["detailedExperiment"] = $detailedExperiment;
         }
         if (Request::ajax()) {
             //admin wants to see an experiment summary
             if (Input::has("dashboard")) {
                 $data["dashboard"] = true;
                 return View::make("partials/experiment-info", $data);
             } else {
                 return json_encode($data);
             }
         } else {
             return View::make("experiment/summary", $data);
         }
     } else {
         if (Input::has("dashboard")) {
             return View::make("partials/experiment-info", array("invalidExperimentId" => 1));
         } else {
             return View::make("experiment/summary", array("invalidExperimentId" => 1));
         }
     }
 }
 public function summary()
 {
     $experiment = ExperimentUtilities::get_experiment($_GET['expId']);
     if ($experiment != null) {
         $project = ProjectUtilities::get_project($experiment->projectId);
         $expVal = ExperimentUtilities::get_experiment_values($experiment, $project);
         $jobDetails = ExperimentUtilities::get_job_details($experiment->experimentId);
         if (isset($jobDetails[0]->jobStatus)) {
             $expVal["jobState"] = JobState::$__names[$jobDetails[0]->jobStatus->jobState];
         } else {
             $expVal["jobState"] = "";
         }
         // User should not clone or edit a failed experiment. Only create clones of it.
         if ($expVal["experimentStatusString"] == "FAILED") {
             $expVal["editable"] = false;
         }
         $expVal["cancelable"] = false;
         if ($expVal["experimentStatusString"] == "LAUNCHED" || $expVal["experimentStatusString"] == "EXECUTING") {
             $expVal["cancelable"] = true;
         }
         $data = array("expId" => Input::get("expId"), "experiment" => $experiment, "project" => $project, "jobDetails" => $jobDetails, "expVal" => $expVal);
         if (Request::ajax()) {
             //admin wants to see an experiment summary
             if (Input::has("dashboard")) {
                 $data["dashboard"] = true;
                 return View::make("partials/experiment-info", $data);
             } else {
                 return json_encode($experiment);
             }
         } else {
             return View::make("experiment/summary", $data);
         }
     } else {
         if (Input::has("dashboard")) {
             return View::make("partials/experiment-info", array("invalidExperimentId" => 1));
         } else {
             return View::make("experiment/summary", array("invalidExperimentId" => 1));
         }
     }
 }