On the structure of pure-projective modules and some applications