/**
 * Обновление отзыва по зказу ТУ
 * 
 * @param type $params
 * @return \xajaxResponse
 */
function tservicesOrdersUpdateFeedback($params)
{
    $uid = get_uid(false);
    $objResponse =& new xajaxResponse();
    $feedback_id = @$params['feedback_id'];
    $feedback_id = intval($feedback_id);
    $feedback = @$params['feedback'];
    $orderFeedbackModel = new TServiceOrderFeedbackModel();
    $data = $orderFeedbackModel->getFeedback($feedback_id);
    if (!$data) {
        return $objResponse;
    }
    $is_adm = hasPermissions('tservices');
    $is_owner = $data['user_id'] == $uid;
    $is_editable = $data['rating'] < 0 || TServiceOrderFeedbackModel::isAllowFeedback($data['posted_time']);
    if (!($is_owner && $is_editable) && !$is_adm) {
        return $objResponse;
    }
    $is_valid = $orderFeedbackModel->attributes(array('feedback' => $feedback, 'modified_id' => $uid));
    if (!$is_valid) {
        return $objResponse;
    }
    $ret = $orderFeedbackModel->updateFeedback($feedback_id);
    if (!$ret) {
        return $objResponse;
    }
    $data = $orderFeedbackModel->attributes();
    $ele_id = 'form_container_' . $feedback_id . '-2';
    $text_id = 'op_message_' . $feedback_id . '-2';
    $objResponse->script("\$('{$text_id}').setStyle('display', 'block');");
    $objResponse->script("\$('{$ele_id}').setStyle('display', 'none');");
    $objResponse->script("\$\$('.sbrmsgblock').setStyle('display', 'block');");
    $objResponse->assign($text_id, "innerHTML", '<p>' . reformat($data['feedback'], 30) . '</p>');
    $objResponse->assign($ele_id, "innerHTML", '');
    return $objResponse;
}