コード例 #1
0
 public static function getUserProfileFieldInfoBySID($user_profile_field_sid)
 {
     $field_info = parent::getObjectInfo("user_profile_fields", $user_profile_field_sid);
     if (in_array($field_info['type'], array('list', 'multilist'))) {
         if (!empty($field_info['parent_sid'])) {
             if ($field_info['id'] == 'Country') {
                 $displayAS = !empty($field_info['display_as']) ? $field_info['display_as'] : 'country_name';
                 $field_info['list_values'] = SJB_CountriesManager::getAllCountriesCodesAndNames(true, $displayAS);
             }
         } else {
             $field_info['list_values'] = SJB_UserProfileFieldDBManager::getListValuesBySID($user_profile_field_sid);
         }
     } elseif ($field_info['type'] == 'tree') {
         $field_info['tree_values'] = SJB_UserProfileFieldTreeManager::getTreeValuesBySID($user_profile_field_sid);
         $field_info['tree_depth'] = SJB_UserProfileFieldTreeManager::getTreeDepthBySID($user_profile_field_sid);
     } elseif ($field_info['type'] == 'monetary') {
         $field_info['currency_values'] = SJB_CurrencyManager::getActiveCurrencyList();
     } elseif ($field_info['type'] == 'location') {
         $field_info['fields'] = SJB_UserProfileFieldManager::getUserProfileFieldsInfoByParentSID($user_profile_field_sid);
     }
     return $field_info;
 }