updated css to match [date-time] selector (no .datetimepicker class required)

removed console.logs
reformatted index.html
updated bower dependencies (angular-unstable)
updated README #2
This commit is contained in:
g00fy
2013-06-18 22:28:55 +02:00
parent 520930466f
commit 209b884a37
9 changed files with 358 additions and 367 deletions

View File

@@ -1,6 +1,19 @@
# AngularJS datepicker directives
#### Examples
#### Requirements
- Angular v1.1.4+
- jQuery or your own implementation of `position()` on top of `jQuery Lite`
#### Development version
Checkout branch `dev`, run `grunt install` and `bower install`.
To build run `gunt build`
## Examples
Live demo : http://run.plnkr.co/erJj712N4bbkGsub/
##### defaults

View File

@@ -1,6 +1,6 @@
<!DOCTYPE html>
<html>
<head>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title></title>
@@ -8,45 +8,44 @@
<meta name="viewport" content="width=device-width">
<!-- build:css styles/main.css -->
<link rel="stylesheet" href="styles/bootstrap.css">
<link rel="stylesheet" href="styles/main.css">
<link rel="stylesheet" href="styles/date.css"/>
<!-- endbuild -->
</head>
<body ng-app="sample">
</head>
<body ng-app="sample">
<div class="row-fluid">
<div class="span6">
<h2>Calendar</h2>
<div class="row-fluid">
<div class="span6">
<h2>Calendar</h2>
<h3>views</h3>
<h5>default</h5>
<pre>&lt;div date-picker="start"&gt;&lt;/div&gt; </pre>
<div date-picker="start" class="datetimepicker"></div>
<h5>year</h5>
<pre>&lt;div date-picker="start" <strong>year</strong>&gt;&lt;/div&gt; </pre>
<div date-picker="start" class="datetimepicker" year></div>
<h5>month</h5>
<pre>&lt;div date-picker="start <strong>month</strong>&gt;&lt;/div&gt; </pre>
<div date-picker="start" class="datetimepicker" month></div>
<h5>date</h5>
<pre>&lt;div date-picker="start" <strong>date</strong>&gt;&lt;/div&gt; </pre>
<div date-picker="start" class="datetimepicker" date></div>
<h5>hours</h5>
<pre>&lt;div date-picker="start" <strong>hours</strong>&gt;&lt;/div&gt; </pre>
<div date-picker="start" class="datetimepicker" hours></div>
<h5>minutes</h5>
<pre>&lt;div date-picker="start" <strong>minutes</strong>&gt;&lt;/div&gt; </pre>
<div date-picker="start" class="datetimepicker" minutes></div>
</div>
<div class="span6">
<h3>Input</h3>
<h5>default</h5>
<pre>&lt;input type="datetime" <strong>ng-model="model" date-time</strong>&gt;&lt;/div&gt; </pre>
<input type="datetime" date-time ng-model="start">
<h5>Input format</h5>
<pre>&lt;input type="datetime" ng-model="model" date-time <strong>format="long"</strong>&gt;&lt;/div&gt; </pre>
<input type="datetime" date-time ng-model="end" hours format="short">
<h5>A button</h5>
<h3>views</h3>
<h5>default</h5>
<pre>&lt;div date-picker="start"&gt;&lt;/div&gt; </pre>
<div date-picker="start"></div>
<h5>year</h5>
<pre>&lt;div date-picker="start" <strong>year</strong>&gt;&lt;/div&gt; </pre>
<div date-picker="start" year></div>
<h5>month</h5>
<pre>&lt;div date-picker="start <strong>month</strong>&gt;&lt;/div&gt; </pre>
<div date-picker="start" month></div>
<h5>date</h5>
<pre>&lt;div date-picker="start" <strong>date</strong>&gt;&lt;/div&gt; </pre>
<div date-picker="start" date></div>
<h5>hours</h5>
<pre>&lt;div date-picker="start" <strong>hours</strong>&gt;&lt;/div&gt; </pre>
<div date-picker="start" hours></div>
<h5>minutes</h5>
<pre>&lt;div date-picker="start" <strong>minutes</strong>&gt;&lt;/div&gt; </pre>
<div date-picker="start" minutes></div>
</div>
<div class="span6">
<h3>Input</h3>
<h5>default</h5>
<pre>&lt;input type="datetime" <strong>ng-model="model" date-time</strong>&gt;&lt;/div&gt; </pre>
<input type="datetime" date-time ng-model="start">
<h5>Input format</h5>
<pre>&lt;input type="datetime" ng-model="model" date-time <strong>format="long"</strong>&gt;&lt;/div&gt; </pre>
<input type="datetime" date-time ng-model="end" hours format="short">
<h5>A button</h5>
<pre ng-non-bindable>&lt;div class=&quot;dropdown&quot;&gt;
&lt;a class=&quot;dropdown-toggle btn btn-danger&quot;&gt;
pick a date: {{(date|date)}}
@@ -55,37 +54,40 @@
&lt;div date-picker=&quot;date&quot; class=&quot;datetimepicker&quot;&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;</pre>
<div class="dropdown">
<a class="dropdown-toggle btn btn-danger">
<div class="dropdown">
<a class="dropdown-toggle btn btn-danger">
pick a date: {{(date|date)}}
</a>
<div class="dropdown-menu" ng-click="$event.preventDefault();$event.stopPropagation()">
<div date-picker="date" class="datetimepicker"></div>
</div>
</div>
<h5>Date range</h5>
<pre>&lt;div date-range start="start" end="end" &gt;&lt;/div&gt; </pre>
<div date-range start="a" end="b" style="position: relative; z-index:0"></div>
<h5>Date range button</h5>
<div class="dropdown">
<a class="dropdown-toggle btn btn-danger">
{{(a|date)||"pick start"}} - {{(b|date)||"pick end"}}
</a>
<div class="dropdown-menu" ng-click="$event.preventDefault();$event.stopPropagation()">
<div date-range start="a" end="b"></div>
</div>
</div>
</div>d
</div>
</a>
<script src="components/jquery/jquery.js"></script>
<script src="components/angular/angular.js"></script>
<script src="components/angular-bootstrap/ui-bootstrap.js"></script>
<!-- build:js module.min.js -->
<script src="scripts/module.js"></script>
<!-- endbuild -->
<script>
angular.module('sample',['dateInput','ui.bootstrap'])
</script>
</body>
<div class="dropdown-menu" ng-click="$event.preventDefault();$event.stopPropagation()">
<div date-picker="date"></div>
</div>
</div>
<h5>Date range</h5>
<pre>&lt;div date-range start="start" end="end" &gt;&lt;/div&gt; </pre>
<div date-range start="a" end="b" style="position: relative; z-index:0"></div>
<h5>Date range button</h5>
<div class="dropdown">
<a class="dropdown-toggle btn btn-danger">
{{(a|date)||"pick start"}} - {{(b|date)||"pick end"}}
</a>
<div class="dropdown-menu" ng-click="$event.preventDefault();$event.stopPropagation()">
<div date-range start="a" end="b"></div>
</div>
</div>
</div>
</div>
<script src="components/jquery/jquery.js"></script>
<script src="components/angular-unstable/angular.js"></script>
<script src="components/angular-bootstrap/ui-bootstrap.js"></script>
<!-- build:js module.min.js -->
<script src="scripts/module.js"></script>
<!-- endbuild -->
<script>
angular.module('sample', ['dateInput', 'ui.bootstrap'])
</script>
</body>
</html>

