diff --git a/database/db.js b/database/db.js
index 90fb73a..46f4a5b 100644
--- a/database/db.js
+++ b/database/db.js
@@ -179,6 +179,20 @@ db.updateUserLastLogin = function(id) {
});
};
+db.resetPassword = function(userId, password) {
+ console.log('updateUserLastLogin');
+ var sql = "UPDATE `users` SET `password` = '" + password + "' WHERE(`id` = '" + userId + "')";
+ return new Promise(function(resolve, reject) {
+ client.query(sql, (err, result) => {
+ if (err) {
+ reject(err);
+ } else {
+ resolve(result.affectedRows);
+ }
+ });
+ });
+}
+
db.register = function(user) {
console.log('register');
var sql = "INSERT INTO `users` (`username`, `password`, `email`) VALUES ('" + user.username + "', '" + user.password + "', '" + user.email + "')";
diff --git a/public/index.html b/public/index.html
index 3d9f338..568a7de 100644
--- a/public/index.html
+++ b/public/index.html
@@ -40,6 +40,7 @@
+
diff --git a/public/scripts/app-angular.js b/public/scripts/app-angular.js
index c2839c4..368d09f 100644
--- a/public/scripts/app-angular.js
+++ b/public/scripts/app-angular.js
@@ -37,6 +37,7 @@ app.config(function($stateProvider, $urlRouterProvider, $httpProvider) {
.state('settings', {
url: '/settings',
templateUrl: '/views/settings.html',
+ controller: 'settingsCtr'
})
.state('login', {
url: '/login',
diff --git a/public/scripts/controllers/home-controller.js b/public/scripts/controllers/home-controller.js
index 5653a27..0ae9255 100644
--- a/public/scripts/controllers/home-controller.js
+++ b/public/scripts/controllers/home-controller.js
@@ -1,41 +1,18 @@
app.controller('homeCtr', ['$scope', '$stateParams', '$filter', '$state', '$window', 'bookmarkService', 'pubSubService', function($scope, $stateParams, $filter, $state, $window, bookmarkService, pubSubService) {
console.log('Hello homeCtr......');
- var debug = false;
- if (debug) {
- var params = {
- username: 'luchenqun',
- password: 'fendoubuxi1',
- autoLogin: true,
- };
- bookmarkService.login(params)
- .then((data) => {
- if (data.logined) {
- pubSubService.publish('loginCtr.login', {
- 'login': data.logined,
- });
- $state.go('bookmarks', {
- showStyle: 'navigate',
- })
- } else {
- console.log('login failed......................')
- }
- })
- .catch((err) => console.log('login err', err));
- } else {
- bookmarkService.autoLogin()
- .then((data) => {
- if (data.logined || debug) {
- pubSubService.publish('loginCtr.login', {
- 'login': debug || data.logined,
- });
- $state.go('bookmarks', {
- showStyle: 'navigate',
- })
- } else {
- console.log('autoLogin failed......................')
- }
- })
- .catch((err) => console.log('autoLogin err', err));
- }
+ bookmarkService.autoLogin()
+ .then((data) => {
+ if (data.logined) {
+ pubSubService.publish('loginCtr.login', {
+ 'login': data.logined,
+ });
+ $state.go('bookmarks', {
+ showStyle: 'navigate',
+ })
+ } else {
+ console.log('autoLogin failed......................')
+ }
+ })
+ .catch((err) => console.log('autoLogin err', err));
}]);
diff --git a/public/scripts/controllers/search-controller.js b/public/scripts/controllers/search-controller.js
index b563d9e..cf547be 100644
--- a/public/scripts/controllers/search-controller.js
+++ b/public/scripts/controllers/search-controller.js
@@ -41,7 +41,7 @@ app.controller('searchCtr', ['$scope', '$state', '$stateParams', '$filter', '$wi
if ($scope.searchWord) {
searchBookmarks(searchParams);
} else {
-
+ $state.go('/', {})
}
$scope.jumpToUrl = function(url, id) {
diff --git a/public/scripts/controllers/settings-controller.js b/public/scripts/controllers/settings-controller.js
new file mode 100644
index 0000000..3221315
--- /dev/null
+++ b/public/scripts/controllers/settings-controller.js
@@ -0,0 +1,50 @@
+app.controller('settingsCtr', ['$scope', '$stateParams', '$filter', '$state', '$window', 'bookmarkService', 'pubSubService', function($scope, $stateParams, $filter, $state, $window, bookmarkService, pubSubService) {
+ console.log('Hello settingsCtr......');
+ $scope.form = [true, false];
+ $scope.passwordOrgin = "";
+ $scope.passwordNew1 = "";
+ $scope.passwordNew2 = "";
+
+ $scope.changeForm = function(index) {
+ $scope.form = $scope.form.map(() => false);
+ $scope.form[index] = true;
+ }
+
+ $scope.resetPassword = function() {
+ if (!$scope.passwordOrgin || !$scope.passwordNew1 || !$scope.passwordNew2) {
+ toastr.error('原密码跟新密码不能为空', "错误");
+ return;
+ }
+
+ if ($scope.passwordNew1 == $scope.passwordNew2) {
+ var parmes = {
+ passwordNew: $scope.passwordNew1,
+ passwordOrgin: $scope.passwordOrgin,
+ };
+
+ bookmarkService.resetPassword(parmes)
+ .then((data) => {
+ if (data.retCode == 0) {
+ toastr.success('密码更新成功', "提示");
+ pubSubService.publish('Common.menuActive', {
+ login: false,
+ index: 0
+ });
+ $state.go('/', {});
+ } else {
+ toastr.error('密码更新失败。错误信息:' + data.msg, "错误");
+ }
+ })
+ .catch((err) => {
+ toastr.error('密码更新失败。错误信息:' + JSON.stringify(err), "错误");
+ });
+ } else {
+ toastr.error('新密码两次输入不一致', "错误");
+ }
+ }
+
+ pubSubService.publish('Common.menuActive', {
+ login: true,
+ index: 2
+ });
+}]);
diff --git a/public/scripts/services/bookmark-service.js b/public/scripts/services/bookmark-service.js
index c837227..d2b3ed6 100644
--- a/public/scripts/services/bookmark-service.js
+++ b/public/scripts/services/bookmark-service.js
@@ -40,6 +40,19 @@ app.factory('bookmarkService', ['$http', '$q', function($http, $q) {
});
return def.promise;
},
+ resetPassword: function(params) {
+ var def = $q.defer();
+ $http.post('/api/resetPassword/', {
+ params: params
+ })
+ .success(function(data) {
+ def.resolve(data);
+ })
+ .error(function(data) {
+ def.reject('register error');
+ });
+ return def.promise;
+ },
clickBookmark: function(params) {
var def = $q.defer();
$http.post('/api/clickBookmark/', {
diff --git a/public/views/bookmarks.html b/public/views/bookmarks.html
index 42ac8c5..7b15d80 100644
--- a/public/views/bookmarks.html
+++ b/public/views/bookmarks.html
@@ -21,7 +21,7 @@
{{ bookmark.title}}
-
账号设置页面
+