diff --git a/beat/web/reports/api.py b/beat/web/reports/api.py
index 0cd920858bb71bcb6fa0964c72cae80041065a0b..2a38acc8f751e431faf1c0a469f162a7f2dac295 100644
--- a/beat/web/reports/api.py
+++ b/beat/web/reports/api.py
@@ -505,3 +505,44 @@ class ReportResultsView(CommonContextMixin, generics.RetrieveAPIView):
                 results[experiment.fullname()] = serializer.data
 
         return Response(results)
+
+
+#----------------------------------------------------------
+
+
+class ReportResultsAllExperimentsView(CommonContextMixin, generics.RetrieveAPIView):
+    model = Report
+    serializer_class = ExperimentResultsSerializer
+    permission_classes = [permissions.IsAuthenticated, IsAuthor]
+
+    def get_queryset(self):
+        owner_name = self.kwargs.get('owner_name')
+        report_name  = self.kwargs.get('report_name')
+
+        report = get_object_or_404(Report, author__username=owner_name, name=report_name)
+
+        self.check_object_permissions(self.request, report)
+
+        return report
+
+    def get(self, request, owner_name=None, report_name=None, number=None):
+        report = self.get_queryset()
+
+        results = {}
+
+        report_content = json.loads(report.content)
+
+        if not report_content.has_key("alias_experiments"):
+            report_content["alias_experiments"] = {}
+
+        for experiment in report.experiments.iterator():
+            serializer = self.get_serializer(experiment, fields=['results', 'blocks_status', 'execution_info', 'declaration'])
+            if not report_content["alias_experiments"].has_key(experiment.fullname()):
+                report_content["alias_experiments"][experiment.fullname()] = experiment.name
+
+            if report.status == Report.LOCKED:
+                results[report_content["alias_experiments"][experiment.fullname()]] = serializer.data
+            else:
+                results[experiment.fullname()] = serializer.data
+
+        return Response(results)
diff --git a/beat/web/reports/api_urls.py b/beat/web/reports/api_urls.py
index 7c4caeae91186de83d65ece7b8873ddf84655e9b..f8d4017819df11bc44cd09b3717f8fe273008e06 100644
--- a/beat/web/reports/api_urls.py
+++ b/beat/web/reports/api_urls.py
@@ -48,6 +48,12 @@ urlpatterns = [
         name='results'
     ),
 
+    url(
+        r'^(?P<owner_name>\w+)/(?P<report_name>[\w\W]+)/results_author/$',
+        api.ReportResultsAllExperimentsView.as_view(),
+        name='results'
+    ),
+
     url(
         r'^(?P<owner_name>\w+)/$',
         api.UserReportListView.as_view(),
diff --git a/beat/web/reports/static/reports/app/controllers/reportController.js b/beat/web/reports/static/reports/app/controllers/reportController.js
index f107843acd9fa806555a4e2845c89a79b79382f2..eb94a86ae0b9ecf4c7da185b7ed3f3e26ead5226 100644
--- a/beat/web/reports/static/reports/app/controllers/reportController.js
+++ b/beat/web/reports/static/reports/app/controllers/reportController.js
@@ -75,18 +75,37 @@ app.controller('reportController',['$scope', 'reportFactory', 'experimentFactory
            {
                $scope.report = reportData;
                $scope.report.url_prefix = $scope.url_prefix;
+
                var experiments = $scope.report.experiments;
-               if(experiments != undefined)
+               if($scope.report.content.alias_experiments != undefined)
                {
-                    for (var i = 0; i < experiments.length ; i++)
-                    {
-                        getExperimentData(experiments[i]);
-                        //$state.go("beat.reportInfo")
-                    }
+                    $scope.report_experiments_alias = $scope.report.content.alias_experiments;
+               }
 
+               var promises = [];
+
+               function lastTask(){
                     getPlotters();
                }
 
+               if(experiments != undefined)
+               {
+                    promises.push(getExperimentDataForAuthor(experiments));
+                    $scope.q.all(promises).then(lastTask);
+               }
+
+
+               //if(experiments != undefined)
+               //{
+               //     for (var i = 0; i < experiments.length ; i++)
+               //     {
+               //         getExperimentData(experiments[i]);
+               //         //$state.go("beat.reportInfo")
+               //     }
+
+               //     getPlotters();
+               //}
+
            })
            .error(function (error)
            {
@@ -173,6 +192,39 @@ app.controller('reportController',['$scope', 'reportFactory', 'experimentFactory
             })
    }
 
+   function getExperimentDataForAuthor(all_experiments)
+   {
+       experimentFactory.getAllExperimentResultsForAuthor($scope.user, $scope.report_id, $scope.url_prefix)
+            .then(function (experiments)
+            {
+                 $scope.report_experiments = experiments;
+                 $scope.report.all_experiments = experiments;
+                 var experiment_aliases = Object.keys(experiments);
+                 for(var i = 0; i < experiment_aliases.length; i++)
+                 {
+                     var experiment_alias = experiment_aliases[i];
+
+                    if($scope.report.content.alias_experiments != undefined)
+                    {
+                        if($scope.report.content.alias_experiments[experiment_alias] != undefined)
+                        {
+                            setExperimentAliasFromContent(experiment_alias, $scope.report.content.alias_experiments[experiment_alias]);
+                        }
+                        else
+                        {
+                            setExperimentAlias(experiment_alias);
+                        }
+                    }
+                    else
+                    {
+                       setExperimentAlias(experiment_alias);
+                    }
+                    intersectBlocks(experiment_alias);
+                    algorithmParameters(experiment_alias);
+                 }
+            })
+   }
+
 
    function getExperimentData(experiment_id)
    {
diff --git a/beat/web/reports/static/reports/app/factories/experimentFactory.js b/beat/web/reports/static/reports/app/factories/experimentFactory.js
index 5d61a9ffb7e00f99015c0464e19720ea19b04dd7..b80feaae54b00caccc5f2a21c775b686d1ade1ec 100644
--- a/beat/web/reports/static/reports/app/factories/experimentFactory.js
+++ b/beat/web/reports/static/reports/app/factories/experimentFactory.js
@@ -32,6 +32,15 @@ app.factory('experimentFactory', function($http, $q)
                 });
         },
 
+        getAllExperimentResultsForAuthor: function (user, report_id, url_prefix)
+        {
+            urlBase = url_prefix + '/api/v1/reports';
+            return $http.get(urlBase + '/' + user + '/' + report_id + '/results_author/')
+                .then(function(response){
+                    return response.data;
+                });
+        },
+
         getAllExperimentResults: function (url_prefix, report_number)
         {
             urlBase = url_prefix + '/api/v1/reports';