| 7ee8d268  Marcos Oliveira
 
validar | 1 |   # Trigger 
 | 
| 3229404f  Marcos Olveira
 
versão inicial | 2 |   
 | 
| 7ee8d268  Marcos Oliveira
 
validar | 3 |   # Action
 | 
| 3229404f  Marcos Olveira
 
versão inicial | 4
5 |   Action to be triggered to Execultar the event.
  * Attributes (optional)
 | 
| 7ee8d268  Marcos Oliveira
 
validar | 6
7
8 |   * Name: string - name attribute
  * Type: option - type attribute
  * Function: string - function that will dynamically capture the value of the attribute. 
 | 
| 3229404f  Marcos Olveira
 
versão inicial | 9 |   
 | 
| 7ee8d268  Marcos Oliveira
 
validar | 10
11
12
13
14
15 |   ### Example
  ``` sh
  Javascript
   return Funifier ._ $ ('# age') val ().;
  ```
  # Event
 | 
| 3229404f  Marcos Olveira
 
versão inicial | 16 |   Event Type to be monitored
 | 
| 7ee8d268  Marcos Oliveira
 
validar | 17 |   # Selector
 | 
| 3229404f  Marcos Olveira
 
versão inicial | 18 |   Element will be done bind the event.
 | 
| 3229404f  Marcos Olveira
 
versão inicial | 19 |   Page (s) that will be monitoring the event.
 | 
| 7ee8d268  Marcos Oliveira
 
validar | 20 |   # Pre Script (optional)
 | 
| 3229404f  Marcos Olveira
 
versão inicial | 21 |   Function performed prior to bind the element.
 | 
| 3229404f  Marcos Olveira
 
versão inicial | 22
23
24 |   Available variables:
  - Element: element gift
  - Trigger: object
 | 
| 7ee8d268  Marcos Oliveira
 
validar | 25
26
27
28
29
30
31
32
33
34
35 |       * _id: **String** - Required
      * Name: **String**
      * Actions:**array**
      * Trigger: **string ('click', 'pageview' ...)**
      * Selector: **String** - Required
      * Page: s**String** - Required
      * Pre_script: s**String** - Required
      * Port_script: **String** - Required
      * Pre_validation_script: **String** - Required
  
  ### Example
 | 
| 3229404f  Marcos Olveira
 
versão inicial | 36 |   If the element to be rendered via ajax, one can create a function to make the track manually.
 | 
| 3229404f  Marcos Olveira
 
versão inicial | 37
38
39
40
41 |   `` `Javascript
   Funifier ._ $ ('body'). On ('click', trigger.selector, function () {
      Funifier.track ({action: trigger._id, TRIGGER_TYPE: 'TRIGGER_HTML'});
   });
  `` `
 | 
| 7ee8d268  Marcos Oliveira
 
validar | 42
43 |   - Note 1: As we are traqueando the id of the trigger must inform the trigger type as trigger_html, but the server will interpret the id as the id action.
  - Note 2: If you do the track manually, you must retonar false in pre validate to avoid unexpected behavior, as more than once traquear the same event.
 | 
| 3229404f  Marcos Olveira
 
versão inicial | 44 |   
 | 
| 7ee8d268  Marcos Oliveira
 
validar | 45
46 |   # Pre Validity (optional)
  -Validation function performed before being made the track, waiting for the return of a boolean if the false seje return will not be made the track.
 | 
| 3229404f  Marcos Olveira
 
versão inicial | 47 |   
 | 
| 7ee8d268  Marcos Oliveira
 
validar | 48 |   - Available variables:
 | 
| 3229404f  Marcos Olveira
 
versão inicial | 49
50 |   - Element: element gift
  - Trigger: object
 | 
| 7ee8d268  Marcos Oliveira
 
validar | 51
52
53
54
55
56
57 |       * _id: **String** - Required
      * Name: **String** - Required
      * Actions: **String** - Required
      * Trigger: **string ('click', 'pageview' ...)**
      * Selector: **String** - Required
      * Page: **String** - Required
      * Pre_script: **String** - Required
 | 
| 3229404f  Marcos Olveira
 
versão inicial | 58
59
60 |       * Port_script: string,
      * Pre_validation_script: string
  
 | 
| 7ee8d268  Marcos Oliveira
 
validar | 61 |   ### Example
 | 
| 3229404f  Marcos Olveira
 
versão inicial | 62
63
64
65
66
67
68
69 |   `` `Javascript
   var value = Funifier ._ $ ('# name') val ().;
   if (value.length> 0) {
   // Blank field will not be made the track
   return false;
  }
  return true;
  `` `
 | 
| 7ee8d268  Marcos Oliveira
 
validar | 70 |   # Post Script (optional)
 | 
| 3229404f  Marcos Olveira
 
versão inicial | 71
72 |   Function performed after the track.
  
 | 
| 7ee8d268  Marcos Oliveira
 
validar | 73 |   - Available variables:
 | 
| 3229404f  Marcos Olveira
 
versão inicial | 74 |   - Trigger: object
 | 
| 7ee8d268  Marcos Oliveira
 
validar | 75
76
77
78
79
80
81
82
83
84
85 |       * _id: **String** - Required
      * Name: **String** - Required
      * Actions: **array**
      * Trigger: **string ('click', 'pageview' ...)**
      * Selector: **String** - Required
      * Page: **String** - Required
      * Pre_script: **String** - Required
      * Port_script: **String** - Required
      * Pre_validation_script: **String** - Required
  
  ### Example
 | 
| 3229404f  Marcos Olveira
 
versão inicial | 86
87
88
89 |   `` `Javascript
   alert ('traqueada action');
  `` `
  
 | 
| 7ee8d268  Marcos Oliveira
 
