Subversion Repositories bacoAlunos

Rev

Rev 214 | Blame | Compare with Previous | Last modification | View Log | RSS feed

package pt.estgp.estgweb.web.form.courseunits;

import org.apache.log4j.Logger;
import org.apache.struts.action.ActionErrors;
import org.apache.struts.upload.FormFile;
import pt.estgp.estgweb.web.form.AddRolesForm;
import pt.estgp.estgweb.web.form.ApplicationForm;
import pt.estgp.estgweb.web.form.commons.TeachersForm;
import pt.estgp.estgweb.web.utils.RequestUtils;
import pt.estgp.estgweb.domain.views.CourseUnitView;
import pt.estgp.estgweb.domain.views.CourseUnitAssignementView;
import pt.estgp.estgweb.domain.views.UserView;
import pt.estgp.estgweb.domain.views.CourseUnitDeliverableView;
import pt.estgp.estgweb.domain.TeacherImpl;
import pt.estgp.estgweb.domain.Teacher;
import pt.estgp.estgweb.utils.DatesUtils;
import pt.estgp.estgweb.services.common.SearchTypeEnum;
import pt.utl.ist.berserk.logic.serviceManager.IServiceManager;
import pt.utl.ist.berserk.logic.serviceManager.ServiceManager;
import pt.utl.ist.berserk.logic.serviceManager.exceptions.ServiceManagerException;
import pt.utl.ist.berserk.logic.filterManager.exceptions.*;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.ArrayList;
import java.util.Iterator;

/**
 * @author Jorge Machado
 * @date 2/Jun/2008
 * @time 14:28:59
 * @see pt.estgp.estgweb.web.form.blogs
 */

public class CourseUnitsForm extends TeachersForm
{
    private static final 1.5.0/docs/api/java/util/logging/Logger.html">Logger logger = 1.5.0/docs/api/java/util/logging/Logger.html">Logger.getLogger(CourseUnitsForm.class);

    CourseUnitView courseUnitView = new CourseUnitView();

    //aux
    long courseId;
    long id;
    long teacherId;
    int studentCode;
    boolean showNewWorkForm = false;
    FormFile uploadFile;


    //courseunit
    FormFile programFile;
    CourseUnitAssignementView courseUnitAssignementView = new CourseUnitAssignementView();
    //search
    1.5.0/docs/api/java/lang/String.html">String textToSearch;
    1.5.0/docs/api/java/lang/String.html">String searchType = SearchTypeEnum.AllWords.getMessageKey();
    int page;


    public CourseUnitsForm(boolean initDeliverables)
    {
        if(initDeliverables)
            initDeliverables();
    }
    public CourseUnitsForm()
    {
        initDeliverables();
    }

    public void initDeliverables()
    {
        courseUnitAssignementView.setDeliverables(new ArrayList<CourseUnitDeliverableView>());
        for(int i = 0; i < 200; i++)
        {
            courseUnitAssignementView.getDeliverables().add(new CourseUnitDeliverableView());
        }
    }

    public CourseUnitView getCourseUnitView()
    {
        return courseUnitView;
    }

    public void setCourseUnitView(CourseUnitView courseUnitView)
    {
        this.courseUnitView = courseUnitView;
    }

    public FormFile getProgramFile()
    {
        return programFile;
    }

    public void setProgramFile(FormFile programFile)
    {
        this.programFile = programFile;
    }

    public List<String> getImportYears()
    {
        return DatesUtils.getImportYears(5);
    }


    public boolean isShowNewWorkForm()
    {
        return showNewWorkForm;
    }

    public void setShowNewWorkForm(boolean showNewWorkForm)
    {
        this.showNewWorkForm = showNewWorkForm;
    }

    public CourseUnitAssignementView getCourseUnitAssignementView()
    {
        return courseUnitAssignementView;
    }

