Campaigns refactoring