Сделал. Теперь все компоненты пропали
Просто скопировал код примера.
.description.php
.parameters.php
component.php
Как только я размещаю этот компонент в папке и делаю обновление компонентов- они пропадают.
Как только убираю папку - все стандартные компоненты появляются.
П.С. Делал поэтому туториалу .
П.П.С. Получил ошибку :При попытке редактировать шаблон в визуальном редакторе выдает ошибку "ERROR in pMainObj.LoadComponents2()" .
Проверил редактором, поправил парочку опечаток.
Дал права на все всем на папку (Windows 7) .
Но эта ошибка все равно повторяется.
Просто скопировал код примера.
.description.php
Код |
---|
<? if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true) die(); $arComponentDescription = array( "NAME" => "Веб сервис добавления новостей", "DESCRIPTION" => "Веб сервис добавления новостей", "CACHE_PATH" => "Y", "PATH" => array( "ID" => "service", "CHILD" => array( "ID" => "webservice", "NAME" => "Веб-сервис добавления новостей." ) ), ); ?> |
.parameters.php
Код |
---|
<? if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true) die(); $arComponentParameters = array( "GROUPS" => array( ), "PARAMETERS" => array() ), ); ?> |
component.php
Код |
---|
<? if(!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true) die(); if(!CModule::IncludeModule("webservice") || !CModule::IncludeModule("iblock")) return; // наш новый класс наследуется от базового IWebService class CAddNewsWS extends IWebService { function AddNews($NAME, $DATE, $PREVIEW_TEXT, $DETAIL_TEXT, $KEYWORDS, $SOURCE) { $iblock_permission = CIBlock::GetPermission(33); if ($iblock_permission < "W") { $GLOBALS["USER"]->RequiredHTTPAuthBasic(); return new CSOAPFault('Server Error', 'Unable to authorize user.'); } $arFields = Array( "IBLOCK_ID"=>33, // инфоблок "Новости магазина" "NAME"=>$NAME, "DATE_ACTIVE_FROM"=>$DATE, "PREVIEW_TEXT"=>$PREVIEW_TEXT, "DETAIL_TEXT"=>$DETAIL_TEXT, "PROPERTY_VALUES" => Array( "KEYWORDS"=>$KEYWORDS, "SOURCE"=>$SOURCE, ) ); $ib_element = new CIBlockElement(); $result = $ib_element->Add($arFields); if($result>0) return Array("id"=>$result); return new CSOAPFault( 'Server Error', 'Error: '.$ib_element->LAST_ERROR ); } // метод GetWebServiceDesc возвращает описание сервиса и его методов function GetWebServiceDesc() { $wsdesc = new CWebServiceDesc(); $wsdesc->wsname = "bitrix.webservice.addnews"; $wsdesc->wsclassname = "CAddNewsWS"; $wsdesc->wsdlauto = true; $wsdesc->wsendpoint = CWebService::GetDefaultEndpoint(); $wsdesc->wstargetns = CWebService::GetDefaultTargetNS(); $wsdesc->classTypes = array(); $wsdesc->structTypes = Array(); $wsdesc->classes = array( "CAddNewsWS"=> array( "AddNews" => array( "type" => "public", "input" => array( "NAME" => array("varType" => "string"), "DATE" => array("varType" => "string"), "PREVIEW_TEXT" => array("varType" => "string"), "DETAIL_TEXT" => array("varType" => "string"), "KEYWORDS" => array("varType" => "string"), "SOURCE" => array("varType" => "string"), ), "output" => array( "id" => array("varType" => "integer") ), "httpauth" => "Y" ), ) ); return $wsdesc; } } $arParams["WEBSERVICE_NAME"] = "bitrix.webservice.addnews"; $arParams["WEBSERVICE_CLASS"] = "CAddNewsWS"; $arParams["WEBSERVICE_MODULE"] = ""; // передаем в компонент описание веб-сервиса $APPLICATION->IncludeComponent( "bitrix:webservice.server", "", $arParams ); die(); ?> |
Как только я размещаю этот компонент в папке и делаю обновление компонентов- они пропадают.
Как только убираю папку - все стандартные компоненты появляются.
П.С. Делал по
П.П.С. Получил ошибку :При попытке редактировать шаблон в визуальном редакторе выдает ошибку "ERROR in pMainObj.LoadComponents2()" .
Проверил редактором, поправил парочку опечаток.
Дал права на все всем на папку (Windows 7) .
Но эта ошибка все равно повторяется.