Commit f32b8539e6880b0fcbd09c1788592375c2387a08
1 parent
46de8790
Exists in
master
Improved Code
Showing
3 changed files
with
63 additions
and
23 deletions
Show diff stats
public/controllers/controller.js
| ... | ... | @@ -9,13 +9,40 @@ |
| 9 | 9 | $scope.todolist = response; |
| 10 | 10 | }); |
| 11 | 11 | $scope.task = { |
| 12 | - taskname: "E.g Task", | |
| 12 | + taskname: "", | |
| 13 | 13 | Done: false, |
| 14 | - details: '' | |
| 15 | - } | |
| 14 | + details: "" | |
| 15 | + } | |
| 16 | 16 | $scope.addTask = function() { |
| 17 | 17 | //console.log($scope.todo); |
| 18 | + | |
| 18 | 19 | $http.post('/todolist', $scope.task).success(function(response){ |
| 20 | + $http.get('/todolist').success(function(response) { | |
| 21 | + $scope.todolist = response; | |
| 22 | + }); | |
| 23 | + console.log(response); | |
| 24 | + $scope.task = { | |
| 25 | + taskname: "", | |
| 26 | + Done: false, | |
| 27 | + details: "" | |
| 28 | + } | |
| 29 | + }); | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + }; | |
| 34 | + | |
| 35 | + $scope.updateTask = function(task) { | |
| 36 | + $http.put('/todolist/'+task._id,task).success(function(response) { | |
| 37 | + | |
| 38 | + }); | |
| 39 | + }; | |
| 40 | + | |
| 41 | + $scope.deleteTask = function(id) { | |
| 42 | + var x=confirm("Are you sure?") | |
| 43 | + | |
| 44 | + if(x==true){ | |
| 45 | + $http.delete('/todolist/' + id).success(function(response) { | |
| 19 | 46 | console.log(response); |
| 20 | 47 | }); |
| 21 | 48 | $http.get('/todolist').success(function(response) { |
| ... | ... | @@ -23,10 +50,7 @@ |
| 23 | 50 | }); |
| 24 | 51 | $scope.todo = ""; |
| 25 | 52 | }; |
| 26 | - | |
| 27 | - $scope.markTaskDone = function() { | |
| 28 | - console.log($scope.todo); | |
| 29 | - }; | |
| 53 | + } | |
| 30 | 54 | |
| 31 | 55 | }]); |
| 32 | 56 | ... | ... |
public/index.html
| ... | ... | @@ -12,8 +12,11 @@ |
| 12 | 12 | text-decoration: line-through; |
| 13 | 13 | color:#ccc; |
| 14 | 14 | } |
| 15 | - small { | |
| 16 | - cursor: pointer; | |
| 15 | + button{ | |
| 16 | + display:none; | |
| 17 | + } | |
| 18 | + .delete:hover button{ | |
| 19 | +display:inline; | |
| 17 | 20 | } |
| 18 | 21 | </style> |
| 19 | 22 | </head> |
| ... | ... | @@ -24,24 +27,21 @@ |
| 24 | 27 | <thead> |
| 25 | 28 | <tr> |
| 26 | 29 | <th>Tasks</th> |
| 27 | - <th>Details</th> | |
| 28 | 30 | <th>Actions</th> |
| 29 | 31 | </tr> |
| 30 | 32 | </thead> |
| 31 | 33 | <tbody> |
| 32 | 34 | <tr> |
| 33 | - <td><input type="text" class="form-control" ng-model="task.taskname" required></td> | |
| 35 | + <td><input id="task" type="text" class="form-control" ng-model="task.taskname" required></td> | |
| 34 | 36 | <td><textarea ng-model="task.details" required></textarea></td> |
| 35 | 37 | <td><button class="btn btn-primary" ng-click="addTask()">Add Task</button></td> |
| 36 | 38 | </tr> |
| 37 | - <tr ng-repeat="todo in todolist"> | |
| 39 | + <tr ng-repeat="todo in todolist.slice().reverse()"> | |
| 38 | 40 | <!--<td><input type="checkbox" ng-model="todo.done"> |
| 39 | 41 | <span ng-class="{'done':todo.done}">{{todo.taskname}}</span>--> |
| 40 | 42 | <td colspan="3"> |
| 41 | - <span ng-click="DeleteTask">x</span> | |
| 42 | - <input type="checkbox" ng-model="todo.Done" ng-checked="todo.Done" ng-click="markTaskDone()"> | |
| 43 | - <span ng-class="(todo.Done==true)? 'done':''">{{todo.taskname}}</span> <small ng-click="more=!more" ng-show="todo.details"> {{(more)? 'Hide Desc' : 'Show Desc'}}</small><br /> | |
| 44 | - <small ng-show="more==true">{{todo.details}}</small> | |
| 43 | + <div class=delete><button ng-click="deleteTask(todo._id)">Delete</button> <input type="checkbox" ng-model="todo.Done" ng-checked="todo.Done" ng-click="updateTask(todo)"> <span ng-class="(todo.Done==true)? 'done':''">{{todo.taskname}}</span></div> | |
| 44 | + | |
| 45 | 45 | </td> |
| 46 | 46 | |
| 47 | 47 | ... | ... |
server.js
| ... | ... | @@ -36,13 +36,29 @@ app.post('/todolist', function(req, res) { |
| 36 | 36 | }); |
| 37 | 37 | }); |
| 38 | 38 | |
| 39 | -app.put('/todolist', function(req, res){ | |
| 40 | - var id = req.params.id; | |
| 41 | - console.log(req.body.Done); | |
| 42 | - db.contactlist.findAndModify({query: {_id: mongojs.ObjectId(id)}, | |
| 43 | - update: {$set: {name: req.body.name, email: req.body.email, number: req.body.number}}, | |
| 44 | - new: true}, function(err, doc) { | |
| 45 | - res.json(doc); | |
| 39 | +app.put('/todolist/:id', function(req, res){ | |
| 40 | + console.log(req.body); | |
| 41 | + Todo.update({_id:req.params.id},req.body,{upsert:true},function(err) { | |
| 42 | + if(!err) { | |
| 43 | + res.send('updated'); | |
| 44 | + } | |
| 45 | + else { | |
| 46 | + console.log(err); | |
| 47 | + res.send(404); | |
| 48 | + } | |
| 49 | + }); | |
| 50 | +}); | |
| 51 | + | |
| 52 | +app.delete('/todolist/:id', function(req, res){ | |
| 53 | + Todo.remove({_id: req.params.id}, function(err) { | |
| 54 | + if(!err) { | |
| 55 | + res.send('deleted'); | |
| 56 | + } | |
| 57 | + else { | |
| 58 | + console.log(err); | |
| 59 | + res.send(404); | |
| 60 | + } | |
| 61 | + }); | |
| 46 | 62 | }); |
| 47 | 63 | |
| 48 | 64 | ... | ... |