Domanda

Sto costruendo una (MOSS) sito di pubblicazione di SharePoint per l'informazione sul mio sito web della società. Ho un tipo di contenuto dei dipendenti e sto usando la colonna del sito Indirizzo Contatto E-Mail per memorizzare l'indirizzo email di un dipendente.

Vuoi che vorrei è la capacità di codificare indirizzi e-mail in fase di esecuzione per evitare che l'indirizzo e-mail reale da essere raccolto dagli spammer. Questo sarebbe decodificato quando un utente fa clic sul collegamento ipertestuale email esempio il seguente codice HTML sarebbe stata inviata al browser:

<a href="javascript:sendEmail('5237952A6F67618E407373772E6063212E6175')">Email Jonny</a>

Ho già i metodi JavaScript per la codifica / decodifica un valore di testo dalla stringa senza senso di cui sopra, ma non sono troppo sicuro su come avvicinarsi a questo con SharePoint in mente. Sto pensando un controllo personalizzato e / o personalizzati J-query?

Qualsiasi aiuto sarebbe molto apprezzato!

Jonny

È stato utile?

Soluzione

Nel caso in cui non si riesce a mettere gli utenti in AD, un controllo campo personalizzato vi darà la possibilità di includere il rendering personalizzato (jquery) che desidera, così come la possibilità di inserire i dati come testo "normale".

Il campo personalizzato, una volta definiti "funziona" ovunque è necessario per visualizzare il campo.

Dato che si sta pensando di utilizzare JQuery, la questione diventa allora una delle assicurandosi che la libreria jQuery è correttamente legato ogni volta che avete bisogno di noi un campo di questo tipo.

Altri suggerimenti

Se si effettua quei dipendenti membri del sito, SharePoint si prende cura di questo problema.

È possibile inviare e-mail a loro, ma l'indirizzo e-mail verrà utilizzato solo in fase di invio, quando si aggiunge un pulsante per e-mail a qualcuno, non mostrerà l'indirizzo e-mail, la sua movimentazione nel backend.

SPUtility.SendEmail(SPContext.Current.Web, false, false,
[SPUser.Email][1], "E-mail title",
"E-mail body");

alt text
(fonte: msdn.com )

Altre due opzioni / approcci che è possibile provare:

(1) implementare un controllo personalizzato TextField, eredita da Microsoft.SharePoint.WebControls.TextField e ignorare RenderFieldForDisplay

Poi nel codice -. Codificare il campo per la visualizzazione

Aggiungi questo controllo per SafeControls e utilizzare questo al posto del normale nel TextField pagelayout.

(2) utilizzare il controllo TextField esistente, ma iniettare un pulsante [Codifica] utilizzando jQuery accanto al TextField in modo Edit.

Utilizzare il metodo di codifica JavaScript per codificare ciò che l'utente ha digitato in un valore codificato, sostituendo il valore TextField esistente. Quali possono poi salvare in SharePoint.


Darei gli approcci basati sul vostro scenario di distribuzione - uno di Nat è il più pulito, ma probabilmente più coinvolti per la distribuzione e l'jQuery solo uno sembra molto hacker ma facile sulla distribuzione. L'approccio di override TextField sarebbe probabilmente sedersi da qualche parte nel mezzo.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top