예제 #1
0
function userpro_show_field($key, $array, $i, $args, $user_id = null)
{
    global $userpro;
    extract($array);
    extract($args);
    $res = null;
    /**
    		include & exclude
    		done by custom shortcode
    		params 
    		start here 
    		**/
    if (isset($args['exclude_fields']) && $args['exclude_fields'] != '') {
        if (in_array($key, explode(',', $args['exclude_fields']))) {
            $res = '';
            return false;
        }
    }
    if (isset($args['exclude_fields_by_name']) && $args['exclude_fields_by_name'] != '') {
        if (in_array($array['label'], explode(',', $args['exclude_fields_by_name']))) {
            $res = '';
            return false;
        }
    }
    if (isset($args['exclude_fields_by_type']) && $args['exclude_fields_by_type'] != '') {
        if (isset($array['type']) && in_array($array['type'], explode(',', $args['exclude_fields_by_type']))) {
            $res = '';
            return false;
        }
    }
    if (isset($args['include_fields']) && $args['include_fields'] != '') {
        if (!in_array($key, explode(',', $args['include_fields']))) {
            $res = '';
            return false;
        }
    }
    if (isset($args['include_fields_by_name']) && $args['include_fields_by_name'] != '') {
        if (!in_array($array['label'], explode(',', $args['include_fields_by_name']))) {
            $res = '';
            return false;
        }
    }
    if (isset($args['include_fields_by_type']) && $args['include_fields_by_type'] != '') {
        if (isset($array['type']) && !in_array($array['type'], explode(',', $args['include_fields_by_type'])) || !isset($array['type'])) {
            $res = '';
            return false;
        }
    }
    /**
    		end here
    		thanks please do not edit 
    		here unless you know what you do
    		**/
    if ($user_id) {
        $value = userpro_profile_data($key, $user_id);
        if (isset($array['type']) && $key != 'role' && in_array($array['type'], array('select', 'multiselect', 'checkbox', 'checkbox-full', 'radio', 'radio-full'))) {
            $value = userpro_profile_data_nicename($key, userpro_profile_data($key, $user_id));
        }
        if (isset($array['html']) && $array['html'] == 0) {
            $value = userpro_profile_nohtml($value);
        }
        if (isset($array['type']) && $array['type'] == 'picture') {
            if ($key == 'profilepicture') {
                $value = get_avatar($user_id, 64);
            } else {
                $crop = userpro_profile_data($key, $user_id);
                if ($crop) {
                    if (isset($array['width'])) {
                        $width = $array['width'];
                        $height = $array['height'];
                    } else {
                        $width = '';
                        $height = '';
                    }
                    $value = '<img src="' . $crop . '" width="' . $width . '" height="' . $height . '" alt="" class="modified" />';
                }
            }
        }
        if (isset($array['type']) && $array['type'] == 'file') {
            $file = userpro_profile_data($key, $user_id);
            if ($file) {
                $value = '<div class="userpro-file-input"><a href="' . $file . '" ' . userpro_file_type_icon($file) . '>' . basename($file) . '</a></div>';
            }
        }
    }
    /* display a section */
    if ($allow_sections && isset($array['heading'])) {
        $res .= "<div class='userpro-section userpro-column userpro-collapsible-" . $array['collapsible'] . " userpro-collapsed-" . $array['collapsed'] . "'>" . $array['heading'] . "</div>";
    }
    /* display a field */
    if (!$user_id) {
        $user_id = 0;
    }
    if (isset($array['type']) && userpro_field_by_role($key, $user_id) && !empty($value) && userpro_field_is_viewable($key, $user_id, $args) && !in_array($key, $userpro->fields_to_hide_from_view()) && $array['type'] != 'mailchimp' && $array['type'] != 'followers') {
        $res .= "<div class='userpro-field userpro-field-" . $key . " " . userpro_private_field_class($array) . " userpro-field-{$template}' data-key='{$key}'>";
        if ($array['label'] && $array['type'] != 'passwordstrength') {
            if ($args['field_icons'] == 1) {
                $res .= "<div class='userpro-label view iconed'>";
            } else {
                $res .= "<div class='userpro-label view'>";
            }
            $res .= "<label for='{$key}-{$i}'>" . $array['label'] . "</label>";
            if ($args['field_icons'] == 1 && $userpro->field_icon($key)) {
                $res .= '<span class="userpro-field-icon"><i class="userpro-icon-' . $userpro->field_icon($key) . '"></i></span>';
            }
            $res .= "</div>";
        }
        $res .= "<div class='userpro-input'>";
        //***
        /* Before custom field is displayed!
         */
        /**/
        $value = apply_filters('userpro_before_value_is_displayed', $value, $key, $array, $user_id);
        /* SHOW VALUE */
        $countrylist = get_option('userpro_fields');
        $country = $countrylist['billing_country']['options'];
        if ($key == 'role') {
            $res .= userpro_user_role($value);
        } elseif ($key == 'billing_country') {
            foreach ($country as $country_code => $country_name) {
                if ($country_name == $value) {
                    $res .= $value;
                }
                if ($country_code == $value) {
                    $value = $country_name;
                    $res .= $value;
                }
            }
        } elseif ($key == 'shipping_country') {
            foreach ($country as $country_code => $country_name) {
                if ($country_name == $value) {
                    $res .= $value;
                }
                if ($country_code == $value) {
                    $value = $country_name;
                    $res .= $value;
                }
            }
        } else {
            $res .= $value;
        }
        /* hidden field notice */
        if (userpro_field_is_viewable($key, $user_id, $args) && (userpro_profile_data('hide_' . $key, $user_id) || userpro_field_default_hidden($key, $template, $args[$template . '_group']))) {
            $res .= '<div class="userpro-help">' . sprintf(__('(Your %s will not be visible to public)', 'userpro'), strtolower($array['label'])) . '</div>';
        }
        $res .= "<div class='userpro-clear'></div>";
        $res .= "</div>";
        $res .= "</div><div class='userpro-clear'></div>";
    }
    return $res;
}
예제 #2
0
파일: api.php 프로젝트: Darciro/PPM
 function extract_profile_for_mail($user_id, $form)
 {
     $output = '';
     $customfieldarray = array();
     foreach ($form as $k => $v) {
         if ($this->field_label($k) != '' && !strstr($k, 'pass')) {
             $val = userpro_profile_data($k, $user_id);
             if ($k == 'gender') {
                 $val = userpro_profile_data_nicename($k, userpro_profile_data($k, $user_id));
             }
             if (is_array($val)) {
                 $val = implode(', ', $val);
             }
             $output .= $this->field_label($k) . ': ' . $val . "\r\n";
             $customfieldarray['{USERPRO_' . $k . '}'] = $val;
         }
     }
     return array('output' => $output, 'custom_fields' => $customfieldarray);
 }
예제 #3
0
 function extract_profile_for_mail($user_id, $form)
 {
     $output = '';
     foreach ($form as $k => $v) {
         if ($this->field_label($k) != '' && !strstr($k, 'pass')) {
             $val = userpro_profile_data($k, $user_id);
             if ($k == 'gender') {
                 $val = userpro_profile_data_nicename($k, userpro_profile_data($k, $user_id));
             }
             if (is_array($val)) {
                 $val = implode(', ', $val);
             }
             $output .= $this->field_label($k) . ': ' . $val . "\r\n";
         }
     }
     return $output;
 }
예제 #4
0
파일: api.php 프로젝트: Darciro/PPM
 function field_value($field, $user_id)
 {
     $value = userpro_profile_data_nicename($field, userpro_profile_data($field, $user_id));
     return $value;
 }