Browse Source

refactor numberOfDays

itizawa 5 years ago
parent
commit
b745b51916
1 changed files with 13 additions and 15 deletions
  1. 13 15
      src/client/js/components/ShareLinkForm.jsx

+ 13 - 15
src/client/js/components/ShareLinkForm.jsx

@@ -14,25 +14,16 @@ class ShareLinkForm extends React.Component {
     super(props);
     this.state = {
       expirationType: 'unlimited',
+      numberOfDays: 7,
       description: '',
     };
 
-    this.handleInputChange = this.handleInputChange.bind(this);
     this.handleChangeExpirationType = this.handleChangeExpirationType.bind(this);
+    this.handleChangeNumberOfDays = this.handleChangeNumberOfDays.bind(this);
     this.handleChangeDescription = this.handleChangeDescription.bind(this);
     this.handleSubmit = this.handleSubmit.bind(this);
   }
 
-  handleInputChange(event) {
-    const target = event.target;
-    const value = target.name === 'isGoing' ? target.checked : target.value;
-    const name = target.name;
-
-    this.setState({
-      [name]: value,
-    });
-  }
-
   /**
    * change expirationType
    * @param {string} expirationType
@@ -41,6 +32,14 @@ class ShareLinkForm extends React.Component {
     this.setState({ expirationType });
   }
 
+  /**
+   * change numberOfDays
+   * @param {number} numberOfDays
+   */
+  handleChangeNumberOfDays(numberOfDays) {
+    this.setState({ numberOfDays });
+  }
+
   /**
    * change description
    * @param {string} description
@@ -88,11 +87,10 @@ class ShareLinkForm extends React.Component {
               <input
                 type="number"
                 min="1"
-                max="7"
                 className="form-control col-4"
-                name="numberOfGuests"
-                value={this.state.numberOfGuests}
-                onChange={this.handleInputChange}
+                name="numberOfDays"
+                value={this.state.numberOfDays}
+                onChange={e => this.handleChangeNumberOfDays(e.target.value)}
               />
               <span className="col-auto">Days</span>
             </div>