$udf->setCity($user_data['city']);
 $udf->setCountry($user_data['country']);
 $udf->setProvince($user_data['province']);
 $udf->setWorkPhone($user_data['work_phone']);
 $udf->setWorkPhoneExt($user_data['work_phone_ext']);
 $udf->setWorkEmail($user_data['work_email']);
 $udf->setPayPeriodSchedule($user_data['pay_period_schedule_id']);
 $udf->setPolicyGroup($user_data['policy_group_id']);
 $udf->setCurrency($user_data['currency_id']);
 if ($permission->Check('permission', 'edit') and isset($user_data['permission_control_id'])) {
     $udf->setPermissionControl($user_data['permission_control_id']);
 }
 $udf->setHireDate($user_data['hire_date']);
 $udf->setEmployeeNumber($user_data['employee_number']);
 $udf->setDefaultBranch($user_data['default_branch_id']);
 $udf->setDefaultDepartment($user_data['default_department_id']);
 $udf->setLanguage($user_data['language']);
 if ($user_data['language'] === 'en') {
     $udf->setDateFormat($user_data['date_format']);
 } else {
     $udf->setDateFormat($user_data['other_date_format']);
 }
 $udf->setTimeFormat($user_data['time_format']);
 $udf->setTimeUnitFormat($user_data['time_unit_format']);
 $udf->setTimeZone($user_data['time_zone']);
 $udf->setItemsPerPage($user_data['items_per_page']);
 $udf->setStartWeekDay($user_data['start_week_day']);
 if (isset($user_data['enable_email_notification_exception'])) {
     $udf->setEnableEmailNotificationException(TRUE);
 } else {
     $udf->setEnableEmailNotificationException(FALSE);