} else { $arError[] = array("id" => "bad_update", "text" => "Error!"); } } else { if ($arParams['AUTOSAVE']) { $arParams['AUTOSAVE']->Reset(); } } } elseif ($action == "send") { $USER_INFO = array(); if (!empty($_REQUEST["USER_ID"])) { if (intval($_REQUEST["USER_ID"]) > 0) { $USER_INFO = CForumUser::GetByUSER_ID($_REQUEST["USER_ID"]); } if (empty($USER_INFO)) { $USER_INFO = CForumUser::GetByLogin($_REQUEST["USER_ID"]); } if (empty($USER_INFO)) { $rUser = $USER->GetByID(intval($_REQUEST['USER_ID'])); if ($rUser && ($arUser = $rUser->Fetch())) { $arUserFields["USER_ID"] = intval($_REQUEST['USER_ID']); $USER_ID = CForumUser::Add($arUserFields); $USER_INFO = CForumUser::GetByUSER_ID($USER_ID); } } } if (empty($USER_INFO)) { $arError[] = array("id" => "bad_user_info", "text" => str_replace("##", htmlspecialcharsEx($_REQUEST["USER_ID"]), GetMessage("PM_USER_NOT_FOUND"))); } else { $arrVars = array("AUTHOR_ID" => $USER->GetID(), "POST_SUBJ" => $_REQUEST["POST_SUBJ"], "POST_MESSAGE" => $_REQUEST["POST_MESSAGE"], "USE_SMILES" => $_REQUEST["USE_SMILES"], "USER_ID" => $USER_INFO["USER_ID"], "COPY_TO_OUTBOX" => $_REQUEST["COPY_TO_OUTBOX"], "REQUEST_IS_READ" => $_REQUEST["REQUEST_IS_READ"]); $arParams["MID"] = CForumPrivateMessage::Send($arrVars);