diff --git a/app/assets/javascripts/application/collections.coffee b/app/assets/javascripts/application/collections.coffee
index 5bb2856ea4cfd8adb7186c7e59aaf1ce285b19c5..1b1645ce35a6329a224a684bb300fb857f31f848 100644
--- a/app/assets/javascripts/application/collections.coffee
+++ b/app/assets/javascripts/application/collections.coffee
@@ -69,6 +69,8 @@ $(document).on 'submit', '#collections-modal-form', (evt, params) ->
     if (data.type == "move")
       url = '/collections/' + encodeURIComponent(data.collection_id) + '/learning_objects/' + encodeURIComponent(data.learning_objects_ids.join())
       $.ajax {method: "DELETE", url: url, data: data }
+    $(document).trigger 'flash_notice', {text: 'Operação efetuada com sucesso!', type: 'notice'}
+    $(document).trigger('clear_collections')
     location.reload(true) if !(refreshable_type.indexOf(data.type) < 0)
     $('#collections-modal').modal('hide')
   return
@@ -78,6 +80,8 @@ $(document).on 'submit', '#collections-modal-form', (evt, params) ->
 #   if $('.collection-show-page').val() != undefined
 # array with selected objects ids
 selected_objects = []
+$ ->
+  selected_objects = []
 # valid types of operations in collections
 permitted_types = ['add', 'download', 'copy', 'move', 'remove']
 
@@ -119,8 +123,9 @@ $(document).on 'click', '.collection-button', ->
 
   if permitted_types[index] == 'remove'
     url = '/collections/' + encodeURIComponent(collection) + '/learning_objects/' + encodeURIComponent(selected_objects.join())
-    $.ajax { method: 'DELETE', url: url } if confirm('Você tem certeza?')
-    location.reload(true)
+    if confirm('Você tem certeza?')
+      $.ajax { method: 'DELETE', url: url }
+      location.reload(true)
   else
     $(document).trigger('open_collections_modal', [collection: collection, type: permitted_types[index], learning_object: selected_objects ]) if !!(~index)
 
