Index: branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/clients/clients.cshtml
===================================================================
--- branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/clients/clients.cshtml	(revision 12525)
+++ branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/clients/clients.cshtml	(revision 12551)
@@ -3,19 +3,24 @@
 <header class="view-header">
     <ul class="nav nav-list nav-list-topbar pull-left">
-    <li>
-        <a ng-href="#/statistics/jobs">Jobs</a>
-    </li>
-    @if (Request.IsAuthenticated && User.IsInRole(HiveRoles.Administrator))
-    {
         <li>
-            <a ng-href="#/statistics/users">Users</a>
+            <a ng-href="#/statistics/jobs">Jobs</a>
         </li>
-    }
-    <li class="active">
-        <a ng-href="#/statistics/clients">Clients</a>
-    </li>
-    <li>
-        <a ng-href="#/statistics/groups">Groups</a>
-    </li>
+        @if (Request.IsAuthenticated && User.IsInRole(HiveRoles.Administrator))
+        {
+            <li>
+                <a ng-href="#/statistics/users">Users</a>
+            </li>
+        }
+        <li class="active">
+            <a ng-href="#/statistics/clients">Clients</a>
+        </li>
+        <li>
+            <a ng-href="#/statistics/groups">Groups</a>
+        </li>
+        @if (Request.IsAuthenticated && User.IsInRole(HiveRoles.Administrator)) {
+            <li>
+                <a ng-href="#/statistics/exceptions">Exceptions</a>
+            </li>
+        }
     </ul>
 </header>
@@ -37,4 +42,5 @@
                             <th>Cores</th>
                             <th>Cpu Utilization</th>
+                            <th>Memory</th>
                             <th>State</th>
                             <th></th>
@@ -50,4 +56,5 @@
                             <td>{{client.UsedCores}} / {{client.TotalCores}}</td>
                             <td>{{client.CpuUtilization | number: 2}} %</td>
+                            <td>{{client.UsedMemory | kbToGB}} / {{client.TotalMemory | kbToGB}} GB</td>
                             <td>{{client.State}}</td>
                             <td>
@@ -56,5 +63,5 @@
                         </tr>
                         <tr ng-hide="clientPage.Clients.length">
-                            <td colspan="6" class="text-center">No clients found!</td>
+                            <td colspan="7" class="text-center">No clients found!</td>
                         </tr>
                     </table>
@@ -82,4 +89,5 @@
                                 <th>Cores</th>
                                 <th>Cpu Utilization</th>
+                                <th>Memory</th>
                                 <th>State</th>
                                 <th></th>
@@ -91,4 +99,5 @@
                             <td>{{client.UsedCores}} / {{client.TotalCores}}</td>
                             <td>{{client.CpuUtilization | number: 2}} %</td>
+                            <td>{{client.UsedMemory | kbToGB}} / {{client.TotalMemory | kbToGB}} GB</td>
                             <td>{{client.State}}</td>
                             <td>
@@ -97,5 +106,5 @@
                         </tr>
                         <tr ng-hide="expiredClientPage.Clients.length">
-                            <td colspan="6" class="text-center">No expired clients found!</td>
+                            <td colspan="7" class="text-center">No expired clients found!</td>
                         </tr>
                     </table>
Index: branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/clients/details/clientDetails.cshtml
===================================================================
--- branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/clients/details/clientDetails.cshtml	(revision 12525)
+++ branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/clients/details/clientDetails.cshtml	(revision 12551)
@@ -17,4 +17,9 @@
             <a ng-href="#/statistics/groups">Groups</a>
         </li>
+        @if (Request.IsAuthenticated && User.IsInRole(HiveRoles.Administrator)) {
+            <li>
+                <a ng-href="#/statistics/exceptions">Exceptions</a>
+            </li>
+        }
     </ul>
 </header>
@@ -46,9 +51,9 @@
                                 <tr>
                                     <td class="text-left">Up Time:</td>
-                                    <td>{{client.UpTime}}</td>
+                                    <td>{{client.UpTime | toTimespan}}</td>
                                 </tr>
                                 <tr>
                                     <td class="text-left">Last Update:</td>
-                                    <td>{{client.LastUpdate}}</td>
+                                    <td>{{client.LastUpdate | toDate}}</td>
                                 </tr>
                             </table>
@@ -58,21 +63,21 @@
                                 <tr>
                                     <td class="text-left">Total Unavailable Time:</td>
-                                    <td class="text-right">{{client.TotalUnavailableTime}}</td>
+                                    <td class="text-right">{{client.TotalUnavailableTime | toTimespan}}</td>
                                 </tr>
                                 <tr>
                                     <td class="text-left">Total Calculating Time:</td>
-                                    <td class="text-right">{{client.TotalCalculatingTime}}</td>
+                                    <td class="text-right">{{client.TotalCalculatingTime | toTimespan}}</td>
                                 </tr>
                                 <tr>
                                     <td class="text-left">Total Idle Time:</td>
-                                    <td class="text-right">{{client.TotalIdleTime}}</td>
+                                    <td class="text-right">{{client.TotalIdleTime | toTimespan}}</td>
                                 </tr>
                                 <tr>
                                     <td class="text-left">Total Transferring Time:</td>
-                                    <td class="text-right">{{client.TotalTransferringTime}}</td>
+                                    <td class="text-right">{{client.TotalTransferringTime | toTimespan}}</td>
                                 </tr>
                                 <tr>
                                     <td class="text-left">Total Offline Time:</td>
-                                    <td class="text-right">{{client.TotalOfflineTime}}</td>
+                                    <td class="text-right">{{client.TotalOfflineTime | toTimespan}}</td>
                                 </tr>
                             </table>
@@ -137,4 +142,14 @@
                         <knob knob-data="knobData.cpu" knob-options="knobOptions"></knob>
                     </div>
+                    <table class="table table-no-border table-condensed table-auto-width table-content">
+                        <tr>
+                            <td class="text-left">&nbsp;</td>
+                            <td class="text-right">&nbsp;</td>
+                        </tr>
+                        <tr>
+                            <td class="text-left">&nbsp;</td>
+                            <td class="text-right">&nbsp;</td>
+                        </tr>
+                    </table>
                 </div>
             </div>
