Yeah I think the logic is wrong here. I think in XF 1.5 it's if is ignored / show unignore button / else if can ignore / show ignore button clearly in a mood today where writing pseudo-code is more palatable than writing real code
My workaround for my live site is to just do isIgnoring || canIgnoreUser and just let them tank the "you can't ignore" error message if they unignore someone then try to ignore them again. Quick too