Book index: move errors to controller