SharePoint. Variables globales de JavaScript

SharePoint trabaja con una serie de variables globales en JavaScript que nos pueden facilitar la vida en nuestros desarrollos L_Menu_BaseUrl, L_Menu_LCID, L_Menu_SiteTheme, etc. Hoy hablaremos del L_Menu_BaseUrl.

Esta variable almacena la url del sitio actual. Es muy útil cuando necesitamos crear enlaces en JavaScript o cuando necesitamos añadir acciones o url al onet.xml (fichero de configuración de una plantilla de sitio).

Por ejemplo, queremos crear un enlace que utilice el nuevo diálogo modal de SharePoint 2010 para mostrar un formulario. La función JavaScipt SP.UI.ModalDialog.showModalDialog necesita la url a mostrar. Con esta variable es muy sencillo construir una url del tipo URL_SITIO + ‘Lists/Registro/NewForm.aspx’ sin necesidad de instanciar el modelo de objetos de JavaScript y realizar una llamada asíncrona para obtener ese valor.

Tan fácil como añadir un link a la barra de navegación:

<NavBarLink Name="Crear un recurso" Url= "javascript:showModalDialog(L_Menu_BaseUrl + '/Lists/Resources/NewForm.aspx', 'Nuevo Recurso')"></NavBarLink>

Y si nos planteamos hacerla con el modelo de objetos de JavaScript:

var ctx = new SP.ClientContext.get_current();

this.web = ctx.get_web();

ctx.load(this.web, 'ServerRelativeUrl');

ctx.ExecuteQueryAsync(Function.createDelegate(this, this.onSuccess), Function.createDelegate(this, this.onFail));

 

function onSuccess(sender, args) {

  relativeUrl = this.web.get_serverRealiveUrl();

}

 

Con lo que tendríamos que añadir este código a nuestro web template y luego obtener el nombre en el onet.xml. Mucho más sencilla la primera opción.

 

Saludos a todos…

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *