Added validation + refactored post views to use partials