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 package fr.paris.lutece.plugins.mylutece.modules.database.authentication.business;
35
36 import fr.paris.lutece.plugins.mylutece.business.attribute.AttributeHome;
37 import fr.paris.lutece.plugins.mylutece.business.attribute.IAttribute;
38 import fr.paris.lutece.plugins.mylutece.business.attribute.MyLuteceUserField;
39 import fr.paris.lutece.plugins.mylutece.business.attribute.MyLuteceUserFieldHome;
40 import fr.paris.lutece.plugins.mylutece.business.attribute.MyLuteceUserFieldListener;
41 import fr.paris.lutece.plugins.mylutece.modules.database.authentication.service.DatabasePlugin;
42 import fr.paris.lutece.plugins.mylutece.service.MyLutecePlugin;
43 import fr.paris.lutece.portal.business.user.AdminUser;
44 import fr.paris.lutece.portal.service.plugin.Plugin;
45 import fr.paris.lutece.portal.service.plugin.PluginService;
46
47 import java.util.List;
48 import java.util.Locale;
49
50 import javax.servlet.http.HttpServletRequest;
51
52
53
54
55
56
57 public class DatabaseUserFieldListener implements MyLuteceUserFieldListener
58 {
59
60 private static final String EMPTY_STRING = "";
61
62
63
64
65 @Override
66 public void doCreateUserFields( int nIdUser, HttpServletRequest request, Locale locale )
67 {
68 Plugin myLutecePlugin = PluginService.getPlugin( MyLutecePlugin.PLUGIN_NAME );
69 List<IAttribute> listAttributes = AttributeHome.findPluginAttributes( DatabasePlugin.PLUGIN_NAME, locale, myLutecePlugin );
70
71 for ( IAttribute attribute : listAttributes )
72 {
73 List<MyLuteceUserField> userFields = attribute.getUserFieldsData( request, nIdUser );
74 doCreateUserFields( nIdUser, userFields, locale );
75 }
76 }
77
78
79
80
81 @Override
82 public void doCreateUserFields( int nIdUser, List<MyLuteceUserField> listUserFields, Locale locale )
83 {
84 Plugin myLutecePlugin = PluginService.getPlugin( MyLutecePlugin.PLUGIN_NAME );
85
86 for ( MyLuteceUserField userField : listUserFields )
87 {
88 if ( ( userField != null ) && !userField.getValue( ).equals( EMPTY_STRING ) )
89 {
90
91
92
93 userField.setValue( userField.getAttributeField( ).getTitle( ) );
94 MyLuteceUserFieldHome.create( userField, myLutecePlugin );
95 }
96 }
97 }
98
99
100
101
102 @Override
103 public void doModifyUserFields( int nIdUser, HttpServletRequest request, Locale locale, AdminUser currentUser )
104 {
105 Plugin myLutecePlugin = PluginService.getPlugin( MyLutecePlugin.PLUGIN_NAME );
106 List<IAttribute> listAttributes = AttributeHome.findPluginAttributes( DatabasePlugin.PLUGIN_NAME, locale, myLutecePlugin );
107
108 for ( IAttribute attribute : listAttributes )
109 {
110 List<MyLuteceUserField> userFields = attribute.getUserFieldsData( request, nIdUser );
111 doModifyUserFields( nIdUser, userFields, locale, currentUser );
112 }
113 }
114
115
116
117
118 @Override
119 public void doModifyUserFields( int nIdUser, List<MyLuteceUserField> listUserFields, Locale locale, AdminUser currentUser )
120 {
121 Plugin myLutecePlugin = PluginService.getPlugin( MyLutecePlugin.PLUGIN_NAME );
122
123 for ( MyLuteceUserField userField : listUserFields )
124 {
125 if ( ( userField != null ) && !userField.getValue( ).equals( EMPTY_STRING ) )
126 {
127
128
129
130 userField.setValue( userField.getAttributeField( ).getTitle( ) );
131 MyLuteceUserFieldHome.create( userField, myLutecePlugin );
132 }
133 }
134 }
135
136
137
138
139 @Override
140 public void doRemoveUserFields( int nIdUser, HttpServletRequest request, Locale locale )
141 {
142
143 }
144
145
146
147
148 @Override
149 public void doRemoveUserFields( int nIdUser, Locale locale )
150 {
151
152 }
153 }