add product search function