@@ -153,9 +168,9 @@
                         <tr>
                             <td class="text-left">Total:</td>
-                            <td class="text-right">{{client.TotalMemory | number}} GB</td>
+                            <td class="text-right">{{client.TotalMemory | kbToGB}} GB</td>
                         </tr>
                         <tr>
                             <td class="text-left">Used:</td>
-                            <td class="text-right">{{client.UsedMemory | number}} GB</td>
+                            <td class="text-right">{{client.UsedMemory | kbToGB}} GB</td>
                         </tr>
                     </table>
@@ -163,5 +178,4 @@
             </div>
         </div>
-
     </div>
 </div>
@@ -169,5 +183,5 @@
 <div id="tasks-filter" class="default-filter-header text-center">
     <form class="form-inline">
-        <div class="form-group">
+        <div class="form-group" style="margin-left: 5px; margin-right: 5px;">
             <div class="btn-group" data-toggle="buttons">
                 <label class="btn btn-default" ng-class="{active: state.Selected}" ng-repeat="state in states"
@@ -175,4 +189,22 @@
                     <input type="checkbox" autocomplete="off" checked> {{state.State}}
                 </label>
+            </div>
+        </div>
+        <div class="form-group" style="margin-left: 5px; margin-right: 5px;">
+            <div class="btn-group" dropdown dropdown-append-to-body>
+                <button type="button" class="btn btn-default dropdown-toggle" dropdown-toggle>
+                    {{curUserName}} <span class="caret"></span>
+                </button>
+                <ul class="dropdown-menu" role="menu">
+                    <li>
+                        <a ng-href="#/statistics/clients/{{client.Id}}"
+                           ng-click="userChanged('00000000-0000-0000-0000-000000000000', 'All Users')">All Users</a>
+                    </li>
+                    <li class="divider"></li>
+                    <li ng-repeat="user in client.Users">
+                        <a ng-href="#/statistics/clients/{{client.Id}}"
+                           ng-click="userChanged(user.Id, user.Name)">{{user.Name}}</a>
+                    </li>
+                </ul>
             </div>
         </div>
@@ -210,15 +242,17 @@
                              </tr>
                          }
-                         <tr>
-                             <td>Start Time:</td>
-                             <td class="text-right">{{task.StartTime}}</td>
-                         </tr>
-                         <tr>
-                             <td>End Time:</td>
-                             <td class="text-right">{{task.EndTime}}</td>
-                         </tr>
+                        <tr>
+                            <td>Start Time:</td>
+                            <td ng-show="task.StartTime" class="text-right">{{task.StartTime | toDate}}</td>
+                            <td ng-hide="task.StartTime" class="text-right">Not started</td>
+                        </tr>
+                        <tr>
+                            <td>End Time:</td>
+                            <td ng-show="task.EndTime" class="text-right">{{task.EndTime | toDate}}</td>
+                            <td ng-hide="task.EndTime" class="text-right">Not finished</td>
+                        </tr>
                          <tr>
                              <td>Calculating Time:</td>
-                             <td class="text-right">{{task.CalculatingTime}}</td>
+                             <td class="text-right">{{task.CalculatingTime | toTimespan}}</td>
                          </tr>
                          @if (Request.IsAuthenticated && User.IsInRole(HiveRoles.Administrator))
