diff --git a/views/ngXosLib/xosHelpers/src/services/csrfToken.interceptor.js b/views/ngXosLib/xosHelpers/src/services/csrfToken.interceptor.js
index 5f87de5..9fdc17b 100644
--- a/views/ngXosLib/xosHelpers/src/services/csrfToken.interceptor.js
+++ b/views/ngXosLib/xosHelpers/src/services/csrfToken.interceptor.js
@@ -12,6 +12,7 @@
       .factory('SetCSRFToken', setCSRFToken);
 
   function setCSRFToken($cookies) {
+    console.log($cookies);
     return {
       request: function(request){
         if(request.method !== 'GET'){
diff --git a/views/ngXosLib/xosHelpers/src/services/label_formatter.service.js b/views/ngXosLib/xosHelpers/src/services/label_formatter.service.js
index 1eb2796..b2c7a94 100644
--- a/views/ngXosLib/xosHelpers/src/services/label_formatter.service.js
+++ b/views/ngXosLib/xosHelpers/src/services/label_formatter.service.js
@@ -8,7 +8,7 @@
   **/
 
   angular
-      .module('xos.helpers')
+      .module('xos.uiComponents')
       .factory('LabelFormatter', labelFormatter);
 
   function labelFormatter() {
diff --git a/views/ngXosLib/xosHelpers/src/ui_components/dumbComponents/form.component.js b/views/ngXosLib/xosHelpers/src/ui_components/dumbComponents/form.component.js
index 35fe286..3a80fc1 100644
--- a/views/ngXosLib/xosHelpers/src/ui_components/dumbComponents/form.component.js
+++ b/views/ngXosLib/xosHelpers/src/ui_components/dumbComponents/form.component.js
@@ -38,14 +38,21 @@
   <example module="sampleForm">
     <file name="index.html">
       <div ng-controller="SampleCtrl as vm">
-        <xos-form ng-model="model" config="config"></xos-form>
+        <xos-form ng-model="vm.model" config="vm.config"></xos-form>
       </div>
     </file>
     <file name="script.js">
       angular.module('sampleForm', ['xos.uiComponents'])
+      .factory('_', function($window){
+        return $window._;
+      })
       .controller('SampleCtrl', function(){
         this.model = {
-          
+          first_name: 'Jhon',
+          last_name: 'Doe',
+          email: 'jhon.doe@sample.com',
+          active: true,
+          birthDate: '2015-02-17T22:06:38.059000Z'
         }
         this.config = {
           exclude: ['password', 'last_login'],
@@ -170,6 +177,9 @@
     };
 
     this.buildFormStructure = (modelField, customField, model) => {
+
+      customField = customField || {};
+
       return _.reduce(Object.keys(modelField), (form, f) => {
         form[f] = {
           label: (customField[f] && customField[f].label) ? `${customField[f].label}:` : LabelFormatter.format(f),
diff --git a/views/ngXosLib/xosHelpers/src/ui_components/dumbComponents/validation.component.js b/views/ngXosLib/xosHelpers/src/ui_components/dumbComponents/validation.component.js
index 6b80a32..9e95805 100644
--- a/views/ngXosLib/xosHelpers/src/ui_components/dumbComponents/validation.component.js
+++ b/views/ngXosLib/xosHelpers/src/ui_components/dumbComponents/validation.component.js
@@ -29,7 +29,7 @@
       },
       template: `
         <div>
-          <pre>{{vm.errors.email | json}}</pre>
+          <!-- <pre>{{vm.errors.email | json}}</pre> -->
           <xos-alert config="vm.config" show="vm.errors.email !== undefined">
             This is not a valid email
           </xos-alert>
