Fix load_search.php get value from extrafieldsaved

pull/3959/head
Julio 4 years ago
parent 905de3a687
commit a5ca7bb5b2
  1. 29
      public/main/search/load_search.php
  2. 5
      src/CoreBundle/Entity/ExtraField.php

@ -28,7 +28,7 @@ if ($allowToSee === false) {
$userId = api_get_user_id();
$userInfo = api_get_user_info();
$userToLoad = isset($_GET['user_id']) ? $_GET['user_id'] : 0;
$userToLoad = isset($_GET['user_id']) ? (int) $_GET['user_id'] : 0;
$userToLoadInfo = [];
if ($userToLoad) {
@ -93,6 +93,11 @@ if (!empty($userInfo)) {
break;
}
// Allow access for admins.
if (empty($users) && api_is_platform_admin()) {
$users[] = $userToLoadInfo;
}
if (!empty($users)) {
$userList = [];
foreach ($users as $user) {
@ -130,6 +135,14 @@ if (!empty($items)) {
}
}
if (isset($defaults['extra_access_start_date']) && isset($defaults['extra_access_start_date'][0])) {
$defaults['extra_access_start_date'] = $defaults['extra_access_start_date'][0];
}
if (isset($defaults['extra_access_end_date']) && isset($defaults['extra_access_end_date'][0])) {
$defaults['extra_access_end_date'] = $defaults['extra_access_end_date'][0];
}
$extraField = new ExtraField('session');
$extraFieldValue = new ExtraFieldValue('session');
$extraFieldValueUser = new ExtraFieldValue('user');
@ -736,17 +749,27 @@ if ($form->validate()) {
/** @var ExtraFieldSavedSearch $saved */
$saved = $em->getRepository(ExtraFieldSavedSearch::class)->findOneBy($search);
if (empty($value)) {
$value = [];
}
if (is_string($value)) {
$value = [$value];
}
if ($saved) {
$saved
->setField($extraFieldObj)
->setUser(api_get_user_entity($userToLoad))
->setValue($value);
->setValue($value)
;
} else {
$saved = new ExtraFieldSavedSearch();
$saved
->setField($extraFieldObj)
->setUser(api_get_user_entity($userToLoad))
->setValue($value);
->setValue($value)
;
}
$em->persist($saved);
$em->flush();

@ -165,10 +165,7 @@ class ExtraField
return $this;
}
/**
* @return int
*/
public function getFieldType()
public function getFieldType(): int
{
return $this->fieldType;
}

Loading…
Cancel
Save