some refactoring, empty text in grids when no data to show