2011-01-27 2 views
0

У меня есть настраиваемая кнопка ленты, которая создает группу сайтов с предопределенным набором разрешений. Все это делается с использованием EcmaScript и до сих пор работает на 100%.SharePoint 2010: установите SPWeb.RequestAccessEmail через EcmaScript

Единственные настройки, которые я не могу инициализируется на новом сайте группы с использованием ECMAScript являются те, которые касаются членства запросов (т.е. SPWeb.RequestAccessEmail)

Кто-нибудь знает, как установить это свойство с помощью клиента объектная модель?

+0

Вы получаете сообщение об ошибке? Что происходит при попытке установить свойства? –

+0

Свойство, похоже, не существует на клиентском веб-объекте. При использовании объектной модели сервера этот параметр контролируется с помощью свойства SPWeb.RequestAccessEmail. –

ответ

0

Я не вижу его в списке SP.Web Properties. Вот определение сеттер SPWeb.RequestAccessEmail от рефлектора:

if (!this.Site.WebApplication.RequestAccessEnabled) 
{ 
    throw new NotSupportedException(SPResource.GetString("EmailServiceNotConfigured", new object[0])); 
} 
if (SPWebService.ContentService.CreateActiveDirectoryAccounts) 
{ 
    throw new NotSupportedException(SPResource.GetString("RequestAccessNotAllowedOnVirtualServer", new object[0])); 
} 
if (!this.HasUniqueRoleAssignments) 
{ 
    throw new SPException(SPResource.GetString("RequestAccessUniqueWebs", new object[0])); 
} 
SPGlobal.FilterNullSize(value, 0xff, "RequestAccessEmail"); 
this.Request.SetRequestAccessInfo(this.Url, null, 0, true, value.Trim()); 

Я не думаю, что вы будете иметь возможность дублировать эту функцию с помощью объектной модели ECMAScript.

+0

Я бы догадался, что эта функция недоступна, поэтому спасибо за доказательства и подтверждение! –

-1

Вы можете использовать PowerShell для установки SPWeb.RequestAccessEmail в пустую строку, которая имеет тот же эффект, что и параметр SPWeb.RequestAccessEnabled на false.

+0

Исходный вопрос специально запросил, чтобы клиентская сторона EcmaScript (то есть javascript) использовалась, когда действие запускается кнопкой ленты. Скрипты Powershell не могут использоваться здесь. –

+0

Я просто указывал, что в настройке PowerShell адрес электронной почты пустым имеет тот же эффект в пользовательском интерфейсе, что и снятие флажка. Я думал, что это может быть одинаково для других частей API, включая объектную модель на стороне клиента. – kdjones74

Смежные вопросы