Refactor collection permissions callbacks