diff --git a/app/assets/javascripts/application/columns.js b/app/assets/javascripts/application/columns.js
index 9a24c897df0bacefd95b1242da0fa49b05f05403..4a5ec01014bdf8bde0a5d3959bf5f9e3d8dc78ad 100644
--- a/app/assets/javascripts/application/columns.js
+++ b/app/assets/javascripts/application/columns.js
@@ -1,24 +1,46 @@
 $(document).ready(function() {
-  $(".learning-object-columns").each(function() {
-    var html = '',
-        i = 1;
+  $(document).trigger('create-learning-object-columns');
+});
 
-    $("> div", this).each(function () {
-      if (i == 2) {
-        html = '<div class="col-md-6"><div class="row"><div class="col-md-3">&nbsp;</div><div class="col-md-6">';
-        // TODO: find a way to not remove wrapper div
-        html += $(this).clone().wrap('<div>').parent().html();
-        html += '</div><div class="col-md-3">&nbsp;</div></div></div>';
-        $(this).replaceWith(html);
+$(document).on('create-learning-object-columns', function() {
+  $parents = $(".learning-object-columns");
 
-        i = 0;
-      }
-      else {
-        $(this).wrap('<div class="col-md-3"></div>');
+  // small screen = 2 columns
+  if ($(window).width() < 1000) {
+    $parents.each(function() {
+      var html = '',
+          i = 1,
+          even = false;
 
-        i += 1;
-      }
+      $("> div", this).each(function () {
+        append = (even) ? ' style="text-align: -webkit-right; text-align: -moz-right;"' : '';
+        even = !(even);
+        $(this).wrap('<div class="col-sm-6"' + append +'></div>');
+      });
     });
-  });
+  }
+  // bigger screen = 3 columns hack
+  else {
+    $parents.each(function() {
+      var html = '',
+          i = 1;
+
+      $("> div", this).each(function () {
+        if (i == 2) {
+          html = '<div class="col-md-6"><div class="row"><div class="col-md-3">&nbsp;</div><div class="col-md-6">';
+          // TODO: find a way to not remove wrapper div
+          html += $(this).clone().wrap('<div>').parent().html();
+          html += '</div><div class="col-md-3">&nbsp;</div></div></div>';
+          $(this).replaceWith(html);
 
+          i = 0;
+        }
+        else {
+          $(this).wrap('<div class="col-md-3"></div>');
+
+          i += 1;
+        }
+      });
+    });
+  }
 });
diff --git a/app/assets/javascripts/application/notice.coffee b/app/assets/javascripts/application/notice.coffee
new file mode 100644
index 0000000000000000000000000000000000000000..1049f85e4ca15be3f61745bd4530dbad8116ef62
--- /dev/null
+++ b/app/assets/javascripts/application/notice.coffee
@@ -0,0 +1,11 @@
+# flash notice ()
+$(document).on 'flash_notice', (e, params) ->
+  text = params.text
+  type = params.type
+  alert_type = if (type == 'alert') then 'alert-danger alert-dismissible' else 'alert-info'
+
+  html = '<div class="alert '+ alert_type + '" role="alert">
+            <button type="button" class="close" data-dismiss="alert" aria-label="Fechar">
+              <span aria-hidden="true">&times;</span></button>' + text + '</div>'
+
+  $('#content').prepend($(html))
diff --git a/app/builders/builder.rb b/app/builders/builder.rb
index 00973be93271e30449ed922505f78ba80a388da8..2235e8b8dfc591a1f91f9eff0c9831c67b57fb50 100644
--- a/app/builders/builder.rb
+++ b/app/builders/builder.rb
@@ -3,7 +3,9 @@ class Builder
   protected
 
   def self.cache_key(rid, last_modified)
+    last_modified = Time.at(0).to_s if last_modified.nil?
+
     rid + '/' + last_modified
   end
 
-end
\ No newline at end of file
+end
diff --git a/app/controllers/management/users_controller.rb b/app/controllers/management/users_controller.rb
index 8419c88f8c9c85c0801ae385ed8472acca5e4e93..d223f2f71cba133a87bd1d3a1207b1b5dda04bb3 100644
--- a/app/controllers/management/users_controller.rb
+++ b/app/controllers/management/users_controller.rb
@@ -76,7 +76,9 @@ class Management::UsersController < ManagementController
     @curators = Array.new
     @users = User.includes(:roles).all
     @users.all.each do |user|
-     @curators << user if user.roles[0].name == "curator"
+      if !user.roles[0].nil?
+        @curators << user if user.roles[0].name == "curator" || []
+      end
     end
   end
 
@@ -84,7 +86,9 @@ class Management::UsersController < ManagementController
     @admins = Array.new
     @users = User.includes(:roles).all
     @users.all.each do |user|
-      @admins << user if user.roles[0].name == "admin"
+      if !user.roles[0].nil?
+        @admins << user if user.roles[0].name == "admin" || []
+      end
     end
   end
 
diff --git a/app/views/collections/show.html.erb b/app/views/collections/show.html.erb
index 17b645d8fd4d9ca70a283969e0a7abe52b1d2ab6..06a2cdf90b953349e02f4d2da88b3843ff14c341 100644
--- a/app/views/collections/show.html.erb
+++ b/app/views/collections/show.html.erb
@@ -58,11 +58,11 @@
   </div>
 </nav>
 
-<div class="row learning-object-columns">
-  <br/>
-
-  <% @collection.learning_objects.each do |learning_object| %>
+<div class= "row">
+  <div class="learning-object-columns">
+    <br/>
+    <% @collection.learning_objects.each do |learning_object| %>
       <%= render learning_object, orientation: 'vertical' %>
-  <% end %>
-
+    <% end %>
+  </div>
 </div>
diff --git a/app/views/layouts/application.html.erb b/app/views/layouts/application.html.erb
index 72ee6642ab35f9b70022629ac42abfabb25dd7ea..e978812d1ecdb3c7bb0d72e11ec698f9153cb484 100644
--- a/app/views/layouts/application.html.erb
+++ b/app/views/layouts/application.html.erb
@@ -28,7 +28,9 @@
       </div>
   <% end %>
 
-  <%= yield %>
+  <div id="content">
+    <%= yield %>
+  </div>
 </div>
 
 <%= render 'shared/application/footer' %>
diff --git a/app/views/learning_objects/show.html.erb b/app/views/learning_objects/show.html.erb
index d19b273e1fa18b977bb6221bb5deddfa4e090fdb..eb976e03fbb6cf36d87a7bcba72b386d60fe47f2 100644
--- a/app/views/learning_objects/show.html.erb
+++ b/app/views/learning_objects/show.html.erb
@@ -35,7 +35,7 @@
       <div class="rating-panel">
         <% if user_signed_in? %>
           <div class="actions">
-            <div class="col-md-3 action">
+            <div class="col-sm-3 action">
               <%= link_to like_learning_object_path(id: @learning_object.id), class: 'vote',method: :post, remote: true do %>
                   <% if @liked %>
                     <%= image_tag "icons/Curtir_02.png", alt: "Descurtir" %>
@@ -45,19 +45,19 @@
                   <h6>curtir objeto</h6>
               <% end %>
             </div>
-            <div class="col-md-3 action">
+            <div class="col-sm-3 action">
               <a href="<%= @learning_object.get_retrievelink %>">
                 <%= image_tag "icons/download.png", alt: "Download do objeto" %>
                 <h6>salvar no computador</h6>
               </a>
             </div>
-            <div class="col-md-3 action">
+            <div class="col-sm-3 action">
             <a tabindex="0" class="add_to_collection" role="button" data-toggle="popover" data-placement="left" title="Adicionar as coleções" data-loid="<%= @learning_object.id %>" data-poload="/learning_objects/<%= ERB::Util.url_encode(@learning_object.id) %>/collections.json">
               <%= image_tag "icons/collection-add.png", alt: "Adicionar à coleção" %>
               <h6>adicionar à coleção</h6>
             </a>
             </div>
-            <div class="col-md-3 action">
+            <div class="col-sm-3 action">
               <%= render 'complaints/complaints_button' %>
             </div>
           </div>
diff --git a/app/views/shared/management/_nav_menu.html.erb b/app/views/shared/management/_nav_menu.html.erb
index abdab651f9847ef7ffccaf280de3d3fa6d9f3c05..91e1b4206b675da9cbeeb7ca00451b64926105bd 100644
--- a/app/views/shared/management/_nav_menu.html.erb
+++ b/app/views/shared/management/_nav_menu.html.erb
@@ -25,4 +25,8 @@
     <li><%= link_to "Denúncias", management_complaints_path, class: 'ls-ico-bullhorn' %>
     <li>
   </ul>
+  
+    <li> <%= link_to "Voltar ao Portal", root_path %> </li>
+
+
 </nav>