Fix extrafield of type tag when save a user info #1941

pull/2487/head
Angel Fernando Quiroz Campos 8 years ago
parent f7b24a3e1f
commit d6384115de
  1. 20
      main/inc/ajax/user_manager.ajax.php
  2. 2
      main/inc/lib/extra_field_value.lib.php
  3. 9
      main/inc/lib/usermanager.lib.php

@ -90,13 +90,22 @@ switch ($action) {
}
break;
case 'search_tags':
header('Content-Type: application/json');
$result = ['items' => []];
if (api_is_anonymous()) {
echo '';
} else {
if (isset($_GET['tag']) && isset($_GET['field_id'])) {
echo UserManager::get_tags($_GET['tag'], $_GET['field_id'], 'json', '10');
}
echo json_encode($result);
break;
}
if (!isset($_GET['q'], $_GET['field_id'])) {
echo json_encode($result);
break;
}
$result['items'] = UserManager::get_tags($_GET['q'], $_GET['field_id'], null, '10');
echo json_encode($result);
break;
case 'generate_api_key':
if (api_is_anonymous()) {
@ -174,4 +183,3 @@ switch ($action) {
echo '';
}
exit;

@ -106,7 +106,7 @@ class ExtraFieldValue extends Model
// Parse params.
foreach ($extraFields as $fieldDetails) {
if ($fieldDetails['visible_to_self'] != 1) {
if ($fieldDetails['visible_to_self'] != 1 && !api_is_platform_admin(true, true)) {
continue;
}

@ -389,10 +389,11 @@ class UserManager
UrlManager::add_user_to_url($userId, 1);
}
$extra['item_id'] = $userId;
if (is_array($extra) && count($extra) > 0) {
foreach ($extra as $fname => $fvalue) {
self::update_extra_field_value($userId, $fname, $fvalue);
}
$courseFieldValue = new ExtraFieldValue('user');
$courseFieldValue->saveFieldValues($extra);
} else {
// Create notify settings by default
self::update_extra_field_value($userId, 'mail_notify_invitation', '1');
@ -3475,7 +3476,7 @@ class UserManager
$return = array();
if (Database::num_rows($result) > 0) {
while ($row = Database::fetch_array($result, 'ASSOC')) {
$return[] = array('key' => $row['tag'], 'value' => $row['tag']);
$return[] = array('id' => $row['tag'], 'text' => $row['tag']);
}
}
if ($return_format === 'json') {

Loading…
Cancel
Save