Пример #1
0
    die;
}
if (!CModule::IncludeModule("webservice")) {
    return;
}
/*************************************************************************
	Processing of received parameters
*************************************************************************/
$bDesignMode = $GLOBALS["APPLICATION"]->GetShowIncludeAreas() && is_object($GLOBALS["USER"]) && $GLOBALS["USER"]->IsAdmin();
$GLOBALS["APPLICATION"]->SetShowIncludeAreas($bDesignMode);
if (is_array($arParams["SOAPSERVER_RESPONSER"])) {
    // Raw SOAP Server processing.
    if ($_SERVER["REQUEST_METHOD"] == "POST" and !isset($_REQUEST["directcall"])) {
        $server = new CSOAPServer();
        for ($i = 0; $i < count($arParams["SOAPSERVER_RESPONSER"]); $i++) {
            $server->AddServerResponser($arParams["SOAPSERVER_RESPONSER"][$i]);
        }
        $result = $server->ProcessRequest();
    } else {
        echo "<img src=\"/bitrix/components/bitrix/webservice.server/images/ws.server.gif\">";
    }
    if (!$bDesignMode) {
        die;
    }
} else {
    if ($bDesignMode) {
        if (!class_exists($arParams["WEBSERVICE_CLASS"])) {
            CModule::IncludeModule($arParams["WEBSERVICE_MODULE"]);
        }
        $arParams["WSDESCR"] = CWebService::GetWebServiceDeclaration($arParams["WEBSERVICE_CLASS"]);
        $this->IncludeComponentTemplate();