Browse Source

Only safe user settings if form is dirty.

pull/108/head
Simon Eisenmann 12 years ago
parent
commit
665618c6a7
  1. 28
      static/js/directives/settings.js
  2. 2
      static/partials/settings.html

28
static/js/directives/settings.js

@ -52,21 +52,29 @@ define(['jquery', 'underscore', 'text!partials/settings.html'], function($, _, t
}); });
$scope.saveSettings = function() { $scope.saveSettings = function() {
var user = $scope.user; var form = $scope.settingsform;
$scope.update(user); if (form.$valid && form.$dirty) {
$scope.layout.settings = false; var user = $scope.user;
if ($scope.rememberSettings) { $scope.update(user);
userSettingsData.save(user); if ($scope.rememberSettings) {
localStorage.setItem("mediastream-language", user.settings.language || ""); userSettingsData.save(user);
} else { localStorage.setItem("mediastream-language", user.settings.language || "");
userSettingsData.clear(); } else {
localStorage.removeItem("mediastream-language"); userSettingsData.clear();
localStorage.removeItem("mediastream-access-code"); localStorage.removeItem("mediastream-language");
localStorage.removeItem("mediastream-access-code");
}
form.$setPristine();
} }
$scope.layout.settings = false;
}; };
$scope.cancelSettings = function() { $scope.cancelSettings = function() {
var form = $scope.settingsform;
$scope.reset(); $scope.reset();
if (form.$dirty) {
form.$setPristine();
}
$scope.layout.settings = false; $scope.layout.settings = false;
}; };

2
static/partials/settings.html

@ -1,6 +1,6 @@
<div class="settings nicescroll"> <div class="settings nicescroll">
<div class="version">{{version}}</div> <div class="version">{{version}}</div>
<div class="form-horizontal" on-enter="saveSettings(user)" on-escape="reset()" <div ng-form="settingsform" class="form-horizontal" on-enter="saveSettings(user)" on-escape="cancelSettings()"
<fieldset> <fieldset>
<settings-profile> <settings-profile>

Loading…
Cancel
Save