editprofile.java

来自「采用tapestry的简单OA系统」· Java 代码 · 共 49 行

JAVA
49
字号
package com.ejsun.entapps.presentation.pages.user;

import java.util.Locale;

import org.apache.tapestry.IRequestCycle;
import org.apache.tapestry.PageRedirectException;
import org.apache.tapestry.event.PageEvent;
import org.apache.tapestry.event.PageRenderListener;
import org.apache.tapestry.form.IPropertySelectionModel;
import org.apache.tapestry.form.StringPropertySelectionModel;

import com.ejsun.entapps.domain.organization.User;
import com.ejsun.entapps.presentation.Visit;
import com.ejsun.entapps.presentation.pages.Protected;
import com.ejsun.entapps.service.organization.OrganizationService;

/**
 * @author	Quake Wang
 * @since	2004-5-11
 * @version $Revision: 1.2 $
 * 
 **/
public abstract class EditProfile extends Protected implements PageRenderListener {
    public static final IPropertySelectionModel AVAILABLE_LOCALE_MODEL =
        new StringPropertySelectionModel(new String[] { "Chinese", "English" });

    public abstract User getProfile();
    public abstract void setProfile(User user);
    public abstract OrganizationService getOrganizationService();

    public void pageBeginRender(PageEvent event) {
        if (getProfile() == null)
            setProfile(getUser());
    }

    public void updateProfile(IRequestCycle cycle) {
    	if(isInError()) return;
        getOrganizationService().updateUser(getProfile());
        ((Visit) getVisit()).setUser(getProfile());
		//TODO refactor this
        if (getProfile().getLocale() == "Chinese") {
            getEngine().setLocale(Locale.SIMPLIFIED_CHINESE);
        } else {
            getEngine().setLocale(Locale.ENGLISH);
        }
		throw new PageRedirectException("Home");
    }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?