    public void setCourseUnitAssignementView(CourseUnitAssignementView courseUnitAssignementView)
    {
        this.courseUnitAssignementView = courseUnitAssignementView;
    }


    public long getId()
    {
        return id;
    }

    public void setId(long id)
    {
        this.id = id;
    }

    public long getTeacherId()
    {
        return teacherId;
    }

    public void setTeacherId(long teacherId)
    {
        this.teacherId = teacherId;
    }


    public int getStudentCode()
    {
        return studentCode;
    }

    public void setStudentCode(int studentCode)
    {
        this.studentCode = studentCode;
    }

    public 1.5.0/docs/api/java/lang/String.html">String getTextToSearch()
    {
        return textToSearch;
    }

    public void setTextToSearch(1.5.0/docs/api/java/lang/String.html">String textToSearch)
    {
        this.textToSearch = textToSearch;
    }


    public 1.5.0/docs/api/java/lang/String.html">String getSearchType()
    {
        return searchType;
    }

    public void setSearchType(1.5.0/docs/api/java/lang/String.html">String searchType)
    {
        this.searchType = searchType;
    }

    public SearchTypeEnum getSearchTypeEnum()
    {
        return SearchTypeEnum.parse(searchType);
    }

    public void setSearchTypeEnum(SearchTypeEnum searchTypeEnum)
    {
        searchType = searchTypeEnum.getMessageKey();
    }


    public int getPage()
    {
        return page;
    }

    public void setPage(int page)
    {
        this.page = page;
    }




    public FormFile getUploadFile()
    {
        return uploadFile;
    }

    public void setUploadFile(FormFile uploadFile)
    {
        this.uploadFile = uploadFile;
    }

    public ActionErrors validate(org.apache.struts.action.ActionMapping actionMapping, javax.servlet.http.HttpServletRequest httpServletRequest)
    {
        ActionErrors errors = new ActionErrors();

        return errors;
    }

    public ActionErrors validateCreateAssignement(org.apache.struts.action.ActionMapping actionMapping, javax.servlet.http.HttpServletRequest httpServletRequest)
    {
        ActionErrors errors = new ActionErrors();
        if(courseUnitAssignementView.getDeliverDate() == null || courseUnitAssignementView.getDeliverDate().length() == 0)
        {
            addMessageWithKeys(errors,httpServletRequest,"errors.required","courseunit.assignement.deliver.date");
        }
        if(courseUnitAssignementView.getTitle() == null || courseUnitAssignementView.getTitle().trim().length() == 0)
        {
            addMessageWithKeys(errors,httpServletRequest,"errors.required","courseunit.title");
        }
//        if(uploadFile != null && uploadFile.getFileSize() > 0 && !uploadFile.getFileName().endsWith(".zip"))
//        {
//            addMessage(errors,httpServletRequest,"errors.courseunit.assignement.file.type");
//        }
        return errors;
    }

    public ActionErrors validateDeliverWork(org.apache.struts.action.ActionMapping actionMapping, javax.servlet.http.HttpServletRequest httpServletRequest)
    {
        ActionErrors errors = new ActionErrors();
        if(uploadFile == null || uploadFile.getFileSize() == 0)
        {
            addMessage(errors,httpServletRequest,"errors.courseunit.assignement.deliver.file");
        }
//        if(uploadFile != null && uploadFile.getFileName() !=null && !uploadFile.getFileName().endsWith(".zip"))
//        {
//            addMessage(errors,httpServletRequest,"errors.courseunit.assignement.deliver.zip");
//        }
        return errors;
    }

    public void validateUpdateDeliverables()
    {
        Iterator<CourseUnitDeliverableView> iter = courseUnitAssignementView.getDeliverables().iterator();
        while (iter.hasNext())
        {
            CourseUnitDeliverableView courseUnitDeliverableView = iter.next();
            if(courseUnitDeliverableView.getId() <= 0)
            {
                iter.remove();
            }
        }
    }


}