You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ofbiz.apache.org by jl...@apache.org on 2010/10/31 18:23:39 UTC

svn commit: r1029425 - in /ofbiz/branches/jquery: framework/common/widget/ framework/images/webapp/images/jquery/plugins/datetimepicker/ specialpurpose/ecommerce/widget/ specialpurpose/webpos/widget/ themes/bizznesstime/webapp/bizznesstime/css/ themes/...

Author: jleroux
Date: Sun Oct 31 17:23:39 2010
New Revision: 1029425

URL: http://svn.apache.org/viewvc?rev=1029425&view=rev
Log:
A patch from Sascha Rodekamp "jQuery Test and Bug fixing" (https://issues.apache.org/jira/browse/OFBIZ-4006) - OFBIZ-4006

Sascha: A patch to make the Timepicker works correctlu (switching the month is not a problem anymore).

JLR: I just realize now (Erwan handled "jQuery Calendar Implementation" https://issues.apache.org/jira/browse/OFBIZ-3830) that we can't easily change the year and even the month is a bit laborious. No sure it's a bug deal though, I will ask on dev ml if nobody pick this comment

Added:
    ofbiz/branches/jquery/framework/images/webapp/images/jquery/plugins/datetimepicker/jquery-ui-timepicker-addon-0.7.2.js   (with props)
    ofbiz/branches/jquery/framework/images/webapp/images/jquery/plugins/datetimepicker/jquery-ui-timepicker-addon-0.7.2.min.js   (with props)
Removed:
    ofbiz/branches/jquery/framework/images/webapp/images/jquery/plugins/datetimepicker/jquery-ui-timepicker-addon-0.5.js
    ofbiz/branches/jquery/framework/images/webapp/images/jquery/plugins/datetimepicker/jquery-ui-timepicker-addon-0.5.min.js
Modified:
    ofbiz/branches/jquery/framework/common/widget/CommonScreens.xml
    ofbiz/branches/jquery/specialpurpose/ecommerce/widget/CommonScreens.xml
    ofbiz/branches/jquery/specialpurpose/webpos/widget/CommonScreens.xml
    ofbiz/branches/jquery/themes/bizznesstime/webapp/bizznesstime/css/style.css
    ofbiz/branches/jquery/themes/bluelight/webapp/bluelight/style.css
    ofbiz/branches/jquery/themes/droppingcrumbs/webapp/droppingcrumbs/css/style.css
    ofbiz/branches/jquery/themes/flatgrey/webapp/flatgrey/maincss.css
    ofbiz/branches/jquery/themes/multiflex/webapp/multiflex/style.css
    ofbiz/branches/jquery/themes/tomahawk/webapp/tomahawk/css/style.css

Modified: ofbiz/branches/jquery/framework/common/widget/CommonScreens.xml
URL: http://svn.apache.org/viewvc/ofbiz/branches/jquery/framework/common/widget/CommonScreens.xml?rev=1029425&r1=1029424&r2=1029425&view=diff
==============================================================================
--- ofbiz/branches/jquery/framework/common/widget/CommonScreens.xml (original)
+++ ofbiz/branches/jquery/framework/common/widget/CommonScreens.xml Sun Oct 31 17:23:39 2010
@@ -116,8 +116,8 @@ under the License.
                 <!-- The default (global) java scripts -->
                     <!-- jQuery part -->
                 <set field="layoutSettings.javaScripts[+0]" value="/images/jquery/plugins/asmselect/jquery.asmselect-1.0.4a-beta.js" global="true"/>
+                <set field="layoutSettings.javaScripts[+0]" value="/images/jquery/plugins/datetimepicker/jquery-ui-timepicker-addon-0.7.2.min.js" global="true"/>
                 <set field="layoutSettings.javaScripts[+0]" value="/images/jquery/ui/js/jquery-ui-1.8.2.custom.min.js" global="true"/>
-                <set field="layoutSettings.javaScripts[+0]" value="/images/jquery/plugins/datetimepicker/jquery-ui-timepicker-addon-0.5.js" global="true"/>
                 <set field="layoutSettings.javaScripts[+0]" value="/images/jquery/plugins/jeditable/jquery.jeditable.js" global="true"/>
                 <set field="layoutSettings.javaScripts[+0]" value="/images/jquery/plugins/validate/jquery.validate.min.js" global="true"/>
                 <set field="layoutSettings.javaScripts[+0]" value="/images/jquery/plugins/fjTimer/jquerytimer-min.js" global="true"/>
@@ -330,8 +330,8 @@ under the License.
                 <!-- The default (global) java scripts -->
                     <!-- jQuery part -->
                 <set field="layoutSettings.javaScripts[+0]" value="/images/jquery/plugins/asmselect/jquery.asmselect-1.0.4a-beta.js" global="true"/>
+                <set field="layoutSettings.javaScripts[+0]" value="/images/jquery/plugins/datetimepicker/jquery-ui-timepicker-addon-0.7.2.min.js" global="true"/>
                 <set field="layoutSettings.javaScripts[+0]" value="/images/jquery/ui/js/jquery-ui-1.8.2.custom.min.js" global="true"/>
-                <set field="layoutSettings.javaScripts[+0]" value="/images/jquery/plugins/datetimepicker/jquery-ui-timepicker-addon-0.5.js" global="true"/>
                 <set field="layoutSettings.javaScripts[+0]" value="/images/jquery/plugins/jeditable/jquery.jeditable.js" global="true"/>
                 <set field="layoutSettings.javaScripts[+0]" value="/images/jquery/plugins/fjTimer/jquerytimer-min.js" global="true"/>
                 <set field="layoutSettings.javaScripts[+0]" value="/images/jquery/plugins/validate/jquery.validate.min.js" global="true"/>

Added: ofbiz/branches/jquery/framework/images/webapp/images/jquery/plugins/datetimepicker/jquery-ui-timepicker-addon-0.7.2.js
URL: http://svn.apache.org/viewvc/ofbiz/branches/jquery/framework/images/webapp/images/jquery/plugins/datetimepicker/jquery-ui-timepicker-addon-0.7.2.js?rev=1029425&view=auto
==============================================================================
--- ofbiz/branches/jquery/framework/images/webapp/images/jquery/plugins/datetimepicker/jquery-ui-timepicker-addon-0.7.2.js (added)
+++ ofbiz/branches/jquery/framework/images/webapp/images/jquery/plugins/datetimepicker/jquery-ui-timepicker-addon-0.7.2.js Sun Oct 31 17:23:39 2010
@@ -0,0 +1,832 @@
+/*
+* jQuery timepicker addon
+* By: Trent Richardson [http://trentrichardson.com]
+* Version 0.7.2
+* Last Modified: 10/21/2010
+* 
+* Copyright 2010 Trent Richardson
+* Dual licensed under the MIT and GPL licenses.
+* http://trentrichardson.com/Impromptu/GPL-LICENSE.txt
+* http://trentrichardson.com/Impromptu/MIT-LICENSE.txt
+* 
+* HERES THE CSS:
+* .ui-timepicker-div .ui-widget-header{ margin-bottom: 8px; }
+* .ui-timepicker-div dl{ text-align: left; }
+* .ui-timepicker-div dl dt{ height: 25px; }
+* .ui-timepicker-div dl dd{ margin: -25px 0 10px 65px; }
+* .ui-timepicker-div td { font-size: 90%; }
+*/
+
+(function($) {
+    // MOD for OFBiz to pick up the current Time
+    // init current Time fields
+    var now = new Date();
+    this.hour =  now.getHours();
+    this.minute = now.getMinutes();
+    this.second = now.getSeconds();
+    // END MOD
+	
+    function Timepicker(singleton) {
+        if(typeof(singleton) === 'boolean' && singleton == true) {
+            this.regional = []; // Available regional settings, indexed by language code
+            this.regional[''] = { // Default regional settings
+                currentText: 'Now',
+                ampm: false,
+                timeFormat: 'hh:mm tt',
+                timeOnlyTitle: 'Choose Time',
+                timeText: 'Time',
+                hourText: 'Hour',
+                minuteText: 'Minute',
+                secondText: 'Second'
+            };
+            this.defaults = { // Global defaults for all the datetime picker instances
+                showButtonPanel: true,
+                timeOnly: false,
+                showHour: true,
+                showMinute: true,
+                showSecond: false,
+                showTime: true,
+                stepHour: 0.05,
+                stepMinute: 0.05,
+                stepSecond: 0.05,
+                hour: 0,
+                minute: 0,
+                second: 0,
+                hourMin: 0,
+                minuteMin: 0,
+                secondMin: 0,
+                hourMax: 23,
+                minuteMax: 59,
+                secondMax: 59,
+                hourGrid: 0,
+                minuteGrid: 0,
+                secondGrid: 0,
+                alwaysSetTime: true
+            };
+            $.extend(this.defaults, this.regional['']);
+        } else {
+            this.defaults = $.extend({}, $.timepicker.defaults);
+        }
+
+    };
+
+    Timepicker.prototype = {
+        $input: null,
+        $altInput: null,
+        $timeObj: null,
+        inst: null,
+        hour_slider: null,
+        minute_slider: null,
+        second_slider: null,
+        hour: 0,
+        minute: 0,
+        second: 0,
+        ampm: '',
+        // MOD for OFBiz to pick up the current Time
+        hour: hour,
+        minute: minute,
+        second: second,
+        // END MOD
+        formattedDate: '',
+        formattedTime: '',
+        formattedDateTime: '',
+
+        //########################################################################
+        // add our sliders to the calendar
+        //########################################################################
+        addTimePicker: function(dp_inst) {
+            var tp_inst = this;
+            var currDT;
+            if ((this.$altInput) && this.$altInput != null)
+            {
+                currDT = this.$input.val() + ' ' + this.$altInput.val();
+            }
+            else
+            {
+                currDT = this.$input.val();
+            }
+            var regstr = this.defaults.timeFormat.toString()
+                .replace(/h{1,2}/ig, '(\\d?\\d)')
+                .replace(/m{1,2}/ig, '(\\d?\\d)')
+                .replace(/s{1,2}/ig, '(\\d?\\d)')
+                .replace(/t{1,2}/ig, '(am|pm|a|p)?')
+                .replace(/\s/g, '\\s?') + '$';
+
+            if (!this.defaults.timeOnly) {
+                //the time should come after x number of characters and a space.  x = at least the length of text specified by the date format
+                var dp_dateFormat = $.datepicker._get(dp_inst, 'dateFormat');
+                regstr = '.{' + dp_dateFormat.length + ',}\\s+' + regstr;
+            }
+
+            var order = this.getFormatPositions();
+            var treg = currDT.match(new RegExp(regstr, 'i'));
+
+            if (treg) {
+                if (order.t !== -1) {
+                    this.ampm = ((treg[order.t] === undefined || treg[order.t].length === 0) ? '' : (treg[order.t].charAt(0).toUpperCase() == 'A') ? 'AM' : 'PM').toUpperCase();
+                }
+
+                if (order.h !== -1) {
+                    if (this.ampm == 'AM' && treg[order.h] == '12') {
+                        // 12am = 0 hour
+                        this.hour = 0;
+                    } else if (this.ampm == 'PM' && treg[order.h] != '12') {
+                        // 12pm = 12 hour, any other pm = hour + 12
+                        this.hour = (parseFloat(treg[order.h]) + 12).toFixed(0);
+                    } else {
+                        this.hour = treg[order.h];
+                    }
+                }
+
+                if (order.m !== -1) {
+                    this.minute = treg[order.m];
+                }
+
+                if (order.s !== -1) {
+                    this.second = treg[order.s];
+                }
+            }
+
+            tp_inst.timeDefined = (treg) ? true : false;
+
+            if (typeof(dp_inst.stay_open) !== 'boolean' || dp_inst.stay_open === false) {
+                // wait for datepicker to create itself.. 60% of the time it works every time..
+                setTimeout(function() {
+                    tp_inst.injectTimePicker(dp_inst, tp_inst);
+                }, 10);
+            } else {
+                tp_inst.injectTimePicker(dp_inst, tp_inst);
+            }
+
+        },
+
+        //########################################################################
+        // figure out position of time elements.. cause js cant do named captures
+        //########################################################################
+        getFormatPositions: function() {
+            var finds = this.defaults.timeFormat.toLowerCase().match(/(h{1,2}|m{1,2}|s{1,2}|t{1,2})/g);
+            var orders = { h: -1, m: -1, s: -1, t: -1 };
+
+            if (finds) {
+                for (var i = 0; i < finds.length; i++) {
+                    if (orders[finds[i].toString().charAt(0)] == -1) {
+                        orders[finds[i].toString().charAt(0)] = i + 1;
+                    }
+                }
+            }
+
+            return orders;
+        },
+
+        //########################################################################
+        // generate and inject html for timepicker into ui datepicker
+        //########################################################################
+        injectTimePicker: function(dp_inst, tp_inst)
+        {
+            var $dp = dp_inst.dpDiv;
+            var opts = tp_inst.defaults;
+
+            // Added by Peter Medeiros:
+            // - Figure out what the hour/minute/second max should be based on the step values.
+            // - Example: if stepMinute is 15, then minMax is 45.
+            var hourMax = opts.hourMax - (opts.hourMax % opts.stepHour);
+            var minMax = opts.minuteMax - (opts.minuteMax % opts.stepMinute);
+            var secMax = opts.secondMax - (opts.secondMax % opts.stepSecond);
+
+            // Prevent displaying twice
+            if ($dp.find("div#ui-timepicker-div-" + dp_inst.id).length === 0){
+                var noDisplay = ' style="display:none;"';
+                var html =
+                    '<div class="ui-timepicker-div" id="ui-timepicker-div-' + dp_inst.id + '"><dl>' +
+                        '<dt class="ui_tpicker_time_label" id="ui_tpicker_time_label_' + dp_inst.id + '"' + ((opts.showTime) ? '' : noDisplay) + '>' + opts.timeText + '</dt>' +
+                        '<dd class="ui_tpicker_time" id="ui_tpicker_time_' + dp_inst.id + '"' + ((opts.showTime) ? '' : noDisplay) + '></dd>' +
+                        '<dt class="ui_tpicker_hour_label" id="ui_tpicker_hour_label_' + dp_inst.id + '"' + ((opts.showHour) ? '' : noDisplay) + '>' + opts.hourText + '</dt>';
+                var hourGridSize = 0;
+                var minuteGridSize = 0;
+                var secondGridSize = 0;
+
+                if (opts.showHour && opts.hourGrid > 0)
+                {
+                    html += '<dd class="ui_tpicker_hour">' +
+                            '<div id="ui_tpicker_hour_' + dp_inst.id + '"' + ((opts.showHour) ? '' : noDisplay) + '></div>' +
+                            '<div style="padding-left: 1px"><table><tr>';
+
+                    for (var h = 0; h <= hourMax; h += opts.hourGrid)
+                    {
+                        hourGridSize++;
+
+                        var tmph = h;
+                        if (opts.ampm && h > 12)
+                            tmph = h - 12;
+                        else
+                            tmph = h;
+
+                        if (tmph < 10)
+                            tmph = '0' + tmph;
+                        if (opts.ampm)
+                        {
+                            if (h == 0)
+                                tmph = 12 + 'a';
+                            else if (h < 12)
+                                tmph += 'a';
+                            else
+                                tmph += 'p';
+                        }
+                        html += '<td>' + tmph + '</td>';
+                    }
+
+                    html += '</tr></table></div>' +
+                            '</dd>';
+                }
+                else
+                {
+                    html += '<dd class="ui_tpicker_hour" id="ui_tpicker_hour_' + dp_inst.id + '"' + ((opts.showHour) ? '' : noDisplay) + '></dd>';
+                }
+
+                html += '<dt class="ui_tpicker_minute_label" id="ui_tpicker_minute_label_' + dp_inst.id + '"' + ((opts.showMinute) ? '' : noDisplay) + '>' + opts.minuteText + '</dt>';
+
+                if (opts.showMinute && opts.minuteGrid > 0)
+                {
+                    html += '<dd class="ui_tpicker_minute">' +
+                            '<div id="ui_tpicker_minute_' + dp_inst.id + '"' + ((opts.showMinute) ? '' : noDisplay) + '></div>' +
+                            '<div style="padding-left: 1px"><table><tr>';
+
+                    for (var m = 0; m <= minMax; m += opts.minuteGrid)
+                    {
+                        minuteGridSize++;
+                        html += '<td>' + ((m < 10) ? '0' : '') + m + '</td>';
+                    }
+
+                    html += '</tr></table></div>' +
+                            '</dd>';
+                }
+                else
+                {
+                    html += '<dd class="ui_tpicker_minute" id="ui_tpicker_minute_' + dp_inst.id + '"' + ((opts.showMinute) ? '' : noDisplay) + '></dd>'
+                }
+
+                html += '<dt class="ui_tpicker_second_label" id="ui_tpicker_second_label_' + dp_inst.id + '"' + ((opts.showSecond) ? '' : noDisplay) + '>' + opts.secondText + '</dt>';
+
+                if (opts.showSecond && opts.secondGrid > 0)
+                {
+                    html += '<dd class="ui_tpicker_second">' +
+                            '<div id="ui_tpicker_second_' + dp_inst.id + '"' + ((opts.showSecond) ? '' : noDisplay) + '></div>' +
+                            '<div style="padding-left: 1px"><table><tr>';
+
+                    for (var s = 0; s <= secMax; s += opts.secondGrid)
+                    {
+                        secondGridSize++;
+                        html += '<td>' + ((s < 10) ? '0' : '') + s + '</td>';
+                    }
+
+                    html += '</tr></table></div>' +
+                            '</dd>';
+                }
+                else
+                {
+                    html += '<dd class="ui_tpicker_second" id="ui_tpicker_second_' + dp_inst.id + '"' + ((opts.showSecond) ? '' : noDisplay) + '></dd>';
+                }
+
+                html += '</dl></div>';
+                $tp = $(html);
+
+                // if we only want time picker...
+                if (opts.timeOnly === true)
+                {
+                    $tp.prepend(
+                        '<div class="ui-widget-header ui-helper-clearfix ui-corner-all">' +
+                            '<div class="ui-datepicker-title">' + opts.timeOnlyTitle + '</div>' +
+                        '</div>');
+                    $dp.find('.ui-datepicker-header, .ui-datepicker-calendar').hide();
+                }
+
+                tp_inst.hour_slider = $tp.find('#ui_tpicker_hour_' + dp_inst.id).slider({
+                    orientation: "horizontal",
+                    value: tp_inst.hour,
+                    min: opts.hourMin,
+                    max: hourMax,
+                    step: opts.stepHour,
+                    slide: function(event, ui)
+                    {
+                        tp_inst.hour_slider.slider("option", "value", ui.value);
+                        tp_inst.onTimeChange(dp_inst, tp_inst);
+                    }
+                });
+
+                // Updated by Peter Medeiros:
+                // - Pass in Event and UI instance into slide function
+                tp_inst.minute_slider = $tp.find('#ui_tpicker_minute_' + dp_inst.id).slider({
+                    orientation: "horizontal",
+                    value: tp_inst.minute,
+                    min: opts.minuteMin,
+                    max: minMax,
+                    step: opts.stepMinute,
+                    slide: function(event, ui)
+                    {
+                        // update the global minute slider instance value with the current slider value
+                        tp_inst.minute_slider.slider("option", "value", ui.value);
+                        tp_inst.onTimeChange(dp_inst, tp_inst);
+                    }
+                });
+
+                tp_inst.second_slider = $tp.find('#ui_tpicker_second_' + dp_inst.id).slider({
+                    orientation: "horizontal",
+                    value: tp_inst.second,
+                    min: opts.secondMin,
+                    max: secMax,
+                    step: opts.stepSecond,
+                    slide: function(event, ui)
+                    {
+                        tp_inst.second_slider.slider("option", "value", ui.value);
+                        tp_inst.onTimeChange(dp_inst, tp_inst);
+                    }
+                });
+
+                // Add grid functionality
+                if (opts.showHour && opts.hourGrid > 0)
+                {
+                    var size = 100 * hourGridSize * opts.hourGrid / (hourMax - opts.hourMin);
+
+                    $tp.find(".ui_tpicker_hour table").css({
+                            'width': size + "%",
+                            'margin-left': (size / (-2 * hourGridSize)) + "%",
+                            'border-collapse': 'collapse'
+                        });
+                    $tp.find(".ui_tpicker_hour td").each(
+                            function(index)
+                            {
+                                $(this).click(
+                                        function()
+                                        {
+                                            var h = $(this).html();
+                                            if (opts.ampm)
+                                            {
+                                                var ap = h.substring(2).toLowerCase();
+                                                var aph = new Number(h.substring(0, 2));
+
+                                                if (ap == 'a')
+                                                {
+                                                    if (aph == 12)
+                                                        h = 0;
+                                                    else h = aph;
+                                                } else
+                                                {
+                                                    if (aph == 12)
+                                                        h = 12;
+                                                    else h = aph + 12;
+                                                }
+                                            }
+                                            tp_inst.hour_slider.slider("option", "value", h);
+                                            tp_inst.onTimeChange(dp_inst, tp_inst);
+                                        }
+                                    );
+                                $(this).css({
+                                        'cursor': "pointer",
+                                        'width': (100 / hourGridSize) + '%',
+                                        'text-align': 'center',
+                                        'overflow': 'hidden'
+                                    });
+                            }
+                        );
+                }
+
+                if (opts.showMinute && opts.minuteGrid > 0)
+                {
+                    var size = 100 * minuteGridSize * opts.minuteGrid / (minMax - opts.minuteMin);
+
+                    $tp.find(".ui_tpicker_minute table").css({
+                            'width': size + "%",
+                            'margin-left': (size / (-2 * minuteGridSize)) + "%",
+                            'border-collapse': 'collapse'
+                        });
+                    $tp.find(".ui_tpicker_minute td").each(
+                            function(index)
+                            {
+                                $(this).click(
+                                        function()
+                                        {
+                                            tp_inst.minute_slider.slider("option", "value", $(this).html());
+                                            tp_inst.onTimeChange(dp_inst, tp_inst);
+                                        }
+                                    );
+                                $(this).css({
+                                        'cursor': "pointer",
+                                        'width': (100 / minuteGridSize) + '%',
+                                        'text-align': 'center',
+                                        'overflow': 'hidden'
+                                    });
+                            }
+                        );
+                }
+
+                if (opts.showSecond && opts.secondGrid > 0)
+                {
+                    var size = 100 * secondGridSize * opts.secondGrid / (secMax - opts.secondMin);
+
+                    $tp.find(".ui_tpicker_second table").css({
+                            'width': size + "%",
+                            'margin-left': (size / (-2 * secondGridSize)) + "%",
+                            'border-collapse': 'collapse'
+                        });
+                    $tp.find(".ui_tpicker_second td").each(
+                            function(index)
+                            {
+                                $(this).click(
+                                        function()
+                                        {
+                                            tp_inst.second_slider.slider("option", "value", $(this).html());
+                                            tp_inst.onTimeChange(dp_inst, tp_inst);
+                                        }
+                                    );
+                                $(this).css({
+                                        'cursor': "pointer",
+                                        'width': (100 / secondGridSize) + '%',
+                                        'text-align': 'center',
+                                        'overflow': 'hidden'
+                                    });
+                            }
+                        );
+                }
+
+                $dp.find('.ui-datepicker-calendar').after($tp);
+
+                tp_inst.$timeObj = $('#ui_tpicker_time_' + dp_inst.id);
+
+                if (dp_inst !== null)
+                {
+                    var timeDefined = tp_inst.timeDefined;
+                    tp_inst.onTimeChange(dp_inst, tp_inst);
+                    tp_inst.timeDefined = timeDefined;
+                }
+            }
+        },
+
+        //########################################################################
+        // when a slider moves..
+        // on time change is also called when the time is updated in the text field
+        //########################################################################
+        onTimeChange: function(dp_inst, tp_inst) {
+            var hour   = (tp_inst.hour_slider)? tp_inst.hour_slider.slider('value') : tp_inst.hour;
+            var minute = (tp_inst.minute_slider)? tp_inst.minute_slider.slider('value') : tp_inst.minute;
+            var second = (tp_inst.second_slider)? tp_inst.second_slider.slider('value') : tp_inst.second;
+            var ampm = (hour < 11.5) ? 'AM' : 'PM';
+            hour = (hour >= 11.5 && hour < 12) ? 12 : hour;
+            var hasChanged = false;
+
+            // If the update was done in the input field, this field should not be updated.
+            // If the update was done using the sliders, update the input field.
+            if (tp_inst.hour != hour || tp_inst.minute != minute || tp_inst.second != second || (tp_inst.ampm.length > 0 && tp_inst.ampm != ampm)) {
+                hasChanged = true;
+            }
+
+            tp_inst.hour = parseFloat(hour).toFixed(0);
+            tp_inst.minute = parseFloat(minute).toFixed(0);
+            tp_inst.second = parseFloat(second).toFixed(0);
+            tp_inst.ampm = ampm;
+
+            tp_inst.formatTime(tp_inst);
+            if(tp_inst.$timeObj)
+                tp_inst.$timeObj.text(tp_inst.formattedTime);
+
+            if (hasChanged) {
+                tp_inst.updateDateTime(dp_inst, tp_inst);
+                tp_inst.timeDefined = true;
+            }
+        },
+
+        //########################################################################
+        // format the time all pretty...
+        //########################################################################
+        formatTime: function(tp_inst) {
+            var tmptime = tp_inst.defaults.timeFormat.toString();
+            var hour12 = ((tp_inst.ampm == 'AM') ? (tp_inst.hour) : (tp_inst.hour % 12));
+            hour12 = (Number(hour12) === 0) ? 12 : hour12;
+
+            if (tp_inst.defaults.ampm === true) {
+                tmptime = tmptime.toString()
+                    .replace(/hh/g, ((hour12 < 10) ? '0' : '') + hour12)
+                    .replace(/h/g, hour12)
+                    .replace(/mm/g, ((tp_inst.minute < 10) ? '0' : '') + tp_inst.minute)
+                    .replace(/m/g, tp_inst.minute)
+                    .replace(/ss/g, ((tp_inst.second < 10) ? '0' : '') + tp_inst.second)
+                    .replace(/s/g, tp_inst.second)
+                    .replace(/TT/g, tp_inst.ampm.toUpperCase())
+                    .replace(/tt/g, tp_inst.ampm.toLowerCase())
+                    .replace(/T/g, tp_inst.ampm.charAt(0).toUpperCase())
+                    .replace(/t/g, tp_inst.ampm.charAt(0).toLowerCase());
+
+            } else {
+                tmptime = tmptime.toString()
+                    .replace(/hh/g, ((tp_inst.hour < 10) ? '0' : '') + tp_inst.hour)
+                    .replace(/h/g, tp_inst.hour)
+                    .replace(/mm/g, ((tp_inst.minute < 10) ? '0' : '') + tp_inst.minute)
+                    .replace(/m/g, tp_inst.minute)
+                    .replace(/ss/g, ((tp_inst.second < 10) ? '0' : '') + tp_inst.second)
+                    .replace(/s/g, tp_inst.second);
+                tmptime = $.trim(tmptime.replace(/t/gi, ''));
+            }
+
+            tp_inst.formattedTime = tmptime;
+            return tp_inst.formattedTime;
+        },
+
+        //########################################################################
+        // update our input with the new date time..
+        //########################################################################
+        updateDateTime: function(dp_inst, tp_inst) {
+            var dt = new Date(dp_inst.selectedYear, dp_inst.selectedMonth, dp_inst.selectedDay);
+            var dateFmt = $.datepicker._get(dp_inst, 'dateFormat');
+            var formatCfg = $.datepicker._getFormatConfig(dp_inst);
+            this.formattedDate = $.datepicker.formatDate(dateFmt, (dt === null ? new Date() : dt), formatCfg);
+            var formattedDateTime = this.formattedDate;
+            var timeAvailable = ((dt !== null && tp_inst.timeDefined) !== true)? false : true;
+
+            if(this.defaults.timeOnly === true){
+                formattedDateTime = this.formattedTime;
+            }
+            else if (this.defaults.timeOnly !== true && (this.defaults.alwaysSetTime || timeAvailable)) {
+                if ((this.$altInput) && this.$altInput != null)
+                {
+                    this.$altInput.val(this.formattedTime);
+                }
+                else{
+                    formattedDateTime += ' ' + this.formattedTime;
+                }
+            }
+            
+            this.formattedDateTime = formattedDateTime;
+            if(!dp_inst.inline && this.$input){
+                this.$input.val(formattedDateTime);
+                this.$input.trigger("change");
+            }
+        },
+        
+        setDefaults: function(settings) {
+            extendRemove(this.defaults, settings || {});
+            return this;
+        }
+    };
+
+    //########################################################################
+    // extend timepicker to datepicker
+    //########################################################################        
+    jQuery.fn.datetimepicker = function(o) {
+        var opts = (o === undefined ? {} : o);
+        var input = $(this);
+
+        if(typeof(o) == 'string')
+        {
+            if(o == 'setDate')
+                return input.datepicker(o, arguments[1]);
+            if(o == 'options' && typeof(arguments[1]) == 'string')
+                return input.datepicker(o, arguments[1], arguments[2]);
+            if(o == 'dialog')
+                return input.datepicker(o, arguments[1], arguments[2], arguments[3], arguments[4]);
+            return input.datepicker(o);
+        }
+        
+        var tp = new Timepicker();
+        var inlineSettings = {};
+
+        for (var attrName in tp.defaults) {
+            var attrValue = input.attr('time:' + attrName);
+            if (attrValue) {
+                try {
+                    inlineSettings[attrName] = eval(attrValue);
+                } catch (err) {
+                    inlineSettings[attrName] = attrValue;
+                }
+            }
+        }
+        tp.defaults = $.extend(tp.defaults, inlineSettings);
+
+        var beforeShowFunc = function(input, inst) {
+            tp.hour = tp.defaults.hour;
+            tp.minute = tp.defaults.minute;
+            tp.second = tp.defaults.second;
+            tp.ampm = '';
+            tp.$input = $(input);
+            if(opts.altField != undefined && opts.altField != '')
+                tp.$altInput = $($.datepicker._get(inst, 'altField'));
+            tp.inst = inst;
+            tp.addTimePicker(inst);
+            if ($.isFunction(opts.beforeShow)) {
+                opts.beforeShow(input, inst);
+            }
+        };
+
+        var onChangeMonthYearFunc = function(year, month, inst) {
+            // Update the time as well : this prevents the time from disappearing from the input field.
+            tp.updateDateTime(inst, tp);
+            if ($.isFunction(opts.onChangeMonthYear)) {
+                opts.onChangeMonthYear(year, month, inst);
+            }
+        };
+
+        var onCloseFunc = function(dateText, inst) {
+            if(tp.timeDefined === true && input.val() != '') {
+                tp.updateDateTime(inst, tp);
+            }
+            if ($.isFunction(opts.onClose)) {
+                opts.onClose(dateText, inst);
+            }
+        };
+
+        // make the alt field trigger the picker if its set
+        if ((opts.altField) && opts.altField != null){
+            var me = $(opts.altField);
+
+            me.css({ 'cursor': 'pointer' });
+            me.focus(function(){
+                input.trigger("focus");
+            });
+        }
+        
+        tp.defaults = $.extend({}, tp.defaults, opts, {
+            beforeShow: beforeShowFunc,
+            onChangeMonthYear: onChangeMonthYearFunc,
+            onClose: onCloseFunc,
+            timepicker: tp // add timepicker as a property of datepicker: $.datepicker._get(dp_inst, 'timepicker');
+        });
+
+        return input.datepicker(tp.defaults);
+
+    };
+
+    //########################################################################
+    // shorthand just to use timepicker..
+    //########################################################################
+    jQuery.fn.timepicker = function(opts) {
+        if(typeof opts == 'object')
+            opts = $.extend(opts, { timeOnly: true });
+            
+        return $(this).datetimepicker(opts, arguments[1], arguments[2], arguments[3], arguments[4]);
+    };
+
+    //########################################################################
+    // the bad hack :/ override datepicker so it doesnt close on select
+    // inspired: http://stackoverflow.com/questions/1252512/jquery-datepicker-prevent-closing-picker-when-clicking-a-date/1762378#1762378
+    //########################################################################
+    $.datepicker._base_selectDate = $.datepicker._selectDate;
+    $.datepicker._selectDate = function (id, dateStr) {
+        var target = $(id);
+        var inst = this._getInst(target[0]);
+        var tp_inst = $.datepicker._get(inst, 'timepicker');
+        
+        if(tp_inst){
+            inst.inline = true;
+            inst.stay_open = true;
+            $.datepicker._base_selectDate(id, dateStr);
+            inst.stay_open = false;
+            inst.inline = false;
+            this._notifyChange(inst);
+            this._updateDatepicker(inst);
+        }
+        else{
+            $.datepicker._base_selectDate(id, dateStr);
+        }
+    };
+
+    //#############################################################################################
+    // second bad hack :/ override datepicker so it triggers an event when changing the input field
+    // and does not redraw the datepicker on every selectDate event
+    //#############################################################################################
+    $.datepicker._base_updateDatepicker = $.datepicker._updateDatepicker;
+    $.datepicker._updateDatepicker = function(inst) {
+        if (typeof(inst.stay_open) !== 'boolean' || inst.stay_open === false) {
+            this._base_updateDatepicker(inst);
+            // Reload the time control when changing something in the input text field.
+            this._beforeShow(inst.input, inst);
+        }
+    };
+
+    $.datepicker._beforeShow = function(input, inst) {
+        var beforeShow = this._get(inst, 'beforeShow');
+        if (beforeShow) {
+            inst.stay_open = true;
+            beforeShow.apply((inst.input ? inst.input[0] : null), [inst.input, inst]);
+            inst.stay_open = false;
+        }
+    };
+
+    //#######################################################################################
+    // third bad hack :/ override datepicker so it allows spaces and colan in the input field
+    //#######################################################################################
+    $.datepicker._base_doKeyPress = $.datepicker._doKeyPress;
+    $.datepicker._doKeyPress = function(event) {
+        var inst = $.datepicker._getInst(event.target);
+        var tp_inst = $.datepicker._get(inst, 'timepicker');
+
+        if(tp_inst){
+            if ($.datepicker._get(inst, 'constrainInput')) {
+                var dateChars = $.datepicker._possibleChars($.datepicker._get(inst, 'dateFormat'));
+                var chr = String.fromCharCode(event.charCode === undefined ? event.keyCode : event.charCode);
+                var chrl = chr.toLowerCase();
+                // keyCode == 58 => ":"
+                // keyCode == 32 => " "
+                return event.ctrlKey || (chr < ' ' || !dateChars || dateChars.indexOf(chr) > -1 || event.keyCode == 58 || event.keyCode == 32 || chr == ':' || chr == ' ' || chrl == 'a' || chrl == 'p' || chrl == 'm');
+            }
+        }
+        else{
+            return $.datepicker._base_doKeyPress(event);
+        }
+
+    };
+
+    //#######################################################################################
+    // override "Today" button to also grab the time.
+    //#######################################################################################
+    $.datepicker._base_gotoToday = $.datepicker._gotoToday;
+    $.datepicker._gotoToday = function(id) {
+        $.datepicker._base_gotoToday(id);
+        
+        var target = $(id);
+        var dp_inst = this._getInst(target[0]);
+
+        this._setTime(dp_inst, new Date());
+
+    };
+
+    //#######################################################################################
+    // Create our on set time function
+    //#######################################################################################
+    $.datepicker._setTime = function(inst, date) {
+    
+        var tp_inst = $.datepicker._get(inst, 'timepicker');
+        
+        if(tp_inst){
+            var hour = date.getHours();
+            var minute = date.getMinutes();
+            var second = date.getSeconds();
+
+            //check if within min/max times..
+            if( (hour < tp_inst.defaults.hourMin || hour > tp_inst.defaults.hourMax) || (minute < tp_inst.defaults.minuteMin || minute > tp_inst.defaults.minuteMax) || (second < tp_inst.defaults.secondMin || second > tp_inst.defaults.secondMax) ){                    
+                hour = tp_inst.defaults.hourMin;
+                minute = tp_inst.defaults.minuteMin;
+                second = tp_inst.defaults.secondMin;    
+            }
+
+            if(tp_inst.hour_slider && tp_inst.minute_slider && tp_inst.second_slider){
+                tp_inst.hour_slider.slider('value', hour );
+                tp_inst.minute_slider.slider('value', minute );
+                tp_inst.second_slider.slider('value', second );
+            }
+            else{
+                tp_inst.hour = hour;
+                tp_inst.minute = minute;
+                tp_inst.second = second;
+            }
+            
+            tp_inst.onTimeChange(inst, tp_inst);
+        }
+    };
+
+    //#######################################################################################
+    // override getDate() to allow getting time too within date object
+    //#######################################################################################
+    $.datepicker._base_setDate = $.datepicker._setDate;
+    $.datepicker._setDate = function(inst, date, noChange) {
+        var tp_inst = $.datepicker._get(inst, 'timepicker');
+        var tp_date = new Date(date.getYear(), date.getMonth(), date.getDay(), date.getHours(), date.getMinutes(), date.getSeconds());
+
+        $.datepicker._base_setDate(inst, date, noChange);
+        
+        if(tp_inst){
+            this._setTime(inst, tp_date);
+        }
+
+    };
+    
+    //#######################################################################################
+    // override getDate() to allow getting time too within date object
+    //#######################################################################################
+    $.datepicker._base_getDate = $.datepicker._getDate;
+    $.datepicker._getDate = function(inst) {
+    
+        var tp_inst = $.datepicker._get(inst, 'timepicker');
+        
+        if(tp_inst){
+            var startDate = (!inst.currentYear || (inst.input && inst.input.val() == '') ? null :
+                this._daylightSavingAdjust(new Date(
+                inst.currentYear, inst.currentMonth, inst.currentDay, tp_inst.hour, tp_inst.minute, tp_inst.second)));
+                return startDate;
+        }
+        
+        return $.datepicker._base_getDate(inst);
+    };
+    
+    //#######################################################################################
+    // jQuery extend now ignores nulls!
+    //#######################################################################################
+    function extendRemove(target, props) {
+        $.extend(target, props);
+        for (var name in props)
+            if (props[name] == null || props[name] == undefined)
+                target[name] = props[name];
+        return target;
+    };
+
+    $.timepicker = new Timepicker(true); // singleton instance
+})(jQuery);
+
+

Propchange: ofbiz/branches/jquery/framework/images/webapp/images/jquery/plugins/datetimepicker/jquery-ui-timepicker-addon-0.7.2.js
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ofbiz/branches/jquery/framework/images/webapp/images/jquery/plugins/datetimepicker/jquery-ui-timepicker-addon-0.7.2.js
------------------------------------------------------------------------------
    svn:keywords = Date Rev Author URL Id

Propchange: ofbiz/branches/jquery/framework/images/webapp/images/jquery/plugins/datetimepicker/jquery-ui-timepicker-addon-0.7.2.js
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: ofbiz/branches/jquery/framework/images/webapp/images/jquery/plugins/datetimepicker/jquery-ui-timepicker-addon-0.7.2.min.js
URL: http://svn.apache.org/viewvc/ofbiz/branches/jquery/framework/images/webapp/images/jquery/plugins/datetimepicker/jquery-ui-timepicker-addon-0.7.2.min.js?rev=1029425&view=auto
==============================================================================
--- ofbiz/branches/jquery/framework/images/webapp/images/jquery/plugins/datetimepicker/jquery-ui-timepicker-addon-0.7.2.min.js (added)
+++ ofbiz/branches/jquery/framework/images/webapp/images/jquery/plugins/datetimepicker/jquery-ui-timepicker-addon-0.7.2.min.js Sun Oct 31 17:23:39 2010
@@ -0,0 +1,454 @@
+(function($){
+var _1=new Date();
+this.hour=_1.getHours();
+this.minute=_1.getMinutes();
+this.second=_1.getSeconds();
+function _2(_3){
+if(typeof (_3)==="boolean"&&_3==true){
+this.regional=[];
+this.regional[""]={currentText:"Now",ampm:false,timeFormat:"hh:mm tt",timeOnlyTitle:"Choose Time",timeText:"Time",hourText:"Hour",minuteText:"Minute",secondText:"Second"};
+this.defaults={showButtonPanel:true,timeOnly:false,showHour:true,showMinute:true,showSecond:false,showTime:true,stepHour:0.05,stepMinute:0.05,stepSecond:0.05,hour:0,minute:0,second:0,hourMin:0,minuteMin:0,secondMin:0,hourMax:23,minuteMax:59,secondMax:59,hourGrid:0,minuteGrid:0,secondGrid:0,alwaysSetTime:true};
+$.extend(this.defaults,this.regional[""]);
+}else{
+this.defaults=$.extend({},$.timepicker.defaults);
+}
+};
+_2.prototype={$input:null,$altInput:null,$timeObj:null,inst:null,hour_slider:null,minute_slider:null,second_slider:null,hour:0,minute:0,second:0,ampm:"",hour:hour,minute:minute,second:second,formattedDate:"",formattedTime:"",formattedDateTime:"",addTimePicker:function(_4){
+var _5=this;
+var _6;
+if((this.$altInput)&&this.$altInput!=null){
+_6=this.$input.val()+" "+this.$altInput.val();
+}else{
+_6=this.$input.val();
+}
+var _7=this.defaults.timeFormat.toString().replace(/h{1,2}/ig,"(\\d?\\d)").replace(/m{1,2}/ig,"(\\d?\\d)").replace(/s{1,2}/ig,"(\\d?\\d)").replace(/t{1,2}/ig,"(am|pm|a|p)?").replace(/\s/g,"\\s?")+"$";
+if(!this.defaults.timeOnly){
+var _8=$.datepicker._get(_4,"dateFormat");
+_7=".{"+_8.length+",}\\s+"+_7;
+}
+var _9=this.getFormatPositions();
+var _a=_6.match(new RegExp(_7,"i"));
+if(_a){
+if(_9.t!==-1){
+this.ampm=((_a[_9.t]===undefined||_a[_9.t].length===0)?"":(_a[_9.t].charAt(0).toUpperCase()=="A")?"AM":"PM").toUpperCase();
+}
+if(_9.h!==-1){
+if(this.ampm=="AM"&&_a[_9.h]=="12"){
+this.hour=0;
+}else{
+if(this.ampm=="PM"&&_a[_9.h]!="12"){
+this.hour=(parseFloat(_a[_9.h])+12).toFixed(0);
+}else{
+this.hour=_a[_9.h];
+}
+}
+}
+if(_9.m!==-1){
+this.minute=_a[_9.m];
+}
+if(_9.s!==-1){
+this.second=_a[_9.s];
+}
+}
+_5.timeDefined=(_a)?true:false;
+if(typeof (_4.stay_open)!=="boolean"||_4.stay_open===false){
+setTimeout(function(){
+_5.injectTimePicker(_4,_5);
+},10);
+}else{
+_5.injectTimePicker(_4,_5);
+}
+},getFormatPositions:function(){
+var _b=this.defaults.timeFormat.toLowerCase().match(/(h{1,2}|m{1,2}|s{1,2}|t{1,2})/g);
+var _c={h:-1,m:-1,s:-1,t:-1};
+if(_b){
+for(var i=0;i<_b.length;i++){
+if(_c[_b[i].toString().charAt(0)]==-1){
+_c[_b[i].toString().charAt(0)]=i+1;
+}
+}
+}
+return _c;
+},injectTimePicker:function(_d,_e){
+var _f=_d.dpDiv;
+var _10=_e.defaults;
+var _11=_10.hourMax-(_10.hourMax%_10.stepHour);
+var _12=_10.minuteMax-(_10.minuteMax%_10.stepMinute);
+var _13=_10.secondMax-(_10.secondMax%_10.stepSecond);
+if(_f.find("div#ui-timepicker-div-"+_d.id).length===0){
+var _14=" style=\"display:none;\"";
+var _15="<div class=\"ui-timepicker-div\" id=\"ui-timepicker-div-"+_d.id+"\"><dl>"+"<dt class=\"ui_tpicker_time_label\" id=\"ui_tpicker_time_label_"+_d.id+"\""+((_10.showTime)?"":_14)+">"+_10.timeText+"</dt>"+"<dd class=\"ui_tpicker_time\" id=\"ui_tpicker_time_"+_d.id+"\""+((_10.showTime)?"":_14)+"></dd>"+"<dt class=\"ui_tpicker_hour_label\" id=\"ui_tpicker_hour_label_"+_d.id+"\""+((_10.showHour)?"":_14)+">"+_10.hourText+"</dt>";
+var _16=0;
+var _17=0;
+var _18=0;
+if(_10.showHour&&_10.hourGrid>0){
+_15+="<dd class=\"ui_tpicker_hour\">"+"<div id=\"ui_tpicker_hour_"+_d.id+"\""+((_10.showHour)?"":_14)+"></div>"+"<div style=\"padding-left: 1px\"><table><tr>";
+for(var h=0;h<=_11;h+=_10.hourGrid){
+_16++;
+var _19=h;
+if(_10.ampm&&h>12){
+_19=h-12;
+}else{
+_19=h;
+}
+if(_19<10){
+_19="0"+_19;
+}
+if(_10.ampm){
+if(h==0){
+_19=12+"a";
+}else{
+if(h<12){
+_19+="a";
+}else{
+_19+="p";
+}
+}
+}
+_15+="<td>"+_19+"</td>";
+}
+_15+="</tr></table></div>"+"</dd>";
+}else{
+_15+="<dd class=\"ui_tpicker_hour\" id=\"ui_tpicker_hour_"+_d.id+"\""+((_10.showHour)?"":_14)+"></dd>";
+}
+_15+="<dt class=\"ui_tpicker_minute_label\" id=\"ui_tpicker_minute_label_"+_d.id+"\""+((_10.showMinute)?"":_14)+">"+_10.minuteText+"</dt>";
+if(_10.showMinute&&_10.minuteGrid>0){
+_15+="<dd class=\"ui_tpicker_minute\">"+"<div id=\"ui_tpicker_minute_"+_d.id+"\""+((_10.showMinute)?"":_14)+"></div>"+"<div style=\"padding-left: 1px\"><table><tr>";
+for(var m=0;m<=_12;m+=_10.minuteGrid){
+_17++;
+_15+="<td>"+((m<10)?"0":"")+m+"</td>";
+}
+_15+="</tr></table></div>"+"</dd>";
+}else{
+_15+="<dd class=\"ui_tpicker_minute\" id=\"ui_tpicker_minute_"+_d.id+"\""+((_10.showMinute)?"":_14)+"></dd>";
+}
+_15+="<dt class=\"ui_tpicker_second_label\" id=\"ui_tpicker_second_label_"+_d.id+"\""+((_10.showSecond)?"":_14)+">"+_10.secondText+"</dt>";
+if(_10.showSecond&&_10.secondGrid>0){
+_15+="<dd class=\"ui_tpicker_second\">"+"<div id=\"ui_tpicker_second_"+_d.id+"\""+((_10.showSecond)?"":_14)+"></div>"+"<div style=\"padding-left: 1px\"><table><tr>";
+for(var s=0;s<=_13;s+=_10.secondGrid){
+_18++;
+_15+="<td>"+((s<10)?"0":"")+s+"</td>";
+}
+_15+="</tr></table></div>"+"</dd>";
+}else{
+_15+="<dd class=\"ui_tpicker_second\" id=\"ui_tpicker_second_"+_d.id+"\""+((_10.showSecond)?"":_14)+"></dd>";
+}
+_15+="</dl></div>";
+$tp=$(_15);
+if(_10.timeOnly===true){
+$tp.prepend("<div class=\"ui-widget-header ui-helper-clearfix ui-corner-all\">"+"<div class=\"ui-datepicker-title\">"+_10.timeOnlyTitle+"</div>"+"</div>");
+_f.find(".ui-datepicker-header, .ui-datepicker-calendar").hide();
+}
+_e.hour_slider=$tp.find("#ui_tpicker_hour_"+_d.id).slider({orientation:"horizontal",value:_e.hour,min:_10.hourMin,max:_11,step:_10.stepHour,slide:function(_1a,ui){
+_e.hour_slider.slider("option","value",ui.value);
+_e.onTimeChange(_d,_e);
+}});
+_e.minute_slider=$tp.find("#ui_tpicker_minute_"+_d.id).slider({orientation:"horizontal",value:_e.minute,min:_10.minuteMin,max:_12,step:_10.stepMinute,slide:function(_1b,ui){
+_e.minute_slider.slider("option","value",ui.value);
+_e.onTimeChange(_d,_e);
+}});
+_e.second_slider=$tp.find("#ui_tpicker_second_"+_d.id).slider({orientation:"horizontal",value:_e.second,min:_10.secondMin,max:_13,step:_10.stepSecond,slide:function(_1c,ui){
+_e.second_slider.slider("option","value",ui.value);
+_e.onTimeChange(_d,_e);
+}});
+if(_10.showHour&&_10.hourGrid>0){
+var _1d=100*_16*_10.hourGrid/(_11-_10.hourMin);
+$tp.find(".ui_tpicker_hour table").css({"width":_1d+"%","margin-left":(_1d/(-2*_16))+"%","border-collapse":"collapse"});
+$tp.find(".ui_tpicker_hour td").each(function(_1e){
+$(this).click(function(){
+var h=$(this).html();
+if(_10.ampm){
+var ap=h.substring(2).toLowerCase();
+var aph=new Number(h.substring(0,2));
+if(ap=="a"){
+if(aph==12){
+h=0;
+}else{
+h=aph;
+}
+}else{
+if(aph==12){
+h=12;
+}else{
+h=aph+12;
+}
+}
+}
+_e.hour_slider.slider("option","value",h);
+_e.onTimeChange(_d,_e);
+});
+$(this).css({"cursor":"pointer","width":(100/_16)+"%","text-align":"center","overflow":"hidden"});
+});
+}
+if(_10.showMinute&&_10.minuteGrid>0){
+var _1d=100*_17*_10.minuteGrid/(_12-_10.minuteMin);
+$tp.find(".ui_tpicker_minute table").css({"width":_1d+"%","margin-left":(_1d/(-2*_17))+"%","border-collapse":"collapse"});
+$tp.find(".ui_tpicker_minute td").each(function(_1f){
+$(this).click(function(){
+_e.minute_slider.slider("option","value",$(this).html());
+_e.onTimeChange(_d,_e);
+});
+$(this).css({"cursor":"pointer","width":(100/_17)+"%","text-align":"center","overflow":"hidden"});
+});
+}
+if(_10.showSecond&&_10.secondGrid>0){
+var _1d=100*_18*_10.secondGrid/(_13-_10.secondMin);
+$tp.find(".ui_tpicker_second table").css({"width":_1d+"%","margin-left":(_1d/(-2*_18))+"%","border-collapse":"collapse"});
+$tp.find(".ui_tpicker_second td").each(function(_20){
+$(this).click(function(){
+_e.second_slider.slider("option","value",$(this).html());
+_e.onTimeChange(_d,_e);
+});
+$(this).css({"cursor":"pointer","width":(100/_18)+"%","text-align":"center","overflow":"hidden"});
+});
+}
+_f.find(".ui-datepicker-calendar").after($tp);
+_e.$timeObj=$("#ui_tpicker_time_"+_d.id);
+if(_d!==null){
+var _21=_e.timeDefined;
+_e.onTimeChange(_d,_e);
+_e.timeDefined=_21;
+}
+}
+},onTimeChange:function(_22,_23){
+var _24=(_23.hour_slider)?_23.hour_slider.slider("value"):_23.hour;
+var _25=(_23.minute_slider)?_23.minute_slider.slider("value"):_23.minute;
+var _26=(_23.second_slider)?_23.second_slider.slider("value"):_23.second;
+var _27=(_24<11.5)?"AM":"PM";
+_24=(_24>=11.5&&_24<12)?12:_24;
+var _28=false;
+if(_23.hour!=_24||_23.minute!=_25||_23.second!=_26||(_23.ampm.length>0&&_23.ampm!=_27)){
+_28=true;
+}
+_23.hour=parseFloat(_24).toFixed(0);
+_23.minute=parseFloat(_25).toFixed(0);
+_23.second=parseFloat(_26).toFixed(0);
+_23.ampm=_27;
+_23.formatTime(_23);
+if(_23.$timeObj){
+_23.$timeObj.text(_23.formattedTime);
+}
+if(_28){
+_23.updateDateTime(_22,_23);
+_23.timeDefined=true;
+}
+},formatTime:function(_29){
+var _2a=_29.defaults.timeFormat.toString();
+var _2b=((_29.ampm=="AM")?(_29.hour):(_29.hour%12));
+_2b=(Number(_2b)===0)?12:_2b;
+if(_29.defaults.ampm===true){
+_2a=_2a.toString().replace(/hh/g,((_2b<10)?"0":"")+_2b).replace(/h/g,_2b).replace(/mm/g,((_29.minute<10)?"0":"")+_29.minute).replace(/m/g,_29.minute).replace(/ss/g,((_29.second<10)?"0":"")+_29.second).replace(/s/g,_29.second).replace(/TT/g,_29.ampm.toUpperCase()).replace(/tt/g,_29.ampm.toLowerCase()).replace(/T/g,_29.ampm.charAt(0).toUpperCase()).replace(/t/g,_29.ampm.charAt(0).toLowerCase());
+}else{
+_2a=_2a.toString().replace(/hh/g,((_29.hour<10)?"0":"")+_29.hour).replace(/h/g,_29.hour).replace(/mm/g,((_29.minute<10)?"0":"")+_29.minute).replace(/m/g,_29.minute).replace(/ss/g,((_29.second<10)?"0":"")+_29.second).replace(/s/g,_29.second);
+_2a=$.trim(_2a.replace(/t/gi,""));
+}
+_29.formattedTime=_2a;
+return _29.formattedTime;
+},updateDateTime:function(_2c,_2d){
+var dt=new Date(_2c.selectedYear,_2c.selectedMonth,_2c.selectedDay);
+var _2e=$.datepicker._get(_2c,"dateFormat");
+var _2f=$.datepicker._getFormatConfig(_2c);
+this.formattedDate=$.datepicker.formatDate(_2e,(dt===null?new Date():dt),_2f);
+var _30=this.formattedDate;
+var _31=((dt!==null&&_2d.timeDefined)!==true)?false:true;
+if(this.defaults.timeOnly===true){
+_30=this.formattedTime;
+}else{
+if(this.defaults.timeOnly!==true&&(this.defaults.alwaysSetTime||_31)){
+if((this.$altInput)&&this.$altInput!=null){
+this.$altInput.val(this.formattedTime);
+}else{
+_30+=" "+this.formattedTime;
+}
+}
+}
+this.formattedDateTime=_30;
+if(!_2c.inline&&this.$input){
+this.$input.val(_30);
+this.$input.trigger("change");
+}
+},setDefaults:function(_32){
+_33(this.defaults,_32||{});
+return this;
+}};
+jQuery.fn.datetimepicker=function(o){
+var _34=(o===undefined?{}:o);
+var _35=$(this);
+if(typeof (o)=="string"){
+if(o=="setDate"){
+return _35.datepicker(o,arguments[1]);
+}
+if(o=="options"&&typeof (arguments[1])=="string"){
+return _35.datepicker(o,arguments[1],arguments[2]);
+}
+if(o=="dialog"){
+return _35.datepicker(o,arguments[1],arguments[2],arguments[3],arguments[4]);
+}
+return _35.datepicker(o);
+}
+var tp=new _2();
+var _36={};
+for(var _37 in tp.defaults){
+var _38=_35.attr("time:"+_37);
+if(_38){
+try{
+_36[_37]=eval(_38);
+}
+catch(err){
+_36[_37]=_38;
+}
+}
+}
+tp.defaults=$.extend(tp.defaults,_36);
+var _39=function(_3a,_3b){
+tp.hour=tp.defaults.hour;
+tp.minute=tp.defaults.minute;
+tp.second=tp.defaults.second;
+tp.ampm="";
+tp.$input=$(_3a);
+if(_34.altField!=undefined&&_34.altField!=""){
+tp.$altInput=$($.datepicker._get(_3b,"altField"));
+}
+tp.inst=_3b;
+tp.addTimePicker(_3b);
+if($.isFunction(_34.beforeShow)){
+_34.beforeShow(_3a,_3b);
+}
+};
+var _3c=function(_3d,_3e,_3f){
+tp.updateDateTime(_3f,tp);
+if($.isFunction(_34.onChangeMonthYear)){
+_34.onChangeMonthYear(_3d,_3e,_3f);
+}
+};
+var _40=function(_41,_42){
+if(tp.timeDefined===true&&_35.val()!=""){
+tp.updateDateTime(_42,tp);
+}
+if($.isFunction(_34.onClose)){
+_34.onClose(_41,_42);
+}
+};
+if((_34.altField)&&_34.altField!=null){
+var me=$(_34.altField);
+me.css({"cursor":"pointer"});
+me.focus(function(){
+_35.trigger("focus");
+});
+}
+tp.defaults=$.extend({},tp.defaults,_34,{beforeShow:_39,onChangeMonthYear:_3c,onClose:_40,timepicker:tp});
+return _35.datepicker(tp.defaults);
+};
+jQuery.fn.timepicker=function(_43){
+if(typeof _43=="object"){
+_43=$.extend(_43,{timeOnly:true});
+}
+return $(this).datetimepicker(_43,arguments[1],arguments[2],arguments[3],arguments[4]);
+};
+$.datepicker._base_selectDate=$.datepicker._selectDate;
+$.datepicker._selectDate=function(id,_44){
+var _45=$(id);
+var _46=this._getInst(_45[0]);
+var _47=$.datepicker._get(_46,"timepicker");
+if(_47){
+_46.inline=true;
+_46.stay_open=true;
+$.datepicker._base_selectDate(id,_44);
+_46.stay_open=false;
+_46.inline=false;
+this._notifyChange(_46);
+this._updateDatepicker(_46);
+}else{
+$.datepicker._base_selectDate(id,_44);
+}
+};
+$.datepicker._base_updateDatepicker=$.datepicker._updateDatepicker;
+$.datepicker._updateDatepicker=function(_48){
+if(typeof (_48.stay_open)!=="boolean"||_48.stay_open===false){
+this._base_updateDatepicker(_48);
+this._beforeShow(_48.input,_48);
+}
+};
+$.datepicker._beforeShow=function(_49,_4a){
+var _4b=this._get(_4a,"beforeShow");
+if(_4b){
+_4a.stay_open=true;
+_4b.apply((_4a.input?_4a.input[0]:null),[_4a.input,_4a]);
+_4a.stay_open=false;
+}
+};
+$.datepicker._base_doKeyPress=$.datepicker._doKeyPress;
+$.datepicker._doKeyPress=function(_4c){
+var _4d=$.datepicker._getInst(_4c.target);
+var _4e=$.datepicker._get(_4d,"timepicker");
+if(_4e){
+if($.datepicker._get(_4d,"constrainInput")){
+var _4f=$.datepicker._possibleChars($.datepicker._get(_4d,"dateFormat"));
+var chr=String.fromCharCode(_4c.charCode===undefined?_4c.keyCode:_4c.charCode);
+var _50=chr.toLowerCase();
+return _4c.ctrlKey||(chr<" "||!_4f||_4f.indexOf(chr)>-1||_4c.keyCode==58||_4c.keyCode==32||chr==":"||chr==" "||_50=="a"||_50=="p"||_50=="m");
+}
+}else{
+return $.datepicker._base_doKeyPress(_4c);
+}
+};
+$.datepicker._base_gotoToday=$.datepicker._gotoToday;
+$.datepicker._gotoToday=function(id){
+$.datepicker._base_gotoToday(id);
+var _51=$(id);
+var _52=this._getInst(_51[0]);
+this._setTime(_52,new Date());
+};
+$.datepicker._setTime=function(_53,_54){
+var _55=$.datepicker._get(_53,"timepicker");
+if(_55){
+var _56=_54.getHours();
+var _57=_54.getMinutes();
+var _58=_54.getSeconds();
+if((_56<_55.defaults.hourMin||_56>_55.defaults.hourMax)||(_57<_55.defaults.minuteMin||_57>_55.defaults.minuteMax)||(_58<_55.defaults.secondMin||_58>_55.defaults.secondMax)){
+_56=_55.defaults.hourMin;
+_57=_55.defaults.minuteMin;
+_58=_55.defaults.secondMin;
+}
+if(_55.hour_slider&&_55.minute_slider&&_55.second_slider){
+_55.hour_slider.slider("value",_56);
+_55.minute_slider.slider("value",_57);
+_55.second_slider.slider("value",_58);
+}else{
+_55.hour=_56;
+_55.minute=_57;
+_55.second=_58;
+}
+_55.onTimeChange(_53,_55);
+}
+};
+$.datepicker._base_setDate=$.datepicker._setDate;
+$.datepicker._setDate=function(_59,_5a,_5b){
+var _5c=$.datepicker._get(_59,"timepicker");
+var _5d=new Date(_5a.getYear(),_5a.getMonth(),_5a.getDay(),_5a.getHours(),_5a.getMinutes(),_5a.getSeconds());
+$.datepicker._base_setDate(_59,_5a,_5b);
+if(_5c){
+this._setTime(_59,_5d);
+}
+};
+$.datepicker._base_getDate=$.datepicker._getDate;
+$.datepicker._getDate=function(_5e){
+var _5f=$.datepicker._get(_5e,"timepicker");
+if(_5f){
+var _60=(!_5e.currentYear||(_5e.input&&_5e.input.val()=="")?null:this._daylightSavingAdjust(new Date(_5e.currentYear,_5e.currentMonth,_5e.currentDay,_5f.hour,_5f.minute,_5f.second)));
+return _60;
+}
+return $.datepicker._base_getDate(_5e);
+};
+function _33(_61,_62){
+$.extend(_61,_62);
+for(var _63 in _62){
+if(_62[_63]==null||_62[_63]==undefined){
+_61[_63]=_62[_63];
+}
+}
+return _61;
+};
+$.timepicker=new _2(true);
+})(jQuery);
+

Propchange: ofbiz/branches/jquery/framework/images/webapp/images/jquery/plugins/datetimepicker/jquery-ui-timepicker-addon-0.7.2.min.js
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ofbiz/branches/jquery/framework/images/webapp/images/jquery/plugins/datetimepicker/jquery-ui-timepicker-addon-0.7.2.min.js
------------------------------------------------------------------------------
    svn:keywords = Date Rev Author URL Id

Propchange: ofbiz/branches/jquery/framework/images/webapp/images/jquery/plugins/datetimepicker/jquery-ui-timepicker-addon-0.7.2.min.js
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Modified: ofbiz/branches/jquery/specialpurpose/ecommerce/widget/CommonScreens.xml
URL: http://svn.apache.org/viewvc/ofbiz/branches/jquery/specialpurpose/ecommerce/widget/CommonScreens.xml?rev=1029425&r1=1029424&r2=1029425&view=diff
==============================================================================
--- ofbiz/branches/jquery/specialpurpose/ecommerce/widget/CommonScreens.xml (original)
+++ ofbiz/branches/jquery/specialpurpose/ecommerce/widget/CommonScreens.xml Sun Oct 31 17:23:39 2010
@@ -42,8 +42,8 @@ under the License.
                 <set field="layoutSettings.javaScripts[]" value="/images/fieldlookup.js" global="true"/>
                 <set field="layoutSettings.javaScripts[]" value="/images/selectall.js" global="true"/>
 
+                <set field="layoutSettings.javaScripts[+0]" value="/images/jquery/plugins/datetimepicker/jquery-ui-timepicker-addon-0.7.2.min.js" global="true"/>
                 <set field="layoutSettings.javaScripts[+0]" value="/images/jquery/ui/js/jquery-ui-1.8.2.custom.min.js" global="true"/>
-                <set field="layoutSettings.javaScripts[+0]" value="/images/jquery/plugins/datetimepicker/jquery-ui-timepicker-addon-0.5.js" global="true"/>
                 <set field="layoutSettings.javaScripts[+0]" value="/images/jquery/plugins/validate/jquery.validate.min.js" global="true"/>
                 <set field="layoutSettings.javaScripts[+0]" value="/images/jquery/ui/development-bundle/ui/jquery.ui.datepicker.js" global="true"/>
                 <set field="initialLocale" type="String" value="${parameters.userLogin.lastLocale}" default-value="${groovy:locale.toString()}"/>
@@ -257,8 +257,8 @@ under the License.
                 <set field="layoutSettings.javaScripts[]" value="/images/fieldlookup.js" global="true"/>
                 <set field="layoutSettings.javaScripts[]" value="/images/selectall.js" global="true"/>
 
+                <set field="layoutSettings.javaScripts[+0]" value="/images/jquery/plugins/datetimepicker/jquery-ui-timepicker-addon-0.7.2.min.js" global="true"/>
                 <set field="layoutSettings.javaScripts[+0]" value="/images/jquery/ui/js/jquery-ui-1.8.2.custom.min.js" global="true"/>
-                <set field="layoutSettings.javaScripts[+0]" value="/images/jquery/plugins/datetimepicker/jquery-ui-timepicker-addon-0.5.js" global="true"/>
                 <set field="layoutSettings.javaScripts[+0]" value="/images/jquery/plugins/validate/jquery.validate.min.js" global="true"/>
                 <set field="layoutSettings.javaScripts[+0]" value="/images/jquery/ui/development-bundle/ui/jquery.ui.datepicker.js" global="true"/>
                 <set field="initialLocale" type="String" value="${parameters.userLogin.lastLocale}" default-value="${groovy:locale.toString()}"/>

Modified: ofbiz/branches/jquery/specialpurpose/webpos/widget/CommonScreens.xml
URL: http://svn.apache.org/viewvc/ofbiz/branches/jquery/specialpurpose/webpos/widget/CommonScreens.xml?rev=1029425&r1=1029424&r2=1029425&view=diff
==============================================================================
--- ofbiz/branches/jquery/specialpurpose/webpos/widget/CommonScreens.xml (original)
+++ ofbiz/branches/jquery/specialpurpose/webpos/widget/CommonScreens.xml Sun Oct 31 17:23:39 2010
@@ -43,8 +43,8 @@ under the License.
                 <set field="layoutSettings.javaScripts[+0]" value="/images/fieldlookup.js" global="true"/>
                 <set field="layoutSettings.javaScripts[+0]" value="/images/selectall.js" global="true"/>
 
+                <set field="layoutSettings.javaScripts[+0]" value="/images/jquery/plugins/datetimepicker/jquery-ui-timepicker-addon-0.7.2.min.js" global="true"/>
                 <set field="layoutSettings.javaScripts[+0]" value="/images/jquery/ui/js/jquery-ui-1.8.2.custom.min.js" global="true"/>
-                <set field="layoutSettings.javaScripts[+0]" value="/images/jquery/plugins/datetimepicker/jquery-ui-timepicker-addon-0.5.js" global="true"/>
                 <set field="layoutSettings.javaScripts[+0]" value="/images/jquery/plugins/validate/jquery.validate.min.js" global="true"/>
                 <set field="layoutSettings.javaScripts[+0]" value="/images/jquery/ui/development-bundle/ui/jquery.ui.datepicker.js" global="true"/>
                 <set field="initialLocale" type="String" value="${parameters.userLogin.lastLocale}" default-value="${groovy:locale.toString()}"/>

Modified: ofbiz/branches/jquery/themes/bizznesstime/webapp/bizznesstime/css/style.css
URL: http://svn.apache.org/viewvc/ofbiz/branches/jquery/themes/bizznesstime/webapp/bizznesstime/css/style.css?rev=1029425&r1=1029424&r2=1029425&view=diff
==============================================================================
--- ofbiz/branches/jquery/themes/bizznesstime/webapp/bizznesstime/css/style.css (original)
+++ ofbiz/branches/jquery/themes/bizznesstime/webapp/bizznesstime/css/style.css Sun Oct 31 17:23:39 2010
@@ -2051,6 +2051,16 @@ height:22px;
 .ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header { border-right-width:0; border-left-width:1px; }
 .ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header { border-right-width:0; border-left-width:1px; }
 
+/* css for timepicker */
+.ui-timepicker-div .ui-widget-header{ margin-bottom: 8px; }
+.ui-timepicker-div dl{ text-align: left; }
+.ui-timepicker-div dl dt{ height: 25px; }
+.ui-timepicker-div dl dd{ margin: -25px 0 10px 65px; }
+.ui-timepicker-div .ui_tpicker_hour div { padding-right: 2px; }
+.ui-timepicker-div .ui_tpicker_minute div { padding-right: 6px; }
+.ui-timepicker-div .ui_tpicker_second div { padding-right: 6px; }
+.ui-timepicker-div td { font-size: 90%; }
+
 /* IE6 IFRAME FIX (taken from datepicker 1.5.3 */
 .ui-datepicker-cover {
     display: none; /*sorry for IE5*/

Modified: ofbiz/branches/jquery/themes/bluelight/webapp/bluelight/style.css
URL: http://svn.apache.org/viewvc/ofbiz/branches/jquery/themes/bluelight/webapp/bluelight/style.css?rev=1029425&r1=1029424&r2=1029425&view=diff
==============================================================================
--- ofbiz/branches/jquery/themes/bluelight/webapp/bluelight/style.css (original)
+++ ofbiz/branches/jquery/themes/bluelight/webapp/bluelight/style.css Sun Oct 31 17:23:39 2010
@@ -2615,6 +2615,16 @@ height:22px;
 .ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header { border-right-width:0; border-left-width:1px; }
 .ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header { border-right-width:0; border-left-width:1px; }
 
+/* css for timepicker */
+.ui-timepicker-div .ui-widget-header{ margin-bottom: 8px; }
+.ui-timepicker-div dl{ text-align: left; }
+.ui-timepicker-div dl dt{ height: 25px; }
+.ui-timepicker-div dl dd{ margin: -25px 0 10px 65px; }
+.ui-timepicker-div .ui_tpicker_hour div { padding-right: 2px; }
+.ui-timepicker-div .ui_tpicker_minute div { padding-right: 6px; }
+.ui-timepicker-div .ui_tpicker_second div { padding-right: 6px; }
+.ui-timepicker-div td { font-size: 90%; }
+
 /* IE6 IFRAME FIX (taken from datepicker 1.5.3 */
 .ui-datepicker-cover {
     display: none; /*sorry for IE5*/

Modified: ofbiz/branches/jquery/themes/droppingcrumbs/webapp/droppingcrumbs/css/style.css
URL: http://svn.apache.org/viewvc/ofbiz/branches/jquery/themes/droppingcrumbs/webapp/droppingcrumbs/css/style.css?rev=1029425&r1=1029424&r2=1029425&view=diff
==============================================================================
--- ofbiz/branches/jquery/themes/droppingcrumbs/webapp/droppingcrumbs/css/style.css (original)
+++ ofbiz/branches/jquery/themes/droppingcrumbs/webapp/droppingcrumbs/css/style.css Sun Oct 31 17:23:39 2010
@@ -2595,6 +2595,16 @@ height:22px;
 .ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header { border-right-width:0; border-left-width:1px; }
 .ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header { border-right-width:0; border-left-width:1px; }
 
+/* css for timepicker */
+.ui-timepicker-div .ui-widget-header{ margin-bottom: 8px; }
+.ui-timepicker-div dl{ text-align: left; }
+.ui-timepicker-div dl dt{ height: 25px; }
+.ui-timepicker-div dl dd{ margin: -25px 0 10px 65px; }
+.ui-timepicker-div .ui_tpicker_hour div { padding-right: 2px; }
+.ui-timepicker-div .ui_tpicker_minute div { padding-right: 6px; }
+.ui-timepicker-div .ui_tpicker_second div { padding-right: 6px; }
+.ui-timepicker-div td { font-size: 90%; }
+
 /* IE6 IFRAME FIX (taken from datepicker 1.5.3 */
 .ui-datepicker-cover {
     display: none; /*sorry for IE5*/

Modified: ofbiz/branches/jquery/themes/flatgrey/webapp/flatgrey/maincss.css
URL: http://svn.apache.org/viewvc/ofbiz/branches/jquery/themes/flatgrey/webapp/flatgrey/maincss.css?rev=1029425&r1=1029424&r2=1029425&view=diff
==============================================================================
--- ofbiz/branches/jquery/themes/flatgrey/webapp/flatgrey/maincss.css (original)
+++ ofbiz/branches/jquery/themes/flatgrey/webapp/flatgrey/maincss.css Sun Oct 31 17:23:39 2010
@@ -2641,6 +2641,16 @@ margin-left: 6px;
 height:22px;
 }
 
+/* css for timepicker */
+.ui-timepicker-div .ui-widget-header{ margin-bottom: 8px; }
+.ui-timepicker-div dl{ text-align: left; }
+.ui-timepicker-div dl dt{ height: 25px; }
+.ui-timepicker-div dl dd{ margin: -25px 0 10px 65px; }
+.ui-timepicker-div .ui_tpicker_hour div { padding-right: 2px; }
+.ui-timepicker-div .ui_tpicker_minute div { padding-right: 6px; }
+.ui-timepicker-div .ui_tpicker_second div { padding-right: 6px; }
+.ui-timepicker-div td { font-size: 90%; }
+
 /* RTL support */
 .ui-datepicker-rtl { direction: rtl; }
 .ui-datepicker-rtl .ui-datepicker-prev { right: 2px; left: auto; }

Modified: ofbiz/branches/jquery/themes/multiflex/webapp/multiflex/style.css
URL: http://svn.apache.org/viewvc/ofbiz/branches/jquery/themes/multiflex/webapp/multiflex/style.css?rev=1029425&r1=1029424&r2=1029425&view=diff
==============================================================================
--- ofbiz/branches/jquery/themes/multiflex/webapp/multiflex/style.css (original)
+++ ofbiz/branches/jquery/themes/multiflex/webapp/multiflex/style.css Sun Oct 31 17:23:39 2010
@@ -2717,6 +2717,16 @@ margin-left: 6px;
 height:22px;
 }
 
+/* css for timepicker */
+.ui-timepicker-div .ui-widget-header{ margin-bottom: 8px; }
+.ui-timepicker-div dl{ text-align: left; }
+.ui-timepicker-div dl dt{ height: 25px; }
+.ui-timepicker-div dl dd{ margin: -25px 0 10px 65px; }
+.ui-timepicker-div .ui_tpicker_hour div { padding-right: 2px; }
+.ui-timepicker-div .ui_tpicker_minute div { padding-right: 6px; }
+.ui-timepicker-div .ui_tpicker_second div { padding-right: 6px; }
+.ui-timepicker-div td { font-size: 90%; }
+
 /* RTL support */
 .ui-datepicker-rtl { direction: rtl; }
 .ui-datepicker-rtl .ui-datepicker-prev { right: 2px; left: auto; }

Modified: ofbiz/branches/jquery/themes/tomahawk/webapp/tomahawk/css/style.css
URL: http://svn.apache.org/viewvc/ofbiz/branches/jquery/themes/tomahawk/webapp/tomahawk/css/style.css?rev=1029425&r1=1029424&r2=1029425&view=diff
==============================================================================
--- ofbiz/branches/jquery/themes/tomahawk/webapp/tomahawk/css/style.css (original)
+++ ofbiz/branches/jquery/themes/tomahawk/webapp/tomahawk/css/style.css Sun Oct 31 17:23:39 2010
@@ -2840,11 +2840,6 @@ button.ui-button::-moz-focus-inner { bor
 .ui-datepicker .ui-datepicker-buttonpane button { float: right; margin: .5em .2em .4em; cursor: pointer; padding: .2em .6em .3em .6em; width:auto; overflow:visible; }
 .ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current { float:left; }
 
-/* css for timepicker */
-#ui-timepicker-div dl{ text-align: left; }
-#ui-timepicker-div dl dt{ height: 25px; }
-#ui-timepicker-div dl dd{ margin: -25px 0 10px 65px; }
-
 /* with multiple calendars */
 .ui-datepicker.ui-datepicker-multi { width:auto; }
 .ui-datepicker-multi .ui-datepicker-group { float:left; }
@@ -2902,3 +2897,13 @@ height:22px;
 ----------------------------------*/
 .ui-progressbar { height:2em; text-align: left; }
 .ui-progressbar .ui-progressbar-value {background-image: url(../images/pbar-ani.gif); margin: -1px; height:100%; }
+
+/* css for timepicker */
+.ui-timepicker-div .ui-widget-header{ margin-bottom: 8px; }
+.ui-timepicker-div dl{ text-align: left; }
+.ui-timepicker-div dl dt{ height: 25px; }
+.ui-timepicker-div dl dd{ margin: -25px 0 10px 65px; }
+.ui-timepicker-div .ui_tpicker_hour div { padding-right: 2px; }
+.ui-timepicker-div .ui_tpicker_minute div { padding-right: 6px; }
+.ui-timepicker-div .ui_tpicker_second div { padding-right: 6px; }
+.ui-timepicker-div td { font-size: 90%; }
\ No newline at end of file