Preserve boolean type when content blocks are moved
Moving content blocks caused boolean values to be typecasted improperly when they were being re-saved, thus causing their value to return back to default. We're now converting the value of a boolean field to String before attempting to typecast it, ensuring consistent behavior between creating and updating content blocks.
Remove Duplicates in Recommendations
Since the possibility of returning the same product twice in a series of recommendations does indeed exist, we're now ensuring that each product only appears once when displaying recommendations.