Quando si impostano dei permessi in SharePoint 2016
Concedi autorizzazioni
Concedi autorizzazioni
la finestra che si apre, NON mostra la checkbox Invia invito per posta elettronica (Send an email invitation)
Originale, opzioni chiuse
Originale, opzioni chiuse
l'unico modo per vedere l'opzione è quello di cliccare su Mostra opzione e così si scopre che la checkbox è selezionato per default.

Non sempre questo comportamento è desiderato.
Anzi solitamente può creare dei problemi quando si aggiungono dei permessi, soprattutto nel caso di gruppi, in quanto si rischia di far partire N mail non desiderate verso gli utenti.

Soluzione

Modificando una pagina di sistema di SharePoint AclInv.aspx, che si trova in

Text:

C:\Program Files\Common Files\microsoft shared\Web Server Extensions\16\TEMPLATE\LAYOUTS\
è possibile modificare il comportamento di default.

Per farlo si può agire in due punti della pagina.

Checkbox deselezionata di default

Il primo intervento serve a fare in modo che la checkbox non sia più selezionata per default.

La modifica consiste nel cercare all'interno della pagina la stringa chkSendEmailv15 o poi impostare la proprietà Checked su false

XML: AclInv.aspx

<asp:CheckBox
    runat="server"
    id="chkSendEmailv15"
    Checked="false"
    class = "ms-aclinv-checkbox"
    OnClick="UpdateSendEmailMessage()"/>

Opzioni sempre visibili

Il secondo intervento, opzionale, permette di avere sempre aperto le opzioni.

La modifica consiste nel cercare la funzione JavaScript _spBodyOnLoad e modificarla come nel codice seguente

JavaScript

function _spBodyOnLoad()
{
    txtEmailBodyIsEmpty = InitializeGhostedElement((document.getElementById("<%= txtEmailBody.ClientID %>")), L_EmailBodyGhostedText, formLongInputGhosted, formLongInputNonGhosted, null);
    UpdateAddToGroupOrRole();
    UpdateWelcomeInheritMessage();
    UpdateGivePermissionsHeading();
    UpdateSendEmailMessage();
    var groupRequiredValidator = (document.getElementById("<%= ReqValGroup.ClientID %>"));
    var groupCustomValidator = (document.getElementById("<%= CusValGroup.ClientID %>"));
    var txtEmailSubjectRequiredValidator = (document.getElementById("<%= ReqValEmailSubject.ClientID %>"));

    /* begin:modifica */
    /*if ((groupRequiredValidator != null) || (groupCustomValidator != null) || (txtEmailSubjectRequiredValidator != null))
    {
        var forceShow = true;
        ShowHideMoreOptions(forceShow);
    }*/
    var forceShow = true;
    ShowHideMoreOptions(forceShow);
    /* end: modifica */

    RenderSharingInformation();
    SetInitialFocus();
}
in pratica vengono sempre eseguite le istruzioni

JavaScript

var forceShow = true;
ShowHideMoreOptions(forceShow);

Risultato

Il risultato finale, quando si apre la form di assegnazione permessi, è questo
Modificata checkbox non selezionata
Modificata checkbox non selezionata
con la checkbox di invio mail non selezionata e le opzioni sempre visibili.

Per le altre versioni di SharePoint vedi SHAREPOINT – CHANGE DEFAULT SETTING OF “SEND AN EMAIL INVITATION”
Tags:
SharePoint497 SharePoint 2013136 SharePoint 201667
Potrebbe interessarti anche: