LGTM, but why does the function called "fixNotificationURL" not handle the empty url?  It seems like it probably should, which would remove the need for "empty" checks like that.