void GetExceptionPathName(const char * sz_Name, std::string & OnlyFileName) { GetOnlyFileName(sz_Name, OnlyFileName); }
void CFloatingWindow::UploadScreenshot(const CString& realName, const CString& displayName) { delete m_FileQueueUploader; m_FileQueueUploader = 0; lastUploadedItem_.fileListItem = CFileQueueUploader::FileListItem(); lastUploadedItem_.imageUrlShortened.Empty(); lastUploadedItem_.downloadUrlShortened.Empty(); m_FileQueueUploader = new CFileQueueUploader(); m_FileQueueUploader->setCallback(this); ServerProfile &serverProfile = Settings.quickScreenshotServer; CUploadEngineData* engineData = serverProfile.uploadEngineData(); if (!engineData) engineData = _EngineList->byIndex(_EngineList->getRandomImageServer()); if (!engineData) return; CImageConverter imageConverter; Thumbnail thumb; CString templateName = Settings.quickScreenshotServer.getImageUploadParams().getThumb().TemplateName; if ( templateName.IsEmpty() ) { templateName = _T("default"); } CString thumbTemplateFileName = IuCommonFunctions::GetDataFolder() + _T("\\Thumbnails\\") + templateName + _T(".xml"); if (!thumb.LoadFromFile(WCstringToUtf8(thumbTemplateFileName))) { WriteLog(logError, _T("CFloatingWindow"), TR("Не могу загрузить файл миниатюры!")+CString(_T("\r\n")) + thumbTemplateFileName); return; } imageConverter.setEnableProcessing(Settings.quickScreenshotServer.getImageUploadParams().ProcessImages); imageConverter.setImageConvertingParams(Settings.ConvertProfiles[Settings.quickScreenshotServer.getImageUploadParams().ImageProfileName]); imageConverter.setThumbCreatingParams(Settings.quickScreenshotServer.getImageUploadParams().getThumb()); bool GenThumbs = Settings.quickScreenshotServer.getImageUploadParams().CreateThumbs && ((!Settings.quickScreenshotServer.getImageUploadParams().UseServerThumbs) || (!engineData->SupportThumbnails)); imageConverter.setThumbnail(&thumb); imageConverter.setGenerateThumb(GenThumbs); imageConverter.Convert(realName); CAbstractUploadEngine* engine = _EngineList->getUploadEngine(engineData, serverProfile.serverSettings()); if (!engine) return; m_FileQueueUploader->setUploadSettings(engine); source_file_name_ = WCstringToUtf8(realName); server_name_ = engineData->Name; std::string utf8FileName = WCstringToUtf8(imageConverter.getImageFileName()); lastUploadedItem_.fileListItem.fileSize = IuCoreUtils::getFileSize(utf8FileName); m_FileQueueUploader->AddFile(utf8FileName, WCstringToUtf8(displayName), 0, engine); CString thumbFileName = imageConverter.getThumbFileName(); if (!thumbFileName.IsEmpty()) m_FileQueueUploader->AddFile(WCstringToUtf8(thumbFileName), WCstringToUtf8(thumbFileName), reinterpret_cast<void*>(1), engine); m_bIsUploading = true; uploadType_ = utImage; m_FileQueueUploader->start(); CString msg; msg.Format(TR("Идет загрузка \"%s\" на сервер %s"), (LPCTSTR) GetOnlyFileName(displayName), (LPCTSTR)Utf8ToWstring(engineData->Name).c_str()); ShowBaloonTip(msg, TR("Загрузка снимка")); }