validar | 90 |   - Note: In some cases these function can not be performed, depending on the context, such as in a page redirection.
 | 
| 3229404f  Marcos Olveira
 
versão inicial | 91 |   
 | 
| 7ee8d268  Marcos Oliveira
 
validar | 92
93 |   # Run only client
  - If the event seje "Page View", you can cancel the track on the server of the shares in order to run any script as traquear manually.
 | 
| 3229404f  Marcos Olveira
 
versão inicial | 94 |   
 | 
| 7ee8d268  Marcos Oliveira
 
validar | 95 |   # Name (Optional)
 | 
| 3229404f  Marcos Olveira
 
versão inicial | 96 |   Name for reference in the studio
 | 
| 7ee8d268  Marcos Oliveira
 
validar | 97 |   - Variáveis disponíveis:
 | 
| 3229404f  Marcos Olveira
 
versão inicial | 98
99 |   - element : dom element
  - trigger : object
 | 
| 7ee8d268  Marcos Oliveira
 
validar | 100
101
102
103
104 |       * _id : **String** - Required
      * name : **String** - Required
      * actions : **array**
      * trigger : **string ('click','pageview' ...)**
      * selector : **String** - Required
 | 
| 3229404f  Marcos Olveira
 
versão inicial | 105 |       * page : string,
 | 
| 7ee8d268  Marcos Oliveira
 
validar | 106
107
108 |       * pre_script : **String** - Required
      * port_script : **String** - Required
      * pre_validation_script : **String** - Required
 | 
| 3229404f  Marcos Olveira
 
versão inicial | 109 |   
 | 
| 7ee8d268  Marcos Oliveira
 
validar | 110
111 |   ### Example
  - Caso o elemento seja renderizado via ajax, pode-se criar uma função para fazer o track manualmente.
 | 
| 3229404f  Marcos Olveira
 
versão inicial | 112
113
114
115
116
117 |   
  ```javascript
   Funifier._$('body').on('click',trigger.selector,function(){
      Funifier.track({action:trigger._id,trigger_type: 'TRIGGER_HTML'});
   });
  ```
 | 
| 7ee8d268  Marcos Oliveira
 
validar | 118
119 |   - Observação1: Como estamos traqueando o id da trigger devemos informar o trigger type como trigger_html, senão o servidor irá interpretar o id como id da action.
  - Observação2: Caso você faça o track manualmente, você deve retonar false no pre validate, para evitar comportamentos inesperados, como traquear mais de uma vez o mesmo evento.
 | 
| 3229404f  Marcos Olveira
 
versão inicial | 120 |   
 | 
| 7ee8d268  Marcos Oliveira
 
validar | 121 |   # Pré Validade (opcional)
 | 
| 3229404f  Marcos Olveira
 
versão inicial | 122
123 |   Função de validação executada antes de ser efetuado o track, espera o retorno de um boolean, caso o retorno seje falso não será feito o track.
  
 | 
| 7ee8d268  Marcos Oliveira
 
validar | 124 |   - Variáveis disponíveis:
 | 
| 3229404f  Marcos Olveira
 
versão inicial | 125
126 |   - element : dom element
  - trigger : object
 | 
| 7ee8d268  Marcos Oliveira
 
validar | 127
128
129
130
131
132
133
134
135
136
137 |       * _id : **String** - Required
      * name : **String** - Required
      * actions : **array**
      * trigger : **string ('click','pageview' ...)**
      * selector : **String** - Required
      * page : **String** - Required
      * pre_script : **String** - Required
      * port_script : **String** - Required
      * pre_validation_script : **String** - Required
  
  ### Example
 | 
| 3229404f  Marcos Olveira
 
versão inicial | 138
139
140
141
142
143
144
145 |   ```javascript
   var value= Funifier._$('#name').val();
   if(value.length>0){
   //Campo em branco, não será feito o track
   return false;
  }
  return true;
  ```
 | 
| 7ee8d268  Marcos Oliveira
 
validar | 146 |   # Post Script (opcional)
 | 
| 3229404f  Marcos Olveira
 
versão inicial | 147 |   Função executada depois do track.
 | 
| 7ee8d268  Marcos Oliveira
 
validar | 148 |   - Variáveis disponíveis:
 | 
| 3229404f  Marcos Olveira
 
versão inicial | 149 |   - trigger : object
 | 
| 7ee8d268  Marcos Oliveira
 
validar | 150
151
152
153
154
155
156
157
158 |       * _id :**String** - Required
      * name : **String** - Required
      * actions : **array**
      * trigger : **string ('click','pageview' ...)**
      * selector : **String** - Required
      * page : **String** - Required
      * pre_script : **String** - Required
      * port_script : **String** - Required
      * pre_validation_script : **String** - Required
 | 
| 3229404f  Marcos Olveira
 
versão inicial | 159 |       
 | 
| 7ee8d268  Marcos Oliveira
 
validar | 160 |   ### Example
 | 
| 3229404f  Marcos Olveira
 
versão inicial | 161
162
163 |   ```javascript
   alert('Acão traqueada');
  ```
 | 
| 7ee8d268  Marcos Oliveira
 
validar | 164 |   - Observação: Em alguns casos essas função pode não ser executada, dependendo do contexto, como por exemplo em um redirecionamento de pagina.
 | 
| 3229404f  Marcos Olveira
 
versão inicial | 165 |   
 | 
| 7ee8d268  Marcos Oliveira
 
validar | 166
167 |   # Run only client
  - Caso o evento seje "Page View", pode-se cancelar o track no servidor das ações para poder executar algum script como traquear manualmente.
 | 
| 3229404f  Marcos Olveira
 
versão inicial | 168 |   
 | 
| 7ee8d268  Marcos Oliveira
 
validar | 169
170 |   # Name (opcional)
  - Nome para referencia dentro do studio.
 |