@@ -55,6 +55,8 @@ public function handle()
5555 ini_set ('max_execution_time ' , env ('LDAP_TIME_LIM ' , 600 )); //600 seconds = 10 minutes
5656 ini_set ('memory_limit ' , env ('LDAP_MEM_LIM ' , '500M ' ));
5757
58+
59+ // Map the LDAP attributes to the Snipe-IT user fields.
5860 $ ldap_map = [
5961 "username " => Setting::getSettings ()->ldap_username_field ,
6062 "last_name " => Setting::getSettings ()->ldap_lname_field ,
@@ -63,11 +65,17 @@ public function handle()
6365 "emp_num " => Setting::getSettings ()->ldap_emp_num ,
6466 "email " => Setting::getSettings ()->ldap_email ,
6567 "phone " => Setting::getSettings ()->ldap_phone_field ,
68+ "mobile " => Setting::getSettings ()->ldap_mobile ,
6669 "jobtitle " => Setting::getSettings ()->ldap_jobtitle ,
70+ "address " => Setting::getSettings ()->ldap_address ,
71+ "city " => Setting::getSettings ()->ldap_city ,
72+ "state " => Setting::getSettings ()->ldap_state ,
73+ "zip " => Setting::getSettings ()->ldap_zip ,
6774 "country " => Setting::getSettings ()->ldap_country ,
6875 "location " => Setting::getSettings ()->ldap_location ,
6976 "dept " => Setting::getSettings ()->ldap_dept ,
7077 "manager " => Setting::getSettings ()->ldap_manager ,
78+ "display_name " => Setting::getSettings ()->ldap_display_name ,
7179 ];
7280
7381 $ ldap_default_group = Setting::getSettings ()->ldap_default_group ;
@@ -234,18 +242,25 @@ public function handle()
234242 }
235243
236244
245+ // Assign the mapped LDAP attributes for each user to the Snipe-IT user fields
237246 for ($ i = 0 ; $ i < $ results ['count ' ]; $ i ++) {
238247 $ item = [];
239248 $ item ['username ' ] = $ results [$ i ][$ ldap_map ["username " ]][0 ] ?? '' ;
249+ $ item ['display_name ' ] = $ results [$ i ][$ ldap_map ["display_name " ]][0 ] ?? '' ;
240250 $ item ['employee_number ' ] = $ results [$ i ][$ ldap_map ["emp_num " ]][0 ] ?? '' ;
241251 $ item ['lastname ' ] = $ results [$ i ][$ ldap_map ["last_name " ]][0 ] ?? '' ;
242252 $ item ['firstname ' ] = $ results [$ i ][$ ldap_map ["first_name " ]][0 ] ?? '' ;
243253 $ item ['email ' ] = $ results [$ i ][$ ldap_map ["email " ]][0 ] ?? '' ;
244254 $ item ['ldap_location_override ' ] = $ results [$ i ]['ldap_location_override ' ] ?? '' ;
245255 $ item ['location_id ' ] = $ results [$ i ]['location_id ' ] ?? '' ;
246256 $ item ['telephone ' ] = $ results [$ i ][$ ldap_map ["phone " ]][0 ] ?? '' ;
257+ $ item ['mobile ' ] = $ results [$ i ][$ ldap_map ["mobile " ]][0 ] ?? '' ;
247258 $ item ['jobtitle ' ] = $ results [$ i ][$ ldap_map ["jobtitle " ]][0 ] ?? '' ;
259+ $ item ['address ' ] = $ results [$ i ][$ ldap_map ["ldap_address " ]][0 ] ?? '' ;
260+ $ item ['city ' ] = $ results [$ i ][$ ldap_map ["city " ]][0 ] ?? '' ;
261+ $ item ['state ' ] = $ results [$ i ][$ ldap_map ["state " ]][0 ] ?? '' ;
248262 $ item ['country ' ] = $ results [$ i ][$ ldap_map ["country " ]][0 ] ?? '' ;
263+ $ item ['zip ' ] = $ results [$ i ][$ ldap_map ["zip " ]][0 ] ?? '' ;
249264 $ item ['department ' ] = $ results [$ i ][$ ldap_map ["dept " ]][0 ] ?? '' ;
250265 $ item ['manager ' ] = $ results [$ i ][$ ldap_map ["manager " ]][0 ] ?? '' ;
251266 $ item ['location ' ] = $ results [$ i ][$ ldap_map ["location " ]][0 ] ?? '' ;
@@ -278,6 +293,9 @@ public function handle()
278293 if ($ ldap_map ["username " ] != null ){
279294 $ user ->username = $ item ['username ' ];
280295 }
296+ if ($ ldap_map ["display_name " ] != null ){
297+ $ user ->display_name = $ item ['display_name ' ];
298+ }
281299 if ($ ldap_map ["last_name " ] != null ){
282300 $ user ->last_name = $ item ['lastname ' ];
283301 }
@@ -293,6 +311,9 @@ public function handle()
293311 if ($ ldap_map ["phone " ] != null ){
294312 $ user ->phone = $ item ['telephone ' ];
295313 }
314+ if ($ ldap_map ["mobile " ] != null ){
315+ $ user ->mobile = $ item ['mobile ' ];
316+ }
296317 if ($ ldap_map ["jobtitle " ] != null ){
297318 $ user ->jobtitle = $ item ['jobtitle ' ];
298319 }
0 commit comments