Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
languagejs
var variableService = ServiceFactory.getVariableService();
 ,
	messageService = ServiceFactory.getMessageService(),
	Action = {
		t: PW.I18N.createT('com.suncode-actions-plugin')
	};

FormActions.create('hiding-variables-action', {
  	   init: function() {
    		var me = this,
    		variables = me.value("variablesarray");
		
    	me.variables = [];
		jQuery.each(variables, function(index, variable){
			me.variables.push(variable.getId());
		});
	    },
     
    enable: function(){
    	this.hideVariables();
    	this.showMessage();
    },
     
    disable: function(){
    	this.showVariables();
    },
    
    hideVariables: function() {
    	this.setVariablesVisibility(false);
    },
    
    showMessage: function() {
    	var message = Action.t('action.hiding.variables.success', this.variables);
    	messageService.showSuccess(message);
    },
    
    showVariables: function() {
    	this.setVariablesVisibility(true);
    },
    
    setVariablesVisibility: function(visible) {
    		if(visible) {
			variableService.show(this.variables);
		}
		else {
			variableService.hide(this.variables);
		}
    }
    
});

W tym momencie mamy już gotową akcję. Akcja wykorzystując metody enabledisable oznacza, że jest przystosowana do wykonywania warunkowego. W momencie ukrycia zmiennych pojawia się stosowna wiadomość o tym. Wiadomość jest tłumaczona na podstawie podanego klucza. Tłumaczenia wykorzystywane po stronie przeglądarki zdefiniowane są w plikach: messages_browser.propertiesmessages_browser_en.properties.

Code Block
languagetext
titlemessages_browser.properties
action.hiding.variables.success=Zmienne [{0}] zostały ukryte.
Code Block
languagetext
titlemessages_browser_en.properties
action.hiding.variables.success=Variables [{0}] were hidden.

 

Zdefiniujemy zatem jeszcze funkcję, którą wykorzystamy jako warunek wykonania akcji. Ustawienie warunku odbywa się za pomocą narzędzia PlusWorkflowEditor.

...