Release 2.10 (#4549)
This commit is contained in:
@@ -95,7 +95,12 @@ final class ProfileController extends AbstractController
|
||||
|
||||
$this->flashSuccess('action.update.success');
|
||||
|
||||
return $this->redirectToRoute('user_profile_edit', ['username' => $profile->getUserIdentifier()]);
|
||||
$locale = $request->getLocale();
|
||||
if ($this->getUser()->getId() === $profile->getId()) {
|
||||
$locale = $profile->getPreferenceValue('language', $locale, false);
|
||||
}
|
||||
|
||||
return $this->redirectToRoute('user_profile_edit', ['username' => $profile->getUserIdentifier(), '_locale' => $locale]);
|
||||
}
|
||||
|
||||
return $this->render('user/profile.html.twig', [
|
||||
|
||||
@@ -10,7 +10,6 @@
|
||||
namespace App\Controller;
|
||||
|
||||
use App\Configuration\SystemConfiguration;
|
||||
use App\Entity\Timesheet;
|
||||
use App\Form\QuickEntryForm;
|
||||
use App\Model\QuickEntryWeek;
|
||||
use App\Repository\Query\TimesheetQuery;
|
||||
@@ -71,7 +70,6 @@ final class QuickEntryController extends AbstractController
|
||||
$result = $this->repository->getTimesheetResult($query);
|
||||
|
||||
$rows = [];
|
||||
/** @var Timesheet $timesheet */
|
||||
foreach ($result->getResults(true) as $timesheet) {
|
||||
$i = 0;
|
||||
$id = $timesheet->getProject()->getId() . '_' . $timesheet->getActivity()->getId();
|
||||
@@ -124,7 +122,6 @@ final class QuickEntryController extends AbstractController
|
||||
$defaultBegin = $factory->createDateTime($this->configuration->getTimesheetDefaultBeginTime());
|
||||
$defaultHour = (int) $defaultBegin->format('H');
|
||||
$defaultMinute = (int) $defaultBegin->format('i');
|
||||
$defaultBegin->setTime($defaultHour, $defaultMinute, 0, 0);
|
||||
|
||||
$formModel = new QuickEntryWeek($startWeek);
|
||||
|
||||
@@ -136,8 +133,9 @@ final class QuickEntryController extends AbstractController
|
||||
$tmp = $this->timesheetService->createNewTimesheet($user);
|
||||
$tmp->setProject($row['project']);
|
||||
$tmp->setActivity($row['activity']);
|
||||
$tmp->setBegin(clone $day['day']);
|
||||
$tmp->getBegin()->setTime($defaultHour, $defaultMinute, 0, 0);
|
||||
$newTime = \DateTime::createFromInterface($day['day']);
|
||||
$newTime = $newTime->setTime($defaultHour, $defaultMinute);
|
||||
$tmp->setBegin($newTime);
|
||||
$this->timesheetService->prepareNewTimesheet($tmp);
|
||||
$model->addTimesheet($tmp);
|
||||
} else {
|
||||
@@ -151,8 +149,9 @@ final class QuickEntryController extends AbstractController
|
||||
$empty->markAsPrototype();
|
||||
foreach ($week as $dayId => $day) {
|
||||
$tmp = $this->timesheetService->createNewTimesheet($user);
|
||||
$tmp->setBegin(clone $day['day']);
|
||||
$tmp->getBegin()->setTime($defaultHour, $defaultMinute, 0, 0);
|
||||
$newTime = \DateTime::createFromInterface($day['day']);
|
||||
$newTime = $newTime->setTime($defaultHour, $defaultMinute, 0, 0);
|
||||
$tmp->setBegin($newTime);
|
||||
$this->timesheetService->prepareNewTimesheet($tmp);
|
||||
$empty->addTimesheet($tmp);
|
||||
}
|
||||
@@ -165,8 +164,9 @@ final class QuickEntryController extends AbstractController
|
||||
$model = $formModel->addRow($user);
|
||||
foreach ($week as $dayId => $day) {
|
||||
$tmp = $this->timesheetService->createNewTimesheet($user);
|
||||
$tmp->setBegin(clone $day['day']);
|
||||
$tmp->getBegin()->setTime($defaultHour, $defaultMinute, 0, 0);
|
||||
$newTime = \DateTime::createFromInterface($day['day']);
|
||||
$newTime = $newTime->setTime($defaultHour, $defaultMinute, 0, 0);
|
||||
$tmp->setBegin($newTime);
|
||||
$this->timesheetService->prepareNewTimesheet($tmp);
|
||||
$model->addTimesheet($tmp);
|
||||
}
|
||||
@@ -193,7 +193,7 @@ final class QuickEntryController extends AbstractController
|
||||
foreach ($tmpModel->getTimesheets() as $timesheet) {
|
||||
if ($timesheet->getId() !== null) {
|
||||
$duration = $timesheet->getDuration(false);
|
||||
if ($duration === null || $timesheet->getEnd() === null) {
|
||||
if ($duration === null || $timesheet->isRunning()) {
|
||||
$deleteTimesheets[] = $timesheet;
|
||||
} else {
|
||||
$saveTimesheets[] = $timesheet;
|
||||
|
||||
@@ -19,7 +19,6 @@ use App\Export\Spreadsheet\Writer\XlsxWriter;
|
||||
use App\Form\Toolbar\UserToolbarForm;
|
||||
use App\Form\Type\UserType;
|
||||
use App\Form\UserCreateType;
|
||||
use App\Repository\Query\UserFormTypeQuery;
|
||||
use App\Repository\Query\UserQuery;
|
||||
use App\Repository\TimesheetRepository;
|
||||
use App\Repository\UserRepository;
|
||||
@@ -79,6 +78,7 @@ final class UserController extends AbstractController
|
||||
$table->addColumn('email', ['class' => 'd-none', 'orderBy' => false]);
|
||||
$table->addColumn('lastLogin', ['class' => 'd-none', 'orderBy' => false]);
|
||||
$table->addColumn('roles', ['class' => 'd-none', 'orderBy' => false]);
|
||||
$table->addColumn('system_account', ['class' => 'd-none', 'orderBy' => 'systemAccount']);
|
||||
|
||||
foreach ($event->getPreferences() as $userPreference) {
|
||||
$table->addColumn('mf_' . $userPreference->getName(), ['title' => $userPreference->getLabel(), 'class' => 'd-none', 'orderBy' => false, 'translation_domain' => 'messages', 'data' => $userPreference]);
|
||||
@@ -163,13 +163,7 @@ final class UserController extends AbstractController
|
||||
]
|
||||
])
|
||||
->add('user', UserType::class, [
|
||||
'query_builder' => function (UserRepository $repo) use ($userToDelete) {
|
||||
$query = new UserFormTypeQuery();
|
||||
$query->addUserToIgnore($userToDelete);
|
||||
$query->setUser($this->getUser());
|
||||
|
||||
return $repo->getQueryBuilderForFormType($query);
|
||||
},
|
||||
'ignore_users' => [$userToDelete],
|
||||
'required' => false,
|
||||
])
|
||||
->setAction($this->generateUrl('admin_user_delete', ['id' => $userToDelete->getId()]))
|
||||
|
||||
Reference in New Issue
Block a user