Index: branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/clients/details/clientDetailsCtrl.js
===================================================================
--- branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/clients/details/clientDetailsCtrl.js	(revision 12525)
+++ branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/clients/details/clientDetailsCtrl.js	(revision 12551)
@@ -4,4 +4,6 @@
         ['$scope', '$stateParams', '$interval', 'app.statistics.clientService', 'app.statistics.taskService', '$modal',
         function ($scope, $stateParams, $interval, clientService, taskService, $modal) {
+            $scope.curUserId = '00000000-0000-0000-0000-000000000000';
+            $scope.curUserName = 'All Users';
             $scope.interval = defaultPageUpdateInterval;
             $scope.curTaskPage = 1;
@@ -33,16 +35,7 @@
                 clientService.getClientDetails({ id: $stateParams.id }, function (client) {
                     $scope.client = client;
-                    $scope.client.TotalMemory = Math.round($scope.client.TotalMemory / 1024);
-                    $scope.client.UsedMemory = Math.round($scope.client.UsedMemory / 1024);
                     $scope.knobData.cores = (client.UsedCores / client.TotalCores) * 100;
                     $scope.knobData.cpu = client.CpuUtilization;
                     $scope.knobData.memory = (client.UsedMemory / client.TotalMemory) * 100;
-                    $scope.client.LastUpdate = CSharpDateToString($scope.client.LastUpdate);
-                    $scope.client.UpTime = $scope.client.UpTime.toHHMMSS();
-                    $scope.client.TotalUnavailableTime = $scope.client.TotalUnavailableTime.toHHMMSS();
-                    $scope.client.TotalCalculatingTime = $scope.client.TotalCalculatingTime.toHHMMSS();
-                    $scope.client.TotalIdleTime = $scope.client.TotalIdleTime.toHHMMSS();
-                    $scope.client.TotalOfflineTime = $scope.client.TotalOfflineTime.toHHMMSS();
-                    $scope.client.TotalTransferringTime = $scope.client.TotalTransferringTime.toHHMMSS();
 
                     var length = client.TasksStates.length;
@@ -84,27 +77,7 @@
                 }
 
-                taskService.getTasksByClientId({ id: $stateParams.id, page: $scope.curTaskPage, size: $scope.taskPageSize }, states,
+                taskService.getTasksByClientId({ id: $stateParams.id, page: $scope.curTaskPage, size: $scope.taskPageSize, userId: $scope.curUserId }, states,
                     function (taskPage) {
                         $scope.taskPage = taskPage;
-                        var length = $scope.taskPage.Tasks.length;
-                        for (var i = 0; i < length; ++i) {
-                            $scope.taskPage.Tasks[i].TotalTime = $scope.taskPage.Tasks[i].TotalTime.toHHMMSS();
-                            $scope.taskPage.Tasks[i].InitialWaitingTime = $scope.taskPage.Tasks[i].InitialWaitingTime.toHHMMSS();
-                            $scope.taskPage.Tasks[i].WaitingTime = $scope.taskPage.Tasks[i].WaitingTime.toHHMMSS();
-                            $scope.taskPage.Tasks[i].CalculatingTime = $scope.taskPage.Tasks[i].CalculatingTime.toHHMMSS();
-                            $scope.taskPage.Tasks[i].TransferTime = $scope.taskPage.Tasks[i].TransferTime.toHHMMSS();
-                            var startTime = $scope.taskPage.Tasks[i].StartTime;
-                            if (isDefined(startTime)) {
-                                $scope.taskPage.Tasks[i].StartTime = CSharpDateToString(startTime);
-                            } else {
-                                $scope.taskPage.Tasks[i].StartTime = 'Not started';
-                            }
-                            var endTime = $scope.taskPage.Tasks[i].EndTime;
-                            if (isDefined(endTime)) {
-                                $scope.taskPage.Tasks[i].EndTime = CSharpDateToString(endTime);
-                            } else {
-                                $scope.taskPage.Tasks[i].EndTime = 'Not finished';
-                            }
-                        }
                     }
                 );
@@ -121,4 +94,10 @@
                 state.Selected = !state.Selected;
                 $scope.curTaskPage = 1;
+                getClientDetails();
+            };
+
+            $scope.userChanged = function(id, name) {
+                $scope.curUserId = id;
+                $scope.curUserName = name;
                 getClientDetails();
             };
Index: branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/clients/details/clientTaskDetailsDialog.cshtml
===================================================================
--- branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/clients/details/clientTaskDetailsDialog.cshtml	(revision 12525)
+++ branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/clients/details/clientTaskDetailsDialog.cshtml	(revision 12551)
@@ -14,9 +14,11 @@
                             <tr>
                                 <td>Start Time:</td>
-                                <td class="text-right">{{task.StartTime}}</td>
+                                <td ng-show="task.StartTime" class="text-left">{{task.StartTime | toDate}}</td>
+                                <td ng-hide="task.StartTime" class="text-left">Not started</td>
                             </tr>
                             <tr>
                                 <td>End Time:</td>
-                                <td class="text-right">{{task.EndTime}}</td>
+                                <td ng-show="task.EndTime" class="text-left">{{task.EndTime | toDate}}</td>
+                                <td ng-hide="task.EndTime" class="text-left">Not finished</td>
                             </tr>
                             <tr>
@@ -58,21 +60,21 @@
                             <tr>
                                 <td>Total Time:</td>
-                                <td>{{task.TotalTime}}</td>
+                                <td>{{task.TotalTime | toTimespan}}</td>
                             </tr>
                             <tr>
                                 <td>Initial Waiting Time:</td>
-                                <td>{{task.InitialWaitingTime}}</td>
+                                <td>{{task.InitialWaitingTime | toTimespan}}</td>
                             </tr>
                             <tr>
                                 <td>Waiting Time:</td>
-                                <td>{{task.WaitingTime}}</td>
+                                <td>{{task.WaitingTime | toTimespan}}</td>
                             </tr>
                             <tr>
                                 <td>Calculating Time:</td>
-                                <td>{{task.CalculatingTime}}</td>
+                                <td>{{task.CalculatingTime | toTimespan}}</td>
                             </tr>
                             <tr>
                                 <td>Transfer Time:</td>
-                                <td>{{task.TransferTime}}</td>
+                                <td>{{task.TransferTime | toTimespan}}</td>
                             </tr>
                         </table>
@@ -82,21 +84,21 @@
                             <tr>
                                 <td>Calculation Runs:</td>
-                                <td>{{task.NumCalculationRuns}}</td>
+                                <td class="text-right">{{task.NumCalculationRuns}}</td>
                             </tr>
                             <tr>
                                 <td>Retries Runs:</td>
-                                <td>{{task.NumRetries}}</td>
+                                <td class="text-right">{{task.NumRetries}}</td>
                             </tr>
                             <tr>
                                 <td>Cores Required:</td>
-                                <td>{{task.CoresRequired}}</td>
+                                <td class="text-right">{{task.CoresRequired}}</td>
                             </tr>
                             <tr>
                                 <td>Memory Required:</td>
-                                <td>{{task.MemoryRequired}}</td>
+                                <td class="text-right">{{task.MemoryRequired}} MB</td>
                             </tr>
                             <tr>
                                 <td>Priority:</td>
-                                <td>{{task.Priority}}</td>
+                                <td class="text-right">{{task.Priority}}</td>
                             </tr>
                         </table>
Index: branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/groups/details/groupDetails.cshtml
===================================================================
--- branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/groups/details/groupDetails.cshtml	(revision 12525)
+++ branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/groups/details/groupDetails.cshtml	(revision 12551)
@@ -16,5 +16,10 @@
         <li class="active">
             <a ng-href="#/statistics/groups">Groups</a>
-        </li>
+        </li> 
+        @if (Request.IsAuthenticated && User.IsInRole(HiveRoles.Administrator)) {
+            <li>
+                <a ng-href="#/statistics/exceptions">Exceptions</a>
+            </li>
+        }
     </ul>
 </header>
@@ -22,5 +27,5 @@
 <div class="default-view-container">
     <div class="row">
-        <div class="col-lg-12">
+        <div class="col-lg-9">
             <div class="panel panel-default">
                 <div class="panel-heading">
@@ -29,5 +34,5 @@
                 <div class="panel-body">
                     <div class="row">
-                        <div class="col-md-5">
+                        <div class="col-md-6">
                             <table class="table table-no-border table-condensed table-auto-width table-content">
                                 <tr>
@@ -37,39 +42,128 @@
                                 <tr>
                                     <td class="text-left">Clients:</td>
-                                    <td class="text-right">{{group.Clients}}</td>
-                                </tr>
-                                <tr>
-                                    <td class="text-left">Cpu Utilization:</td>
-                                    <td class="text-right">{{group.CpuUtilization | number: 2}} %</td>
+                                    <td class="text-right">{{group.OnlineClients}} / {{group.TotalClients}}</td>
                                 </tr>
                             </table>
                         </div>
-                        <div class="col-md-5">
+                        <div class="col-md-6">
                             <table class="table table-no-border table-condensed table-auto-width table-content">
                                 <tr>
-                                    <td class="text-left">TotalCores:</td>
-                                    <td class="text-right">{{group.TotalCores}}</td>
-                                </tr>
-                                <tr>
-                                    <td class="text-left">UsedCores:</td>
-                                    <td class="text-right">{{group.UsedCores}}</td>
-                                </tr>
-                                <tr>
-                                    <td class="text-left">Total Memory:</td>
-                                    <td class="text-right">{{group.TotalMemory}}</td>
-                                </tr>
-                                <tr>
-                                    <td class="text-left">Used Memory:</td>
-                                    <td class="text-right">{{group.UsedMemory}}</td>
+                                    <td class="text-left">Total Unavailable Time:</td>
+                                    <td class="text-right">{{group.TotalUnavailableTime | toTimespan}}</td>
+                                </tr>
+                                <tr>
+                                    <td class="text-left">Total Calculating Time:</td>
+                                    <td class="text-right">{{group.TotalCalculatingTime | toTimespan}}</td>
+                                </tr>
+                                <tr>
+                                    <td class="text-left">Total Idle Time:</td>
+                                    <td class="text-right">{{group.TotalIdleTime | toTimespan}}</td>
+                                </tr>
+                                <tr>
+                                    <td class="text-left">Total Transferring Time:</td>
+                                    <td class="text-right">{{group.TotalTransferringTime | toTimespan}}</td>
+                                </tr>
+                                <tr>
+                                    <td class="text-left">Total Offline Time:</td>
+                                    <td class="text-right">{{group.TotalOfflineTime | toTimespan}}</td>
                                 </tr>
                             </table>
                         </div>
-
-                        <div class="col-md-2"></div>
-                    </div>
+                    </div>
+                </div>
+            </div>
+        </div>
+        <div class="col-lg-3 col-md-6">
+            <div class="panel panel-default">
+                <div class="panel-heading">
+                    <h3 class="panel-title">Tasks Overview</h3>
+                </div>
+                <div class="panel-body">
+                    <table class="table table-no-border table-condensed table-auto-width table-content">
+                        <tr>
+                            <td class="text-left">Total:</td>
+                            <td class="text-right">{{totalGroupTasks}}</td>
+                        </tr>
+                        <tr ng-repeat="state in group.TasksStates">
+                            <td class="text-left">{{state.State}}:</td>
+                            <td class="text-right">{{state.Count}}</td>
+                        </tr>
+                    </table>
                 </div>
             </div>
         </div>
     </div>
+
+    <div class="row">
+        <div class="col-lg-3 col-md-6">
+            <div class="panel panel-default">
+                <div class="panel-heading">
+                    <h3 class="panel-title">Cores</h3>
+                </div>
+                <div class="panel-body">
+                    <div class="text-center">
+                        <knob knob-data="knobData.cores" knob-options="knobOptions"></knob>
+                    </div>
+                    <table class="table table-no-border table-condensed table-auto-width table-content">
+                        <tr>
+                            <td class="text-left">Total:</td>
+                            <td class="text-right">{{group.TotalCores | number}}</td>
+                        </tr>
+                        <tr>
+                            <td class="text-left">Used:</td>
+                            <td class="text-right">{{group.UsedCores | number}}</td>
+                        </tr>
+                    </table>
+                </div>
+            </div>
+        </div>
+
+        <div class="col-lg-3 col-md-6">
+            <div class="panel panel-default">
+                <div class="panel-heading">
+                    <h3 class="panel-title">CPU Utilization</h3>
+                </div>
+                <div class="panel-body">
+                    <div class="text-center">
+                        <knob knob-data="knobData.cpu" knob-options="knobOptions"></knob>
+                    </div>
+                    <table class="table table-no-border table-condensed table-auto-width table-content">
+                        <tr>
+                            <td class="text-left">Total:</td>
+                            <td class="text-right">{{group.TotalCpuUtilization | number: 2}} %</td>
+                        </tr>
+                        <tr>
+                            <td class="text-left">Active:</td>
+                            <td class="text-right">{{group.ActiveCpuUtilization | number: 2}} %</td>
+                        </tr>
+                    </table>
+                </div>
+            </div>
+        </div>
+
+        <div class="col-lg-3 col-md-6">
+            <div class="panel panel-default">
+                <div class="panel-heading">
+                    <h3 class="panel-title">Memory</h3>
+                </div>
+                <div class="panel-body">
+                    <div class="text-center">
+                        <knob knob-data="knobData.memory" knob-options="knobOptions"></knob>
+                    </div>
+                    <table class="table table-no-border table-condensed table-auto-width table-content">
+                        <tr>
+                            <td class="text-left">Total:</td>
+                            <td class="text-right">{{group.TotalMemory | kbToGB}} GB</td>
+                        </tr>
+                        <tr>
+                            <td class="text-left">Used:</td>
+                            <td class="text-right">{{group.UsedMemory | kbToGB}} GB</td>
+                        </tr>
+                    </table>
+                </div>
+            </div>
+        </div>
+    </div>
+
     <div class="row">
         <div class="col-lg-12">
@@ -86,4 +180,5 @@
                                 <th>Cores</th>
                                 <th>Cpu Utilization</th>
+                                <th>Memory</th>
                                 <th>State</th>
                                 <th></th>
@@ -95,4 +190,5 @@
                             <td>{{client.UsedCores}} / {{client.TotalCores}}</td>
                             <td>{{client.CpuUtilization | number: 2}} %</td>
+                            <td>{{client.UsedMemory | kbToGB}} / {{client.TotalMemory | kbToGB}}</td>
                             <td>{{client.State}}</td>
                             <td>
@@ -101,5 +197,5 @@
                         </tr>
                         <tr ng-hide="clientPage.Clients.length">
-                            <td colspan="6" class="text-center">No clients found!</td>
+                            <td colspan="7" class="text-center">No clients found!</td>
                         </tr>
                     </table>
Index: branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/groups/details/groupDetailsCtrl.js
===================================================================
--- branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/groups/details/groupDetailsCtrl.js	(revision 12525)
+++ branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/groups/details/groupDetailsCtrl.js	(revision 12551)
@@ -8,7 +8,40 @@
             $scope.clientsPageSize = 20;
 
+
+            // details
+            $scope.knobOptions = {
+                'fgColor': "#f7921d",
+                'angleOffset': -125,
+                'angleArc': 250,
+                'readOnly': true,
+                'width': "80%",
+                'targetvalue': "100",
+                'format': function (value) {
+                    return value;
+                },
+                draw: function () {
+                    $(this.i).val(this.cv + '%');
+                }
+            };
+
+            $scope.knobData = {
+                cores: 0,
+                cpu: 0,
+                memory: 0
+            };
+
             var getGroupDetails = function() {
                 groupService.getGroupDetails({ id: $stateParams.id }, function (group) {
                     $scope.group = group;
+                    $scope.knobData.cores = (group.UsedCores / group.TotalCores) * 100;
+                    $scope.knobData.cpu = group.ActiveCpuUtilization;
+                    $scope.knobData.memory = (group.UsedMemory / group.TotalMemory) * 100;
+
+                    var length = group.TasksStates.length;
+                    var total = 0;
+                    for (var i = 0; i < length; ++i) {
+                        total += group.TasksStates[i].Count;
+                    }
+                    $scope.totalGroupTasks = total;
                 });
             };
Index: branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/groups/groups.cshtml
===================================================================
--- branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/groups/groups.cshtml	(revision 12525)
+++ branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/groups/groups.cshtml	(revision 12551)
@@ -16,5 +16,10 @@
         <li class="active">
             <a ng-href="#/statistics/groups">Groups</a>
-        </li>
+        </li> 
+        @if (Request.IsAuthenticated && User.IsInRole(HiveRoles.Administrator)) {
+            <li>
+                <a ng-href="#/statistics/exceptions">Exceptions</a>
+            </li>
+        }
     </ul>
 </header>
@@ -35,4 +40,5 @@
                             <th>Cores</th>
                             <th>Cpu Utilization</th>
+                            <th>Memory</th>
                             <th>Clients</th>
                             <th></th>
@@ -44,5 +50,6 @@
                             <td>{{group.UsedCores}} / {{group.TotalCores}}</td>
                             <td>{{group.CpuUtilization | number: 2}} %</td>
-                            <td>{{group.Clients}}</td>
+                            <td>{{group.UsedMemory | kbToGB}} / {{group.TotalMemory | kbToGB}} GB</td>
+                            <td>{{group.OnlineClients}} / {{group.TotalClients}}</td>
                             <td>
                                 <a ng-href="#/statistics/groups/{{group.Id}}">Details</a>
@@ -50,5 +57,5 @@
                         </tr>
                         <tr ng-hide="groupPage.Groups.length">
-                            <td colspan="6" class="text-center">No groups found!</td>
+                            <td colspan="7" class="text-center">No groups found!</td>
                         </tr>
                     </table>
Index: branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/jobs/details/jobDetails.cshtml
===================================================================
--- branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/jobs/details/jobDetails.cshtml	(revision 12525)
+++ branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/jobs/details/jobDetails.cshtml	(revision 12551)
@@ -17,4 +17,9 @@
             <a ng-href="#/statistics/groups">Groups</a>
         </li>
+        @if (Request.IsAuthenticated && User.IsInRole(HiveRoles.Administrator)) {
+            <li>
+                <a ng-href="#/statistics/exceptions">Exceptions</a>
+            </li>
+        }
     </ul>
 </header>
@@ -37,9 +42,10 @@
                                 <tr>
                                     <td class="text-left">Created at:</td>
-                                    <td>{{job.DateCreated}}</td>
+                                    <td>{{job.DateCreated | toDate}}</td>
                                 </tr>
                                 <tr>
                                     <td class="text-left">Completed at:</td>
-                                    <td>{{job.DateCompleted}}</td>
+                                    <td ng-show="job.DateCompleted">{{job.DateCompleted | toDate}}</td>
+                                    <td ng-hide="job.DateCompleted">Not completed yet</td>
                                 </tr>
                                 @if (Request.IsAuthenticated && User.IsInRole(HiveRoles.Administrator)) {
@@ -61,13 +67,13 @@
                                 <tr>
                                     <td class="text-left">Total Time:</td>
-                                    <td class="text-right">{{job.TotalTime}}</td>
+                                    <td class="text-right">{{job.TotalTime | toTimespan}}</td>
                                 </tr>
                                 <tr>
                                     <td class="text-left">Total Calculating Time:</td>
-                                    <td class="text-right">{{job.TotalCalculatingTime}}</td>
+                                    <td class="text-right">{{job.TotalCalculatingTime | toTimespan}}</td>
                                 </tr>
                                 <tr>
                                     <td class="text-left">Total Waiting Time:</td>
-                                    <td class="text-right">{{job.TotalWaitingTime}}</td>
+                                    <td class="text-right">{{job.TotalWaitingTime | toTimespan}}</td>
                                 </tr>
                                 <tr>
@@ -81,17 +87,17 @@
                                 <tr>
                                     <td class="text-left">Min Calculating Time:</td>
-                                    <td class="text-right">{{job.MinCalculatingTime}}</td>
+                                    <td class="text-right">{{job.MinCalculatingTime | toTimespan}}</td>
                                 </tr>
                                 <tr>
                                     <td class="text-left">Max Calculating Time:</td>
-                                    <td class="text-right">{{job.MaxCalculatingTime}}</td>
+                                    <td class="text-right">{{job.MaxCalculatingTime | toTimespan}}</td>
                                 </tr>
                                 <tr>
                                     <td class="text-left">Avg. Calculating Time:</td>
-                                    <td class="text-right">{{job.AvgCalculatingTime}}</td>
+                                    <td class="text-right">{{job.AvgCalculatingTime | toTimespan}}</td>
                                 </tr>
                                 <tr>
                                     <td class="text-left">Avg. Transferring Time:</td>
-                                    <td class="text-right">{{job.AvgTransferringTime}}</td>
+                                    <td class="text-right">{{job.AvgTransferringTime | toTimespan}}</td>
                                 </tr>
                             </table>
@@ -158,13 +164,15 @@
                         <tr>
                             <td>Start Time:</td>
-                            <td class="text-right">{{task.StartTime}}</td>
+                            <td ng-show="task.StartTime" class="text-right">{{task.StartTime | toDate}}</td>
+                            <td ng-hide="task.StartTime" class="text-right">Not started</td>
                         </tr>
                         <tr>
                             <td>End Time:</td>
-                            <td class="text-right">{{task.EndTime}}</td>
+                            <td ng-show="task.EndTime" class="text-right">{{task.EndTime | toDate}}</td>
+                            <td ng-hide="task.EndTime" class="text-right">Not finished</td>
                         </tr>
                         <tr>
                             <td>Calculating Time:</td>
-                            <td class="text-right">{{task.CalculatingTime}}</td>
+                            <td class="text-right">{{task.CalculatingTime | toTimespan}}</td>
                         </tr>
                         <tr>
Index: branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/jobs/details/jobDetailsCtrl.js
===================================================================
--- branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/jobs/details/jobDetailsCtrl.js	(revision 12525)
+++ branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/jobs/details/jobDetailsCtrl.js	(revision 12551)
@@ -11,18 +11,5 @@
                 jobService.getJobDetails({ id: $stateParams.id }, function (job) {
                     $scope.job = job;
-                    $scope.job.DateCreated = CSharpDateToString($scope.job.DateCreated);
-                    if (isDefined($scope.job.DateCompleted)) {
-                        $scope.job.DateCompleted = CSharpDateToString($scope.job.DateCompleted);
-                    } else {
-                        $scope.job.DateCompleted = 'Not completed yet';
-                    }
                     $scope.job.CalculatingWaitingRatio = ($scope.job.TotalCalculatingTime / $scope.job.TotalWaitingTime);
-                    $scope.job.AvgTransferringTime = $scope.job.AvgTransferringTime.toHHMMSS();
-                    $scope.job.AvgCalculatingTime = $scope.job.AvgCalculatingTime.toHHMMSS();
-                    $scope.job.MinCalculatingTime = $scope.job.MinCalculatingTime.toHHMMSS();
-                    $scope.job.MaxCalculatingTime = $scope.job.MaxCalculatingTime.toHHMMSS();
-                    $scope.job.TotalCalculatingTime = $scope.job.TotalCalculatingTime.toHHMMSS();
-                    $scope.job.TotalWaitingTime = $scope.job.TotalWaitingTime.toHHMMSS();
-                    $scope.job.TotalTime = $scope.job.TotalTime.toHHMMSS();
 
                     var length = job.TasksStates.length;
@@ -66,24 +53,4 @@
                     function (taskPage) {
                         $scope.taskPage = taskPage;
-                        var length = $scope.taskPage.Tasks.length;
-                        for (var i = 0; i < length; ++i) {
-                            $scope.taskPage.Tasks[i].TotalTime = $scope.taskPage.Tasks[i].TotalTime.toHHMMSS();
-                            $scope.taskPage.Tasks[i].InitialWaitingTime = $scope.taskPage.Tasks[i].InitialWaitingTime.toHHMMSS();
-                            $scope.taskPage.Tasks[i].WaitingTime = $scope.taskPage.Tasks[i].WaitingTime.toHHMMSS();
-                            $scope.taskPage.Tasks[i].CalculatingTime = $scope.taskPage.Tasks[i].CalculatingTime.toHHMMSS();
-                            $scope.taskPage.Tasks[i].TransferTime = $scope.taskPage.Tasks[i].TransferTime.toHHMMSS();
-                            var startTime = $scope.taskPage.Tasks[i].StartTime;
-                            if (isDefined(startTime)) {
-                                $scope.taskPage.Tasks[i].StartTime = CSharpDateToString(startTime);
-                            } else {
-                                $scope.taskPage.Tasks[i].StartTime = 'Not started';
-                            }
-                            var endTime = $scope.taskPage.Tasks[i].EndTime;
-                            if (isDefined(endTime)) {
-                                $scope.taskPage.Tasks[i].EndTime = CSharpDateToString(endTime);
-                            } else {
-                                $scope.taskPage.Tasks[i].EndTime = 'Not finished';
-                            }
-                        }
                     }
                 );
Index: branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/jobs/details/jobTaskDetailsDialog.cshtml
===================================================================
--- branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/jobs/details/jobTaskDetailsDialog.cshtml	(revision 12525)
+++ branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/jobs/details/jobTaskDetailsDialog.cshtml	(revision 12551)
@@ -12,9 +12,11 @@
                             <tr>
                                 <td>Start Time:</td>
-                                <td class="text-right">{{task.StartTime}}</td>
+                                <td ng-show="task.StartTime" class="text-left">{{task.StartTime | toDate}}</td>
+                                <td ng-hide="task.StartTime" class="text-left">Not started</td>
                             </tr>
                             <tr>
                                 <td>End Time:</td>
-                                <td class="text-right">{{task.EndTime}}</td>
+                                <td ng-show="task.EndTime" class="text-left">{{task.EndTime | toDate}}</td>
+                                <td ng-hide="task.EndTime" class="text-left">Not finished</td>
                             </tr>
                             <tr>
@@ -37,21 +39,21 @@
                             <tr>
                                 <td>Total Time:</td>
-                                <td>{{task.TotalTime}}</td>
+                                <td>{{task.TotalTime | toTimespan}}</td>
                             </tr>
                             <tr>
                                 <td>Initial Waiting Time:</td>
-                                <td>{{task.InitialWaitingTime}}</td>
+                                <td>{{task.InitialWaitingTime | toTimespan}}</td>
                             </tr>
                             <tr>
                                 <td>Waiting Time:</td>
-                                <td>{{task.WaitingTime}}</td>
+                                <td>{{task.WaitingTime | toTimespan}}</td>
                             </tr>
                             <tr>
                                 <td>Calculating Time:</td>
-                                <td>{{task.CalculatingTime}}</td>
+                                <td>{{task.CalculatingTime | toTimespan}}</td>
                             </tr>
                             <tr>
                                 <td>Transfer Time:</td>
-                                <td>{{task.TransferTime}}</td>
+                                <td>{{task.TransferTime | toTimespan}}</td>
                             </tr>
                         </table>
@@ -61,21 +63,21 @@
                             <tr>
                                 <td>Calculation Runs:</td>
-                                <td>{{task.NumCalculationRuns}}</td>
+                                <td class="text-right">{{task.NumCalculationRuns}}</td>
                             </tr>
                             <tr>
                                 <td>Retries Runs:</td>
-                                <td>{{task.NumRetries}}</td>
+                                <td class="text-right">{{task.NumRetries}}</td>
                             </tr>
                             <tr>
                                 <td>Cores Required:</td>
-                                <td>{{task.CoresRequired}}</td>
+                                <td class="text-right">{{task.CoresRequired}}</td>
                             </tr>
                             <tr>
                                 <td>Memory Required:</td>
-                                <td>{{task.MemoryRequired}}</td>
+                                <td class="text-right">{{task.MemoryRequired}} MB</td>
                             </tr>
                             <tr>
                                 <td>Priority:</td>
-                                <td>{{task.Priority}}</td>
+                                <td class="text-right">{{task.Priority}}</td>
                             </tr>
                         </table>
Index: branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/jobs/jobs.cshtml
===================================================================
--- branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/jobs/jobs.cshtml	(revision 12525)
+++ branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/jobs/jobs.cshtml	(revision 12551)
@@ -17,4 +17,9 @@
             <a ng-href="#/statistics/groups">Groups</a>
         </li>
+        @if (Request.IsAuthenticated && User.IsInRole(HiveRoles.Administrator)) {
+            <li>
+                <a ng-href="#/statistics/exceptions">Exceptions</a>
+            </li>
+        }
     </ul>
 </header>
@@ -33,4 +38,7 @@
                             <th>#</th>
                             <th>Job Name</th>
+                            @if (Request.IsAuthenticated && User.IsInRole(HiveRoles.Administrator)) {
+                                <th>User Name</th>
+                            }
                             <th>Date Created</th>
                             <th>Progress</th>
@@ -38,42 +46,5 @@
                         </tr>
                         </thead>
-                        <tr ng-repeat="job in jobs">
-                            <td>{{$index + 1}}</td>
-                            <td>{{job.Name}}</td>
-                            <td>{{job.DateCreated}}</td>
-                            <td>
-                                <progressbar class="progress active" max="job.TotalTasks" value="job.CompletedTasks" type="success"><i style="color:black; white-space:nowrap;">{{job.CompletedTasks}} / {{job.TotalTasks}}</i></progressbar>
-                            </td>
-                            <td>
-                                <a ng-href="#/statistics/jobs/{{job.Id}}">Details</a>
-                            </td>
-                        </tr>
-                        <tr ng-hide="jobs.length">
-                            <td colspan="5" class="text-center">No active jobs found!</td>
-                        </tr>
-                    </table>
-                </div>
-            </div>
-        </div>
-    </div>
-    @if (Request.IsAuthenticated && User.IsInRole(HiveRoles.Administrator)) {
-        <div class="row">
-            <div class="col-lg-12">
-                <div class="panel panel-default">
-                    <div class="panel-heading">
-                        <h3 class="panel-title">Current Active Jobs</h3>
-                    </div>
-                    <div class="panel-body">
-                        <table class="table table-hover table-condensed">
-                            <thead>
-                                <tr>
-                                    <th>#</th>
-                                    <th>Job Name</th>
-                                    <th>User Name</th>
-                                    <th>Date Created</th>
-                                    <th>Progress</th>
-                                    <th></th>
-                                </tr>
-                            </thead>
+                        @if (Request.IsAuthenticated && User.IsInRole(HiveRoles.Administrator)) {
                             <tr ng-repeat="job in allUsersJobs">
                                 <td>{{$index + 1}}</td>
@@ -82,5 +53,5 @@
                                     <a ng-href="#/statistics/users/{{job.UserId}}" ng-show="job.UserName">{{job.UserName}}</a>
                                 </td>
-                                <td>{{job.DateCreated}}</td>
+                                <td>{{job.DateCreated | toDate}}</td>
                                 <td>
                                     <progressbar class="progress active" max="job.TotalTasks" value="job.CompletedTasks" type="success"><i style="color:black; white-space:nowrap;">{{job.CompletedTasks}} / {{job.TotalTasks}}</i></progressbar>
@@ -93,10 +64,26 @@
                                 <td colspan="6" class="text-center">No active jobs found!</td>
                             </tr>
-                        </table>
-                    </div>
+                        } else {
+                            <tr ng-repeat="job in jobs">
+                                <td>{{$index + 1}}</td>
+                                <td>{{job.Name}}</td>
+                                <td>{{job.DateCreated | toDate}}</td>
+                                <td>
+                                    <progressbar class="progress active" max="job.TotalTasks" value="job.CompletedTasks" type="success"><i style="color: black; white-space: nowrap;">{{job.CompletedTasks}} / {{job.TotalTasks}}</i></progressbar>
+                                </td>
+                                <td>
+                                    <a ng-href="#/statistics/jobs/{{job.Id}}">Details</a>
+                                </td>
+                            </tr>
+                            <tr ng-hide="jobs.length">
+                                <td colspan="5" class="text-center">No active jobs found!</td>
+                            </tr>
+                        }
+                    </table>
                 </div>
             </div>
         </div>
-    }
+    </div>
+
     <div class="row">
         <div class="col-lg-12">
@@ -120,6 +107,6 @@
                             <td>{{($index + 1)+((completedJobCurPage-1)*(completedJobPageSize))}}</td>
                             <td>{{job.Name}}</td>
-                            <td>{{job.DateCreated}}</td>
-                            <td>{{job.DateCompleted}}</td>
+                            <td>{{job.DateCreated | toDate}}</td>
+                            <td>{{job.DateCompleted | toDate}}</td>
                             <td>{{job.TotalTasks}}</td>
                             <td><a ng-href="#/statistics/jobs/{{job.Id}}">Details</a></td>
Index: branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/jobs/jobsCtrl.js
===================================================================
--- branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/jobs/jobsCtrl.js	(revision 12525)
+++ branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/jobs/jobsCtrl.js	(revision 12551)
@@ -12,8 +12,4 @@
                 jobService.getAllJobs({ completed: false }, function(jobs) {
                     $scope.jobs = jobs;
-                    var length = $scope.jobs.length;
-                    for (var i = 0; i < length; ++i) {
-                        $scope.jobs[i].DateCreated = CSharpDateToString($scope.jobs[i].DateCreated);
-                    }
                 });
             };
@@ -23,9 +19,4 @@
                     function (jobPage) {
                         $scope.completedJobPage = jobPage;
-                        var length = $scope.completedJobPage.Jobs.length;
-                        for (var i = 0; i < length; ++i) {
-                            $scope.completedJobPage.Jobs[i].DateCreated = CSharpDateToString($scope.completedJobPage.Jobs[i].DateCreated);
-                            $scope.completedJobPage.Jobs[i].DateCompleted = CSharpDateToString($scope.completedJobPage.Jobs[i].DateCompleted);
-                        }
                     }
                 );
@@ -36,8 +27,4 @@
                     $scope.isAdministrator = true;
                     $scope.allUsersJobs = jobs;
-                    var length = $scope.allUsersJobs.length;
-                    for (var i = 0; i < length; ++i) {
-                        $scope.allUsersJobs[i].DateCreated = CSharpDateToString($scope.allUsersJobs[i].DateCreated);
-                    }
                 });
             };
