Package jsf.entity

Source Code of jsf.entity.UserController

/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package jsf.entity;

import entity.Courses;
import entity.Enrollment;
import entity.User;
import java.sql.Timestamp;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import javax.faces.context.FacesContext;
import jpa.controllers.EnrollmentJpaController;
import jpa.controllers.UserJpaController;
import jsf.util.JsfUtil;

/**
*
* @author atap
*/
public class UserController {
   
    private User user = null;
    private UserJpaController jpaController = null;
    private UserConverter converter = null;
    private CoursesController courseController = null;
    private List<Courses> courseList = null;
  
    public UserController() {
        FacesContext context = FacesContext.getCurrentInstance();
        jpaController = (UserJpaController) context.getApplication().getELResolver().getValue(context.getELContext(), null, "userJpa");
        converter = new UserConverter();
        courseController = new CoursesController();
        courseList = new ArrayList<Courses>();
    }
   
    public User getUser() {
        if(user == null) {
            user = (User)JsfUtil.getObjectFromRequestParameter("jsfcrud.currentUser", converter, null);
        }
        if(user == null) {
            user = new User();
        }
        return user;
    }
   
    public Courses getEnrolledCourse() {
        return course;
    }
   
    public String create() {
        try {
            user.setUserType('s');
            user.setSysdate(new Date());
            jpaController.create(user);
            JsfUtil.addSuccessMessage("User was successfully created.");
        } catch (Exception e) {
            JsfUtil.ensureAddErrorMessage(e, "A persistence error occurred.");
            return null;
        }
        return null;
    }
   
    public String updateUser() {
        try {
            jpaController.edit(user);
            JsfUtil.addSuccessMessage("User information was successfully updated.");
        } catch (Exception e) {
             JsfUtil.ensureAddErrorMessage(e, "A persistence error occurred.");
            return null;
        }
        return null;
    }
   
    public String validateUser()
    {
        String userEmail = user.getEmail();
        String userPassword = user.getPassword()
       
        user = jpaController.loginUser(userEmail, userPassword);       
        if(user != null)
            return "loginUser";
        else {
            JsfUtil.addErrorMessage("User does not exist");
            return "";
        }
    }
   
    public Courses course;
    public void setactionUser(Courses course)
    {
        this.course = course;
    }
   
    public String enrollCoursePage()
    {
        return "courseDetail";
    }
   
    public void enrollCourse()
    {
        Enrollment enrollment = new Enrollment();
        enrollment.setUserId(user);
        enrollment.setCourseId(course);
        enrollment.setSysdate(new Date());
       
        try {    
       
        EnrollmentJpaController jpaController = new EnrollmentJpaController();
        jpaController.create(enrollment);
        JsfUtil.addSuccessMessage("User successfully enrolled course.");
        }
        catch (Exception e) {
            JsfUtil.ensureAddErrorMessage(e, "A persistence error occurred.");
        }
    }
   
    public List<Courses> getEnrolledCourses() {
        List<Enrollment> enrollList = user.getEnrollmentList();
        courseList.clear();
        for (Enrollment course : enrollList) {
            courseList.add(course.getCourseId());
        }       
        return courseList;
    }
   
    public String logOffUser()
    {
        return "";
        //user = null;
        //System.out.print("logged off");
        //return "logoff";
    }
}
TOP

Related Classes of jsf.entity.UserController

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.