separate campaign and dashboard controllers