mirror of
https://github.com/ONLYOFFICE/desktop-sdk.git
synced 2026-03-31 10:23:12 +08:00
483 lines
66 KiB
C++
483 lines
66 KiB
C++
/*
|
|
* (c) Copyright Ascensio System SIA 2010-2016
|
|
*
|
|
* This program is a free software product. You can redistribute it and/or
|
|
* modify it under the terms of the GNU Affero General Public License (AGPL)
|
|
* version 3 as published by the Free Software Foundation. In accordance with
|
|
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
|
|
* that Ascensio System SIA expressly excludes the warranty of non-infringement
|
|
* of any third-party rights.
|
|
*
|
|
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
|
|
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
|
|
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
|
|
*
|
|
* You can contact Ascensio System SIA at Lubanas st. 125a-25, Riga, Latvia,
|
|
* EU, LV-1021.
|
|
*
|
|
* The interactive user interfaces in modified source and object code versions
|
|
* of the Program must display Appropriate Legal Notices, as required under
|
|
* Section 5 of the GNU AGPL version 3.
|
|
*
|
|
* Pursuant to Section 7(b) of the License you must retain the original Product
|
|
* logo when distributing the program. Pursuant to Section 7(e) we decline to
|
|
* grant you any rights under trademark law for use of our trademarks.
|
|
*
|
|
* All the Product's GUI elements, including illustrations and icon sets, as
|
|
* well as technical writing content are licensed under the terms of the
|
|
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
|
|
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
|
|
*
|
|
*/
|
|
|
|
#include "cefclient/renderer/client_renderer.h"
|
|
|
|
#include <sstream>
|
|
#include <string>
|
|
#include <map>
|
|
|
|
#include "include/cef_dom.h"
|
|
#include "include/wrapper/cef_helpers.h"
|
|
#include "include/wrapper/cef_message_router.h"
|
|
|
|
#include "../../../core/DesktopEditor/common/File.h"
|
|
#include "../../../core/DesktopEditor/common/Directory.h"
|
|
#include "../../../core/DesktopEditor/raster/BgraFrame.h"
|
|
#include "../../../core/DesktopEditor/raster/ImageFileFormatChecker.h"
|
|
|
|
#include "./client_app.h"
|
|
#include "../../../ChromiumBasedEditors/lib/src/filedownloader.h"
|
|
|
|
//#define ASC_HTML_FILE_INTERNAL_LOG
|
|
|
|
namespace asc_client_renderer
|
|
{
|
|
class CAscEditorNativeV8Handler : public CefV8Handler
|
|
{
|
|
public:
|
|
std::wstring m_sDocumentPath;
|
|
std::map<std::wstring, std::wstring> m_mapImages;
|
|
|
|
bool* sync_command_check;
|
|
std::string m_sPasteFrameId;
|
|
|
|
CAscEditorNativeV8Handler()
|
|
{
|
|
m_sDocumentPath = L"";
|
|
sync_command_check = NULL;
|
|
}
|
|
|
|
std::wstring GetImagePath(const std::wstring& sUrl, bool bIsBase64 = false)
|
|
{
|
|
std::map<std::wstring, std::wstring>::iterator iter = m_mapImages.find(sUrl);
|
|
if (iter != m_mapImages.end())
|
|
{
|
|
return iter->second;
|
|
}
|
|
|
|
std::wstring sTmpPath = L"";
|
|
if (CFileDownloader::IsNeedDownload(sUrl))
|
|
{
|
|
CFileDownloader oDownloader(sUrl, false);
|
|
oDownloader.Start( 0 );
|
|
while ( oDownloader.IsRunned() )
|
|
{
|
|
NSThreads::Sleep( 10 );
|
|
}
|
|
if ( oDownloader.IsFileDownloaded() )
|
|
{
|
|
sTmpPath = oDownloader.GetFilePath();
|
|
}
|
|
else
|
|
{
|
|
std::wstring strFileName = oDownloader.GetFilePath();
|
|
NSFile::CFileBinary::Remove(strFileName);
|
|
}
|
|
}
|
|
else if (bIsBase64)
|
|
{
|
|
std::wstring::size_type nBase64Start = sUrl.find(L"base64,");
|
|
if (nBase64Start != std::wstring::npos)
|
|
{
|
|
int nStartIndex = nBase64Start + 7;
|
|
int nCount = sUrl.length() - nStartIndex;
|
|
char* pData = new char[nCount];
|
|
const wchar_t* pDataSrc = sUrl.c_str();
|
|
for (int i = 0; i < nCount; ++i)
|
|
pData[i] = pDataSrc[i + nStartIndex];
|
|
|
|
BYTE* pDataDecode = NULL;
|
|
int nLenDecode = 0;
|
|
NSFile::CBase64Converter::Decode(pData, nCount, pDataDecode, nLenDecode);
|
|
|
|
RELEASEARRAYOBJECTS(pData);
|
|
|
|
sTmpPath = NSFile::CFileBinary::CreateTempFileWithUniqueName(NSFile::CFileBinary::GetTempPath(), L"IMG");
|
|
if (NSFile::CFileBinary::Exists(sTmpPath))
|
|
NSFile::CFileBinary::Remove(sTmpPath);
|
|
|
|
NSFile::CFileBinary oFile;
|
|
if (oFile.CreateFileW(sTmpPath))
|
|
{
|
|
oFile.WriteFile(pDataDecode, (DWORD)nLenDecode);
|
|
oFile.CloseFile();
|
|
}
|
|
|
|
RELEASEARRAYOBJECTS(pDataDecode);
|
|
}
|
|
}
|
|
|
|
CImageFileFormatChecker oChecker;
|
|
std::wstring sNoConst = sTmpPath.empty() ? sUrl : sTmpPath;
|
|
bool bIsPNG = oChecker.isPngFile(sNoConst);
|
|
|
|
CBgraFrame oFrame;
|
|
bool bIsOpen = oFrame.OpenFile(sNoConst);
|
|
|
|
std::wstring sDst = L"image" + std::to_wstring((int)(m_mapImages.size() + 1)) + (bIsPNG ? L".png" : L".jpg");
|
|
|
|
if (bIsOpen)
|
|
oFrame.SaveFile(m_sDocumentPath + L"/media/" + sDst, bIsPNG ? 4 : 3);
|
|
|
|
m_mapImages.insert(std::pair<std::wstring, std::wstring>(sUrl, sDst));
|
|
|
|
if (!sTmpPath.empty())
|
|
NSFile::CFileBinary::Remove(sTmpPath);
|
|
|
|
return sDst;
|
|
}
|
|
|
|
virtual bool Execute(const CefString& name,
|
|
CefRefPtr<CefV8Value> object,
|
|
const CefV8ValueList& arguments,
|
|
CefRefPtr<CefV8Value>& retval,
|
|
CefString& exception) OVERRIDE
|
|
{
|
|
if (name == "InitSDK")
|
|
{
|
|
std::string sDivId = "editor_sdk";
|
|
CefRefPtr<CefV8Value> val = *arguments.begin();
|
|
if (val->IsValid() && val->IsString())
|
|
{
|
|
sDivId = val->GetStringValue().ToString();
|
|
}
|
|
|
|
std::string sCode = "var _asc_sdk_value = new window.asc_docs_api({'id-view':\"" + sDivId + "\" });window.editor.CreateComponents();";
|
|
|
|
CefRefPtr<CefFrame> _frame = CefV8Context::GetCurrentContext()->GetFrame();
|
|
_frame->ExecuteJavaScript(sCode, _frame->GetURL(), 0);
|
|
return true;
|
|
}
|
|
else if (name == "OpenEmptyDocument")
|
|
{
|
|
std::string sEmptyDocument = "DOCY;v5;36996;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";
|
|
sEmptyDocument += "AAAABgAAAAAFAAAAAAYGAAAAAgYAAAAAAEEAAAABAQAAAAICAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGBgAAAAIGAAAAAABBAAAAAQEAAAADAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABgYAAAACBgAAAAAAQQAAAAEBAAAABAIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYGAAAAAgYAAAAAAEEAAAABAQAAAAUCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGBgAAAAIGAAAAAABBAAAAAQEAAAAGAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABgYAAAACBgAAAAAAQQAAAAEBAAAABwIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYGAAAAAgYAAAAAAEEAAAABAQAAAAkCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGBgAAAAIGAAAAAABBAAAAAQEAAAAIAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABgYAAAACBgAAAAAAQQAAAAEBAAAACwIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYGAAAAAgYAAAAAAEEAAAABAQAAAAoCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGBgAAAAIGAAAAAABBAAAAAQEAAAAMAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABgYAAAACBgAAAAAAnAQAAAEEAAAAMwAwAAIKAAAATABpAG4AZQBkAAkBAAAABAMEAAAAYQAxAAsEAAAAYwAAAAUAAAAABhsAAAAJBg8AAAAKBaCGAQALAQENBQAAAAAbBgAAAAAHSwAAAAMEAAAAAAAAAAU4AAAAAAkAAAAAAQACBAEAAAABCQAAAAABAAIEAAAAAAIJAAAAAAEAAgQBAAAAAwkAAAAAAQACBAAAAAAGAAAAAA8AAAAAEAYAAAACBgAAAAAR4gMAAABBAAAAAQEAAAAAAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABgYAAAACBgAAAAAAQQAAAAEBAAAAAQIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYGAAAAAgYAAAAAAE8AAAABAQAAAAICAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGFAAAAAEGCAAAAAABAAED2dnZAgYAAAAAAE8AAAABAQAAAAMCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGFAAAAAEGCAAAAAABAAED2dnZAgYAAAAAAE8AAAABAQAAAAQCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGFAAAAAEGCAAAAAABAAEDpqamAgYAAAAAAE8AAAABAQAAAAUCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGFAAAAAEGCAAAAAABAAEDpqamAgYAAAAAAE8AAAABAQAAAAYCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGFAAAAAEGCAAAAAABAAEDpqamAgYAAAAAAE8AAAABAQAAAAcCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGFAAAAAEGCAAAAAABAAEDpqamAgYAAAAAAEEAAAABAQAAAAkCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGBgAAAAIGAAAAAABBAAAAAQEAAAAIAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABgYAAAACBgAAAAAAQQAAAAEBAAAACwIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYGAAAAAgYAAAAAAEEAAAABAQAAAAoCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGBgAAAAIGAAAAAABBAAAAAQEAAAAMAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABgYAAAACBgAAAAAAsgQAAAEEAAAAMwAxAAIgAAAATABpAG4AZQBkACAALQAgAEEAYwBjAGUAbgB0ACAAMQAJAQAAAAQDBAAAAGEAMQALBAAAAGMAAAAFAAAAAAYbAAAACQYPAAAACgWghgEACwEBDQUAAAAAGwYAAAAAB0sAAAADBAAAAAAAAAAFOAAAAAAJAAAAAAEAAgQBAAAAAQkAAAAAAQACBAAAAAACCQAAAAABAAIEAQAAAAMJAAAAAAEAAgQAAAAABgAAAAAPAAAAABAGAAAAAgYAAAAAEeIDAAAAQQAAAAEBAAAAAAIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYGAAAAAgYAAAAAAEEAAAABAQAAAAECAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGBgAAAAIGAAAAAABPAAAAAQEAAAACAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABhQAAAABBggAAAAAAQABA9vl8QIGAAAAAABPAAAAAQEAAAADAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABhQAAAABBggAAAAAAQABA9vl8QIGAAAAAABPAAAAAQEAAAAEAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABhQAAAABBggAAAAAAQABA5Wz1wIGAAAAAABPAAAAAQEAAAAFAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABhQAAAABBggAAAAAAQABA5Wz1wIGAAAAAABPAAAAAQEAAAAGAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABhQAAAABBggAAAAAAQABA5Wz1wIGAAAAAABPAAAAAQEAAAAHAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABhQAAAABBggAAAAAAQABA5Wz1wIGAAAAAABBAAAAAQEAAAAJAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABgYAAAACBgAAAAAAQQAAAAEBAAAACAIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYGAAAAAgYAAAAAAEEAAAABAQAAAAsCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGBgAAAAIGAAAAAABBAAAAAQEAAAAKAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABgYAAAACBgAAAAAAQQAAAAEBAAAADAIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYGAAAAAgYAAAAAALIEAAABBAAAADMAMgACIAAAAEwAaQBuAGUAZAAgAC0AIABBAGMAYwBlAG4AdAAgADIACQEAAAAEAwQAAABhADEACwQAAABjAAAABQAAAAAGGwAAAAkGDwAAAAoFoIYBAAsBAQ0FAAAAABsGAAAAAAdLAAAAAwQAAAAAAAAABTgAAAAACQAAAAABAAIEAQAAAAEJAAAAAAEAAgQAAAAAAgkAAAAAAQACBAEAAAADCQAAAAABAAIEAAAAAAYAAAAADwAAAAAQBgAAAAIGAAAAABHiAwAAAEEAAAABAQAAAAACAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGBgAAAAIGAAAAAABBAAAAAQEAAAABAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABgYAAAACBgAAAAAATwAAAAEBAAAAAgIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYUAAAAAQYIAAAAAAEAAQPy29sCBgAAAAAATwAAAAEBAAAAAwIAAAAAAxIAAAABBgAAAAAJBgA";
|
|
sEmptyDocument += "AAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYUAAAAAQYIAAAAAAEAAQPy29sCBgAAAAAATwAAAAEBAAAABAIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYUAAAAAQYIAAAAAAEAAQPZlZQCBgAAAAAATwAAAAEBAAAABQIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYUAAAAAQYIAAAAAAEAAQPZlZQCBgAAAAAATwAAAAEBAAAABgIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYUAAAAAQYIAAAAAAEAAQPZlZQCBgAAAAAATwAAAAEBAAAABwIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYUAAAAAQYIAAAAAAEAAQPZlZQCBgAAAAAAQQAAAAEBAAAACQIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYGAAAAAgYAAAAAAEEAAAABAQAAAAgCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGBgAAAAIGAAAAAABBAAAAAQEAAAALAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABgYAAAACBgAAAAAAQQAAAAEBAAAACgIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYGAAAAAgYAAAAAAEEAAAABAQAAAAwCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGBgAAAAIGAAAAAACyBAAAAQQAAAAzADMAAiAAAABMAGkAbgBlAGQAIAAtACAAQQBjAGMAZQBuAHQAIAAzAAkBAAAABAMEAAAAYQAxAAsEAAAAYwAAAAUAAAAABhsAAAAJBg8AAAAKBaCGAQALAQENBQAAAAAbBgAAAAAHSwAAAAMEAAAAAAAAAAU4AAAAAAkAAAAAAQACBAEAAAABCQAAAAABAAIEAAAAAAIJAAAAAAEAAgQBAAAAAwkAAAAAAQACBAAAAAAGAAAAAA8AAAAAEAYAAAACBgAAAAAR4gMAAABBAAAAAQEAAAAAAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABgYAAAACBgAAAAAAQQAAAAEBAAAAAQIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYGAAAAAgYAAAAAAE8AAAABAQAAAAICAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGFAAAAAEGCAAAAAABAAED6vHdAgYAAAAAAE8AAAABAQAAAAMCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGFAAAAAEGCAAAAAABAAED6vHdAgYAAAAAAE8AAAABAQAAAAQCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGFAAAAAEGCAAAAAABAAEDwtabAgYAAAAAAE8AAAABAQAAAAUCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGFAAAAAEGCAAAAAABAAEDwtabAgYAAAAAAE8AAAABAQAAAAYCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGFAAAAAEGCAAAAAABAAEDwtabAgYAAAAAAE8AAAABAQAAAAcCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGFAAAAAEGCAAAAAABAAEDwtabAgYAAAAAAEEAAAABAQAAAAkCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGBgAAAAIGAAAAAABBAAAAAQEAAAAIAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABgYAAAACBgAAAAAAQQAAAAEBAAAACwIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYGAAAAAgYAAAAAAEEAAAABAQAAAAoCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGBgAAAAIGAAAAAABBAAAAAQEAAAAMAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABgYAAAACBgAAAAAAsgQAAAEEAAAAMwA0AAIgAAAATABpAG4AZQBkACAALQAgAEEAYwBjAGUAbgB0ACAANAAJAQAAAAQDBAAAAGEAMQALBAAAAGMAAAAFAAAAAAYbAAAACQYPAAAACgWghgEACwEBDQUAAAAAGwYAAAAAB0sAAAADBAAAAAAAAAAFOAAAAAAJAAAAAAEAAgQBAAAAAQkAAAAAAQACBAAAAAACCQAAAAABAAIEAQAAAAMJAAAAAAEAAgQAAAAABgAAAAAPAAAAABAGAAAAAgYAAAAAEeIDAAAAQQAAAAEBAAAAAAIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYGAAAAAgYAAAAAAEEAAAABAQAAAAECAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGBgAAAAIGAAAAAABPAAAAAQEAAAACAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABhQAAAABBggAAAAAAQABA+Xf7AIGAAAAAABPAAAAAQEAAAADAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABhQAAAABBggAAAAAAQABA+Xf7AIGAAAAAABPAAAAAQEAAAAEAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABhQAAAABBggAAAAAAQABA7KhxwIGAAAAAABPAAAAAQEAAAAFAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABhQAAAABBggAAAAAAQABA7KhxwIGAAAAAABPAAAAAQEAAAAGAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABhQAAAABBggAAAAAAQABA7KhxwIGAAAAAABPAAAAAQEAAAAHAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABhQAAAABBggAAAAAAQABA7KhxwIGAAAAAABBAAAAAQEAAAAJAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABgYAAAACBgAAAAAAQQAAAAEBAAAACAIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYGAAAAAgYAAAAAAEEAAAABAQAAAAsCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGBgAAAAIGAAAAAABBAAAAAQEAAAAKAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABgYAAAACBgAAAAAAQQAAAAEBAAAADAIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYGAAAAAgYAAAAAALIEAAABBAAAADMANQACIAAAAEwAaQBuAGUAZAAgAC0AIABBAGMAYwBlAG4AdAAgADUACQEAAAAEAwQAAABhADEACwQAAABjAAAABQAAAAAGGwAAAAkGDwAAAAoFoIYBAAsBAQ0FAAAAABsGAAAAAAdLAAAAAwQAAAAAAAAABTgAAAAACQAAAAABAAIEAQAAAAEJAAAAAAEAAgQAAAAAAgkAAAAAAQACBAEAAAADCQAAAAABAAIEAAAAAAYAAAAADwAAAAAQBgAAAAIGAAAAABHiAwAAAEEAAAABAQAAAAACAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGBgAAAAIGAAAAAABBAAAAAQEAAAABAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABgYAAAACBgAAAAAATwAAAAEBAAAAAgIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYUAAAAAQYIAAAAAAEAAQPa7vMCBgAAAAAATwAAAAEBAAAAAwIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYUAAA";
|
|
sEmptyDocument += "AAQYIAAAAAAEAAQPa7vMCBgAAAAAATwAAAAEBAAAABAIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYUAAAAAQYIAAAAAAEAAQOSzdwCBgAAAAAATwAAAAEBAAAABQIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYUAAAAAQYIAAAAAAEAAQOSzdwCBgAAAAAATwAAAAEBAAAABgIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYUAAAAAQYIAAAAAAEAAQOSzdwCBgAAAAAATwAAAAEBAAAABwIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYUAAAAAQYIAAAAAAEAAQOSzdwCBgAAAAAAQQAAAAEBAAAACQIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYGAAAAAgYAAAAAAEEAAAABAQAAAAgCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGBgAAAAIGAAAAAABBAAAAAQEAAAALAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABgYAAAACBgAAAAAAQQAAAAEBAAAACgIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYGAAAAAgYAAAAAAEEAAAABAQAAAAwCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGBgAAAAIGAAAAAACyBAAAAQQAAAAzADYAAiAAAABMAGkAbgBlAGQAIAAtACAAQQBjAGMAZQBuAHQAIAA2AAkBAAAABAMEAAAAYQAxAAsEAAAAYwAAAAUAAAAABhsAAAAJBg8AAAAKBaCGAQALAQENBQAAAAAbBgAAAAAHSwAAAAMEAAAAAAAAAAU4AAAAAAkAAAAAAQACBAEAAAABCQAAAAABAAIEAAAAAAIJAAAAAAEAAgQBAAAAAwkAAAAAAQACBAAAAAAGAAAAAA8AAAAAEAYAAAACBgAAAAAR4gMAAABBAAAAAQEAAAAAAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABgYAAAACBgAAAAAAQQAAAAEBAAAAAQIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYGAAAAAgYAAAAAAE8AAAABAQAAAAICAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGFAAAAAEGCAAAAAABAAED/enpAgYAAAAAAE8AAAABAQAAAAMCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGFAAAAAEGCAAAAAABAAED/enpAgYAAAAAAE8AAAABAQAAAAQCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGFAAAAAEGCAAAAAABAAED+r+PAgYAAAAAAE8AAAABAQAAAAUCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGFAAAAAEGCAAAAAABAAED+r+PAgYAAAAAAE8AAAABAQAAAAYCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGFAAAAAEGCAAAAAABAAED+r+PAgYAAAAAAE8AAAABAQAAAAcCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGFAAAAAEGCAAAAAABAAED+r+PAgYAAAAAAEEAAAABAQAAAAkCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGBgAAAAIGAAAAAABBAAAAAQEAAAAIAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABgYAAAACBgAAAAAAQQAAAAEBAAAACwIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYGAAAAAgYAAAAAAEEAAAABAQAAAAoCAAAAAAMSAAAAAQYAAAA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";
|
|
sEmptyDocument += "AAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGBgAAAAIGAAAAAABBAAAAAQEAAAABAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABgYAAAACBgAAAAAAQQAAAAEBAAAAAgIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYGAAAAAgYAAAAAAEEAAAABAQAAAAMCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGBgAAAAIGAAAAAABaAAAAAQEAAAAEAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABh8AAAACBhkAAAACFAAAAAADNl+RAQUAAAAAAgUPNgEAAwEBAFoAAAABAQAAAAUCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGHwAAAAIGGQAAAAMUAAAAAAM2X5EBBQAAAAACBQ82AQADAQEAWgAAAAEBAAAABgIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYfAAAAAgYZAAAAABQAAAAAAzZfkQEFAAAAAAIFDzYBAAMBAQBaAAAAAQEAAAAHAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABh8AAAACBhkAAAABFAAAAAADNl+RAQUAAAAAAgUPNgEAAwEBAEEAAAABAQAAAAkCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGBgAAAAIGAAAAAABBAAAAAQEAAAAIAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABgYAAAACBgAAAAAAQQAAAAEBAAAACwIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYGAAAAAgYAAAAAAEEAAAABAQAAAAoCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAF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";
|
|
sEmptyDocument += "AABQAAAAAGAAAAAAUAAAAABgYAAAACBgAAAAAAQQAAAAEBAAAADAIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYGAAAAAgYAAAAAAF4FAAABBAAAADQAMQACJgAAAEIAbwByAGQAZQByAGUAZAAgAC0AIABBAGMAYwBlAG4AdAAgADQACQEAAAAEAwQAAABhADEACwQAAABjAAAABQAAAAAGGwAAAAkGDwAAAAoFoIYBAAsBAQ0FAAAAABsGAAAAAAfhAAAAAwQAAAAAAAAABTgAAAAACQAAAAABAAIEAQAAAAEJAAAAAAEAAgQAAAAAAgkAAAAAAQACBAEAAAADCQAAAAABAAIEAAAAAAaWAAAAABQAAAAAA8zA2QEFAAAAAAIF5kQAAAMBAQEUAAAAAAPMwNkBBQAAAAACBeZEAAADAQECFAAAAAADzMDZAQUAAAAAAgXmRAAAAwEBAxQAAAAAA8zA2QEFAAAAAAIF5kQAAAMBAQQUAAAAAAPMwNkBBQAAAAACBeZEAAADAQEFFAAAAAADzMDZAQUAAAAAAgXmRAAAAwEBDwAAAAAQBgAAAAIGAAAAABHyAwAAAEEAAAABAQAAAAACAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGBgAAAAIGAAAAAABBAAAAAQEAAAABAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABgYAAAACBgAAAAAAQQAAAAEBAAAAAgIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYGAAAAAgYAAAAAAEEAAAABAQAAAAMCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGBgAAAAIGAAAAAABaAAAAAQEAAAAEAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABh8AAAACBhkAAAACFAAAAAADX0l6AQUAAAAAAgUPNgEAAwEBAFoAAAABAQAAAAUCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGHwAAAAIGGQAAAAMUAAAAAANfSXoBBQAAAAACBQ82AQADAQEAWgAAAAEBAAAABgIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYfAAAAAgYZAAAAABQAAAAAA19JegEFAAAAAAIFDzYBAAMBAQBaAAAAAQEAAAAHAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABh8AAAACBhkAAAABFAAAAAADX0l6AQUAAAAAAgUPNgEAAwEBAEEAAAABAQAAAAkCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGBgAAAAIGAAAAAABBAAAAAQEAAAAIAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABgYAAAACBgAAAAAAQQAAAAEBAAAACwIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYGAAAAAgYAAAAAAEEAAAABAQAAAAoCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGBgAAAAIGAAAAAABBAAAAAQEAAAAMAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABgYAAAACBgAAAAAAXgUAAAEEAAAANAAyAAImAAAAQgBvAHIAZABlAHIAZQBkACAALQAgAEEAYwBjAGUAbgB0ACAANQAJAQAAAAQDBAAAAGEAMQALBAAAAGMAAAAFAAAAAAYbAAAACQYPAAAACgWghgEACwEBDQUAAAAAGwYAAAAAB+EAAAADBAAAAAAAAAAFOAAAAAAJAAAAAAEAAgQBAAAAAQkAAAAAAQACBAAAAAACCQAAAAABAAIEAQAAAAMJAAAAAAEAAgQAAAAABpYAAAAAFAAAAAADtt3oAQUAAAAAAgXmRAAAAwEBARQAAAAAA7bd6AEFAAAAAAIF5kQAAAMBAQIUAAAAAAO23egBBQAAAAACBeZEAAADAQEDFAAAAAADtt3oAQUAAAAAAgXmRAAAAwEBBBQAAAAAA7bd6AEFAAAAAAIF5kQAAAMBAQUUAAAAAAO23egBBQAAAAACBeZEAAADAQEPAAAAABAGAAAAAgYAAAAAEfIDAAAAQQAAAAEBAAAAAAIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYGAAAAAgYAAAAAAEEAAAABAQAAAAECAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGBgAAAAIGAAAAAABBAAAAAQEAAAACAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABgYAAAACBgAAAAAAQQAAAAEBAAAAAwIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYGAAAAAgYAAAAAAFoAAAABAQAAAAQCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGHwAAAAIGGQAAAAIUAAAAAAMxhJsBBQAAAAACBQ82AQADAQEAWgAAAAEBAAAABQIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYfAAAAAgYZAAAAAxQAAAAAAzGEmwEFAAAAAAIFDzYBAAMBAQBaAAAAAQEAAAAGAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABh8AAAACBhkAAAAAFAAAAAADMYSbAQUAAAAAAgUPNgEAAwEBAFoAAAABAQAAAAcCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGHwAAAAIGGQAAAAEUAAAAAAMxhJsBBQAAAAACBQ82AQADAQEAQQAAAAEBAAAACQIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYGAAAAAgYAAAAAAEEAAAABAQAAAAgCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGBgAAAAIGAAAAAABBAAAAAQEAAAALAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABgYAAAACBgAAAAAAQQAAAAEBAAAACgIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYGAAAAAgYAAAAAAEEAAAABAQAAAAwCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGBgAAAAIGAAAAAABeBQAAAQQAAAA0ADMAAiYAAABCAG8AcgBkAGUAcgBlAGQAIAAtACAAQQBjAGMAZQBuAHQAIAA2AAkBAAAABAMEAAAAYQAxAAsEAAAAYwAAAAUAAAAABhsAAAAJBg8AAAAKBaCGAQALAQENBQAAAAAbBgAAAAAH4QAAAAMEAAAAAAAAAAU4AAAAAAkAAAAAAQACBAEAAAABCQAAAAABAAIEAAAAAAIJAAAAAAEAAgQBAAAAAwkAAAAAAQACBAAAAAAGlgAAAAAUAAAAAAP71LQBBQAAAAACBeZEAAADAQEBFAAAAAAD+9S0AQUAAAAAAgXmRAAAAwEBAhQAAAAAA/vUtAEFAAAAAAIF5kQAAAMBAQMUAAAAAAP71LQBBQAAAAACBeZEAAADAQEEFAAAAAAD+9S0AQUAAAAAAgXmRAAAAwEBBRQAAAAAA/vUtAEFAAAAAAIF5kQAAAMBAQ8AAAAAEAYAAAACBgAAAAAR8gMAAABBAAAAAQEAAAAAAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABgYAAAACBgAAAAAAQQAAAAEBAAAAAQIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYGAAAAAgYAAAAAAEEAAAABAQAAAAICAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGBgAAAAIGAAAAAABBAAAAAQEAAAADAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABgYAAAACBgAAAAAAWgAAAAEBAAAABAIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYfAAAAAgYZAAAAAhQAAAAAA+NsCgEFAAAAAAIFDzYBAAMBAQBaAAAAAQEAAAAFAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAA";
|
|
sEmptyDocument += "AABh8AAAACBhkAAAADFAAAAAAD42wKAQUAAAAAAgUPNgEAAwEBAFoAAAABAQAAAAYCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGHwAAAAIGGQAAAAAUAAAAAAPjbAoBBQAAAAACBQ82AQADAQEAWgAAAAEBAAAABwIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYfAAAAAgYZAAAAARQAAAAAA+NsCgEFAAAAAAIFDzYBAAMBAQBBAAAAAQEAAAAJAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABgYAAAACBgAAAAAAQQAAAAEBAAAACAIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYGAAAAAgYAAAAAAEEAAAABAQAAAAsCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGBgAAAAIGAAAAAABBAAAAAQEAAAAKAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABgYAAAACBgAAAAAAQQAAAAEBAAAADAIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYGAAAAAgYAAAAAAEgFAAABBAAAADQANAACIAAAAEIAbwByAGQAZQByAGUAZAAgACYAIABMAGkAbgBlAGQACQEAAAAEAwQAAABhADEACwQAAABjAAAABQAAAAAGGwAAAAkGDwAAAAoFoIYBAAsBAQ0FAAAAABsGAAAAAAfhAAAAAwQAAAAAAAAABTgAAAAACQAAAAABAAIEAQAAAAEJAAAAAAEAAgQAAAAAAgkAAAAAAQACBAEAAAADCQAAAAABAAIEAAAAAAaWAAAAABQAAAAAAwAAAAEFAAAAAAIF5kQAAAMBAQEUAAAAAAMAAAABBQAAAAACBeZEAAADAQECFAAAAAADAAAAAQUAAAAAAgXmRAAAAwEBAxQAAAAAAwAAAAEFAAAAAAIF5kQAAAMBAQQUAAAAAAMAAAABBQAAAAACBeZEAAADAQEFFAAAAAADAAAAAQUAAAAAAgXmRAAAAwEBDwAAAAAQBgAAAAIGAAAAABHiAwAAAEEAAAABAQAAAAACAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGBgAAAAIGAAAAAABBAAAAAQEAAAABAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABgYAAAACBgAAAAAATwAAAAEBAAAAAgIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYUAAAAAQYIAAAAAAEAAQPZ2dkCBgAAAAAATwAAAAEBAAAAAwIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYUAAAAAQYIAAAAAAEAAQPZ2dkCBgAAAAAATwAAAAEBAAAABAIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYUAAAAAQYIAAAAAAEAAQOmpqYCBgAAAAAATwAAAAEBAAAABQIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYUAAAAAQYIAAAAAAEAAQOmpqYCBgAAAAAATwAAAAEBAAAABgIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYUAAAAAQYIAAAAAAEAAQOmpqYCBgAAAAAATwAAAAEBAAAABwIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYUAAAAAQYIAAAAAAEAAQOmpqYCBgAAAAAAQQAAAAEBAAAACQIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYGAAAAAgYAAAAAAEEAAAABAQAAAAgCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGBgAAAAIGAAAAAABBAAAAAQEAAAALAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABgYAAAACBgAAAAAAQQAAAA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";
|
|
sEmptyDocument += "AAA5Q2NAEFAAAAAAIF5kQAAAMBAQ8AAAAAEAYAAAACBgAAAAAR4gMAAABBAAAAAQEAAAAAAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABgYAAAACBgAAAAAAQQAAAAEBAAAAAQIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYGAAAAAgYAAAAAAE8AAAABAQAAAAICAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGFAAAAAEGCAAAAAABAAED8tvbAgYAAAAAAE8AAAABAQAAAAMCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGFAAAAAEGCAAAAAABAAED8tvbAgYAAAAAAE8AAAABAQAAAAQCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGFAAAAAEGCAAAAAABAAED2ZWUAgYAAAAAAE8AAAABAQAAAAUCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGFAAAAAEGCAAAAAABAAED2ZWUAgYAAAAAAE8AAAABAQAAAAYCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGFAAAAAEGCAAAAAABAAED2ZWUAgYAAAAAAE8AAAABAQAAAAcCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGFAAAAAEGCAAAAAABAAED2ZWUAgYAAAAAAEEAAAABAQAAAAkCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGBgAAAAIGAAAAAABBAAAAAQEAAAAIAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABgYAAAACBgAAAAAAQQAAAAEBAAAACwIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYGAAAAAgYAAAAAAEEAAA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";
|
|
sEmptyDocument += "AAQEAAAAKAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABgYAAAACBgAAAAAAQQAAAAEBAAAADAIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYGAAAAAgYAAAAAAF4FAAABBAAAADQAOQACNgAAAEIAbwByAGQAZQByAGUAZAAgACYAIABMAGkAbgBlAGQAIAAtACAAQQBjAGMAZQBuAHQAIAA1AAkBAAAABAMEAAAAYQAxAAsEAAAAYwAAAAUAAAAABhsAAAAJBg8AAAAKBaCGAQALAQENBQAAAAAbBgAAAAAH4QAAAAMEAAAAAAAAAAU4AAAAAAkAAAAAAQACBAEAAAABCQAAAAABAAIEAAAAAAIJAAAAAAEAAgQBAAAAAwkAAAAAAQACBAAAAAAGlgAAAAAUAAAAAAMxhJsBBQAAAAACBeZEAAADAQEBFAAAAAADMYSbAQUAAAAAAgXmRAAAAwEBAhQAAAAAAzGEmwEFAAAAAAIF5kQAAAMBAQMUAAAAAAMxhJsBBQAAAAACBeZEAAADAQEEFAAAAAADMYSbAQUAAAAAAgXmRAAAAwEBBRQAAAAAAzGEmwEFAAAAAAIF5kQAAAMBAQ8AAAAAEAYAAAACBgAAAAAR4gMAAABBAAAAAQEAAAAAAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABgYAAAACBgAAAAAAQQAAAAEBAAAAAQIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYGAAAAAgYAAAAAAE8AAAABAQAAAAICAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGFAAAAAEGCAAAAAABAAED2u7zAgYAAAAAAE8AAAABAQAAAAMCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGFAAAAAEGCAAAAAABAAED2u7zAgYAAAAAAE8AAAABAQAAAAQCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGFAAAAAEGCAAAAAABAAEDks3cAgYAAAAAAE8AAAABAQAAAAUCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGFAAAAAEGCAAAAAABAAEDks3cAgYAAAAAAE8AAAABAQAAAAYCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGFAAAAAEGCAAAAAABAAEDks3cAgYAAAAAAE8AAAABAQAAAAcCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGFAAAAAEGCAAAAAABAAEDks3cAgYAAAAAAEEAAAABAQAAAAkCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGBgAAAAIGAAAAAABBAAAAAQEAAAAIAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABgYAAAACBgAAAAAAQQAAAAEBAAAACwIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYGAAAAAgYAAAAAAEEAAAABAQAAAAoCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGBgAAAAIGAAAAAABBAAAAAQEAAAAMAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABgYAAAACBgAAAAAAXgUAAAEEAAAANQAwAAI2AAAAQgBvAHIAZABlAHIAZQBkACAAJgAgAEwAaQBuAGUAZAAgAC0AIABBAGMAYwBlAG4AdAAgADYACQEAAAAEAwQAAABhADEACwQAAABjAAAABQAAAAAGGwAAAAkGDwAAAAoFoIYBAAsBAQ0FAAAAABsGAAAAAAfhAAAAAwQAAAAAAAAABTgAAAAACQAAAAABAAIEAQAAAAEJAAAAAAEAAgQAAAAAAgkAAAAAAQACBAEAAAADCQAAAAABAAIEAAAAAAaWAAAAABQAAAAAA+NsCgEFAAAAAAIF5kQAAAMBAQEUAAAAAAPjbAoBBQAAAAACBeZEAAADAQECFAAAAAAD42wKAQUAAAAAAgXmRAAAAwEBAxQAAAAAA+NsCgEFAAAAAAIF5kQAAAMBAQQUAAAAAAPjbAoBBQAAAAACBeZEAAADAQEFFAAAAAAD42wKAQUAAAAAAgXmRAAAAwEBDwAAAAAQBgAAAAIGAAAAABHiAwAAAEEAAAABAQAAAAACAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGBgAAAAIGAAAAAABBAAAAAQEAAAABAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABgYAAAACBgAAAAAATwAAAAEBAAAAAgIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYUAAAAAQYIAAAAAAEAAQP96dkCBgAAAAAATwAAAAEBAAAAAwIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYUAAAAAQYIAAAAAAEAAQP96dkCBgAAAAAATwAAAAEBAAAABAIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYUAAAAAQYIAAAAAAEAAQP6v48CBgAAAAAATwAAAAEBAAAABQIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYUAAAAAQYIAAAAAAEAAQP6v48CBgAAAAAATwAAAAEBAAAABgIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYUAAAAAQYIAAAAAAEAAQP6v48CBgAAAAAATwAAAAEBAAAABwIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYUAAAAAQYIAAAAAAEAAQP6v48CBgAAAAAAQQAAAAEBAAAACQIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYGAAAAAgYAAAAAAEEAAAABAQAAAAgCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGBgAAAAIGAAAAAABBAAAAAQEAAAALAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABgYAAAACBgAAAAAAQQAAAAEBAAAACgIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYGAAAAAgYAAAAAAEEAAAABAQAAAAwCAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGBgAAAAIGAAAAAABiAAAAAQQAAAA1ADEAAhIAAABIAHkAcABlAHIAbABpAG4AawAJAQAAAAELBAAAAGMAAAAOAQAAAAEFEQAAAAIBAQkDAAD/HAYDAAAAAQELBhIAAAABBgAAAAAJBgAAAAAbBgAAAAAAdwAAAAEEAAAAOAA2AAIsAAAARABlAGYAYQB1AGwAdAAgAFAAYQByAGEAZwByAGEAcABoACAARgBvAG4AdAAJAQAAAAEIAQAAAAELBAAAAAEAAAANAQAAAAEOAQAAAAEFAAAAAAYSAAAAAQYAAAAACQYAAAAAGwYAAAAAAEYAAAABAgAAAGEAAgwAAABOAG8AcgBtAGEAbAAJAQAAAAMIAQAAAAEKAQAAAAEFAAAAAAYSAAAAAQYAAAAACQYAAAAAGwYAAAAAAFYEAAABBAAAAGEAMQACGAAAAE4AbwByAG0AYQBsACAAVABhAGIAbABlAAkBAAAABAgBAAAAAQsEAAAAYwAAAA0BAAAAAQ4BAAAAAQUAAAAABhIAAAABBgAAAAAJBgAAAAAbBgAAAAAHSwAAAAMEAAAAAAAAAAU4AAAAAAkAAAAAAQECBGwAAAABCQAAAAABAQIEAAAAAAIJAAAAAAEBAgRsAAAAAwkAAAAAAQECBAAAAAAGAAAAAA8AAAAAEAYAAAACBgAAAAARjgMAAABBAAAAAQEAAAAAAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAAAAAGAAAAAAUAAAAABgYAAAACBgAAAAAAQQAAAAEBAAAAAQIAAAAAAxIAAAABBgAAAAAJBgAAAAAbBgAAAAAECgAAAAUAAAAABgAAAAAFAAAAAAYGAAAAAgYAAAAAAEEAAAABAQAAAAICAAAAAAMSAAAAAQYAAAAACQYAAAAAGwYAAAAABAoAAAAFAAAAAAYAAAAABQAAAAAGBgAAAAIGAAAAAABBAAAAAQEAAAADAgAAAAADEgAAAAEGAAAAAAkGAAAAABsGAAAAAAQKAAAABQAA";
|
|
sEmptyDocument += "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";
|
|
sEmptyDocument += "GAAAAcwBhAHQATQBvAGQAATBXBQD7AG8AAAD6AECcAAD7AGMAAAADXgAAAPoADvsAVQAAAAMAAAABFAAAAPoABAAAAHQAaQBuAHQAAcivAAD7ARYAAAD6AAUAAABzAGgAYQBkAGUAAbiCAQD7ARgAAAD6AAYAAABzAGEAdABNAG8AZAABMFcFAPsAVgAAAPoAoIYBAPsASgAAAANFAAAA+gAO+wA8AAAAAgAAAAEWAAAA+gAFAAAAcwBoAGEAZABlAAEgTgAA+wEYAAAA+gAGAAAAcwBhAHQATQBvAGQAARjkAwD7AgQAAAD6AAD7AM0AAAAEyAAAAPr7ALgAAAACAAAAAFQAAAD6AAAAAAD7AEgAAAADQwAAAPoADvsAOgAAAAIAAAABFAAAAPoABAAAAHQAaQBuAHQAAYA4AQD7ARgAAAD6AAYAAABzAGEAdABNAG8AZAAB4JMEAPsAVgAAAPoAoIYBAPsASgAAAANFAAAA+gAO+wA8AAAAAgAAAAEWAAAA+gAFAAAAcwBoAGEAZABlAAEwdQAA+wEYAAAA+gAGAAAAcwBhAHQATQBvAGQAAUANAwD7AgQAAAD6AAD7BAQAAAAAAAAA";
|
|
std::string sCode = "window.editor.asc_nativeOpenFile(\"" + sEmptyDocument + "\");";
|
|
|
|
CefRefPtr<CefFrame> _frame = CefV8Context::GetCurrentContext()->GetFrame();
|
|
_frame->ExecuteJavaScript(sCode, _frame->GetURL(), 0);
|
|
return true;
|
|
}
|
|
else if (name == "SetDestinationDocumentPath")
|
|
{
|
|
CefRefPtr<CefV8Value> val = *arguments.begin();
|
|
if (val->IsValid() && val->IsString())
|
|
{
|
|
m_sDocumentPath = val->GetStringValue().ToWString();
|
|
}
|
|
|
|
NSDirectory::CreateDirectory(m_sDocumentPath + L"/media");
|
|
return true;
|
|
}
|
|
else if (name == "GetImageUrl")
|
|
{
|
|
std::vector<CefRefPtr<CefV8Value> >::const_iterator iter = arguments.begin();
|
|
|
|
std::wstring sUrl = (*iter)->GetStringValue().ToWString(); ++iter;
|
|
|
|
CefRefPtr<CefFrame> _frame = CefV8Context::GetCurrentContext()->GetBrowser()->GetFrame(m_sPasteFrameId);
|
|
if (!_frame)
|
|
_frame = CefV8Context::GetCurrentContext()->GetFrame();
|
|
|
|
std::wstring sUrlBase = _frame->GetURL().ToWString();
|
|
std::wstring sUrlFull = GetFullUrl(sUrl, sUrlBase);
|
|
|
|
bool bIsBase64 = false;
|
|
if (sUrl.find(L"data:") == 0)
|
|
{
|
|
std::wstring::size_type nPos = sUrl.find(L"base64");
|
|
if (nPos != std::wstring::npos && nPos < 20)
|
|
sUrlFull = sUrl;
|
|
bIsBase64 = true;
|
|
}
|
|
|
|
// delete file:///
|
|
if (0 == sUrlFull.find(L"file:///"))
|
|
{
|
|
if (NSFile::CFileBinary::Exists(sUrlFull.substr(7)))
|
|
sUrlFull = sUrlFull.substr(7);
|
|
else
|
|
sUrlFull = sUrlFull.substr(8);
|
|
}
|
|
else if (0 == sUrlFull.find(L"file:"))
|
|
sUrlFull = sUrlFull.substr(5);
|
|
|
|
std::wstring sReturn = GetImagePath(sUrlFull, bIsBase64);
|
|
|
|
retval = CefV8Value::CreateString(sReturn);
|
|
return true;
|
|
}
|
|
else if (name == "SaveDocument")
|
|
{
|
|
if (arguments.size() > 0)
|
|
{
|
|
CefRefPtr<CefV8Value> val = *arguments.begin();
|
|
if (val->IsValid() && val->IsString())
|
|
{
|
|
std::string sFile = val->GetStringValue().ToString();
|
|
NSFile::CFileBinary oFile;
|
|
oFile.CreateFileW(m_sDocumentPath + L"/Editor.bin");
|
|
|
|
#ifdef ASC_HTML_FILE_INTERNAL_LOG
|
|
int nnn = (int)sFile.length();
|
|
#endif
|
|
|
|
oFile.WriteFile((BYTE*)sFile.c_str(), (DWORD)sFile.length());
|
|
oFile.CloseFile();
|
|
|
|
#ifdef ASC_HTML_FILE_INTERNAL_LOG
|
|
std::string sLog = U_TO_UTF8((NSFile::GetProcessDirectory())) + "/convert.log";
|
|
FILE* f = fopen(sLog.c_str(), "a+");
|
|
fprintf(f, "SaveDocument: %d\n", (int)nnn);
|
|
fclose(f);
|
|
#endif
|
|
}
|
|
}
|
|
else
|
|
{
|
|
std::string sCode = "window.Native.SaveDocument(window.editor.asc_nativeGetFile());";
|
|
|
|
CefRefPtr<CefFrame> _frame = CefV8Context::GetCurrentContext()->GetFrame();
|
|
_frame->ExecuteJavaScript(sCode, _frame->GetURL(), 0);
|
|
return true;
|
|
}
|
|
|
|
return true;
|
|
}
|
|
else if (name == "Exit")
|
|
{
|
|
#ifdef ASC_HTML_FILE_INTERNAL_LOG
|
|
std::string sLog = U_TO_UTF8((NSFile::GetProcessDirectory())) + "/convert.log";
|
|
FILE* f = fopen(sLog.c_str(), "a+");
|
|
fprintf(f, "Exit\n");
|
|
fclose(f);
|
|
#endif
|
|
|
|
CefRefPtr<CefBrowser> browser = CefV8Context::GetCurrentContext()->GetBrowser();
|
|
|
|
CefRefPtr<CefProcessMessage> message = CefProcessMessage::Create("Exit");
|
|
browser->SendProcessMessage(PID_BROWSER, message);
|
|
|
|
return true;
|
|
}
|
|
else if (name == "AddHtml")
|
|
{
|
|
#ifdef ASC_HTML_FILE_INTERNAL_LOG
|
|
std::string sLog = U_TO_UTF8((NSFile::GetProcessDirectory())) + "/convert.log";
|
|
FILE* f = fopen(sLog.c_str(), "a+");
|
|
fprintf(f, "AddHtml\n");
|
|
fclose(f);
|
|
#endif
|
|
|
|
m_sPasteFrameId = "pasteFrame";
|
|
CefRefPtr<CefV8Value> val = *arguments.begin();
|
|
if (val->IsValid() && val->IsString())
|
|
{
|
|
m_sPasteFrameId = val->GetStringValue().ToString();
|
|
}
|
|
|
|
std::string sCode = "window.editor.asc_AddHtml(\"" + m_sPasteFrameId + "\");";
|
|
|
|
CefRefPtr<CefFrame> _frame = CefV8Context::GetCurrentContext()->GetFrame();
|
|
_frame->ExecuteJavaScript(sCode, _frame->GetURL(), 0);
|
|
return true;
|
|
}
|
|
// Function does not exist.
|
|
return false;
|
|
}
|
|
|
|
std::wstring GetFullUrl(const std::wstring& sUrl, const std::wstring& sBaseUrl)
|
|
{
|
|
std::wstring sUrlSrc = L"";
|
|
if (CFileDownloader::IsNeedDownload(sUrl))
|
|
{
|
|
sUrlSrc = sUrl;
|
|
}
|
|
else
|
|
{
|
|
if (0 == sUrl.find(wchar_t('/')))
|
|
{
|
|
// нужно брать корень сайта
|
|
int nPos = sBaseUrl.find(L"//");
|
|
if (nPos != std::wstring::npos)
|
|
{
|
|
nPos = sBaseUrl.find(wchar_t('/'), nPos + 3);
|
|
if (nPos != std::wstring::npos)
|
|
{
|
|
sUrlSrc = sBaseUrl.substr(0, nPos);
|
|
sUrlSrc += sUrl;
|
|
}
|
|
}
|
|
if (sUrlSrc.empty())
|
|
{
|
|
sUrlSrc = sBaseUrl;
|
|
sUrlSrc += (L"/" + sUrl);
|
|
}
|
|
}
|
|
else
|
|
{
|
|
// брать место урла
|
|
int nPos = sBaseUrl.find_last_of(wchar_t('/'));
|
|
if (std::wstring::npos != nPos)
|
|
{
|
|
sUrlSrc = sBaseUrl.substr(0, nPos);
|
|
}
|
|
else
|
|
{
|
|
sUrlSrc = sBaseUrl;
|
|
}
|
|
sUrlSrc += (L"/" + sUrl);
|
|
}
|
|
}
|
|
return sUrlSrc;
|
|
}
|
|
|
|
bool DownloadFile(const std::wstring& sUrl, const std::wstring& sDst, const std::wstring& sBaseUrl)
|
|
{
|
|
std::wstring sUrlSrc = GetFullUrl(sUrl, sBaseUrl);
|
|
|
|
CFileDownloader oDownloader(sUrlSrc, false);
|
|
oDownloader.SetFilePath(sDst);
|
|
oDownloader.Start( 0 );
|
|
while ( oDownloader.IsRunned() )
|
|
{
|
|
NSThreads::Sleep( 10 );
|
|
}
|
|
return oDownloader.IsFileDownloaded();
|
|
}
|
|
|
|
// Provide the reference counting implementation for this class.
|
|
IMPLEMENT_REFCOUNTING(CAscEditorNativeV8Handler);
|
|
};
|
|
|
|
class ClientRenderDelegate : public client::ClientAppRenderer::Delegate {
|
|
public:
|
|
ClientRenderDelegate()
|
|
: last_node_is_editable_(false)
|
|
{
|
|
sync_command_check = false;
|
|
}
|
|
|
|
virtual void OnWebKitInitialized(CefRefPtr<client::ClientAppRenderer> app) OVERRIDE {
|
|
// Create the renderer-side router for query handling.
|
|
CefMessageRouterConfig config;
|
|
message_router_ = CefMessageRouterRendererSide::Create(config);
|
|
}
|
|
|
|
virtual void OnContextCreated(CefRefPtr<client::ClientAppRenderer> app,
|
|
CefRefPtr<CefBrowser> browser,
|
|
CefRefPtr<CefFrame> frame,
|
|
CefRefPtr<CefV8Context> context) OVERRIDE {
|
|
message_router_->OnContextCreated(browser, frame, context);
|
|
|
|
// add AscEditorNative
|
|
CefRefPtr<CefV8Value> object = context->GetGlobal();
|
|
|
|
CefRefPtr<CefV8Value> objNative = CefV8Value::CreateObject(NULL);
|
|
CAscEditorNativeV8Handler* pNativeHandlerWrapper = new CAscEditorNativeV8Handler();
|
|
pNativeHandlerWrapper->sync_command_check = &sync_command_check;
|
|
|
|
CefRefPtr<CefV8Handler> _nativeHandler = pNativeHandlerWrapper;
|
|
|
|
CefRefPtr<CefV8Value> _nativeFunction1 = CefV8Value::CreateFunction("InitSDK", _nativeHandler);
|
|
CefRefPtr<CefV8Value> _nativeFunction2 = CefV8Value::CreateFunction("OpenEmptyDocument", _nativeHandler);
|
|
CefRefPtr<CefV8Value> _nativeFunction3 = CefV8Value::CreateFunction("SetDestinationDocumentPath", _nativeHandler);
|
|
CefRefPtr<CefV8Value> _nativeFunction4 = CefV8Value::CreateFunction("SaveDocument", _nativeHandler);
|
|
CefRefPtr<CefV8Value> _nativeFunction5 = CefV8Value::CreateFunction("Exit", _nativeHandler);
|
|
CefRefPtr<CefV8Value> _nativeFunction6 = CefV8Value::CreateFunction("AddHtml", _nativeHandler);
|
|
CefRefPtr<CefV8Value> _nativeFunction7 = CefV8Value::CreateFunction("GetImageUrl", _nativeHandler);
|
|
|
|
objNative->SetValue("InitSDK", _nativeFunction1, V8_PROPERTY_ATTRIBUTE_NONE);
|
|
objNative->SetValue("OpenEmptyDocument", _nativeFunction2, V8_PROPERTY_ATTRIBUTE_NONE);
|
|
objNative->SetValue("SetDestinationDocumentPath", _nativeFunction3, V8_PROPERTY_ATTRIBUTE_NONE);
|
|
objNative->SetValue("SaveDocument", _nativeFunction4, V8_PROPERTY_ATTRIBUTE_NONE);
|
|
objNative->SetValue("Exit", _nativeFunction5, V8_PROPERTY_ATTRIBUTE_NONE);
|
|
objNative->SetValue("AddHtml", _nativeFunction6, V8_PROPERTY_ATTRIBUTE_NONE);
|
|
objNative->SetValue("GetImageUrl", _nativeFunction7, V8_PROPERTY_ATTRIBUTE_NONE);
|
|
|
|
object->SetValue("Native", objNative, V8_PROPERTY_ATTRIBUTE_NONE);
|
|
}
|
|
|
|
virtual void OnContextReleased(CefRefPtr<client::ClientAppRenderer> app,
|
|
CefRefPtr<CefBrowser> browser,
|
|
CefRefPtr<CefFrame> frame,
|
|
CefRefPtr<CefV8Context> context) OVERRIDE {
|
|
message_router_->OnContextReleased(browser, frame, context);
|
|
}
|
|
|
|
virtual void OnFocusedNodeChanged(CefRefPtr<client::ClientAppRenderer> app,
|
|
CefRefPtr<CefBrowser> browser,
|
|
CefRefPtr<CefFrame> frame,
|
|
CefRefPtr<CefDOMNode> node) OVERRIDE {
|
|
bool is_editable = (node.get() && node->IsEditable());
|
|
if (is_editable != last_node_is_editable_)
|
|
{
|
|
// Notify the browser of the change in focused element type.
|
|
last_node_is_editable_ = is_editable;
|
|
#if 0
|
|
CefRefPtr<CefProcessMessage> message =
|
|
CefProcessMessage::Create(kFocusedNodeChangedMessage);
|
|
message->GetArgumentList()->SetBool(0, is_editable);
|
|
browser->SendProcessMessage(PID_BROWSER, message);
|
|
#endif
|
|
}
|
|
}
|
|
|
|
virtual bool OnProcessMessageReceived(
|
|
CefRefPtr<client::ClientAppRenderer> app,
|
|
CefRefPtr<CefBrowser> browser,
|
|
CefProcessId source_process,
|
|
CefRefPtr<CefProcessMessage> message) OVERRIDE
|
|
{
|
|
|
|
std::string sMessageName = message->GetName().ToString();
|
|
|
|
return message_router_->OnProcessMessageReceived(
|
|
browser, source_process, message);
|
|
}
|
|
|
|
private:
|
|
bool last_node_is_editable_;
|
|
bool sync_command_check;
|
|
|
|
// Handles the renderer side of query routing.
|
|
CefRefPtr<CefMessageRouterRendererSide> message_router_;
|
|
|
|
IMPLEMENT_REFCOUNTING(ClientRenderDelegate);
|
|
};
|
|
|
|
void CreateRenderDelegates(client::ClientAppRenderer::DelegateSet& delegates) {
|
|
delegates.insert(new ClientRenderDelegate);
|
|
}
|
|
|
|
} // namespace client_renderer
|