detailposition function