caboose-cms 0.5.122 → 0.5.123
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +8 -8
- data/app/assets/javascripts/caboose/admin.js +1 -0
- data/app/assets/javascripts/caboose/admin_edit_order.js +6 -8
- data/app/assets/javascripts/caboose/cart.js +2 -2
- data/app/assets/javascripts/caboose/jquery.datetimepicker.js +1925 -0
- data/app/assets/javascripts/caboose/model/all.js +1 -0
- data/app/assets/javascripts/caboose/model/bound_date.js +10 -3
- data/app/assets/javascripts/caboose/model/bound_date_time.js +121 -0
- data/app/assets/javascripts/caboose/model/model_binder.js +3 -0
- data/app/assets/stylesheets/caboose/admin.css +1 -0
- data/app/assets/stylesheets/caboose/jquery.datetimepicker.css +523 -0
- data/app/assets/templates/caboose/cart/line_items.jst.ejs +1 -1
- data/app/assets/templates/caboose/checkout/line_items.jst.ejs +2 -2
- data/app/controllers/caboose/checkout_controller.rb +3 -2
- data/app/controllers/caboose/line_items_controller.rb +4 -2
- data/app/controllers/caboose/my_account_controller.rb +43 -0
- data/app/controllers/caboose/my_account_orders_controller.rb +40 -6
- data/app/controllers/caboose/orders_controller.rb +26 -20
- data/app/controllers/caboose/products_controller.rb +1 -0
- data/app/controllers/caboose/sites_controller.rb +15 -1
- data/app/controllers/caboose/users_controller.rb +0 -35
- data/app/controllers/caboose/variants_controller.rb +51 -2
- data/app/controllers/caboose/vendors_controller.rb +3 -2
- data/app/models/caboose/address.rb +9 -1
- data/app/models/caboose/line_item.rb +17 -9
- data/app/models/caboose/model_binder.rb +63 -0
- data/app/models/caboose/order.rb +21 -14
- data/app/models/caboose/order_pdf.rb +3 -3
- data/app/models/caboose/pending_orders_pdf.rb +1 -1
- data/app/models/caboose/product.rb +15 -16
- data/app/models/caboose/schema.rb +20 -13
- data/app/models/caboose/site.rb +9 -0
- data/app/models/caboose/store_config.rb +6 -0
- data/app/models/caboose/variant.rb +15 -1
- data/app/views/caboose/checkout/_cart.html.erb +3 -3
- data/app/views/caboose/checkout/_confirm.html.erb +3 -3
- data/app/views/caboose/login/index.html.erb +7 -3
- data/app/views/caboose/{users/my_account.html.erb → my_account/index.html.erb} +7 -6
- data/app/views/caboose/my_account_orders/edit.html.erb +104 -0
- data/app/views/caboose/my_account_orders/index.html.erb +36 -0
- data/app/views/caboose/sites/admin_edit.html.erb +2 -0
- data/app/views/caboose/variants/admin_edit.html.erb +11 -1
- data/app/views/caboose/variants/admin_index.html.erb +5 -2
- data/config/routes.rb +7 -2
- data/lib/caboose/#Untitled-1# +264 -0
- data/lib/caboose/engine.rb +23 -140
- data/lib/caboose/version.rb +1 -1
- data/lib/tasks/caboose.rake +15 -1
- metadata +11 -4
- data/app/views/caboose/orders/admin_edit_old.html.erb +0 -155
@@ -11,6 +11,7 @@
|
|
11
11
|
//= require caboose/model/bound_checkbox_multiple
|
12
12
|
//= require caboose/model/bound_date
|
13
13
|
//= require caboose/model/bound_time
|
14
|
+
//= require caboose/model/bound_date_time
|
14
15
|
//= require caboose/model/bound_image
|
15
16
|
//= require caboose/model/bound_s3_image
|
16
17
|
//= require caboose/model/bound_file
|
@@ -57,9 +57,16 @@ BoundDate = BoundControl.extend({
|
|
57
57
|
$('#'+this.el).css('z-index', 21);
|
58
58
|
$('#'+this.el).css('position', 'relative');
|
59
59
|
$('#'+this.el).css('background', 'transparent');
|
60
|
-
|
61
|
-
|
62
|
-
});
|
60
|
+
//$('#'+this.el).datepicker({
|
61
|
+
// onSelect: function() { this2.save(); }
|
62
|
+
//});
|
63
|
+
$('#'+this.el).datetimepicker({
|
64
|
+
format: 'm/d/Y',
|
65
|
+
//formatDate: 'm/d/Y',
|
66
|
+
timepicker: false,
|
67
|
+
//formatTime: 'g:i a', // 12-hour format without leading zeros + lowercase am/pm
|
68
|
+
onSelectDate: function() { this2.save(); }
|
69
|
+
});
|
63
70
|
},
|
64
71
|
|
65
72
|
save: function() {
|
@@ -0,0 +1,121 @@
|
|
1
|
+
|
2
|
+
BoundDateTime = BoundControl.extend({
|
3
|
+
|
4
|
+
//el: false,
|
5
|
+
//model: false,
|
6
|
+
//attribute: false,
|
7
|
+
//binder: false,
|
8
|
+
|
9
|
+
width: false,
|
10
|
+
save_attempts: 0,
|
11
|
+
|
12
|
+
init: function(params) {
|
13
|
+
for (var thing in params)
|
14
|
+
this[thing] = params[thing];
|
15
|
+
|
16
|
+
this.el = this.el ? this.el : this.model.name.toLowerCase() + '_' + this.model.id + '_' + this.attribute.name;
|
17
|
+
$('#'+this.el).wrap($('<div/>')
|
18
|
+
.attr('id', this.el + '_container')
|
19
|
+
.addClass('mb_container')
|
20
|
+
.css('position', 'relative')
|
21
|
+
);
|
22
|
+
$('#'+this.el+'_container').empty();
|
23
|
+
$('#'+this.el+'_container').append($('<input/>')
|
24
|
+
.attr('id', this.el)
|
25
|
+
.attr('type', 'text')
|
26
|
+
.attr('placeholder', this.attribute.fixed_placeholder ? 'empty' : this.attribute.nice_name)
|
27
|
+
.css('text-align', this.attribute.align)
|
28
|
+
.val(this.attribute.value)
|
29
|
+
);
|
30
|
+
|
31
|
+
if (this.attribute.fixed_placeholder)
|
32
|
+
$('#'+this.el+'_container').append($('<div/>').attr('id', this.el + '_placeholder').addClass('mb_placeholder').append($('<span/>').html(this.attribute.nice_name + ': ')));
|
33
|
+
if (this.attribute.width) $('#'+this.el).css('width' , this.attribute.width);
|
34
|
+
if (this.attribute.fixed_placeholder)
|
35
|
+
{
|
36
|
+
var w = $('#'+this.el+'_placeholder').outerWidth();
|
37
|
+
$('#'+this.el).attr('placeholder', 'empty').css('padding-left', '+=' + w).css('width', '-=' + w);
|
38
|
+
}
|
39
|
+
|
40
|
+
var this2 = this;
|
41
|
+
$('#'+this.el).on('keyup', function(e) {
|
42
|
+
if (e.keyCode == 27) this2.cancel(); // Escape
|
43
|
+
if (e.keyCode == 13) this2.save(); // Enter
|
44
|
+
|
45
|
+
if ($('#'+this2.el).val() != this2.attribute.value_clean)
|
46
|
+
$('#'+this2.el).addClass('mb_dirty');
|
47
|
+
else
|
48
|
+
$('#'+this2.el).removeClass('mb_dirty');
|
49
|
+
});
|
50
|
+
$('#'+this.el).on('blur', function() {
|
51
|
+
if (this2.save_attempts < 1)
|
52
|
+
{
|
53
|
+
this2.save_attempts++;
|
54
|
+
this2.save();
|
55
|
+
}
|
56
|
+
});
|
57
|
+
$('#'+this.el).css('z-index', 21);
|
58
|
+
$('#'+this.el).css('position', 'relative');
|
59
|
+
$('#'+this.el).css('background', 'transparent');
|
60
|
+
$('#'+this.el).datetimepicker({
|
61
|
+
format: 'm/d/Y g:i a',
|
62
|
+
formatTime: 'h:i a', // 12-hour format without leading zeros + lowercase am/pm
|
63
|
+
step: 15
|
64
|
+
});
|
65
|
+
},
|
66
|
+
|
67
|
+
save: function() {
|
68
|
+
this.attribute.value = $('#'+this.el).val();
|
69
|
+
if (this.attribute.value == this.attribute.value_clean)
|
70
|
+
return;
|
71
|
+
|
72
|
+
this.show_loader();
|
73
|
+
var this2 = this;
|
74
|
+
|
75
|
+
this.model.save(this.attribute, function(resp) {
|
76
|
+
this2.save_attempts = 0;
|
77
|
+
if (resp.error)
|
78
|
+
{
|
79
|
+
this2.hide_loader();
|
80
|
+
this2.error(resp.error);
|
81
|
+
}
|
82
|
+
else
|
83
|
+
{
|
84
|
+
this2.show_check(500);
|
85
|
+
$('#'+this2.el).val(this2.attribute.value);
|
86
|
+
$('#'+this2.el).removeClass('mb_dirty');
|
87
|
+
|
88
|
+
if (this2.binder.success)
|
89
|
+
this2.binder.success(this2);
|
90
|
+
}
|
91
|
+
});
|
92
|
+
},
|
93
|
+
|
94
|
+
cancel: function() {
|
95
|
+
if (this.attribute.before_cancel) this.attribute.before_cancel();
|
96
|
+
this.attribute.value = this.attribute.value_clean;
|
97
|
+
$('#'+this.el).val(this.attribute.value);
|
98
|
+
$('#'+this.el).removeClass('mb_dirty');
|
99
|
+
|
100
|
+
if ($('#'+this.el+'_check').length)
|
101
|
+
this.hide_check();
|
102
|
+
|
103
|
+
if (this.attribute.after_cancel) this.attribute.after_cancel();
|
104
|
+
},
|
105
|
+
|
106
|
+
error: function(str) {
|
107
|
+
if (!$('#'+this.el+'_message').length)
|
108
|
+
{
|
109
|
+
$('#'+this.el+'_container').append($('<div/>')
|
110
|
+
.attr('id', this.el + '_message')
|
111
|
+
.css('width', $('#'+this.el).outerWidth())
|
112
|
+
);
|
113
|
+
}
|
114
|
+
$('#'+this.el+'_message').hide();
|
115
|
+
$('#'+this.el+'_message').html("<p class='note error'>" + str + "</p>");
|
116
|
+
$('#'+this.el+'_message').slideDown();
|
117
|
+
var this2 = this;
|
118
|
+
setTimeout(function() { $('#'+this2.el+'_message').slideUp(function() { $(this).empty(); }); }, 3000);
|
119
|
+
}
|
120
|
+
|
121
|
+
});
|
@@ -103,6 +103,9 @@ ModelBinder.prototype = {
|
|
103
103
|
|
104
104
|
if (attrib.type == 'text') control = new BoundText(opts);
|
105
105
|
else if (attrib.type == 'color') control = new BoundColor(opts);
|
106
|
+
else if (attrib.type == 'datetime') control = new BoundDateTime(opts);
|
107
|
+
else if (attrib.type == 'date-time') control = new BoundDateTime(opts);
|
108
|
+
else if (attrib.type == 'date_time') control = new BoundDateTime(opts);
|
106
109
|
else if (attrib.type == 'select') control = new BoundSelect(opts);
|
107
110
|
else if (attrib.type == 'checkbox') control = new BoundCheckbox(opts);
|
108
111
|
else if (attrib.type == 'checkbox-multiple') control = new BoundCheckboxMultiple(opts);
|
@@ -0,0 +1,523 @@
|
|
1
|
+
.xdsoft_datetimepicker {
|
2
|
+
box-shadow: 0 5px 15px -5px rgba(0, 0, 0, 0.506);
|
3
|
+
background: #fff;
|
4
|
+
border-bottom: 1px solid #bbb;
|
5
|
+
border-left: 1px solid #ccc;
|
6
|
+
border-right: 1px solid #ccc;
|
7
|
+
border-top: 1px solid #ccc;
|
8
|
+
color: #333;
|
9
|
+
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
|
10
|
+
padding: 8px;
|
11
|
+
padding-left: 0;
|
12
|
+
padding-top: 2px;
|
13
|
+
position: absolute;
|
14
|
+
z-index: 9999;
|
15
|
+
-moz-box-sizing: border-box;
|
16
|
+
box-sizing: border-box;
|
17
|
+
display: none;
|
18
|
+
}
|
19
|
+
|
20
|
+
.xdsoft_datetimepicker iframe {
|
21
|
+
position: absolute;
|
22
|
+
left: 0;
|
23
|
+
top: 0;
|
24
|
+
width: 75px;
|
25
|
+
height: 210px;
|
26
|
+
background: transparent;
|
27
|
+
border: none;
|
28
|
+
}
|
29
|
+
|
30
|
+
/*For IE8 or lower*/
|
31
|
+
.xdsoft_datetimepicker button {
|
32
|
+
border: none !important;
|
33
|
+
}
|
34
|
+
|
35
|
+
.xdsoft_noselect {
|
36
|
+
-webkit-touch-callout: none;
|
37
|
+
-webkit-user-select: none;
|
38
|
+
-khtml-user-select: none;
|
39
|
+
-moz-user-select: none;
|
40
|
+
-ms-user-select: none;
|
41
|
+
-o-user-select: none;
|
42
|
+
user-select: none;
|
43
|
+
}
|
44
|
+
|
45
|
+
.xdsoft_noselect::selection { background: transparent }
|
46
|
+
.xdsoft_noselect::-moz-selection { background: transparent }
|
47
|
+
|
48
|
+
.xdsoft_datetimepicker.xdsoft_inline {
|
49
|
+
display: inline-block;
|
50
|
+
position: static;
|
51
|
+
box-shadow: none;
|
52
|
+
}
|
53
|
+
|
54
|
+
.xdsoft_datetimepicker * {
|
55
|
+
-moz-box-sizing: border-box;
|
56
|
+
box-sizing: border-box;
|
57
|
+
padding: 0;
|
58
|
+
margin: 0;
|
59
|
+
}
|
60
|
+
|
61
|
+
.xdsoft_datetimepicker .xdsoft_datepicker, .xdsoft_datetimepicker .xdsoft_timepicker {
|
62
|
+
display: none;
|
63
|
+
}
|
64
|
+
|
65
|
+
.xdsoft_datetimepicker .xdsoft_datepicker.active, .xdsoft_datetimepicker .xdsoft_timepicker.active {
|
66
|
+
display: block;
|
67
|
+
}
|
68
|
+
|
69
|
+
.xdsoft_datetimepicker .xdsoft_datepicker {
|
70
|
+
width: 224px;
|
71
|
+
float: left;
|
72
|
+
margin-left: 8px;
|
73
|
+
}
|
74
|
+
|
75
|
+
.xdsoft_datetimepicker.xdsoft_showweeks .xdsoft_datepicker {
|
76
|
+
width: 256px;
|
77
|
+
}
|
78
|
+
|
79
|
+
.xdsoft_datetimepicker .xdsoft_timepicker {
|
80
|
+
width: 58px;
|
81
|
+
float: left;
|
82
|
+
text-align: center;
|
83
|
+
margin-left: 8px;
|
84
|
+
margin-top: 0;
|
85
|
+
}
|
86
|
+
|
87
|
+
.xdsoft_datetimepicker .xdsoft_datepicker.active+.xdsoft_timepicker {
|
88
|
+
margin-top: 8px;
|
89
|
+
margin-bottom: 3px
|
90
|
+
}
|
91
|
+
|
92
|
+
.xdsoft_datetimepicker .xdsoft_mounthpicker {
|
93
|
+
position: relative;
|
94
|
+
text-align: center;
|
95
|
+
}
|
96
|
+
|
97
|
+
.xdsoft_datetimepicker .xdsoft_label i,
|
98
|
+
.xdsoft_datetimepicker .xdsoft_prev,
|
99
|
+
.xdsoft_datetimepicker .xdsoft_next,
|
100
|
+
.xdsoft_datetimepicker .xdsoft_today_button {
|
101
|
+
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAAAeCAYAAADaW7vzAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6Q0NBRjI1NjM0M0UwMTFFNDk4NkFGMzJFQkQzQjEwRUIiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6Q0NBRjI1NjQ0M0UwMTFFNDk4NkFGMzJFQkQzQjEwRUIiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpDQ0FGMjU2MTQzRTAxMUU0OTg2QUYzMkVCRDNCMTBFQiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpDQ0FGMjU2MjQzRTAxMUU0OTg2QUYzMkVCRDNCMTBFQiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PoNEP54AAAIOSURBVHja7Jq9TsMwEMcxrZD4WpBYeKUCe+kTMCACHZh4BFfHO/AAIHZGFhYkBBsSEqxsLCAgXKhbXYOTxh9pfJVP+qutnZ5s/5Lz2Y5I03QhWji2GIcgAokWgfCxNvcOCCGKqiSqhUp0laHOne05vdEyGMfkdxJDVjgwDlEQgYQBgx+ULJaWSXXS6r/ER5FBVR8VfGftTKcITNs+a1XpcFoExREIDF14AVIFxgQUS+h520cdud6wNkC0UBw6BCO/HoCYwBhD8QCkQ/x1mwDyD4plh4D6DDV0TAGyo4HcawLIBBSLDkHeH0Mg2yVP3l4TQMZQDDsEOl/MgHQqhMNuE0D+oBh0CIr8MAKyazBH9WyBuKxDWgbXfjNf32TZ1KWm/Ap1oSk/R53UtQ5xTh3LUlMmT8gt6g51Q9p+SobxgJQ/qmsfZhWywGFSl0yBjCLJCMgXail3b7+rumdVJ2YRss4cN+r6qAHDkPWjPjdJCF4n9RmAD/V9A/Wp4NQassDjwlB6XBiCxcJQWmZZb8THFilfy/lfrTvLghq2TqTHrRMTKNJ0sIhdo15RT+RpyWwFdY96UZ/LdQKBGjcXpcc1AlSFEfLmouD+1knuxBDUVrvOBmoOC/rEcN7OQxKVeJTCiAdUzUJhA2Oez9QTkp72OTVcxDcXY8iKNkxGAJXmJCOQwOa6dhyXsOa6XwEGAKdeb5ET3rQdAAAAAElFTkSuQmCC);
|
102
|
+
}
|
103
|
+
|
104
|
+
.xdsoft_datetimepicker .xdsoft_label i {
|
105
|
+
opacity: 0.5;
|
106
|
+
background-position: -92px -19px;
|
107
|
+
display: inline-block;
|
108
|
+
width: 9px;
|
109
|
+
height: 20px;
|
110
|
+
vertical-align: middle;
|
111
|
+
}
|
112
|
+
|
113
|
+
.xdsoft_datetimepicker .xdsoft_prev {
|
114
|
+
float: left;
|
115
|
+
background-position: -20px 0;
|
116
|
+
}
|
117
|
+
.xdsoft_datetimepicker .xdsoft_today_button {
|
118
|
+
float: left;
|
119
|
+
background-position: -70px 0;
|
120
|
+
margin-left: 5px;
|
121
|
+
}
|
122
|
+
|
123
|
+
.xdsoft_datetimepicker .xdsoft_next {
|
124
|
+
float: right;
|
125
|
+
background-position: 0 0;
|
126
|
+
}
|
127
|
+
|
128
|
+
.xdsoft_datetimepicker .xdsoft_next,
|
129
|
+
.xdsoft_datetimepicker .xdsoft_prev ,
|
130
|
+
.xdsoft_datetimepicker .xdsoft_today_button {
|
131
|
+
background-color: transparent;
|
132
|
+
background-repeat: no-repeat;
|
133
|
+
border: 0 none;
|
134
|
+
cursor: pointer;
|
135
|
+
display: block;
|
136
|
+
height: 30px;
|
137
|
+
opacity: 0.5;
|
138
|
+
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
|
139
|
+
outline: medium none;
|
140
|
+
overflow: hidden;
|
141
|
+
padding: 0;
|
142
|
+
position: relative;
|
143
|
+
text-indent: 100%;
|
144
|
+
white-space: nowrap;
|
145
|
+
width: 20px;
|
146
|
+
min-width: 0;
|
147
|
+
}
|
148
|
+
|
149
|
+
.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_prev,
|
150
|
+
.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_next {
|
151
|
+
float: none;
|
152
|
+
background-position: -40px -15px;
|
153
|
+
height: 15px;
|
154
|
+
width: 30px;
|
155
|
+
display: block;
|
156
|
+
margin-left: 14px;
|
157
|
+
margin-top: 7px;
|
158
|
+
}
|
159
|
+
|
160
|
+
.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_prev {
|
161
|
+
background-position: -40px 0;
|
162
|
+
margin-bottom: 7px;
|
163
|
+
margin-top: 0;
|
164
|
+
}
|
165
|
+
|
166
|
+
.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box {
|
167
|
+
height: 151px;
|
168
|
+
overflow: hidden;
|
169
|
+
border-bottom: 1px solid #ddd;
|
170
|
+
}
|
171
|
+
|
172
|
+
.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box >div >div {
|
173
|
+
background: #f5f5f5;
|
174
|
+
border-top: 1px solid #ddd;
|
175
|
+
color: #666;
|
176
|
+
font-size: 12px;
|
177
|
+
text-align: center;
|
178
|
+
border-collapse: collapse;
|
179
|
+
cursor: pointer;
|
180
|
+
border-bottom-width: 0;
|
181
|
+
height: 25px;
|
182
|
+
line-height: 25px;
|
183
|
+
}
|
184
|
+
|
185
|
+
.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box >div > div:first-child {
|
186
|
+
border-top-width: 0;
|
187
|
+
}
|
188
|
+
|
189
|
+
.xdsoft_datetimepicker .xdsoft_today_button:hover,
|
190
|
+
.xdsoft_datetimepicker .xdsoft_next:hover,
|
191
|
+
.xdsoft_datetimepicker .xdsoft_prev:hover {
|
192
|
+
opacity: 1;
|
193
|
+
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
|
194
|
+
}
|
195
|
+
|
196
|
+
.xdsoft_datetimepicker .xdsoft_label {
|
197
|
+
display: inline;
|
198
|
+
position: relative;
|
199
|
+
z-index: 9999;
|
200
|
+
margin: 0;
|
201
|
+
padding: 5px 3px;
|
202
|
+
font-size: 14px;
|
203
|
+
line-height: 20px;
|
204
|
+
font-weight: bold;
|
205
|
+
background-color: #fff;
|
206
|
+
float: left;
|
207
|
+
width: 182px;
|
208
|
+
text-align: center;
|
209
|
+
cursor: pointer;
|
210
|
+
}
|
211
|
+
|
212
|
+
.xdsoft_datetimepicker .xdsoft_label:hover>span {
|
213
|
+
text-decoration: underline;
|
214
|
+
}
|
215
|
+
|
216
|
+
.xdsoft_datetimepicker .xdsoft_label:hover i {
|
217
|
+
opacity: 1.0;
|
218
|
+
}
|
219
|
+
|
220
|
+
.xdsoft_datetimepicker .xdsoft_label > .xdsoft_select {
|
221
|
+
border: 1px solid #ccc;
|
222
|
+
position: absolute;
|
223
|
+
right: 0;
|
224
|
+
top: 30px;
|
225
|
+
z-index: 101;
|
226
|
+
display: none;
|
227
|
+
background: #fff;
|
228
|
+
max-height: 160px;
|
229
|
+
overflow-y: hidden;
|
230
|
+
}
|
231
|
+
|
232
|
+
.xdsoft_datetimepicker .xdsoft_label > .xdsoft_select.xdsoft_monthselect{ right: -7px }
|
233
|
+
.xdsoft_datetimepicker .xdsoft_label > .xdsoft_select.xdsoft_yearselect{ right: 2px }
|
234
|
+
.xdsoft_datetimepicker .xdsoft_label > .xdsoft_select > div > .xdsoft_option:hover {
|
235
|
+
color: #fff;
|
236
|
+
background: #ff8000;
|
237
|
+
}
|
238
|
+
|
239
|
+
.xdsoft_datetimepicker .xdsoft_label > .xdsoft_select > div > .xdsoft_option {
|
240
|
+
padding: 2px 10px 2px 5px;
|
241
|
+
text-decoration: none !important;
|
242
|
+
}
|
243
|
+
|
244
|
+
.xdsoft_datetimepicker .xdsoft_label > .xdsoft_select > div > .xdsoft_option.xdsoft_current {
|
245
|
+
background: #33aaff;
|
246
|
+
box-shadow: #178fe5 0 1px 3px 0 inset;
|
247
|
+
color: #fff;
|
248
|
+
font-weight: 700;
|
249
|
+
}
|
250
|
+
|
251
|
+
.xdsoft_datetimepicker .xdsoft_month {
|
252
|
+
width: 100px;
|
253
|
+
text-align: right;
|
254
|
+
}
|
255
|
+
|
256
|
+
.xdsoft_datetimepicker .xdsoft_calendar {
|
257
|
+
clear: both;
|
258
|
+
}
|
259
|
+
|
260
|
+
.xdsoft_datetimepicker .xdsoft_year{
|
261
|
+
width: 48px;
|
262
|
+
margin-left: 5px;
|
263
|
+
}
|
264
|
+
|
265
|
+
.xdsoft_datetimepicker .xdsoft_calendar table {
|
266
|
+
border-collapse: collapse;
|
267
|
+
width: 100%;
|
268
|
+
|
269
|
+
}
|
270
|
+
|
271
|
+
.xdsoft_datetimepicker .xdsoft_calendar td > div {
|
272
|
+
padding-right: 5px;
|
273
|
+
}
|
274
|
+
|
275
|
+
.xdsoft_datetimepicker .xdsoft_calendar th {
|
276
|
+
height: 25px;
|
277
|
+
}
|
278
|
+
|
279
|
+
.xdsoft_datetimepicker .xdsoft_calendar td,.xdsoft_datetimepicker .xdsoft_calendar th {
|
280
|
+
width: 14.2857142%;
|
281
|
+
background: #f5f5f5;
|
282
|
+
border: 1px solid #ddd;
|
283
|
+
color: #666;
|
284
|
+
font-size: 12px;
|
285
|
+
text-align: right;
|
286
|
+
vertical-align: middle;
|
287
|
+
padding: 0;
|
288
|
+
border-collapse: collapse;
|
289
|
+
cursor: pointer;
|
290
|
+
height: 25px;
|
291
|
+
}
|
292
|
+
.xdsoft_datetimepicker.xdsoft_showweeks .xdsoft_calendar td,.xdsoft_datetimepicker.xdsoft_showweeks .xdsoft_calendar th {
|
293
|
+
width: 12.5%;
|
294
|
+
}
|
295
|
+
|
296
|
+
.xdsoft_datetimepicker .xdsoft_calendar th {
|
297
|
+
background: #f1f1f1;
|
298
|
+
}
|
299
|
+
|
300
|
+
.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_today {
|
301
|
+
color: #33aaff;
|
302
|
+
}
|
303
|
+
|
304
|
+
.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_default,
|
305
|
+
.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_current,
|
306
|
+
.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box >div >div.xdsoft_current {
|
307
|
+
background: #33aaff;
|
308
|
+
box-shadow: #178fe5 0 1px 3px 0 inset;
|
309
|
+
color: #fff;
|
310
|
+
font-weight: 700;
|
311
|
+
}
|
312
|
+
|
313
|
+
.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_other_month,
|
314
|
+
.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_disabled,
|
315
|
+
.xdsoft_datetimepicker .xdsoft_time_box >div >div.xdsoft_disabled {
|
316
|
+
opacity: 0.5;
|
317
|
+
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
|
318
|
+
cursor: default;
|
319
|
+
}
|
320
|
+
|
321
|
+
.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_other_month.xdsoft_disabled {
|
322
|
+
opacity: 0.2;
|
323
|
+
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=20)";
|
324
|
+
}
|
325
|
+
|
326
|
+
.xdsoft_datetimepicker .xdsoft_calendar td:hover,
|
327
|
+
.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box >div >div:hover {
|
328
|
+
color: #fff !important;
|
329
|
+
background: #ff8000 !important;
|
330
|
+
box-shadow: none !important;
|
331
|
+
}
|
332
|
+
|
333
|
+
.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_current.xdsoft_disabled:hover,
|
334
|
+
.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box>div>div.xdsoft_current.xdsoft_disabled:hover {
|
335
|
+
background: #33aaff !important;
|
336
|
+
box-shadow: #178fe5 0 1px 3px 0 inset !important;
|
337
|
+
color: #fff !important;
|
338
|
+
}
|
339
|
+
|
340
|
+
.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_disabled:hover,
|
341
|
+
.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box >div >div.xdsoft_disabled:hover {
|
342
|
+
color: inherit !important;
|
343
|
+
background: inherit !important;
|
344
|
+
box-shadow: inherit !important;
|
345
|
+
}
|
346
|
+
|
347
|
+
.xdsoft_datetimepicker .xdsoft_calendar th {
|
348
|
+
font-weight: 700;
|
349
|
+
text-align: center;
|
350
|
+
color: #999;
|
351
|
+
cursor: default;
|
352
|
+
}
|
353
|
+
|
354
|
+
.xdsoft_datetimepicker .xdsoft_copyright {
|
355
|
+
color: #ccc !important;
|
356
|
+
font-size: 10px;
|
357
|
+
clear: both;
|
358
|
+
float: none;
|
359
|
+
margin-left: 8px;
|
360
|
+
}
|
361
|
+
|
362
|
+
.xdsoft_datetimepicker .xdsoft_copyright a { color: #eee !important }
|
363
|
+
.xdsoft_datetimepicker .xdsoft_copyright a:hover { color: #aaa !important }
|
364
|
+
|
365
|
+
.xdsoft_time_box {
|
366
|
+
position: relative;
|
367
|
+
border: 1px solid #ccc;
|
368
|
+
}
|
369
|
+
.xdsoft_scrollbar >.xdsoft_scroller {
|
370
|
+
background: #ccc !important;
|
371
|
+
height: 20px;
|
372
|
+
border-radius: 3px;
|
373
|
+
}
|
374
|
+
.xdsoft_scrollbar {
|
375
|
+
position: absolute;
|
376
|
+
width: 7px;
|
377
|
+
right: 0;
|
378
|
+
top: 0;
|
379
|
+
bottom: 0;
|
380
|
+
cursor: pointer;
|
381
|
+
}
|
382
|
+
.xdsoft_scroller_box {
|
383
|
+
position: relative;
|
384
|
+
}
|
385
|
+
|
386
|
+
.xdsoft_datetimepicker.xdsoft_dark {
|
387
|
+
box-shadow: 0 5px 15px -5px rgba(255, 255, 255, 0.506);
|
388
|
+
background: #000;
|
389
|
+
border-bottom: 1px solid #444;
|
390
|
+
border-left: 1px solid #333;
|
391
|
+
border-right: 1px solid #333;
|
392
|
+
border-top: 1px solid #333;
|
393
|
+
color: #ccc;
|
394
|
+
}
|
395
|
+
|
396
|
+
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_timepicker .xdsoft_time_box {
|
397
|
+
border-bottom: 1px solid #222;
|
398
|
+
}
|
399
|
+
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_timepicker .xdsoft_time_box >div >div {
|
400
|
+
background: #0a0a0a;
|
401
|
+
border-top: 1px solid #222;
|
402
|
+
color: #999;
|
403
|
+
}
|
404
|
+
|
405
|
+
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_label {
|
406
|
+
background-color: #000;
|
407
|
+
}
|
408
|
+
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_label > .xdsoft_select {
|
409
|
+
border: 1px solid #333;
|
410
|
+
background: #000;
|
411
|
+
}
|
412
|
+
|
413
|
+
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_label > .xdsoft_select > div > .xdsoft_option:hover {
|
414
|
+
color: #000;
|
415
|
+
background: #007fff;
|
416
|
+
}
|
417
|
+
|
418
|
+
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_label > .xdsoft_select > div > .xdsoft_option.xdsoft_current {
|
419
|
+
background: #cc5500;
|
420
|
+
box-shadow: #b03e00 0 1px 3px 0 inset;
|
421
|
+
color: #000;
|
422
|
+
}
|
423
|
+
|
424
|
+
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_label i,
|
425
|
+
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_prev,
|
426
|
+
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_next,
|
427
|
+
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_today_button {
|
428
|
+
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAAAeCAYAAADaW7vzAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6QUExQUUzOTA0M0UyMTFFNDlBM0FFQTJENTExRDVBODYiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6QUExQUUzOTE0M0UyMTFFNDlBM0FFQTJENTExRDVBODYiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpBQTFBRTM4RTQzRTIxMUU0OUEzQUVBMkQ1MTFENUE4NiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpBQTFBRTM4RjQzRTIxMUU0OUEzQUVBMkQ1MTFENUE4NiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pp0VxGEAAAIASURBVHja7JrNSgMxEMebtgh+3MSLr1T1Xn2CHoSKB08+QmR8Bx9A8e7RixdB9CKCoNdexIugxFlJa7rNZneTbLIpM/CnNLsdMvNjM8l0mRCiQ9Ye61IKCAgZAUnH+mU3MMZaHYChBnJUDzWOFZdVfc5+ZFLbrWDeXPwbxIqrLLfaeS0hEBVGIRQCEiZoHQwtlGSByCCdYBl8g8egTTAWoKQMRBRBcZxYlhzhKegqMOageErsCHVkk3hXIFooDgHB1KkHIHVgzKB4ADJQ/A1jAFmAYhkQqA5TOBtocrKrgXwQA8gcFIuAIO8sQSA7hidvPwaQGZSaAYHOUWJABhWWw2EMIH9QagQERU4SArJXo0ZZL18uvaxejXt/Em8xjVBXmvFr1KVm/AJ10tRe2XnraNqaJvKE3KHuUbfK1E+VHB0q40/y3sdQSxY4FHWeKJCunP8UyDdqJZenT3ntVV5jIYCAh20vT7ioP8tpf6E2lfEMwERe+whV1MHjwZB7PBiCxcGQWwKZKD62lfGNnP/1poFAA60T7rF1UgcKd2id3KDeUS+oLWV8DfWAepOfq00CgQabi9zjcgJVYVD7PVzQUAUGAQkbNJTBICDhgwYTjDYD6XeW08ZKh+A4pYkzenOxXUbvZcWz7E8ykRMnIHGX1XPl+1m2vPYpL+2qdb8CDAARlKFEz/ZVkAAAAABJRU5ErkJggg==);
|
429
|
+
}
|
430
|
+
|
431
|
+
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_calendar td,
|
432
|
+
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_calendar th {
|
433
|
+
background: #0a0a0a;
|
434
|
+
border: 1px solid #222;
|
435
|
+
color: #999;
|
436
|
+
}
|
437
|
+
|
438
|
+
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_calendar th {
|
439
|
+
background: #0e0e0e;
|
440
|
+
}
|
441
|
+
|
442
|
+
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_calendar td.xdsoft_today {
|
443
|
+
color: #cc5500;
|
444
|
+
}
|
445
|
+
|
446
|
+
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_calendar td.xdsoft_default,
|
447
|
+
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_calendar td.xdsoft_current,
|
448
|
+
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_timepicker .xdsoft_time_box >div >div.xdsoft_current {
|
449
|
+
background: #cc5500;
|
450
|
+
box-shadow: #b03e00 0 1px 3px 0 inset;
|
451
|
+
color: #000;
|
452
|
+
}
|
453
|
+
|
454
|
+
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_calendar td:hover,
|
455
|
+
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_timepicker .xdsoft_time_box >div >div:hover {
|
456
|
+
color: #000 !important;
|
457
|
+
background: #007fff !important;
|
458
|
+
}
|
459
|
+
|
460
|
+
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_calendar th {
|
461
|
+
color: #666;
|
462
|
+
}
|
463
|
+
|
464
|
+
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_copyright { color: #333 !important }
|
465
|
+
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_copyright a { color: #111 !important }
|
466
|
+
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_copyright a:hover { color: #555 !important }
|
467
|
+
|
468
|
+
.xdsoft_dark .xdsoft_time_box {
|
469
|
+
border: 1px solid #333;
|
470
|
+
}
|
471
|
+
|
472
|
+
.xdsoft_dark .xdsoft_scrollbar >.xdsoft_scroller {
|
473
|
+
background: #333 !important;
|
474
|
+
}
|
475
|
+
.xdsoft_datetimepicker .xdsoft_save_selected {
|
476
|
+
display: block;
|
477
|
+
border: 1px solid #dddddd !important;
|
478
|
+
margin-top: 5px;
|
479
|
+
width: 100%;
|
480
|
+
color: #454551;
|
481
|
+
font-size: 13px;
|
482
|
+
}
|
483
|
+
.xdsoft_datetimepicker .blue-gradient-button {
|
484
|
+
font-family: "museo-sans", "Book Antiqua", sans-serif;
|
485
|
+
font-size: 12px;
|
486
|
+
font-weight: 300;
|
487
|
+
color: #82878c;
|
488
|
+
height: 28px;
|
489
|
+
position: relative;
|
490
|
+
padding: 4px 17px 4px 33px;
|
491
|
+
border: 1px solid #d7d8da;
|
492
|
+
background: -moz-linear-gradient(top, #fff 0%, #f4f8fa 73%);
|
493
|
+
/* FF3.6+ */
|
494
|
+
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #fff), color-stop(73%, #f4f8fa));
|
495
|
+
/* Chrome,Safari4+ */
|
496
|
+
background: -webkit-linear-gradient(top, #fff 0%, #f4f8fa 73%);
|
497
|
+
/* Chrome10+,Safari5.1+ */
|
498
|
+
background: -o-linear-gradient(top, #fff 0%, #f4f8fa 73%);
|
499
|
+
/* Opera 11.10+ */
|
500
|
+
background: -ms-linear-gradient(top, #fff 0%, #f4f8fa 73%);
|
501
|
+
/* IE10+ */
|
502
|
+
background: linear-gradient(to bottom, #fff 0%, #f4f8fa 73%);
|
503
|
+
/* W3C */
|
504
|
+
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fff', endColorstr='#f4f8fa',GradientType=0 );
|
505
|
+
/* IE6-9 */
|
506
|
+
}
|
507
|
+
.xdsoft_datetimepicker .blue-gradient-button:hover, .xdsoft_datetimepicker .blue-gradient-button:focus, .xdsoft_datetimepicker .blue-gradient-button:hover span, .xdsoft_datetimepicker .blue-gradient-button:focus span {
|
508
|
+
color: #454551;
|
509
|
+
background: -moz-linear-gradient(top, #f4f8fa 0%, #FFF 73%);
|
510
|
+
/* FF3.6+ */
|
511
|
+
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #f4f8fa), color-stop(73%, #FFF));
|
512
|
+
/* Chrome,Safari4+ */
|
513
|
+
background: -webkit-linear-gradient(top, #f4f8fa 0%, #FFF 73%);
|
514
|
+
/* Chrome10+,Safari5.1+ */
|
515
|
+
background: -o-linear-gradient(top, #f4f8fa 0%, #FFF 73%);
|
516
|
+
/* Opera 11.10+ */
|
517
|
+
background: -ms-linear-gradient(top, #f4f8fa 0%, #FFF 73%);
|
518
|
+
/* IE10+ */
|
519
|
+
background: linear-gradient(to bottom, #f4f8fa 0%, #FFF 73%);
|
520
|
+
/* W3C */
|
521
|
+
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f4f8fa', endColorstr='#FFF',GradientType=0 );
|
522
|
+
/* IE6-9 */
|
523
|
+
}
|