 
   setExperience : ->
 
-    @validate()
-    @changeExperience(true)
+    if @isValid()
+      @changeExperience(true)
     return
 
 
   deleteExperience : ->
 
-    @validate()
+    if @isValid()
 
-    domain = @ui.experienceDomain.val()
-    users = @findUsers()
+      domain = @ui.experienceDomain.val()
+      users = @findUsers()
 
-    for user in users
-      experiences = user.get("experiences")
-      if _.isNumber(experiences[domain])
-        delete experiences[domain]
+      for user in users
+        experiences = user.get("experiences")
+        if _.isNumber(experiences[domain])
+          delete experiences[domain]
 
-      user.save("experiences" : experiences)
-      user.trigger("change") #Backbone doesn't support nested models
+        user.save("experiences" : experiences)
+        user.trigger("change") #Backbone doesn't support nested models
+
+        @hideModal()
 
     return
 
 
   changeExperience : (setOnly) ->
 
-    @validate()
+    if @isValid()
 
-    domain = @ui.experienceDomain.val()
-    value = +@ui.experienceValue.val()
-    users = @findUsers()
+      domain = @ui.experienceDomain.val()
+      value = +@ui.experienceValue.val()
+      users = @findUsers()
 
-    for user in users
-      experiences = user.get("experiences")
-      if _.isNumber(experiences[domain]) and not setOnly
-        experiences[domain] += value
-      else
-        experiences[domain] = value
-      user.save("experiences" : experiences)
-      user.trigger("change") #Backbone doesn't support nested models
+      for user in users
+        experiences = user.get("experiences")
+        if _.isNumber(experiences[domain]) and not setOnly
+          experiences[domain] += value
+        else
+          experiences[domain] = value
+        user.save("experiences" : experiences)
+        user.trigger("change") #Backbone doesn't support nested models
+
+        @hideModal()
 
     return
 

    return users


  validate : ->


  hideModal : ->


      <div class="control-group">
        <label class="control-label" for="experience-domain">Domain</label>
        <div class="controls">
          <input type="text" class="input-small" name="experience-domain" autocomplete="off" required>
        </div>
      </div>
      <div class="control-group">
        <label class="control-label" for="experience-value">Value</label>
        <div class="controls">
          <input type="number" class="input-small" name="experience-value" value="0">
        </div>
      </div>
    </div>
    <div class="modal-footer">
      <a href="#" class="increase-experience btn btn-primary">
      Increase Experience
      </a>
      <a href="#" class="set-experience btn btn-primary">
        Set Experience
      </a>
      <a href="#" class="delete-experience btn btn-primary">
        Delete Experience
      </a>
      <a href="#" class="btn" data-dismiss="modal">Cancel</a>
