mirror of
https://github.com/VueFileManager/vuefilemanager.git
synced 2026-04-05 18:23:48 +00:00
- added it_test_user_timezone
- refactored set_time_by_user_timezone
This commit is contained in:
@@ -121,8 +121,7 @@ class Folder extends Model
|
||||
public function getCreatedAtAttribute(): string
|
||||
{
|
||||
return format_date(
|
||||
set_time_by_user_timezone($this->attributes['created_at']),
|
||||
__t('time')
|
||||
set_time_by_user_timezone($this->attributes['created_at']), __t('time')
|
||||
);
|
||||
}
|
||||
|
||||
@@ -136,8 +135,7 @@ class Folder extends Model
|
||||
}
|
||||
|
||||
return format_date(
|
||||
set_time_by_user_timezone($this->attributes['deleted_at']),
|
||||
__t('time')
|
||||
set_time_by_user_timezone($this->attributes['deleted_at']), __t('time')
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
@@ -14,6 +14,7 @@ use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
* @method static find(array|string $setting)
|
||||
* @property string value
|
||||
* @property string name
|
||||
* @property mixed timezone
|
||||
*/
|
||||
class Setting extends Model
|
||||
{
|
||||
|
||||
@@ -926,21 +926,18 @@ if (! function_exists('get_files_for_zip')) {
|
||||
if (! function_exists('set_time_by_user_timezone')) {
|
||||
/**
|
||||
* Set time by user timezone GMT
|
||||
*
|
||||
* @param $time
|
||||
* @return Carbon
|
||||
*/
|
||||
function set_time_by_user_timezone($time)
|
||||
function set_time_by_user_timezone(string $time): string|Carbon
|
||||
{
|
||||
$user = Auth::user();
|
||||
|
||||
if ($user) {
|
||||
$time_zone = intval($user->settings->timezone * 60 ?? null);
|
||||
$time_zone = $user->settings->timezone ?? 0;
|
||||
|
||||
return Carbon::parse($time)->addMinutes($time_zone ?? 0);
|
||||
return Carbon::parse($time)->addMinutes($time_zone * 60);
|
||||
}
|
||||
|
||||
return Carbon::parse($time);
|
||||
return $time;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
<?php
|
||||
namespace Tests\Feature\Accounts;
|
||||
|
||||
use Domain\Folders\Models\Folder;
|
||||
use Storage;
|
||||
use Notification;
|
||||
use Tests\TestCase;
|
||||
@@ -31,6 +32,31 @@ class UserAccountTest extends TestCase
|
||||
Storage::disk('local')
|
||||
->assertExists('files/' . User::first()->id);
|
||||
}
|
||||
/**
|
||||
* @test
|
||||
*/
|
||||
public function it_test_user_timezone()
|
||||
{
|
||||
$user = User::factory(User::class)
|
||||
->create(['role' => 'user']);
|
||||
|
||||
Folder::factory(Folder::class)
|
||||
->create([
|
||||
'user_id' => $user->id,
|
||||
'created_at' => now(),
|
||||
]);
|
||||
|
||||
$user->settings()->update([
|
||||
'timezone' => '2.0'
|
||||
]);
|
||||
|
||||
$this
|
||||
->actingAs($user)
|
||||
->getJson("/api/browse/folders/undefined")
|
||||
->assertJsonFragment([
|
||||
'created_at' => '01. January. 2021 at 02:00',
|
||||
]);
|
||||
}
|
||||
|
||||
/**
|
||||
* @test
|
||||
|
||||
Reference in New Issue
Block a user