//specialized js for workout datepicker (correctly handles user settings; use of 'today')

function initDatepicker() {
    var date_fld = $("#id_date");

    var dateFormat = function() {
        return _MMF_GLOBAL.user.date_format;
    };

    if (date_fld.val() === "") {
        date_fld.val($.datepicker.formatDate(dateFormat(), new Date()));
    }

    date_fld.datepicker({
        showOn: 'both',
        showButtonPanel: true,
        buttonImage: '/public/images/core/mmf_datepicker_icon.gif',
        buttonImageOnly: true,
        dateFormat: dateFormat()
    })

    date_fld.attr("readonly", "readonly");

    function validateDate(){
        var sel_date = date_fld.datepicker('getDate');
        var td_date = new Date();

        if (sel_date>td_date){
                //date is in the future
                $("#workout_description_fields").hide();
                $('#training_plan_info').show();
                $("input:#id_completed").attr('checked', false);
            } else {
                //date is current
                $("#workout_description_fields").show();
                $('#training_plan_info').hide();
                $("input:#id_completed").attr('checked', true);
        };
    };
    
    validateDate();

    date_fld.live("change", function(e){
            validateDate();
    });
     
    //TIME functions
    $(".hour, .minute, .second").live("keyup", function(e){
        e.preventDefault();
        forceInteger($(this).attr('id'));
    });

    $.datepicker._gotoToday = function(id) {
        var target = $(id),
            inst = this._getInst(target[0]);
        if (this._get(inst, 'gotoCurrent') && inst.currentDay) {
                inst.selectedDay = inst.currentDay;
                inst.drawMonth = inst.selectedMonth = inst.currentMonth;
                inst.drawYear = inst.selectedYear = inst.currentYear;
        }
        else {
                var date = new Date();
                inst.selectedDay = date.getDate();
                inst.drawMonth = inst.selectedMonth = date.getMonth();
                inst.drawYear = inst.selectedYear = date.getFullYear();
                this._setDateDatepicker(target, date);
                this._selectDate(id, this._getDateDatepicker(target));
        }
        this._notifyChange(inst);
        this._adjustDate(target);
    }

}

