Árvore de páginas

Para consultar dados do ambiente da sessão via JavaScipt (client side) é possível utilizar nos eventos a biblioteca WCMAPI. As propriedades disponíveis através da WCMAPI são:

MétodoEspecificação
WCMAPI.version

Retorna a versão do fluig.

Exemplo: "1.6.2"

WCMAPI.serverURL

ou

WCMAPI.getServerURL()

Retorna o endereço principal do servidor do fluig: "http://" ou "https://" seguido do endereço do servidor e a porta (se for diferente de 80).

Exemplo: "http://empresa.fluig.com:8080"

WCMAPI.organizationId

ou

WCMAPI.getOrganizationId()

Retorna o ID do tenant ao qual o usuário está conectado.

Exemplos: "1", "12", "99"

WCMAPI.tenantCode

 ou

WCMAPI.getTenantCode()

Retorna o código do tenant ao qual o usuário está conectado.

Exemplos: "suaempresa", "totvs", "demo"

WCMAPI.Create

Envia uma requisição ao servidor do fluig.

Exemplo:

WCMAPI.Create({
    url: '{url a ser consumida}',
    contentType: "text/xml",
    dataType: "xml",
    data: '{Request}',
    success: function(data){
		// código a ser executado em caso de sucesso
    }
});

WCMAPI.serverContextURL

ou

WCMAPI.getServerContextURL()

Retorna a raiz da URL do portal da plataforma.

Valor: "/portal" 

WCMAPI.logoff

Encerra a sessão de um usuário na plataforma.

Exemplo de utilização na função click de um botão implementado no arquivo JavaScript de um widget:

showMessage: function () {
    $div = $('#helloMessage_' + this.instanceId); 
    $message = $('<div>').addClass('message').append(this.message);
    $div.append($message);

	WCMAPI.logoff(); //Chamada da API
}
WCMAPI.addListener

Adiciona um evento customizado na widget.

Exemplo de implementação:

addCustomListener: function () {
	// evName: Nome do evento disparado
	// data: Dados customizados que foram enviados
	WCMAPI.addListener(this, 'update-widget-list', function(evName, data) {
    	// Realizar alguma ação
	});
}
WCMAPI.fireEvent

Dispara um evento customizado pela widget.

Exemplo de implementação:

fireCustomListener: function () {
	// evName: Nome do evento disparado
	// data: Dados customizados que foram enviados
	var data = [/* custom data */];
	WCMAPI.fireEvent('update-widget-list', data);
}
WCMAPI.failHandler

Exibe um alerta detalhado sobre o erro de alguma requisição.

Exemplo de implementação:

FLUIGC.ajax({
	type: 'GET',
	url: '<PUBLIC_API>',
	success: function (result) {
		// faz algo com o sucesso
	},
	error: function(args) {
		// Dispara um alerta com os detalhes do erro
		WCMAPI.failHandler(args, true);
	}
});
WCMAPI.convertFtlAsync

Realiza a renderização de uma widget pelo frontend. Esse método retorna o HTML de uma widget parseado pelo backend e também inclui todos os resources (css e js) dessa widget na página.

Observação: O método WCMAPI.convertFtl não deve ser usado pois ele realiza uma chamada síncrona e isso prejudica a experiência do usuário na página.

Exemplo de implementação:

WCMAPI.convertFtlAsync('<WIDGET_NAME>', '<FTL_NAME>', JSON.stringify({ /* dados customizados */ }), function(data) {
	// Adiciona o HTML da widget em algum container
	$('MY_CONTAINER').append(data);
});
WCMAPI.generateId()

Retorna um ID único para ser usado no desenvolvimento de uma widget.

Exemplo de implementação:

var customId = WCMAPI.generateId(); // retorna wcmid4, wcmid5, wcmid6 e assim sucessivamente
WCMAPI.getSourceImage

Retorna a url da imagem ou o base64 dela caso ela possua algum tipo de customização feita pelo dispositivo que criou ela, como rotação feita por um celular.

Exemplo de implementação:

var $image = $('.my-image');
var src = $image.attr('src');
var options = {
    maxHeight: 74,
    orientation: true
};

WCMAPI.getSourceImage(src, options, function(src) {
	$image.attr('src', src);
});
WCMAPI.isReplicationServerAccessible

Verifica se a replicação de arquivos pelo servidor está disponível e acessível.

Exemplo de implementação:

var defaultLocation = 'Fluig';
var postInfo = {
	that: this,
	nextCall: cb
};

WCMAPI.isReplicationServerAccessible(postInfo, function(postInfo, result) {
	// faz algo com o retorno
});
WCMAPI.setSessionAttribute

Adiciona algum valor na sessão do usuário (backend).

Exemplo de implementação:

WCMAPI.setSessionAttribute('<MY_FLAG>', '<MY_VALUE>');
WCMAPI.getSessionAttribute

Retorna algum valor que foi adicionado na sessão do usuário (backend).

Exemplo de implementação:

WCMAPI.getSessionAttribute('<MY_FLAG>');
WCMAPI.getProtectedContextPath

Retorna o path protegido (que exige autenticação para acessar) do servidor do Fluig.

Exemplo de implementação:

WCMAPI.getProtectedContextPath(); // Retorna: /portal/p
WCMAPI.isNull

Retorna um booleano se um valor é nulo ou não.

Observação: Recomenda-se usar JavaScript puro para realizar essa verificação.

Exemplo de implementação:

var myValue = null;

// Com JavaScript puro
var isNull1 = myValue === null;

// Com WCMAPI
var isNull2 = WCMAPI.isNull(myValue);
  • Sem rótulos