trafficcontrol-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From dang...@apache.org
Subject [3/5] incubator-trafficcontrol git commit: adds dashboard page
Date Mon, 08 May 2017 19:23:07 GMT
adds dashboard page


Project: http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/commit/848c0c8e
Tree: http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/tree/848c0c8e
Diff: http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/diff/848c0c8e

Branch: refs/heads/master
Commit: 848c0c8e05c5373793724ac2e331bf0ee5eb53f9
Parents: a53c064
Author: Jeremy Mitchell <mitchell852@gmail.com>
Authored: Wed May 3 15:30:34 2017 -0600
Committer: Dan Kirkwood <dangogh@gmail.com>
Committed: Mon May 8 13:21:54 2017 -0600

----------------------------------------------------------------------
 .../monitor/dashboard/DashboardController.js    |  28 +-
 .../private/monitor/dashboard/_dashboard.scss   |  46 ++
 .../monitor/dashboard/dashboard.tpl.html        | 546 ++++++++++++++++++-
 .../modules/private/monitor/dashboard/index.js  |  12 +-
 traffic_ops/experimental/ui/bower.json          |   3 +
 5 files changed, 631 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/848c0c8e/traffic_ops/experimental/ui/app/src/modules/private/monitor/dashboard/DashboardController.js
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/modules/private/monitor/dashboard/DashboardController.js
b/traffic_ops/experimental/ui/app/src/modules/private/monitor/dashboard/DashboardController.js
index f6d611f..2abe702 100644
--- a/traffic_ops/experimental/ui/app/src/modules/private/monitor/dashboard/DashboardController.js
+++ b/traffic_ops/experimental/ui/app/src/modules/private/monitor/dashboard/DashboardController.js
@@ -17,8 +17,32 @@
  * under the License.
  */
 
-var DashboardController = function($scope) {
+var DashboardController = function(changeLogs, cacheGroupHealth, $scope, locationUtils) {
+
+	$scope.changeLogs = changeLogs;
+
+	$scope.getRelativeTime = function(date) {
+		return moment(date).fromNow();
+	};
+
+	$scope.navigateToPath = locationUtils.navigateToPath;
+
+
+	$scope.locationHealth = {
+		totalOnline: cacheGroupHealth.totalOnline,
+		totalOffline: cacheGroupHealth.totalOffline,
+		locations: cacheGroupHealth.cachegroups
+	};
+
+	// pagination
+	$scope.currentLocationPage = 1;
+	$scope.locationsPerPage = 10;
+
+	$scope.onlinePercent = function(location) {
+		return location.online / (location.online + location.offline);
+	};
+
 };
 
-DashboardController.$inject = ['$scope'];
+DashboardController.$inject = ['changeLogs', 'cacheGroupHealth', '$scope', 'locationUtils'];
 module.exports = DashboardController;

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/848c0c8e/traffic_ops/experimental/ui/app/src/modules/private/monitor/dashboard/_dashboard.scss
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/modules/private/monitor/dashboard/_dashboard.scss
b/traffic_ops/experimental/ui/app/src/modules/private/monitor/dashboard/_dashboard.scss
index d57b9c6..99435c4 100644
--- a/traffic_ops/experimental/ui/app/src/modules/private/monitor/dashboard/_dashboard.scss
+++ b/traffic_ops/experimental/ui/app/src/modules/private/monitor/dashboard/_dashboard.scss
@@ -14,3 +14,49 @@
  limitations under the License.
 
 */
+
+#cache-groups-outer-container {
+
+  #cacheGroupsContainer {
+    max-height: 452px;
+    margin-bottom: 0;
+
+    .list-group-item {
+      background-color: transparent;
+    }
+
+    .cache-group-health {
+      height: 45px;
+
+      .cache-groups-table {
+        margin-top: -10px;
+        border-style: none;
+
+        td {
+          border-top: none !important;
+          padding: 12px 8px !important;
+        }
+
+      }
+
+    }
+
+  }
+
+  .cache-groups-pagination {
+    margin: 0 0 10px 0;
+    float: left;
+  }
+
+  .cache-group-search-form {
+    float: right;
+    width: 250px;
+    margin-bottom: 10px;
+  }
+
+}
+
+#cacheGroupsLoadingContainer {
+  height: 555px;
+  background-color: transparent;
+}

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/848c0c8e/traffic_ops/experimental/ui/app/src/modules/private/monitor/dashboard/dashboard.tpl.html
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/modules/private/monitor/dashboard/dashboard.tpl.html
b/traffic_ops/experimental/ui/app/src/modules/private/monitor/dashboard/dashboard.tpl.html
index cc3c2fc..ffee368 100644
--- a/traffic_ops/experimental/ui/app/src/modules/private/monitor/dashboard/dashboard.tpl.html
+++ b/traffic_ops/experimental/ui/app/src/modules/private/monitor/dashboard/dashboard.tpl.html
@@ -17,4 +17,548 @@ specific language governing permissions and limitations
 under the License.
 -->
 
