alexhtang

9:50PM

Mar 25th, 2019
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.51 KB | None | 0 0
  1. const contentNode = document.getElementById('contents');
  2.  
  3. class BodyStats extends React.Component {
  4. render() {
  5. const borderedStyle = {border: "1px solid black", padding: 6};
  6. return (
  7. <div class = "row">
  8. </div>
  9. )
  10. }
  11. }
  12.  
  13. // class BodyRow extends React.Component {
  14. // render() {
  15. // const borderedStyle = {border: "1px solid black", padding: 4};
  16. // return (
  17. // <tr>
  18. // <td style={borderedStyle}>{this.props.body_height}</td>
  19. // <td style={borderedStyle}>{this.props.body_weight}</td>
  20. // <td style={borderedStyle}>{this.props.body_age}</td>
  21. // <td style={borderedStyle}>{this.props.body_gender}</td>
  22. // </tr>
  23. // )
  24. // }
  25. // }
  26.  
  27. class Description extends React.Component {
  28. render() {
  29. return (
  30. <div style={{textAlign: "center"}}>This is a placeholder for a description of the webapp.</div>
  31. )
  32. }
  33. }
  34.  
  35. class AddLogIn extends React.Component {
  36.  
  37. handleSubmit(e) {
  38. this.props.update();
  39. e.preventDefault();
  40. var form = document.forms.updateLogIn;
  41. this.props.createIssue({
  42. username: form.username.value,
  43. password: form.password.value,
  44. });
  45. // clear the form for the next input
  46. form.username.value = ""; form.password.value = "";
  47. }
  48.  
  49. render() {
  50. return (
  51.  
  52. <div style={{textAlign: "center"}}>
  53. <form name="updateLogin" onSubmit={this.handleSubmit}>
  54. <input type="text" name="username" placeholder="Username" />
  55. <input type="text" name="password" placeholder="Password" />
  56. <button>Log In</button>
  57. </form>
  58. </div>
  59. )
  60. }
  61. }
  62.  
  63. class LoggedIn extends React.Component {
  64. handleClick(){
  65. this.props.update();
  66. }
  67.  
  68. render(){
  69. return(
  70. <div style={{textAlign: "center"}}>
  71. <h1>You are logged in!</h1>
  72. <input type="button" value="Log Out" onClick={this.handleClick}></input>
  73. </div>
  74. )
  75. }
  76. }
  77.  
  78. class TitleTest extends React.Component {
  79. render() {
  80. const textStyle = {textAlign: "center"};
  81. return(
  82. <h1 style={{padding: 40, textAlign: "center"}}>Welcome to WYW (Watch Your Weight)</h1>
  83. )
  84. }
  85. }
  86.  
  87. class ButtonTable extends React.Component {
  88. render() {
  89. const borderedStyle = {padding: 6};
  90. return (
  91. <div style={{textAlign: "center"}}>
  92. <button>Meals</button>
  93. {' '}
  94. <button>Nutrition Tracker</button>
  95. {' '}
  96. <button>My Account</button>
  97. {' '}
  98. <button>History</button>
  99. </div>
  100. )
  101. }
  102. }
  103.  
  104. class FitnessTracker extends React.Component {
  105. constructor() {
  106. super();
  107. this.state = {
  108. // logindetails: logindetails,
  109. isLoggedIn: false
  110. };
  111.  
  112. this.update = this.update.bind(this);
  113. }
  114.  
  115. update() {
  116. this.setState({isLoggedIn: !this.state.isLoggedIn});
  117. }
  118.  
  119. render() {
  120. var logIn;
  121. if(this.state.isLoggedIn){
  122. logIn = <LoggedIn />;
  123. }
  124. else{
  125. logIn = <AddLogIn />;
  126. }
  127. return (
  128. <div>
  129. <TitleTest />
  130. <hr />
  131. {logIn}
  132. <hr />
  133. <Description />
  134. <hr/>
  135. <ButtonTable />
  136. </div>
  137. );
  138. }
  139. }
  140.  
  141. ReactDOM.render(<FitnessTracker />, contentNode); // Render the component inside the content Node
Add Comment
Please, Sign In to add comment