diff --git a/SAS/TMSS/frontend/tmss_webapp/src/components/Spreadsheet/DegreeInputmask.js b/SAS/TMSS/frontend/tmss_webapp/src/components/Spreadsheet/DegreeInputmask.js index 320f815503edfbd9d8f203daaa97f21c84ab9af0..66ac10063cc619e3ad4489a96eb10c1f32a16d0e 100644 --- a/SAS/TMSS/frontend/tmss_webapp/src/components/Spreadsheet/DegreeInputmask.js +++ b/SAS/TMSS/frontend/tmss_webapp/src/components/Spreadsheet/DegreeInputmask.js @@ -33,10 +33,10 @@ export default class DegreeInputMask extends Component { render() { return ( - <InputMask mask="99:99:99" value={this.props.value} - placeholder="DD:mm:ss" + <InputMask mask="99:99:99.9999" value={this.props.value} + placeholder="DD:mm:ss.ssss" className="inputmask" - onComplete={this.callbackUpdateAngle} + onChange={this.callbackUpdateAngle} autoFocus ref={input =>{this.input = input}} /> ); diff --git a/SAS/TMSS/frontend/tmss_webapp/src/components/Spreadsheet/TimeInputmask.js b/SAS/TMSS/frontend/tmss_webapp/src/components/Spreadsheet/TimeInputmask.js index d8047ddebd03812dffeaafefc1d4cfe711b8a44a..3b80b7a82e759e61c4a31e4f075bf678fbf6e0e2 100644 --- a/SAS/TMSS/frontend/tmss_webapp/src/components/Spreadsheet/TimeInputmask.js +++ b/SAS/TMSS/frontend/tmss_webapp/src/components/Spreadsheet/TimeInputmask.js @@ -33,10 +33,10 @@ export default class TimeInputMask extends Component { return ( <InputMask value={this.props.value} - mask="99:99:99" - placeholder="HH:mm:ss" + mask="99:99:99.9999" + placeholder="HH:mm:ss.ssss" className="inputmask" - onComplete={this.callbackUpdateAngle} + onChange={this.callbackUpdateAngle} ref={input =>{this.input = input}} /> ); diff --git a/SAS/TMSS/frontend/tmss_webapp/src/layout/_overrides.scss b/SAS/TMSS/frontend/tmss_webapp/src/layout/_overrides.scss index ab16a8fe25ea5667cbcd77dd8ba08c208af9057d..53104f01b6587f21d40c187c02b78c2fc673f8fe 100644 --- a/SAS/TMSS/frontend/tmss_webapp/src/layout/_overrides.scss +++ b/SAS/TMSS/frontend/tmss_webapp/src/layout/_overrides.scss @@ -235,3 +235,9 @@ In Excel View the for Accordion background color override .p-grid { width: -webkit-fill-available; } +.inputmask { + height: 35px; + width: 100px; + text-align: left; + border-color: transparent !important; +} \ No newline at end of file diff --git a/SAS/TMSS/frontend/tmss_webapp/src/utils/validator.js b/SAS/TMSS/frontend/tmss_webapp/src/utils/validator.js index 79107d64b50cb0ccdac9c9c91501dcff1b6c818d..4f4b1b2aba5f259397cbb792d8a9d464433b8946 100644 --- a/SAS/TMSS/frontend/tmss_webapp/src/utils/validator.js +++ b/SAS/TMSS/frontend/tmss_webapp/src/utils/validator.js @@ -1,13 +1,16 @@ const Validator = { validateTime(value) { const splitOutput = value.split(':'); + const seconds = splitOutput[2]?splitOutput[2].split('.')[0].split('.')[0]:splitOutput[2]; + let milliSeconds = value.split('.')[1] || '0000'; + milliSeconds = milliSeconds.padEnd(4,0); if (splitOutput.length < 3) { return false; } else { if (parseInt(splitOutput[0]) > 23 || parseInt(splitOutput[1])>59 || parseInt(splitOutput[2])>59) { return false; } - const timeValue = parseInt(splitOutput[0]*60*60) + parseInt(splitOutput[1]*60) + parseInt(splitOutput[2]); + const timeValue = parseInt(splitOutput[0]*60*60) + parseInt(splitOutput[1]*60) + parseInt(seconds) + milliSeconds/10000; if (timeValue >= 86400) { return false; } @@ -16,13 +19,16 @@ const Validator = { }, validateAngle(value) { const splitOutput = value.split(':'); + const seconds = splitOutput[2]?splitOutput[2].split('.')[0].split('.')[0]:splitOutput[2]; + let milliSeconds = value.split('.')[1] || '0000'; + milliSeconds = milliSeconds.padEnd(4,0); if (splitOutput.length < 3) { return false; } else { if (parseInt(splitOutput[0]) > 90 || parseInt(splitOutput[1])>59 || parseInt(splitOutput[2])>59) { return false; } - const timeValue = parseInt(splitOutput[0]*60*60) + parseInt(splitOutput[1]*60) + parseInt(splitOutput[2]); + const timeValue = parseInt(splitOutput[0]*60*60) + parseInt(splitOutput[1]*60) + parseInt(seconds) + milliSeconds/10000; if (timeValue > 324000) { return false; }