-<h3>Dashboard</h3>
+<script src="../../../../../../../../../traffic_portal/app/src/modules/private/deliveryService/view/overview/DeliveryServiceViewOverviewController.js"></script>
+<div role="main">
+    <!-- top tiles -->
+    <div class="row tile_count">
+        <div class="col-md-2 col-sm-4 col-xs-6 tile_stats_count">
+            <span class="count_top"><i class="fa fa-user"></i> Total Users</span>
+            <div class="count">2500</div>
+            <span class="count_bottom"><i class="green">4% </i> From last
Week</span>
+        </div>
+        <div class="col-md-2 col-sm-4 col-xs-6 tile_stats_count">
+            <span class="count_top"><i class="fa fa-clock-o"></i> Average
Time</span>
+            <div class="count">123.50</div>
+            <span class="count_bottom"><i class="green"><i class="fa fa-sort-asc"></i>3%
</i> From last Week</span>
+        </div>
+        <div class="col-md-2 col-sm-4 col-xs-6 tile_stats_count">
+            <span class="count_top"><i class="fa fa-user"></i> Total Males</span>
+            <div class="count green">2,500</div>
+            <span class="count_bottom"><i class="green"><i class="fa fa-sort-asc"></i>34%
</i> From last Week</span>
+        </div>
+        <div class="col-md-2 col-sm-4 col-xs-6 tile_stats_count">
+            <span class="count_top"><i class="fa fa-user"></i> Total Females</span>
+            <div class="count">4,567</div>
+            <span class="count_bottom"><i class="red"><i class="fa fa-sort-desc"></i>12%
</i> From last Week</span>
+        </div>
+        <div class="col-md-2 col-sm-4 col-xs-6 tile_stats_count">
+            <span class="count_top"><i class="fa fa-user"></i> Total Collections</span>
+            <div class="count">2,315</div>
+            <span class="count_bottom"><i class="green"><i class="fa fa-sort-asc"></i>34%
</i> From last Week</span>
+        </div>
+        <div class="col-md-2 col-sm-4 col-xs-6 tile_stats_count">
+            <span class="count_top"><i class="fa fa-user"></i> Total Connections</span>
+            <div class="count">7,325</div>
+            <span class="count_bottom"><i class="green"><i class="fa fa-sort-asc"></i>34%
</i> From last Week</span>
+        </div>
+    </div>
+    <!-- /top tiles -->
+
+    <div class="row">
+        <div class="col-md-12 col-sm-12 col-xs-12">
+            <div class="dashboard_graph">
+
+                <div class="row x_title">
+                    <div class="col-md-6">
+                        <h3>Network Activities <small>Graph title sub-title</small></h3>
+                    </div>
+                    <div class="col-md-6">
+                        <div id="reportrange" class="pull-right" style="background: #fff;
cursor: pointer; padding: 5px 10px; border: 1px solid #ccc">
+                            <i class="glyphicon glyphicon-calendar fa fa-calendar"></i>
+                            <span>December 30, 2014 - January 28, 2015</span>
<b class="caret"></b>
+                        </div>
+                    </div>
+                </div>
+
+                <div class="col-md-9 col-sm-9 col-xs-12">
+                    <div id="chart_plot_01" class="demo-placeholder"></div>
+                </div>
+                <div class="col-md-3 col-sm-3 col-xs-12 bg-white">
+                    <div class="x_title">
+                        <h3>Top Campaign Performance</h3>
+                        <div class="clearfix"></div>
+                    </div>
+
+                    <div class="col-md-12 col-sm-12 col-xs-6">
+                        <div>
+                            <p>Facebook Campaign</p>
+                            <div class="">
+                                <div class="progress progress_sm" style="width: 76%;">
+                                    <div class="progress-bar bg-green" role="progressbar"
data-transitiongoal="80"></div>
+                                </div>
+                            </div>
+                        </div>
+                        <div>
+                            <p>Twitter Campaign</p>
+                            <div class="">
+                                <div class="progress progress_sm" style="width: 76%;">
+                                    <div class="progress-bar bg-green" role="progressbar"
data-transitiongoal="60"></div>
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                    <div class="col-md-12 col-sm-12 col-xs-6">
+                        <div>
+                            <p>Conventional Media</p>
+                            <div class="">
+                                <div class="progress progress_sm" style="width: 76%;">
+                                    <div class="progress-bar bg-green" role="progressbar"
data-transitiongoal="40"></div>
+                                </div>
+                            </div>
+                        </div>
+                        <div>
+                            <p>Bill boards</p>
+                            <div class="">
+                                <div class="progress progress_sm" style="width: 76%;">
+                                    <div class="progress-bar bg-green" role="progressbar"
data-transitiongoal="50"></div>
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+
+                </div>
+
+                <div class="clearfix"></div>
+            </div>
+        </div>
+
+    </div>
+    <br />
+
+    <div class="row">
+
+
+        <div class="col-md-4 col-sm-4 col-xs-12">
+            <div class="x_panel tile fixed_height_320">
+                <div class="x_title">
+                    <h3>App Versions</h3>
+                </div>
+                <div class="x_content">
+                    <h4>App Usage across versions</h4>
+                    <div class="widget_summary">
+                        <div class="w_left w_25">
+                            <span>0.1.5.2</span>
+                        </div>
+                        <div class="w_center w_55">
+                            <div class="progress">
+                                <div class="progress-bar bg-green" role="progressbar"
aria-valuenow="60" aria-valuemin="0" aria-valuemax="100" style="width: 66%;">
+                                    <span class="sr-only">60% Complete</span>
+                                </div>
+                            </div>
+                        </div>
+                        <div class="w_right w_20">
+                            <span>123k</span>
+                        </div>
+                        <div class="clearfix"></div>
+                    </div>
+
+                    <div class="widget_summary">
+                        <div class="w_left w_25">
+                            <span>0.1.5.3</span>
+                        </div>
+                        <div class="w_center w_55">
+                            <div class="progress">
+                                <div class="progress-bar bg-green" role="progressbar"
aria-valuenow="60" aria-valuemin="0" aria-valuemax="100" style="width: 45%;">
+                                    <span class="sr-only">60% Complete</span>
+                                </div>
+                            </div>
+                        </div>
+                        <div class="w_right w_20">
+                            <span>53k</span>
+                        </div>
+                        <div class="clearfix"></div>
+                    </div>
+                    <div class="widget_summary">
+                        <div class="w_left w_25">
+                            <span>0.1.5.4</span>
+                        </div>
+                        <div class="w_center w_55">
+                            <div class="progress">
+                                <div class="progress-bar bg-green" role="progressbar"
aria-valuenow="60" aria-valuemin="0" aria-valuemax="100" style="width: 25%;">
+                                    <span class="sr-only">60% Complete</span>
+                                </div>
+                            </div>
+                        </div>
+                        <div class="w_right w_20">
+                            <span>23k</span>
+                        </div>
+                        <div class="clearfix"></div>
+                    </div>
+                    <div class="widget_summary">
+                        <div class="w_left w_25">
+                            <span>0.1.5.5</span>
+                        </div>
+                        <div class="w_center w_55">
+                            <div class="progress">
+                                <div class="progress-bar bg-green" role="progressbar"
aria-valuenow="60" aria-valuemin="0" aria-valuemax="100" style="width: 5%;">
+                                    <span class="sr-only">60% Complete</span>
+                                </div>
+                            </div>
+                        </div>
+                        <div class="w_right w_20">
+                            <span>3k</span>
+                        </div>
+                        <div class="clearfix"></div>
+                    </div>
+                    <div class="widget_summary">
+                        <div class="w_left w_25">
+                            <span>0.1.5.6</span>
+                        </div>
+                        <div class="w_center w_55">
+                            <div class="progress">
+                                <div class="progress-bar bg-green" role="progressbar"
aria-valuenow="60" aria-valuemin="0" aria-valuemax="100" style="width: 2%;">
+                                    <span class="sr-only">60% Complete</span>
+                                </div>
+                            </div>
+                        </div>
+                        <div class="w_right w_20">
+                            <span>1k</span>
+                        </div>
+                        <div class="clearfix"></div>
+                    </div>
+
+                </div>
+            </div>
+        </div>
+
+        <div class="col-md-4 col-sm-4 col-xs-12">
+            <div class="x_panel tile fixed_height_320 overflow_hidden">
+                <div class="x_title">
+                    <h3>Device Usage</h3>
+                </div>
+                <div class="x_content">
+                    <table class="" style="width:100%">
+                        <tr>
+                            <th style="width:37%;">
+                                <p>Top 5</p>
+                            </th>
+                            <th>
+                                <div class="col-lg-7 col-md-7 col-sm-7 col-xs-7">
+                                    <p class="">Device</p>
+                                </div>
+                                <div class="col-lg-5 col-md-5 col-sm-5 col-xs-5">
+                                    <p class="">Progress</p>
+                                </div>
+                            </th>
+                        </tr>
+                        <tr>
+                            <td>
+                                <canvas class="canvasDoughnut" height="140" width="140"
style="margin: 15px 10px 10px 0"></canvas>
+                            </td>
+                            <td>
+                                <table class="tile_info">
+                                    <tr>
+                                        <td>
+                                            <p><i class="fa fa-square blue"></i>IOS
</p>
+                                        </td>
+                                        <td>30%</td>
+                                    </tr>
+                                    <tr>
+                                        <td>
+                                            <p><i class="fa fa-square green"></i>Android
</p>
+                                        </td>
+                                        <td>10%</td>
+                                    </tr>
+                                    <tr>
+                                        <td>
+                                            <p><i class="fa fa-square purple"></i>Blackberry
</p>
+                                        </td>
+                                        <td>20%</td>
+                                    </tr>
+                                    <tr>
+                                        <td>
+                                            <p><i class="fa fa-square aero"></i>Symbian
</p>
+                                        </td>
+                                        <td>15%</td>
+                                    </tr>
+                                    <tr>
+                                        <td>
+                                            <p><i class="fa fa-square red"></i>Others
</p>
+                                        </td>
+                                        <td>30%</td>
+                                    </tr>
+                                </table>
+                            </td>
+                        </tr>
+                    </table>
+                </div>
+            </div>
+        </div>
+
+
+        <div class="col-md-4 col-sm-4 col-xs-12">
+            <div class="x_panel tile fixed_height_320">
+                <div class="x_title">
+                    <h3>Quick Settings</h3>
+                </div>
+                <div class="x_content">
+                    <div class="dashboard-widget-content">
+                        <ul class="quick-list">
+                            <li><i class="fa fa-calendar-o"></i><a href="#">Settings</a>
+                            </li>
+                            <li><i class="fa fa-bars"></i><a href="#">Subscription</a>
+                            </li>
+                            <li><i class="fa fa-bar-chart"></i><a href="#">Auto
Renewal</a> </li>
+                            <li><i class="fa fa-line-chart"></i><a href="#">Achievements</a>
+                            </li>
+                            <li><i class="fa fa-bar-chart"></i><a href="#">Auto
Renewal</a> </li>
+                            <li><i class="fa fa-line-chart"></i><a href="#">Achievements</a>
+                            </li>
+                            <li><i class="fa fa-area-chart"></i><a href="#">Logout</a>
+                            </li>
+                        </ul>
+
+                        <div class="sidebar-widget">
+                            <h4>Profile Completion</h4>
+                            <canvas width="150" height="80" id="chart_gauge_01" class=""
style="width: 160px; height: 100px;"></canvas>
+                            <div class="goal-wrapper">
+                                <span id="gauge-text" class="gauge-value pull-left">0</span>
+                                <span class="gauge-value pull-left">%</span>
+                                <span id="goal-text" class="goal-value pull-right">100%</span>
+                            </div>
+                        </div>
+                    </div>
+                </div>
+            </div>
+        </div>
+
+    </div>
+
+
+    <div class="row">
+        <div class="col-md-4 col-sm-4 col-xs-12">
+            <div class="x_panel">
+                <div class="x_title">
+                    <h3>Change Logs</h3>
+                </div>
+                <div class="x_content">
+                    <div class="dashboard-widget-content">
+                        <ul class="list-unstyled timeline widget">
+                            <li ng-repeat="changeLog in ::changeLogs">
+                                <div class="block">
+                                    <div class="block_content">
+                                        <h2 class="title">{{::changeLog.level}}</h2>
+                                        <div class="byline">
+                                            <span>{{::getRelativeTime(changeLog.lastUpdated)}}</span>
by <a>{{::changeLog.user}}</a>
+                                        </div>
+                                        <p class="excerpt">{{::changeLog.message}}</p>
+                                    </div>
+                                </div>
+                            </li>
+                        </ul>
+                    </div>
+                    <div class="text-center">
+                        <a>
+                            <strong><a ng-click="navigateToPath('/admin/change-logs')">See
All Change Logs</a></strong>
+                            <i class="fa fa-angle-right"></i>
+                        </a>
+                    </div>
+                </div>
+            </div>
+        </div>
+
+
+        <div class="col-md-8 col-sm-8 col-xs-12">
+
+
+
+            <div class="row">
+
+                <div class="col-md-12 col-sm-12 col-xs-12">
+                    <div class="x_panel">
+                        <div class="x_title">
+                            <h3>Cache Groups <small>100% online</small></h3>
+                        </div>
+                        <div class="x_content">
+                            <div id="cache-groups-outer-container">
+                                <div id="cacheGroupsOverallHealth">
+                                    <h4 class="cache-groups-online">Cache Groups <small>{{locationHealth.totalOnline/(locationHealth.totalOnline
+ locationHealth.totalOffline) | percentFilter}} online</small></h4>
+                                </div>
+                                <div id="cacheGroupsContainer">
+                                    <div class="alert alert-info" ng-show="(locationHealth.cachegroups
| filter:search:strict).length == 0">
+                                        No matching cache groups
+                                    </div>
+                                    <div class="list-group">
+                                        <a class="cache-group-health list-group-item"
ng-repeat="location in locationHealth.cachegroups | orderBy:[onlinePercent, 'name'] | filter:search:strict
| offsetFilter:(currentLocationPage-1)*locationsPerPage | limitTo:locationsPerPage">
+                                            <div class="row">
+                                                <table class="cache-groups-table table">
+                                                    <tbody>
+                                                    <tr>
+                                                        <td class="col-lg-4 col-md-4 col-sm-4">{{location.name}}</td>
+                                                        <td class="col-lg-4 col-md-4 col-sm-4">{{location.online/(location.online
+ location.offline) | percentFilter}} Online</td>
+                                                        <td class="col-lg-4 col-md-4 col-sm-4">{{location.online}}
Servers Online | {{location.offline}} Servers Offline</td>
+                                                    </tr>
+                                                    </tbody>
+                                                </table>
+                                            </div>
+                                        </a>
+                                    </div>
+                                </div>
+                                <div>
+                                    <div ng-show="(locationHealth.cachegroups | filter:search:strict).length
> 0">
+                                        <uib-pagination class="cache-groups-pagination
pagination-md" boundary-links="true" max-size="2" total-items="(locationHealth.cachegroups
| filter:search:strict).length" items-per-page="locationsPerPage" ng-model="currentLocationPage"
previous-text="&lsaquo;" next-text="&rsaquo;" first-text="&laquo;" last-text="&raquo;"></uib-pagination>
+                                    </div>
+                                    <div class="input-group cache-group-search-form">
+                                        <input type="text" class="filter-input form-control"
placeholder="Filter cache groups..." ng-model="search.name">
+                                        <span class="filter-input-group-btn input-group-btn">
+                                            <button class="btn btn-default" type="button"><i
class="fa fa-search"></i></button>
+                                        </span>
+                                    </div>
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </div>
+
+            </div>
+            <div class="row">
+
+
+                <!-- Start to do list -->
+                <div class="col-md-6 col-sm-6 col-xs-12">
+                    <div class="x_panel">
+                        <div class="x_title">
+                            <h3>To Do List <small>Sample tasks</small></h3>
+                        </div>
+                        <div class="x_content">
+
+                            <div class="">
+                                <ul class="to_do">
+                                    <li>
+                                        <p>
+                                            <input type="checkbox" class="flat"> Schedule
meeting with new client </p>
+                                    </li>
+                                    <li>
+                                        <p>
+                                            <input type="checkbox" class="flat"> Create
email address for new intern</p>
+                                    </li>
+                                    <li>
+                                        <p>
+                                            <input type="checkbox" class="flat"> Have
IT fix the network printer</p>
+                                    </li>
+                                    <li>
+                                        <p>
+                                            <input type="checkbox" class="flat"> Copy
backups to offsite location</p>
+                                    </li>
+                                    <li>
+                                        <p>
+                                            <input type="checkbox" class="flat"> Food
truck fixie locavors mcsweeney</p>
+                                    </li>
+                                    <li>
+                                        <p>
+                                            <input type="checkbox" class="flat"> Food
truck fixie locavors mcsweeney</p>
+                                    </li>
+                                    <li>
+                                        <p>
+                                            <input type="checkbox" class="flat"> Create
email address for new intern</p>
+                                    </li>
+                                    <li>
+                                        <p>
+                                            <input type="checkbox" class="flat"> Have
IT fix the network printer</p>
+                                    </li>
+                                    <li>
+                                        <p>
+                                            <input type="checkbox" class="flat"> Copy
backups to offsite location</p>
+                                    </li>
+                                </ul>
+                            </div>
+                        </div>
+                    </div>
+                </div>
+                <!-- End to do list -->
+
+                <!-- start of weather widget -->
+                <div class="col-md-6 col-sm-6 col-xs-12">
+                    <div class="x_panel">
+                        <div class="x_title">
+                            <h3>Daily active users <small>Sessions</small></h3>
+                        </div>
+                        <div class="x_content">
+                            <div class="row">
+                                <div class="col-sm-12">
+                                    <div class="temperature"><b>Monday</b>,
07:30 AM
+                                        <span>F</span>
+                                        <span><b>C</b></span>
+                                    </div>
+                                </div>
+                            </div>
+                            <div class="row">
+                                <div class="col-sm-4">
+                                    <div class="weather-icon">
+                                        <canvas height="84" width="84" id="partly-cloudy-day"></canvas>
+                                    </div>
+                                </div>
+                                <div class="col-sm-8">
+                                    <div class="weather-text">
+                                        <h3>Texas <br><i>Partly Cloudy
Day</i></h3>
+                                    </div>
+                                </div>
+                            </div>
+                            <div class="col-sm-12">
+                                <div class="weather-text pull-right">
+                                    <h3 class="degrees">23</h3>
+                                </div>
+                            </div>
+
+                            <div class="clearfix"></div>
+
+                            <div class="row weather-days">
+                                <div class="col-sm-2">
+                                    <div class="daily-weather">
+                                        <h2 class="day">Mon</h2>
+                                        <h3 class="degrees">25</h3>
+                                        <canvas id="clear-day" width="32" height="32"></canvas>
+                                        <h5>15 <i>km/h</i></h5>
+                                    </div>
+                                </div>
+                                <div class="col-sm-2">
+                                    <div class="daily-weather">
+                                        <h2 class="day">Tue</h2>
+                                        <h3 class="degrees">25</h3>
+                                        <canvas height="32" width="32" id="rain"></canvas>
+                                        <h5>12 <i>km/h</i></h5>
+                                    </div>
+                                </div>
+                                <div class="col-sm-2">
+                                    <div class="daily-weather">
+                                        <h2 class="day">Wed</h2>
+                                        <h3 class="degrees">27</h3>
+                                        <canvas height="32" width="32" id="snow"></canvas>
+                                        <h5>14 <i>km/h</i></h5>
+                                    </div>
+                                </div>
+                                <div class="col-sm-2">
+                                    <div class="daily-weather">
+                                        <h2 class="day">Thu</h2>
+                                        <h3 class="degrees">28</h3>
+                                        <canvas height="32" width="32" id="sleet"></canvas>
+                                        <h5>15 <i>km/h</i></h5>
+                                    </div>
+                                </div>
+                                <div class="col-sm-2">
+                                    <div class="daily-weather">
+                                        <h2 class="day">Fri</h2>
+                                        <h3 class="degrees">28</h3>
+                                        <canvas height="32" width="32" id="wind"></canvas>
+                                        <h5>11 <i>km/h</i></h5>
+                                    </div>
+                                </div>
+                                <div class="col-sm-2">
+                                    <div class="daily-weather">
+                                        <h2 class="day">Sat</h2>
+                                        <h3 class="degrees">26</h3>
+                                        <canvas height="32" width="32" id="cloudy"></canvas>
+                                        <h5>10 <i>km/h</i></h5>
+                                    </div>
+                                </div>
+                                <div class="clearfix"></div>
+                            </div>
+                        </div>
+                    </div>
+
+                </div>
+                <!-- end of weather widget -->
+            </div>
+        </div>
+    </div>
+</div>

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/848c0c8e/traffic_ops/experimental/ui/app/src/modules/private/monitor/dashboard/index.js
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/modules/private/monitor/dashboard/index.js
b/traffic_ops/experimental/ui/app/src/modules/private/monitor/dashboard/index.js
index 041dc19..2b887f7 100644
--- a/traffic_ops/experimental/ui/app/src/modules/private/monitor/dashboard/index.js
+++ b/traffic_ops/experimental/ui/app/src/modules/private/monitor/dashboard/index.js
@@ -26,7 +26,17 @@ module.exports = angular.module('trafficOps.private.monitor.dashboard',
[])
                 views: {
                     monitorContent: {
                         templateUrl: 'modules/private/monitor/dashboard/dashboard.tpl.html',
-                        controller: 'DashboardController'
+                        controller: 'DashboardController',
+                        resolve: {
+                            changeLogs: function(changeLogService) {
+                                return [];
+                                // return changeLogService.getChangeLogs({ limit: 6 });
+                            },
+                            cacheGroupHealth: function(cacheGroupService) {
+                                return cacheGroupService.getCacheGroupHealth();
+                            }
+                        }
+
                     }
                 }
             })

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/848c0c8e/traffic_ops/experimental/ui/bower.json
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/bower.json b/traffic_ops/experimental/ui/bower.json
index a09ab06..6364104 100755
--- a/traffic_ops/experimental/ui/bower.json
+++ b/traffic_ops/experimental/ui/bower.json
@@ -14,6 +14,9 @@
         "angular-jwt": "0.0.9",
         "bootstrap-sass-official": "3.3.6",
         "es5-shim": "4.5.6",
+        "flot": "0.8.3",
+        "flot.tooltip": "0.8.7",
+        "flot-axislabels": "release-2.0.1",
         "font-awesome": "4.5.0",
         "jquery": "2.0.0",
         "json3": "3.3.2",


Mime
View raw message