Commit e058ec18 authored by Jan Köster's avatar Jan Köster
Browse files

test

parent fa6bf019
Loading
Loading
Loading
Loading
+21 −9
Changes for editor/src/webedit_api.cpp: 21 added lines, 9 removed lines.
Original line number Diff line number Diff line
@@ -1269,8 +1269,10 @@ void webedit::Api::handleSetProperties(libhttppp::HttpRequest &curreq,
                std::string authid, blogUrl;
                {
                    std::lock_guard<std::mutex> clk(_connSessionMtx);
                    if (!_connSessions.empty()) {
                        auto it = _connSessions.begin();
                    auto it = _connSessions.find(_activeConnId);
                    if (it == _connSessions.end() && !_connSessions.empty())
                        it = _connSessions.begin();
                    if (it != _connSessions.end()) {
                        authid  = it->second.authid;
                        blogUrl = it->second.blogUrl;
                    }
@@ -1391,8 +1393,10 @@ void webedit::Api::handlePreviewPage(libhttppp::HttpRequest &curreq,
    std::string authid, blogUrl;
    {
        std::lock_guard<std::mutex> lk(_connSessionMtx);
        if (!_connSessions.empty()) {
            auto it = _connSessions.begin();
        auto it = _connSessions.find(_activeConnId);
        if (it == _connSessions.end() && !_connSessions.empty())
            it = _connSessions.begin();
        if (it != _connSessions.end()) {
            authid  = it->second.authid;
            blogUrl = it->second.blogUrl;
        }
@@ -1454,8 +1458,11 @@ void webedit::Api::handleExportXml(libhttppp::HttpRequest &curreq,
    std::string blogUrl;
    {
        std::lock_guard<std::mutex> clk(_connSessionMtx);
        if (!_connSessions.empty())
            blogUrl = _connSessions.begin()->second.blogUrl;
        auto it = _connSessions.find(_activeConnId);
        if (it == _connSessions.end() && !_connSessions.empty())
            it = _connSessions.begin();
        if (it != _connSessions.end())
            blogUrl = it->second.blogUrl;
    }

    std::string packageXml = xml;
@@ -1622,13 +1629,17 @@ void webedit::Api::handleImportXml(libhttppp::HttpRequest &curreq,
                        authid = it->second.authid;
                        blogUrl = it->second.blogUrl;
                    }
                } else if (!_connSessions.empty()) {
                    auto it = _connSessions.begin();
                } else {
                    auto it = _connSessions.find(_activeConnId);
                    if (it == _connSessions.end() && !_connSessions.empty())
                        it = _connSessions.begin();
                    if (it != _connSessions.end()) {
                        authid  = it->second.authid;
                        blogUrl = it->second.blogUrl;
                        connId  = it->first;
                    }
                }
            }

            if (authid.empty() || blogUrl.empty()) {
                cleanupAndFail(400, "No active connection session for media import");
@@ -3156,10 +3167,11 @@ void webedit::Api::handleConnectToConnection(libhttppp::HttpRequest &curreq,
        }
        json_object_put(checkResp);

        // Store authid in session cache
        // Store authid in session cache and remember as active connection
        {
            std::lock_guard<std::mutex> lk(_connSessionMtx);
            _connSessions[connId] = {authid, blogUrl};
            _activeConnId = connId;
        }

        // Get publish targets using authid
+1 −0
Changes for editor/src/webedit_api.h: 1 added line, 0 removed lines.
Original line number Diff line number Diff line
@@ -144,6 +144,7 @@ namespace webedit {
        };
        std::mutex _connSessionMtx;
        std::map<std::string, ConnSession> _connSessions;
        std::string _activeConnId; // most recently connected connId (guarded by _connSessionMtx)

        // Document section list (for section_select widget field)
        void handleListDocumentSections(libhttppp::HttpRequest &curreq, const std::string &sessionid);