public function executeManageLabAnalytes(\Library\HttpRequest $rq) { $sessionProject = \Applications\PMTool\Helpers\ProjectHelper::GetCurrentSessionProject($this->app()->user()); \Applications\PMTool\Helpers\AnalyteHelper::StoreListsData($this); $pm = \Applications\PMTool\Helpers\PmHelper::GetCurrentSessionPm($this->user()); $sessionTask = \Applications\PMTool\Helpers\TaskHelper::GetCurrentSessionTask($this->user()); //All analytes for this PM, we would be assigning task specific analytes from list $pm_lab_analytes = $pm[\Library\Enums\SessionKeys::PmLabAnalytes]; //Task tab status $tab_status_arr = \Applications\PMTool\Helpers\TaskHelper::TabStatusFor($sessionTask); $this->page->addVar(\Applications\PMTool\Resources\Enums\ViewVariables\Task::task_tab_status_keys, $tab_status_arr); //Task tab status //Analyte Matrix tab status $showLabMatrixTabs = \Applications\PMTool\Helpers\TaskAnalyteMatrixHelper::DoesAnalytesAndLocationsExistsFor($sessionTask, $this, 'Lab'); $showFieldMatrixTabs = \Applications\PMTool\Helpers\TaskAnalyteMatrixHelper::DoesAnalytesAndLocationsExistsFor($sessionTask, $this, 'Field'); $this->page->addVar(\Applications\PMTool\Resources\Enums\ViewVariables\Task::task_show_lab_matrix, $showLabMatrixTabs); $this->page->addVar(\Applications\PMTool\Resources\Enums\ViewVariables\Task::task_show_field_matrix, $showFieldMatrixTabs); //Analyte Matrix tab status \Applications\PMTool\Helpers\TaskHelper::SetActiveTab($this->user(), \Applications\PMTool\Resources\Enums\TaskTabKeys::LabAnalytesTab); $this->page->addVar(\Applications\PMTool\Resources\Enums\ViewVariablesKeys::currentProject, $sessionProject[\Library\Enums\SessionKeys::ProjectObject]); $this->page->addVar(\Applications\PMTool\Resources\Enums\ViewVariablesKeys::currentTask, $sessionTask[\Library\Enums\SessionKeys::TaskObj]); $lab_object_properties = \Applications\PMTool\Helpers\CommonHelper::SetDynamicPropertyNamesForDualList("lab_analyte", \Applications\PMTool\Helpers\AnalyteHelper::GetListPropertiesForLabAnalyte()); //Fetch task specific field analytes $task_lab_analytes = \Applications\PMTool\Helpers\AnalyteHelper::GetAndStoreTaskLabAnalytes($this, $sessionTask); $pm_lab_analytes = \Applications\PMTool\Helpers\CommonHelper::FilterObjectsToExcludeRelatedObject($pm_lab_analytes, $task_lab_analytes, "lab_analyte_id"); $data_lab_analyte = array(\Applications\PMTool\Resources\Enums\ViewVariablesKeys::module => "labanalyte", \Applications\PMTool\Resources\Enums\ViewVariablesKeys::objects_list_right => $task_lab_analytes, \Applications\PMTool\Resources\Enums\ViewVariablesKeys::objects_list_left => $pm_lab_analytes, \Applications\PMTool\Resources\Enums\ViewVariablesKeys::properties_right => $lab_object_properties, \Applications\PMTool\Resources\Enums\ViewVariablesKeys::properties_left => $lab_object_properties); $this->page->addVar(\Applications\PMTool\Resources\Enums\ViewVariables\Analyte::data_lab_analyte, $data_lab_analyte); //tab status $this->page->addVar(\Applications\PMTool\Resources\Enums\ViewVariablesKeys::tabStatus, \Applications\PMTool\Helpers\TaskHelper::GetTabsStatus($this->user())); $this->page->addVar(\Applications\PMTool\Resources\Enums\ViewVariablesKeys::form_modules, $this->app()->router()->selectedRoute()->phpModules()); }
public function executeListAll(\Library\HttpRequest $rq) { $tabsStatus = \Applications\PMTool\Helpers\CommonHelper::GetTabsStatus($this->user(), \Library\Enums\SessionKeys::TabActiveAnalyte); if ($tabsStatus === NULL) { \Applications\PMTool\Helpers\AnalyteHelper::AddTabsStatus($this->user()); $tabsStatus = \Applications\PMTool\Helpers\CommonHelper::GetTabsStatus($this->user(), \Library\Enums\SessionKeys::TabActiveAnalyte); } $this->page()->addVar(\Applications\PMTool\Resources\Enums\ViewVariablesKeys::tabStatus, $tabsStatus); $sessionProject = \Applications\PMTool\Helpers\ProjectHelper::GetCurrentSessionProject($this->app()->user()); //Check if a project needs to be selected in order to display this page if (!$sessionProject) { $this->Redirect(\Library\Enums\ResourceKeys\UrlKeys::ProjectsSelectProject . "?onSuccess=" . \Library\Enums\ResourceKeys\UrlKeys::AnalyteListAll); } $this->page->addVar(\Applications\PMTool\Resources\Enums\ViewVariablesKeys::currentProject, $sessionProject[\Library\Enums\SessionKeys::ProjectObject]); //Fetch tooltip data from xml and pass to view as an array $tooltip_array = \Applications\PMTool\Helpers\PopUpHelper::getTooltipMsgForAttribute('{"targetcontroller":"analyte", "targetaction": "list", "targetattr": ["active-fieldanalyte-header","inactive-fieldanalyte-header","active-labanalyte-header","inactive-labanalyte-header"]}', $this->app->name()); $this->page->addVar(\Applications\PMTool\Resources\Enums\ViewVariables\Popup::tooltip_message, $tooltip_array); //Get confirm msg for analyte deletion from showForm screen $confirm_msg = \Applications\PMTool\Helpers\PopUpHelper::getConfirmBoxMsg('{"targetcontroller":"analyte", "targetaction": "list", "operation": ["deleteField", "deleteLab", "noAnalyteForProject","noAnalyteAvailable", "laExists"]}', $this->app->name()); $this->page->addVar(\Applications\PMTool\Resources\Enums\ViewVariables\Popup::confirm_message, $confirm_msg); $pm = \Applications\PMTool\Helpers\PmHelper::GetCurrentSessionPm($this->user()); if (!isset($pm[\Library\Enums\SessionKeys::PmFieldAnalytes]) && !isset($pm[\Library\Enums\SessionKeys::PmLabAnalytes]) && count($pm[\Library\Enums\SessionKeys::PmFieldAnalytes]) > 0 && count($pm[\Library\Enums\SessionKeys::PmLabAnalytes]) > 0) { \Applications\PMTool\Helpers\AnalyteHelper::StoreListsData($this); } $pm = \Applications\PMTool\Helpers\PmHelper::GetCurrentSessionPm($this->user()); //Fetch prompt box data from xml and pass to view as an array $prompt_msg = \Applications\PMTool\Helpers\PopUpHelper::getPromptBoxMsg('{"targetcontroller":"analyte", "targetaction": "listAll", "operation": ["edit"]}', $this->app->name()); $this->page->addVar(\Applications\PMTool\Resources\Enums\ViewVariables\Popup::prompt_message, $prompt_msg); //variables for the field analyte module $field_object_properties = \Applications\PMTool\Helpers\CommonHelper::SetDynamicPropertyNamesForDualList("field_analyte", \Applications\PMTool\Helpers\AnalyteHelper::GetListPropertiesForFieldAnalyte()); $field_analytes = $pm[\Library\Enums\SessionKeys::PmFieldAnalytes]; $project_field_analytes = \Applications\PMTool\Helpers\AnalyteHelper::FilterAnalytesByProjectAnalytesList($this); $field_analytes = \Applications\PMTool\Helpers\CommonHelper::FilterObjectsToExcludeRelatedObject($field_analytes, $project_field_analytes, "field_analyte_id"); $data_field_analyte = array(\Applications\PMTool\Resources\Enums\ViewVariablesKeys::module => "fieldanalyte", \Applications\PMTool\Resources\Enums\ViewVariablesKeys::objects_list_right => $field_analytes, \Applications\PMTool\Resources\Enums\ViewVariablesKeys::objects_list_left => $project_field_analytes, \Applications\PMTool\Resources\Enums\ViewVariablesKeys::properties_right => $field_object_properties, \Applications\PMTool\Resources\Enums\ViewVariablesKeys::properties_left => $field_object_properties); $this->page->addVar(\Applications\PMTool\Resources\Enums\ViewVariables\Analyte::data_field_analyte, $data_field_analyte); //variable for the lab analyte module $lab_object_properties = \Applications\PMTool\Helpers\CommonHelper::SetPropertyNamesForDualList("lab_analyte"); $lab_analytes = $pm[\Library\Enums\SessionKeys::PmLabAnalytes]; $project_lab_analytes = \Applications\PMTool\Helpers\AnalyteHelper::FilterAnalytesByProjectAnalytesList($this, FALSE); $lab_analytes = \Applications\PMTool\Helpers\CommonHelper::FilterObjectsToExcludeRelatedObject($lab_analytes, $project_lab_analytes, "lab_analyte_id"); $data_lab_analyte = array(\Applications\PMTool\Resources\Enums\ViewVariablesKeys::module => "labanalyte", \Applications\PMTool\Resources\Enums\ViewVariablesKeys::objects_list_right => $lab_analytes, \Applications\PMTool\Resources\Enums\ViewVariablesKeys::objects_list_left => $project_lab_analytes, \Applications\PMTool\Resources\Enums\ViewVariablesKeys::properties_right => $lab_object_properties, \Applications\PMTool\Resources\Enums\ViewVariablesKeys::properties_left => $lab_object_properties); $this->page->addVar(\Applications\PMTool\Resources\Enums\ViewVariables\Analyte::data_lab_analyte, $data_lab_analyte); $this->page->addVar(\Applications\PMTool\Resources\Enums\ViewVariablesKeys::form_modules, $this->app()->router()->selectedRoute()->phpModules()); }