'use strict';

var NetTransactionsCtrl = ['$scope', '$location', 'dateFilter', 'net_transactions', function ($scope, $location, dateFilter, net_transactions) {
    $scope.info = net_transactions;
    $scope.show = function () {
        if (angular.isDate($scope.info.StartDate)) {
            $scope.info.StartDate = dateFilter($scope.info.StartDate, 'dd-MMM-yyyy');
        }
        if (angular.isDate($scope.info.FinishDate)) {
            $scope.info.FinishDate = dateFilter($scope.info.FinishDate, 'dd-MMM-yyyy');
        }
        $location.path('/NetTransactions').search({StartDate: $scope.info.StartDate, FinishDate: $scope.info.FinishDate});
    };
    $('#txtStartDate').focus();
}];

NetTransactionsCtrl.resolve = {
    net_transactions: ['$q', '$route', 'NetTransactions', function ($q, $route, NetTransactions) {
        var deferred = $q.defer();

        var start_date = $route.current.params.StartDate;
        var finish_date = $route.current.params.FinishDate;

        var successCb = function (result) {
            deferred.resolve(result);
        };

        if (typeof start_date === 'undefined' || typeof finish_date === 'undefined') {
            NetTransactions.get({}, successCb);
        } else {
            NetTransactions.get({StartDate: start_date, FinishDate: finish_date}, successCb);
        }
        return deferred.promise;
    }]
};