new WatchListDao().saveWatchList(watchList);
}
@DwrPermission(user = true)
public IntStringPair addNewWatchList(int copyId) {
User user = Common.getUser();
WatchListDao watchListDao = new WatchListDao();
WatchList watchList;
if (copyId == Common.NEW_ID) {
watchList = new WatchList();
watchList.setName(translate("common.newName"));
}
else {
watchList = new WatchListDao().getWatchList(getWatchList().getId());
watchList.setId(Common.NEW_ID);
watchList.setName(translate(new TranslatableMessage("common.copyPrefix", watchList.getName())));
//Check to see if we are a Shared User (we can't share a watchlist with ourselves)
List<ShareUser> watchListShared = new ArrayList<ShareUser>();
for(ShareUser shareUser : watchList.getWatchListUsers()){
//Don't add yourself
if(shareUser.getUserId() != user.getId())
watchListShared.add(shareUser);
}
watchList.setWatchListUsers(watchListShared);
}
watchList.setUserId(user.getId());
watchList.setXid(watchListDao.generateUniqueXid());
watchListDao.saveWatchList(watchList);
setWatchList(user, watchList);
watchListDao.saveSelectedWatchList(user.getId(), watchList.getId());
return new IntStringPair(watchList.getId(), watchList.getName());
}