Make the datepicker preview mode show pretty dates

Improve styles of preview form controls
This commit is contained in:
Samuel Georges 2016-04-26 06:59:02 +10:00
parent 2f81d2fe0b
commit d3efc1af4c
9 changed files with 78 additions and 40 deletions

View File

@ -99,6 +99,20 @@ class DatePicker extends FormWidgetBase
}
}
/*
* Display alias, used by preview mode
*/
if ($this->mode == 'time') {
$formatAlias = 'time';
}
elseif ($this->mode == 'date') {
$formatAlias = 'dateLong';
}
else {
$formatAlias = 'dateTimeLong';
}
$this->vars['formatAlias'] = $formatAlias;
$this->vars['value'] = $value ?: '';
$this->vars['field'] = $this->formField;
$this->vars['mode'] = $this->mode;

View File

@ -1,5 +1,8 @@
<?php if ($this->previewMode): ?>
<div class="form-control"><?= $value ?></div>
<div class="form-control"><?= Backend::dateTime($value, [
'defaultValue' => $value,
'formatAlias' => $formatAlias
]) ?></div>
<?php else: ?>
<div

View File

@ -84,10 +84,22 @@ class Backend
/**
* Returns the HTML for a date formatted in the backend.
* Supported for formatAlias:
* time -> 6:28 AM
* timeLong -> 6:28:01 AM
* date -> 04/23/2016
* dateMin -> 4/23/2016
* dateLong -> April 23, 2016
* dateLongMin -> Apr 23, 2016
* dateTime -> April 23, 2016 6:28 AM
* dateTimeMin -> Apr 23, 2016 6:28 AM
* dateTimeLong -> Saturday, April 23, 2016 6:28 AM
* dateTimeLongMin -> Sat, Apr 23, 2016 6:29 AM
*/
public function dateTime($dateTime, $value = '', $options = [])
public function dateTime($dateTime, $options = [])
{
extract(array_merge([
'defaultValue' => '',
'format' => null,
'formatAlias' => null,
'jsFormat' => null,
@ -122,7 +134,7 @@ class Backend
$attributes['data-format-alias'] = $formatAlias;
}
return '<time'.Html::attributes($attributes).'>'.e($value).'</time>'.PHP_EOL;
return '<time'.Html::attributes($attributes).'>'.e($defaultValue).'</time>'.PHP_EOL;
}
}

View File

@ -922,7 +922,8 @@ class Lists extends WidgetBase
$value = $dateTime->toDayDateTimeString();
}
return Backend::dateTime($dateTime, $value, [
return Backend::dateTime($dateTime, [
'defaultValue' => $value,
'format' => $column->format,
'formatAlias' => 'dateTimeLongMin'
]);
@ -943,7 +944,8 @@ class Lists extends WidgetBase
$value = $dateTime->format($format);
return Backend::dateTime($dateTime, $value, [
return Backend::dateTime($dateTime, [
'defaultValue' => $value,
'format' => $column->format,
'formatAlias' => 'time'
]);
@ -967,7 +969,8 @@ class Lists extends WidgetBase
$value = $dateTime->toFormattedDateString();
}
return Backend::dateTime($dateTime, $value, [
return Backend::dateTime($dateTime, [
'defaultValue' => $value,
'format' => $column->format,
'formatAlias' => 'dateLongMin'
]);
@ -986,7 +989,8 @@ class Lists extends WidgetBase
$value = DateTimeHelper::timeSince($dateTime);
return Backend::dateTime($dateTime, $value, [
return Backend::dateTime($dateTime, [
'defaultValue' => $value,
'timeSince' => true
]);
}
@ -1004,7 +1008,8 @@ class Lists extends WidgetBase
$value = DateTimeHelper::timeTense($dateTime);
return Backend::dateTime($dateTime, $value, [
return Backend::dateTime($dateTime, [
'defaultValue' => $value,
'timeTense' => true
]);
}

View File

@ -168,9 +168,12 @@
.form-group-preview {
.form-control {
background-color: @color-form-field-preview;
background-color: @color-form-field-preview-bg;
color: @color-form-field-preview-text;
height: auto;
min-height: 38px;
border-color: #eee;
.box-shadow(none);
}
.custom-checkbox,

View File

@ -39,7 +39,8 @@
@color-form-field-border-focus: @input-border-focus;
@color-form-required-asterisk: #C20A0A;
@color-form-sidebar: #ecf0f1;
@color-form-field-preview: #f6f6f6;
@color-form-field-preview-bg: #f6f6f6;
@color-form-field-preview-text: #555555;
@color-form-field-bg: #ffffff;
@color-form-field-icon: #bdbdbd;
@color-help-block-text: #777777;

View File

@ -215,7 +215,6 @@
// Master tabs
//
&.master, // Deprecated
&.master-tabs {
> ul.nav-tabs, > div > ul.nav-tabs, > div > div > ul.nav-tabs {
> li {
@ -238,7 +237,6 @@
// Primary tabs
//
&.primary, // Deprecated
&.primary-tabs {
margin-bottom: 5px;
@ -293,7 +291,7 @@
display: block;
border-top: 2px solid @color-tab-border;
position: absolute;
background: @body-bg;
background: transparent;
top: 0;
z-index: -1;
width: 20px;
@ -372,7 +370,6 @@
// Secondary tabs
//
&.secondary, // Deprecated
&.secondary-tabs {
> ul.nav-tabs, > div > ul.nav-tabs, > div > div > ul.nav-tabs {
> li {

View File

@ -1485,31 +1485,31 @@ to{background-position:0 0}
.control-tabs[data-closable] > ul.nav-tabs > li.active span.close,.control-tabs[data-closable] > div > ul.nav-tabs > li.active span.close,.control-tabs[data-closable] > div > div > ul.nav-tabs > li.active span.close{color:rgba(0,0,0,0.4)}
.control-tabs[data-closable] > ul.nav-tabs > li[data-modified] span.tab-close i,.control-tabs[data-closable] > div > ul.nav-tabs > li[data-modified] span.tab-close i,.control-tabs[data-closable] > div > div > ul.nav-tabs > li[data-modified] span.tab-close i{top:-4px}
.control-tabs[data-closable] > ul.nav-tabs > li[data-modified] span.tab-close i:before,.control-tabs[data-closable] > div > ul.nav-tabs > li[data-modified] span.tab-close i:before,.control-tabs[data-closable] > div > div > ul.nav-tabs > li[data-modified] span.tab-close i:before{content:"\f111";font-size:9px}
.control-tabs.master > ul.nav-tabs > li a,.control-tabs.master-tabs > ul.nav-tabs > li a,.control-tabs.master > div > ul.nav-tabs > li a,.control-tabs.master-tabs > div > ul.nav-tabs > li a,.control-tabs.master > div > div > ul.nav-tabs > li a,.control-tabs.master-tabs > div > div > ul.nav-tabs > li a{font-size:15px;border-bottom:transparent 4px solid;position:relative;z-index:101;line-height:100%}
.control-tabs.master > ul.nav-tabs > li.active a,.control-tabs.master-tabs > ul.nav-tabs > li.active a,.control-tabs.master > div > ul.nav-tabs > li.active a,.control-tabs.master-tabs > div > ul.nav-tabs > li.active a,.control-tabs.master > div > div > ul.nav-tabs > li.active a,.control-tabs.master-tabs > div > div > ul.nav-tabs > li.active a{border-bottom:#d0d0d0 4px solid}
.control-tabs.primary,.control-tabs.primary-tabs{margin-bottom:5px}
.control-tabs.primary > ul.nav-tabs,.control-tabs.primary-tabs > ul.nav-tabs,.control-tabs.primary > div > ul.nav-tabs,.control-tabs.primary-tabs > div > ul.nav-tabs,.control-tabs.primary > div > div > ul.nav-tabs,.control-tabs.primary-tabs > div > div > ul.nav-tabs{position:relative;margin-left:0;margin-right:0}
.control-tabs.primary > ul.nav-tabs:before,.control-tabs.primary-tabs > ul.nav-tabs:before,.control-tabs.primary > div > ul.nav-tabs:before,.control-tabs.primary-tabs > div > ul.nav-tabs:before,.control-tabs.primary > div > div > ul.nav-tabs:before,.control-tabs.primary-tabs > div > div > ul.nav-tabs:before{position:absolute;bottom:0;height:1px;width:100%;z-index:95;content:' ';border-bottom:2px solid #d0d0d0}
.control-tabs.primary > ul.nav-tabs > li,.control-tabs.primary-tabs > ul.nav-tabs > li,.control-tabs.primary > div > ul.nav-tabs > li,.control-tabs.primary-tabs > div > ul.nav-tabs > li,.control-tabs.primary > div > div > ul.nav-tabs > li,.control-tabs.primary-tabs > div > div > ul.nav-tabs > li{padding-right:0;padding-left:0;margin-left:0;margin-right:-20px;background:transparent}
.control-tabs.primary > ul.nav-tabs > li:first-child,.control-tabs.primary-tabs > ul.nav-tabs > li:first-child,.control-tabs.primary > div > ul.nav-tabs > li:first-child,.control-tabs.primary-tabs > div > ul.nav-tabs > li:first-child,.control-tabs.primary > div > div > ul.nav-tabs > li:first-child,.control-tabs.primary-tabs > div > div > ul.nav-tabs > li:first-child{padding-left:20px !important}
.control-tabs.primary > ul.nav-tabs > li:last-child,.control-tabs.primary-tabs > ul.nav-tabs > li:last-child,.control-tabs.primary > div > ul.nav-tabs > li:last-child,.control-tabs.primary-tabs > div > ul.nav-tabs > li:last-child,.control-tabs.primary > div > div > ul.nav-tabs > li:last-child,.control-tabs.primary-tabs > div > div > ul.nav-tabs > li:last-child{margin-right:0}
.control-tabs.primary > ul.nav-tabs > li a,.control-tabs.primary-tabs > ul.nav-tabs > li a,.control-tabs.primary > div > ul.nav-tabs > li a,.control-tabs.primary-tabs > div > ul.nav-tabs > li a,.control-tabs.primary > div > div > ul.nav-tabs > li a,.control-tabs.primary-tabs > div > div > ul.nav-tabs > li a{font-size:14px;padding-bottom:3px;margin:0;position:relative;z-index:101;background:transparent;overflow:visible}
.control-tabs.primary > ul.nav-tabs > li a > span.title,.control-tabs.primary-tabs > ul.nav-tabs > li a > span.title,.control-tabs.primary > div > ul.nav-tabs > li a > span.title,.control-tabs.primary-tabs > div > ul.nav-tabs > li a > span.title,.control-tabs.primary > div > div > ul.nav-tabs > li a > span.title,.control-tabs.primary-tabs > div > div > ul.nav-tabs > li a > span.title{position:relative;display:inline-block;padding:4px 25px 0px 25px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;z-index:100}
.control-tabs.primary > ul.nav-tabs > li a > span.title:before,.control-tabs.primary-tabs > ul.nav-tabs > li a > span.title:before,.control-tabs.primary > div > ul.nav-tabs > li a > span.title:before,.control-tabs.primary-tabs > div > ul.nav-tabs > li a > span.title:before,.control-tabs.primary > div > div > ul.nav-tabs > li a > span.title:before,.control-tabs.primary-tabs > div > div > ul.nav-tabs > li a > span.title:before,.control-tabs.primary > ul.nav-tabs > li a > span.title:after,.control-tabs.primary-tabs > ul.nav-tabs > li a > span.title:after,.control-tabs.primary > div > ul.nav-tabs > li a > span.title:after,.control-tabs.primary-tabs > div > ul.nav-tabs > li a > span.title:after,.control-tabs.primary > div > div > ul.nav-tabs > li a > span.title:after,.control-tabs.primary-tabs > div > div > ul.nav-tabs > li a > span.title:after{content:'';display:block;border-top:2px solid #e0e0e0;position:absolute;background:#f9f9f9;top:0;z-index:-1;width:20px;bottom:-2px;transform-origin:bottom}
.control-tabs.primary > ul.nav-tabs > li a > span.title:before,.control-tabs.primary-tabs > ul.nav-tabs > li a > span.title:before,.control-tabs.primary > div > ul.nav-tabs > li a > span.title:before,.control-tabs.primary-tabs > div > ul.nav-tabs > li a > span.title:before,.control-tabs.primary > div > div > ul.nav-tabs > li a > span.title:before,.control-tabs.primary-tabs > div > div > ul.nav-tabs > li a > span.title:before{left:0;border-left:2px solid #e0e0e0;-webkit-border-radius:8px 0 0 0;-moz-border-radius:8px 0 0 0;border-radius:8px 0 0 0;-webkit-transform:skewX(-20deg);-ms-transform:skewX(-20deg);transform:skewX(-20deg)}
.control-tabs.primary > ul.nav-tabs > li a > span.title:after,.control-tabs.primary-tabs > ul.nav-tabs > li a > span.title:after,.control-tabs.primary > div > ul.nav-tabs > li a > span.title:after,.control-tabs.primary-tabs > div > ul.nav-tabs > li a > span.title:after,.control-tabs.primary > div > div > ul.nav-tabs > li a > span.title:after,.control-tabs.primary-tabs > div > div > ul.nav-tabs > li a > span.title:after{right:0;border-right:2px solid #e0e0e0;-webkit-border-radius:0 8px 0 0;-moz-border-radius:0 8px 0 0;border-radius:0 8px 0 0;-webkit-transform:skewX(20deg);-ms-transform:skewX(20deg);transform:skewX(20deg)}
.control-tabs.primary > ul.nav-tabs > li:last-child,.control-tabs.primary-tabs > ul.nav-tabs > li:last-child,.control-tabs.primary > div > ul.nav-tabs > li:last-child,.control-tabs.primary-tabs > div > ul.nav-tabs > li:last-child,.control-tabs.primary > div > div > ul.nav-tabs > li:last-child,.control-tabs.primary-tabs > div > div > ul.nav-tabs > li:last-child{background-image:none;margin-right:0;padding-right:5px}
.control-tabs.primary > ul.nav-tabs > li:first-child,.control-tabs.primary-tabs > ul.nav-tabs > li:first-child,.control-tabs.primary > div > ul.nav-tabs > li:first-child,.control-tabs.primary-tabs > div > ul.nav-tabs > li:first-child,.control-tabs.primary > div > div > ul.nav-tabs > li:first-child,.control-tabs.primary-tabs > div > div > ul.nav-tabs > li:first-child{padding-left:0}
.control-tabs.primary > ul.nav-tabs > li.active a,.control-tabs.primary-tabs > ul.nav-tabs > li.active a,.control-tabs.primary > div > ul.nav-tabs > li.active a,.control-tabs.primary-tabs > div > ul.nav-tabs > li.active a,.control-tabs.primary > div > div > ul.nav-tabs > li.active a,.control-tabs.primary-tabs > div > div > ul.nav-tabs > li.active a{z-index:107}
.control-tabs.primary > ul.nav-tabs > li.active a > span.title,.control-tabs.primary-tabs > ul.nav-tabs > li.active a > span.title,.control-tabs.primary > div > ul.nav-tabs > li.active a > span.title,.control-tabs.primary-tabs > div > ul.nav-tabs > li.active a > span.title,.control-tabs.primary > div > div > ul.nav-tabs > li.active a > span.title,.control-tabs.primary-tabs > div > div > ul.nav-tabs > li.active a > span.title{z-index:105;border-top-color:#d6d6d6}
.control-tabs.primary > ul.nav-tabs > li.active a > span.title:before,.control-tabs.primary-tabs > ul.nav-tabs > li.active a > span.title:before,.control-tabs.primary > div > ul.nav-tabs > li.active a > span.title:before,.control-tabs.primary-tabs > div > ul.nav-tabs > li.active a > span.title:before,.control-tabs.primary > div > div > ul.nav-tabs > li.active a > span.title:before,.control-tabs.primary-tabs > div > div > ul.nav-tabs > li.active a > span.title:before,.control-tabs.primary > ul.nav-tabs > li.active a > span.title:after,.control-tabs.primary-tabs > ul.nav-tabs > li.active a > span.title:after,.control-tabs.primary > div > ul.nav-tabs > li.active a > span.title:after,.control-tabs.primary-tabs > div > ul.nav-tabs > li.active a > span.title:after,.control-tabs.primary > div > div > ul.nav-tabs > li.active a > span.title:after,.control-tabs.primary-tabs > div > div > ul.nav-tabs > li.active a > span.title:after{border-color:#d0d0d0}
.control-tabs.primary > ul.nav-tabs > li.active a > span.title span,.control-tabs.primary-tabs > ul.nav-tabs > li.active a > span.title span,.control-tabs.primary > div > ul.nav-tabs > li.active a > span.title span,.control-tabs.primary-tabs > div > ul.nav-tabs > li.active a > span.title span,.control-tabs.primary > div > div > ul.nav-tabs > li.active a > span.title span,.control-tabs.primary-tabs > div > div > ul.nav-tabs > li.active a > span.title span{border-top-color:#d0d0d0}
.control-tabs.primary > ul.nav-tabs > li.active a:before,.control-tabs.primary-tabs > ul.nav-tabs > li.active a:before,.control-tabs.primary > div > ul.nav-tabs > li.active a:before,.control-tabs.primary-tabs > div > ul.nav-tabs > li.active a:before,.control-tabs.primary > div > div > ul.nav-tabs > li.active a:before,.control-tabs.primary-tabs > div > div > ul.nav-tabs > li.active a:before{position:absolute;bottom:0;height:2px;right:2px;left:2px;content:' ';background-color:#f9f9f9}
.control-tabs.primary.tabs-inset > ul.nav-tabs,.control-tabs.primary-tabs.tabs-inset > ul.nav-tabs,.control-tabs.primary.tabs-inset > div > ul.nav-tabs,.control-tabs.primary-tabs.tabs-inset > div > ul.nav-tabs,.control-tabs.primary.tabs-inset > div > div > ul.nav-tabs,.control-tabs.primary-tabs.tabs-inset > div > div > ul.nav-tabs{margin-left:-20px;margin-right:-20px}
.control-tabs.secondary > ul.nav-tabs > li,.control-tabs.secondary-tabs > ul.nav-tabs > li,.control-tabs.secondary > div > ul.nav-tabs > li,.control-tabs.secondary-tabs > div > ul.nav-tabs > li,.control-tabs.secondary > div > div > ul.nav-tabs > li,.control-tabs.secondary-tabs > div > div > ul.nav-tabs > li{padding-right:10px;margin-right:10px;border-right:1px solid #e0e0e0}
.control-tabs.secondary > ul.nav-tabs > li a,.control-tabs.secondary-tabs > ul.nav-tabs > li a,.control-tabs.secondary > div > ul.nav-tabs > li a,.control-tabs.secondary-tabs > div > ul.nav-tabs > li a,.control-tabs.secondary > div > div > ul.nav-tabs > li a,.control-tabs.secondary-tabs > div > div > ul.nav-tabs > li a{font-size:14px;font-weight:bold;padding-bottom:0}
.control-tabs.secondary > ul.nav-tabs > li:last-child,.control-tabs.secondary-tabs > ul.nav-tabs > li:last-child,.control-tabs.secondary > div > ul.nav-tabs > li:last-child,.control-tabs.secondary-tabs > div > ul.nav-tabs > li:last-child,.control-tabs.secondary > div > div > ul.nav-tabs > li:last-child,.control-tabs.secondary-tabs > div > div > ul.nav-tabs > li:last-child{border-right:none;margin-right:0;padding-right:0}
.control-tabs.secondary > div.tab-content > div.tab-pane,.control-tabs.secondary-tabs > div.tab-content > div.tab-pane{padding-top:15px}
.control-tabs.master-tabs > ul.nav-tabs > li a,.control-tabs.master-tabs > div > ul.nav-tabs > li a,.control-tabs.master-tabs > div > div > ul.nav-tabs > li a{font-size:15px;border-bottom:transparent 4px solid;position:relative;z-index:101;line-height:100%}
.control-tabs.master-tabs > ul.nav-tabs > li.active a,.control-tabs.master-tabs > div > ul.nav-tabs > li.active a,.control-tabs.master-tabs > div > div > ul.nav-tabs > li.active a{border-bottom:#d0d0d0 4px solid}
.control-tabs.primary-tabs{margin-bottom:5px}
.control-tabs.primary-tabs > ul.nav-tabs,.control-tabs.primary-tabs > div > ul.nav-tabs,.control-tabs.primary-tabs > div > div > ul.nav-tabs{position:relative;margin-left:0;margin-right:0}
.control-tabs.primary-tabs > ul.nav-tabs:before,.control-tabs.primary-tabs > div > ul.nav-tabs:before,.control-tabs.primary-tabs > div > div > ul.nav-tabs:before{position:absolute;bottom:0;height:1px;width:100%;z-index:95;content:' ';border-bottom:2px solid #d0d0d0}
.control-tabs.primary-tabs > ul.nav-tabs > li,.control-tabs.primary-tabs > div > ul.nav-tabs > li,.control-tabs.primary-tabs > div > div > ul.nav-tabs > li{padding-right:0;padding-left:0;margin-left:0;margin-right:-20px;background:transparent}
.control-tabs.primary-tabs > ul.nav-tabs > li:first-child,.control-tabs.primary-tabs > div > ul.nav-tabs > li:first-child,.control-tabs.primary-tabs > div > div > ul.nav-tabs > li:first-child{padding-left:20px !important}
.control-tabs.primary-tabs > ul.nav-tabs > li:last-child,.control-tabs.primary-tabs > div > ul.nav-tabs > li:last-child,.control-tabs.primary-tabs > div > div > ul.nav-tabs > li:last-child{margin-right:0}
.control-tabs.primary-tabs > ul.nav-tabs > li a,.control-tabs.primary-tabs > div > ul.nav-tabs > li a,.control-tabs.primary-tabs > div > div > ul.nav-tabs > li a{font-size:14px;padding-bottom:3px;margin:0;position:relative;z-index:101;background:transparent;overflow:visible}
.control-tabs.primary-tabs > ul.nav-tabs > li a > span.title,.control-tabs.primary-tabs > div > ul.nav-tabs > li a > span.title,.control-tabs.primary-tabs > div > div > ul.nav-tabs > li a > span.title{position:relative;display:inline-block;padding:4px 25px 0px 25px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;z-index:100}
.control-tabs.primary-tabs > ul.nav-tabs > li a > span.title:before,.control-tabs.primary-tabs > div > ul.nav-tabs > li a > span.title:before,.control-tabs.primary-tabs > div > div > ul.nav-tabs > li a > span.title:before,.control-tabs.primary-tabs > ul.nav-tabs > li a > span.title:after,.control-tabs.primary-tabs > div > ul.nav-tabs > li a > span.title:after,.control-tabs.primary-tabs > div > div > ul.nav-tabs > li a > span.title:after{content:'';display:block;border-top:2px solid #e0e0e0;position:absolute;background:transparent;top:0;z-index:-1;width:20px;bottom:-2px;transform-origin:bottom}
.control-tabs.primary-tabs > ul.nav-tabs > li a > span.title:before,.control-tabs.primary-tabs > div > ul.nav-tabs > li a > span.title:before,.control-tabs.primary-tabs > div > div > ul.nav-tabs > li a > span.title:before{left:0;border-left:2px solid #e0e0e0;-webkit-border-radius:8px 0 0 0;-moz-border-radius:8px 0 0 0;border-radius:8px 0 0 0;-webkit-transform:skewX(-20deg);-ms-transform:skewX(-20deg);transform:skewX(-20deg)}
.control-tabs.primary-tabs > ul.nav-tabs > li a > span.title:after,.control-tabs.primary-tabs > div > ul.nav-tabs > li a > span.title:after,.control-tabs.primary-tabs > div > div > ul.nav-tabs > li a > span.title:after{right:0;border-right:2px solid #e0e0e0;-webkit-border-radius:0 8px 0 0;-moz-border-radius:0 8px 0 0;border-radius:0 8px 0 0;-webkit-transform:skewX(20deg);-ms-transform:skewX(20deg);transform:skewX(20deg)}
.control-tabs.primary-tabs > ul.nav-tabs > li:last-child,.control-tabs.primary-tabs > div > ul.nav-tabs > li:last-child,.control-tabs.primary-tabs > div > div > ul.nav-tabs > li:last-child{background-image:none;margin-right:0;padding-right:5px}
.control-tabs.primary-tabs > ul.nav-tabs > li:first-child,.control-tabs.primary-tabs > div > ul.nav-tabs > li:first-child,.control-tabs.primary-tabs > div > div > ul.nav-tabs > li:first-child{padding-left:0}
.control-tabs.primary-tabs > ul.nav-tabs > li.active a,.control-tabs.primary-tabs > div > ul.nav-tabs > li.active a,.control-tabs.primary-tabs > div > div > ul.nav-tabs > li.active a{z-index:107}
.control-tabs.primary-tabs > ul.nav-tabs > li.active a > span.title,.control-tabs.primary-tabs > div > ul.nav-tabs > li.active a > span.title,.control-tabs.primary-tabs > div > div > ul.nav-tabs > li.active a > span.title{z-index:105;border-top-color:#d6d6d6}
.control-tabs.primary-tabs > ul.nav-tabs > li.active a > span.title:before,.control-tabs.primary-tabs > div > ul.nav-tabs > li.active a > span.title:before,.control-tabs.primary-tabs > div > div > ul.nav-tabs > li.active a > span.title:before,.control-tabs.primary-tabs > ul.nav-tabs > li.active a > span.title:after,.control-tabs.primary-tabs > div > ul.nav-tabs > li.active a > span.title:after,.control-tabs.primary-tabs > div > div > ul.nav-tabs > li.active a > span.title:after{border-color:#d0d0d0}
.control-tabs.primary-tabs > ul.nav-tabs > li.active a > span.title span,.control-tabs.primary-tabs > div > ul.nav-tabs > li.active a > span.title span,.control-tabs.primary-tabs > div > div > ul.nav-tabs > li.active a > span.title span{border-top-color:#d0d0d0}
.control-tabs.primary-tabs > ul.nav-tabs > li.active a:before,.control-tabs.primary-tabs > div > ul.nav-tabs > li.active a:before,.control-tabs.primary-tabs > div > div > ul.nav-tabs > li.active a:before{position:absolute;bottom:0;height:2px;right:2px;left:2px;content:' ';background-color:#f9f9f9}
.control-tabs.primary-tabs.tabs-inset > ul.nav-tabs,.control-tabs.primary-tabs.tabs-inset > div > ul.nav-tabs,.control-tabs.primary-tabs.tabs-inset > div > div > ul.nav-tabs{margin-left:-20px;margin-right:-20px}
.control-tabs.secondary-tabs > ul.nav-tabs > li,.control-tabs.secondary-tabs > div > ul.nav-tabs > li,.control-tabs.secondary-tabs > div > div > ul.nav-tabs > li{padding-right:10px;margin-right:10px;border-right:1px solid #e0e0e0}
.control-tabs.secondary-tabs > ul.nav-tabs > li a,.control-tabs.secondary-tabs > div > ul.nav-tabs > li a,.control-tabs.secondary-tabs > div > div > ul.nav-tabs > li a{font-size:14px;font-weight:bold;padding-bottom:0}
.control-tabs.secondary-tabs > ul.nav-tabs > li:last-child,.control-tabs.secondary-tabs > div > ul.nav-tabs > li:last-child,.control-tabs.secondary-tabs > div > div > ul.nav-tabs > li:last-child{border-right:none;margin-right:0;padding-right:0}
.control-tabs.secondary-tabs > div.tab-content > div.tab-pane{padding-top:15px}
.control-tabs.content-tabs > ul.nav-tabs{position:relative}
.control-tabs.content-tabs > ul.nav-tabs:before{content:' ';position:absolute;bottom:0;left:0;width:100%;height:1px;background:#e3e5e7}
.control-tabs.content-tabs > ul.nav-tabs li{margin-right:0;border-top:1px solid #e3e5e7;border-right:1px solid #e3e5e7}
@ -2372,7 +2372,7 @@ html.cssanimations .cursor-loading-indicator.hide{display:none}
.form-group.input-sidebar-control{padding-right:35px}
.form-group.input-sidebar-control .sidebar-control{position:absolute;right:8px;top:34px;font-size:16px;color:#c4c4c4}
.form-group.input-sidebar-control .sidebar-control:hover,.form-group.input-sidebar-control .sidebar-control:focus{text-decoration:none;color:#0181b9;outline:none}
.form-group-preview .form-control{background-color:#f6f6f6;height:auto;min-height:38px}
.form-group-preview .form-control{background-color:#f6f6f6;color:#555555;height:auto;min-height:38px;border-color:#eee;-webkit-box-shadow:none;box-shadow:none}
.form-group-preview .custom-checkbox label,.form-group-preview .custom-radio label{cursor:default}
.help-block{font-size:13px;margin-bottom:0}
.help-block.before-field{margin-top:0;margin-bottom:17px}

View File

@ -66,6 +66,9 @@ class DateTime
elseif (preg_match('/^(\d{4})-(\d{2})-(\d{2})$/', $value)) {
$value = Carbon::createFromFormat('Y-m-d', $value)->startOfDay();
}
else {
$value = @Carbon::parse($value);
}
if (!$value instanceof Carbon && $throwException) {
throw new InvalidArgumentException('Invalid date value supplied to DateTime helper.');