@Override
 public void changePassword(int userId, String newPassword) {
   User user = userDao.loadUser(userId);
   user.setPassword(newPassword);
   userDao.updateUser(user);
   logger.info("Password changed for - " + user.getFirstname());
 }
  @Override
  public boolean authenticateUser(String username, String password) {

    boolean returnValue = userDao.isAuthenticUser(username, password);
    logger.info("Authentication done");
    return returnValue;
  }
 @Override
 public int registerUser(User user) {
   int userId = userDao.addUser(user);
   // add default tasks
   Task defaultTask1 = new Task();
   Task defaultTask2 = new Task();
   defaultTask1.setTaskName("Buy groceries today");
   defaultTask2.setTaskName("Write code tomorrow");
   defaultTask1.setUserid(userId);
   defaultTask2.setUserid(userId);
   int taskId1 = taskDao.addTask(defaultTask1);
   int taskId2 = taskDao.addTask(defaultTask2);
   String defaulttask1Id = Integer.toString(taskId1);
   String defaulttask2Id = Integer.toString(taskId2);
   logger.info("Added default tasks");
   // add default tags
   Tag defaulttag1 = new Tag();
   Tag defaulttag2 = new Tag();
   Tag defaulttag3 = new Tag();
   Tag defaulttag4 = new Tag();
   defaulttag1.setTagName("office");
   defaulttag1.setTaskids(defaulttask2Id);
   defaulttag2.setTagName("home");
   defaulttag2.setTaskids(defaulttask1Id);
   defaulttag3.setTagName("vegetables");
   defaulttag3.setTaskids(defaulttask1Id);
   defaulttag4.setTagName("project");
   defaulttag4.setTaskids(defaulttask2Id);
   tagDao.addTag(defaulttag1);
   tagDao.addTag(defaulttag2);
   tagDao.addTag(defaulttag3);
   tagDao.addTag(defaulttag4);
   logger.info("Added default tags");
   // add default categories
   Category defaultCategory1 = new Category();
   Category defaultCategory2 = new Category();
   defaultCategory1.setCategoryName("work");
   defaultCategory1.setTaskids(defaulttask2Id);
   defaultCategory2.setCategoryName("personal");
   defaultCategory2.setTaskids(defaulttask1Id);
   categoryDao.addCategory(defaultCategory1);
   categoryDao.addCategory(defaultCategory2);
   logger.info("Added default categories");
   return userId;
 }
 @Override
 public void deleteUser(int userId) {
   userDao.deleteUser(userId);
   logger.info("User deleted for Id - " + userId);
 }
 @Override
 public User getUserInfo(int userId) {
   return userDao.loadUser(userId);
 }