http://git-wip-us.apache.org/repos/asf/climate/blob/652ea657/ocw-ui/frontend-new/app/scripts/controllers/parameterselect.js
----------------------------------------------------------------------
diff --git a/ocw-ui/frontend-new/app/scripts/controllers/parameterselect.js 
b/ocw-ui/frontend-new/app/scripts/controllers/parameterselect.js
deleted file mode 100644
index cad97e0..0000000
--- a/ocw-ui/frontend-new/app/scripts/controllers/parameterselect.js
+++ /dev/null
@@ -1,275 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *    http: *www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-'use strict';
-
-/**
- * @ngdoc function
- * @name ocwUiApp.controller:ParameterSelectCtrl
- * @description
- * # ParameterSelectCtrl
- * Controller of the ocwUiApp
- */
-angular.module('ocwUiApp')
-.controller('ParameterSelectCtrl', ['$rootScope', '$scope', '$http', 
'$timeout', 
-                                                  
'selectedDatasetInformation', 'regionSelectParams', 'evaluationSettings', 
-  function($rootScope, $scope, $http, $timeout, selectedDatasetInformation, 
regionSelectParams, evaluationSettings) {
-    $scope.datasets = selectedDatasetInformation.getDatasets();
-
-    // The min/max lat/lon values from the selected datasets
-    $scope.latMin = -90;
-    $scope.latMax = 90;
-    $scope.lonMin = -180;
-    $scope.lonMax = 180;
-    $scope.start = "1900-01-01 00:00:00";
-    $scope.end = "2030-01-01 00:00:00";
-
-    // The min/max lat/lon values that are displayed
-    $scope.displayParams = regionSelectParams.getParameters();
-
-    $scope.runningEval = false;
-
-    // Flag for toggling re-grid controls based on whether or not the user has 
selected a grid
-    // base from the selected datasets. By default we have no datasets so we 
don't need to show
-    // the controls!
-    $scope.areInUserRegridState = false;
-
-    // Initialization for the lat/lon grid step sliders
-    // TODO There has to be a better way of dealing with this. Perhaps a 
directive??
-    $scope.latSliderVal = 0;
-    $scope.lonSliderVal = 0;
-
-    // Settings for jQuery datepicker directives!
-    $scope.datepickerSettings = {
-      changeMonth: true,
-      changeYear: true,
-    };
-
-    $scope.shouldDisableControls = function() {
-      return (selectedDatasetInformation.getDatasetCount() < 2);
-    }
-
-    $scope.shouldDisableEvaluateButton = function() {
-      return ($scope.shouldDisableControls() || $scope.runningEval);
-    }
-
-    $scope.shouldDisableResultsView = function() {
-      var res = false;
-
-      if ($rootScope.evalResults == "")
-        res = true;
-
-      return res;
-    }
-
-    $scope.runEvaluation = function() {
-      $scope.runningEval = true;
-
-      var data = {}
-      var settings = evaluationSettings.getSettings()
-
-      // Set dataset information
-
-      // Grab the reference dataset information
-      var ref_ds = settings.spatialSelect;
-
-      if (ref_ds == null) {
-        ref_ds = $scope.datasets[0];
-      }
-
-      data['reference_dataset'] = null;
-      data['target_datasets'] = [];
-
-      // Parse all the dataset information and generate the necessary objects 
for the backend
-      for (var i = 0; i < $scope.datasets.length; i++) {
-        var dataset = {}
-        dataset['dataset_info'] = {}
-
-        if ($scope.datasets[i].isObs == 0) {
-          dataset['data_source_id'] = 1;
-          dataset['dataset_info']['dataset_id'] = $scope.datasets[i]['id'];
-          dataset['dataset_info']['var_name'] = $scope.datasets[i]['param'];
-          dataset['dataset_info']['lat_name'] = $scope.datasets[i]['lat'];
-          dataset['dataset_info']['lon_name'] = $scope.datasets[i]['lon'];
-          dataset['dataset_info']['time_name'] = $scope.datasets[i]['time'];
-          dataset['dataset_info']['name'] = $scope.datasets[i]['name'];
-        } else {
-          dataset['data_source_id'] = 2;
-          dataset['dataset_info']['dataset_id'] = 
$scope.datasets[i]['datasetId'];
-          dataset['dataset_info']['parameter_id'] = 
$scope.datasets[i]['param'];
-          dataset['dataset_info']['name'] = $scope.datasets[i]['name'];
-        }
-
-        if ($scope.datasets[i].id === ref_ds.id) {
-          data['reference_dataset'] = dataset;
-        } else {
-          data['target_datasets'].push(dataset);
-        }
-      }
-
-      // TODO: These should be use customizable
-      // Set the spatial rebin grid steps
-      data['spatial_rebin_lat_step'] = 1;
-      data['spatial_rebin_lon_step'] = 1;
-
-      // Determine the temporal resolution to use when doing a temporal rebin. 
The
-      // value is used to determine the timedelta in days to use.
-      var temporal_res = settings.temporal.selected;
-
-      if (temporal_res == 'daily') {
-        data['temporal_resolution'] = 1;
-      } else if (temporal_res == 'monthly') {
-        data['temporal_resolution'] = 30;
-      } else if (temporal_res == 'yearly') {
-        data['temporal_resolution'] = 365;
-      } else if (temporal_res == 'full') {
-        data['temporal_resolution'] = 999;
-      } else {
-        // Default to monthly just in case
-        data['temporal_resolution'] = 30;
-      }
-
-      // Load the Metrics for the evaluation
-      data['metrics'] = []
-      var metrics = settings.metrics
-      for (var i = 0; i < metrics.length; i++) {
-        var metric = metrics[i];
-
-        if (metric.select) {
-          data['metrics'].push(metric.name)
-        }
-      }
-
-      // Set the bound values for the evaluation
-      data['start_time'] =  $scope.displayParams.start + " 00:00:00",
-      data['end_time'] = $scope.displayParams.end + " 00:00:00",
-      data['lat_min'] = $scope.displayParams.latMin,
-      data['lat_max'] = $scope.displayParams.latMax,
-      data['lon_min'] = $scope.displayParams.lonMin,
-      data['lon_max'] = $scope.displayParams.lonMax,
-
-      $http.post($rootScope.baseURL + '/processing/run_evaluation/', data).
-      success(function(data) {
-        var evalWorkDir = data['eval_work_dir'];
-
-        $scope.runningEval = false;
-
-        $timeout(function() {
-          if (evalWorkDir !== undefined) {
-            window.location = "#/results/" + evalWorkDir;
-          } else {
-            window.location = "#/results";
-          }
-        }, 100);
-        
-      }).error(function() {
-        $scope.runningEval = false;
-      });
-    };
-
-    // Check the Parameter selection boxes after the user has changed input to 
ensure that valid
-    // values were entered
-    $scope.checkParameters = function() {
-      if (parseFloat($scope.displayParams.latMin) < parseFloat($scope.latMin))
-        $scope.displayParams.latMin = $scope.latMin;
-
-      if (parseFloat($scope.displayParams.latMax) > parseFloat($scope.latMax))
-        $scope.displayParams.latMax = $scope.latMax;
-
-      if (parseFloat($scope.displayParams.lonMin) < parseFloat($scope.lonMin)) 
-        $scope.displayParams.lonMin = $scope.lonMin;
-
-      if (parseFloat($scope.displayParams.lonMax) > parseFloat($scope.lonMax)) 
-        $scope.displayParams.lonMax = $scope.lonMax;
-
-      if ($scope.displayParams.start < $scope.start) 
-        $scope.displayParams.start = $scope.start;
-
-      if ($scope.displayParams.end > $scope.end)
-        $scope.displayParams.end = $scope.end;
-
-          $scope.displayParams.latMin = 
$scope.truncateFloat($scope.displayParams.latMin);
-          $scope.displayParams.latMax = 
$scope.truncateFloat($scope.displayParams.latMax);
-          $scope.displayParams.lonMin = 
$scope.truncateFloat($scope.displayParams.lonMin);
-          $scope.displayParams.lonMax = 
$scope.truncateFloat($scope.displayParams.lonMax);
-
-      $scope.$apply();
-      $rootScope.$broadcast('redrawOverlays', []);
-    }
-
-    $scope.unwatchDatasets = $scope.$watch('datasets', 
-      function() { 
-        var numDatasets = $scope.datasets.length;
-        $scope.displayParams.areValid = false;
-        $scope.areInUserRegridState = false;
-
-        if (numDatasets) {
-          var latMin        = -90,
-            latMax        = 90,
-            lonMin        = -180,
-            lonMax        = 180,
-            start         = "1900-01-01 00:00:00",
-            end           = "2030-01-01 00:00:00",
-            datasetRegrid = false;
-          // Get the valid lat/lon range in the selected datasets.
-          for (var i = 0; i < numDatasets; i++) {
-            var curDataset = $scope.datasets[i];
-    
-            latMin = (curDataset['latlonVals']['latMin'] > latMin) ? 
curDataset['latlonVals']['latMin'] : latMin;
-            latMax = (curDataset['latlonVals']['latMax'] < latMax) ? 
curDataset['latlonVals']['latMax'] : latMax;
-            lonMin = (curDataset['latlonVals']['lonMin'] > lonMin) ? 
curDataset['latlonVals']['lonMin'] : lonMin;
-            lonMax = (curDataset['latlonVals']['lonMax'] < lonMax) ? 
curDataset['latlonVals']['lonMax'] : lonMax;
-            start = (curDataset['timeVals']['start'] > start) ? 
curDataset['timeVals']['start'] : start;
-            end = (curDataset['timeVals']['end'] < end) ? 
curDataset['timeVals']['end'] : end;
-
-            datasetRegrid = datasetRegrid || curDataset.regrid;
-
-          }
-
-          $scope.areInUserRegridState = !datasetRegrid
-        }
-
-        // Update the display parameters with the new valid overlap that we've 
found!
-        $scope.displayParams.latMin = $scope.truncateFloat(latMin);
-        $scope.displayParams.latMax = $scope.truncateFloat(latMax);
-        $scope.displayParams.lonMin = $scope.truncateFloat(lonMin);
-        $scope.displayParams.lonMax = $scope.truncateFloat(lonMax);
-        $scope.displayParams.start = (typeof start == 'undefined') ? "" : 
start.split(" ")[0];
-        $scope.displayParams.end = (typeof end == 'undefined') ? "" : 
end.split(" ")[0];
-
-        // Update the local store values!
-        $scope.latMin = latMin;
-        $scope.latMax = latMax;
-        $scope.lonMin = lonMin;
-        $scope.lonMax = lonMax;
-        $scope.start = (typeof start == 'undefined') ? "" : start.split(" 
")[0];
-        $scope.end = (typeof end == 'undefined') ? "" : end.split(" ")[0];
-
-        $scope.displayParams.areValid = true;
-        $rootScope.$broadcast('redrawOverlays', []);
-      }, true);
-
-      $scope.truncateFloat = function(floatVal) {
-          if (floatVal > 0) {
-              return Math.floor(floatVal);
-          } else {
-              return Math.ceil(floatVal);
-          }
-      };
-  }]);

http://git-wip-us.apache.org/repos/asf/climate/blob/652ea657/ocw-ui/frontend-new/app/scripts/controllers/rcmedselection.js
----------------------------------------------------------------------
diff --git a/ocw-ui/frontend-new/app/scripts/controllers/rcmedselection.js 
b/ocw-ui/frontend-new/app/scripts/controllers/rcmedselection.js
deleted file mode 100644
index a3b3801..0000000
--- a/ocw-ui/frontend-new/app/scripts/controllers/rcmedselection.js
+++ /dev/null
@@ -1,144 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *    http: *www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-'use strict';
-
-/**
- * @ngdoc function
- * @name ocwUiApp.controller:RcmedSelectionCtrl
- * @description
- * # RcmedSelectionCtrl
- * Controller of the ocwUiApp
- */
-angular.module('ocwUiApp')
-  .controller('RcmedSelectionCtrl', ['$rootScope', '$scope', '$http', 
'$timeout', 'selectedDatasetInformation',
-    function($rootScope, $scope, $http, $timeout, selectedDatasetInformation) {
-      // Grab a copy of the datasets so we can display a count to the user!
-      $scope.datasetCount = selectedDatasetInformation.getDatasets();
-      $scope.fileAdded = false;
-
-      $scope.getObservations = function() {
-        $http.jsonp($rootScope.baseURL + 
'/rcmed/datasets/?callback=JSON_CALLBACK').
-          success(function(data) {
-            $scope.availableObs = data;
-            $scope.availableObs.splice(0, 0, {longname: 'Please select an 
option'});
-            $scope.datasetSelection = $scope.availableObs[0];
-          }).
-          error(function(data) {
-            $scope.availableObs = ["Unable to query RCMED"]
-          });
-      };
-
-      $scope.getObservationBounds = function() {
-        $scope.observationBounds = {};
-
-        $http.get($rootScope.baseURL + '/rcmed/parameters/bounds/')
-          .success(function(data) {
-              $scope.observationBounds = data;
-              $scope.observationBounds['default'] = {
-                  'start': '1900-01-01 00:00:00',
-                  'end': '2050-01-01 00:00:00',
-                  'latMin': -90,
-                  'latMax': 89,
-                  'lonMin': -180,
-                  'lonMax': 179,
-              };
-          })
-          .error(function(data) {
-              $scope.observationBounds['default'] = {
-                  'start': '1900-01-01 00:00:00',
-                  'end': '2050-01-01 00:00:00',
-                  'latMin': -90,
-                  'latMax': 89,
-                  'lonMin': -180,
-                  'lonMax': 179,
-              };
-          });
-      };
-
-      $scope.getBoundsByParameterId = function(parameterId) {
-        if (parameterId in $scope.observationBounds) {
-          return $scope.observationBounds[parameterId];
-        } else {
-          return $scope.observationBounds['default'];
-        }
-      };
-
-      $scope.dataSelectUpdated = function() {
-        var urlString = $rootScope.baseURL + '/rcmed/parameters/?dataset=' +
-                        $scope.datasetSelection["shortname"] +
-                        "&callback=JSON_CALLBACK";
-        $http.jsonp(urlString)
-          .success(function(data) {
-            $scope.retrievedObsParams = data;
-            if ($scope.retrievedObsParams.length > 1)
-              $scope.retrievedObsParams.splice(0, 0, {shortname: 'Please 
select a parameter'});
-            $scope.parameterSelection = $scope.retrievedObsParams[0];
-          });
-      };
-
-      $scope.addObservation = function() {
-        var newDataset = {};
-
-        newDataset['isObs'] = 1;
-        // Save the dataset id (the important part) and name (for display 
purposes)
-        newDataset['datasetId'] = $scope.datasetSelection['dataset_id'];
-        newDataset['name'] = $scope.datasetSelection['longname'];
-        // Save the parameter id (the important part) and name (for display 
purposes)
-        newDataset['id']    = $scope.parameterSelection['parameter_id'];
-        newDataset['param'] = $scope.parameterSelection['parameter_id'];
-        newDataset['paramName'] = $scope.parameterSelection['longname'];
-
-        var bounds = $scope.getBoundsByParameterId(newDataset['id']);
-        newDataset['latlonVals'] = {
-          'latMin': bounds['lat_min'],
-          'latMax': bounds['lat_max'],
-          'lonMin': bounds['lon_min'],
-          'lonMax': bounds['lon_max'],
-        };
-        newDataset['timeVals'] = {
-          'start': bounds['start_date'],
-          'end': bounds['end_date'],
-        };
-
-        // Set some defaults for lat/lon/time variable names. This just helps
-        // us display stuff later.
-        newDataset['lat'] = "N/A";
-        newDataset['lon'] = "N/A";
-        newDataset['time'] = "N/A";
-
-        selectedDatasetInformation.addDataset(newDataset);
-
-        // Clear the user selections by requery-ing RCMED. This is really 
hacky, but it works for now...
-        $scope.availableObs = [];
-        $scope.retrievedObsParams = [];
-        $scope.getObservations();
-
-        // Display a confirmation message for a little bit
-        $scope.fileAdded = true;
-        $timeout(function() {
-          $scope.fileAdded = false;
-        }, 2000);
-      };
-
-      // Grab the available observations from RCMED
-      $scope.getObservations();
-      $scope.getObservationBounds();
-    }
-  ]);

http://git-wip-us.apache.org/repos/asf/climate/blob/652ea657/ocw-ui/frontend-new/app/scripts/controllers/result.js
----------------------------------------------------------------------
diff --git a/ocw-ui/frontend-new/app/scripts/controllers/result.js 
b/ocw-ui/frontend-new/app/scripts/controllers/result.js
deleted file mode 100644
index 39b94b9..0000000
--- a/ocw-ui/frontend-new/app/scripts/controllers/result.js
+++ /dev/null
@@ -1,47 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *    http: *www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-'use strict';
-
-/**
- * @ngdoc function
- * @name ocwUiApp.controller:ResultCtrl
- * @description
- * # ResultCtrl
- * Controller of the ocwUiApp
- */
-angular.module('ocwUiApp')
-.controller('ResultCtrl', ['$rootScope', '$scope', '$http',
-function($rootScope, $scope, $http) {
-
-    $scope.results = [];
-
-    // Get all evaluation directories
-    $http.jsonp($rootScope.baseURL + '/dir/results/?callback=JSON_CALLBACK')
-    .success(function(data) {
-      data = data['listing']
-
-      var cacheDirIndex = data.indexOf("/cache");
-      if (cacheDirIndex > -1) {
-        data.split(cacheDirIndex, 1)
-      }
-
-      $scope.results = data.sort().reverse();
-    });
-}]);

http://git-wip-us.apache.org/repos/asf/climate/blob/652ea657/ocw-ui/frontend-new/app/scripts/controllers/resultdetail.js
----------------------------------------------------------------------
diff --git a/ocw-ui/frontend-new/app/scripts/controllers/resultdetail.js 
b/ocw-ui/frontend-new/app/scripts/controllers/resultdetail.js
deleted file mode 100644
index 952516c..0000000
--- a/ocw-ui/frontend-new/app/scripts/controllers/resultdetail.js
+++ /dev/null
@@ -1,46 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *    http: *www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-'use strict';
-
-/**
- * @ngdoc function
- * @name ocwUiApp.controller:ResultDetailCtrl
- * @description
- * # ResultDetailCtrl
- * Controller of the ocwUiApp
- */
-angular.module('ocwUiApp')
-.controller('ResultDetailCtrl', ['$rootScope', '$scope', '$http', 
'$stateParams',
-function($rootScope, $scope, $http, $stateParams) {
-       $scope.result = $stateParams.resultId;
-       
-       $http.jsonp($rootScope.baseURL + '/dir/results/' + $scope.result + 
'?callback=JSON_CALLBACK')
-       .success(function(data) {
-               data = data['listing'];
-
-               if (data.length < 1) {
-                       $scope.figures = null;
-                       $scope.alertMessage = "No results found.";
-                       $scope.alertClass = "alert alert-danger";
-               } else {
-                       $scope.figures = data;
-               }
-       });
-}]);

http://git-wip-us.apache.org/repos/asf/climate/blob/652ea657/ocw-ui/frontend-new/app/scripts/controllers/settings.js
----------------------------------------------------------------------
diff --git a/ocw-ui/frontend-new/app/scripts/controllers/settings.js 
b/ocw-ui/frontend-new/app/scripts/controllers/settings.js
deleted file mode 100644
index ca62fd8..0000000
--- a/ocw-ui/frontend-new/app/scripts/controllers/settings.js
+++ /dev/null
@@ -1,34 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *    http: *www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-'use strict';
-
-/**
- * @ngdoc function
- * @name ocwUiApp.controller:SettingsCtrl
- * @description
- * # SettingsCtrl
- * Controller of the ocwUiApp
- */
-angular.module('ocwUiApp')
-.controller('SettingsCtrl', ['$scope', 'evaluationSettings', 
'selectedDatasetInformation',
-function($scope, evaluationSettings, selectedDatasetInformation) {
-       $scope.settings = evaluationSettings.getSettings();
-       $scope.datasets = selectedDatasetInformation.getDatasets();
-}]);

http://git-wip-us.apache.org/repos/asf/climate/blob/652ea657/ocw-ui/frontend-new/app/scripts/controllers/timeline.js
----------------------------------------------------------------------
diff --git a/ocw-ui/frontend-new/app/scripts/controllers/timeline.js 
b/ocw-ui/frontend-new/app/scripts/controllers/timeline.js
deleted file mode 100644
index 2546ede..0000000
--- a/ocw-ui/frontend-new/app/scripts/controllers/timeline.js
+++ /dev/null
@@ -1,103 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *    http: *www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-'use strict';
-
-/**
- * @ngdoc function
- * @name ocwUiApp.controller:TimelineCtrl
- * @description
- * # TimelineCtrl
- * Controller of the ocwUiApp
- */
-angular.module('ocwUiApp')
-.controller('TimelineCtrl', ['$rootScope', '$scope', 
'selectedDatasetInformation', 'regionSelectParams',
-function($rootScope, $scope, selectedDatasetInformation, regionSelectParams) {
-       $scope.datasets = selectedDatasetInformation.getDatasets();
-       $scope.regionParams = regionSelectParams.getParameters();
-
-       $scope.updateTimeline = function() {
-               // Clear timeline data if it exists
-               if ("timeline" in $rootScope) {
-                       $rootScope.timeline.deleteAllItems();
-               }
-
-               // Don't process if no datasets have been added
-               if ($scope.datasets.length == 0 || !("timeline" in $rootScope))
-                       return;
-               
-               // Create DataTable to add data to timeline
-               var data = new google.visualization.DataTable();
-               data.addColumn('datetime', 'start');
-               data.addColumn('datetime', 'end');
-               data.addColumn('string', 'content');
-
-               // Loop through datasets and find the overlapping start/end 
time range
-               var start = $scope.datasets[0].timeVals.start;
-               var end = $scope.datasets[0].timeVals.end;
-               for (var i = 0; i < $scope.datasets.length; i++) {
-                       var possibleNewStart = 
$scope.datasets[i].timeVals.start;
-                       var possibleNewEnd = $scope.datasets[i].timeVals.end;
-
-                       start = (possibleNewStart > start) ? possibleNewStart : 
start;
-                       end = (possibleNewEnd < end) ? possibleNewEnd : end;
-               }
-
-               // Set the timeline extent to the overlapping time range
-               //
-               // NOTE: The month value substring is expected to be 0-based 
(hence the -1)
-               $rootScope.timeline.setVisibleChartRange(new 
Date(start.substr(0, 4), start.substr(5, 2) - 1, start.substr(8, 2)),
-                                                                               
                 new Date(end.substr(0, 4), end.substr(5, 2) - 1, end.substr(8, 
2)));
-
-               // Add user selected bounds to timeline
-               if ($scope.regionParams.areValid) {
-
-                       var userStart   = $scope.regionParams.start;
-                       var userEnd     = $scope.regionParams.end;
-
-                       // Add color to user selected bounds
-                       var style = 'background-color: #000000; border: 2px 
solid;';
-                       var ocwBar = '<div class="ocw-bar timeline-event-range" 
style="' + style + '"></div>';
-                       
-                       // Add row to DataTable: object with start and end date
-                       // note: subtract one from month since indexes from 0 
to 11
-                       data.addRow([new Date(userStart.substr(0,4), 
userStart.substr(5,2)-1, userStart.substr(8,2)), 
-                                               new Date(userEnd.substr(0,4), 
userEnd.substr(5,2)-1, userEnd.substr(8,2)),
-                                               ocwBar ]);
-               }
-               
-               var options = {
-                               "width": "100%",
-                               "showCurrentTime": false,
-                               "moveable": false,
-                               "zoomable": false,
-               };
-               
-               // Draw timeline with data (DataTable) and options (a 
name-value map) 
-               $rootScope.timeline.draw(data, options);
-       };
-
-       $scope.$on('redrawOverlays', function(event, parameters) {
-               $scope.updateTimeline();
-       });
-
-       $scope.$watch('datasets', function() {
-               $scope.updateTimeline();
-       }, true);
-}]);

http://git-wip-us.apache.org/repos/asf/climate/blob/652ea657/ocw-ui/frontend-new/app/scripts/controllers/worldmap.js
----------------------------------------------------------------------
diff --git a/ocw-ui/frontend-new/app/scripts/controllers/worldmap.js 
b/ocw-ui/frontend-new/app/scripts/controllers/worldmap.js
deleted file mode 100644
index 0d28d6c..0000000
--- a/ocw-ui/frontend-new/app/scripts/controllers/worldmap.js
+++ /dev/null
@@ -1,104 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *    http: *www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-'use strict';
-
-/**
- * @ngdoc function
- * @name ocwUiApp.controller:WorldMapCtrl
- * @description
- * # WorldMapCtrl
- * Controller of the ocwUiApp
- */
-angular.module('ocwUiApp')
-.controller('WorldMapCtrl', ['$rootScope', '$scope', 
'selectedDatasetInformation', 'regionSelectParams',
-function($rootScope, $scope, selectedDatasetInformation, regionSelectParams) {
-       $scope.datasets = selectedDatasetInformation.getDatasets();
-       $scope.regionParams = regionSelectParams.getParameters();
-
-       $scope.updateMap = function() {
-               // Clear Group of layers from map if it exists
-               if ("rectangleGroup" in $rootScope) {
-                       $rootScope.rectangleGroup.clearLayers();
-               }
-
-               // Don't process if we don't have any datasets added or if the 
map doesn't exist!!
-               if ($scope.datasets.length == 0 || !("map" in $rootScope))
-                       return;
-               
-               // Create a group that we'll draw overlays to
-               $rootScope.rectangleGroup = L.layerGroup();
-               // Add rectangle Group to map
-               $rootScope.rectangleGroup.addTo($rootScope.map);
-
-               // Calculate the overlap region and set the map to show the new 
overlap
-               var latMin = -90,
-                       latMax = 90,
-                       lonMin = -180,
-                       lonMax = 180;
-
-               // Get the valid lat/lon range in the selected datasets.
-               for (var i = 0; i < 
selectedDatasetInformation.getDatasetCount(); i++) {
-                       var curDataset = $scope.datasets[i];
-
-                       latMin = (curDataset['latlonVals']['latMin'] > latMin) 
? curDataset['latlonVals']['latMin'] : latMin;
-                       latMax = (curDataset['latlonVals']['latMax'] < latMax) 
? curDataset['latlonVals']['latMax'] : latMax;
-                       lonMin = (curDataset['latlonVals']['lonMin'] > lonMin) 
? curDataset['latlonVals']['lonMin'] : lonMin;
-                       lonMax = (curDataset['latlonVals']['lonMax'] < lonMax) 
? curDataset['latlonVals']['lonMax'] : lonMax;
-               }
-
-               var overlapBounds = [[latMax, lonMin], [latMin, lonMax]];
-               $rootScope.map.fitBounds(overlapBounds, {padding: [0, 0]});
-
-               // Draw border around overlap region
-               var overlapBorder = L.rectangle(overlapBounds, {
-                       color: '#000000',
-                       opacity: 1.0,
-                       fill: false,
-                       weight: 2,
-                       dashArray: "10 10",
-               });
-
-               $rootScope.rectangleGroup.addLayer(overlapBorder);
-
-               // Draw user selected region
-               if ($scope.regionParams.areValid) {
-
-                       var bounds = [[$scope.regionParams.latMax, 
$scope.regionParams.lonMin],
-                                                 [$scope.regionParams.latMin, 
$scope.regionParams.lonMax]];
-
-                       var polygon = L.rectangle(bounds, {
-                               color: '#000000',
-                               opacity: .3,
-                               stroke: false,
-                               fill: true,
-                       });
-
-                       $rootScope.rectangleGroup.addLayer(polygon);
-               }
-       };
-
-       $scope.$on('redrawOverlays', function(event, parameters) {
-               $scope.updateMap();
-       });
-
-       $scope.$watch('datasets', function() {
-               $scope.updateMap();
-       }, true);
-}]);

http://git-wip-us.apache.org/repos/asf/climate/blob/652ea657/ocw-ui/frontend-new/app/scripts/directives/bootstrapmodal.js
----------------------------------------------------------------------
diff --git a/ocw-ui/frontend-new/app/scripts/directives/bootstrapmodal.js 
b/ocw-ui/frontend-new/app/scripts/directives/bootstrapmodal.js
deleted file mode 100644
index 26d0a46..0000000
--- a/ocw-ui/frontend-new/app/scripts/directives/bootstrapmodal.js
+++ /dev/null
@@ -1,79 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *    http: *www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-'use strict';
-
-/**
- * @ngdoc directive
- * @name ocwUiApp.directive:bootstrapModal
- * @description
- * # bootstrapModal
- */
-angular.module('ocwUiApp')
-.directive('bootstrapModal', function($timeout) {
-       var link = function(scope, elem, attrs) {
-               var escapeEvent;
-               var openModal;
-               var closeModal;
-
-               escapeEvent = function(e) {
-                       if (e.which == 27)
-                               closeModal();
-               }
-
-               openModal = function(event, toggleBackground, 
toggleKeyboardEscape) {
-                       // Grab the current modal tag based on the modalId 
attribute in the bootstrapModal tag
-                       var modal = $('#' + attrs.modalId);
-
-                       // Make all the modal's children of class "close" call 
the appropriate function for closing!
-                       $('.close', modal).bind('click', closeModal);
-
-                       modal.modal({
-                               show: true,
-                               backdrop: toggleBackground,
-                               keyboard: toggleKeyboardEscape,
-                       });
-               };
-
-               closeModal = function(event) {
-                       $('#' + attrs.modalId).modal('hide');
-                       
-               };
-
-               // We need to bind the close and open modal events so outside 
elements can trigger the modal.
-               // This has to wait until the template has been fully inserted, 
so just wait a bit of time
-               // before we set them. I'm sure there's a better way of 
handling this...
-               $timeout(function() {
-                       $('#' + attrs.modalId).
-                               bind('modalOpen', openModal).
-                               bind('modalClose', closeModal);
-               }, 100);
-       };
-
-       return {
-               link: link,
-               replace: true,
-               restrict: 'E',
-               scope: {
-                       modalId: '@' 
-               },
-               template: '<div id="{{modalId}}" class="modal hide fade" 
tabindex="-1"><div ng-transclude></div></div>',
-               transclude: true
-       };
-});

http://git-wip-us.apache.org/repos/asf/climate/blob/652ea657/ocw-ui/frontend-new/app/scripts/directives/bootstrapmodalopen.js
----------------------------------------------------------------------
diff --git a/ocw-ui/frontend-new/app/scripts/directives/bootstrapmodalopen.js 
b/ocw-ui/frontend-new/app/scripts/directives/bootstrapmodalopen.js
deleted file mode 100644
index dca4005..0000000
--- a/ocw-ui/frontend-new/app/scripts/directives/bootstrapmodalopen.js
+++ /dev/null
@@ -1,43 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *    http: *www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-'use strict';
-
-/**
- * @ngdoc directive
- * @name ocwUiApp.directive:bootstrapModalOpen
- * @description
- * # bootstrapModalOpen
- */
-angular.module('ocwUiApp')
-.directive('bootstrapModalOpen', function() {
-       return {
-               restrict: 'A',
-               link: function(scope, elem, attrs) {
-                       // Default to showing the background if the user didn't 
specify a value for this.
-                       var hasBackground = (attrs.background === undefined ? 
true : (attrs.background == "true"));
-                       // Enable keyboard closing of modal with escape key.
-                       var hasKeyboardEscape = (attrs.keyboard === undefined ? 
true : (attrs.keyboard == "true"));
-
-                       $(elem).bind('click', function() {
-                               $('#' + 
attrs.bootstrapModalOpen).trigger('modalOpen', [hasBackground, 
hasKeyboardEscape]);
-                       });
-               }
-       };
-});

http://git-wip-us.apache.org/repos/asf/climate/blob/652ea657/ocw-ui/frontend-new/app/scripts/directives/leafletmap.js
----------------------------------------------------------------------
diff --git a/ocw-ui/frontend-new/app/scripts/directives/leafletmap.js 
b/ocw-ui/frontend-new/app/scripts/directives/leafletmap.js
deleted file mode 100644
index 9b0a6eb..0000000
--- a/ocw-ui/frontend-new/app/scripts/directives/leafletmap.js
+++ /dev/null
@@ -1,46 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *    http: *www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-'use strict';
-
-/**
- * @ngdoc directive
- * @name ocwUiApp.directive:leafletMap
- * @description
- * # leafletMap
- */
-angular.module('ocwUiApp')
-.directive('leafletMap', function($rootScope) {
-       return {
-               restrict: 'E',
-               replace: true,
-               template: '<div></div>',
-               link: function(scope, element, attrs) {
-                       $rootScope.map = L.map(attrs.id, {
-                               center: [40, 0],
-                               zoom: 2,
-                               scrollWheelZoom: false,
-                               attributionControl: false,
-                               worldCopyJump: true,
-                       });
-
-                       L.tileLayer('http://{s}.tile.osm.org/{z}/{x}/{y}.png', 
{}).addTo($rootScope.map);
-               }
-       };
-});

http://git-wip-us.apache.org/repos/asf/climate/blob/652ea657/ocw-ui/frontend-new/app/scripts/directives/onblur.js
----------------------------------------------------------------------
diff --git a/ocw-ui/frontend-new/app/scripts/directives/onblur.js 
b/ocw-ui/frontend-new/app/scripts/directives/onblur.js
deleted file mode 100644
index 313dbe0..0000000
--- a/ocw-ui/frontend-new/app/scripts/directives/onblur.js
+++ /dev/null
@@ -1,38 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *    http: *www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-'use strict';
-
-/**
- * @ngdoc directive
- * @name ocwUiApp.directive:onBlur
- * @description
- * # onBlur
- */
-angular.module('ocwUiApp')
-.directive('onBlur', function() {
-       return {
-        restrict: 'A',
-        link: function($scope, $elem, $attrs) {
-            $elem.bind('blur', function() {
-                               $scope.$eval($attrs.onBlur);
-                       });
-        },
-    };
-});

http://git-wip-us.apache.org/repos/asf/climate/blob/652ea657/ocw-ui/frontend-new/app/scripts/directives/predictivefilebrowserinput.js
----------------------------------------------------------------------
diff --git 
a/ocw-ui/frontend-new/app/scripts/directives/predictivefilebrowserinput.js 
b/ocw-ui/frontend-new/app/scripts/directives/predictivefilebrowserinput.js
deleted file mode 100644
index 7142c15..0000000
--- a/ocw-ui/frontend-new/app/scripts/directives/predictivefilebrowserinput.js
+++ /dev/null
@@ -1,316 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *    http: *www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-'use strict';
-
-/**
- * @ngdoc directive
- * @name ocwUiApp.directive:predictiveFileBrowserInput
- * @description
- * # predictiveFileBrowserInput
- */
-angular.module('ocwUiApp')
-.directive('predictiveFileBrowserInput', function() {
-       var link = function($scope, $elem, $attrs) {
-               $scope.autocomplete = [];
-               
-               // Set id to use this directive correctly in multiple places
-               $scope.id = 'autoCompletePath'+ $elem.context.id
-               /*
-                * We need a place to dump our auto-completion options
-                */
-               $($elem).parent().append('<ul id="' + $scope.id +'"><ul>');
-
-               // Handle user clicks on auto-complete path options
-               $(document).on('click', '#' +$scope.id+ ' li span', function(e) 
{
-                       // Set the input text box's value to that of the user 
selected path
-                       var val = $(e.target).text();
-                       $($elem).val(val);
-                       // Need to trigger the input box's "input" event so 
Angular updates the model!
-                       $elem.trigger('input'); 
-                       
-                       // If the user selected a directory, find more results..
-                       if (val[val.length - 1] == '/') {
-                               $scope.fetchFiles($($elem).val());
-                       // Otherwise, remove the auto-complete options...
-                       } else {
-                               $('#' +$scope.id+ ' li').remove();
-                       }
-               });
-
-               /*
-                * Handle key-down events on the input box
-                *
-                * We need to ignore <TAB> presses here so we can auto-complete 
with <TAB>.
-                * If we don't ignore here then <TAB> will move the user to the 
next field
-                * in the form and our common-prefix-fill won't work later.
-                */
-               $($elem).keydown(function(e) {
-                       var code = e.keyCode || e.which;
-                       var BACKSPACE = 8,
-                               TAB = 9;
-
-                       if (code == TAB)
-                               return false;
-               });
-
-               /*
-                * Handle key-up events on the input box
-                */
-               $($elem).keyup(function(e) {
-                       var code = e.keyCode || e.which;
-                       var BACKSPACE = 8,
-                               TAB = 9,
-                               FORWARD_SLASH = 191;
-
-                       if (code === FORWARD_SLASH) {
-                               // Fetch new directory information from the 
server.
-                               $scope.fetchFiles($(this).val());
-                       } else if (code === TAB) {
-                               // Attempt to auto-fill for the user.
-                               $scope.handleTabPress();
-                       } else if (code == BACKSPACE) {
-                               // Need to properly handle the removal of 
directory information
-                               // and the displaying of auto-complete options
-                               $scope.handleBackSpace();
-                       } else {
-                               // Filter auto-complete options based on user 
input..
-                               $scope.handleMiscKeyPress();
-                       }
-
-                       // This is being used so we can handle backspacing. The 
user might hold
-                       // down the backspace key or select a section of text 
and delete. This allows
-                       // us to compare the result to its prior state, which 
makes handling
-                       // backspaces easier.
-                       $scope.lastInputContents = $elem.val();
-               });
-
-               /*
-                * Grab additional path information from the web-server
-                *
-                * Params:
-                *              path - The path to get a directory listing of.
-                */
-               // TODO Make this use $HTTP
-               $scope.fetchFiles = function(path) {
-                       $.get($scope.baseURL + '/dir/list/' + path, {},
-                                function(data) {
-                                        data = data['listing']
-                                        $scope.setNewData(data);
-                                        $scope.updateAutoComplete();
-                                }, 'json');
-               };
-
-               /*
-                * Grab additional path information from the web-server and 
filter the
-                * results based on the current input text.
-                *
-                * Params:
-                *              path - The path to get a directory listing of.
-                *
-                * This is needed to handle deletion of selected text. It is 
possible that
-                * the user will select text and delete only part of a word. 
The results
-                * need to be filtered based on this partial input.
-                */
-               // TODO Why isn't this using $http?!?!?! Because I copy and 
pasted!!!!
-               $scope.fetchFilesAndFilter = function(path) {
-                       $.get($scope.baseURL + '/dir/list/' + path, {},
-                                function(data) {
-                                        data = data['listing']
-                                        $scope.setNewData(data);
-                                        $scope.filterResults();
-                                        $scope.updateAutoComplete();
-                                }, 'json');
-               };
-
-               /*
-                * Handle directory data from the server.
-                *
-                * We store the entire directory information along with the 
remaining
-                * possible options given the users current input. This lets us 
avoid
-                * unnecessary calls to the server for directory information 
every time
-                * the user deletes something.
-                */
-               $scope.setNewData = function(data) {
-                       $scope.autocomplete = data.sort();
-                       $scope.possibleCompletes = $scope.autocomplete;
-               };
-
-               /* 
-                * Handle <TAB> presses.
-                *
-                * Attempt to auto-complete options when the user presses <TAB>.
-                */
-               $scope.handleTabPress = function() {
-                       // If there's only one option available there's no 
points in trying to
-                       // find a common prefix! Just set the value!
-                       if ($scope.possibleCompletes.length === 1) {
-                               $elem.val($scope.possibleCompletes[0]);
-
-                               // Make sure more options are displayed if a 
directory was selected.
-                               $scope.checkForMoreOptions();
-                               $scope.updateAutoComplete();
-                               return;
-                       }
-
-                       // Find the greatest common prefix amongst the 
remaining choices and set
-                       // the input text to it.
-                       var prefix = 
$scope.getLargestCommonPrefix($scope.possibleCompletes);
-                       $elem.val(prefix);
-                       $scope.updateAutoComplete();
-               };
-
-               /*
-                * Handle Backspacing and option displaying.
-                *
-                * The auto-complete options needs to be displayed correctly 
when the user
-                * removes directory information.
-                */
-               $scope.handleBackSpace = function() {
-                       var curInputVal = $elem.val();
-
-                       // If the user deletes everything in the input box all 
we need to do
-                       // is make sure that the auto-complete options aren't 
displayed.
-                       if (curInputVal.length === 0) {
-                               $('#' +$scope.id+ ' li').remove();
-                               return;
-                       }
-
-                       // Figure out how much text the user removed from the 
input box.
-                       var lengthDiff = $scope.lastInputContents.length - 
curInputVal.length;
-                       // Grab the removed text.
-                       var removedText = 
$scope.lastInputContents.substr(-lengthDiff);
-
-                       // If the user deleted over a directory we need to 
fetch information on the
-                       // previous directory for auto-completion.
-                       if (removedText.indexOf('/') !== -1) {
-                               var lastSlashIndex = 
curInputVal.lastIndexOf('/');
-
-                               // If the remaining path still contains a 
directory...
-                               if (lastSlashIndex !== -1) {
-                                       // Grab the section of the path that 
points to a valid directory,
-                                       // fetch the listing, and update the 
results.
-                                       var pathToSearch = curInputVal.slice(0, 
lastSlashIndex + 1);
-                                       
$scope.fetchFilesAndFilter(pathToSearch);
-                               } else {
-                                       // Delete the old auto-complete 
information in the case where the user
-                                       // completely removed path information.
-                                       $('#' +$scope.id+ ' li').remove();
-                               }
-                       } else {
-                               // Otherwise, we just need to filter results 
based on the remaining input.
-                               $scope.filterResults();
-                               $scope.updateAutoComplete();
-                       }
-               };
-
-               /* 
-                * Handle all other key presses in the input box
-                *
-                * Filter the auto-complete options as the user types to ensure 
that only options
-                * which are possible given the current input text are still 
displayed.
-                */
-               $scope.handleMiscKeyPress = function() {
-                       // Safely exit when there are no options available.
-                       if ($scope.autocomplete === [])
-                               return;
-
-                       // Otherwise, filter the results.
-                       $scope.filterResults();
-                       $scope.updateAutoComplete();
-               };
-
-               /* 
-                * When a path is auto-completed with <TAB> we need to check to 
see if it points
-                * to a directory. If it does, we still need to fetch results!
-                */
-               $scope.checkForMoreOptions = function() {
-                       var path = $elem.val();
-                       if (path[path.length - 1] === '/') {
-                               $scope.fetchFiles(path);
-                       }
-               };
-
-               /* 
-                * Calculate the greatest common prefix of the passed options.
-                *
-                * Params:
-                *              Options - An array of strings in which the 
greatest common prefix
-                *                                should be found
-                *
-                * Returns:
-                *              The greatest common prefix of the strings.
-                *
-                *
-                * Note - For us, there will always be a prefix of at least '/' 
since this can't
-                * possible be called without the users entering a starting 
directory. As a result,
-                * we don't explicitly handle the case where there is 0 length 
common prefix.
-                */
-               $scope.getLargestCommonPrefix = function(options) {
-                       var index = 1;
-                       var shortestString = options.reduce(function(a, b) { 
return a.length < b.length ? a : b; });
-                       var longestString = options.reduce(function(a, b) { 
return a.length > b.length ? a : b; });
-                       var     substringToCheck = shortestString[0];
-
-                       while (longestString.indexOf(substringToCheck) !== -1) {
-                               substringToCheck = shortestString.slice(0, 
++index);
-                       }
-
-                       return longestString.slice(0, index - 1);
-               };
-
-               /* 
-                * Filter the auto-complete options based on the current input.
-                */
-               $scope.filterResults = function() {
-                       $scope.possibleCompletes = 
$scope.autocomplete.filter(function(item, index, array) {
-                               return (~item.indexOf($($elem).val()));
-                       });
-
-                       $scope.possibleCompletes.sort();
-               };
-
-               /*
-                * Update the display of auto-complete options.
-                */
-               $scope.updateAutoComplete = function() {
-                       // Remove all the existing options
-                       $('#' +$scope.id+ ' li').remove();
-
-                       // We don't need to show anything if the user has 
completely selected
-                       // the only existing option available.
-                       if ($scope.possibleCompletes.length === 1) {
-                               if ($scope.possibleCompletes[0] === 
$elem.val()) {
-                                       return;
-                               }
-                       }
-
-                       // Display all the possible completes
-                       $.each($scope.possibleCompletes, function(i, v) {
-                               $('#' +$scope.id+ 
'').append($('<li>').html($('<span>').text(v)));
-                       });
-               };
-       };
-
-       return {
-               link: link,
-               scope: true,
-               restrict: 'A'
-       };
-});

http://git-wip-us.apache.org/repos/asf/climate/blob/652ea657/ocw-ui/frontend-new/app/scripts/directives/previewmap.js
----------------------------------------------------------------------
diff --git a/ocw-ui/frontend-new/app/scripts/directives/previewmap.js 
b/ocw-ui/frontend-new/app/scripts/directives/previewmap.js
deleted file mode 100644
index 78aae8c..0000000
--- a/ocw-ui/frontend-new/app/scripts/directives/previewmap.js
+++ /dev/null
@@ -1,76 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *    http: *www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-'use strict';
-
-/**
- * @ngdoc directive
- * @name ocwUiApp.directive:previewMap
- * @description
- * # previewMap
- */
-angular.module('ocwUiApp')
-.directive('previewMap', function($rootScope) {
-       return {
-               restrict: 'A',
-               scope: {dataset: '=previewMap', index: '=index'},
-               template: '<div id="{{dataset.name}}" 
class="preview-map"></div>',
-               replace: true,
-               link: function(scope, element, attrs) {
-
-                       // Any attribute that contains {{}} interpolation will 
be set to null in the attrs
-                       // parameter during the link function since the first 
$digest since the compilation
-                       // has yet to run to evaluate it! We can't run a 
$digest in the middle of compilation,
-                       // so using an $observe (or $watch) is the best way to 
get the values.
-                       attrs.$observe('id', function(newId) {
-                               var map = L.map(attrs.id, {
-                                       zoom: 0,
-                                       scrollWheelZoom: false,
-                                       zoomControl: false,
-                                       attributionControl: false,
-                                       worldCopyJump: true,
-                               });
-
-                               
L.tileLayer('http://{s}.tile.osm.org/{z}/{x}/{y}.png', {}).addTo(map);
-
-                               // Zoom the map to the dataset bound regions 
(or at least try our best to do so)
-                               var datasetBounds = 
[[scope.dataset.latlonVals.latMax, scope.dataset.latlonVals.lonMin], 
-                                                                        
[scope.dataset.latlonVals.latMin, scope.dataset.latlonVals.lonMax]];
-                               map.fitBounds(datasetBounds, {});
-
-                               // Draw a colored overlay on the region of the 
map
-                               var maplatlon = scope.dataset.latlonVals;
-                               var bounds = [[maplatlon.latMax, 
maplatlon.lonMin], [maplatlon.latMin, maplatlon.lonMax]];
-
-                               var polygon = L.rectangle(bounds,{
-                                       stroke: false,
-                                       fillColor: $rootScope.fillColors[1],
-                                       fillOpacity: 0.6
-                               });
-
-                               // Add layer to Group
-                               var rectangleGroup = L.layerGroup();
-                               rectangleGroup.addLayer(polygon);
-
-                               // Add the overlay to the map
-                               rectangleGroup.addTo(map);
-                       });
-               }
-       };
-});

http://git-wip-us.apache.org/repos/asf/climate/blob/652ea657/ocw-ui/frontend-new/app/scripts/directives/timeline.js
----------------------------------------------------------------------
diff --git a/ocw-ui/frontend-new/app/scripts/directives/timeline.js 
b/ocw-ui/frontend-new/app/scripts/directives/timeline.js
deleted file mode 100644
index 760a819..0000000
--- a/ocw-ui/frontend-new/app/scripts/directives/timeline.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *    http: *www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-'use strict';
-
-/**
- * @ngdoc directive
- * @name ocwUiApp.directive:timeline
- * @description
- * # timeline
- */
-angular.module('ocwUiApp')
-.directive('timeline', function($rootScope, $window) {
-       return {
-               restrict: 'C',
-               replace: true,
-               transclude: true,
-               template: '<div id="OCWtimeline"></div>',
-               link: function(scope, element, attrs) {
-                       // Instantiate timeline object.
-                       $rootScope.timeline = new 
links.Timeline(document.getElementById('OCWtimeline'));
-
-                       // Redraw the timeline whenever the window is resized
-                       angular.element($window).bind('resize', function() {
-                               $rootScope.timeline.checkResize();
-                       });
-
-                       var options = {
-                               "width": "100%",
-                               "showCurrentTime": false,
-                               "moveable": false,
-                               "zoomable": false
-                       };
-
-                       $rootScope.timeline.draw([], options);
-               }
-       }
-});

http://git-wip-us.apache.org/repos/asf/climate/blob/652ea657/ocw-ui/frontend-new/app/scripts/filters/isodatetomiddleendian.js
----------------------------------------------------------------------
diff --git a/ocw-ui/frontend-new/app/scripts/filters/isodatetomiddleendian.js 
b/ocw-ui/frontend-new/app/scripts/filters/isodatetomiddleendian.js
deleted file mode 100644
index 7fcd2a9..0000000
--- a/ocw-ui/frontend-new/app/scripts/filters/isodatetomiddleendian.js
+++ /dev/null
@@ -1,55 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *    http: *www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-'use strict';
-
-/**
- * @ngdoc filter
- * @name ocwUiApp.filter:ISODateToMiddleEndian
- * @function
- * @description
- * # ISODateToMiddleEndian
- * Filter in the ocwUiApp.
- */
-angular.module('ocwUiApp')
-.filter('ISODateToMiddleEndian', function() {
-       return function(input) {
-               var original = input;
-
-               // Strip whitespace from the start and end of the string
-               input = input.replace(/(^\s+|\s+$)/g, '');
-
-               // ISO Standard says time is separated from Date with a 'T'. 
Our timestamps
-               // slightly modify that and use a space. We'll check for both 
here and prefer
-               // to split on a 'T' if it's available.
-               if (input.indexOf('T') != -1 || input.indexOf(' ') != -1) {
-                       input = (input.indexOf('T') != -1) ? 
input.split('T')[0] : input.split(' ')[0];
-               } 
-               
-               // The components of the date should be split with hyphens. If 
we can't find them
-               // then the string is poorly formed.
-               if (input.indexOf('-') == -1 || input.split('-').length - 1 != 
2) {
-                       return original;
-               }
-
-               // At this point the date is probably valid and we should try 
to convert it!
-               var components = input.split('-');
-               return (components[1] + "/" + components[2] + "/" + 
components[0]);
-       };
-});

http://git-wip-us.apache.org/repos/asf/climate/blob/652ea657/ocw-ui/frontend-new/app/scripts/services/evaluationsettings.js
----------------------------------------------------------------------
diff --git a/ocw-ui/frontend-new/app/scripts/services/evaluationsettings.js 
b/ocw-ui/frontend-new/app/scripts/services/evaluationsettings.js
deleted file mode 100644
index b53842c..0000000
--- a/ocw-ui/frontend-new/app/scripts/services/evaluationsettings.js
+++ /dev/null
@@ -1,56 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *    http: *www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-'use strict';
-
-/**
- * @ngdoc service
- * @name ocwUiApp.evaluationSettings
- * @description
- * # evaluationSettings
- * Service in the ocwUiApp.
- */
-angular.module('ocwUiApp')
-  .service('evaluationSettings', function($rootScope, $http) {
-    $http.get($rootScope.baseURL + '/processing/metrics/').then(function(data) 
{
-        var metrics_data = data['data']['metrics'];
-        var metrics = [];
-
-        for (var i = 0; i < metrics_data.length; ++i) {
-            metrics.push({'name': metrics_data[i], 'select': false});
-        }
-
-        settings['metrics'] = metrics;
-    });
-
-    var settings = {
-      'metrics': [],
-      'temporal': {
-        'options': ['daily', 'monthly', 'yearly'],
-        'selected': 'yearly',
-      },
-      'spatialSelect': null,
-    };
-
-    return {
-      getSettings: function() {
-        return settings;
-      }
-    };
-  });

http://git-wip-us.apache.org/repos/asf/climate/blob/652ea657/ocw-ui/frontend-new/app/scripts/services/regionselectparams.js
----------------------------------------------------------------------
diff --git a/ocw-ui/frontend-new/app/scripts/services/regionselectparams.js 
b/ocw-ui/frontend-new/app/scripts/services/regionselectparams.js
deleted file mode 100644
index cb3f4f8..0000000
--- a/ocw-ui/frontend-new/app/scripts/services/regionselectparams.js
+++ /dev/null
@@ -1,46 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *    http: *www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-'use strict';
-
-/**
- * @ngdoc service
- * @name ocwUiApp.regionSelectParams
- * @description
- * # regionSelectParams
- * Service in the ocwUiApp.
- */
-angular.module('ocwUiApp')
-.service('regionSelectParams', function() {
-       var parameters = {
-               "areValid" : true,
-               "latMin"   : "",
-               "latMax"   : "",
-               "lonMin"   : "",
-               "lonMax"   : "",
-               "start"    : "",
-               "end"      : "",
-       };
-
-       return {
-               getParameters: function() {
-                       return parameters;
-               },
-       };
-});

http://git-wip-us.apache.org/repos/asf/climate/blob/652ea657/ocw-ui/frontend-new/app/scripts/services/selecteddatasetinformation.js
----------------------------------------------------------------------
diff --git 
a/ocw-ui/frontend-new/app/scripts/services/selecteddatasetinformation.js 
b/ocw-ui/frontend-new/app/scripts/services/selecteddatasetinformation.js
deleted file mode 100644
index 613cfb8..0000000
--- a/ocw-ui/frontend-new/app/scripts/services/selecteddatasetinformation.js
+++ /dev/null
@@ -1,57 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *    http: *www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-'use strict';
-
-/**
- * @ngdoc service
- * @name ocwUiApp.selectedDatasetInformation
- * @description
- * # selectedDatasetInformation
- * Service in the ocwUiApp.
- */
-angular.module('ocwUiApp')
-.service('selectedDatasetInformation', function() {
-       var datasets = [];
-
-       return {
-               getDatasets: function() {
-                       return datasets;
-               },
-               getDatasetCount: function() {
-                       return datasets.length;
-               },
-               // TODO: Define the structure of the objects that are added 
with addDataset.
-               addDataset: function(dataset) {
-                       // All datasets need a shouldDisplay attribute that is 
used when rendering
-                       // the overlays on the map!
-                       dataset.shouldDisplay = false;
-                       // The regrid attribute indicates which dataset should 
be used for spatial regridding
-                       dataset.regrid = false;
-
-                       datasets.push(dataset);
-               },
-               removeDataset: function(index) {
-                       datasets.splice(index, 1);
-               },
-               clearDatasets: function() {
-                       datasets.length = 0;
-               },
-       };
-});

http://git-wip-us.apache.org/repos/asf/climate/blob/652ea657/ocw-ui/frontend-new/app/styles/main.css
----------------------------------------------------------------------
diff --git a/ocw-ui/frontend-new/app/styles/main.css 
b/ocw-ui/frontend-new/app/styles/main.css
deleted file mode 100644
index fb42ccd..0000000
--- a/ocw-ui/frontend-new/app/styles/main.css
+++ /dev/null
@@ -1,120 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *    http: *www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-body {
-       
-}
-
-#header-img {
-       
-}
-
-#header-title {
-       
-}
-
-#OCW-powered {
-       
-}
-
-#main-container {
-    margin-top: 20px;
-       min-height: 400px;
-       height: auto !important;
-       height: 400px;
-}
-
-#datasetDiv {
-       height: 750px;
-       overflow-y: auto;
-       overflow-x: hidden;
-}
-
-#ocw-navbar {
-    margin-bottom: 0;
-}
-
-#map { height: 500px; }
-
-/* Small preview map that is displayed alongside dataset information */
-.preview-map {
-       height: 100px;
-       width: 100px;
-}
-
-.small-alert {
-       font-size: 12px;
-       color: green;
-       margin-top: 4px;
-       margin-left: 10px;
-}
-
-.colorSquare {
-       margin-top: 3px;
-       height: 10px;
-       width: 10px;
-}
-
-ul { list-style-type: none; }
-
-.no-color-link { color: #000000; }
-.no-color-link:hover { color: #000000; text-decoration: none; }
-.no-color-link:visited { color: #000000; }
-.no-color-link:active { color: #000000; }
-
-/* Remove the grayed out close button in modal headers */
-.modal-header .close { opacity: 1; }
-
-/* Remove the grayed out close button in modal footers */
-.modal-footer .close { opacity: 1; }
-
-/** 
-  * Timeline 
-  */
-div#OCWtimeline {
-       margin-top: 20px;
-       padding-bottom: 20px;
-}
-
-div.timeline-event {
-       border: none;
-       background: none;
-}
-
-div.timeline-event-content { margin: 0; }
-
-div.ocw-bar { height: 5px; }
-
-/**
-  * Results
-  */
-#results-sidebar {
-       min-height: 400px;
-       height: auto !important;
-       height: 400px;
-}
-
-#results-sidebar-header { font-size: 14px; }
-
-/* Helpers for vertical offsets */
-.top3 { margin-top: 3%; }
-.top7 { margin-top: 7%; }
-.top14 { margin-top:14%; }
-.top21 { margin-top:21%; }
-.top42 { margin-top:42%; }

http://git-wip-us.apache.org/repos/asf/climate/blob/652ea657/ocw-ui/frontend-new/app/views/main.html
----------------------------------------------------------------------
diff --git a/ocw-ui/frontend-new/app/views/main.html 
b/ocw-ui/frontend-new/app/views/main.html
deleted file mode 100644
index 2f428e5..0000000
--- a/ocw-ui/frontend-new/app/views/main.html
+++ /dev/null
@@ -1,274 +0,0 @@
-<!--
-Licensed to the Apache Software Foundation (ASF) under one
-or more contributor license agreements.  See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership.  The ASF licenses this file
-to you under the Apache License, Version 2.0 (the
-"License"); you may not use this file except in compliance
-with the License.  You may obtain a copy of the License at
-
-   http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing,
-software distributed under the License is distributed on an
-"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-KIND, either express or implied.  See the License for the
-specific language governing permissions and limitations
-under the License.
--->
-
-<!-- Modal for evaluation settings -->
-<div class="modal fade" id="evaluationSettingsModal" role="dialog" 
aria-labelledby="datasetSelectModalLabel" aria-hidden="true">
-  <div class="modal-dialog">
-    <div class="modal-content">
-      <div class="modal-header">
-        <button class="close" data-dismiss="modal">&times;</button>
-        <h3>Settings</h3>
-      </div>
-      <div class="modal-body" ng-controller="SettingsCtrl">
-        <h4>Select the metrics you would like to run.</h4>
-        <div ng-repeat="metric in settings.metrics">
-          <label><input type="checkbox" ng-model="metric.select"> 
{{metric.name}}</label>
-        </div>
-        <hr />
-        <h4>Select how you would like to temporally re-grid the datasets.</h4>
-        <select class="form-control" ng-model="settings.temporal.selected" 
ng-options="opt for opt in settings.temporal.options"></select>
-        <hr />
-        <h4>Select which dataset to use as the reference.</h4>
-        <select class="form-control" ng-model="settings.spatialSelect" 
ng-options="dataset as dataset.name for dataset in datasets"></select>
-        <hr />
-        <!-- Temporarily hidden for work on CLIMATE-365.-->
-        <div ng-hide=true>
-        <h4>Select a file which will define the bounds of subregions.</h4>
-        <form class="form-inline" autocomplete="off">
-          <input id="subregionFileInput" predictive-file-browser-input 
ng-model="settings.subregionFile" type="text" class="input-xlarge" 
autocomplete="off" />
-        </form>
-        </div>
-        <!--End hidden section for CLIMATE-365-->
-      </div>
-      <div class="modal-footer">
-        <button class="btn btn-warning cancel" 
data-dismiss="modal">Close</button>
-      </div>
-    </div>
-  </div>
-</div>
-<!-- END - Modal for evaluation settings -->
-
-<div class="row">
-  <div class="col-md-12">
-    <div class="row">
-      <!-- Dataset Select and Display Column -->
-      <div class="col-md-6">
-        <!--Dataset Select Controls-->
-        <div ng-controller="DatasetSelectCtrl">
-          <div class="row">
-            <div class="col-md-1 col-md-offset-10">
-              <button class="btn btn-link no-color-link" 
ng-click="clearDatasets()" ng-disabled="shouldDisableClearButton()">
-                <span tooltip-placement="left" tooltip-popup-delay="700" 
tooltip="Clear Datasets">
-                  <i class="fa fa-trash-o fa-2x"></i>
-                </span>
-              </button>
-            </div>
-            <div class="col-md-1">
-              <button class="btn btn-link no-color-link" data-toggle="modal" 
data-target="#datasetSelect">
-                <span tooltip-placement="left" tooltip-popup-delay="700" 
tooltip="Add Dataset">
-                  <i class="fa fa-plus fa-2x"></i>
-                </span>
-              </button>
-            </div>
-          </div>
-          <!-- Modal for dataset selection -->
-          <div class="modal fade" id="datasetSelect" role="dialog" 
aria-labelledby="datasetSelectModalLabel" aria-hidden="true">
-            <div class="modal-dialog">
-              <div class="modal-content">
-                <div class="modal-header">
-                  <h3>Dataset Select</h3>
-                </div>
-                <div class="modal-body">
-                  <tabset>
-                    <tab ng-repeat="tab in templates" heading="{{tab.title}}" 
active="tab.active" disabled="tab.disabled">
-                      <div ng-include src="tab.url"></div>
-                    </tab>
-                    <li class="pull-right">Queued Datasets: 
{{datasetCount.length}}</li>
-                  </tabset>
-                </div>
-                <div class="modal-footer">
-                  <button class="btn btn-warning cancel" 
data-dismiss="modal">Close</button>
-                </div>
-              </div>
-            </div>
-          </div>
-          <!-- END - Modal for dataset selection -->
-          <div class="row">
-            <div class="col-md-12">
-            <hr />
-            </div>
-          </div>
-        </div>
-        <!--Dataset display-->
-        <div ng-controller="DatasetDisplayCtrl" id="datasetDiv">
-            <div ng-repeat="dataset in datasets">
-              <div class="row">
-                <!--Data section-->
-                <div class="col-md-8 col-md-offset-1 muted">
-                  {{dataset.name}}
-                </div>
-                <div class="col-md-1 col-md-offset-2">
-                  <span tooltip-placement="left" tooltip-popup-delay="700" 
tooltip="Remove Dataset">  
-                    <a class="no-color-link" href="#" 
ng-click="removeDataset($index)">
-                      <i class="fa fa-remove"></i>
-                    </a>
-                  </span>
-                </div>
-              </div>
-              <!--Time Values!-->
-              <div class="row">
-                <!--Dataset Info Section-->
-                <div class="col-md-9">
-                  <div class="row">
-                    <div class="col-md-2 col-md-offset-1 
text-center">Start:</div>
-                    <div class="col-md-2">
-                      <div class="col-md-2 
text-center">{{dataset.timeVals.start | ISODateToMiddleEndian}}</div>
-                    </div>
-                    <div class="col-md-2 text-center">End:</div>
-                    <div class="col-md-2">
-                      <div class="col-md-2 text-center">{{dataset.timeVals.end 
| ISODateToMiddleEndian}}</div>
-                    </div>
-                  </div>
-                  <!--Lat/Long Values!-->
-                  <div class="row">
-                    <div class="col-md-2 col-md-offset-1 
text-center">North:</div>
-                    <div class="col-md-2 text-center">
-                      {{dataset.latlonVals.latMax | number:2}}
-                    </div>
-                    <div class="col-md-2 text-center">West:</div>
-                    <div class="col-md-2 text-center">
-                      {{dataset.latlonVals.lonMin | number:2}}
-                    </div>
-                  </div>
-                  <div class="row">
-                    <div class="col-md-2 col-md-offset-1 
text-center">South:</div>
-                    <div class="col-md-2 text-center">
-                      {{dataset.latlonVals.latMin | number:2}}
-                    </div>
-                    <div class="col-md-2 text-center">East:</div>
-                    <div class="col-md-2 text-center">
-                      {{dataset.latlonVals.lonMax | number:2}}
-                    </div>
-                  </div>
-                </div>
-                <!--Preview Map Section-->
-                <div class="col-md-3">
-                  <!--If the dataset is global we show a picture of a globe 
instead of the actual map-->
-                  <div ng-hide="dataset.latlonVals.lonMin == -180 && 
dataset.latlonVals.lonMax == 180 && 
-                                dataset.latlonVals.latMin == -90 && 
dataset.latlonVals.latMax == 90" 
-                                preview-map="dataset" index="$index"></div>
-                  <div ng-show="dataset.latlonVals.lonMin == -180 && 
dataset.latlonVals.lonMax == 180 &&
-                                dataset.latlonVals.latMin == -90 && 
dataset.latlonVals.latMax == 90">
-                    <img src="img/globe.png" class="preview-map">
-                  </div>
-                </div>
-              </div>
-              <div class="row">
-                <div class="col-md-6 col-md-offset-3"><hr /></div>
-              </div>
-            </div>
-          </div>
-      </div>
-
-      <!-- Map, Timeline, and Parameter Control Column -->
-      <div class="col-md-6">
-        <!--Map-->
-        <div class="row"  ng-controller="WorldMapCtrl">
-          <div class="col-md-12">
-            <leaflet-map id="map"></leaflet-map>
-          </div>
-        </div>
-        
-        <!--Timeline-->
-        <div class="row">
-          <div class="col-md-12" ng-controller="TimelineCtrl">
-            <div class="timeline"></div>
-          </div>
-        </div>
-        
-        <div class="row">
-          <div class="col-md-12" ng-controller="ParameterSelectCtrl">
-            <div class="row top3">
-              <div class="col-md-2 text-center">Start Date:</div>
-              <div class="col-md-4">
-                <form>
-                  <!--This styling HAD to be done inline. Using a class 
wouldn't work and for some -->
-                  <!--reason the input boxes refused to be 100% wide when 
their span size was set.-->
-                  <input ng-disabled="shouldDisableControls()" 
on-blur="checkParameters();" ng-model="displayParams.start" 
ui-date="datepickerSettings" ui-date-format="yy-mm-dd" type="text" 
class="col-md-4 text-center" style="width:100%" />
-                </form>
-              </div>
-              <div class="col-md-2 text-center">End Date:</div>
-              <div class="col-md-4">
-                <form>
-                  <!--This styling HAD to be done inline. Using a class 
wouldn't work and for some -->
-                  <!--reason the input boxes refused to be 100% wide when 
their span size was set.-->
-                  <input ng-disabled="shouldDisableControls()" 
on-blur="checkParameters();" ng-model="displayParams.end" 
ui-date="datepickerSettings" ui-date-format="yy-mm-dd" type="text" 
class="col-md-4 text-center" style="width:100%"/>
-                </form>
-              </div>
-            </div>
-            <div class="row top3">
-              <div class="col-md-2 text-center">North:</div>
-              <div class="col-md-4">
-                <form action="">
-                  <input ng-disabled="shouldDisableControls()" 
ng-model="displayParams.latMax"  on-blur="checkParameters();" type="text" 
class="col-md-4 text-center" style="width:100%"/>
-                </form>
-              </div>
-              <div class="col-md-2 text-center">South:</div>
-              <div class="col-md-4">
-                <form action="">
-                  <!--This styling HAD to be done inline. Using a class 
wouldn't work and for some -->
-                  <!--reason the input boxes refused to be 100% wide when 
their span size was set.-->
-                  <input ng-disabled="shouldDisableControls()" 
ng-model="displayParams.latMin" on-blur="checkParameters();" type="text" 
class="col-md-4 text-center" style="width:100%"/>
-                </form>
-              </div>
-            </div>
-            <div class="row top3">
-              <div class="col-md-2 text-center">East:</div>
-              <div class="col-md-4">
-                <form>
-                  <!--This styling HAD to be done inline. Using a class 
wouldn't work and for some -->
-                  <!--reason the input boxes refused to be 100% wide when 
their span size was set.-->
-                  <input ng-disabled="shouldDisableControls()" 
ng-model="displayParams.lonMax" on-blur="checkParameters();" type="text" 
class="col-md-4 text-center" style="width:100%"/>
-                </form>
-              </div>
-              <div class="col-md-2 text-center">West:</div>
-              <div class="col-md-4">
-                <form>
-                  <!--This styling HAD to be done inline. Using a class 
wouldn't work and for some -->
-                  <!--reason the input boxes refused to be 100% wide when 
their span size was set.-->
-                  <input ng-disabled="shouldDisableControls()" 
ng-model="displayParams.lonMin" on-blur="checkParameters();"; type="text" 
class="col-md-4 text-center" style="width:100%"/>
-                </form>
-              </div>
-            </div>
-            <div class="row top3">
-              <div class="col-md-2 col-md-offset-6">
-                <!--<button class="btn btn-link no-color-link pull-right" 
bootstrap-modal-open="evaluationSettings">-->
-                <button class="btn btn-link no-color-link pull-right" 
data-toggle="modal" data-target="#evaluationSettingsModal">
-                  <span tooltip-placement="left" tooltip-popup-delay="700" 
tooltip="Settings">
-                    <span class="fa-stack fa-lg">
-                      <i class="fa fa-square-o fa-stack-2x"></i>
-                      <i class="fa fa-cogs fa-stack-1x"></i>
-                    </span>
-                  </span>
-                </button>
-              </div>
-              <div class="col-md-4">
-                <button ng-click="runEvaluation()" 
ng-disabled="shouldDisableEvaluateButton()" class="btn btn-block btn-primary">
-                  <div ng-hide="runningEval">Evaluate</div>
-                  <div ng-show="runningEval"><i class="fa fa-spinner 
fa-spin"></i></div>
-                </button>
-              </div>
-            </div>
-          </div>
-        </div>
-      </div>
-      </div>
-  </div>
-</div>
-

http://git-wip-us.apache.org/repos/asf/climate/blob/652ea657/ocw-ui/frontend-new/app/views/modelselect.html
----------------------------------------------------------------------
diff --git a/ocw-ui/frontend-new/app/views/modelselect.html 
b/ocw-ui/frontend-new/app/views/modelselect.html
deleted file mode 100644
index 9bc128f..0000000
--- a/ocw-ui/frontend-new/app/views/modelselect.html
+++ /dev/null
@@ -1,87 +0,0 @@
-<!--
-Licensed to the Apache Software Foundation (ASF) under one
-or more contributor license agreements.  See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership.  The ASF licenses this file
-to you under the Apache License, Version 2.0 (the
-"License"); you may not use this file except in compliance
-with the License.  You may obtain a copy of the License at
-
-   http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing,
-software distributed under the License is distributed on an
-"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-KIND, either express or implied.  See the License for the
-specific language governing permissions and limitations
-under the License.
--->
-
-<div class="container">
-  <div class="row">
-    <div class="span10 offset1 columns">
-      <div class="row">
-        <div class="span10">
-          <center>
-            <form id="modelSelectorForm">
-              <input type="file" name="modelSelector">
-            </form>
-          </center>
-        </div>
-      </div>
-      <div class="row">
-        <div class="span10 offset2">
-          <form class="form-horizontal" id="parameterSelectorForm">
-            <div class="control-group">
-              <label class="control-label" for="paramSelect">Parameter 
Value</label>
-              <div class="controls">
-                <select id="paramSelect">
-                  <option ng-repeat="param in modelParameters">
-                    {{param.text}}
-                  </option>
-                </select>
-              </div>
-            </div>
-            <div class="control-group">
-              <label class="control-label" for="latSelect">Latitude 
Variable</label>
-              <div class="controls">
-                <select id="latSelect">
-                  <option ng-repeat="lat in latVariables">
-                    {{lat.text}}
-                  </option>
-                </select>
-              </div>
-            </div>
-            <div class="control-group">
-              <label class="control-label" for="lonSelect">Longitude 
Variable</label>
-              <div class"controls">
-                <select id="lonSelect">
-                  <option ng-repeat="lon in lonVariables">
-                    {{lon.text}}
-                  </option>
-                </select>
-              </div>
-            </div>
-            <div class="control-group">
-              <label class="control-label" for="dateTimeSelect">Date/Time 
Variable</label>
-              <div class="controls">
-                <select id="dateTimeSelect">
-                  <option ng-repeat="dateTime in dateTimeVariables">
-                    {{dateTime.text}}
-                  </option>
-                </select>
-              </div>
-            </div>
-            <div class="control-group">
-              <div class="controls">
-                <button type="submit" class="btn btn-warn">Cancel</button>
-                <button type="submit" class="btn">Add Model</button>
-              </div>
-            </div>
-          </form>
-        </div>
-      </div>
-    </div>
-  </div>
-</div>
-

http://git-wip-us.apache.org/repos/asf/climate/blob/652ea657/ocw-ui/frontend-new/app/views/results.html
----------------------------------------------------------------------
diff --git a/ocw-ui/frontend-new/app/views/results.html 
b/ocw-ui/frontend-new/app/views/results.html
deleted file mode 100644
index 432bba1..0000000
--- a/ocw-ui/frontend-new/app/views/results.html
+++ /dev/null
@@ -1,34 +0,0 @@
-<!--
-Licensed to the Apache Software Foundation (ASF) under one
-or more contributor license agreements.  See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership.  The ASF licenses this file
-to you under the Apache License, Version 2.0 (the
-"License"); you may not use this file except in compliance
-with the License.  You may obtain a copy of the License at
-
-   http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing,
-software distributed under the License is distributed on an
-"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-KIND, either express or implied.  See the License for the
-specific language governing permissions and limitations
-under the License.
--->
-
-<div class="row">
-  <div class="col-md-3">
-    <div id="results-sidebar" class="pa-sidebar well well-small">
-      <ul class="nav nav-list">
-        <li id="results-sidebar-header" class="nav-header">Latest Run 
Results</li>
-        <li ng-repeat="result in results"
-            ng-class="{ active: $state.includes('results.detail') && 
$stateParams.resultId == result }">
-          <a href="#/results/{{result.replace('/', '')}}" >{{result}}</a>
-        </li>
-      </ul>
-      <div ui-view="menu"></div>
-    </div>
-  </div>
-  <div class="col-md-9" ui-view ng-animate="{enter:'fade-enter'}"></div>
-</div>

http://git-wip-us.apache.org/repos/asf/climate/blob/652ea657/ocw-ui/frontend-new/app/views/resultsdetail.html
----------------------------------------------------------------------
diff --git a/ocw-ui/frontend-new/app/views/resultsdetail.html 
b/ocw-ui/frontend-new/app/views/resultsdetail.html
deleted file mode 100644
index 4083ff3..0000000
--- a/ocw-ui/frontend-new/app/views/resultsdetail.html
+++ /dev/null
@@ -1,30 +0,0 @@
-<!--
-Licensed to the Apache Software Foundation (ASF) under one
-or more contributor license agreements.  See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership.  The ASF licenses this file
-to you under the Apache License, Version 2.0 (the
-"License"); you may not use this file except in compliance
-with the License.  You may obtain a copy of the License at
-
-   http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing,
-software distributed under the License is distributed on an
-"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-KIND, either express or implied.  See the License for the
-specific language governing permissions and limitations
-under the License.
--->
-
-<div>
-  <h2>{{result}}</h2>
-  <div class="row text-center">
-    <div class="{{alertClass}}">{{alertMessage}}</div>
-    <ul>
-      <li ng-repeat="figure in figures">
-        <img class="img-responsive" 
ng-src="{{baseURL}}/static/eval_results/{{figure}}" alt="" />
-      </li>
-    </ul>
-  </div>
-</div>

Reply via email to