Angular Material Calendar
HTML
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.8/angular-animate.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.8/angular-aria.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angular_material/1.1.0/angular-material.min.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/angular-i18n/1.5.7/angular-locale_ru-ru.js"></script>
<script src="https://cdn.rawgit.com/bradberger/angular-material-calendar/master/dist/angular-material-calendar.js"></script>
<link rel="stylesheet" href="https://ajax.googleapis.com/ajax/libs/angular_material/1.1.0/angular-material.min.css">
<script src="https://fonts.googleapis.com/icon?family=Material+Icons"></script>
<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.5.8/angular-sanitize.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.8/angular-messages.min.js"></script>
<div ng-controller="myCtrl">
<calendar-md id="calendar-demo" flex layout layout-fill calendar-direction="direction" on-prev-month="prevMonth" on-next-month="nextMonth" on-day-click="dayClick" title-format="'MMMM y'" ng-model='selectedDate' day-format="dayFormat" day-label-format="'EEE'"
day-label-tooltip-format="'EEEE'" day-tooltip-format="'fullDate'" week-starts-on="weekStartsOn" start-Date-of-month="1" no-of-days="30" tooltips="true" day-content="setDayContent" disable-future-selection="disableFutureDates"></calendar-md>
</div>
JavaScript
var app = angular.module('myApp', ['ngMaterial', 'materialCalendar']);
app.controller('myCtrl', ['$scope', function($scope) {
$scope.selectedDate = null;
$scope.firstDayOfWeek = 0;
$scope.setDirection = function(direction) {
$scope.direction = direction;
};
$scope.dayClick = function(date) {
console.log("You clicked " + date);
};
$scope.prevMonth = function(data) {
$scope.msg = "You clicked (prev) month " + data.month + ", " + data.year;
};
$scope.nextMonth = function(data) {
$scope.msg = "You clicked (next) month " + data.month + ", " + data.year;
};
$scope.setDayContent = function(date) {
return "<p></p>";
};
}]);