Understanding mediators and moderators of the effect of customer satisfaction on loyalty