function RequestFileUpload($_user, $_chat, $_filename, $response = "") { $fileid = md5(IOStruct::GetNamebase($_filename) . $_chat->UserId . $_chat->BrowserId); $filemask = $_chat->UserId . "_" . $fileid; $fileurid = EX_FILE_UPLOAD_REQUEST . "_" . $fileid; $request = new FileUploadRequest($fileurid, $_chat->DesiredChatPartner, $_chat->ChatId); $request->SenderUserId = $_chat->UserId; $request->FileName = htmlentities(IOStruct::GetNamebase($_filename)); $request->FileMask = $filemask; $request->FileId = $fileid; $request->SenderBrowserId = $_chat->BrowserId; $request->Load(); if (!$request->FirstCall && !$request->Closed) { if ($request->Permission == PERMISSION_FULL) { $response .= "lz_chat_file_start_upload();"; } else { if ($request->Permission == PERMISSION_NONE) { $response .= "lz_chat_file_stop(true);"; $response .= "lz_chat_file_error(1);"; $request->Close(); } } } else { $request->FirstCall = true; $request->Error = false; $request->Closed = false; $request->Permission = PERMISSION_VOID; if (!IOStruct::IsValidUploadFile($_filename)) { $response .= "lz_chat_file_error(2);"; } else { $request->Save(); } } return $response; }
function AppendPostFile($_postKey, $_userId) { if (!empty($_FILES[$_postKey]) && true) { $filename = IOStruct::GetNamebase($_FILES[$_postKey]['name']); if (!IOStruct::IsValidUploadFile($filename)) { return $filename; } $fileId = getId(32); $fileurid = $_userId . "_" . $fileId; if (move_uploaded_file($_FILES[$_postKey]["tmp_name"], PATH_UPLOADS . $fileurid)) { KnowledgeBase::Process("SYSTEM", $fileId, $fileurid, 3, $filename, 0, 100, $_FILES[$_postKey]["size"]); $this->ApplyAttachment($fileId); return $filename; } } }