A Framework for E-learning and Blended Learning