View File

@@ -1,4 +1,4 @@
(function () {
(function (angular) {
'use strict';
var Module = angular.module('dateInput', []);
@@ -11,7 +11,6 @@
}
function getVisibleMinutes(date) {
console.time('getVisibleMinutes');
date = new Date(date || new Date());
date = new Date(date.getFullYear(), date.getMonth(), date.getDate(), date.getHours());
var minutes = [];
@@ -21,12 +20,10 @@
minutes.push(date);
date = new Date(date.getTime() + step * 60 * 1000);
}
console.timeEnd('getVisibleMinutes');
return minutes;
}
function getVisibleWeeks(date) {
console.time('getVisibleWeeks');
date = new Date(date || new Date());
date.setDate(1);
date.setHours(0);
@@ -53,25 +50,21 @@
}
weeks.push(week);
}
console.timeEnd('getVisibleWeeks');
return weeks;
}
function getVisibleYears(date) {
console.time('getVisibleYears');
var years = [];
date = new Date(date || new Date());
date.setFullYear(date.getFullYear() - (date.getFullYear() % 10));
for (var i = 0; i < 12; i++) {
years.push(new Date(date.getFullYear() + (i - 1), 0, 1));
}
console.timeEnd('getVisibleYears');
return years;
}
function getDaysOfWeek(date) {
console.time('getDaysOfWeek');
date = new Date(date || new Date());
date = new Date(date.getFullYear(), date.getMonth(), date.getDate());
date.setDate(date.getDate() - (date.getDay() - 1));
@@ -80,24 +73,20 @@
days.push(new Date(date));
date.setDate(date.getDate() + 1);
}
console.timeEnd('getDaysOfWeek');
return days;
}
function getVisibleMonths(date) {
console.time('getVisibleMonths');
date = new Date(date || new Date());
var year = date.getFullYear();
var months = [];
for (var month = 0; month < 12; month++) {
months.push(new Date(year, month, 1));
}
console.timeEnd('getVisibleMonths');
return months;
}
function getVisibleHours(date) {
console.time('getVisibleHours');
date = new Date(date || new Date());
date.setHours(0);
date.setMinutes(0);
@@ -108,7 +97,6 @@
hours.push(date);
date = new Date(date.getTime() + 60 * 60 * 1000);
}
console.timeEnd('getVisibleHours');
return hours;
}
@@ -426,7 +414,7 @@
Module.directive('dateRange', function () {
return {
template: '<div>\n <table >\n <tr>\n <td valign="top"><div date-picker="start" class="datetimepicker" date after="start" before="end"></div></td>\n <td valign="top"><div date-picker="end" class="datetimepicker" date after="start" before="end"></div></td>\n </tr>\n </table>\n \n \n</div>',
template: '<div>\n <table >\n <tr>\n <td valign="top"><div date-picker="start" class="date-picker" date after="start" before="end"></div></td>\n <td valign="top"><div date-picker="end" class="date-picker" date after="start" before="end"></div></td>\n </tr>\n </table>\n \n \n</div>',
scope : {
start: '=',
end : '='
@@ -445,4 +433,4 @@
}
};
});
})();
})(angular);

View File

