version = 2;
$layout->blocks["top"] = array();
$layout->containers["all"] = array();
$layout->containers["all"][] = array("name"=>"wrapper",
"block"=>"", "substyle"=>1 , "container"=>"edit" );
$layout->containers["edit"] = array();
$layout->containers["edit"][] = array("name"=>"editheader",
"block"=>"editheader", "substyle"=>2 );
$layout->containers["edit"][] = array("name"=>"message",
"block"=>"message_block", "substyle"=>1 );
$layout->containers["edit"][] = array("name"=>"wrapper",
"block"=>"", "substyle"=>1 , "container"=>"fields" );
$layout->containers["fields"] = array();
$layout->containers["fields"][] = array("name"=>"editfields",
"block"=>"", "substyle"=>1 );
$layout->containers["fields"][] = array("name"=>"editbuttons",
"block"=>"editbuttons", "substyle"=>2 );
$layout->skins["fields"] = "fields";
$layout->skins["edit"] = "1";
$layout->skins["all"] = "empty";
$layout->blocks["top"][] = "all";
$page_layouts["fpi_reg_edit"] = $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");
$returnJSON = array();
if( sizeof($_POST) == 0 && postvalue('ferror') && !postvalue("editid1") )
{
$returnJSON['success'] = false;
$returnJSON['message'] = mlang_message("INLINE_ERROR");
$returnJSON['fatalError'] = true;
echo printJSON($returnJSON);
exit();
}
if( sizeof($_POST) == 0 && postvalue('ferror') && postvalue("editid1") )
{
if( postvalue('fly') )
{
echo -1;
exit();
}
else
$_SESSION["message_edit"] = "<< ".mlang_message("INLINE_ERROR")." >>";
}
/////////////////////////////////////////////////////////////
//init variables
/////////////////////////////////////////////////////////////
if(postvalue("editType")=="inline")
$inlineedit = EDIT_INLINE;
elseif(postvalue("editType")==EDIT_POPUP)
$inlineedit = EDIT_POPUP;
else
$inlineedit = EDIT_SIMPLE;
$xt = new Xtempl();
$id = postvalue("id");
if(intval($id)==0)
$id = 1;
// assign an id
$xt->assign("id", $id);
if($inlineedit == EDIT_INLINE)
$templatefile = GetTemplateName("fpi_reg", "inline_edit");
else
$templatefile = GetTemplateName("fpi_reg", "edit");
$keys = array();
$savedKeys = array();
$keysChanged = false;
$keys["UID"] = postvalue("editid1");
$savedKeys["UID"] = postvalue("editid1");
//array of params for classes
$params = array("pageType" => PAGE_EDIT);
$params["id"] = $id;
$params["keys"] = $keys;
$params['tName'] = $strTableName;
$params['xt'] = &$xt;
$params['mode'] = $inlineedit;
$params['locale_info'] = $locale_info;
$params['templatefile'] = $templatefile;
$params['pageEditLikeInline'] = $inlineedit == EDIT_INLINE;
//Get array of tabs for edit page
$params['useTabsOnEdit'] = $gSettings->useTabsOnEdit();
if($params['useTabsOnEdit'])
$params['arrEditTabs'] = $gSettings->getEditTabs();
$pageObject = new EditPage($params);
$pageObject->init();
// For ajax request
if($_REQUEST["action"] != "")
{
if($pageObject->lockingObj)
{
$arrkeys = explode("&",urldecode(refine($_REQUEST["keys"])));
foreach($arrkeys as $ind=>$val)
$arrkeys[$ind]=urldecode($val);
if($_REQUEST["action"]=="unlock")
{
$pageObject->lockingObj->UnlockRecord($strTableName,$arrkeys,$_REQUEST["sid"]);
exit();
}
else if($_REQUEST["action"]=="lockadmin" && (IsAdmin() || $_SESSION["AccessLevel"] == ACCESS_LEVEL_ADMINGROUP))
{
$pageObject->lockingObj->UnlockAdmin($strTableName,$arrkeys,$_REQUEST["startEdit"]=="yes");
if($_REQUEST["startEdit"]=="no")
echo "unlock";
else if($_REQUEST["startEdit"]=="yes")
echo "lock";
exit();
}
else if($_REQUEST["action"]=="confirm")
{
$lockMessage = "";
if(!$pageObject->lockingObj->ConfirmLock($strTableName, $arrkeys, $lockMessage))
echo $lockMessage;
exit();
}
}
else
exit();
}
$status = "";
$message = "";
$mesClass = "rnr-error";
$usermessage = "";
$strWhereClause = "";
$showValues = array();
$showRawValues = array();
$showFields = array();
$showDetailKeys = array();
$next = array();
$prev = array();
$enableCtrlsForEditing = true;
$error_happened = false;
$readevalues = false;
$IsSaved = false;
$auditObj = GetAuditObject($strTableName);
// SearchClause class stuff
$_SESSION[$strTableName.'_advsearch'] = serialize($pageObject->searchClauseObj);
//Get detail table keys
$detailKeys = $pageObject->detailKeysByM;
if($pageObject->lockingObj)
{
$system_attrs = "style='display:none;'";
$system_message = "";
}
if ($inlineedit!=EDIT_INLINE)
{
// add button events if exist
$pageObject->addButtonHandlers();
}
// Before Process event
if($eventObj->exists("BeforeProcessEdit"))
$eventObj->BeforeProcessEdit($conn, $pageObject);
//For show detail tables on master page edit
if($inlineedit!=EDIT_INLINE)
{
$dpParams = array();
if($pageObject->isShowDetailTables && !isMobile())
{
$ids = $id;
$pageObject->jsSettings['tableSettings'][$strTableName]['dpParams'] = array('tableNames'=>$dpParams['strTableNames'], 'ids'=>$dpParams['ids']);
}
}
/////////////////////////////////////////////////////////////
// process entered data, read and save
/////////////////////////////////////////////////////////////
// proccess captcha
if ($inlineedit!=EDIT_INLINE)
if($pageObject->captchaExists())
$pageObject->doCaptchaCode();
if(@$_POST["a"] == "edited")
{
$strWhereClause = whereAdd($strWhereClause,KeyWhere($keys));
$hasDenyDuplicatesFields = $pageObject->pSet->editPageHasDenyDuplicatesFields();
$oldValuesRead = false;
if($eventObj->exists("AfterEdit") || $eventObj->exists("BeforeEdit") || $auditObj || $pageObject->isTableGeoUpdatable()
|| $globalEvents->exists("IsRecordEditable", $strTableName) || $hasDenyDuplicatesFields)
{
// read old values
$rsold = db_query($gQuery->gSQLWhere($strWhereClause), $conn);
$dataold = $pageObject->cipherer->DecryptFetchedArray($rsold);
$oldValuesRead = true;
}
if($globalEvents->exists("IsRecordEditable", $strTableName))
{
if(!$globalEvents->IsRecordEditable($dataold, true, $strTableName))
return SecurityRedirect($inlineedit);
}
$evalues = array();
$efilename_values = array();
$blobfields = array();
// processing UID - begin
$condition = 1;
if($condition)
{
$control_UID = $pageObject->getControl("UID", $id);
$control_UID->readWebValue($evalues, $blobfields, $strWhereClause, $oldValuesRead, $efilename_values);
// update key value
if($control_UID->getWebValue()!==false)
$keys["UID"] = $control_UID->getWebValue();
}
// processing UID - end
// processing D8 - begin
$condition = 1;
if($condition)
{
$control_D8 = $pageObject->getControl("D8", $id);
$control_D8->readWebValue($evalues, $blobfields, $strWhereClause, $oldValuesRead, $efilename_values);
}
// processing D8 - end
// processing D9 - begin
$condition = 1;
if($condition)
{
$control_D9 = $pageObject->getControl("D9", $id);
$control_D9->readWebValue($evalues, $blobfields, $strWhereClause, $oldValuesRead, $efilename_values);
}
// processing D9 - end
// processing D10 - begin
$condition = 1;
if($condition)
{
$control_D10 = $pageObject->getControl("D10", $id);
$control_D10->readWebValue($evalues, $blobfields, $strWhereClause, $oldValuesRead, $efilename_values);
}
// processing D10 - end
// processing D11 - begin
$condition = 1;
if($condition)
{
$control_D11 = $pageObject->getControl("D11", $id);
$control_D11->readWebValue($evalues, $blobfields, $strWhereClause, $oldValuesRead, $efilename_values);
}
// processing D11 - end
// processing D12 - begin
$condition = 1;
if($condition)
{
$control_D12 = $pageObject->getControl("D12", $id);
$control_D12->readWebValue($evalues, $blobfields, $strWhereClause, $oldValuesRead, $efilename_values);
}
// processing D12 - end
// processing D13 - begin
$condition = 1;
if($condition)
{
$control_D13 = $pageObject->getControl("D13", $id);
$control_D13->readWebValue($evalues, $blobfields, $strWhereClause, $oldValuesRead, $efilename_values);
}
// processing D13 - end
// processing E9 - begin
$condition = 1;
if($condition)
{
$control_E9 = $pageObject->getControl("E9", $id);
$control_E9->readWebValue($evalues, $blobfields, $strWhereClause, $oldValuesRead, $efilename_values);
}
// processing E9 - end
foreach($keys as $i=>$key)
{
if($key != $savedKeys[$i])
{
$keysChanged = true;
break;
}
}
foreach($efilename_values as $ekey=>$value)
$evalues[$ekey] = $value;
// handle locking stuff before saving the record
if($pageObject->lockingObj)
{
$lockmessage = "";
if( $keysChanged )
{
$lockResult = $pageObject->lockingObj->ConfirmLock($strTableName,$savedKeys,$lockmessage);
if( $lockResult )
$lockResult = $pageObject->lockingObj->LockRecord($strTableName, $keys );
}
else
{
$lockResult = $pageObject->lockingObj->ConfirmLock($strTableName,$savedKeys,$lockmessage);
}
if( !$lockResult )
{
$enableCtrlsForEditing = false;
$system_attrs = "style='display:block;'";
if($inlineedit == EDIT_INLINE)
{
if(IsAdmin() || $_SESSION["AccessLevel"] == ACCESS_LEVEL_ADMINGROUP)
$lockmessage = $pageObject->lockingObj->GetLockInfo($strTableName,$savedKeys,false,$id);
$returnJSON['success'] = false;
$returnJSON['message'] = $lockmessage;
$returnJSON['enableCtrls'] = $enableCtrlsForEditing;
$returnJSON['confirmTime'] = $pageObject->lockingObj->ConfirmTime;
echo printJSON($returnJSON);
exit();
}
else
{
if(IsAdmin() || $_SESSION["AccessLevel"] == ACCESS_LEVEL_ADMINGROUP)
$system_message = $pageObject->lockingObj->GetLockInfo($strTableName,$savedKeys,true,$id);
else
$system_message = $lockmessage;
}
$status = "DECLINED";
$readevalues = true;
}
}
if($readevalues==false)
{
// do event
$retval = true;
if($eventObj->exists("BeforeEdit"))
$retval=$eventObj->BeforeEdit($evalues,$strWhereClause,$dataold,$keys,$usermessage,(bool)$inlineedit, $pageObject);
if($hasDenyDuplicatesFields && $retval)
{
$changedValues = array();
foreach($evalues as $fieldName => $value)
{
if($dataold[$fieldName] != $value)
{
$changedValues[$fieldName] = $value;
}
}
//check if some values are duplicated for the fields not allowing duplicates
$retval = !$pageObject->hasDeniedDuplicateValues($changedValues, $usermessage);
}
// if get save data and user is logged and not check permission
if ($evalues && !CheckTablePermissions($strTableName, "E") && isLogged()) {
$retval = false;
$usermessage = 'You have no permissions to complete this action.';
}
// if get save data and user is not logged or guest
if ($evalues && ((!CheckTablePermissions($strTableName, "E") && isLoggedAsGuest()) || !isLogged())) {
$retval = false;
$usermessage = mlang_message("SESSION_EXPIRED1") . "" . mlang_message("SESSION_EXPIRED3") . "" . mlang_message("SESSION_EXPIRED4");
}
if($retval && $pageObject->isCaptchaOk)
{
if($inlineedit!=EDIT_INLINE)
$_SESSION[$strTableName."_count_captcha"] = $_SESSION[$strTableName."_count_captcha"]+1;
//set updated lat-lng values for all map fileds with 'UpdateLatLng' ticked
if( $pageObject->isTableGeoUpdatable() )
$pageObject->setUpdatedLatLng( $evalues, $dataold );
$customEditResult = true;
if($eventObj->exists("CustomEdit"))
$customEditResult = $eventObj->CustomEdit($evalues, $strWhereClause, $dataold, $keys, $usermessage, (bool)$inlineedit, $pageObject);
if(!$customEditResult)
{
// custom procedure worked
$IsSaved = ($usermessage == "");
}
else
{
$IsSaved = DoUpdateRecord($strOriginalTableName,$evalues,$blobfields,$strWhereClause,$id,$pageObject, $pageObject->cipherer);
$usermessage = $message;
}
if($IsSaved)
{
// Give possibility to all edit controls to clean their data
// processing UID - begin
$condition = 1;
if($condition)
{
$control_UID->afterSuccessfulSave();
}
// processing UID - end
// processing D8 - begin
$condition = 1;
if($condition)
{
$control_D8->afterSuccessfulSave();
}
// processing D8 - end
// processing D9 - begin
$condition = 1;
if($condition)
{
$control_D9->afterSuccessfulSave();
}
// processing D9 - end
// processing D10 - begin
$condition = 1;
if($condition)
{
$control_D10->afterSuccessfulSave();
}
// processing D10 - end
// processing D11 - begin
$condition = 1;
if($condition)
{
$control_D11->afterSuccessfulSave();
}
// processing D11 - end
// processing D12 - begin
$condition = 1;
if($condition)
{
$control_D12->afterSuccessfulSave();
}
// processing D12 - end
// processing D13 - begin
$condition = 1;
if($condition)
{
$control_D13->afterSuccessfulSave();
}
// processing D13 - end
// processing E9 - begin
$condition = 1;
if($condition)
{
$control_E9->afterSuccessfulSave();
}
// processing E9 - end
// after edit event
if($pageObject->lockingObj)
{
if( $keysChanged )
{
//remove from the locking table a record with the old keys
$pageObject->lockingObj->UnlockRecord($strTableName, $savedKeys, "");
}
if( $inlineedit == EDIT_INLINE || $inlineedit == EDIT_POPUP && !$pageObject->pSet->useMoveNext() )
{
$pageObject->lockingObj->UnlockRecord($strTableName, $keys , "");
}
}
if($auditObj || $eventObj->exists("AfterEdit"))
{
foreach($dataold as $idx=>$val)
{
if(!array_key_exists($idx,$evalues))
$evalues[$idx] = $val;
}
}
if($auditObj)
$auditObj->LogEdit($strTableName,$evalues,$dataold,$keys);
if($eventObj->exists("AfterEdit"))
$eventObj->AfterEdit($evalues,KeyWhere($keys),$dataold,$keys,(bool)$inlineedit, $pageObject);
$mesClass = "";
}
else
{
$message = $usermessage;
$readevalues = true;
$status = "DECLINED";
}
}
else
{
$message = $usermessage;
$readevalues = true;
$status = "DECLINED";
}
}
// saving was not successful
if($readevalues)
{
if($pageObject->lockingObj && $keysChanged)
{
// free the record with new key values locked before saving
$pageObject->lockingObj->UnlockRecord($strTableName, $keys , "");
}
$keys = $savedKeys;
}
}
if($message)
$message = "
".$message."
";
// redirect after saving to avoid POSTDATA resending
if ($IsSaved && no_output_done() && $inlineedit == EDIT_SIMPLE)
{
// saving message
$_SESSION["message_edit"] = ($message ? $message : "");
// key get query
$keyGetQ = "";
$keyGetQ.="editid1=".rawurldecode($keys["UID"])."&";
// cut last &
$keyGetQ = substr($keyGetQ, 0, strlen($keyGetQ)-1);
// redirect
HeaderRedirect("fpi_reg", $pageObject->getPageType(), $keyGetQ);
// turned on output buffering, so we need to stop script
exit();
}
// for PRG rule, to avoid POSTDATA resend. Saving mess in session
if ($inlineedit == EDIT_SIMPLE && isset($_SESSION["message_edit"]))
{
$message = $_SESSION["message_edit"];
unset($_SESSION["message_edit"]);
}
// lock record before printing controls
if($pageObject->lockingObj && !( $IsSaved && ( $inlineedit == EDIT_INLINE || $inlineedit == EDIT_POPUP ) ))
{
$enableCtrlsForEditing = $pageObject->lockingObj->LockRecord($strTableName, $keys);
if(!$enableCtrlsForEditing)
{
if($inlineedit == EDIT_INLINE)
{
if(IsAdmin() || $_SESSION["AccessLevel"] == ACCESS_LEVEL_ADMINGROUP)
$lockmessage = $pageObject->lockingObj->GetLockInfo($strTableName,$keys,false,$id);
else
$lockmessage = $pageObject->lockingObj->LockUser;
$returnJSON['success'] = false;
$returnJSON['message'] = $lockmessage;
$returnJSON['enableCtrls'] = $enableCtrlsForEditing;
$returnJSON['confirmTime'] = $pageObject->lockingObj->ConfirmTime;
echo printJSON($returnJSON);
exit();
}
$system_attrs = "style='display:block;'";
$system_message = $pageObject->lockingObj->LockUser;
if(IsAdmin() || $_SESSION["AccessLevel"] == ACCESS_LEVEL_ADMINGROUP)
{
$rb = $pageObject->lockingObj->GetLockInfo($strTableName,$keys,true,$id);
if($rb!="")
$system_message = $rb;
}
}
}
if($pageObject->lockingObj && $inlineedit!=EDIT_INLINE)
$pageObject->body["begin"] .=''.$system_message.'
';
$pageObject->setKeys($keys);
$pageObject->readEditValues = $readevalues;
if($readevalues)
$pageObject->editValues = $evalues;
// read current values from the database
$data = $pageObject->getCurrentRecordInternal();
if(!$data)
{
if($inlineedit == EDIT_SIMPLE)
{
HeaderRedirect("fpi_reg", "list", "a=return");
exit();
}
else
$data = array();
}
if($globalEvents->exists("IsRecordEditable", $strTableName))
{
if(!$globalEvents->IsRecordEditable($data, true, $strTableName) && $inlineedit != EDIT_INLINE)
{
return SecurityRedirect($inlineedit);
}
}
//global variable use in BuildEditControl function
// show readonly fields
$xt->assign("show_key1", $pageObject->showDBValue("UID", $data));
if($readevalues)
{
$data["UID"] = $evalues["UID"];
$data["D8"] = $evalues["D8"];
$data["D9"] = $evalues["D9"];
$data["D10"] = $evalues["D10"];
$data["D11"] = $evalues["D11"];
$data["D12"] = $evalues["D12"];
$data["D13"] = $evalues["D13"];
$data["E9"] = $evalues["E9"];
}
/////////////////////////////////////////////////////////////
// assign values to $xt class, prepare page for displaying
/////////////////////////////////////////////////////////////
//Basic includes js files
$includes = "";
//javascript code
if($inlineedit != EDIT_INLINE)
{
if($inlineedit == EDIT_SIMPLE)
{
$includes .= GetBaseScriptsForPage(false);
if (!isMobile())
$includes.= "\r\n";
$pageObject->body["begin"].= $includes;
}
if(!$pageObject->isAppearOnTabs("UID"))
$xt->assign("UID_fieldblock",true);
else
$xt->assign("UID_tabfieldblock",true);
$xt->assign("UID_label",true);
if(isEnableSection508())
$xt->assign_section("UID_label","");
if(!$pageObject->isAppearOnTabs("D8"))
$xt->assign("D8_fieldblock",true);
else
$xt->assign("D8_tabfieldblock",true);
$xt->assign("D8_label",true);
if(isEnableSection508())
$xt->assign_section("D8_label","");
if(!$pageObject->isAppearOnTabs("D9"))
$xt->assign("D9_fieldblock",true);
else
$xt->assign("D9_tabfieldblock",true);
$xt->assign("D9_label",true);
if(isEnableSection508())
$xt->assign_section("D9_label","");
if(!$pageObject->isAppearOnTabs("D10"))
$xt->assign("D10_fieldblock",true);
else
$xt->assign("D10_tabfieldblock",true);
$xt->assign("D10_label",true);
if(isEnableSection508())
$xt->assign_section("D10_label","");
if(!$pageObject->isAppearOnTabs("D11"))
$xt->assign("D11_fieldblock",true);
else
$xt->assign("D11_tabfieldblock",true);
$xt->assign("D11_label",true);
if(isEnableSection508())
$xt->assign_section("D11_label","");
if(!$pageObject->isAppearOnTabs("D12"))
$xt->assign("D12_fieldblock",true);
else
$xt->assign("D12_tabfieldblock",true);
$xt->assign("D12_label",true);
if(isEnableSection508())
$xt->assign_section("D12_label","");
if(!$pageObject->isAppearOnTabs("D13"))
$xt->assign("D13_fieldblock",true);
else
$xt->assign("D13_tabfieldblock",true);
$xt->assign("D13_label",true);
if(isEnableSection508())
$xt->assign_section("D13_label","");
if(!$pageObject->isAppearOnTabs("E9"))
$xt->assign("E9_fieldblock",true);
else
$xt->assign("E9_tabfieldblock",true);
$xt->assign("E9_label",true);
if(isEnableSection508())
$xt->assign_section("E9_label","");
//$xt->assign('editForm',true);
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//Begin Next Prev button
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
if(!@$_SESSION[$strTableName."_noNextPrev"] && $inlineedit != EDIT_INLINE)
{
$next = array();
$prev = array();
$pageObject->getNextPrevRecordKeys($data,"Edit",$next,$prev);
}
$nextlink = $prevlink = "";
if(count($next))
{
$xt->assign("next_button", true);
$nextlink.= "editid1=".runner_htmlspecialchars(rawurlencode($next[1-1]));
$xt->assign("nextbutton_attrs", "id=\"nextButton".$id."\" align=\"absmiddle\"");
}
else if( count($prev) )
{
$xt->assign("next_button", true);
$xt->assign("nextbutton_class", "rnr-invisible-button");
}
else
$xt->assign("next_button", false);
if(count($prev))
{
$xt->assign("prev_button", true);
$prevlink.= "editid1=".runner_htmlspecialchars(rawurlencode($prev[1-1]));
$xt->assign("prevbutton_attrs", "id=\"prevButton".$id."\" align=\"absmiddle\"");
}
else if( count($next) )
{
$xt->assign("prev_button", true);
$xt->assign("prevbutton_class", "rnr-invisible-button");
}
else
$xt->assign("prev_button", false);
$xt->assign("resetbutton_attrs",'id="resetButton'.$id.'"');
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//End Next Prev button
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
if($inlineedit == EDIT_SIMPLE)
{
$xt->assign("back_button",true);
$xt->assign("backbutton_attrs","id=\"backButton".$id."\"");
$xt->assign("mbackbutton_attrs","id=\"extraBackButton".$id."\"");
}
if($inlineedit == EDIT_POPUP)
{
$xt->assign("close_button",true);
$xt->assign("closebutton_attrs","id=\"closeButton".$id."\"");
}
// onmouseover event, for changing focus. Needed to proper submit form
//$onmouseover = "this.focus();";
//$onmouseover = 'onmouseover="'.$onmouseover.'"';
$xt->assign("save_button",true);
if(!$enableCtrlsForEditing)
$xt->assign("savebutton_attrs", "id=\"saveButton".$id."\" type=\"disabled\" ");
else
$xt->assign("savebutton_attrs", "id=\"saveButton".$id."\"");
$xt->assign("reset_button",true);
$permis = $pageObject->getPermissions();
if($pageObject->pSet->hasViewPage() && $permis['search'])
{
$xt->assign("view_page_button", true);
$xt->assign("view_page_button_attrs","id=\"viewPageButton".$id."\"");
}
}
$xt->assign("message_block",true);
$xt->assign("message",$message);
if(!strlen($message))
{
$xt->displayBrickHidden("message");
}
/////////////////////////////////////////////////////////////
//process readonly and auto-update fields
/////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////
// return new data to the List page or report an error
/////////////////////////////////////////////////////////////
if (postvalue("a")=="edited" && ($inlineedit == EDIT_INLINE || $inlineedit == EDIT_POPUP))
{
if(!$data)
$data = $evalues;
//Preparation view values
// detail tables
$keylink = "";
$keylink.= "&key1=".runner_htmlspecialchars(rawurlencode(@$data["UID"]));
// UID -
$value = $pageObject->showDBValue("UID", $data, $keylink);
$showValues["UID"] = $value;
$showFields[] = "UID";
$showRawValues["UID"] = substr($data["UID"],0,100);
// Title -
$value = $pageObject->showDBValue("Title", $data, $keylink);
$showValues["Title"] = $value;
$showFields[] = "Title";
$showRawValues["Title"] = substr($data["Title"],0,100);
// English name -
$value = $pageObject->showDBValue("English name", $data, $keylink);
$showValues["English name"] = $value;
$showFields[] = "English name";
$showRawValues["English name"] = substr($data["English name"],0,100);
// Chinese name -
$value = $pageObject->showDBValue("Chinese name", $data, $keylink);
$showValues["Chinese name"] = $value;
$showFields[] = "Chinese name";
$showRawValues["Chinese name"] = substr($data["Chinese name"],0,100);
// Tel -
$value = $pageObject->showDBValue("Tel", $data, $keylink);
$showValues["Tel"] = $value;
$showFields[] = "Tel";
$showRawValues["Tel"] = substr($data["Tel"],0,100);
// E-mail -
$value = $pageObject->showDBValue("E-mail", $data, $keylink);
$showValues["E-mail"] = $value;
$showFields[] = "E-mail";
$showRawValues["E-mail"] = substr($data["E-mail"],0,100);
// Account Type -
$value = $pageObject->showDBValue("Account Type", $data, $keylink);
$showValues["Account Type"] = $value;
$showFields[] = "Account Type";
$showRawValues["Account Type"] = substr($data["Account Type"],0,100);
// ID card no -
$value = $pageObject->showDBValue("ID card no", $data, $keylink);
$showValues["ID card no"] = $value;
$showFields[] = "ID card no";
$showRawValues["ID card no"] = substr($data["ID card no"],0,100);
// Passport no -
$value = $pageObject->showDBValue("Passport no", $data, $keylink);
$showValues["Passport no"] = $value;
$showFields[] = "Passport no";
$showRawValues["Passport no"] = substr($data["Passport no"],0,100);
// Issue Country -
$value = $pageObject->showDBValue("Issue Country", $data, $keylink);
$showValues["Issue Country"] = $value;
$showFields[] = "Issue Country";
$showRawValues["Issue Country"] = substr($data["Issue Country"],0,100);
// Nationality -
$value = $pageObject->showDBValue("Nationality", $data, $keylink);
$showValues["Nationality"] = $value;
$showFields[] = "Nationality";
$showRawValues["Nationality"] = substr($data["Nationality"],0,100);
// Date of Birth -
$value = $pageObject->showDBValue("Date of Birth", $data, $keylink);
$showValues["Date of Birth"] = $value;
$showFields[] = "Date of Birth";
$showRawValues["Date of Birth"] = substr($data["Date of Birth"],0,100);
// sex -
$value = $pageObject->showDBValue("sex", $data, $keylink);
$showValues["sex"] = $value;
$showFields[] = "sex";
$showRawValues["sex"] = substr($data["sex"],0,100);
// Residential Address -
$value = $pageObject->showDBValue("Residential Address", $data, $keylink);
$showValues["Residential Address"] = $value;
$showFields[] = "Residential Address";
$showRawValues["Residential Address"] = substr($data["Residential Address"],0,100);
// correspondence address -
$value = $pageObject->showDBValue("correspondence address", $data, $keylink);
$showValues["correspondence address"] = $value;
$showFields[] = "correspondence address";
$showRawValues["correspondence address"] = substr($data["correspondence address"],0,100);
// Residential Tel -
$value = $pageObject->showDBValue("Residential Tel", $data, $keylink);
$showValues["Residential Tel"] = $value;
$showFields[] = "Residential Tel";
$showRawValues["Residential Tel"] = substr($data["Residential Tel"],0,100);
// Date of Birth (day) -
$value = $pageObject->showDBValue("Date of Birth (day)", $data, $keylink);
$showValues["Date of Birth (day)"] = $value;
$showFields[] = "Date of Birth (day)";
$showRawValues["Date of Birth (day)"] = substr($data["Date of Birth (day)"],0,100);
// Date of Birth (Month) -
$value = $pageObject->showDBValue("Date of Birth (Month)", $data, $keylink);
$showValues["Date of Birth (Month)"] = $value;
$showFields[] = "Date of Birth (Month)";
$showRawValues["Date of Birth (Month)"] = substr($data["Date of Birth (Month)"],0,100);
// Date of Birth (Year) -
$value = $pageObject->showDBValue("Date of Birth (Year)", $data, $keylink);
$showValues["Date of Birth (Year)"] = $value;
$showFields[] = "Date of Birth (Year)";
$showRawValues["Date of Birth (Year)"] = substr($data["Date of Birth (Year)"],0,100);
// Employ status -
$value = $pageObject->showDBValue("Employ status", $data, $keylink);
$showValues["Employ status"] = $value;
$showFields[] = "Employ status";
$showRawValues["Employ status"] = substr($data["Employ status"],0,100);
// Company post -
$value = $pageObject->showDBValue("Company post", $data, $keylink);
$showValues["Company post"] = $value;
$showFields[] = "Company post";
$showRawValues["Company post"] = substr($data["Company post"],0,100);
// Company name -
$value = $pageObject->showDBValue("Company name", $data, $keylink);
$showValues["Company name"] = $value;
$showFields[] = "Company name";
$showRawValues["Company name"] = substr($data["Company name"],0,100);
// Business nature -
$value = $pageObject->showDBValue("Business nature", $data, $keylink);
$showValues["Business nature"] = $value;
$showFields[] = "Business nature";
$showRawValues["Business nature"] = substr($data["Business nature"],0,100);
// 香港證券現金帳戶 -
$value = $pageObject->showDBValue("香港證券現金帳戶", $data, $keylink);
$showValues["香港證券現金帳戶"] = $value;
$showFields[] = "香港證券現金帳戶";
$showRawValues["香港證券現金帳戶"] = substr($data["香港證券現金帳戶"],0,100);
// 香港證券保證金帳戶 -
$value = $pageObject->showDBValue("香港證券保證金帳戶", $data, $keylink);
$showValues["香港證券保證金帳戶"] = $value;
$showFields[] = "香港證券保證金帳戶";
$showRawValues["香港證券保證金帳戶"] = substr($data["香港證券保證金帳戶"],0,100);
// 環球證券保證金帳戶 -
$value = $pageObject->showDBValue("環球證券保證金帳戶", $data, $keylink);
$showValues["環球證券保證金帳戶"] = $value;
$showFields[] = "環球證券保證金帳戶";
$showRawValues["環球證券保證金帳戶"] = substr($data["環球證券保證金帳戶"],0,100);
// 貴金屬帳戶 -
$value = $pageObject->showDBValue("貴金屬帳戶", $data, $keylink);
$showValues["貴金屬帳戶"] = $value;
$showFields[] = "貴金屬帳戶";
$showRawValues["貴金屬帳戶"] = substr($data["貴金屬帳戶"],0,100);
// 期貨帳戶 -
$value = $pageObject->showDBValue("期貨帳戶", $data, $keylink);
$showValues["期貨帳戶"] = $value;
$showFields[] = "期貨帳戶";
$showRawValues["期貨帳戶"] = substr($data["期貨帳戶"],0,100);
// Statement post method -
$value = $pageObject->showDBValue("Statement post method", $data, $keylink);
$showValues["Statement post method"] = $value;
$showFields[] = "Statement post method";
$showRawValues["Statement post method"] = substr($data["Statement post method"],0,100);
// 主要入帳銀行 -
$value = $pageObject->showDBValue("主要入帳銀行", $data, $keylink);
$showValues["主要入帳銀行"] = $value;
$showFields[] = "主要入帳銀行";
$showRawValues["主要入帳銀行"] = substr($data["主要入帳銀行"],0,100);
// 帳戶號碼 -
$value = $pageObject->showDBValue("帳戶號碼", $data, $keylink);
$showValues["帳戶號碼"] = $value;
$showFields[] = "帳戶號碼";
$showRawValues["帳戶號碼"] = substr($data["帳戶號碼"],0,100);
// 貨幣 -
$value = $pageObject->showDBValue("貨幣", $data, $keylink);
$showValues["貨幣"] = $value;
$showFields[] = "貨幣";
$showRawValues["貨幣"] = substr($data["貨幣"],0,100);
// 入帳銀行帳戶持有人 -
$value = $pageObject->showDBValue("入帳銀行帳戶持有人", $data, $keylink);
$showValues["入帳銀行帳戶持有人"] = $value;
$showFields[] = "入帳銀行帳戶持有人";
$showRawValues["入帳銀行帳戶持有人"] = substr($data["入帳銀行帳戶持有人"],0,100);
// SWIFT編號 -
$value = $pageObject->showDBValue("SWIFT編號", $data, $keylink);
$showValues["SWIFT編號"] = $value;
$showFields[] = "SWIFT編號";
$showRawValues["SWIFT編號"] = substr($data["SWIFT編號"],0,100);
// D8 -
$value = $pageObject->showDBValue("D8", $data, $keylink);
$showValues["D8"] = $value;
$showFields[] = "D8";
$showRawValues["D8"] = substr($data["D8"],0,100);
// D9 -
$value = $pageObject->showDBValue("D9", $data, $keylink);
$showValues["D9"] = $value;
$showFields[] = "D9";
$showRawValues["D9"] = substr($data["D9"],0,100);
// D10 -
$value = $pageObject->showDBValue("D10", $data, $keylink);
$showValues["D10"] = $value;
$showFields[] = "D10";
$showRawValues["D10"] = substr($data["D10"],0,100);
// D11 -
$value = $pageObject->showDBValue("D11", $data, $keylink);
$showValues["D11"] = $value;
$showFields[] = "D11";
$showRawValues["D11"] = substr($data["D11"],0,100);
// D12 -
$value = $pageObject->showDBValue("D12", $data, $keylink);
$showValues["D12"] = $value;
$showFields[] = "D12";
$showRawValues["D12"] = substr($data["D12"],0,100);
// D13 -
$value = $pageObject->showDBValue("D13", $data, $keylink);
$showValues["D13"] = $value;
$showFields[] = "D13";
$showRawValues["D13"] = substr($data["D13"],0,100);
// 每年收入 -
$value = $pageObject->showDBValue("每年收入", $data, $keylink);
$showValues["每年收入"] = $value;
$showFields[] = "每年收入";
$showRawValues["每年收入"] = substr($data["每年收入"],0,100);
// 淨資產值 -
$value = $pageObject->showDBValue("淨資產值", $data, $keylink);
$showValues["淨資產值"] = $value;
$showFields[] = "淨資產值";
$showRawValues["淨資產值"] = substr($data["淨資產值"],0,100);
// 流動產值 -
$value = $pageObject->showDBValue("流動產值", $data, $keylink);
$showValues["流動產值"] = $value;
$showFields[] = "流動產值";
$showRawValues["流動產值"] = substr($data["流動產值"],0,100);
// 香港上市証券 -
$value = $pageObject->showDBValue("香港上市証券", $data, $keylink);
$showValues["香港上市証券"] = $value;
$showFields[] = "香港上市証券";
$showRawValues["香港上市証券"] = substr($data["香港上市証券"],0,100);
// 海外上市證券 -
$value = $pageObject->showDBValue("海外上市證券", $data, $keylink);
$showValues["海外上市證券"] = $value;
$showFields[] = "海外上市證券";
$showRawValues["海外上市證券"] = substr($data["海外上市證券"],0,100);
// 香港期貨及期權 -
$value = $pageObject->showDBValue("香港期貨及期權", $data, $keylink);
$showValues["香港期貨及期權"] = $value;
$showFields[] = "香港期貨及期權";
$showRawValues["香港期貨及期權"] = substr($data["香港期貨及期權"],0,100);
// 海外期貨及期權 -
$value = $pageObject->showDBValue("海外期貨及期權", $data, $keylink);
$showValues["海外期貨及期權"] = $value;
$showFields[] = "海外期貨及期權";
$showRawValues["海外期貨及期權"] = substr($data["海外期貨及期權"],0,100);
// 投資目的 (收入) -
$value = $pageObject->showDBValue("投資目的 (收入)", $data, $keylink);
$showValues["投資目的 (收入)"] = $value;
$showFields[] = "投資目的 (收入)";
$showRawValues["投資目的 (收入)"] = substr($data["投資目的 (收入)"],0,100);
// 投資目的 (對沖) -
$value = $pageObject->showDBValue("投資目的 (對沖)", $data, $keylink);
$showValues["投資目的 (對沖)"] = $value;
$showFields[] = "投資目的 (對沖)";
$showRawValues["投資目的 (對沖)"] = substr($data["投資目的 (對沖)"],0,100);
// 投資目的 (資本增值) -
$value = $pageObject->showDBValue("投資目的 (資本增值)", $data, $keylink);
$showValues["投資目的 (資本增值)"] = $value;
$showFields[] = "投資目的 (資本增值)";
$showRawValues["投資目的 (資本增值)"] = substr($data["投資目的 (資本增值)"],0,100);
// 投資目的 (投機) -
$value = $pageObject->showDBValue("投資目的 (投機)", $data, $keylink);
$showValues["投資目的 (投機)"] = $value;
$showFields[] = "投資目的 (投機)";
$showRawValues["投資目的 (投機)"] = substr($data["投資目的 (投機)"],0,100);
// E9 -
$value = $pageObject->showDBValue("E9", $data, $keylink);
$showValues["E9"] = $value;
$showFields[] = "E9";
$showRawValues["E9"] = substr($data["E9"],0,100);
// 閣下自己、閣下之配偶、父母、及/或子女是否富泰中順的公司帳戶的董事及/或股東? -
$value = $pageObject->showDBValue("閣下自己、閣下之配偶、父母、及/或子女是否富泰中順的公司帳戶的董事及/或股東?", $data, $keylink);
$showValues["閣下自己、閣下之配偶、父母、及/或子女是否富泰中順的公司帳戶的董事及/或股東?"] = $value;
$showFields[] = "閣下自己、閣下之配偶、父母、及/或子女是否富泰中順的公司帳戶的董事及/或股東?";
$showRawValues["閣下自己、閣下之配偶、父母、及/或子女是否富泰中順的公司帳戶的董事及/或股東?"] = substr($data["閣下自己、閣下之配偶、父母、及/或子女是否富泰中順的公司帳戶的董事及/或股東?"],0,100);
// 閣下的配偶、及/或子女是否富泰中順的客戶? -
$value = $pageObject->showDBValue("閣下的配偶、及/或子女是否富泰中順的客戶?", $data, $keylink);
$showValues["閣下的配偶、及/或子女是否富泰中順的客戶?"] = $value;
$showFields[] = "閣下的配偶、及/或子女是否富泰中順的客戶?";
$showRawValues["閣下的配偶、及/或子女是否富泰中順的客戶?"] = substr($data["閣下的配偶、及/或子女是否富泰中順的客戶?"],0,100);
// 閣下是否個人或與閣下之配偶共同控制任何富泰中順的公司客戶35%或以上的投票權? -
$value = $pageObject->showDBValue("閣下是否個人或與閣下之配偶共同控制任何富泰中順的公司客戶35%或以上的投票權?", $data, $keylink);
$showValues["閣下是否個人或與閣下之配偶共同控制任何富泰中順的公司客戶35%或以上的投票權?"] = $value;
$showFields[] = "閣下是否個人或與閣下之配偶共同控制任何富泰中順的公司客戶35%或以上的投票權?";
$showRawValues["閣下是否個人或與閣下之配偶共同控制任何富泰中順的公司客戶35%或以上的投票權?"] = substr($data["閣下是否個人或與閣下之配偶共同控制任何富泰中順的公司客戶35%或以上的投票權?"],0,100);
// 閣下是否與富泰中順任何顧員有親屬關係? -
$value = $pageObject->showDBValue("閣下是否與富泰中順任何顧員有親屬關係?", $data, $keylink);
$showValues["閣下是否與富泰中順任何顧員有親屬關係?"] = $value;
$showFields[] = "閣下是否與富泰中順任何顧員有親屬關係?";
$showRawValues["閣下是否與富泰中順任何顧員有親屬關係?"] = substr($data["閣下是否與富泰中順任何顧員有親屬關係?"],0,100);
// 閣下是否香港證監會持牌人或註冊人的顧員? -
$value = $pageObject->showDBValue("閣下是否香港證監會持牌人或註冊人的顧員?", $data, $keylink);
$showValues["閣下是否香港證監會持牌人或註冊人的顧員?"] = $value;
$showFields[] = "閣下是否香港證監會持牌人或註冊人的顧員?";
$showRawValues["閣下是否香港證監會持牌人或註冊人的顧員?"] = substr($data["閣下是否香港證監會持牌人或註冊人的顧員?"],0,100);
// 閣下是否此帳戶之最終受益人? -
$value = $pageObject->showDBValue("閣下是否此帳戶之最終受益人?", $data, $keylink);
$showValues["閣下是否此帳戶之最終受益人?"] = $value;
$showFields[] = "閣下是否此帳戶之最終受益人?";
$showRawValues["閣下是否此帳戶之最終受益人?"] = substr($data["閣下是否此帳戶之最終受益人?"],0,100);
// (請註明詳情) -
$value = $pageObject->showDBValue("(請註明詳情)", $data, $keylink);
$showValues["(請註明詳情)"] = $value;
$showFields[] = "(請註明詳情)";
$showRawValues["(請註明詳情)"] = substr($data["(請註明詳情)"],0,100);
// (請註明詳情)1 -
$value = $pageObject->showDBValue("(請註明詳情)1", $data, $keylink);
$showValues["(請註明詳情)1"] = $value;
$showFields[] = "(請註明詳情)1";
$showRawValues["(請註明詳情)1"] = substr($data["(請註明詳情)1"],0,100);
// (請註明詳情)2 -
$value = $pageObject->showDBValue("(請註明詳情)2", $data, $keylink);
$showValues["(請註明詳情)2"] = $value;
$showFields[] = "(請註明詳情)2";
$showRawValues["(請註明詳情)2"] = substr($data["(請註明詳情)2"],0,100);
// (請註明詳情) -
$value = $pageObject->showDBValue("(請註明詳情) ", $data, $keylink);
$showValues["(請註明詳情) "] = $value;
$showFields[] = "(請註明詳情) ";
$showRawValues["(請註明詳情) "] = substr($data["(請註明詳情) "],0,100);
// (請註明詳情)3 -
$value = $pageObject->showDBValue("(請註明詳情)3", $data, $keylink);
$showValues["(請註明詳情)3"] = $value;
$showFields[] = "(請註明詳情)3";
$showRawValues["(請註明詳情)3"] = substr($data["(請註明詳情)3"],0,100);
// (請註明詳情)4 -
$value = $pageObject->showDBValue("(請註明詳情)4", $data, $keylink);
$showValues["(請註明詳情)4"] = $value;
$showFields[] = "(請註明詳情)4";
$showRawValues["(請註明詳情)4"] = substr($data["(請註明詳情)4"],0,100);
// 閣下於過去三年,曾執行五次或以上有關衍生產品的交易 -
$value = $pageObject->showDBValue("閣下於過去三年,曾執行五次或以上有關衍生產品的交易", $data, $keylink);
$showValues["閣下於過去三年,曾執行五次或以上有關衍生產品的交易"] = $value;
$showFields[] = "閣下於過去三年,曾執行五次或以上有關衍生產品的交易";
$showRawValues["閣下於過去三年,曾執行五次或以上有關衍生產品的交易"] = substr($data["閣下於過去三年,曾執行五次或以上有關衍生產品的交易"],0,100);
// 閣下現時或過去擁有與衍生產品有關的工作經驗 -
$value = $pageObject->showDBValue("閣下現時或過去擁有與衍生產品有關的工作經驗", $data, $keylink);
$showValues["閣下現時或過去擁有與衍生產品有關的工作經驗"] = $value;
$showFields[] = "閣下現時或過去擁有與衍生產品有關的工作經驗";
$showRawValues["閣下現時或過去擁有與衍生產品有關的工作經驗"] = substr($data["閣下現時或過去擁有與衍生產品有關的工作經驗"],0,100);
// 職位 -
$value = $pageObject->showDBValue("職位", $data, $keylink);
$showValues["職位"] = $value;
$showFields[] = "職位";
$showRawValues["職位"] = substr($data["職位"],0,100);
// 公司名稱 -
$value = $pageObject->showDBValue("公司名稱", $data, $keylink);
$showValues["公司名稱"] = $value;
$showFields[] = "公司名稱";
$showRawValues["公司名稱"] = substr($data["公司名稱"],0,100);
// 工作年期 -
$value = $pageObject->showDBValue("工作年期", $data, $keylink);
$showValues["工作年期"] = $value;
$showFields[] = "工作年期";
$showRawValues["工作年期"] = substr($data["工作年期"],0,100);
// 有關工作經驗詳情 -
$value = $pageObject->showDBValue("有關工作經驗詳情", $data, $keylink);
$showValues["有關工作經驗詳情"] = $value;
$showFields[] = "有關工作經驗詳情";
$showRawValues["有關工作經驗詳情"] = substr($data["有關工作經驗詳情"],0,100);
// 閣下曾接受有關衍生產品的培訓或修讀相關課程 -
$value = $pageObject->showDBValue("閣下曾接受有關衍生產品的培訓或修讀相關課程", $data, $keylink);
$showValues["閣下曾接受有關衍生產品的培訓或修讀相關課程"] = $value;
$showFields[] = "閣下曾接受有關衍生產品的培訓或修讀相關課程";
$showRawValues["閣下曾接受有關衍生產品的培訓或修讀相關課程"] = substr($data["閣下曾接受有關衍生產品的培訓或修讀相關課程"],0,100);
// 詳情 -
$value = $pageObject->showDBValue("詳情", $data, $keylink);
$showValues["詳情"] = $value;
$showFields[] = "詳情";
$showRawValues["詳情"] = substr($data["詳情"],0,100);
// 閣下確認已仔細閱讀及完全明白,由 富泰中順提供,並以閣下所選擇之語言(英文或中文)的「風險披露聲明或就在交易所買賣的衍生產品所附帶的風險作出解釋」 。閣下並願意承擔交易相關衍生 -
$value = $pageObject->showDBValue("閣下確認已仔細閱讀及完全明白,由 富泰中順提供,並以閣下所選擇之語言(英文或中文)的「風險披露聲明或就在交易所買賣的衍生產品所附帶的風險作出解釋」 。閣下並願意承擔交易相關衍生", $data, $keylink);
$showValues["閣下確認已仔細閱讀及完全明白,由 富泰中順提供,並以閣下所選擇之語言(英文或中文)的「風險披露聲明或就在交易所買賣的衍生產品所附帶的風險作出解釋」 。閣下並願意承擔交易相關衍生"] = $value;
$showFields[] = "閣下確認已仔細閱讀及完全明白,由 富泰中順提供,並以閣下所選擇之語言(英文或中文)的「風險披露聲明或就在交易所買賣的衍生產品所附帶的風險作出解釋」 。閣下並願意承擔交易相關衍生";
$showRawValues["閣下確認已仔細閱讀及完全明白,由 富泰中順提供,並以閣下所選擇之語言(英文或中文)的「風險披露聲明或就在交易所買賣的衍生產品所附帶的風險作出解釋」 。閣下並願意承擔交易相關衍生"] = substr($data["閣下確認已仔細閱讀及完全明白,由 富泰中順提供,並以閣下所選擇之語言(英文或中文)的「風險披露聲明或就在交易所買賣的衍生產品所附帶的風險作出解釋」 。閣下並願意承擔交易相關衍生"],0,100);
// Title1 -
$value = $pageObject->showDBValue("Title1", $data, $keylink);
$showValues["Title1"] = $value;
$showFields[] = "Title1";
$showRawValues["Title1"] = substr($data["Title1"],0,100);
// English name1 -
$value = $pageObject->showDBValue("English name1", $data, $keylink);
$showValues["English name1"] = $value;
$showFields[] = "English name1";
$showRawValues["English name1"] = substr($data["English name1"],0,100);
// Chinese name1 -
$value = $pageObject->showDBValue("Chinese name1", $data, $keylink);
$showValues["Chinese name1"] = $value;
$showFields[] = "Chinese name1";
$showRawValues["Chinese name1"] = substr($data["Chinese name1"],0,100);
// Tel1 -
$value = $pageObject->showDBValue("Tel1", $data, $keylink);
$showValues["Tel1"] = $value;
$showFields[] = "Tel1";
$showRawValues["Tel1"] = substr($data["Tel1"],0,100);
// E-mail1 -
$value = $pageObject->showDBValue("E-mail1", $data, $keylink);
$showValues["E-mail1"] = $value;
$showFields[] = "E-mail1";
$showRawValues["E-mail1"] = substr($data["E-mail1"],0,100);
// ID card no1 -
$value = $pageObject->showDBValue("ID card no1", $data, $keylink);
$showValues["ID card no1"] = $value;
$showFields[] = "ID card no1";
$showRawValues["ID card no1"] = substr($data["ID card no1"],0,100);
// Passport no1 -
$value = $pageObject->showDBValue("Passport no1", $data, $keylink);
$showValues["Passport no1"] = $value;
$showFields[] = "Passport no1";
$showRawValues["Passport no1"] = substr($data["Passport no1"],0,100);
// Issue Country1 -
$value = $pageObject->showDBValue("Issue Country1", $data, $keylink);
$showValues["Issue Country1"] = $value;
$showFields[] = "Issue Country1";
$showRawValues["Issue Country1"] = substr($data["Issue Country1"],0,100);
// Nationality1 -
$value = $pageObject->showDBValue("Nationality1", $data, $keylink);
$showValues["Nationality1"] = $value;
$showFields[] = "Nationality1";
$showRawValues["Nationality1"] = substr($data["Nationality1"],0,100);
// Date of Birth1 -
$value = $pageObject->showDBValue("Date of Birth1", $data, $keylink);
$showValues["Date of Birth1"] = $value;
$showFields[] = "Date of Birth1";
$showRawValues["Date of Birth1"] = substr($data["Date of Birth1"],0,100);
// sex1 -
$value = $pageObject->showDBValue("sex1", $data, $keylink);
$showValues["sex1"] = $value;
$showFields[] = "sex1";
$showRawValues["sex1"] = substr($data["sex1"],0,100);
// Residential Address1 -
$value = $pageObject->showDBValue("Residential Address1", $data, $keylink);
$showValues["Residential Address1"] = $value;
$showFields[] = "Residential Address1";
$showRawValues["Residential Address1"] = substr($data["Residential Address1"],0,100);
// correspondence address1 -
$value = $pageObject->showDBValue("correspondence address1", $data, $keylink);
$showValues["correspondence address1"] = $value;
$showFields[] = "correspondence address1";
$showRawValues["correspondence address1"] = substr($data["correspondence address1"],0,100);
// Residential Tel1 -
$value = $pageObject->showDBValue("Residential Tel1", $data, $keylink);
$showValues["Residential Tel1"] = $value;
$showFields[] = "Residential Tel1";
$showRawValues["Residential Tel1"] = substr($data["Residential Tel1"],0,100);
// Date of Birth (day)1 -
$value = $pageObject->showDBValue("Date of Birth (day)1", $data, $keylink);
$showValues["Date of Birth (day)1"] = $value;
$showFields[] = "Date of Birth (day)1";
$showRawValues["Date of Birth (day)1"] = substr($data["Date of Birth (day)1"],0,100);
// Date of Birth (Month)1 -
$value = $pageObject->showDBValue("Date of Birth (Month)1", $data, $keylink);
$showValues["Date of Birth (Month)1"] = $value;
$showFields[] = "Date of Birth (Month)1";
$showRawValues["Date of Birth (Month)1"] = substr($data["Date of Birth (Month)1"],0,100);
// Date of Birth (Year)1 -
$value = $pageObject->showDBValue("Date of Birth (Year)1", $data, $keylink);
$showValues["Date of Birth (Year)1"] = $value;
$showFields[] = "Date of Birth (Year)1";
$showRawValues["Date of Birth (Year)1"] = substr($data["Date of Birth (Year)1"],0,100);
// Employ status1 -
$value = $pageObject->showDBValue("Employ status1", $data, $keylink);
$showValues["Employ status1"] = $value;
$showFields[] = "Employ status1";
$showRawValues["Employ status1"] = substr($data["Employ status1"],0,100);
// Company post1 -
$value = $pageObject->showDBValue("Company post1", $data, $keylink);
$showValues["Company post1"] = $value;
$showFields[] = "Company post1";
$showRawValues["Company post1"] = substr($data["Company post1"],0,100);
// Company name1 -
$value = $pageObject->showDBValue("Company name1", $data, $keylink);
$showValues["Company name1"] = $value;
$showFields[] = "Company name1";
$showRawValues["Company name1"] = substr($data["Company name1"],0,100);
// Business nature1 -
$value = $pageObject->showDBValue("Business nature1", $data, $keylink);
$showValues["Business nature1"] = $value;
$showFields[] = "Business nature1";
$showRawValues["Business nature1"] = substr($data["Business nature1"],0,100);
// QQ -
$value = $pageObject->showDBValue("QQ", $data, $keylink);
$showValues["QQ"] = $value;
$showFields[] = "QQ";
$showRawValues["QQ"] = substr($data["QQ"],0,100);
// WeChat -
$value = $pageObject->showDBValue("WeChat", $data, $keylink);
$showValues["WeChat"] = $value;
$showFields[] = "WeChat";
$showRawValues["WeChat"] = substr($data["WeChat"],0,100);
// QQ1 -
$value = $pageObject->showDBValue("QQ1", $data, $keylink);
$showValues["QQ1"] = $value;
$showFields[] = "QQ1";
$showRawValues["QQ1"] = substr($data["QQ1"],0,100);
// WeChat1 -
$value = $pageObject->showDBValue("WeChat1", $data, $keylink);
$showValues["WeChat1"] = $value;
$showFields[] = "WeChat1";
$showRawValues["WeChat1"] = substr($data["WeChat1"],0,100);
// Create Date -
$value = $pageObject->showDBValue("Create Date", $data, $keylink);
$showValues["Create Date"] = $value;
$showFields[] = "Create Date";
$showRawValues["Create Date"] = substr($data["Create Date"],0,100);
// 序號 -
$value = $pageObject->showDBValue("序號", $data, $keylink);
$showValues["序號"] = $value;
$showFields[] = "序號";
$showRawValues["序號"] = substr($data["序號"],0,100);
/////////////////////////////////////////////////////////////
// start inline output
/////////////////////////////////////////////////////////////
if($IsSaved)
{
$returnJSON['success'] = true;
$returnJSON['keys'] = $pageObject->jsKeys;
$returnJSON['keyFields'] = $pageObject->keyFields;
$returnJSON['vals'] = $showValues;
$returnJSON['fields'] = $showFields;
$returnJSON['rawVals'] = $showRawValues;
$returnJSON['detKeys'] = $showDetailKeys;
$returnJSON['userMess'] = $usermessage;
$returnJSON['hrefs'] = $pageObject->buildDetailGridLinks($showDetailKeys);
if($inlineedit==EDIT_POPUP && isset($_SESSION[$strTableName."_count_captcha"]) || $_SESSION[$strTableName."_count_captcha"]>0 || $_SESSION[$strTableName."_count_captcha"]<5)
$returnJSON['hideCaptcha'] = true;
if($globalEvents->exists("IsRecordEditable", $strTableName))
{
if(!$globalEvents->IsRecordEditable($showRawValues, true, $strTableName))
$returnJSON['nonEditable'] = true;
}
if($inlineedit == EDIT_POPUP)
{
$xt->assign("header", false);
$xt->assign("footer", false);
$xt->assign("body", $pageObject->body);
$xt->hideAllBricksExcept( array("editheader") );
$xt->prepare_template($pageObject->templatefile);
$returnJSON['html'] = $xt->fetch_loaded("body");
$returnJSON['message'] = $message;
}
}
else
{
$returnJSON['success'] = false;
$returnJSON['message'] = $message;
if($pageObject->lockingObj)
$returnJSON['lockMessage'] = $system_message;
if($inlineedit == EDIT_POPUP && !$pageObject->isCaptchaOk)
$returnJSON['captcha'] = false;
}
echo printJSON($returnJSON);
exit();
}
/////////////////////////////////////////////////////////////
// prepare Edit Controls
/////////////////////////////////////////////////////////////
// validation stuff
$control = array();
$controlFields = $pageObject->editFields;
if( $inlineedit == EDIT_INLINE ) //#9069
$pageObject->removeHiddenColumnsFromInlineFields( $controlFields, postvalue("screenWidth"), postvalue("screenHeight"), postvalue("orientation") );
foreach($controlFields as $fName)
{
$gfName = GoodFieldName($fName);
$controls = array('controls'=>array());
if (!$detailKeys || !in_array($fName, $detailKeys))
{
$control[$gfName] = array();
$parameters = array();
$parameters["id"] = $id;
$parameters["ptype"] = PAGE_EDIT;
$parameters["field"] = $fName;
$parameters["data"] = $data;
if(!IsNumberType($pageObject->pSet->getFieldType($fName)) || is_null(@$data[$fName]))
{
$parameters["value"] = @$data[$fName];
}
else
{
$parameters["value"] = str_replace(".",$locale_info["LOCALE_SDECIMAL"],@$data[$fName]);
}
$parameters["pageObj"] = $pageObject;
// Begin Add validation
$arrValidate = $pageObject->pSet->getValidation($fName);
$parameters["validate"] = $arrValidate;
// End Add validation
$additionalCtrlParams = array();
$additionalCtrlParams["disabled"] = !$enableCtrlsForEditing;
$parameters["additionalCtrlParams"] = $additionalCtrlParams;
}
$controls["controls"]['ctrlInd'] = 0;
$controls["controls"]['id'] = $id;
$controls["controls"]['fieldName'] = $fName;
if($inlineedit == EDIT_INLINE)
{
if(!$detailKeys || !in_array($fName, $detailKeys))
$parameters["mode"]="inline_edit";
$controls["controls"]['mode'] = "inline_edit";
}
else{
if (!$detailKeys || !in_array($fName, $detailKeys))
$parameters["mode"] = "edit";
$controls["controls"]['mode'] = "edit";
}
if(!$detailKeys || !in_array($fName, $detailKeys))
{
AssignFunction($control[$gfName], "xt_buildeditcontrol", $parameters);
$xt->assignbyref($gfName."_editcontrol",$control[$gfName]);
}
elseif($detailKeys && in_array($fName, $detailKeys))
{
$controls["controls"]['value'] = @$data[$fName];
}
// category control field
$strCategoryControl = $pageObject->getMainLookupFieldNameForDependant($fName);
if($strCategoryControl !== "" && in_array($strCategoryControl, $controlFields))
{
$vals = array($fName => @$data[$fName],$strCategoryControl => @$data[$strCategoryControl]);
}
else
{
$vals = array($fName => @$data[$fName]);
}
$preload = $pageObject->fillPreload($fName, $vals);
if($preload!==false)
$controls["controls"]['preloadData'] = $preload;
$pageObject->fillControlsMap($controls);
//fill field tool tips
$pageObject->fillFieldToolTips($fName);
// fill special settings for timepicker
if($pageObject->pSet->getEditFormat($fName) == 'Time')
$pageObject->fillTimePickSettings($fName, $data[$fName]);
if($pageObject->pSet->getViewFormat($fName) == FORMAT_MAP)
$pageObject->googleMapCfg['isUseGoogleMap'] = true;
if($detailKeys && in_array($fName, $detailKeys) && array_key_exists($fName, $data))
{
$value = $pageObject->showDBValue($fName, $data);
$xt->assign($gfName."_editcontrol",$value);
}
}
//fill tab groups name and sections name to controls
$pageObject->fillCntrlTabGroups();
$pageObject->jsSettings['tableSettings'][$strTableName]["keys"] = $pageObject->jsKeys;
$pageObject->jsSettings['tableSettings'][$strTableName]['keyFields'] = $pageObject->keyFields;
$pageObject->jsSettings['tableSettings'][$strTableName]["prevKeys"] = $prev;
$pageObject->jsSettings['tableSettings'][$strTableName]["nextKeys"] = $next;
if($pageObject->lockingObj)
{
$pageObject->jsSettings['tableSettings'][$strTableName]["sKeys"] = implode("&", $savedKeys);;
$pageObject->jsSettings['tableSettings'][$strTableName]["enableCtrls"] = $enableCtrlsForEditing;
$pageObject->jsSettings['tableSettings'][$strTableName]["confirmTime"] = $pageObject->lockingObj->ConfirmTime;
}
/////////////////////////////////////////////////////////////
if($pageObject->isShowDetailTables && $inlineedit!=EDIT_INLINE && !isMobile())
{
if(count($dpParams['ids']))
{
include('classes/listpage.php');
include('classes/listpage_embed.php');
include('classes/listpage_dpinline.php');
$xt->assign("detail_tables",true);
}
$dControlsMap = array();
$dViewControlsMap = array();
$pageObject->flyId = $ids+1;
global $useFlashChartLibrary;
for($d=0;$dAddCSSFile($layout->getCSSFiles(isRTL(), isMobile()));
}
$options['id'] = $dpParams['ids'][$d];
$options['flyId'] = $pageObject->genId()+1;
$options['tName'] = $strTableName;
$options['pageType'] = PAGE_CHART;
$options['shortTableName'] = GetTableURL($strTableName);
$_params["chartname"] = GetTableURL($strTableName);
$_params["table"] = $strTableName;
$_params["ctype"] = $dpParams['params'][$d];
$_params["singlePage"] = true;
$_params["id"] = $options['flyId'];
$options["xt"]->assign_function($options['shortTableName']."_chart","xt_showchart", $_params);
$chartPageObject = new RunnerPage($options);
$chartPageObject->init();
$options["xt"]->assign("chart_block",true);
$options["xt"]->assign("asearch_link",true);
$options["xt"]->assign("search_records_block",true);
$options["xt"]->assign("exportpdflink_attrs","onclick='chart.saveAsPDF();'");
$options["xt"]->assign("searchform_showall",true);
$options["xt"]->assign("showallbutton_attrs","onclick=\"window.location.href='".GetTableLink($options['shortTableName'], "chart", "a=showall")."';\"");
$options["xt"]->assign("advsearchlink_attrs", "id=\"advButton".$id."\"");
$options["xt"]->assign("style_block",true);
$options["xt"]->assign("shiftstyle_block", true);
$chartPageObject->addControlsJSAndCSS();
$chartPageObject->fillSetCntrlMaps();
$chartPageObject->body["begin"] = '';
$chartPageObject->body["end"] = '';
$options["xt"]->assign("body",$chartPageObject->body);
$options["xt"]->assign("style_block",true);
$options["xt"]->assign("guestlink_block", false);
$options["xt"]->assign("container_toplinks", false);
$options["xt"]->assign("container_search", false);
$options["xt"]->assign("container_left", false);
$mkr = 1;
foreach($mKeys[$strTableName] as $mk)
{
$options['masterKeysReq'][$mkr++] = $data[$mk];
}
$masterKeysReq = $options['masterKeysReq'];
if(count($masterKeysReq))
{
// copy keys to session
for($i = 1;$i<=count($masterKeysReq);$i++)
$_SESSION[$strTableName."_masterkey".$i]= $masterKeysReq[$i];
if(isset($_SESSION[$strTableName."_masterkey".$i]))
unset($_SESSION[$strTableName."_masterkey".$i]);
}
//add detail settings to master settings
$pageObject->jsSettings['tableSettings'][$strTableName] = $chartPageObject->jsSettings['tableSettings'][$strTableName];
$pageObject->AddJSFile('libs/js/AnyChart.js');
$pageObject->AddJSFile('libs/js/AnyChartHTML5.js');
$dControlsMap[$strTableName] = $chartPageObject->controlsMap;
$dControlsMap[$strTableName]['useFlashChartLibrary'] = $useFlashChartLibrary;
$dViewControlsMap[$strTableName] = $chartPageObject->viewControlsMap;
foreach($chartPageObject->jsSettings['global']['shortTNames'] as $keySet=>$val)
{
if(!array_key_exists($keySet,$pageObject->settingsMap["globalSettings"]['shortTNames']))
$pageObject->settingsMap["globalSettings"]['shortTNames'][$keySet] = $val;
}
//Add detail's js files to master's files
$pageObject->copyAllJSFiles($chartPageObject->grabAllJSFiles());
//Add detail's css files to master's files
$pageObject->copyAllCSSFiles($chartPageObject->grabAllCSSFiles());
$xt->assign("details_".GoodFieldName($chartPageObject->tName), true);
$xtParams = array("params" => $chartPageObject->templatefile);
AssignMethod($xtParams, 'showPageDp', $chartPageObject);
$xt->assign("displayDetailTable_".GoodFieldName($chartPageObject->tName), $xtParams);
$pageObject->controlsMap['dpTablesParams'][] = array('tName'=>$strTableName, 'id'=>$options['id'], 'pType'=>PAGE_CHART, 'pParam'=>$_params);
} elseif ($dpParams['type'][$d] == "report")
{
include_once('classes/reportpage.php');
$strTableName = $dpParams['strTableNames'][$d];
$options = array();
//array of params for classes
$options["xt"] = new Xtempl( true ); //#9607 1. Temporary fix
$options["mode"] = LIST_DETAILS;
$options["pageType"] = PAGE_REPORT;
$options["masterPageType"] = PAGE_VIEW;
$options["mainMasterPageType"] = PAGE_VIEW;
$options['masterTable'] = "fpi_reg";
$options['firstTime'] = 1;
$options['tName'] = $strTableName;
$options['id'] = $dpParams['ids'][$d];
$options['flyId'] = $pageObject->genId()+1;
$options['shortTableName'] = GetTableURL($strTableName);
include_once("include/".GetTableURL($strTableName)."_settings.php");
if(!CheckSecurity(@$_SESSION["_".$strTableName."_OwnerID"],"Search"))
{
$strTableName = "fpi_reg";
continue;
}
$layout = GetPageLayout(GoodFieldName($strTableName), PAGE_REPORT);
if($layout)
{
$pageObject->AddCSSFile($layout->getCSSFiles(isRTL(), isMobile()));
}
$mkr = 1;
$masterkey = '';
foreach($mKeys[$strTableName] as $mk)
{
$options['masterKeysReq'][$mkr++] = $data[$mk];
$masterkey .= $data[$mk];
}
$options["pageSize"] = $_SESSION[$strTableName."_pagesize"];
$options["masterkey"] = $masterkey;
$options["crosstable_refresh"] = postvalue("crosstable_refresh");
$reportPageObject = new ReportPage($options);
$reportPageObject->init();
$reportPageObject->prepareDetailForEditViewPage($dpParams['params'][$d]);
//add detail settings to master settings
$reportPageObject->addControlsJSAndCSS();
$reportPageObject->fillSetCntrlMaps();
$pageObject->jsSettings['tableSettings'][$strTableName] = $reportPageObject->jsSettings['tableSettings'][$strTableName];
$dControlsMap[$strTableName] = $reportPageObject->controlsMap;
$dViewControlsMap[$strTableName] = $reportPageObject->viewControlsMap;
foreach($reportPageObject->jsSettings['global']['shortTNames'] as $keySet=>$val)
{
if(!array_key_exists($keySet,$pageObject->settingsMap["globalSettings"]['shortTNames']))
$pageObject->settingsMap["globalSettings"]['shortTNames'][$keySet] = $val;
}
//Add detail's js files to master's files
$pageObject->copyAllJSFiles($reportPageObject->grabAllJSFiles());
//Add detail's css files to master's files
$pageObject->copyAllCSSFiles($reportPageObject->grabAllCSSFiles());
$xt->assign("details_".GoodFieldName($reportPageObject->tName), true);
$xtParams = array("params" => $reportPageObject->templatefile);
AssignMethod($xtParams, 'showPageDp', $reportPageObject);
$xt->assign("displayDetailTable_".GoodFieldName($reportPageObject->tName), $xtParams);
$pageObject->controlsMap['dpTablesParams'][] = array('tName'=>$strTableName, 'id'=>$options['id'], 'pType'=>PAGE_REPORT);
} else {
$options = array();
//array of params for classes
$options["mode"] = LIST_DETAILS;
$options["pageType"] = PAGE_LIST;
$options["masterPageType"] = PAGE_EDIT;
$options["mainMasterPageType"] = PAGE_EDIT;
$options['masterTable'] = "fpi_reg";
$options['firstTime'] = 1;
$strTableName = $dpParams['strTableNames'][$d];
if(!CheckSecurity(@$_SESSION["_".$strTableName."_OwnerID"],"Search")){
$strTableName = "fpi_reg";
continue;
}
include_once("include/".GetTableURL($strTableName)."_settings.php");
$layout = GetPageLayout(GoodFieldName($strTableName), PAGE_LIST);
if($layout)
{
$pageObject->AddCSSFile($layout->getCSSFiles(isRTL(), isMobile()));
}
$options['xt'] = new Xtempl( true ); //#9607 1. Temporary fix
$options['id'] = $dpParams['ids'][$d];
$options['flyId'] = $pageObject->flyId++;
$masterKeys = array();
$mkr = 1;
$options['masterKeysReq'] = array();
foreach($mKeys[$strTableName] as $mk){
$options['masterKeysReq'][$mkr] = $data[$mk];
$masterKeys['masterKey'.$mkr] = $data[$mk];
$mkr++;
}
$listPageObject = ListPage::createListPage($strTableName, $options);
// prepare code
$listPageObject->prepareForBuildPage();
// show page
if($listPageObject->isDispGrid())
{
//set page events
foreach($listPageObject->eventsObject->events as $event => $name)
$listPageObject->xt->assign_event($event, $listPageObject->eventsObject, $event, array());
//add detail settings to master settings
$listPageObject->addControlsJSAndCSS();
$listPageObject->fillSetCntrlMaps();
$pageObject->jsSettings['tableSettings'][$strTableName] = $listPageObject->jsSettings['tableSettings'][$strTableName];
foreach($listPageObject->jsSettings["global"]["shortTNames"] as $tName => $shortTName){
$pageObject->settingsMap["globalSettings"]["shortTNames"][$tName] = $shortTName;
}
$dControlsMap[$strTableName] = $listPageObject->controlsMap;
$dControlsMap[$strTableName]['masterKeys'] = $masterKeys;
$dViewControlsMap[$strTableName] = $listPageObject->viewControlsMap;
//Add detail's js files to master's files
$pageObject->copyAllJSFiles($listPageObject->grabAllJSFiles());
//Add detail's css files to master's files
$pageObject->copyAllCSSFiles($listPageObject->grabAllCSSFiles());
$xt->assign("details_".GoodFieldName($listPageObject->tName), true);
$xtParams = array("params" => false);
AssignMethod($xtParams, 'showPage', $listPageObject);
$xt->assign("displayDetailTable_".GoodFieldName($listPageObject->tName), $xtParams);
$pageObject->controlsMap['dpTablesParams'][] = array('tName'=>$strTableName, 'id'=>$options['id'], 'pType'=>PAGE_LIST);
}
$pageObject->flyId = $listPageObject->recId+1;
}
}
$pageObject->controlsMap['dControlsMap'] = $dControlsMap;
$pageObject->viewControlsMap['dViewControlsMap'] = $dViewControlsMap;
$strTableName = "fpi_reg";
}
/////////////////////////////////////////////////////////////
//fill jsSettings and ControlsHTMLMap
$pageObject->fillSetCntrlMaps();
$pageObject->addCommonJs();
if($inlineedit == EDIT_SIMPLE)
{
// assign body end
$pageObject->body['end'] = array();
AssignMethod($pageObject->body['end'], "assignBodyEnd", $pageObject);
$xt->assign("flybody", true);
$xt->assign("body", $pageObject->body);
$pageObject->assignFormFooterAndHeaderBricks( true );
}
if($inlineedit == EDIT_POPUP)
{
$xt->assign("footer",false);
$xt->assign("header",false);
$xt->assign("body",$pageObject->body);
}
$xt->assign("style_block",true);
$viewlink = "";
$viewkeys = array();
$viewkeys["editid1"] = postvalue("editid1");
foreach($viewkeys as $key => $val)
{
if($viewlink)
$viewlink.="&";
$viewlink.=$key."=".$val;
}
$xt->assign("viewlink_attrs","id=\"viewButton".$id."\" name=\"viewButton"
.$id."\" onclick=\"window.location.href='".GetTableLink("fpi_reg", "view", $viewlink)."'\"");
if(CheckSecurity(@$_SESSION["_".$strTableName."_OwnerID"],"Search") && $inlineedit == EDIT_SIMPLE)
$xt->assign("view_button",true);
else
$xt->assign("view_button",false);
/////////////////////////////////////////////////////////////
//display the page
/////////////////////////////////////////////////////////////
if($eventObj->exists("BeforeShowEdit"))
$eventObj->BeforeShowEdit($xt,$templatefile,$data, $pageObject);
if($inlineedit != EDIT_SIMPLE)
{
$returnJSON['controlsMap'] = $pageObject->controlsHTMLMap;
$returnJSON['viewControlsMap'] = $pageObject->viewControlsHTMLMap;
$returnJSON['settings'] = $pageObject->jsSettings;
}
if($inlineedit == EDIT_POPUP || $inlineedit == EDIT_INLINE)
{
if($globalEvents->exists("IsRecordEditable", $strTableName))
{
if(!$globalEvents->IsRecordEditable($data, true, $strTableName))
return SecurityRedirect($inlineedit);
}
}
if($inlineedit == EDIT_POPUP)
{
$pageObject->displayAJAX($templatefile, $pageObject->flyId + 1);
exit(); // .net compatibility
}
elseif($inlineedit == EDIT_INLINE)
{
$xt->load_template($templatefile);
$returnJSON["html"] = array();
foreach($controlFields as $fName)
{
if($detailKeys && in_array($fName, $detailKeys))
continue;
$returnJSON["html"][$fName] = $xt->fetchVar(GoodFieldName($fName)."_editcontrol");
}
$returnJSON["additionalJS"] = $pageObject->grabAllJsFiles();
$returnJSON["additionalCSS"] = $pageObject->grabAllCSSFiles();
echo printJSON($returnJSON);
exit(); // .net compatibility
}
else
$pageObject->display($templatefile);
function SecurityRedirect($inlineedit)
{
if($inlineedit == EDIT_INLINE)
{
echo printJSON(array("success" => false, "message" => mlang_message("RECORD_ISNOT_EDITABLE")));
return;
}
$_SESSION["MyURL"]=$_SERVER["SCRIPT_NAME"]."?".$_SERVER["QUERY_STRING"];
HeaderRedirect("menu", "message=expired");
}
?>