Save a mask.psd file with the shape silohuette and a gradient from black to white at 45º the same size as the file with the text.
At the original file, duplicate the text layer and from Filter > Distort > add a Displace Effect using the mask.psd as displacing file.
In a layer with the original shape, add an Inner Bevel, Stroke and Color Overlay effects to simulate the edge profile. Set this layer fill to 0% to see just the effects.
Result
Use different types of mask or settings at the Displace options to get another kind of distortions
Colors
This answer is an idea about how to make the distortion, it's clear that the poster of the question has much more work. For the color part I think it's a layer overlay. A quick way to do it is adding a layer under the glass effect with a color Inner Bevel on just one side and adjusting the light angle degree.