added client side validation for duplicate channels and re-run validation after removing a channel