/* 
 * for Date Time Picker
 */

//---------------- Show Picker ---------------//
function dateFormat(ct) {
    var data = ct.toString().split(" ");
    var yb;
    var m;
    switch (data[0]) {
        // youbi
        case 'Mon':
            yb = '月';
            break;
        case 'Tue':
            yb = '火';
            break;
        case 'Wed':
            yb = '水';
            break;
        case 'Thu':
            yb = '木';
            break;
        case 'Fri':
            yb = '金';
            break;
        case 'Sat':
            yb = '土';
            break;
        case 'Sun':
            yb = '日';
            break;
        default:
            yb = data[0];
    }
    switch (data[1]) {
        // Month
        case 'Jan':
            m = '01';
            break;
        case 'Feb':
            m = '02';
            break;
        case 'Mar':
            m = '03';
            break;
        case 'Apr':
            m = '04';
            break;
        case 'May':
            m = '05';
            break;
        case 'Jun':
            m = '06';
            break;
        case 'Jul':
            m = '07';
            break;
        case 'Aug':
            m = '08';
            break;
        case 'Sep':
            m = '09';
            break;
        case 'Oct':
            m = '10';
            break;
        case 'Nov':
            m = '11';
            break;
        case 'Dec':
            m = '12';
            break;
        default:
            m = data[1];
    }
    var d = data[2];
    var y = data[3];

    var date = y + '/' + m + '/' + d + ' (' + yb + ')';
    return date;
};

function timeFormat(ct) {
    var data = ct.toString().split(" ");
    var time = data[4];
    var times = time.split(":");
    var t = times[0] + ":" + times[1];
    return t;
};
    
$(function() {
    
    // dtp
    $.datetimepicker.setLocale('ja');
    var now = new Date();
    var y = now.getYear() + 1900;
    
    var prop1 = function(id) {
        return {
            lang: 'ja',
            format: 'Y/m/d',
            timepicker: false,
            minDate: 0,
            yearStart: y,
            yearEnd: y + 1,
            onSelectDate: function(ct) {
                $('#' + id).val(dateFormat(ct));
            }
        };
    };
    
    var prop2 = function(id) {
        return {
            lang: 'ja',
            format: 'H:i',
            datepicker: false,
            allowTimes:[
                '10:30', '11:00',
                '13:00', '13:30', '14:00', '14:30',
                '15:00', '15:30', '16:00', '16:30',
                '17:00', '17:30', '18:00', '18:30', '19:00'
            ],
            validateOnBlur: false,
            onSelectTime: function(ct) {
                $('#' + id).val(timeFormat(ct));
            }
            //defaultTime: '16:00'
        };
    };
    
//    console.log(prop1);
    // date
    $('#exp-d1-btn, #exp-d2-btn, #exp-d3-btn, #date-input1-btn, #date-input2-btn, #date-input3-btn, #post-date-btn').on('click', function () {
        var id = $(this).prop('id').replace('-btn', '');
        $(this).datetimepicker(prop1(id));
        $(this).datetimepicker('show');
    });
    
    
    // start time
    $('#exp-s1-btn, #exp-s2-btn, #exp-s3-btn, #time-s-input1-btn, #time-s-input2-btn, #time-s-input3-btn').on('click', function () {
        var id = $(this).prop('id').replace('-btn', '');
        $(this).datetimepicker(prop2(id));
        $(this).datetimepicker('show');
    });
    
    // end time
    $('#exp-e1-btn, #exp-e2-btn, #exp-e3-btn, #time-e-input1-btn, #time-e-input2-btn, #time-e-input3-btn').on('click', function () {
        var id = $(this).prop('id').replace('-btn', '');
        $(this).datetimepicker(prop2(id));
        $(this).datetimepicker('show');
    });
    
    // date
    $('.datepicker').on('click', function () {
        $(this).datetimepicker(prop1(this));
        $(this).datetimepicker('show');
    });
    
    
    // time
    $('.timepicker').on('click', function () {
        $(this).datetimepicker(prop2(this));
        $(this).datetimepicker('show');
    });
    
    // clear date and time
    $('.cleardt').on('click', function() {
        $('.datepicker').val('');
        $('.timepicker').val('');
    });
    
    // clear form
    $('.clearform').on('click', function() {
        var id = $(this).attr('data');
        $('#exp-d' + id).val('');
        $('#exp-s' + id).val('');
        $('#exp-e' + id).val('');
    });
    
});
