version = 2; $layout->blocks["top"] = array(); $layout->containers["search"] = array(); $layout->containers["search"][] = array("name"=>"srchheader", "block"=>"", "substyle"=>2 ); $layout->containers["search"][] = array("name"=>"srchconditions", "block"=>"conditions_block", "substyle"=>1 ); $layout->containers["search"][] = array("name"=>"wrapper", "block"=>"", "substyle"=>1 , "container"=>"fields" ); $layout->containers["fields"] = array(); $layout->containers["fields"][] = array("name"=>"srchfields", "block"=>"", "substyle"=>1 ); $layout->containers["fields"][] = array("name"=>"srchbuttons", "block"=>"", "substyle"=>2 ); $layout->skins["fields"] = "fields"; $layout->skins["search"] = "1"; $layout->blocks["top"][] = "search"; $page_layouts["opening_users_search"] = $layout; $layout->skinsparams = array(); $layout->skinsparams["empty"] = array("button"=>"button2"); $layout->skinsparams["menu"] = array("button"=>"button1"); $layout->skinsparams["hmenu"] = array("button"=>"button1"); $layout->skinsparams["undermenu"] = array("button"=>"button1"); $layout->skinsparams["fields"] = array("button"=>"button1"); $layout->skinsparams["form"] = array("button"=>"button1"); $layout->skinsparams["1"] = array("button"=>"button1"); $layout->skinsparams["2"] = array("button"=>"button1"); $layout->skinsparams["3"] = array("button"=>"button1"); include('include/xtempl.php'); include('classes/runnerpage.php'); $xt = new Xtempl(); // id that used to add to controls names if(postvalue("id")) $id = postvalue("id"); else $id = 1; // for usual page show proccess $mode = SEARCH_SIMPLE; $templatefile = GetTemplateName("opening_users", "search"); // for ajax query, used when page buffers new control if(postvalue("mode")=="inlineLoadCtrl"){ $mode = SEARCH_LOAD_CONTROL; } $params = array(); $params["id"] = $id; $params["mode"] = $mode; $params['xt'] = &$xt; $params['templatefile'] = $templatefile; $params['shortTableName'] = 'opening_users'; $params['origTName'] = $strOriginalTableName; $params['sessionPrefix'] = $sessionPrefix; $params['tName'] = $strTableName; $params['locale_info'] = $locale_info; $params['pageType'] = PAGE_SEARCH; $pageObject = new RunnerPage($params); $pageObject->init(); // create reusable searchControl builder instance $searchControllerId = (postvalue('searchControllerId') ? postvalue('searchControllerId') : $pageObject->id); // Before Process event if($eventObj->exists("BeforeProcessSearch")) $eventObj->BeforeProcessSearch($conn, $pageObject); // add constants and files for simple view if ($mode==SEARCH_SIMPLE) { $searchControlBuilder = new AdvancedSearchControl($searchControllerId, $strTableName, $pageObject->searchClauseObj, $pageObject); // add button events if exist $pageObject->addButtonHandlers(); $includes .= GetBaseScriptsForPage(false); // if not simple, this div already exist on page if (!isMobile()) $includes.="
"; // search panel radio button assign $searchRadio = $searchControlBuilder->getSearchRadio(); $xt->assign_section("all_checkbox_label", $searchRadio['all_checkbox_label'][0], $searchRadio['all_checkbox_label'][1]); $xt->assign_section("any_checkbox_label", $searchRadio['any_checkbox_label'][0], $searchRadio['any_checkbox_label'][1]); $xt->assignbyref("all_checkbox",$searchRadio['all_checkbox']); $xt->assignbyref("any_checkbox",$searchRadio['any_checkbox']); // search fields data if($pageObject->pSet->getLookupTable("ID")) $pageObject->settingsMap["globalSettings"]['shortTNames'][$pageObject->pSet->getLookupTable("ID")] = GetTableURL($pageObject->pSet->getLookupTable("ID")); $pageObject->fillFieldToolTips("ID"); $srchFields = $pageObject->searchClauseObj->getSearchCtrlParams("ID"); $firstFieldParams = array(); if (count($srchFields)) { $firstFieldParams = $srchFields[0]; } else { $firstFieldParams['fName'] = "ID"; $firstFieldParams['eType'] = ''; $firstFieldParams['value1'] = $pageObject->pSet->getDefaultValue( "ID" ); $firstFieldParams['opt'] = ''; $firstFieldParams['value2'] = ''; $firstFieldParams['not'] = false; } // create control $ctrlBlockArr = $searchControlBuilder->buildSearchCtrlBlockArr($id, $firstFieldParams['fName'], 0, $firstFieldParams['opt'], $firstFieldParams['not'], false, $firstFieldParams['value1'], $firstFieldParams['value2']); if(isEnableSection508()) $xt->assign_section("ID_label",""); else $xt->assign("ID_label", true); $xt->assign("ID_fieldblock", true); $xt->assignbyref("ID_editcontrol", $ctrlBlockArr['searchcontrol']); $xt->assign("ID_notbox", $ctrlBlockArr['notbox']); // create second control, if need it $xt->assignbyref("ID_editcontrol1", $ctrlBlockArr['searchcontrol1']); // create search type select $xt->assign("searchtype_ID", $ctrlBlockArr['searchtype']); $isFieldNeedSecCtrl = $searchControlBuilder->isNeedSecondCtrl("ID"); $ctrlInd = 0; if ($isFieldNeedSecCtrl) { $pageObject->controlsMap["search"]["searchBlocks"][] = array('fName'=>"ID", 'recId'=>$id, 'ctrlsMap'=>array(0=>$ctrlInd, 1=>($ctrlInd+1))); $ctrlInd+=2; } else { $pageObject->controlsMap["search"]["searchBlocks"][] = array('fName'=>"ID", 'recId'=>$id, 'ctrlsMap'=>array(0=>$ctrlInd)); $ctrlInd++; } // search fields data if($pageObject->pSet->getLookupTable("username")) $pageObject->settingsMap["globalSettings"]['shortTNames'][$pageObject->pSet->getLookupTable("username")] = GetTableURL($pageObject->pSet->getLookupTable("username")); $pageObject->fillFieldToolTips("username"); $srchFields = $pageObject->searchClauseObj->getSearchCtrlParams("username"); $firstFieldParams = array(); if (count($srchFields)) { $firstFieldParams = $srchFields[0]; } else { $firstFieldParams['fName'] = "username"; $firstFieldParams['eType'] = ''; $firstFieldParams['value1'] = $pageObject->pSet->getDefaultValue( "username" ); $firstFieldParams['opt'] = ''; $firstFieldParams['value2'] = ''; $firstFieldParams['not'] = false; } // create control $ctrlBlockArr = $searchControlBuilder->buildSearchCtrlBlockArr($id, $firstFieldParams['fName'], 0, $firstFieldParams['opt'], $firstFieldParams['not'], false, $firstFieldParams['value1'], $firstFieldParams['value2']); if(isEnableSection508()) $xt->assign_section("username_label",""); else $xt->assign("username_label", true); $xt->assign("username_fieldblock", true); $xt->assignbyref("username_editcontrol", $ctrlBlockArr['searchcontrol']); $xt->assign("username_notbox", $ctrlBlockArr['notbox']); // create second control, if need it $xt->assignbyref("username_editcontrol1", $ctrlBlockArr['searchcontrol1']); // create search type select $xt->assign("searchtype_username", $ctrlBlockArr['searchtype']); $isFieldNeedSecCtrl = $searchControlBuilder->isNeedSecondCtrl("username"); $ctrlInd = 0; if ($isFieldNeedSecCtrl) { $pageObject->controlsMap["search"]["searchBlocks"][] = array('fName'=>"username", 'recId'=>$id, 'ctrlsMap'=>array(0=>$ctrlInd, 1=>($ctrlInd+1))); $ctrlInd+=2; } else { $pageObject->controlsMap["search"]["searchBlocks"][] = array('fName'=>"username", 'recId'=>$id, 'ctrlsMap'=>array(0=>$ctrlInd)); $ctrlInd++; } // search fields data if($pageObject->pSet->getLookupTable("password")) $pageObject->settingsMap["globalSettings"]['shortTNames'][$pageObject->pSet->getLookupTable("password")] = GetTableURL($pageObject->pSet->getLookupTable("password")); $pageObject->fillFieldToolTips("password"); $srchFields = $pageObject->searchClauseObj->getSearchCtrlParams("password"); $firstFieldParams = array(); if (count($srchFields)) { $firstFieldParams = $srchFields[0]; } else { $firstFieldParams['fName'] = "password"; $firstFieldParams['eType'] = ''; $firstFieldParams['value1'] = $pageObject->pSet->getDefaultValue( "password" ); $firstFieldParams['opt'] = ''; $firstFieldParams['value2'] = ''; $firstFieldParams['not'] = false; } // create control $ctrlBlockArr = $searchControlBuilder->buildSearchCtrlBlockArr($id, $firstFieldParams['fName'], 0, $firstFieldParams['opt'], $firstFieldParams['not'], false, $firstFieldParams['value1'], $firstFieldParams['value2']); if(isEnableSection508()) $xt->assign_section("password_label",""); else $xt->assign("password_label", true); $xt->assign("password_fieldblock", true); $xt->assignbyref("password_editcontrol", $ctrlBlockArr['searchcontrol']); $xt->assign("password_notbox", $ctrlBlockArr['notbox']); // create second control, if need it $xt->assignbyref("password_editcontrol1", $ctrlBlockArr['searchcontrol1']); // create search type select $xt->assign("searchtype_password", $ctrlBlockArr['searchtype']); $isFieldNeedSecCtrl = $searchControlBuilder->isNeedSecondCtrl("password"); $ctrlInd = 0; if ($isFieldNeedSecCtrl) { $pageObject->controlsMap["search"]["searchBlocks"][] = array('fName'=>"password", 'recId'=>$id, 'ctrlsMap'=>array(0=>$ctrlInd, 1=>($ctrlInd+1))); $ctrlInd+=2; } else { $pageObject->controlsMap["search"]["searchBlocks"][] = array('fName'=>"password", 'recId'=>$id, 'ctrlsMap'=>array(0=>$ctrlInd)); $ctrlInd++; } // search fields data if($pageObject->pSet->getLookupTable("email")) $pageObject->settingsMap["globalSettings"]['shortTNames'][$pageObject->pSet->getLookupTable("email")] = GetTableURL($pageObject->pSet->getLookupTable("email")); $pageObject->fillFieldToolTips("email"); $srchFields = $pageObject->searchClauseObj->getSearchCtrlParams("email"); $firstFieldParams = array(); if (count($srchFields)) { $firstFieldParams = $srchFields[0]; } else { $firstFieldParams['fName'] = "email"; $firstFieldParams['eType'] = ''; $firstFieldParams['value1'] = $pageObject->pSet->getDefaultValue( "email" ); $firstFieldParams['opt'] = ''; $firstFieldParams['value2'] = ''; $firstFieldParams['not'] = false; } // create control $ctrlBlockArr = $searchControlBuilder->buildSearchCtrlBlockArr($id, $firstFieldParams['fName'], 0, $firstFieldParams['opt'], $firstFieldParams['not'], false, $firstFieldParams['value1'], $firstFieldParams['value2']); if(isEnableSection508()) $xt->assign_section("email_label",""); else $xt->assign("email_label", true); $xt->assign("email_fieldblock", true); $xt->assignbyref("email_editcontrol", $ctrlBlockArr['searchcontrol']); $xt->assign("email_notbox", $ctrlBlockArr['notbox']); // create second control, if need it $xt->assignbyref("email_editcontrol1", $ctrlBlockArr['searchcontrol1']); // create search type select $xt->assign("searchtype_email", $ctrlBlockArr['searchtype']); $isFieldNeedSecCtrl = $searchControlBuilder->isNeedSecondCtrl("email"); $ctrlInd = 0; if ($isFieldNeedSecCtrl) { $pageObject->controlsMap["search"]["searchBlocks"][] = array('fName'=>"email", 'recId'=>$id, 'ctrlsMap'=>array(0=>$ctrlInd, 1=>($ctrlInd+1))); $ctrlInd+=2; } else { $pageObject->controlsMap["search"]["searchBlocks"][] = array('fName'=>"email", 'recId'=>$id, 'ctrlsMap'=>array(0=>$ctrlInd)); $ctrlInd++; } // search fields data if($pageObject->pSet->getLookupTable("fullname")) $pageObject->settingsMap["globalSettings"]['shortTNames'][$pageObject->pSet->getLookupTable("fullname")] = GetTableURL($pageObject->pSet->getLookupTable("fullname")); $pageObject->fillFieldToolTips("fullname"); $srchFields = $pageObject->searchClauseObj->getSearchCtrlParams("fullname"); $firstFieldParams = array(); if (count($srchFields)) { $firstFieldParams = $srchFields[0]; } else { $firstFieldParams['fName'] = "fullname"; $firstFieldParams['eType'] = ''; $firstFieldParams['value1'] = $pageObject->pSet->getDefaultValue( "fullname" ); $firstFieldParams['opt'] = ''; $firstFieldParams['value2'] = ''; $firstFieldParams['not'] = false; } // create control $ctrlBlockArr = $searchControlBuilder->buildSearchCtrlBlockArr($id, $firstFieldParams['fName'], 0, $firstFieldParams['opt'], $firstFieldParams['not'], false, $firstFieldParams['value1'], $firstFieldParams['value2']); if(isEnableSection508()) $xt->assign_section("fullname_label",""); else $xt->assign("fullname_label", true); $xt->assign("fullname_fieldblock", true); $xt->assignbyref("fullname_editcontrol", $ctrlBlockArr['searchcontrol']); $xt->assign("fullname_notbox", $ctrlBlockArr['notbox']); // create second control, if need it $xt->assignbyref("fullname_editcontrol1", $ctrlBlockArr['searchcontrol1']); // create search type select $xt->assign("searchtype_fullname", $ctrlBlockArr['searchtype']); $isFieldNeedSecCtrl = $searchControlBuilder->isNeedSecondCtrl("fullname"); $ctrlInd = 0; if ($isFieldNeedSecCtrl) { $pageObject->controlsMap["search"]["searchBlocks"][] = array('fName'=>"fullname", 'recId'=>$id, 'ctrlsMap'=>array(0=>$ctrlInd, 1=>($ctrlInd+1))); $ctrlInd+=2; } else { $pageObject->controlsMap["search"]["searchBlocks"][] = array('fName'=>"fullname", 'recId'=>$id, 'ctrlsMap'=>array(0=>$ctrlInd)); $ctrlInd++; } // search fields data if($pageObject->pSet->getLookupTable("groupid")) $pageObject->settingsMap["globalSettings"]['shortTNames'][$pageObject->pSet->getLookupTable("groupid")] = GetTableURL($pageObject->pSet->getLookupTable("groupid")); $pageObject->fillFieldToolTips("groupid"); $srchFields = $pageObject->searchClauseObj->getSearchCtrlParams("groupid"); $firstFieldParams = array(); if (count($srchFields)) { $firstFieldParams = $srchFields[0]; } else { $firstFieldParams['fName'] = "groupid"; $firstFieldParams['eType'] = ''; $firstFieldParams['value1'] = $pageObject->pSet->getDefaultValue( "groupid" ); $firstFieldParams['opt'] = ''; $firstFieldParams['value2'] = ''; $firstFieldParams['not'] = false; } // create control $ctrlBlockArr = $searchControlBuilder->buildSearchCtrlBlockArr($id, $firstFieldParams['fName'], 0, $firstFieldParams['opt'], $firstFieldParams['not'], false, $firstFieldParams['value1'], $firstFieldParams['value2']); if(isEnableSection508()) $xt->assign_section("groupid_label",""); else $xt->assign("groupid_label", true); $xt->assign("groupid_fieldblock", true); $xt->assignbyref("groupid_editcontrol", $ctrlBlockArr['searchcontrol']); $xt->assign("groupid_notbox", $ctrlBlockArr['notbox']); // create second control, if need it $xt->assignbyref("groupid_editcontrol1", $ctrlBlockArr['searchcontrol1']); // create search type select $xt->assign("searchtype_groupid", $ctrlBlockArr['searchtype']); $isFieldNeedSecCtrl = $searchControlBuilder->isNeedSecondCtrl("groupid"); $ctrlInd = 0; if ($isFieldNeedSecCtrl) { $pageObject->controlsMap["search"]["searchBlocks"][] = array('fName'=>"groupid", 'recId'=>$id, 'ctrlsMap'=>array(0=>$ctrlInd, 1=>($ctrlInd+1))); $ctrlInd+=2; } else { $pageObject->controlsMap["search"]["searchBlocks"][] = array('fName'=>"groupid", 'recId'=>$id, 'ctrlsMap'=>array(0=>$ctrlInd)); $ctrlInd++; } // search fields data if($pageObject->pSet->getLookupTable("active")) $pageObject->settingsMap["globalSettings"]['shortTNames'][$pageObject->pSet->getLookupTable("active")] = GetTableURL($pageObject->pSet->getLookupTable("active")); $pageObject->fillFieldToolTips("active"); $srchFields = $pageObject->searchClauseObj->getSearchCtrlParams("active"); $firstFieldParams = array(); if (count($srchFields)) { $firstFieldParams = $srchFields[0]; } else { $firstFieldParams['fName'] = "active"; $firstFieldParams['eType'] = ''; $firstFieldParams['value1'] = $pageObject->pSet->getDefaultValue( "active" ); $firstFieldParams['opt'] = ''; $firstFieldParams['value2'] = ''; $firstFieldParams['not'] = false; } // create control $ctrlBlockArr = $searchControlBuilder->buildSearchCtrlBlockArr($id, $firstFieldParams['fName'], 0, $firstFieldParams['opt'], $firstFieldParams['not'], false, $firstFieldParams['value1'], $firstFieldParams['value2']); if(isEnableSection508()) $xt->assign_section("active_label",""); else $xt->assign("active_label", true); $xt->assign("active_fieldblock", true); $xt->assignbyref("active_editcontrol", $ctrlBlockArr['searchcontrol']); $xt->assign("active_notbox", $ctrlBlockArr['notbox']); // create second control, if need it $xt->assignbyref("active_editcontrol1", $ctrlBlockArr['searchcontrol1']); // create search type select $xt->assign("searchtype_active", $ctrlBlockArr['searchtype']); $isFieldNeedSecCtrl = $searchControlBuilder->isNeedSecondCtrl("active"); $ctrlInd = 0; if ($isFieldNeedSecCtrl) { $pageObject->controlsMap["search"]["searchBlocks"][] = array('fName'=>"active", 'recId'=>$id, 'ctrlsMap'=>array(0=>$ctrlInd, 1=>($ctrlInd+1))); $ctrlInd+=2; } else { $pageObject->controlsMap["search"]["searchBlocks"][] = array('fName'=>"active", 'recId'=>$id, 'ctrlsMap'=>array(0=>$ctrlInd)); $ctrlInd++; } //-------------------------------------------------------- $pageObject->body["begin"] .= $includes; $pageObject->addCommonJs(); $xt->assignbyref("body",$pageObject->body); $xt->assign("contents_block", true); $xt->assign("conditions_block",true); $xt->assign("search_button",true); $xt->assign("reset_button",true); $xt->assign("back_button",true); $xt->assign("searchbutton_attrs","id=\"searchButton".$id."\""); $xt->assign("resetbutton_attrs","id=\"resetButton".$id."\""); $xt->assign("backbutton_attrs","id=\"backButton".$id."\""); // for crosse report if (postvalue('axis_x')!=''){ $xtCrosseElem = " "; $xt->assign("CrossElem",$xtCrosseElem); } // for crosse report if($eventObj->exists("BeforeShowSearch")) $eventObj->BeforeShowSearch($xt,$templatefile, $pageObject); // load controls for first page loading $pageObject->fillSetCntrlMaps(); $pageObject->body['end'] .= ''; $pageObject->body['end'] .= "\r\n"; $pageObject->body["end"] .= ""; $xt->assignbyref("body",$pageObject->body); $pageObject->display($templatefile); } else if($mode==SEARCH_LOAD_CONTROL) { $searchControlBuilder = new PanelSearchControl($searchControllerId, $strTableName, $pageObject->searchClauseObj, $pageObject); $ctrlField = postvalue('ctrlField'); $defaultValue = $pageObject->pSet->getDefaultValue( $ctrlField ); $ctrlBlockArr = $searchControlBuilder->buildSearchCtrlBlockArr($id, $ctrlField, 0, '', false, true, $defaultValue, ''); // build array for encode $resArr = array(); $resArr['control1'] = trim($xt->call_func($ctrlBlockArr['searchcontrol'])); $resArr['control2'] = trim($xt->call_func($ctrlBlockArr['searchcontrol1'])); $resArr['comboHtml'] = trim($ctrlBlockArr['searchtype']); $resArr['delButt'] = trim($ctrlBlockArr['delCtrlButt']); $resArr['delButtId'] = trim($searchControlBuilder->getDelButtonId($ctrlField, $id)); $resArr['divInd'] = trim($id); $resArr['fLabel'] = GetFieldLabel(GoodFieldName($strTableName),GoodFieldName($ctrlField)); $resArr['ctrlMap'] = $pageObject->controlsMap['controls']; if (postvalue('isNeedSettings') == 'true') { $pageObject->fillSettings(); $resArr['settings'] = $pageObject->jsSettings; } // return JSON echo printJSON($resArr); exit(); } ?>