Plone 4.3中来自responseText的权限不足

时间:2014-07-13 07:26:46

标签: plone privileges responsetext

我在Plone4.3.3中使用PloneBooking3.0.0a2,但如果我想显示定期预订,我会收到一个不合适的权限错误。在我看来,有两个功能负责:

function showPeriodicityResult(url, alt_url, target_id, form_id, waiting_text) {
    ajaxobject = getXmlHttpRequest();

    form = document.getElementById(form_id);
    periodicity_type = getPeriodicityType(form);
    periodicity_end_date = form['periodicity_form_periodicity_end_date_0'].value;
    periodicity_variable = form['periodicity2_x'].value;

    query = getPeriodicityQuery(periodicity_type, periodicity_end_date, periodicity_variable);
    url = url + query + "&d=" + (new Date()).getTime();
    alt_url = alt_url + query;

    // Opera does not support ajax
    if (ajaxobject == null) {
        window.location = alt_url;
    } else {
        var node = document.getElementById(target_id);
        node.innerHTML = waiting_text;
        ajaxobject.open('GET', url, true);
        ajaxobject.onreadystatechange = function(){CallBackGenerateAjaxHTML(ajaxobject, target_id);};
        ajaxobject.send(null);
    }
}

function CallBackGenerateAjaxHTML(ajaxobject, target_id) {
    if (ajaxobject.readyState == 4) {
        if (ajaxobject.status > 299 || ajaxobject.status < 200) {
            return;
        }
        elem = document.getElementById(target_id);
        elem.innerHTML = ajaxobject.responseText;
    }
}

特别是带有responseText的innerHTML设置似乎是个问题。有没有像Plone版本差异从3到4的快速回答,还是我必须深入工作?

1 个答案:

答案 0 :(得分:1)

您在评论中提到portal.uid_catalog会引发未经授权。

当我没记错时,自最后一个Plone修补程序以来,uid-catalog需要更高的权限。但是,当您使用普通目录提供UID时,您也可以搜索项目。

here_obj python:portal.portal_catalog(UID=here_uid)[0].getObject();

这样你就可以获得你的对象。