title: OrderBy filter failing if expression contains a dot
body: <p>I have a dynamically changing orderBy filter in angular.</p>
  
  <p>My HTML calls an updateOrder() method that takes a parameter 'date', 'value', 'seller.name', 'buyer.name', etc.:</p>
  
  <pre><code>&lt;button type="button" ng-click="updateOrder('date')" class="btn btn-default navbar-btn"&gt;Date&lt;/button&gt;
  &lt;button type="button" ng-click="updateOrder('value')" class="btn btn-default navbar-btn"&gt;Valuation&lt;/button&gt;
  &lt;button type="button" ng-click="updateorder('seller.name')" class="btn btn-default navbar-btn"&gt;Alphabetical&lt;/button&gt;
  </code></pre>
  
  <p>My updateOrder() method detects whether the order needs to be reversed and with what to order the list by:</p>
  
  <pre><code>$scope.order = 'date';
  $scope.reverse = true;
  let current = $scope.order;
  $scope.updateOrder = function(order) {
      console.log(order);
      if(current === order) {
          $scope.reverse = !$scope.reverse;
      } else if(!$scope.reverse) {
          $scope.reverse = true;
          $scope.order = order;
          current = order;
      } else {
          $scope.order = order;
          current = order;
      }
  }
  </code></pre>
  
  <p>And then my ng-repeat div uses this order filter:</p>
  
  <pre><code>orderBy:order:reverse
  </code></pre>
  
  <p>For some reason, whenever I pass an argument with a dot (period), the filter fails and the order doesn't change. Due to other limitations, I would prefer not to change my database schema to not have subcategories (buyer.name, seller.name, etc.). Is there a way around this?</p>