Project

General

Profile

1
package eu.dnetlib.client;
2

    
3
import com.google.gwt.event.dom.client.ClickEvent;
4
import com.google.gwt.event.dom.client.ClickHandler;
5
import com.google.gwt.user.client.Cookies;
6
import com.google.gwt.user.client.History;
7
import com.google.gwt.user.client.ui.*;
8

    
9
/**
10
 * Created by stefania on 3/8/15.
11
 */
12
public class UserInfoElement implements IsWidget {
13

    
14
    private FlowPanel registerLoginToolbar = new FlowPanel();
15

    
16
    private Anchor userName = new Anchor();
17
    private Anchor logout = new Anchor();
18

    
19
    public UserInfoElement() {
20

    
21
        userName.setText("Hello, " + GoldOAPortal.currentUser.getName() + " " + GoldOAPortal.currentUser.getInitials()
22
                + " " + GoldOAPortal.currentUser.getLastname());
23
        userName.addClickHandler(new ClickHandler() {
24
            @Override
25
            public void onClick(ClickEvent clickEvent) {
26
                History.newItem("myAccount");
27
            }
28
        });
29

    
30
        logout.setText("LOGOUT");
31
        logout.addStyleName("secondToolbarButton");
32
        logout.addClickHandler(new ClickHandler() {
33
            @Override
34
            public void onClick(ClickEvent event) {
35

    
36
                Cookies.removeCookie("currentUser");
37
                GoldOAPortal.currentUser = null;
38

    
39
                RootPanel.get("loginRegister").clear();
40
                RootPanel.get("loginRegister").add(RegisterLoginElement.getInstance().asWidget());
41

    
42
                NavigationManager.getInstance().update();
43
                if(GoldOAPortal.currentToken.equals("home"))
44
                    NavigationManager.getInstance().navigate("home");
45
                else
46
                    History.newItem("home");
47
            }
48
        });
49

    
50
        registerLoginToolbar.add(userName);
51
        registerLoginToolbar.add(logout);
52
    }
53

    
54
    @Override
55
    public Widget asWidget() {
56
        return registerLoginToolbar;
57
    }
58
}
(20-20/21)