1 <html><head><title>Roo/bootstrap/form/TimeField.js</title><link rel="stylesheet" type="text/css" href="../../css/highlight-js.css"/></head><body class="highlightpage"><code class="jsdoc-pretty"><span class="jsdoc-comment">/*
9 * @class Roo.bootstrap.form.TimeField
10 * @extends Roo.bootstrap.form.Input
11 * Bootstrap DateField class
12 * @cfg {Number} minuteStep the minutes is always the multiple of a fixed number, default 1
16 * Create a new TimeField
17 * @param {Object} config The config object
20 </span><span class="jsdoc-var">Roo.bootstrap.form.TimeField </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">config</span><span class="jsdoc-syntax">){
21 </span><span class="jsdoc-var">Roo.bootstrap.form.TimeField.superclass.constructor.call</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">config</span><span class="jsdoc-syntax">);
22 </span><span class="jsdoc-var">this.addEvents</span><span class="jsdoc-syntax">({
23 </span><span class="jsdoc-comment">/**
25 * Fires when this field show.
26 * @param {Roo.bootstrap.form.DateField} thisthis
27 * @param {Mixed} date The date value
29 </span><span class="jsdoc-var">show </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
30 </span><span class="jsdoc-comment">/**
32 * Fires when this field hide.
33 * @param {Roo.bootstrap.form.DateField} this
34 * @param {Mixed} date The date value
36 </span><span class="jsdoc-var">hide </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
37 </span><span class="jsdoc-comment">/**
39 * Fires when select a date.
40 * @param {Roo.bootstrap.form.DateField} this
41 * @param {Mixed} date The date value
43 </span><span class="jsdoc-var">select </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true
44 </span><span class="jsdoc-syntax">});
47 </span><span class="jsdoc-var">Roo.extend</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.bootstrap.form.TimeField</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">Roo.bootstrap.form.Input</span><span class="jsdoc-syntax">, {
49 </span><span class="jsdoc-comment">/**
50 * @cfg {String} format
51 * The default time format string which can be overriden for localization support. The format must be
52 * valid according to {@link Date#parseDate} (defaults to 'H:i').
54 </span><span class="jsdoc-var">format </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">"H:i"</span><span class="jsdoc-syntax">,
55 </span><span class="jsdoc-var">minuteStep </span><span class="jsdoc-syntax">: 1,
56 </span><span class="jsdoc-var">language </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'en'</span><span class="jsdoc-syntax">,
57 </span><span class="jsdoc-var">hiddenField </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
58 </span><span class="jsdoc-var">getAutoCreate </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">()
60 </span><span class="jsdoc-var">this.after </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">'<i class="fa far fa-clock"></i>'</span><span class="jsdoc-syntax">;
61 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">Roo.bootstrap.form.TimeField.superclass.getAutoCreate.call</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
65 </span><span class="jsdoc-var">onRender</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">ct</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">position</span><span class="jsdoc-syntax">)
68 </span><span class="jsdoc-var">Roo.bootstrap.form.TimeField.superclass.onRender.call</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">ct</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">position</span><span class="jsdoc-syntax">);
70 </span><span class="jsdoc-var">this.language </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.language </span><span class="jsdoc-keyword">in </span><span class="jsdoc-var">Roo.bootstrap.form.TimeField.periodText </span><span class="jsdoc-syntax">? </span><span class="jsdoc-var">this.language </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">"en"</span><span class="jsdoc-syntax">;
72 </span><span class="jsdoc-var">this.pickerEl </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">document.body</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.createChild</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.bootstrap.form.TimeField.template</span><span class="jsdoc-syntax">);
74 </span><span class="jsdoc-var">this.picker</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.setVisibilityMode</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.Element.DISPLAY</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.originalDisplay </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">'block'</span><span class="jsdoc-syntax">;
76 </span><span class="jsdoc-var">this.pop </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.picker</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'>.datepicker-time'</span><span class="jsdoc-syntax">,</span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">();
77 </span><span class="jsdoc-var">this.pop.setVisibilityMode</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.Element.DISPLAY</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.originalDisplay </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">'block'</span><span class="jsdoc-syntax">;
79 </span><span class="jsdoc-var">this.picker</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'mousedown'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onMousedown</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
80 </span><span class="jsdoc-var">this.picker</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'click'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onClick</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
82 </span><span class="jsdoc-var">this.picker</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.addClass</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'datepicker-dropdown'</span><span class="jsdoc-syntax">);
84 </span><span class="jsdoc-var">this.fillTime</span><span class="jsdoc-syntax">();
85 </span><span class="jsdoc-var">this.update</span><span class="jsdoc-syntax">();
87 </span><span class="jsdoc-var">this.pop.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'.hours-up'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'click'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onIncrementHours</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
88 </span><span class="jsdoc-var">this.pop.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'.hours-down'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'click'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onDecrementHours</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
89 </span><span class="jsdoc-var">this.pop.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'.minutes-up'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'click'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onIncrementMinutes</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
90 </span><span class="jsdoc-var">this.pop.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'.minutes-down'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'click'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onDecrementMinutes</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
91 </span><span class="jsdoc-var">this.pop.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'button.period'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'click'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onTogglePeriod</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
92 </span><span class="jsdoc-var">this.pop.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'button.ok'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'click'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.setTime</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
93 </span><span class="jsdoc-var">this.pop.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'button.ok'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.dom.innerHTML </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.bootstrap.form.TimeField.okText</span><span class="jsdoc-syntax">;
95 </span><span class="jsdoc-var">this.hiddenField </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.inputEl</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.insertSibling</span><span class="jsdoc-syntax">(
96 {</span><span class="jsdoc-var">tag </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'input'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">type </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'hidden'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">name </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.name</span><span class="jsdoc-syntax">},
97 </span><span class="jsdoc-string">'before'</span><span class="jsdoc-syntax">,
98 </span><span class="jsdoc-keyword">true
99 </span><span class="jsdoc-syntax">);
100 </span><span class="jsdoc-var">this.inputEl</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.dom.setAttribute</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'name'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.name </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-string">'____hidden___'</span><span class="jsdoc-syntax">);
104 </span><span class="jsdoc-var">fireKey</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">){
105 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.picker</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.isVisible</span><span class="jsdoc-syntax">()){
106 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e.keyCode </span><span class="jsdoc-syntax">== 27) { </span><span class="jsdoc-comment">// allow escape to hide and re-show picker
107 </span><span class="jsdoc-var">this.show</span><span class="jsdoc-syntax">();
109 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
112 </span><span class="jsdoc-var">e.preventDefault</span><span class="jsdoc-syntax">();
114 </span><span class="jsdoc-keyword">switch</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e.keyCode</span><span class="jsdoc-syntax">){
115 </span><span class="jsdoc-keyword">case </span><span class="jsdoc-syntax">27: </span><span class="jsdoc-comment">// escape
116 </span><span class="jsdoc-var">this.hide</span><span class="jsdoc-syntax">();
117 </span><span class="jsdoc-keyword">break</span><span class="jsdoc-syntax">;
118 </span><span class="jsdoc-keyword">case </span><span class="jsdoc-syntax">37: </span><span class="jsdoc-comment">// left
119 </span><span class="jsdoc-keyword">case </span><span class="jsdoc-syntax">39: </span><span class="jsdoc-comment">// right
120 </span><span class="jsdoc-var">this.onTogglePeriod</span><span class="jsdoc-syntax">();
121 </span><span class="jsdoc-keyword">break</span><span class="jsdoc-syntax">;
122 </span><span class="jsdoc-keyword">case </span><span class="jsdoc-syntax">38: </span><span class="jsdoc-comment">// up
123 </span><span class="jsdoc-var">this.onIncrementMinutes</span><span class="jsdoc-syntax">();
124 </span><span class="jsdoc-keyword">break</span><span class="jsdoc-syntax">;
125 </span><span class="jsdoc-keyword">case </span><span class="jsdoc-syntax">40: </span><span class="jsdoc-comment">// down
126 </span><span class="jsdoc-var">this.onDecrementMinutes</span><span class="jsdoc-syntax">();
127 </span><span class="jsdoc-keyword">break</span><span class="jsdoc-syntax">;
128 </span><span class="jsdoc-keyword">case </span><span class="jsdoc-syntax">13: </span><span class="jsdoc-comment">// enter
129 </span><span class="jsdoc-keyword">case </span><span class="jsdoc-syntax">9: </span><span class="jsdoc-comment">// tab
130 </span><span class="jsdoc-var">this.setTime</span><span class="jsdoc-syntax">();
131 </span><span class="jsdoc-keyword">break</span><span class="jsdoc-syntax">;
135 </span><span class="jsdoc-var">onClick</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">) {
136 </span><span class="jsdoc-var">e.stopPropagation</span><span class="jsdoc-syntax">();
137 </span><span class="jsdoc-var">e.preventDefault</span><span class="jsdoc-syntax">();
140 </span><span class="jsdoc-var">picker </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">()
142 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">this.pickerEl</span><span class="jsdoc-syntax">;
145 </span><span class="jsdoc-var">fillTime</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">()
147 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">time </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.pop.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'tbody'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">();
149 </span><span class="jsdoc-var">time.dom.innerHTML </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">;
151 </span><span class="jsdoc-var">time.createChild</span><span class="jsdoc-syntax">({
152 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'tr'</span><span class="jsdoc-syntax">,
153 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">: [
155 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'td'</span><span class="jsdoc-syntax">,
156 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">: [
158 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'a'</span><span class="jsdoc-syntax">,
159 </span><span class="jsdoc-var">href</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'#'</span><span class="jsdoc-syntax">,
160 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'btn'</span><span class="jsdoc-syntax">,
161 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">: [
163 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'i'</span><span class="jsdoc-syntax">,
164 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'hours-up fa fas fa-chevron-up'
165 </span><span class="jsdoc-syntax">}
171 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'td'</span><span class="jsdoc-syntax">,
172 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'separator'
173 </span><span class="jsdoc-syntax">},
175 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'td'</span><span class="jsdoc-syntax">,
176 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">: [
178 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'a'</span><span class="jsdoc-syntax">,
179 </span><span class="jsdoc-var">href</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'#'</span><span class="jsdoc-syntax">,
180 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'btn'</span><span class="jsdoc-syntax">,
181 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">: [
183 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'i'</span><span class="jsdoc-syntax">,
184 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'minutes-up fa fas fa-chevron-up'
185 </span><span class="jsdoc-syntax">}
191 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'td'</span><span class="jsdoc-syntax">,
192 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'separator'
193 </span><span class="jsdoc-syntax">}
197 </span><span class="jsdoc-var">time.createChild</span><span class="jsdoc-syntax">({
198 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'tr'</span><span class="jsdoc-syntax">,
199 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">: [
201 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'td'</span><span class="jsdoc-syntax">,
202 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">: [
204 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'span'</span><span class="jsdoc-syntax">,
205 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'timepicker-hour'</span><span class="jsdoc-syntax">,
206 </span><span class="jsdoc-var">html</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'00'
207 </span><span class="jsdoc-syntax">}
211 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'td'</span><span class="jsdoc-syntax">,
212 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'separator'</span><span class="jsdoc-syntax">,
213 </span><span class="jsdoc-var">html</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">':'
214 </span><span class="jsdoc-syntax">},
216 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'td'</span><span class="jsdoc-syntax">,
217 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">: [
219 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'span'</span><span class="jsdoc-syntax">,
220 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'timepicker-minute'</span><span class="jsdoc-syntax">,
221 </span><span class="jsdoc-var">html</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'00'
222 </span><span class="jsdoc-syntax">}
226 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'td'</span><span class="jsdoc-syntax">,
227 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'separator'
228 </span><span class="jsdoc-syntax">},
230 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'td'</span><span class="jsdoc-syntax">,
231 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">: [
233 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'button'</span><span class="jsdoc-syntax">,
234 </span><span class="jsdoc-var">type</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'button'</span><span class="jsdoc-syntax">,
235 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'btn btn-primary period'</span><span class="jsdoc-syntax">,
236 </span><span class="jsdoc-var">html</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'AM'
238 </span><span class="jsdoc-syntax">}
244 </span><span class="jsdoc-var">time.createChild</span><span class="jsdoc-syntax">({
245 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'tr'</span><span class="jsdoc-syntax">,
246 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">: [
248 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'td'</span><span class="jsdoc-syntax">,
249 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">: [
251 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'a'</span><span class="jsdoc-syntax">,
252 </span><span class="jsdoc-var">href</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'#'</span><span class="jsdoc-syntax">,
253 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'btn'</span><span class="jsdoc-syntax">,
254 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">: [
256 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'span'</span><span class="jsdoc-syntax">,
257 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'hours-down fa fas fa-chevron-down'
258 </span><span class="jsdoc-syntax">}
264 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'td'</span><span class="jsdoc-syntax">,
265 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'separator'
266 </span><span class="jsdoc-syntax">},
268 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'td'</span><span class="jsdoc-syntax">,
269 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">: [
271 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'a'</span><span class="jsdoc-syntax">,
272 </span><span class="jsdoc-var">href</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'#'</span><span class="jsdoc-syntax">,
273 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'btn'</span><span class="jsdoc-syntax">,
274 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">: [
276 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'span'</span><span class="jsdoc-syntax">,
277 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'minutes-down fa fas fa-chevron-down'
278 </span><span class="jsdoc-syntax">}
284 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'td'</span><span class="jsdoc-syntax">,
285 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'separator'
286 </span><span class="jsdoc-syntax">}
292 </span><span class="jsdoc-var">update</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">()
294 </span><span class="jsdoc-comment">// default minute is a multiple of minuteStep
295 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">typeof</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.time</span><span class="jsdoc-syntax">) === </span><span class="jsdoc-string">'undefined'</span><span class="jsdoc-syntax">) {
296 </span><span class="jsdoc-var">this.time </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Date</span><span class="jsdoc-syntax">();
297 </span><span class="jsdoc-var">this.time </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.time.add</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Date.MINUTE</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">Math.round</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">parseInt</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.time.format</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'i'</span><span class="jsdoc-syntax">)) / </span><span class="jsdoc-var">this.minuteStep</span><span class="jsdoc-syntax">) * </span><span class="jsdoc-var">this.minuteStep </span><span class="jsdoc-syntax">- </span><span class="jsdoc-var">parseInt</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.time.format</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'i'</span><span class="jsdoc-syntax">)));
299 </span><span class="jsdoc-var">this.time </span><span class="jsdoc-syntax">= (</span><span class="jsdoc-keyword">typeof</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.time</span><span class="jsdoc-syntax">) === </span><span class="jsdoc-string">'undefined'</span><span class="jsdoc-syntax">) ? </span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Date</span><span class="jsdoc-syntax">() : </span><span class="jsdoc-var">this.time</span><span class="jsdoc-syntax">;
301 </span><span class="jsdoc-var">this.fill</span><span class="jsdoc-syntax">();
304 </span><span class="jsdoc-var">fill</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">()
306 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">hours </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.time.getHours</span><span class="jsdoc-syntax">();
307 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">minutes </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.time.getMinutes</span><span class="jsdoc-syntax">();
308 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">period </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.bootstrap.form.TimeField.periodText</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">this.language</span><span class="jsdoc-syntax">][</span><span class="jsdoc-string">'am'</span><span class="jsdoc-syntax">];
310 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">hours </span><span class="jsdoc-syntax">> 11){
311 </span><span class="jsdoc-var">period </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.bootstrap.form.TimeField.periodText</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">this.language</span><span class="jsdoc-syntax">][</span><span class="jsdoc-string">'pm'</span><span class="jsdoc-syntax">];
314 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">hours </span><span class="jsdoc-syntax">== 0){
315 </span><span class="jsdoc-var">hours </span><span class="jsdoc-syntax">= 12;
319 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">hours </span><span class="jsdoc-syntax">> 12){
320 </span><span class="jsdoc-var">hours </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">hours </span><span class="jsdoc-syntax">- 12;
323 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">hours </span><span class="jsdoc-syntax">< 10){
324 </span><span class="jsdoc-var">hours </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">'0' </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">hours</span><span class="jsdoc-syntax">;
327 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">minutes </span><span class="jsdoc-syntax">< 10){
328 </span><span class="jsdoc-var">minutes </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">'0' </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">minutes</span><span class="jsdoc-syntax">;
331 </span><span class="jsdoc-var">this.pop.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'.timepicker-hour'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.dom.innerHTML </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">hours</span><span class="jsdoc-syntax">;
332 </span><span class="jsdoc-var">this.pop.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'.timepicker-minute'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.dom.innerHTML </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">minutes</span><span class="jsdoc-syntax">;
333 </span><span class="jsdoc-var">this.pop.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'button'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.dom.innerHTML </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">period</span><span class="jsdoc-syntax">;
337 </span><span class="jsdoc-var">place</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">()
339 </span><span class="jsdoc-var">this.picker</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.removeClass</span><span class="jsdoc-syntax">([</span><span class="jsdoc-string">'bottom-left'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">'bottom-right'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">'top-left'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">'top-right'</span><span class="jsdoc-syntax">]);
341 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">cls </span><span class="jsdoc-syntax">= [</span><span class="jsdoc-string">'bottom'</span><span class="jsdoc-syntax">];
343 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">((</span><span class="jsdoc-var">Roo.lib.Dom.getViewHeight</span><span class="jsdoc-syntax">() + </span><span class="jsdoc-var">Roo.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">document.body</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.getScroll</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.top</span><span class="jsdoc-syntax">) - (</span><span class="jsdoc-var">this.inputEl</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.getBottom</span><span class="jsdoc-syntax">() + </span><span class="jsdoc-var">this.picker</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.getHeight</span><span class="jsdoc-syntax">()) < 0){ </span><span class="jsdoc-comment">// top
344 </span><span class="jsdoc-var">cls.pop</span><span class="jsdoc-syntax">();
345 </span><span class="jsdoc-var">cls.push</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'top'</span><span class="jsdoc-syntax">);
348 </span><span class="jsdoc-var">cls.push</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'right'</span><span class="jsdoc-syntax">);
350 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">((</span><span class="jsdoc-var">Roo.lib.Dom.getViewWidth</span><span class="jsdoc-syntax">() + </span><span class="jsdoc-var">Roo.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">document.body</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.getScroll</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.left</span><span class="jsdoc-syntax">) - (</span><span class="jsdoc-var">this.inputEl</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.getLeft</span><span class="jsdoc-syntax">() + </span><span class="jsdoc-var">this.picker</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.getWidth</span><span class="jsdoc-syntax">()) < 0){ </span><span class="jsdoc-comment">// left
351 </span><span class="jsdoc-var">cls.pop</span><span class="jsdoc-syntax">();
352 </span><span class="jsdoc-var">cls.push</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'left'</span><span class="jsdoc-syntax">);
354 </span><span class="jsdoc-comment">//this.picker().setXY(20000,20000);
355 </span><span class="jsdoc-var">this.picker</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.addClass</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">cls.join</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'-'</span><span class="jsdoc-syntax">));
357 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">_this </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">;
359 </span><span class="jsdoc-var">Roo.each</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">c</span><span class="jsdoc-syntax">){
360 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">c </span><span class="jsdoc-syntax">== </span><span class="jsdoc-string">'bottom'</span><span class="jsdoc-syntax">){
361 (</span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">() {
362 </span><span class="jsdoc-comment">//
363 </span><span class="jsdoc-syntax">})</span><span class="jsdoc-var">.defer</span><span class="jsdoc-syntax">(200);
364 </span><span class="jsdoc-var">_this.picker</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.alignTo</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">_this.inputEl</span><span class="jsdoc-syntax">(), </span><span class="jsdoc-string">"tr-br"</span><span class="jsdoc-syntax">, [0, 10], </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">);
365 </span><span class="jsdoc-comment">//_this.picker().setTop(_this.inputEl().getHeight());
366 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
368 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">c </span><span class="jsdoc-syntax">== </span><span class="jsdoc-string">'top'</span><span class="jsdoc-syntax">){
369 </span><span class="jsdoc-var">_this.picker</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.alignTo</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">_this.inputEl</span><span class="jsdoc-syntax">(), </span><span class="jsdoc-string">"br-tr"</span><span class="jsdoc-syntax">, [0, 10], </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">);
371 </span><span class="jsdoc-comment">//_this.picker().setTop(0 - _this.picker().getHeight());
372 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
374 </span><span class="jsdoc-comment">/*
376 _this.picker().setLeft(_this.inputEl().getLeft() + _this.inputEl().getWidth() - _this.el.getLeft() - _this.picker().getWidth());
380 _this.picker().setLeft(_this.inputEl().getLeft() - _this.el.getLeft());
384 </span><span class="jsdoc-syntax">});
388 </span><span class="jsdoc-var">onFocus </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">()
390 </span><span class="jsdoc-var">Roo.bootstrap.form.TimeField.superclass.onFocus.call</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
391 </span><span class="jsdoc-var">this.show</span><span class="jsdoc-syntax">();
394 </span><span class="jsdoc-var">onBlur </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">()
396 </span><span class="jsdoc-var">Roo.bootstrap.form.TimeField.superclass.onBlur.call</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
397 </span><span class="jsdoc-var">this.hide</span><span class="jsdoc-syntax">();
400 </span><span class="jsdoc-var">show </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">()
402 </span><span class="jsdoc-var">this.picker</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.show</span><span class="jsdoc-syntax">();
403 </span><span class="jsdoc-var">this.pop.show</span><span class="jsdoc-syntax">();
404 </span><span class="jsdoc-var">this.update</span><span class="jsdoc-syntax">();
405 </span><span class="jsdoc-var">this.place</span><span class="jsdoc-syntax">();
407 </span><span class="jsdoc-var">this.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'show'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.time</span><span class="jsdoc-syntax">);
410 </span><span class="jsdoc-var">hide </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">()
412 </span><span class="jsdoc-var">this.picker</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.hide</span><span class="jsdoc-syntax">();
413 </span><span class="jsdoc-var">this.pop.hide</span><span class="jsdoc-syntax">();
415 </span><span class="jsdoc-var">this.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'hide'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.time</span><span class="jsdoc-syntax">);
418 </span><span class="jsdoc-var">setTime </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">()
420 </span><span class="jsdoc-var">this.hide</span><span class="jsdoc-syntax">();
421 </span><span class="jsdoc-var">this.setValue</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.time</span><span class="jsdoc-syntax">);
423 </span><span class="jsdoc-var">this.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'select'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.time</span><span class="jsdoc-syntax">);
428 </span><span class="jsdoc-comment">// return false when it fails
429 </span><span class="jsdoc-var">parseTime </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">value</span><span class="jsdoc-syntax">)
431 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">value</span><span class="jsdoc-syntax">) {
432 </span><span class="jsdoc-keyword">return false</span><span class="jsdoc-syntax">;
434 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">value </span><span class="jsdoc-keyword">instanceof </span><span class="jsdoc-var">Date</span><span class="jsdoc-syntax">){
435 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">value</span><span class="jsdoc-syntax">;
437 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">v </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Date.parseDate</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">value</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">'H:i:s'</span><span class="jsdoc-syntax">);
439 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">typeof</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">v</span><span class="jsdoc-syntax">) == </span><span class="jsdoc-string">'undefined'</span><span class="jsdoc-syntax">) ? </span><span class="jsdoc-keyword">false </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">v</span><span class="jsdoc-syntax">;
442 </span><span class="jsdoc-var">translateTime </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">time</span><span class="jsdoc-syntax">)
444 </span><span class="jsdoc-keyword">switch</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.language</span><span class="jsdoc-syntax">) {
445 </span><span class="jsdoc-keyword">case </span><span class="jsdoc-string">'zh_CN'</span><span class="jsdoc-syntax">:
446 </span><span class="jsdoc-keyword">return new </span><span class="jsdoc-var">Intl.DateTimeFormat</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'zh-CN'</span><span class="jsdoc-syntax">, {
447 </span><span class="jsdoc-var">hour </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'numeric'</span><span class="jsdoc-syntax">,
448 </span><span class="jsdoc-var">minute </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'numeric'</span><span class="jsdoc-syntax">,
449 </span><span class="jsdoc-var">hour12 </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true
450 </span><span class="jsdoc-syntax">})</span><span class="jsdoc-var">.format</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">time</span><span class="jsdoc-syntax">);
451 </span><span class="jsdoc-keyword">default </span><span class="jsdoc-syntax">:
452 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">time.format</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.format</span><span class="jsdoc-syntax">);
456 </span><span class="jsdoc-var">setValue</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">v</span><span class="jsdoc-syntax">)
458 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">t </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.parseTime</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">v</span><span class="jsdoc-syntax">);
460 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">t</span><span class="jsdoc-syntax">) {
461 </span><span class="jsdoc-var">this.time </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.value </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.hiddenField.value </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">;
462 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.rendered</span><span class="jsdoc-syntax">){
463 </span><span class="jsdoc-var">this.inputEl</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.dom.value </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">;
464 </span><span class="jsdoc-var">this.validate</span><span class="jsdoc-syntax">();
466 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
469 </span><span class="jsdoc-var">this.value </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.hiddenField.value </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">t.dateFormat</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'H:i:s'</span><span class="jsdoc-syntax">);
471 </span><span class="jsdoc-var">v </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.translateTime</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">t</span><span class="jsdoc-syntax">);
473 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.rendered</span><span class="jsdoc-syntax">){
474 </span><span class="jsdoc-var">this.inputEl</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.dom.value </span><span class="jsdoc-syntax">= (</span><span class="jsdoc-var">v </span><span class="jsdoc-syntax">=== </span><span class="jsdoc-keyword">null </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">v </span><span class="jsdoc-syntax">=== </span><span class="jsdoc-var">undefined </span><span class="jsdoc-syntax">? </span><span class="jsdoc-string">'' </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">v</span><span class="jsdoc-syntax">);
475 </span><span class="jsdoc-var">this.validate</span><span class="jsdoc-syntax">();
478 </span><span class="jsdoc-var">this.time </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">t</span><span class="jsdoc-syntax">;
480 </span><span class="jsdoc-var">this.update</span><span class="jsdoc-syntax">();
483 </span><span class="jsdoc-var">setRawValue</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">v</span><span class="jsdoc-syntax">)
485 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">t </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.parseTime</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">v</span><span class="jsdoc-syntax">);
487 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">t</span><span class="jsdoc-syntax">) {
488 </span><span class="jsdoc-var">this.time </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.value </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.hiddenField.value </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">;
489 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.rendered</span><span class="jsdoc-syntax">){
490 </span><span class="jsdoc-var">this.inputEl</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.dom.value </span><span class="jsdoc-syntax">= (</span><span class="jsdoc-var">v </span><span class="jsdoc-syntax">=== </span><span class="jsdoc-keyword">null </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">v </span><span class="jsdoc-syntax">=== </span><span class="jsdoc-var">undefined </span><span class="jsdoc-syntax">? </span><span class="jsdoc-string">'' </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">v</span><span class="jsdoc-syntax">);
492 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
495 </span><span class="jsdoc-var">this.value </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.hiddenField.value </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">t.dateFormat</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'H:i:s'</span><span class="jsdoc-syntax">);
497 </span><span class="jsdoc-var">v </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.translateTime</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">t</span><span class="jsdoc-syntax">);
499 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.rendered</span><span class="jsdoc-syntax">){
500 </span><span class="jsdoc-var">this.inputEl</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.dom.value </span><span class="jsdoc-syntax">= (</span><span class="jsdoc-var">v </span><span class="jsdoc-syntax">=== </span><span class="jsdoc-keyword">null </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">v </span><span class="jsdoc-syntax">=== </span><span class="jsdoc-var">undefined </span><span class="jsdoc-syntax">? </span><span class="jsdoc-string">'' </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">v</span><span class="jsdoc-syntax">);
503 </span><span class="jsdoc-var">this.time </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">t</span><span class="jsdoc-syntax">;
505 </span><span class="jsdoc-var">this.update</span><span class="jsdoc-syntax">();
508 </span><span class="jsdoc-var">getValue</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">()
510 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">this.value</span><span class="jsdoc-syntax">;
513 </span><span class="jsdoc-var">getRawValue </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
514 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">this.getValue</span><span class="jsdoc-syntax">();
517 </span><span class="jsdoc-var">onMousedown</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">){
518 </span><span class="jsdoc-var">e.stopPropagation</span><span class="jsdoc-syntax">();
519 </span><span class="jsdoc-var">e.preventDefault</span><span class="jsdoc-syntax">();
522 </span><span class="jsdoc-var">onIncrementHours</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">()
524 </span><span class="jsdoc-var">Roo.log</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'onIncrementHours'</span><span class="jsdoc-syntax">);
525 </span><span class="jsdoc-var">this.time </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.time.add</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Date.HOUR</span><span class="jsdoc-syntax">, 1);
526 </span><span class="jsdoc-var">this.update</span><span class="jsdoc-syntax">();
530 </span><span class="jsdoc-var">onDecrementHours</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">()
532 </span><span class="jsdoc-var">Roo.log</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'onDecrementHours'</span><span class="jsdoc-syntax">);
533 </span><span class="jsdoc-var">this.time </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.time.add</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Date.HOUR</span><span class="jsdoc-syntax">, -1);
534 </span><span class="jsdoc-var">this.update</span><span class="jsdoc-syntax">();
537 </span><span class="jsdoc-var">onIncrementMinutes</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">()
539 </span><span class="jsdoc-var">Roo.log</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'onIncrementMinutes'</span><span class="jsdoc-syntax">);
540 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">minutesToAdd </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Math.round</span><span class="jsdoc-syntax">((</span><span class="jsdoc-var">parseInt</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.time.format</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'i'</span><span class="jsdoc-syntax">)) + </span><span class="jsdoc-var">this.minuteStep</span><span class="jsdoc-syntax">) / </span><span class="jsdoc-var">this.minuteStep</span><span class="jsdoc-syntax">) * </span><span class="jsdoc-var">this.minuteStep </span><span class="jsdoc-syntax">- </span><span class="jsdoc-var">parseInt</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.time.format</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'i'</span><span class="jsdoc-syntax">));
541 </span><span class="jsdoc-var">this.time </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.time.add</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Date.MINUTE</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">minutesToAdd</span><span class="jsdoc-syntax">);
542 </span><span class="jsdoc-var">this.update</span><span class="jsdoc-syntax">();
545 </span><span class="jsdoc-var">onDecrementMinutes</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">()
547 </span><span class="jsdoc-var">Roo.log</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'onDecrementMinutes'</span><span class="jsdoc-syntax">);
548 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">minutesToSubtract </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">parseInt</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.time.format</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'i'</span><span class="jsdoc-syntax">)) - </span><span class="jsdoc-var">Math.round</span><span class="jsdoc-syntax">((</span><span class="jsdoc-var">parseInt</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.time.format</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'i'</span><span class="jsdoc-syntax">)) - </span><span class="jsdoc-var">this.minuteStep</span><span class="jsdoc-syntax">) / </span><span class="jsdoc-var">this.minuteStep</span><span class="jsdoc-syntax">) * </span><span class="jsdoc-var">this.minuteStep</span><span class="jsdoc-syntax">;
549 </span><span class="jsdoc-var">this.time </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.time.add</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Date.MINUTE</span><span class="jsdoc-syntax">, -1 * </span><span class="jsdoc-var">minutesToSubtract</span><span class="jsdoc-syntax">);
550 </span><span class="jsdoc-var">this.update</span><span class="jsdoc-syntax">();
553 </span><span class="jsdoc-var">onTogglePeriod</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">()
555 </span><span class="jsdoc-var">Roo.log</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'onTogglePeriod'</span><span class="jsdoc-syntax">);
556 </span><span class="jsdoc-var">this.time </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.time.add</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Date.HOUR</span><span class="jsdoc-syntax">, 12);
557 </span><span class="jsdoc-var">this.update</span><span class="jsdoc-syntax">();
562 </span><span class="jsdoc-var">Roo.apply</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.bootstrap.form.TimeField</span><span class="jsdoc-syntax">, {
563 </span><span class="jsdoc-var">okText </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'OK'</span><span class="jsdoc-syntax">,
564 </span><span class="jsdoc-var">periodText </span><span class="jsdoc-syntax">: {
565 </span><span class="jsdoc-var">en </span><span class="jsdoc-syntax">: {
566 </span><span class="jsdoc-var">am </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'AM'</span><span class="jsdoc-syntax">,
567 </span><span class="jsdoc-var">pm </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'PM'
568 </span><span class="jsdoc-syntax">},
569 </span><span class="jsdoc-var">zh_CN </span><span class="jsdoc-syntax">: {
570 </span><span class="jsdoc-var">am </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'上午'</span><span class="jsdoc-syntax">,
571 </span><span class="jsdoc-var">pm </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'下午'
572 </span><span class="jsdoc-syntax">}
576 </span><span class="jsdoc-var">Roo.apply</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.bootstrap.form.TimeField</span><span class="jsdoc-syntax">, {
577 </span><span class="jsdoc-var">template </span><span class="jsdoc-syntax">: {
578 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'div'</span><span class="jsdoc-syntax">,
579 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'datepicker dropdown-menu'</span><span class="jsdoc-syntax">,
580 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">: [
582 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'div'</span><span class="jsdoc-syntax">,
583 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'datepicker-time'</span><span class="jsdoc-syntax">,
584 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">: [
586 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'table'</span><span class="jsdoc-syntax">,
587 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'table-condensed'</span><span class="jsdoc-syntax">,
588 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">:[
590 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'tbody'</span><span class="jsdoc-syntax">,
591 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">: [
593 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'tr'</span><span class="jsdoc-syntax">,
594 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">: [
596 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'td'</span><span class="jsdoc-syntax">,
597 </span><span class="jsdoc-var">colspan</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'7'
598 </span><span class="jsdoc-syntax">}
604 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'tfoot'</span><span class="jsdoc-syntax">,
605 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">: [
607 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'tr'</span><span class="jsdoc-syntax">,
608 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">: [
610 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'th'</span><span class="jsdoc-syntax">,
611 </span><span class="jsdoc-var">colspan</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'7'</span><span class="jsdoc-syntax">,
612 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">,
613 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">: [
615 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'button'</span><span class="jsdoc-syntax">,
616 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'btn btn-info ok'</span><span class="jsdoc-syntax">,
617 </span><span class="jsdoc-var">html</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">"OK" </span><span class="jsdoc-comment">// this is overridden on construciton
618 </span><span class="jsdoc-syntax">}
636 </span></code></body></html>