Skip to content

Instantly share code, notes, and snippets.

@fujimura
Created February 1, 2017 04:52
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save fujimura/c15074cbfb7d5d6d861f3bea13789141 to your computer and use it in GitHub Desktop.
Save fujimura/c15074cbfb7d5d6d861f3bea13789141 to your computer and use it in GitHub Desktop.
// @flow
import React from 'react';
const splitTimeComponent = (t: Date): number[] => {
return [
t.getFullYear(),
t.getMonth(),
t.getDate(),
t.getHours(),
t.getMinutes()
];
};
export default splitTimeComponent;
type Props = {
timestamp: number;
model: string;
attribute: string;
}
// TODO Write test
const HiddenInputsForDatetimeSelect = ({timestamp, model, attribute}: Props): React.Element<*> => {
const [year, month, date, hours, minutes] = splitTimeComponent(new Date(timestamp * 1000));
return (
<div>
<input type='hidden' value={year} id={`${model}_${attribute}_1i`} name={`${model}[${attribute}(1i)]`}/>
<input type='hidden' value={month + 1} id={`${model}_${attribute}_2i`} name={`${model}[${attribute}(2i)]`}/>
<input type='hidden' value={date} id={`${model}_${attribute}_3i`} name={`${model}[${attribute}(3i)]`}/>
<input type='hidden' value={hours} id={`${model}_${attribute}_4i`} name={`${model}[${attribute}(4i)]`}/>
<input type='hidden' value={minutes} id={`${model}_${attribute}_5i`} name={`${model}[${attribute}(5i)]`}/>
</div>
);
};
export default HiddenInputsForDatetimeSelect;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment