1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
|
package org.litesoft.initfrom.client.ui.views.admin;
import org.litesoft.GWT.client.view.*;
import org.litesoft.GWT.client.widgets.*;
import org.litesoft.GWT.forms.client.*;
import org.litesoft.bo.views.*;
import org.litesoft.core.*;
import org.litesoft.initfrom.client.boviews.*;
import org.litesoft.initfrom.client.ui.views.*;
import org.litesoft.uispecification.*;
import com.google.gwt.user.client.ui.*;
public class MyProfile extends InitFromscreenView implements UserViewNames,
ViewUpdatable<UserView>,
FetchRowDataProviderCallBack<UserView>
{
private FormEngine mFE;
private UserViewDataProvider mDataProvider = UserViewDataProvider.getInstance();
private FormBinder<UserView> mFormBinder;
@Override
protected UriFragmentIdParams createRefreshParams()
{
return null;
}
public MyProfile( String pSection, ViewDef pViewDef )
{
super( pSection, pViewDef );
addStandardTitleBar();
UserView zUser = ClientContext.get().get( CurrentUserViewAccessor.class ).getUser();
CtrlBitsMap zCtrlBitsMap = new CtrlBitsMap( FormEngine.ENABLED_NON_VIEW );
zCtrlBitsMap.add( FormEngine.VISIBLE, aFirstName, aMiddleInitial, aLastName );
zCtrlBitsMap.add( FormEngine.ENABLED_EDIT, aPhoneNumber );
zCtrlBitsMap.add( FormEngine.ENABLED_EDIT | FormEngine.ADD_EDIT_REQUIRED | FormEngine.ADD_UNIQUE, aLogonEmail );
zCtrlBitsMap.add( FormEngine.VISIBLE, aStatus, aCanAdministrate );
zCtrlBitsMap.add( userViewable( zUser.canChange_HelpDeskMember() ), aHelpDeskMember );
zCtrlBitsMap.add( userViewable( zUser.canChange_RestrictedResourceManage() ), aRestrictedResourceManage );
zCtrlBitsMap.add( userViewable( zUser.canChange_SuperAdmin() ), aSuperAdmin );
zCtrlBitsMap.add( userViewable( false ), aResetPassword ); // Hide it!
mFE = new FormEngine( zCtrlBitsMap, FormEngine.Mode.EditRegular, null );
mFormBinder = new FormBinder<UserView>( mFE, UserViewMetaData.getInstance() );
add( new QBEformConstrainingVerticalPanel( new UserFieldsPanel( mFE, mFormBinder, ClientContext.get().get( CurrentRestrictedResourceViewAccessor.class ).getRestrictedResource(), true ), //
new SizeableSpacer().stretchable() ) );
add( new SizeableSpacer().stretchable() );
mDataProvider.requestRow( zUser.getObjectURL(), this );
}
@Override
public void success( UserView pRow )
{
modeEdit( pRow );
}
private void modeEdit( UserView pUser )
{
mFormBinder.setExistingObject( mDataProvider.copyIntoNewTS( pUser ), FormEngine.Mode.EditRegular );
}
@Override
public void aboutToShow()
{
super.aboutToShow();
mFE.initialize();
}
@Override
public Widget getBottomBar()
{
LeftCenterRightHorizontalPanel zActionPanel = new LeftCenterRightHorizontalPanel();
zActionPanel.addLeft( mFE.addEditRevertButton( createRevertButton() ) );
zActionPanel.addCenter( mFE.addEditSubmitButton( createSubmitButton( mDataProvider, mFormBinder, this ) ) );
zActionPanel.addRight( mFE.addEditSubmitButton( createSubmitButton( mDataProvider, mFormBinder, ViewDef.HOME ) ) );
return zActionPanel;
}
@Override
public void viewUpdated( UserView pUserView )
{
modeEdit( pUserView );
}
}
|