public static function apply_changes_to_experiment($experiment, $input) { $experiment->experimentName = $input['experiment-name']; $experiment->description = rtrim($input['experiment-description']); $experiment->projectId = $input['project']; // $experiment->applicationId = $_POST['application']; // $experiment->executionId = $_POST['application']; $userConfigDataUpdated = $experiment->userConfigurationData; $schedulingUpdated = $userConfigDataUpdated->computationalResourceScheduling; $schedulingUpdated->resourceHostId = $input['compute-resource']; $schedulingUpdated->nodeCount = $input['node-count']; $schedulingUpdated->queueName = $_POST['queue-name']; $schedulingUpdated->totalCPUCount = $input['cpu-count']; //$schedulingUpdated->numberOfThreads = $input['threads']; $schedulingUpdated->wallTimeLimit = $input['wall-time']; //$schedulingUpdated->totalPhysicalMemory = $input['memory']; /* switch ($_POST['compute-resource']) { case 'trestles.sdsc.edu': $schedulingUpdated->ComputationalProjectAccount = 'sds128'; break; case 'stampede.tacc.xsede.org': case 'lonestar.tacc.utexas.edu': $schedulingUpdated->ComputationalProjectAccount = 'TG-STA110014S'; break; default: $schedulingUpdated->ComputationalProjectAccount = 'admin'; } */ $userConfigDataUpdated->computationalResourceScheduling = $schedulingUpdated; $userConfigDataUpdated->airavataAutoSchedule = isset($_POST['enable-auto-scheduling']) ? true : false; if (isset($input["userDN"])) { $userConfigDataUpdated->generateCert = 1; $userConfigDataUpdated->userDN = $input["userDN"]; } $experiment->userConfigurationData = $userConfigDataUpdated; $applicationInputs = AppUtilities::get_application_inputs($experiment->executionId); $experimentInputs = $experiment->experimentInputs; // get current inputs //var_dump($experimentInputs); $experimentInputs = ExperimentUtilities::process_inputs($applicationInputs, $experimentInputs); // get new inputs //var_dump($experimentInputs); if ($experimentInputs) { $experiment->experimentInputs = $experimentInputs; //var_dump($experiment); return $experiment; } }