@@ -15,11 +15,11 @@
.next, .prev{
font-size: 21px;
}
.datetimepicker table{
[date-picker] table{
table-layout: fixed;
}
.datetimepicker {
[date-picker] {
padding: 4px;
margin-top: 1px;
-webkit-border-radius: 4px;
@@ -34,10 +34,10 @@
.datetimepicker-inline {
width: 220px;
}
.datetimepicker.datetimepicker-rtl {
[date-picker].datetimepicker-rtl {
direction: rtl;
}
.datetimepicker.datetimepicker-rtl table tr td span {
[date-picker].datetimepicker-rtl table tr td span {
float: right;
}
.datetimepicker-dropdown, .datetimepicker-dropdown-left {
@@ -113,26 +113,26 @@
/*.datetimepicker > div {*/
/*display: none;*/
/*}*/
.datetimepicker.minutes div.datetimepicker-minutes {
[date-picker].minutes div.datetimepicker-minutes {
display: block;
}
.datetimepicker.hours div.datetimepicker-hours {
[date-picker].hours div.datetimepicker-hours {
display: block;
}
.datetimepicker.days div.datetimepicker-days {
[date-picker].days div.datetimepicker-days {
display: block;
}
.datetimepicker.months div.datetimepicker-months {
[date-picker].months div.datetimepicker-months {
display: block;
}
.datetimepicker.years div.datetimepicker-years {
[date-picker].years div.datetimepicker-years {
display: block;
}
.datetimepicker table {
[date-picker] table {
margin: 0;
}
.datetimepicker td,
.datetimepicker th {
[date-picker] td,
[date-picker] th {
text-align: center;
width: 20px;
height: 20px;
@@ -141,36 +141,36 @@
border-radius: 4px;
border: none;
}
.table-striped .datetimepicker table tr td,
.table-striped .datetimepicker table tr th {
.table-striped [date-picker] table tr td,
.table-striped [date-picker] table tr th {
background-color: transparent;
}
.datetimepicker table tr td.minute:hover {
[date-picker] table tr td.minute:hover {
background: #eeeeee;
cursor: pointer;
}
.datetimepicker table tr td.hour:hover {
[date-picker] table tr td.hour:hover {
background: #eeeeee;
cursor: pointer;
}
.datetimepicker table tr td.day:hover {
[date-picker] table tr td.day:hover {
background: #eeeeee;
cursor: pointer;
}
.datetimepicker table tr td.old,
.datetimepicker table tr td.new {
[date-picker] table tr td.old,
[date-picker] table tr td.new {
color: #999999;
}
.datetimepicker table tr td.disabled,
.datetimepicker table tr td.disabled:hover {
[date-picker] table tr td.disabled,
[date-picker] table tr td.disabled:hover {
background: none;
color: #999999;
cursor: default;
}
.datetimepicker table tr td.today,
.datetimepicker table tr td.today:hover,
.datetimepicker table tr td.today.disabled,
.datetimepicker table tr td.today.disabled:hover {
[date-picker] table tr td.today,
[date-picker] table tr td.today:hover,
[date-picker] table tr td.today.disabled,
[date-picker] table tr td.today.disabled:hover {
background-color: #fde19a;
background-image: -moz-linear-gradient(top, #fdd49a, #fdf59a);
background-image: -ms-linear-gradient(top, #fdd49a, #fdf59a);
@@ -184,42 +184,42 @@
border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
}
.datetimepicker table tr td.today:hover,
.datetimepicker table tr td.today:hover:hover,
.datetimepicker table tr td.today.disabled:hover,
.datetimepicker table tr td.today.disabled:hover:hover,
.datetimepicker table tr td.today:active,
.datetimepicker table tr td.today:hover:active,
.datetimepicker table tr td.today.disabled:active,
.datetimepicker table tr td.today.disabled:hover:active,
.datetimepicker table tr td.today.active,
.datetimepicker table tr td.today:hover.active,
.datetimepicker table tr td.today.disabled.active,
.datetimepicker table tr td.today.disabled:hover.active,
.datetimepicker table tr td.today.disabled,
.datetimepicker table tr td.today:hover.disabled,
.datetimepicker table tr td.today.disabled.disabled,
.datetimepicker table tr td.today.disabled:hover.disabled,
.datetimepicker table tr td.today[disabled],
.datetimepicker table tr td.today:hover[disabled],
.datetimepicker table tr td.today.disabled[disabled],
.datetimepicker table tr td.today.disabled:hover[disabled] {
[date-picker] table tr td.today:hover,
[date-picker] table tr td.today:hover:hover,
[date-picker] table tr td.today.disabled:hover,
[date-picker] table tr td.today.disabled:hover:hover,
[date-picker] table tr td.today:active,
[date-picker] table tr td.today:hover:active,
[date-picker] table tr td.today.disabled:active,
[date-picker] table tr td.today.disabled:hover:active,
[date-picker] table tr td.today.active,
[date-picker] table tr td.today:hover.active,
[date-picker] table tr td.today.disabled.active,
[date-picker] table tr td.today.disabled:hover.active,
[date-picker] table tr td.today.disabled,
[date-picker] table tr td.today:hover.disabled,
[date-picker] table tr td.today.disabled.disabled,
[date-picker] table tr td.today.disabled:hover.disabled,
[date-picker] table tr td.today[disabled],
[date-picker] table tr td.today:hover[disabled],
[date-picker] table tr td.today.disabled[disabled],
[date-picker] table tr td.today.disabled:hover[disabled] {
background-color: #fdf59a;
}
.datetimepicker table tr td.today:active,
.datetimepicker table tr td.today:hover:active,
.datetimepicker table tr td.today.disabled:active,
.datetimepicker table tr td.today.disabled:hover:active,
.datetimepicker table tr td.today.active,
.datetimepicker table tr td.today:hover.active,
.datetimepicker table tr td.today.disabled.active,
.datetimepicker table tr td.today.disabled:hover.active {
[date-picker] table tr td.today:active,
[date-picker] table tr td.today:hover:active,
[date-picker] table tr td.today.disabled:active,
[date-picker] table tr td.today.disabled:hover:active,
[date-picker] table tr td.today.active,
[date-picker] table tr td.today:hover.active,
[date-picker] table tr td.today.disabled.active,
[date-picker] table tr td.today.disabled:hover.active {
background-color: #fbf069 \9;
}
.datetimepicker table tr td.active,
.datetimepicker table tr td.active:hover,
.datetimepicker table tr td.active.disabled,
.datetimepicker table tr td.active.disabled:hover {
[date-picker] table tr td.active,
[date-picker] table tr td.active:hover,
[date-picker] table tr td.active.disabled,
[date-picker] table tr td.active.disabled:hover {
background-color: #006dcc;
background-image: -moz-linear-gradient(top, #0088cc, #0044cc);
background-image: -ms-linear-gradient(top, #0088cc, #0044cc);
@@ -235,39 +235,39 @@
color: #fff;
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
}
.datetimepicker table tr td.active:hover,
.datetimepicker table tr td.active:hover:hover,
.datetimepicker table tr td.active.disabled:hover,
.datetimepicker table tr td.active.disabled:hover:hover,
.datetimepicker table tr td.active:active,
.datetimepicker table tr td.active:hover:active,
.datetimepicker table tr td.active.disabled:active,
.datetimepicker table tr td.active.disabled:hover:active,
.datetimepicker table tr td.active.active,
.datetimepicker table tr td.active:hover.active,
.datetimepicker table tr td.active.disabled.active,
.datetimepicker table tr td.active.disabled:hover.active,
.datetimepicker table tr td.active.disabled,
.datetimepicker table tr td.active:hover.disabled,
.datetimepicker table tr td.active.disabled.disabled,
.datetimepicker table tr td.active.disabled:hover.disabled,
.datetimepicker table tr td.active[disabled],
.datetimepicker table tr td.active:hover[disabled],
.datetimepicker table tr td.active.disabled[disabled],
.datetimepicker table tr td.active.disabled:hover[disabled] {
[date-picker] table tr td.active:hover,
[date-picker] table tr td.active:hover:hover,
[date-picker] table tr td.active.disabled:hover,
[date-picker] table tr td.active.disabled:hover:hover,
[date-picker] table tr td.active:active,
[date-picker] table tr td.active:hover:active,
[date-picker] table tr td.active.disabled:active,
[date-picker] table tr td.active.disabled:hover:active,
[date-picker] table tr td.active.active,
[date-picker] table tr td.active:hover.active,
[date-picker] table tr td.active.disabled.active,
[date-picker] table tr td.active.disabled:hover.active,
[date-picker] table tr td.active.disabled,
[date-picker] table tr td.active:hover.disabled,
[date-picker] table tr td.active.disabled.disabled,
[date-picker] table tr td.active.disabled:hover.disabled,
[date-picker] table tr td.active[disabled],
[date-picker] table tr td.active:hover[disabled],
[date-picker] table tr td.active.disabled[disabled],
[date-picker] table tr td.active.disabled:hover[disabled] {
background-color: #0044cc;
}
.datetimepicker table tr td.active:active,
.datetimepicker table tr td.active:hover:active,
.datetimepicker table tr td.active.disabled:active,
.datetimepicker table tr td.active.disabled:hover:active,
.datetimepicker table tr td.active.active,
.datetimepicker table tr td.active:hover.active,
.datetimepicker table tr td.active.disabled.active,
.datetimepicker table tr td.active.disabled:hover.active {
[date-picker] table tr td.active:active,
[date-picker] table tr td.active:hover:active,
[date-picker] table tr td.active.disabled:active,
[date-picker] table tr td.active.disabled:hover:active,
[date-picker] table tr td.active.active,
[date-picker] table tr td.active:hover.active,
[date-picker] table tr td.active.disabled.active,
[date-picker] table tr td.active.disabled:hover.active {
background-color: #003399 \9;
}
.datetimepicker table tr td span {
[date-picker] table tr td span {
display: block;
width: 23%;
height: 54px;
@@ -279,36 +279,36 @@
-moz-border-radius: 4px;
border-radius: 4px;
}
.datetimepicker .datetimepicker-hours span {
[date-picker] .datetimepicker-hours span {
height: 26px;
line-height: 26px;
}
.datetimepicker .datetimepicker-hours table tr td span.hour_am,
.datetimepicker .datetimepicker-hours table tr td span.hour_pm {
[date-picker] .datetimepicker-hours table tr td span.hour_am,
[date-picker] .datetimepicker-hours table tr td span.hour_pm {
width: 14.6%;
}
.datetimepicker .datetimepicker-hours fieldset legend,
.datetimepicker .datetimepicker-minutes fieldset legend {
[date-picker] .datetimepicker-hours fieldset legend,
[date-picker] .datetimepicker-minutes fieldset legend {
margin-bottom: inherit;
line-height: 30px;
}
.datetimepicker .datetimepicker-minutes span {
[date-picker] .datetimepicker-minutes span {
height: 26px;
line-height: 26px;
}
.datetimepicker table tr td span:hover {
[date-picker] table tr td span:hover {
background: #eeeeee;
}
.datetimepicker table tr td span.disabled,
.datetimepicker table tr td span.disabled:hover {
[date-picker] table tr td span.disabled,
[date-picker] table tr td span.disabled:hover {
background: none;
color: #999999;
cursor: default;
}
.datetimepicker table tr td span.active,
.datetimepicker table tr td span.active:hover,
.datetimepicker table tr td span.active.disabled,
.datetimepicker table tr td span.active.disabled:hover {
[date-picker] table tr td span.active,
[date-picker] table tr td span.active:hover,
[date-picker] table tr td span.active.disabled,
[date-picker] table tr td span.active.disabled:hover {
background-color: #006dcc;
background-image: -moz-linear-gradient(top, #0088cc, #0044cc);
background-image: -ms-linear-gradient(top, #0088cc, #0044cc);
@@ -324,50 +324,50 @@
color: #fff;
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
}
.datetimepicker table tr td span.active:hover,
.datetimepicker table tr td span.active:hover:hover,
.datetimepicker table tr td span.active.disabled:hover,
.datetimepicker table tr td span.active.disabled:hover:hover,
.datetimepicker table tr td span.active:active,
.datetimepicker table tr td span.active:hover:active,
.datetimepicker table tr td span.active.disabled:active,
.datetimepicker table tr td span.active.disabled:hover:active,
.datetimepicker table tr td span.active.active,
.datetimepicker table tr td span.active:hover.active,
.datetimepicker table tr td span.active.disabled.active,
.datetimepicker table tr td span.active.disabled:hover.active,
.datetimepicker table tr td span.active.disabled,
.datetimepicker table tr td span.active:hover.disabled,
.datetimepicker table tr td span.active.disabled.disabled,
.datetimepicker table tr td span.active.disabled:hover.disabled,
.datetimepicker table tr td span.active[disabled],
.datetimepicker table tr td span.active:hover[disabled],
.datetimepicker table tr td span.active.disabled[disabled],
.datetimepicker table tr td span.active.disabled:hover[disabled] {
[date-picker] table tr td span.active:hover,
[date-picker] table tr td span.active:hover:hover,
[date-picker] table tr td span.active.disabled:hover,
[date-picker] table tr td span.active.disabled:hover:hover,
[date-picker] table tr td span.active:active,
[date-picker] table tr td span.active:hover:active,
[date-picker] table tr td span.active.disabled:active,
[date-picker] table tr td span.active.disabled:hover:active,
[date-picker] table tr td span.active.active,
[date-picker] table tr td span.active:hover.active,
[date-picker] table tr td span.active.disabled.active,
[date-picker] table tr td span.active.disabled:hover.active,
[date-picker] table tr td span.active.disabled,
[date-picker] table tr td span.active:hover.disabled,
[date-picker] table tr td span.active.disabled.disabled,
[date-picker] table tr td span.active.disabled:hover.disabled,
[date-picker] table tr td span.active[disabled],
[date-picker] table tr td span.active:hover[disabled],
[date-picker] table tr td span.active.disabled[disabled],
[date-picker] table tr td span.active.disabled:hover[disabled] {
background-color: #0044cc;
}
.datetimepicker table tr td span.active:active,
.datetimepicker table tr td span.active:hover:active,
.datetimepicker table tr td span.active.disabled:active,
.datetimepicker table tr td span.active.disabled:hover:active,
.datetimepicker table tr td span.active.active,
.datetimepicker table tr td span.active:hover.active,
.datetimepicker table tr td span.active.disabled.active,
.datetimepicker table tr td span.active.disabled:hover.active {
[date-picker] table tr td span.active:active,
[date-picker] table tr td span.active:hover:active,
[date-picker] table tr td span.active.disabled:active,
[date-picker] table tr td span.active.disabled:hover:active,
[date-picker] table tr td span.active.active,
[date-picker] table tr td span.active:hover.active,
[date-picker] table tr td span.active.disabled.active,
[date-picker] table tr td span.active.disabled:hover.active {
background-color: #003399 \9;
}
.datetimepicker table tr td span.old {
[date-picker] table tr td span.old {
color: #999999;
}
.datetimepicker th.switch {
[date-picker] th.switch {
width: 145px;
}
.datetimepicker thead tr:first-child th,
.datetimepicker tfoot tr:first-child th {
[date-picker] thead tr:first-child th,
[date-picker] tfoot tr:first-child th {
cursor: pointer;
}
.datetimepicker thead tr:first-child th:hover,
.datetimepicker tfoot tr:first-child th:hover {
[date-picker] thead tr:first-child th:hover,
[date-picker] tfoot tr:first-child th:hover {
background: #eeeeee;
}
.input-append.date .add-on i,

View File

@@ -8,7 +8,7 @@
],
"dependencies": {},
"devDependencies": {
"angular": "~1.0.5",
"angular-unstable": "latest",
"json3": "~3.2.4",
"es5-shim": "~2.0.8",
"jquery": "~2.0.2",

266
dist/index.css vendored
View File

@@ -15,11 +15,11 @@
.next, .prev{
font-size: 21px;
}
.datetimepicker table{
[date-picker] table{
table-layout: fixed;
}
.datetimepicker {
[date-picker] {
padding: 4px;
margin-top: 1px;
-webkit-border-radius: 4px;
@@ -34,10 +34,10 @@
.datetimepicker-inline {
width: 220px;
}
.datetimepicker.datetimepicker-rtl {
[date-picker].datetimepicker-rtl {
direction: rtl;
}
.datetimepicker.datetimepicker-rtl table tr td span {
[date-picker].datetimepicker-rtl table tr td span {
float: right;
}
.datetimepicker-dropdown, .datetimepicker-dropdown-left {
@@ -113,26 +113,26 @@
/*.datetimepicker > div {*/
/*display: none;*/
/*}*/
.datetimepicker.minutes div.datetimepicker-minutes {
[date-picker].minutes div.datetimepicker-minutes {
display: block;
}
.datetimepicker.hours div.datetimepicker-hours {
[date-picker].hours div.datetimepicker-hours {
display: block;
}
.datetimepicker.days div.datetimepicker-days {
[date-picker].days div.datetimepicker-days {
display: block;
}
.datetimepicker.months div.datetimepicker-months {
[date-picker].months div.datetimepicker-months {
display: block;
}
.datetimepicker.years div.datetimepicker-years {
[date-picker].years div.datetimepicker-years {
display: block;
}
.datetimepicker table {
[date-picker] table {
margin: 0;
}
.datetimepicker td,
.datetimepicker th {
[date-picker] td,
[date-picker] th {
text-align: center;
width: 20px;
height: 20px;
@@ -141,36 +141,36 @@
border-radius: 4px;
border: none;
}
.table-striped .datetimepicker table tr td,
.table-striped .datetimepicker table tr th {
.table-striped [date-picker] table tr td,
.table-striped [date-picker] table tr th {
background-color: transparent;
}
.datetimepicker table tr td.minute:hover {
[date-picker] table tr td.minute:hover {
background: #eeeeee;
cursor: pointer;
}
.datetimepicker table tr td.hour:hover {
[date-picker] table tr td.hour:hover {
background: #eeeeee;
cursor: pointer;
}
.datetimepicker table tr td.day:hover {
[date-picker] table tr td.day:hover {
background: #eeeeee;
cursor: pointer;
}
.datetimepicker table tr td.old,
.datetimepicker table tr td.new {
[date-picker] table tr td.old,
[date-picker] table tr td.new {
color: #999999;
}
.datetimepicker table tr td.disabled,
.datetimepicker table tr td.disabled:hover {
[date-picker] table tr td.disabled,
[date-picker] table tr td.disabled:hover {
background: none;
color: #999999;
cursor: default;
}
.datetimepicker table tr td.today,
.datetimepicker table tr td.today:hover,
.datetimepicker table tr td.today.disabled,
.datetimepicker table tr td.today.disabled:hover {
[date-picker] table tr td.today,
[date-picker] table tr td.today:hover,
[date-picker] table tr td.today.disabled,
[date-picker] table tr td.today.disabled:hover {
background-color: #fde19a;
background-image: -moz-linear-gradient(top, #fdd49a, #fdf59a);
background-image: -ms-linear-gradient(top, #fdd49a, #fdf59a);
@@ -184,42 +184,42 @@
border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
}
.datetimepicker table tr td.today:hover,
.datetimepicker table tr td.today:hover:hover,
.datetimepicker table tr td.today.disabled:hover,
.datetimepicker table tr td.today.disabled:hover:hover,
.datetimepicker table tr td.today:active,
.datetimepicker table tr td.today:hover:active,
.datetimepicker table tr td.today.disabled:active,
.datetimepicker table tr td.today.disabled:hover:active,
.datetimepicker table tr td.today.active,
.datetimepicker table tr td.today:hover.active,
.datetimepicker table tr td.today.disabled.active,
.datetimepicker table tr td.today.disabled:hover.active,
.datetimepicker table tr td.today.disabled,
.datetimepicker table tr td.today:hover.disabled,
.datetimepicker table tr td.today.disabled.disabled,
.datetimepicker table tr td.today.disabled:hover.disabled,
.datetimepicker table tr td.today[disabled],
.datetimepicker table tr td.today:hover[disabled],
.datetimepicker table tr td.today.disabled[disabled],
.datetimepicker table tr td.today.disabled:hover[disabled] {
[date-picker] table tr td.today:hover,
[date-picker] table tr td.today:hover:hover,
[date-picker] table tr td.today.disabled:hover,
[date-picker] table tr td.today.disabled:hover:hover,
[date-picker] table tr td.today:active,
[date-picker] table tr td.today:hover:active,
[date-picker] table tr td.today.disabled:active,
[date-picker] table tr td.today.disabled:hover:active,
[date-picker] table tr td.today.active,
[date-picker] table tr td.today:hover.active,
[date-picker] table tr td.today.disabled.active,
[date-picker] table tr td.today.disabled:hover.active,
[date-picker] table tr td.today.disabled,
[date-picker] table tr td.today:hover.disabled,
[date-picker] table tr td.today.disabled.disabled,
[date-picker] table tr td.today.disabled:hover.disabled,
[date-picker] table tr td.today[disabled],
[date-picker] table tr td.today:hover[disabled],
[date-picker] table tr td.today.disabled[disabled],
[date-picker] table tr td.today.disabled:hover[disabled] {
background-color: #fdf59a;
}
.datetimepicker table tr td.today:active,
.datetimepicker table tr td.today:hover:active,
.datetimepicker table tr td.today.disabled:active,
.datetimepicker table tr td.today.disabled:hover:active,
.datetimepicker table tr td.today.active,
.datetimepicker table tr td.today:hover.active,
.datetimepicker table tr td.today.disabled.active,
.datetimepicker table tr td.today.disabled:hover.active {
[date-picker] table tr td.today:active,
[date-picker] table tr td.today:hover:active,
[date-picker] table tr td.today.disabled:active,
[date-picker] table tr td.today.disabled:hover:active,
[date-picker] table tr td.today.active,
[date-picker] table tr td.today:hover.active,
[date-picker] table tr td.today.disabled.active,
[date-picker] table tr td.today.disabled:hover.active {
background-color: #fbf069 \9;
}
.datetimepicker table tr td.active,
.datetimepicker table tr td.active:hover,
.datetimepicker table tr td.active.disabled,
.datetimepicker table tr td.active.disabled:hover {
[date-picker] table tr td.active,
[date-picker] table tr td.active:hover,
[date-picker] table tr td.active.disabled,
[date-picker] table tr td.active.disabled:hover {
background-color: #006dcc;
background-image: -moz-linear-gradient(top, #0088cc, #0044cc);
background-image: -ms-linear-gradient(top, #0088cc, #0044cc);
@@ -235,39 +235,39 @@
color: #fff;
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
}
.datetimepicker table tr td.active:hover,
.datetimepicker table tr td.active:hover:hover,
.datetimepicker table tr td.active.disabled:hover,
.datetimepicker table tr td.active.disabled:hover:hover,
.datetimepicker table tr td.active:active,
.datetimepicker table tr td.active:hover:active,
.datetimepicker table tr td.active.disabled:active,
.datetimepicker table tr td.active.disabled:hover:active,
.datetimepicker table tr td.active.active,
.datetimepicker table tr td.active:hover.active,
.datetimepicker table tr td.active.disabled.active,
.datetimepicker table tr td.active.disabled:hover.active,
.datetimepicker table tr td.active.disabled,
.datetimepicker table tr td.active:hover.disabled,
.datetimepicker table tr td.active.disabled.disabled,
.datetimepicker table tr td.active.disabled:hover.disabled,
.datetimepicker table tr td.active[disabled],
.datetimepicker table tr td.active:hover[disabled],
.datetimepicker table tr td.active.disabled[disabled],
.datetimepicker table tr td.active.disabled:hover[disabled] {
[date-picker] table tr td.active:hover,
[date-picker] table tr td.active:hover:hover,
[date-picker] table tr td.active.disabled:hover,
[date-picker] table tr td.active.disabled:hover:hover,
[date-picker] table tr td.active:active,
[date-picker] table tr td.active:hover:active,
[date-picker] table tr td.active.disabled:active,
[date-picker] table tr td.active.disabled:hover:active,
[date-picker] table tr td.active.active,
[date-picker] table tr td.active:hover.active,
[date-picker] table tr td.active.disabled.active,
[date-picker] table tr td.active.disabled:hover.active,
[date-picker] table tr td.active.disabled,
[date-picker] table tr td.active:hover.disabled,
[date-picker] table tr td.active.disabled.disabled,
[date-picker] table tr td.active.disabled:hover.disabled,
[date-picker] table tr td.active[disabled],
[date-picker] table tr td.active:hover[disabled],
[date-picker] table tr td.active.disabled[disabled],
[date-picker] table tr td.active.disabled:hover[disabled] {
background-color: #0044cc;
}
.datetimepicker table tr td.active:active,
.datetimepicker table tr td.active:hover:active,
.datetimepicker table tr td.active.disabled:active,
.datetimepicker table tr td.active.disabled:hover:active,
.datetimepicker table tr td.active.active,
.datetimepicker table tr td.active:hover.active,
.datetimepicker table tr td.active.disabled.active,
.datetimepicker table tr td.active.disabled:hover.active {
[date-picker] table tr td.active:active,
[date-picker] table tr td.active:hover:active,
[date-picker] table tr td.active.disabled:active,
[date-picker] table tr td.active.disabled:hover:active,
[date-picker] table tr td.active.active,
[date-picker] table tr td.active:hover.active,
[date-picker] table tr td.active.disabled.active,
[date-picker] table tr td.active.disabled:hover.active {
background-color: #003399 \9;
}
.datetimepicker table tr td span {
[date-picker] table tr td span {
display: block;
width: 23%;
height: 54px;
@@ -279,36 +279,36 @@
-moz-border-radius: 4px;
border-radius: 4px;
}
.datetimepicker .datetimepicker-hours span {
[date-picker] .datetimepicker-hours span {
height: 26px;
line-height: 26px;
}
.datetimepicker .datetimepicker-hours table tr td span.hour_am,
.datetimepicker .datetimepicker-hours table tr td span.hour_pm {
[date-picker] .datetimepicker-hours table tr td span.hour_am,
[date-picker] .datetimepicker-hours table tr td span.hour_pm {
width: 14.6%;
}
.datetimepicker .datetimepicker-hours fieldset legend,
.datetimepicker .datetimepicker-minutes fieldset legend {
[date-picker] .datetimepicker-hours fieldset legend,
[date-picker] .datetimepicker-minutes fieldset legend {
margin-bottom: inherit;
line-height: 30px;
}
.datetimepicker .datetimepicker-minutes span {
[date-picker] .datetimepicker-minutes span {
height: 26px;
line-height: 26px;
}
.datetimepicker table tr td span:hover {
[date-picker] table tr td span:hover {
background: #eeeeee;
}
.datetimepicker table tr td span.disabled,
.datetimepicker table tr td span.disabled:hover {
[date-picker] table tr td span.disabled,
[date-picker] table tr td span.disabled:hover {
background: none;
color: #999999;
cursor: default;
}
.datetimepicker table tr td span.active,
.datetimepicker table tr td span.active:hover,
.datetimepicker table tr td span.active.disabled,
.datetimepicker table tr td span.active.disabled:hover {
[date-picker] table tr td span.active,
[date-picker] table tr td span.active:hover,
[date-picker] table tr td span.active.disabled,
[date-picker] table tr td span.active.disabled:hover {
background-color: #006dcc;
background-image: -moz-linear-gradient(top, #0088cc, #0044cc);
background-image: -ms-linear-gradient(top, #0088cc, #0044cc);
@@ -324,50 +324,50 @@
color: #fff;
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
}
.datetimepicker table tr td span.active:hover,
.datetimepicker table tr td span.active:hover:hover,
.datetimepicker table tr td span.active.disabled:hover,
.datetimepicker table tr td span.active.disabled:hover:hover,
.datetimepicker table tr td span.active:active,
.datetimepicker table tr td span.active:hover:active,
.datetimepicker table tr td span.active.disabled:active,
.datetimepicker table tr td span.active.disabled:hover:active,
.datetimepicker table tr td span.active.active,
.datetimepicker table tr td span.active:hover.active,
.datetimepicker table tr td span.active.disabled.active,
.datetimepicker table tr td span.active.disabled:hover.active,
.datetimepicker table tr td span.active.disabled,
.datetimepicker table tr td span.active:hover.disabled,
.datetimepicker table tr td span.active.disabled.disabled,
.datetimepicker table tr td span.active.disabled:hover.disabled,
.datetimepicker table tr td span.active[disabled],
.datetimepicker table tr td span.active:hover[disabled],
.datetimepicker table tr td span.active.disabled[disabled],
.datetimepicker table tr td span.active.disabled:hover[disabled] {
[date-picker] table tr td span.active:hover,
[date-picker] table tr td span.active:hover:hover,
[date-picker] table tr td span.active.disabled:hover,
[date-picker] table tr td span.active.disabled:hover:hover,
[date-picker] table tr td span.active:active,
[date-picker] table tr td span.active:hover:active,
[date-picker] table tr td span.active.disabled:active,
[date-picker] table tr td span.active.disabled:hover:active,
[date-picker] table tr td span.active.active,
[date-picker] table tr td span.active:hover.active,
[date-picker] table tr td span.active.disabled.active,
[date-picker] table tr td span.active.disabled:hover.active,
[date-picker] table tr td span.active.disabled,
[date-picker] table tr td span.active:hover.disabled,
[date-picker] table tr td span.active.disabled.disabled,
[date-picker] table tr td span.active.disabled:hover.disabled,
[date-picker] table tr td span.active[disabled],
[date-picker] table tr td span.active:hover[disabled],
[date-picker] table tr td span.active.disabled[disabled],
[date-picker] table tr td span.active.disabled:hover[disabled] {
background-color: #0044cc;
}
.datetimepicker table tr td span.active:active,
.datetimepicker table tr td span.active:hover:active,
.datetimepicker table tr td span.active.disabled:active,
.datetimepicker table tr td span.active.disabled:hover:active,
.datetimepicker table tr td span.active.active,
.datetimepicker table tr td span.active:hover.active,
.datetimepicker table tr td span.active.disabled.active,
.datetimepicker table tr td span.active.disabled:hover.active {
[date-picker] table tr td span.active:active,
[date-picker] table tr td span.active:hover:active,
[date-picker] table tr td span.active.disabled:active,
[date-picker] table tr td span.active.disabled:hover:active,
[date-picker] table tr td span.active.active,
[date-picker] table tr td span.active:hover.active,
[date-picker] table tr td span.active.disabled.active,
[date-picker] table tr td span.active.disabled:hover.active {
background-color: #003399 \9;
}
.datetimepicker table tr td span.old {
[date-picker] table tr td span.old {
color: #999999;
}
.datetimepicker th.switch {
[date-picker] th.switch {
width: 145px;
}
.datetimepicker thead tr:first-child th,
.datetimepicker tfoot tr:first-child th {
[date-picker] thead tr:first-child th,
[date-picker] tfoot tr:first-child th {
cursor: pointer;
}
.datetimepicker thead tr:first-child th:hover,
.datetimepicker tfoot tr:first-child th:hover {
[date-picker] thead tr:first-child th:hover,
[date-picker] tfoot tr:first-child th:hover {
background: #eeeeee;
}
.input-append.date .add-on i,

18
dist/index.js vendored
View File

@@ -1,4 +1,4 @@
(function () {
(function (angular) {
'use strict';
var Module = angular.module('dateInput', []);
@@ -11,7 +11,6 @@
}
function getVisibleMinutes(date) {
console.time('getVisibleMinutes');
date = new Date(date || new Date());
date = new Date(date.getFullYear(), date.getMonth(), date.getDate(), date.getHours());
var minutes = [];
@@ -21,12 +20,10 @@
minutes.push(date);
date = new Date(date.getTime() + step * 60 * 1000);
}
console.timeEnd('getVisibleMinutes');
return minutes;
}
function getVisibleWeeks(date) {
console.time('getVisibleWeeks');
date = new Date(date || new Date());
date.setDate(1);
date.setHours(0);
@@ -53,25 +50,21 @@
}
weeks.push(week);
}
console.timeEnd('getVisibleWeeks');
return weeks;
}
function getVisibleYears(date) {
console.time('getVisibleYears');
var years = [];
date = new Date(date || new Date());
date.setFullYear(date.getFullYear() - (date.getFullYear() % 10));
for (var i = 0; i < 12; i++) {
years.push(new Date(date.getFullYear() + (i - 1), 0, 1));
}
console.timeEnd('getVisibleYears');
return years;
}
function getDaysOfWeek(date) {
console.time('getDaysOfWeek');
date = new Date(date || new Date());
date = new Date(date.getFullYear(), date.getMonth(), date.getDate());
date.setDate(date.getDate() - (date.getDay() - 1));
@@ -80,24 +73,20 @@
days.push(new Date(date));
date.setDate(date.getDate() + 1);
}
console.timeEnd('getDaysOfWeek');
return days;
}
function getVisibleMonths(date) {
console.time('getVisibleMonths');
date = new Date(date || new Date());
var year = date.getFullYear();
var months = [];
for (var month = 0; month < 12; month++) {
months.push(new Date(year, month, 1));
}
console.timeEnd('getVisibleMonths');
return months;
}
function getVisibleHours(date) {
console.time('getVisibleHours');
date = new Date(date || new Date());
date.setHours(0);
date.setMinutes(0);
@@ -108,7 +97,6 @@
hours.push(date);
date = new Date(date.getTime() + 60 * 60 * 1000);
}
console.timeEnd('getVisibleHours');
return hours;
}
@@ -426,7 +414,7 @@
Module.directive('dateRange', function () {
return {
template: '<div>\n <table >\n <tr>\n <td valign="top"><div date-picker="start" class="datetimepicker" date after="start" before="end"></div></td>\n <td valign="top"><div date-picker="end" class="datetimepicker" date after="start" before="end"></div></td>\n </tr>\n </table>\n \n \n</div>',
template: '<div>\n <table >\n <tr>\n <td valign="top"><div date-picker="start" class="date-picker" date after="start" before="end"></div></td>\n <td valign="top"><div date-picker="end" class="date-picker" date after="start" before="end"></div></td>\n </tr>\n </table>\n \n \n</div>',
scope : {
start: '=',
end : '='
@@ -445,7 +433,7 @@
}
};
});
})();
})(angular);
angular.module("dateInput").run(["$templateCache", function($templateCache) {
$templateCache.put("scripts/template.html",

2
dist/index.min.css vendored

File diff suppressed because one or more lines are too long

2
dist/index.min.js vendored

File diff suppressed because one or more lines are too long