updated shop behavior via controller