Index: branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/services/clientService.js
===================================================================
--- branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/services/clientService.js	(revision 12525)
+++ branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/services/clientService.js	(revision 12551)
@@ -4,5 +4,5 @@
     module.factory('app.statistics.clientService',
         ['$resource', function ($resource) {
-            return $resource(apiUrl + ':action', { id: '@id', page: '@page', size: '@size', states: '@states', expired: '@expired', start: '@start', end: '@end' }, {
+            return $resource(apiUrl + ':action', { id: '@id', page: '@page', size: '@size', states: '@states', expired: '@expired', start: '@start', end: '@end', userId: '@userId' }, {
                 getClientDetails: { method: 'GET', params: { action: 'GetClientDetails' } },
                 getClients: { method: 'GET', params: { action: 'GetClients' } },
Index: branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/users/details/userDetails.cshtml
===================================================================
--- branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/users/details/userDetails.cshtml	(revision 12525)
+++ branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/users/details/userDetails.cshtml	(revision 12551)
@@ -16,4 +16,9 @@
             <a ng-href="#/statistics/groups">Groups</a>
         </li>
+        @if (Request.IsAuthenticated && User.IsInRole(HiveRoles.Administrator)) {
+            <li>
+                <a ng-href="#/statistics/exceptions">Exceptions</a>
+            </li>
+        }
     </ul>
 </header>
@@ -46,7 +51,7 @@
                         <tr>
                             <td class="text-left">Total:</td>
-                            <td class="text-right">{{totalJobTasks}}</td>
+                            <td class="text-right">{{totalUserTasks}}</td>
                         </tr>
-                        <tr ng-repeat="state in states">
+                        <tr ng-repeat="state in user.TasksStates">
                             <td class="text-left">{{state.State}}:</td>
                             <td class="text-right">{{state.Count}}</td>
@@ -78,5 +83,5 @@
                             <td>{{$index + 1}}</td>
                             <td>{{job.Name}}</td>
-                            <td>{{job.DateCreated}}</td>
+                            <td>{{job.DateCreated | toDate}}</td>
                             <td>
                                 <progressbar class="progress active" max="job.TotalTasks" value="job.CompletedTasks" type="success"><i style="color:black; white-space:nowrap;">{{job.CompletedTasks}} / {{job.TotalTasks}}</i></progressbar>
@@ -116,6 +121,6 @@
                             <td>{{($index + 1)+((completedJobCurPage-1)*(completedJobPageSize))}}</td>
                             <td>{{job.Name}}</td>
-                            <td>{{job.DateCreated}}</td>
-                            <td>{{job.DateCompleted}}</td>
+                            <td>{{job.DateCreated | toDate}}</td>
+                            <td>{{job.DateCompleted | toDate}}</td>
                             <td>{{job.TotalTasks}}</td>
                             <td><a ng-href="#/statistics/jobs/{{job.Id}}">Details</a></td>
@@ -135,5 +140,4 @@
         </div>
     </div>
-
 </div>
 }
Index: branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/users/details/userDetailsCtrl.js
===================================================================
--- branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/users/details/userDetailsCtrl.js	(revision 12525)
+++ branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/users/details/userDetailsCtrl.js	(revision 12551)
@@ -12,4 +12,11 @@
                 userService.getUser({ id: $stateParams.id }, function(user) {
                     $scope.user = user;
+
+                    var length = user.TasksStates.length;
+                    var total = 0;
+                    for (var i = 0; i < length; ++i) {
+                        total += user.TasksStates[i].Count;
+                    }
+                    $scope.totalUserTasks = total;
                 });
             };
@@ -18,8 +25,4 @@
                 jobService.getAllJobsByUserId({ id: $stateParams.id, completed: false }, function (jobs) {
                     $scope.jobs = jobs;
-                    var length = $scope.jobs.length;
-                    for (var i = 0; i < length; ++i) {
-                        $scope.jobs[i].DateCreated = CSharpDateToString($scope.jobs[i].DateCreated);
-                    }
                 });
             };
@@ -29,9 +32,4 @@
                     function (jobPage) {
                         $scope.completedJobPage = jobPage;
-                        var length = $scope.completedJobPage.Jobs.length;
-                        for (var i = 0; i < length; ++i) {
-                            $scope.completedJobPage.Jobs[i].DateCreated = CSharpDateToString($scope.completedJobPage.Jobs[i].DateCreated);
-                            $scope.completedJobPage.Jobs[i].DateCompleted = CSharpDateToString($scope.completedJobPage.Jobs[i].DateCompleted);
-                        }
                     }
                 );
Index: branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/users/users.cshtml
===================================================================
--- branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/users/users.cshtml	(revision 12525)
+++ branches/HiveStatistics/sources/HeuristicLab.Services.WebApp.Statistics/3.3/WebApp/users/users.cshtml	(revision 12551)
@@ -16,4 +16,9 @@
             <a ng-href="#/statistics/groups">Groups</a>
         </li>
+        @if (Request.IsAuthenticated && User.IsInRole(HiveRoles.Administrator)) {
+            <li>
+                <a ng-href="#/statistics/exceptions">Exceptions</a>
+            </li>
+        }
     </ul>
 </header>
