import React,{Component} from 'react'

import { Form, Input, DatePicker,Row, Col,Button,Icon ,Select,TimePicker} from 'antd';

const FormItem = Form.Item;

const InputSize = 'default'
const Option = Select.Option
export default class T13C extends Component
{

    name='13C'
    desp = "Time Indication"
    pattern = "/8c/4!n1!x4!n"
    tno = -1
    keys = [1,2,3,4]
    constructor(props)
    {
        super(props)
    }

    onChange=(index,value)=>
    {
        let obj = {};
        if(!value)
            value = ""
        let objtemp =this.props.value
        
        objtemp = objtemp && objtemp.length? objtemp[0] : {}

        objtemp["s"+index] = value;

        this.keys.forEach(i=>{
            obj['s'+i] = objtemp['s'+i]
        });
        let mval = null 
        if(!obj.s1)
            obj.s1 = undefined
        if(!obj.s3)
            obj.s3 = undefined
        if(obj.s1 || obj.s2  || obj.s3 || obj.s4 )
            mval = `/${obj.s1}/${obj.s2}${obj.s3}${obj.s4}`.replace(/:/g,'')
        this.props.onValue([obj,mval])
    }

    render()
    {
        let value =this.props.value

        let mval = value && value.length? value[1] : ''
        let errmsg = value && value.length==3?value[2]:{}

        value = value && value.length? value[0] : {}

        return (<Row>
            {/*<Col span={1} style={{textAlign:'center'}}><h3 style={{display:'inline-block'}}>/</h3></Col>*/}
            <Col span={6}>
                <FormItem
                    label="Code" 
                    required={this.props.status=='M' || mval?'required':null}
                    help={errmsg.s1} 
                    validateStatus={errmsg.s1?'error':null}
                >
                        <Select allowClear={true} ref="s1" value={value.s1}  placeholder="Code" style={{ width: "100%" }} onChange={val=>this.onChange(1,val)}>
                                        <Option  key="CLSTIME" value="CLSTIME">CLSTIME-CLS Time</Option>
                                        <Option  key="RNCTIME" value="RNCTIME">RNCTIME-Receive Time</Option>
                                        <Option  key="SNDTIME" value="SNDTIME">SNDTIME-Send Time</Option>

                        </Select>
                </FormItem>
            </Col>
            {/*<Col span={1} style={{textAlign:'center'}}><h3 style={{display:'inline-block'}}>/</h3></Col>*/}
            <Col style={{"minWidth":'100px'}} span={6}>
                <FormItem
                    label="Time indication" 
                    required={this.props.status=='M' || mval?'required':null}
                    help={errmsg.s2}
                    validateStatus={errmsg.s2?'error':null}
                >
                        <TimePicker ref="s2" value={value.s2}  placeholder="indication"  format="HHmm" onChange={(time,val)=>this.onChange(2,val)} />
                </FormItem>
            </Col>
            <Col style={{"minWidth":'80px'}} span={6}>
                <FormItem
                    label="Sign" 
                    required={this.props.status=='M' || mval?'required':null}
                    help={errmsg.s3}
                    validateStatus={errmsg.s3?'error':null}
                >
                                    <Select allowClear={true} ref="s3" value={value.s3}  placeholder="Sign" style={{ width: "100%" }} onChange={val=>this.onChange(3,val)}>
                                        <Option  value={'+'}>{"+"}</Option>
                                        <Option  value={'-'}>{"-"}</Option>
                                    </Select>
                </FormItem>
            </Col>
            <Col style={{"minWidth":'100px'}} span={6}>
                <FormItem
                    label="Time offset" 
                    required={this.props.status=='M' || mval?'required':null}
                    help={errmsg.s4}
                    validateStatus={errmsg.s4?'error':null}
                >
                        <TimePicker ref="s4" value={value.s4}  placeholder="offset"  format="HHmm" disabledHours={()=>[14,15,16,17,18,19,20,21,22,23,24]} onChange={(time,val)=>this.onChange(4,val)} />
                </FormItem>
            </Col>
        </Row>)
    }
}