/** * * */ function initGuiBean(&$argsObj) { $obj = new stdClass(); $obj->action = ''; $obj->attachments = null; $obj->cleanUpWebEditor = false; $obj->containerID = ''; $obj->direct_link = null; $obj->execution_types = $this->execution_types; $obj->grants = $this->grants; $obj->has_been_executed = false; $obj->initWebEditorFromTemplate = false; $obj->main_descr = ''; $obj->name = ''; $obj->path_info = null; $obj->refreshTree = 0; $obj->sqlResult = ''; $obj->step_id = -1; $obj->step_set = ''; $obj->steps = ''; $dummy = testcase::getLayout(); $obj->tableColspan = $dummy->tableToDisplayTestCaseSteps->colspan; $obj->tcase_id = property_exists($argsObj, 'tcase_id') ? $argsObj->tcase_id : -1; $obj->viewerArgs = null; $p2check = 'goback_url'; $obj->{$p2check} = ''; if (property_exists($argsObj, $p2check)) { $obj->{$p2check} = !is_null($argsObj->{$p2check}) ? $argsObj->{$p2check} : ''; } $p2check = 'show_mode'; if (property_exists($argsObj, $p2check)) { $obj->{$p2check} = !is_null($argsObj->{$p2check}) ? $argsObj->{$p2check} : 'show'; } // need to check where is used $obj->loadOnCancelURL = "archiveData.php?edit=testcase&show_mode={$obj->show_mode}&id=%s&version_id=%s"; return $obj; }
/** * * */ function processTestCase(&$dbHandler, $tplEngine, $args, &$gui, $grants, $cfg) { $get_path_info = false; $item_mgr = new testcase($dbHandler); // has sense only when we work on test case $dummy = testcase::getLayout(); $gui->tableColspan = $dummy->tableToDisplayTestCaseSteps->colspan; $gui->viewerArgs['refresh_tree'] = 'no'; $gui->path_info = null; $gui->platforms = null; $gui->loadOnCancelURL = ''; $gui->attachments = null; $gui->direct_link = null; $gui->steps_results_layout = $cfg['spec']->steps_results_layout; $gui->bodyOnUnload = "storeWindowSize('TCEditPopup')"; if ($args->caller == 'navBar' && !is_null($args->targetTestCase) && strcmp($args->targetTestCase, $args->tcasePrefix) != 0) { $args->id = $item_mgr->getInternalID($args->targetTestCase); $args->tcversion_id = testcase::ALL_VERSIONS; // I've added $args->caller, in order to make clear the logic, because some actions need to be done ONLY // when we have arrived to this script because user has requested a search from navBar. // Before we have trusted the existence of certain variables (do not think this old kind of approach is good). // // why strcmp($args->targetTestCase,$args->tcasePrefix) ? // because in navBar targetTestCase is initialized with testcase prefix to provide some help to user // then if user request search without adding nothing, we will not be able to search. // From navBar we want to allow ONLY to search for ONE and ONLY ONE test case ID. $gui->viewerArgs['show_title'] = 'no'; $gui->viewerArgs['display_testproject'] = 1; $gui->viewerArgs['display_parent_testsuite'] = 1; if (!($get_path_info = $args->id > 0)) { $gui->warning_msg = $args->id == 0 ? lang_get('testcase_does_not_exists') : lang_get('prefix_does_not_exists'); } } // because we can arrive here from a User Search Request, if args->id == 0 => nothing found if ($args->id > 0) { if ($get_path_info || $args->show_path) { $gui->path_info = $item_mgr->tree_manager->get_full_path_verbose($args->id); } $platform_mgr = new tlPlatform($dbHandler, $args->tproject_id); $gui->platforms = $platform_mgr->getAllAsMap(); $gui->attachments[$args->id] = getAttachmentInfosFrom($item_mgr, $args->id); $gui->direct_link = $item_mgr->buildDirectWebLink($_SESSION['basehref'], $args->id); $gui->id = $args->id; $identity = new stdClass(); $identity->id = $args->id; $identity->tproject_id = $args->tproject_id; $identity->version_id = $args->tcversion_id; try { $item_mgr->show($tplEngine, $gui, $identity, $grants); } catch (Exception $e) { echo $e->getMessage(); } exit; } else { $templateCfg = templateConfiguration(); // need to initialize search fields $xbm = $item_mgr->getTcSearchSkeleton(); $xbm->warning_msg = lang_get('no_records_found'); $xbm->pageTitle = lang_get('caption_search_form'); $xbm->tableSet = null; $xbm->doSearch = false; $xbm->tproject_id = $args->tproject_id; $tplEngine->assign('gui', $xbm); $tplEngine->display($templateCfg->template_dir . 'tcSearchResults.tpl'); } }