pull/7354/head
Your Name 6 days ago
parent 54f49e2ef9
commit 5ebc1af91e

@ -66,7 +66,7 @@ class AppRegisterGrant extends AbstractGrant
$refreshToken = $this->issueRefreshToken($accessToken);
if ($refreshToken !== null) {
if ($refreshToken instanceof \League\OAuth2\Server\Entities\RefreshTokenEntityInterface) {
$this->getEmitter()->emit(
new RequestRefreshTokenEvent(RequestEvent::REFRESH_TOKEN_ISSUED, $request, $refreshToken)
);

@ -91,7 +91,7 @@ class AppRegisterTokenFactory
protected function server(): AuthorizationServer
{
if ($this->server) {
if ($this->server instanceof \League\OAuth2\Server\AuthorizationServer) {
return $this->server;
}

@ -59,7 +59,7 @@ final class BackupToCloud extends Command
$newest = $backupDestination->newestBackup();
if ($newest === null) {
if (!$newest instanceof \Spatie\Backup\BackupDestination\Backup) {
$this->error('No backup found to upload.');
return Command::FAILURE;

@ -78,7 +78,7 @@ class CuratedOnboardingCommand extends Command
{
$id = search(
label: 'Search for a username or email',
options: fn (string $value) => strlen($value) > 0
options: fn (string $value) => $value !== ''
? CuratedRegister::where(function ($query) use ($value) {
$query->whereLike('username', "%{$value}%")
->orWhereLike('email', "%{$value}%");

@ -171,7 +171,7 @@ class FixPostCounts extends Command
{
$values = (array) $this->option('active');
if (empty($values)) {
if ($values === []) {
return null;
}
@ -223,7 +223,7 @@ class FixPostCounts extends Command
$drifted = array_filter($drift, fn ($m) => $m['cached'] !== $m['live']);
if (empty($drifted)) {
if ($drifted === []) {
// No drift on the selected metrics: stay silent.
return false;
}

@ -178,7 +178,7 @@ class FixProfileCounts extends Command
{
$values = (array) $this->option('active');
if (empty($values)) {
if ($values === []) {
return null;
}
@ -230,7 +230,7 @@ class FixProfileCounts extends Command
$drifted = array_filter($drift, fn ($m) => $m['cached'] !== $m['live']);
if (empty($drifted)) {
if ($drifted === []) {
// No drift on the selected metrics: stay silent.
return false;
}

@ -123,7 +123,7 @@ class ImportCities extends Command
$count++;
if ($count % $this->argument('chunk') == 0) {
if ($count % $this->argument('chunk') === 0) {
$this->insertBuffer($buffer);
$bar->advance(count($buffer));
$buffer = [];

@ -96,7 +96,7 @@ class InstanceManager extends Command
{
$id = search(
'Search by domain',
fn (string $value) => strlen($value) > 0
fn (string $value) => $value !== ''
? Instance::whereUnlisted(false)->where('domain', 'like', "%{$value}%")->pluck('domain', 'id')->all()
: []
);
@ -136,7 +136,7 @@ class InstanceManager extends Command
{
$id = search(
'Search by domain',
fn (string $value) => strlen($value) > 0
fn (string $value) => $value !== ''
? Instance::whereUnlisted(true)->where('domain', 'like', "%{$value}%")->pluck('domain', 'id')->all()
: []
);
@ -176,7 +176,7 @@ class InstanceManager extends Command
{
$id = search(
'Search by domain',
fn (string $value) => strlen($value) > 0
fn (string $value) => $value !== ''
? Instance::whereBanned(false)->where('domain', 'like', "%{$value}%")->pluck('domain', 'id')->all()
: []
);
@ -216,7 +216,7 @@ class InstanceManager extends Command
{
$id = search(
'Search by domain',
fn (string $value) => strlen($value) > 0
fn (string $value) => $value !== ''
? Instance::whereBanned(true)->where('domain', 'like', "%{$value}%")->pluck('domain', 'id')->all()
: []
);

@ -272,7 +272,7 @@ class MediaUpdateS3CDNUrl extends Command
$changes[$field] = ['from' => $current, 'to' => $rebuilt];
}
if (empty($changes)) {
if ($changes === []) {
return false;
}
@ -337,7 +337,7 @@ class MediaUpdateS3CDNUrl extends Command
$diskHost = parse_url($url, PHP_URL_HOST);
if ($diskHost && strcasecmp($diskHost, $this->newHost) !== 0) {
// Override host was requested; swap it into the disk-built URL.
$url = preg_replace('#^(https?://)'.preg_quote($diskHost, '#').'#i', '$1'.$this->newHost, $url);
return preg_replace('#^(https?://)'.preg_quote($diskHost, '#').'#i', '$1'.$this->newHost, $url);
}
return $url;

@ -174,7 +174,7 @@ class ExportLanguages extends Command
foreach ($strings as $key => $value) {
if (is_array($value)) {
$filtered = $this->stripEmptyStrings($value);
if (! empty($filtered)) {
if ($filtered !== []) {
$result[$key] = $filtered;
}
} elseif (is_string($value)) {

@ -212,7 +212,7 @@ class AvatarStorage extends Command
return;
}
if ((bool) config_cache('pixelfed.cloud_storage') == false && config_cache('federation.avatars.store_local') == false) {
if ((bool) config_cache('pixelfed.cloud_storage') === false && config_cache('federation.avatars.store_local') == false) {
$this->error('You have cloud storage disabled and local avatar storage disabled, we cannot refetch avatars.');
return;

@ -66,14 +66,12 @@ class AvatarStorageDeepClean extends Command
if (! $this->confirm('Do you want to continue where you left off?')) {
$this->error('Aborting...');
exit;
} else {
$start = Cache::has('cmd:asdp') ? (int) Cache::get('cmd:asdp') : (int) Storage::get('avatar-deep-clean.json');
if ($start && $start < 1 || $start > PHP_INT_MAX) {
$this->error('Error fetching cached value');
$this->error('Aborting...');
exit;
}
}
$start = Cache::has('cmd:asdp') ? (int) Cache::get('cmd:asdp') : (int) Storage::get('avatar-deep-clean.json');
if ($start && $start < 1 || $start > PHP_INT_MAX) {
$this->error('Error fetching cached value');
$this->error('Aborting...');
exit;
}
}
@ -99,11 +97,7 @@ class AvatarStorageDeepClean extends Command
protected function activeCheck()
{
if (Storage::exists('avatar-deep-clean.json') || Cache::has('cmd:asdp')) {
return false;
}
return true;
return !Storage::exists('avatar-deep-clean.json') && !Cache::has('cmd:asdp');
}
protected function handleAvatar($avatar)

@ -38,7 +38,7 @@ class FixMediaDriver extends Command
return Command::SUCCESS;
}
if ((bool) config_cache('pixelfed.cloud_storage') == false) {
if ((bool) config_cache('pixelfed.cloud_storage') === false) {
$this->error('Cloud storage not enabled, exiting...');
return Command::SUCCESS;

@ -41,7 +41,7 @@ class GenerateInstanceActor extends Command
});
$this->info('Instance actor succesfully generated. You do not need to run this command again.');
return;
return null;
}
$pkiConfig = [

@ -142,7 +142,7 @@ class Installer extends Command
$missing = [];
foreach ($extensions as $ext) {
if (extension_loaded($ext) == false) {
if (extension_loaded($ext) === false) {
$this->error("- \"{$ext}\" not found");
$missing[] = $ext;
} else {
@ -150,7 +150,7 @@ class Installer extends Command
}
}
if (! empty($missing)) {
if ($missing !== []) {
$continue = $this->choice('Some extensions are missing. Do you wish to continue?', ['yes', 'no'], 1);
if ($continue === 'no') {
$this->info('Exiting Installer.');
@ -158,6 +158,7 @@ class Installer extends Command
return 1;
}
}
return null;
}
@ -179,6 +180,7 @@ class Installer extends Command
} else {
$this->info('- Found FFmpeg!');
}
return null;
}
protected function checkOptimiseDependencies()
@ -215,14 +217,13 @@ class Installer extends Command
];
foreach ($paths as $path) {
if (is_writable($path) == false) {
if (is_writable($path) === false) {
$this->error('- Invalid permission found! Aborting installation.');
$this->error(' Please make the following path writeable by the web server:');
$this->error(" $path");
exit;
} else {
$this->info("- Found valid permissions for {$path}");
}
$this->info("- Found valid permissions for {$path}");
}
}

@ -60,7 +60,7 @@ class GarbageCollectorStory extends Command
{
$queue = StoryService::rotateQueue();
if (! $queue || count($queue) == 0) {
if (! $queue || count($queue) === 0) {
return;
}

@ -29,7 +29,7 @@ class WeeklyInstanceScan extends Command
*/
public function handle()
{
if ((bool) config_cache('federation.activitypub.enabled') == false) {
if ((bool) config_cache('federation.activitypub.enabled') === false) {
return;
}

@ -30,7 +30,7 @@ class StatusAvatar extends Command
{
$avatar = $this->resolve($this->argument('id'));
if (! $avatar) {
if (!$avatar instanceof \App\Models\Avatar) {
$this->error('No avatar found for "'.$this->argument('id').'" (tried avatar id then profile_id).');
return self::FAILURE;

@ -29,7 +29,7 @@ class StatusEmoji extends Command
{
$emoji = $this->resolve($this->argument('id'));
if (! $emoji) {
if (!$emoji instanceof \App\Models\CustomEmoji) {
$this->error('No custom emoji found for "'.$this->argument('id').'" (tried id, shortcode, then media filename).');
return self::FAILURE;

@ -27,7 +27,7 @@ class StatusInstance extends Command
{
$instance = $this->resolve($this->argument('id'));
if (! $instance) {
if (!$instance instanceof \App\Models\Instance) {
$this->error('No instance found for "'.$this->argument('id').'".');
return self::FAILURE;

@ -39,7 +39,7 @@ class StatusProfile extends Command
$profile = $this->resolveProfile($id);
if (! $profile) {
if (!$profile instanceof \App\Models\Profile) {
$this->error('No profile found for "'.$id.'".');
$this->suggestSimilar($id);
@ -272,7 +272,7 @@ class StatusProfile extends Command
$problems[] = 'followers_count ('.$cached.') out of sync with live count ('.$live.').';
}
if ($problems) {
if ($problems !== []) {
$this->error('ISSUES:');
foreach ($problems as $p) {
$this->line(' ✗ '.$p);

@ -216,7 +216,7 @@ class StatusStatuses extends Command
}
}
if ($stale) {
if ($stale !== []) {
$this->error('STALE MEDIA URLS DETECTED:');
foreach ($stale as $s) {
$this->line(' ✗ '.$s);

@ -178,7 +178,7 @@ class StatusUser extends Command
$problems[] = 'profile_id is EMPTY (user has no linked profile — avatarUrl/profile routes will misbehave)';
}
if ($problems) {
if ($problems !== []) {
$this->error('POTENTIAL LOGIN / RESET BLOCKERS:');
foreach ($problems as $p) {
$this->line(' ✗ '.$p);
@ -187,7 +187,7 @@ class StatusUser extends Command
$this->info('No obvious auth blockers detected on the user row.');
}
if ($ok) {
if ($ok !== []) {
$this->newLine();
$this->comment('OK checks:');
foreach ($ok as $o) {
@ -288,7 +288,7 @@ class StatusUser extends Command
$problems[] = 'followers_count ('.$cachedFollowers.') is out of sync with live count ('.$liveFollowers.').';
}
if ($problems) {
if ($problems !== []) {
$this->newLine();
$this->error('PROFILE ISSUES:');
foreach ($problems as $p) {

@ -47,7 +47,7 @@ class AddUserDomainBlock extends Command
protected function validateDomain($domain)
{
if (! strpos($domain, '.')) {
return;
return null;
}
if (str_starts_with($domain, 'https://')) {
@ -62,18 +62,18 @@ class AddUserDomainBlock extends Command
$valid = filter_var($domain, FILTER_VALIDATE_DOMAIN, FILTER_FLAG_HOSTNAME | FILTER_NULL_ON_FAILURE);
if (! $valid) {
return;
return null;
}
if ($domain === config('pixelfed.domain.app')) {
$this->error('Invalid domain');
return;
return null;
}
$confirmed = confirm('Are you sure you want to block '.$domain.'?');
if (! $confirmed) {
return;
return null;
}
return $domain;

@ -46,7 +46,7 @@ class DeleteUserDomainBlock extends Command
protected function validateDomain($domain)
{
if (! strpos($domain, '.')) {
return;
return null;
}
if (str_starts_with($domain, 'https://')) {
@ -61,16 +61,16 @@ class DeleteUserDomainBlock extends Command
$valid = filter_var($domain, FILTER_VALIDATE_DOMAIN, FILTER_FLAG_HOSTNAME | FILTER_NULL_ON_FAILURE);
if (! $valid) {
return;
return null;
}
if ($domain === config('pixelfed.domain.app')) {
return;
return null;
}
$confirmed = confirm('Are you sure you want to unblock '.$domain.'?');
if (! $confirmed) {
return;
return null;
}
return $domain;

@ -34,7 +34,7 @@ class UserAccountDelete extends Command
public function handle(): int
{
$user = $this->promptForDeletedUser();
if (! $user) {
if (!$user instanceof \App\Models\User) {
$this->error('No deleted user selected.');
return self::FAILURE;
@ -115,7 +115,7 @@ class UserAccountDelete extends Command
config('app.url').'/inbox',
$digest,
);
if (empty($testHeaders) || ! isset($testHeaders['Signature'])) {
if ($testHeaders === [] || ! isset($testHeaders['Signature'])) {
$this->error('Instance actor signing failed — run php artisan instance:actor');
return self::FAILURE;
@ -242,14 +242,14 @@ class UserAccountDelete extends Command
{
$id = search(
label: 'Search for the account to delete by username',
placeholder: 'john.appleseed',
options: fn (string $value) => strlen($value) > 0
options: fn (string $value) => $value !== ''
? User::withTrashed()
->whereIn('status', ['deleted', 'delete'])
->where('username', 'like', "%{$value}%")
->pluck('username', 'id')
->all()
: [],
placeholder: 'john.appleseed',
);
return User::withTrashed()->find($id);

@ -85,7 +85,7 @@ class UserDelete extends Command implements PromptsForMissingInput
return;
if (ctype_digit($id) == true) {
if (ctype_digit($id) === true) {
$user = User::find($id);
} else {
$user = User::whereUsername($id)->first();

@ -38,7 +38,7 @@ class UserRegistrationMagicLink extends Command
$this->info('php artisan user:app-magic-link --username=dansup');
$this->info('php artisan user:app-magic-link --email=dansup@pixelfed.com');
return;
return null;
}
$user = User::when($username, function ($q, $username) {
return $q->whereUsername($username);
@ -51,19 +51,19 @@ class UserRegistrationMagicLink extends Command
if (! $user) {
$this->error('We cannot find any matching accounts');
return;
return null;
}
if ($user->email_verified_at) {
$this->error('User already verified email address');
return;
return null;
}
if (! $user->register_source || $user->register_source !== 'app' || ! $user->app_register_token) {
$this->error('User did not register via app');
return;
return null;
}
$verify = EmailVerification::whereUserId($user->id)->first();
@ -71,7 +71,7 @@ class UserRegistrationMagicLink extends Command
if (! $verify) {
$this->error('Cannot find user verification codes');
return;
return null;
}
$appUrl = 'pixelfed://confirm-account/'.$user->app_register_token.'?rt='.$verify->random_token;

@ -39,7 +39,7 @@ class UserShow extends Command
public function handle()
{
$id = $this->argument('id');
if (ctype_digit($id) == true) {
if (ctype_digit($id) === true) {
$user = User::find($id);
} else {
$user = User::whereUsername($id)->first();

@ -39,7 +39,7 @@ class UserUnsuspend extends Command
public function handle()
{
$id = $this->argument('id');
if (ctype_digit($id) == true) {
if (ctype_digit($id) === true) {
$user = User::find($id);
} else {
$user = User::whereUsername($id)->first();

@ -33,7 +33,7 @@ class AccountInterstitialController extends Controller
$meta = json_decode($interstitial->meta);
$view = $interstitial->view;
return view($view, compact('interstitial', 'meta'));
return view($view, ['interstitial' => $interstitial, 'meta' => $meta]);
}
public function read(Request $request): RedirectResponse

@ -15,7 +15,7 @@ trait AdminDiscoverController
{
$categories = DiscoverCategory::orderByDesc('id')->paginate(10);
return view('admin.discover.home', compact('categories'));
return view('admin.discover.home', ['categories' => $categories]);
}
public function discoverCreateCategory()
@ -51,7 +51,7 @@ trait AdminDiscoverController
{
$category = DiscoverCategory::findOrFail($id);
return view('admin.discover.show', compact('category'));
return view('admin.discover.show', ['category' => $category]);
}
public function discoverCategoryUpdate(Request $request, $id)

@ -17,7 +17,7 @@ trait AdminGroupsController
{
$stats = $this->groupAdminStats();
return view('admin.groups.home', compact('stats'));
return view('admin.groups.home', ['stats' => $stats]);
}
protected function groupAdminStats()

@ -38,7 +38,8 @@ trait AdminHashtagsController
->when($action, function ($q, $action) {
if ($action === 'banned') {
return $q->whereIsBanned(true);
} elseif ($action === 'nsfw') {
}
if ($action === 'nsfw') {
return $q->whereIsNsfw(true);
}
})

@ -32,24 +32,24 @@ trait AdminMediaController
->orWhere('mime', $request->input('search'))
->paginate(12);
return view('admin.media.home', compact('media'));
return view('admin.media.home', ['media' => $media]);
}
if ($request->input('layout') == 'banned') {
$media = MediaBlocklist::latest()->paginate(12);
return view('admin.media.home', compact('media'));
return view('admin.media.home', ['media' => $media]);
}
$media = Media::whereNull('remote_url')->orderby('id', 'desc')->simplePaginate(12);
return view('admin.media.home', compact('media'));
return view('admin.media.home', ['media' => $media]);
}
public function mediaShow(Request $request, $id)
{
$media = Media::findOrFail($id);
return view('admin.media.show', compact('media'));
return view('admin.media.show', ['media' => $media]);
}
}

@ -71,7 +71,7 @@ trait AdminUserController
return $u;
});
return view('admin.users.home', compact('users', 'pagination', 'search', 'col', 'dir', 'limit', 'trashed'));
return view('admin.users.home', ['users' => $users, 'pagination' => $pagination, 'search' => $search, 'col' => $col, 'dir' => $dir, 'limit' => $limit, 'trashed' => $trashed]);
}
public function userShow(Request $request, $id)
@ -79,7 +79,7 @@ trait AdminUserController
$user = User::findOrFail($id);
$profile = $user->profile;
return view('admin.users.show', compact('user', 'profile'));
return view('admin.users.show', ['user' => $user, 'profile' => $profile]);
}
public function userEdit(Request $request, $id)
@ -87,7 +87,7 @@ trait AdminUserController
$user = User::findOrFail($id);
$profile = $user->profile;
return view('admin.users.edit', compact('user', 'profile'));
return view('admin.users.edit', ['user' => $user, 'profile' => $profile]);
}
public function userEditSubmit(Request $request, $id)
@ -130,7 +130,7 @@ trait AdminUserController
$changed = true;
}
if ($changed == true) {
if ($changed === true) {
ModLogService::boot()
->objectUid($user->id)
->objectId($user->id)
@ -155,7 +155,7 @@ trait AdminUserController
$profile = $user->profile;
$logs = $user->accountLog()->orderByDesc('created_at')->paginate(10);
return view('admin.users.activity', compact('user', 'profile', 'logs'));
return view('admin.users.activity', ['user' => $user, 'profile' => $profile, 'logs' => $logs]);
}
public function userMessage(Request $request, $id)
@ -163,7 +163,7 @@ trait AdminUserController
$user = User::findOrFail($id);
$profile = $user->profile;
return view('admin.users.message', compact('user', 'profile'));
return view('admin.users.message', ['user' => $user, 'profile' => $profile]);
}
public function userMessageSend(Request $request, $id)
@ -195,7 +195,7 @@ trait AdminUserController
$user = User::findOrFail($id);
$profile = $user->profile;
return view('admin.users.modtools', compact('user', 'profile'));
return view('admin.users.modtools', ['user' => $user, 'profile' => $profile]);
}
public function userModLogs(Request $request, $id)
@ -206,7 +206,7 @@ trait AdminUserController
->orderByDesc('created_at')
->simplePaginate(10);
return view('admin.users.modlogs', compact('user', 'profile', 'logs'));
return view('admin.users.modlogs', ['user' => $user, 'profile' => $profile, 'logs' => $logs]);
}
public function userModLogsMessage(Request $request, $id)
@ -234,7 +234,7 @@ trait AdminUserController
$user = User::findOrFail($id);
$profile = $user->profile;
return view('admin.users.delete', compact('user', 'profile'));
return view('admin.users.delete', ['user' => $user, 'profile' => $profile]);
}
public function userDeleteProcess(Request $request, $id)

@ -30,7 +30,7 @@ class AdminInviteController extends Controller
return redirect('/');
}
return view('invite.admin_invite', compact('code'));
return view('invite.admin_invite', ['code' => $code]);
}
public function apiVerifyCheck(Request $request): JsonResponse
@ -151,7 +151,7 @@ class AdminInviteController extends Controller
abort_if($invite->expires_at && $invite->expires_at->lt(now()), 400, 'Invite expired');
abort_if($invite->max_uses && $invite->uses >= $invite->max_uses, 400, 'Maximum invites reached.');
$invite->uses = $invite->uses + 1;
$invite->uses += 1;
event(new Registered($user = User::create([
'name' => Purify::clean($request->input('name')) ?? $request->input('username'),
@ -182,8 +182,7 @@ class AdminInviteController extends Controller
$request->session()->regenerate();
return redirect()->intended('/');
} else {
return response()->json([], 400);
}
return response()->json([], 400);
}
}

@ -1339,7 +1339,7 @@ class ApiV1Dot1Controller extends Controller
abort_if($accountSize === -1, 403, 'Invalid request.');
$updatedAccountSize = (int) $accountSize + (int) $sizeInKbs;
if ((bool) config_cache('pixelfed.enforce_account_limit') == true) {
if ((bool) config_cache('pixelfed.enforce_account_limit') === true) {
$limit = (int) config_cache('pixelfed.max_account_size');
if ($updatedAccountSize >= $limit) {
abort(403, 'Account size limit reached.');
@ -1347,7 +1347,7 @@ class ApiV1Dot1Controller extends Controller
}
$mimes = explode(',', config_cache('pixelfed.media_types'));
if (in_array($photo->getMimeType(), $mimes) == false) {
if (in_array($photo->getMimeType(), $mimes) === false) {
abort(403, 'Invalid or unsupported mime type.');
}

@ -253,7 +253,7 @@ class ApiV2Controller extends Controller
$sizeInKbs = (int) ceil($fileSize / 1000);
$updatedAccountSize = (int) $accountSize + (int) $sizeInKbs;
if ((bool) config_cache('pixelfed.enforce_account_limit') == true) {
if ((bool) config_cache('pixelfed.enforce_account_limit') === true) {
$limit = (int) config_cache('pixelfed.max_account_size');
if ($updatedAccountSize >= $limit) {
abort(403, 'Account size limit reached.');
@ -264,7 +264,7 @@ class ApiV2Controller extends Controller
$filterName = in_array($request->input('filter_name'), Filter::names()) ? $request->input('filter_name') : null;
$mimes = explode(',', config_cache('pixelfed.media_types'));
if (in_array($photo->getMimeType(), $mimes) == false) {
if (in_array($photo->getMimeType(), $mimes) === false) {
abort(403, 'Invalid or unsupported mime type.');
}

@ -76,7 +76,7 @@ class LoginController extends Controller
$user = PendingLoginService::user($request);
if (! $user) {
if (!$user instanceof \App\Models\User) {
return redirect()->route('login');
}
@ -151,7 +151,7 @@ class LoginController extends Controller
$user = $this->pendingUser($request, PendingLoginService::STEP_2FA);
if (! $user) {
if (!$user instanceof \App\Models\User) {
return $this->redirectToPendingStep($request);
}
@ -206,7 +206,7 @@ class LoginController extends Controller
{
$user = $this->pendingUser($request, PendingLoginService::STEP_VERIFY);
if (! $user) {
if (!$user instanceof \App\Models\User) {
return $this->redirectToPendingStep($request);
}
@ -231,7 +231,7 @@ class LoginController extends Controller
{
$user = $this->pendingUser($request, PendingLoginService::STEP_VERIFY);
if (! $user) {
if (!$user instanceof \App\Models\User) {
return $this->redirectToPendingStep($request);
}
@ -267,7 +267,7 @@ class LoginController extends Controller
{
$user = $this->pendingUser($request, PendingLoginService::STEP_VERIFY);
if (! $user) {
if (!$user instanceof \App\Models\User) {
return $this->redirectToPendingStep($request);
}
@ -327,7 +327,7 @@ class LoginController extends Controller
$randomToken
);
if (! $user) {
if (!$user instanceof \App\Models\User) {
if ($request->user() !== null) {
return redirect($this->redirectPath());
}

@ -85,34 +85,34 @@ class AvatarController extends Controller
$padded = str_pad($id, 19, 0, STR_PAD_LEFT);
$parts = str_split($padded, 3);
foreach ($parts as $k => $part) {
if ($k == 0) {
if ($k === 0) {
$prefix = storage_path('app/public/avatars/'.$parts[0]);
$this->checkDir($prefix);
}
if ($k == 1) {
if ($k === 1) {
$prefix = storage_path('app/public/avatars/'.$parts[0].'/'.$parts[1]);
$this->checkDir($prefix);
}
if ($k == 2) {
if ($k === 2) {
$prefix = storage_path('app/public/avatars/'.$parts[0].'/'.$parts[1].'/'.$parts[2]);
$this->checkDir($prefix);
}
if ($k == 3) {
if ($k === 3) {
$avatarpath = 'public/avatars/'.$parts[0].'/'.$parts[1].'/'.$parts[2].'/'.$parts[3];
$prefix = storage_path('app/'.$avatarpath);
$this->checkDir($prefix);
}
if ($k == 4) {
if ($k === 4) {
$avatarpath = 'public/avatars/'.$parts[0].'/'.$parts[1].'/'.$parts[2].'/'.$parts[3].'/'.$parts[4];
$prefix = storage_path('app/'.$avatarpath);
$this->checkDir($prefix);
}
if ($k == 5) {
if ($k === 5) {
$avatarpath = 'public/avatars/'.$parts[0].'/'.$parts[1].'/'.$parts[2].'/'.$parts[3].'/'.$parts[4].'/'.$parts[5];
$prefix = storage_path('app/'.$avatarpath);
$this->checkDir($prefix);
}
if ($k == 6) {
if ($k === 6) {
$avatarpath = 'public/avatars/'.$parts[0].'/'.$parts[1].'/'.$parts[2].'/'.$parts[3].'/'.$parts[4].'/'.$parts[5].'/'.$parts[6];
$prefix = storage_path('app/'.$avatarpath);
$this->checkDir($prefix);

@ -40,9 +40,8 @@ class BookmarkController extends Controller
if ($request->ajax()) {
return ['code' => 200, 'msg' => 'Bookmark removed!'];
} else {
return redirect()->back();
}
return redirect()->back();
}
abort(404, 'Error: You cannot bookmark private posts from accounts you do not follow.');
}

@ -21,7 +21,7 @@ class CircleController extends Controller
->orderByDesc('created_at')
->paginate(10);
return view('account.circles.home', compact('circles'));
return view('account.circles.home', ['circles' => $circles]);
}
public function create(Request $request): View
@ -62,6 +62,6 @@ class CircleController extends Controller
{
$circle = Circle::findOrFail($id);
return view('account.circles.show', compact('circle'));
return view('account.circles.show', ['circle' => $circle]);
}
}

@ -26,7 +26,7 @@ class CollectionController extends Controller
$collection->visibility = 'draft';
$collection->save();
return view('collection.create', compact('collection'));
return view('collection.create', ['collection' => $collection]);
}
public function show(Request $request, $id): View
@ -44,7 +44,7 @@ class CollectionController extends Controller
}
}
return view('collection.show', compact('collection'));
return view('collection.show', ['collection' => $collection]);
}
public function store(Request $request, $id)

@ -55,7 +55,7 @@ class CommentController extends Controller
->exists();
if ($filtered == true) {
return;
return null;
}
$reply = DB::transaction(function () use ($comment, $status, $profile, $nsfw) {
@ -98,7 +98,7 @@ class CommentController extends Controller
$fractal->setSerializer(new ArraySerializer);
$entity = new Fractal\Resource\Item($reply, new StatusTransformer);
$entity = $fractal->createData($entity)->toArray();
$response = [
return [
'code' => 200,
'msg' => 'Comment saved',
'username' => $profile->username,
@ -107,10 +107,8 @@ class CommentController extends Controller
'comment' => $reply->caption,
'entity' => $entity,
];
} else {
$response = redirect($status->url());
}
return $response;
return redirect($status->url());
}
}

@ -96,7 +96,7 @@ class ComposeController extends Controller
$sizeInKbs = (int) ceil($fileSize / 1000);
$updatedAccountSize = (int) $accountSize + (int) $sizeInKbs;
if ((bool) config_cache('pixelfed.enforce_account_limit') == true) {
if ((bool) config_cache('pixelfed.enforce_account_limit') === true) {
$limit = (int) config_cache('pixelfed.max_account_size');
if ($updatedAccountSize >= $limit) {
abort(403, 'Account size limit reached.');
@ -105,7 +105,7 @@ class ComposeController extends Controller
$mimes = explode(',', config_cache('pixelfed.media_types'));
abort_if(in_array($photo->getMimeType(), $mimes) == false, 400, 'Invalid media format');
abort_if(in_array($photo->getMimeType(), $mimes) === false, 400, 'Invalid media format');
// Check the blocklist against the temp upload BEFORE storing, so a
// blocked upload never leaves an orphaned file on disk (media:gc only
@ -607,7 +607,7 @@ class ComposeController extends Controller
$mediaType = StatusController::mimeTypeCheck($mimes);
if (in_array($mediaType, ['photo', 'video', 'photo:album']) == false) {
if (in_array($mediaType, ['photo', 'video', 'photo:album']) === false) {
abort(400, __('exception.compose.invalid.album'));
}

@ -58,7 +58,7 @@ class CuratedRegisterController extends Controller
$request->has('next') &&
$request->session()->has('cur-reg-con.cr-id');
return view('auth.curated-register.concierge', compact('emailConfirmed'));
return view('auth.curated-register.concierge', ['emailConfirmed' => $emailConfirmed]);
}
public function conciergeResponseSent(Request $request): View
@ -88,7 +88,7 @@ class CuratedRegisterController extends Controller
}
$activity = CuratedRegisterActivity::whereRegisterId($crid)->whereFromAdmin(true)->findOrFail($arid);
return view('auth.curated-register.concierge_form', compact('activity', 'showCaptcha'));
return view('auth.curated-register.concierge_form', ['activity' => $activity, 'showCaptcha' => $showCaptcha]);
}
public function conciergeFormStore(Request $request): RedirectResponse|View
@ -335,14 +335,14 @@ class CuratedRegisterController extends Controller
$step = 2;
$request->session()->put('cur-step', 1);
return view('auth.curated-register.index', compact('step'));
return view('auth.curated-register.index', ['step' => $step]);
case 2:
$this->stepTwo($request);
$step = 3;
$request->session()->put('cur-step', 2);
return view('auth.curated-register.index', compact('step'));
return view('auth.curated-register.index', ['step' => $step]);
case 3:
$this->stepThree($request);
@ -351,7 +351,7 @@ class CuratedRegisterController extends Controller
$verifiedEmail = true;
$request->session()->pull('cur-reg');
return view('auth.curated-register.index', compact('step', 'verifiedEmail'));
return view('auth.curated-register.index', ['step' => $step, 'verifiedEmail' => $verifiedEmail]);
default:
return redirect(route('help.email-confirmation-issues'));

@ -214,7 +214,7 @@ class DirectMessageController extends Controller
->whereFilterType('dm.mute')
->exists();
if ($recipient->domain == null && $hidden == false && ! $nf) {
if ($recipient->domain == null && $hidden === false && ! $nf) {
NotificationService::createNotification($recipient->id, $profile->id, 'dm', $dm->id, DirectMessage::class);
}
@ -463,7 +463,7 @@ class DirectMessageController extends Controller
$sizeInKbs = (int) ceil($fileSize / 1000);
$updatedAccountSize = (int) $accountSize + (int) $sizeInKbs;
if ((bool) config_cache('pixelfed.enforce_account_limit') == true) {
if ((bool) config_cache('pixelfed.enforce_account_limit') === true) {
$limit = (int) config_cache('pixelfed.max_account_size');
if ($updatedAccountSize >= $limit) {
abort(403, 'Account size limit reached.');
@ -471,7 +471,7 @@ class DirectMessageController extends Controller
}
$mimes = explode(',', config_cache('pixelfed.media_types'));
if (in_array($photo->getMimeType(), $mimes) == false) {
if (in_array($photo->getMimeType(), $mimes) === false) {
abort(403, 'Invalid or unsupported mime type.');
}
@ -567,7 +567,7 @@ class DirectMessageController extends Controller
if (strlen($q) < 3) {
return [];
}
if (substr_count($q, '@') == 2) {
if (substr_count($q, '@') === 2) {
WebfingerService::lookup($q);
}
$q = mb_substr($q, 1);

@ -271,9 +271,8 @@ class GroupsCommentController extends Controller
if ($request->wantsJson()) {
return response()->json(['Status successfully deleted.']);
} else {
return redirect('/groups/feed');
}
return redirect('/groups/feed');
}
public function likePost(Request $request)

@ -176,7 +176,7 @@ class GroupsFeedController extends Controller
return $status;
})
->filter(function ($s) use ($filtered) {
return $s && in_array($s['account']['id'], $filtered) == false;
return $s && in_array($s['account']['id'], $filtered) === false;
})
->values()
->toArray();

@ -124,6 +124,6 @@ class GroupsTopicController extends Controller
$gid = $group->id;
abort_if(! $group->isMember($pid), 403, 'Not a member of group.');
return view('groups.topic-feed', compact('gid', 'tag'));
return view('groups.topic-feed', ['gid' => $gid, 'tag' => $tag]);
}
}

@ -14,7 +14,7 @@ trait Instagram
{
public function instagram()
{
if ((bool) config_cache('pixelfed.import.instagram.enabled') != true) {
if ((bool) config_cache('pixelfed.import.instagram.enabled') !== true) {
abort(404, 'Feature not enabled');
}
@ -23,7 +23,7 @@ trait Instagram
public function instagramStart(Request $request)
{
if ((bool) config_cache('pixelfed.import.instagram.enabled') != true) {
if ((bool) config_cache('pixelfed.import.instagram.enabled') !== true) {
abort(404, 'Feature not enabled');
}
$completed = ImportJob::whereProfileId($request->user()->profile->id)
@ -40,7 +40,7 @@ trait Instagram
protected function instagramRedirectOrNew()
{
if ((bool) config_cache('pixelfed.import.instagram.enabled') != true) {
if ((bool) config_cache('pixelfed.import.instagram.enabled') !== true) {
abort(404, 'Feature not enabled');
}
$profile = request()->user()->profile;
@ -67,7 +67,7 @@ trait Instagram
public function instagramStepOne(Request $request, $uuid)
{
if ((bool) config_cache('pixelfed.import.instagram.enabled') != true) {
if ((bool) config_cache('pixelfed.import.instagram.enabled') !== true) {
abort(404, 'Feature not enabled');
}
$profile = $request->user()->profile;
@ -77,12 +77,12 @@ trait Instagram
->whereStage(1)
->firstOrFail();
return view('settings.import.instagram.step-one', compact('profile', 'job'));
return view('settings.import.instagram.step-one', ['profile' => $profile, 'job' => $job]);
}
public function instagramStepOneStore(Request $request, $uuid)
{
if ((bool) config_cache('pixelfed.import.instagram.enabled') != true) {
if ((bool) config_cache('pixelfed.import.instagram.enabled') !== true) {
abort(404, 'Feature not enabled');
}
$max = 'max:'.config('pixelfed.import.instagram.limits.size');
@ -128,7 +128,7 @@ trait Instagram
public function instagramStepTwo(Request $request, $uuid)
{
if ((bool) config_cache('pixelfed.import.instagram.enabled') != true) {
if ((bool) config_cache('pixelfed.import.instagram.enabled') !== true) {
abort(404, 'Feature not enabled');
}
$profile = $request->user()->profile;
@ -138,12 +138,12 @@ trait Instagram
->whereStage(2)
->firstOrFail();
return view('settings.import.instagram.step-two', compact('profile', 'job'));
return view('settings.import.instagram.step-two', ['profile' => $profile, 'job' => $job]);
}
public function instagramStepTwoStore(Request $request, $uuid)
{
if ((bool) config_cache('pixelfed.import.instagram.enabled') != true) {
if ((bool) config_cache('pixelfed.import.instagram.enabled') !== true) {
abort(404, 'Feature not enabled');
}
$this->validate($request, [
@ -172,7 +172,7 @@ trait Instagram
public function instagramStepThree(Request $request, $uuid)
{
if ((bool) config_cache('pixelfed.import.instagram.enabled') != true) {
if ((bool) config_cache('pixelfed.import.instagram.enabled') !== true) {
abort(404, 'Feature not enabled');
}
$profile = $request->user()->profile;
@ -183,12 +183,12 @@ trait Instagram
->whereStage(3)
->firstOrFail();
return view('settings.import.instagram.step-three', compact('profile', 'job'));
return view('settings.import.instagram.step-three', ['profile' => $profile, 'job' => $job]);
}
public function instagramStepThreeStore(Request $request, $uuid)
{
if ((bool) config_cache('pixelfed.import.instagram.enabled') != true) {
if ((bool) config_cache('pixelfed.import.instagram.enabled') !== true) {
abort(404, 'Feature not enabled');
}
$profile = $request->user()->profile;

@ -64,7 +64,7 @@ class InternalApiController extends Controller
->take(12)
->values();
return response()->json(compact('posts'));
return response()->json(['posts' => $posts]);
}
public function directMessage(Request $request, $profileId, $threadId): JsonResponse
@ -84,7 +84,7 @@ class InternalApiController extends Controller
->orderBy('created_at', 'asc')
->paginate(30);
return response()->json(compact('msg', 'profile', 'thread'), 200, [], JSON_PRETTY_PRINT);
return response()->json(['msg' => $msg, 'profile' => $profile, 'thread' => $thread], 200, [], JSON_PRETTY_PRINT);
}
public function statusReplies(Request $request, int $id): JsonResponse
@ -311,12 +311,12 @@ class InternalApiController extends Controller
}
$pid = $request->user()->profile->id;
$following = FollowerService::getFollowingIds($pid);
$visibility = in_array($profile->id, $following) == true ? ['public', 'unlisted', 'private'] : [];
$visibility = in_array($profile->id, $following) === true ? ['public', 'unlisted', 'private'] : [];
} else {
if ($request->user() !== null) {
$pid = $request->user()->profile->id;
$following = FollowerService::getFollowingIds($pid);
$visibility = in_array($profile->id, $following) == true ? ['public', 'unlisted', 'private'] : ['public', 'unlisted'];
$visibility = in_array($profile->id, $following) === true ? ['public', 'unlisted', 'private'] : ['public', 'unlisted'];
} else {
$visibility = ['public', 'unlisted'];
}
@ -368,7 +368,7 @@ class InternalApiController extends Controller
$pid = $request->user()->profile_id;
$exists = Redis::sismember('email:manual', $pid);
return view('account.email.request_verification', compact('exists'));
return view('account.email.request_verification', ['exists' => $exists]);
}
public function requestEmailVerificationStore(Request $request): RedirectResponse

@ -16,7 +16,7 @@ class LandingController extends Controller
return redirect('/');
}
abort_if((bool) config_cache('instance.landing.show_directory') == false, 404);
abort_if((bool) config_cache('instance.landing.show_directory') === false, 404);
return view('site.index');
}
@ -27,14 +27,14 @@ class LandingController extends Controller
return redirect('/');
}
abort_if((bool) config_cache('instance.landing.show_explore') == false, 404);
abort_if((bool) config_cache('instance.landing.show_explore') === false, 404);
return view('site.index');
}
public function getDirectoryApi(Request $request)
{
abort_if((bool) config_cache('instance.landing.show_directory') == false, 404);
abort_if((bool) config_cache('instance.landing.show_directory') === false, 404);
return DirectoryProfile::collection(
Profile::whereNull('domain')

@ -55,7 +55,7 @@ class LikeController extends Controller
'video',
'video:album',
'photo:video:album',
]) == false;
]) === false;
$like->save();
$status->save();
LikePipeline::dispatch($like)->onQueue('feed');
@ -66,11 +66,9 @@ class LikeController extends Controller
StatusService::refresh($status->id);
if ($request->ajax()) {
$response = ['code' => 200, 'msg' => 'Like saved', 'count' => 0];
} else {
$response = redirect($status->url());
return ['code' => 200, 'msg' => 'Like saved', 'count' => 0];
}
return $response;
return redirect($status->url());
}
}

@ -135,7 +135,7 @@ class LiveStreamController extends Controller
abort_if(! $request->user() && $stream && $stream->visibility !== 'public', 404);
return view('live.player', compact('id'));
return view('live.player', ['id' => $id]);
}
public function deleteStream(Request $request): array
@ -369,20 +369,18 @@ class LiveStreamController extends Controller
$stream = LiveStream::whereStreamKey($key)->firstOrFail();
return redirect($stream->getStreamRtmpUrl(), 301);
} else {
$stream = LiveStream::whereStreamId($key)->firstOrFail();
}
$stream = LiveStream::whereStreamId($key)->firstOrFail();
StreamStart::dispatch($stream->profile_id);
if ($request->filled('name') && $token == false) {
if ($request->filled('name') && $token === false) {
$stream->live_at = now();
$stream->save();
return [];
} else {
abort(400);
}
abort(400);
abort(400);
}

@ -22,7 +22,7 @@ class NewsroomController extends Controller
->paginate(3);
}
return view('site.news.home', compact('posts'));
return view('site.news.home', ['posts' => $posts]);
}
public function show(Request $request, $year, $month, $slug): View
@ -34,7 +34,7 @@ class NewsroomController extends Controller
->firstOrFail();
abort_if($post->auth_only && ! $request->user(), 404);
return view('site.news.post.show', compact('post'));
return view('site.news.post.show', ['post' => $post]);
}
public function search(Request $request): void

@ -46,12 +46,12 @@ class PageController extends Controller
'page' => 'required|string',
]);
$slug = urldecode($request->page);
if (in_array($slug, array_keys($this->cacheKeys())) == false) {
if (in_array($slug, array_keys($this->cacheKeys())) === false) {
return redirect(route('admin.settings.pages'));
}
$page = Page::firstOrCreate(['slug' => $slug]);
return view('admin.pages.edit', compact('page'));
return view('admin.pages.edit', ['page' => $page]);
}
public function store(Request $request): JsonResponse

@ -23,7 +23,7 @@ class ProfileAliasController extends Controller
{
$aliases = $request->user()->profile->aliases;
return view('settings.aliases.index', compact('aliases'));
return view('settings.aliases.index', ['aliases' => $aliases]);
}
public function store(Request $request): RedirectResponse

@ -33,7 +33,7 @@ class ProfileMigrationController extends Controller
->where('created_at', '>', now()->subDays(30))
->exists();
return view('settings.migration.index', compact('hasExistingMigration'));
return view('settings.migration.index', ['hasExistingMigration' => $hasExistingMigration]);
}
public function store(ProfileMigrationStoreRequest $request): RedirectResponse
@ -44,7 +44,7 @@ class ProfileMigrationController extends Controller
return redirect()->back()->withErrors(['acct' => 'The new account you provided is not responding to our requests.']);
}
$newAccount = Helpers::profileFetch($acct);
if (! $newAccount) {
if (!$newAccount instanceof \App\Models\Profile) {
return redirect()->back()->withErrors(['acct' => 'An error occured, please try again later. Code: res-failed-account-fetch']);
}
$user = $request->user();

@ -94,7 +94,7 @@ class SearchController extends Controller
$hash = hash('sha256', $tag);
if (Helpers::validateUrl($tag) != false &&
Helpers::validateLocalUrl($tag) != true &&
(bool) config_cache('federation.activitypub.enabled') == true &&
(bool) config_cache('federation.activitypub.enabled') === true &&
config('federation.activitypub.remoteFollow') == true
) {
$remote = Helpers::fetchFromUrl($tag);
@ -215,7 +215,7 @@ class SearchController extends Controller
$ttl = now()->addHours(2);
if (Helpers::validateUrl($tag) != false &&
Helpers::validateLocalUrl($tag) != true &&
(bool) config_cache('federation.activitypub.enabled') == true &&
(bool) config_cache('federation.activitypub.enabled') === true &&
config('federation.activitypub.remoteFollow') == true
) {
$remote = Helpers::fetchFromUrl($tag);

@ -33,7 +33,7 @@ trait HomeSettings
$storage['usedPretty'] = PrettyNumber::size($storage['used']);
$pronouns = PronounService::get($id);
return view('settings.home', compact('storage', 'pronouns'));
return view('settings.home', ['storage' => $storage, 'pronouns' => $pronouns]);
}
public function homeUpdate(Request $request)
@ -217,9 +217,8 @@ trait HomeSettings
}
return redirect('/settings/email')->with('status', 'Email successfully updated!');
} else {
return redirect('/settings/email');
}
return redirect('/settings/email');
}

@ -17,7 +17,7 @@ trait LabsSettings
{
$profile = $request->user()->profile;
return view('settings.labs', compact('profile'));
return view('settings.labs', ['profile' => $profile]);
}
public function labsStore(Request $request)
@ -67,7 +67,7 @@ trait LabsSettings
$changes = true;
}
if ($changes == true) {
if ($changes === true) {
$profile->save();
}

@ -30,7 +30,7 @@ trait PrivacySettings
$settings['disable_embeds'] = false;
}
return view('settings.privacy', compact('settings', 'profile'));
return view('settings.privacy', ['settings' => $settings, 'profile' => $profile]);
}
public function privacyStore(Request $request)
@ -64,7 +64,7 @@ trait PrivacySettings
foreach ($fields as $field) {
$form = $request->input($field);
if ($field == 'is_private') {
if ($field === 'is_private') {
if ($form == 'on') {
$profile->{$field} = true;
$settings->show_guests = false;
@ -75,19 +75,19 @@ trait PrivacySettings
$profile->save();
}
Cache::forget('profiles:private');
} elseif ($field == 'crawlable') {
} elseif ($field === 'crawlable') {
if ($form == 'on') {
$settings->{$field} = false;
} else {
$settings->{$field} = true;
}
} elseif ($field == 'public_dm') {
} elseif ($field === 'public_dm') {
if ($form == 'on') {
$settings->{$field} = true;
} else {
$settings->{$field} = false;
}
} elseif ($field == 'indexable') {
} elseif ($field === 'indexable') {
} else {
if ($form == 'on') {
$settings->{$field} = true;
@ -130,7 +130,7 @@ trait PrivacySettings
$ids = (new UserFilter)->mutedUserIds($pid);
$users = Profile::whereIn('id', $ids)->simplePaginate(15);
return view('settings.privacy.muted', compact('users'));
return view('settings.privacy.muted', ['users' => $users]);
}
public function mutedUsersUpdate(Request $request)
@ -162,7 +162,7 @@ trait PrivacySettings
->orderByDesc('created_at')
->simplePaginate(15);
return view('settings.privacy.featured-collections', compact('collections'));
return view('settings.privacy.featured-collections', ['collections' => $collections]);
}
public function featuredCollectionsRemove(Request $request)
@ -186,7 +186,7 @@ trait PrivacySettings
$ids = (new UserFilter)->blockedUserIds($pid);
$users = Profile::whereIn('id', $ids)->simplePaginate(15);
return view('settings.privacy.blocked', compact('users'));
return view('settings.privacy.blocked', ['users' => $users]);
}
public function blockedUsersUpdate(Request $request)

@ -29,6 +29,6 @@ trait RelationshipSettings
break;
}
return view('settings.relationships.home', compact('profile', 'mode', 'data'));
return view('settings.relationships.home', ['profile' => $profile, 'mode' => $mode, 'data' => $data]);
}
}

@ -28,7 +28,7 @@ trait SecuritySettings
->limit(5)
->get();
return view('settings.security', compact('activity', 'user', 'devices'));
return view('settings.security', ['activity' => $activity, 'user' => $user, 'devices' => $devices]);
}
public function securityTwoFactorSetup(Request $request)
@ -44,8 +44,7 @@ trait SecuritySettings
$qrcode = $google2fa->getQRCodeUrl(
config('pixelfed.domain.app'),
$user->email,
$key,
500
$key
);
$writer = new Writer(
@ -59,7 +58,7 @@ trait SecuritySettings
$user->{'2fa_backup_codes'} = json_encode($backups);
$user->save();
return view('settings.security.2fa.setup', compact('user', 'qrcode', 'backups'));
return view('settings.security.2fa.setup', ['user' => $user, 'qrcode' => $qrcode, 'backups' => $backups]);
}
protected function generateBackupCodes()
@ -91,9 +90,8 @@ trait SecuritySettings
$user->save();
return response()->json(['msg' => 'success']);
} else {
return response()->json(['msg' => 'fail'], 403);
}
return response()->json(['msg' => 'fail'], 403);
}
public function securityTwoFactorEdit(Request $request)
@ -104,7 +102,7 @@ trait SecuritySettings
abort(403);
}
return view('settings.security.2fa.edit', compact('user'));
return view('settings.security.2fa.edit', ['user' => $user]);
}
public function securityTwoFactorRecoveryCodes(Request $request)
@ -116,7 +114,7 @@ trait SecuritySettings
}
$codes = json_decode($user->{'2fa_backup_codes'}, true);
return view('settings.security.2fa.recovery-codes', compact('user', 'codes'));
return view('settings.security.2fa.recovery-codes', ['user' => $user, 'codes' => $codes]);
}
public function securityTwoFactorRecoveryCodesRegenerate(Request $request)

@ -62,7 +62,7 @@ class StatusController extends Controller
$template = $status->in_reply_to_id ? 'status.reply' : 'status.show';
return view($template, compact('user', 'status'));
return view($template, ['user' => $user, 'status' => $status]);
}
public function shortcodeRedirect(Request $request, string $id): RedirectResponse
@ -119,7 +119,7 @@ class StatusController extends Controller
$showCaption = $request->boolean('caption');
$layout = $request->input('layout') === 'compact' ? 'compact' : 'full';
return response(view('status.embed', compact('status', 'showLikes', 'showCaption', 'layout')))
return response(view('status.embed', ['status' => $status, 'showLikes' => $showLikes, 'showCaption' => $showCaption, 'layout' => $layout]))
->header('X-Frame-Options', 'ALLOWALL');
}
@ -270,7 +270,7 @@ class StatusController extends Controller
->findOrFail($id);
$licenses = License::get();
return view('status.edit', compact('user', 'status', 'licenses'));
return view('status.edit', ['user' => $user, 'status' => $status, 'licenses' => $licenses]);
}
public function editStore(Request $request, string $username, string $id): RedirectResponse

@ -132,7 +132,7 @@ class StoryComposeController extends Controller
'image/jpeg',
'image/png',
'video/mp4',
]) == false) {
]) === false) {
abort(400, 'Invalid media type');
return;

@ -162,7 +162,7 @@ class StoryController extends StoryComposeController
return $res;
})->toArray();
if (count($stories) == 0) {
if (count($stories) === 0) {
return [];
}
$cursor = count($stories) - 1;
@ -290,7 +290,7 @@ class StoryController extends StoryComposeController
}
$pid = $profile->id;
return view('stories.show_remote', compact('pid'));
return view('stories.show_remote', ['pid' => $pid]);
}
public function pollResults(Request $request)

@ -31,7 +31,7 @@ class TimelineController extends Controller
]);
$layout = $request->input('layout', 'feed');
return view('timeline.local', compact('layout'));
return view('timeline.local', ['layout' => $layout]);
}
public function network(Request $request): View
@ -42,7 +42,7 @@ class TimelineController extends Controller
]);
$layout = $request->input('layout', 'feed');
return view('timeline.network', compact('layout'));
return view('timeline.network', ['layout' => $layout]);
}
// public function publicApi(Request $request)

@ -19,11 +19,12 @@ class TwoFactorAuth
if ($request->user()) {
$user = $request->user();
$enabled = (bool) $user->{'2fa_enabled'};
if ($enabled != false) {
if ($enabled !== false) {
$checkpoint = 'i/auth/checkpoint';
if ($request->session()->has('2fa.session.active') !== true && ! $request->is($checkpoint) && ! $request->is('logout')) {
return redirect('/i/auth/checkpoint');
} elseif ($request->session()->has('2fa.attempts') && (int) $request->session()->get('2fa.attempts') > 3) {
}
if ($request->session()->has('2fa.attempts') && (int) $request->session()->get('2fa.attempts') > 3) {
$request->session()->pull('2fa.attempts');
Auth::logout();
}

@ -55,7 +55,7 @@ class RemoteAvatarFetch implements ShouldQueue
{
$profile = $this->profile;
if ((bool) config_cache('pixelfed.cloud_storage') == false && (bool) config_cache('federation.avatars.store_local') == false) {
if ((bool) config_cache('pixelfed.cloud_storage') === false && (bool) config_cache('federation.avatars.store_local') === false) {
return 1;
}
@ -103,7 +103,7 @@ class RemoteAvatarFetch implements ShouldQueue
$avatar->remote_url = $icon['url'];
$avatar->save();
MediaStorageService::avatar($avatar, (bool) config_cache('pixelfed.cloud_storage') == false, true);
MediaStorageService::avatar($avatar, (bool) config_cache('pixelfed.cloud_storage') === false, true);
return 1;
}

@ -62,7 +62,7 @@ class RemoteAvatarFetchFromUrl implements ShouldQueue
Cache::forget('avatar:'.$profile->id);
AccountService::del($profile->id);
if ((bool) config_cache('pixelfed.cloud_storage') == false && (bool) config_cache('federation.avatars.store_local') == false) {
if ((bool) config_cache('pixelfed.cloud_storage') === false && (bool) config_cache('federation.avatars.store_local') === false) {
return 1;
}
@ -84,7 +84,7 @@ class RemoteAvatarFetchFromUrl implements ShouldQueue
$avatar->save();
}
MediaStorageService::avatar($avatar, (bool) config_cache('pixelfed.cloud_storage') == false, true);
MediaStorageService::avatar($avatar, (bool) config_cache('pixelfed.cloud_storage') === false, true);
return 1;
}

@ -60,12 +60,12 @@ class CommentPipeline implements ShouldQueue
if (! $status) {
Log::info('CommentPipeline: Status no longer exists, skipping job');
return;
return null;
}
if (! $comment) {
Log::info('CommentPipeline: Comment no longer exists, skipping job');
return;
return null;
}
$target = $status->profile;
@ -75,12 +75,12 @@ class CommentPipeline implements ShouldQueue
if (! $target) {
Log::info("CommentPipeline: Target profile no longer exists for status {$status->id}, skipping job");
return;
return null;
}
if (! $actor) {
Log::info("CommentPipeline: Actor profile no longer exists for comment {$comment->id}, skipping job");
return;
return null;
}
if (db_is_mysql_maria()) {
@ -112,7 +112,7 @@ class CommentPipeline implements ShouldQueue
->exists();
if ($filtered == true) {
return;
return null;
}
if ($target->user_id && $target->domain === null) {
@ -130,5 +130,6 @@ class CommentPipeline implements ShouldQueue
} else {
Cache::forget('status:replies:all:'.$status->id);
}
return null;
}
}

@ -56,13 +56,13 @@ class DeleteRemoteProfilePipeline implements ShouldQueue
if (! $profile) {
Log::info('DeleteRemoteProfilePipeline: Profile no longer exists, skipping job');
return;
return null;
}
$pid = $profile->id;
if ($profile->domain == null || $profile->private_key) {
return;
return null;
}
$profile->status = 'delete';

@ -61,14 +61,14 @@ class DeleteRemoteStatusPipeline implements ShouldQueue
if (! $status) {
Log::info('DeleteRemoteStatusPipeline: Status no longer exists, skipping job');
return;
return null;
}
// Verify status has a profile
if (! $status->profile_id) {
Log::info("DeleteRemoteStatusPipeline: Status {$status->id} has no profile_id, skipping job");
return;
return null;
}
try {

@ -40,14 +40,14 @@ class FanoutDeletePipeline implements ShouldQueue
if (! $profile) {
Log::info('FanoutDeletePipeline: Profile no longer exists, skipping job');
return;
return null;
}
// Verify profile has required fields for ActivityPub
if (! $profile->permalink() || ! $profile->private_key) {
Log::info("FanoutDeletePipeline: Profile {$profile->id} missing required fields for ActivityPub, skipping job");
return;
return null;
}
try {

@ -71,14 +71,12 @@ class ImageOptimize implements ShouldQueue
}
}
if ((bool) config_cache('pixelfed.optimize_image') == false) {
if ((bool) config_cache('pixelfed.optimize_image') === false) {
ImageThumbnail::dispatch($media)->onQueue('mmo');
return;
} else {
ImageResize::dispatch($media)->onQueue('mmo');
return;
}
ImageResize::dispatch($media)->onQueue('mmo');
return;
}
}

@ -75,7 +75,7 @@ class ImageUpdate implements ShouldQueue
}
if ((bool) config_cache('pixelfed.optimize_image') && $localFs) {
if (in_array($media->mime, $this->protectedMimes) == true) {
if (in_array($media->mime, $this->protectedMimes) === true) {
try {
$thumbPath = storage_path('app/'.$media->thumbnail_path);
if (file_exists($thumbPath)) {
@ -93,7 +93,7 @@ class ImageUpdate implements ShouldQueue
}
}
} elseif ((bool) config_cache('pixelfed.optimize_image') && ! $localFs) {
if (in_array($media->mime, $this->protectedMimes) == true) {
if (in_array($media->mime, $this->protectedMimes) === true) {
$this->optimizeRemoteImages($media, $disk);
}
}
@ -124,9 +124,8 @@ class ImageUpdate implements ShouldQueue
if ($localFs) {
return filesize(storage_path('app/'.$path)) ?? 0;
} else {
return $disk->size($path) ?? 0;
}
return $disk->size($path) ?? 0;
}
/**

@ -95,7 +95,7 @@ class ImportInstagram implements ShouldQueue
->whereOriginalName($filename)
->first();
if (empty($importData) || is_file(storage_path("app/$importData->path")) == false) {
if (empty($importData) || is_file(storage_path("app/$importData->path")) === false) {
continue;
}

@ -52,7 +52,7 @@ class InboxValidator implements ShouldQueue
$headers = $this->headers;
if (empty($headers) || empty($this->payload) || ! isset($headers['signature']) || ! isset($headers['date'])) {
return;
return null;
}
$payload = json_decode($this->payload, true, 8);
@ -60,11 +60,11 @@ class InboxValidator implements ShouldQueue
$profile = Profile::whereNull('domain')->whereUsername($username)->first();
if (empty($profile) || empty($headers) || empty($payload)) {
return;
return null;
}
if ($profile->status != null) {
return;
return null;
}
if ($this->verifySignature($headers, $profile, $payload) == true) {
@ -83,10 +83,9 @@ class InboxValidator implements ShouldQueue
ActivityHandler::dispatch($headers, $profile, $payload)->onQueue($onQueue);
}
return;
} else {
return;
return null;
}
return null;
}
protected function verifySignature($headers, $profile, $payload)
@ -171,11 +170,7 @@ class InboxValidator implements ShouldQueue
}
$inboxPath = "/users/{$profile->username}/inbox";
[$verified, $headers] = HttpSignature::verify($pkey, $signatureData, $headers, $inboxPath, $body);
if ($verified == 1) {
return true;
} else {
return false;
}
return $verified == 1;
}
public static function actorOptionalFor(array $payload): bool

@ -48,7 +48,7 @@ class InboxWorker implements ShouldQueue
$headers = $this->headers;
if (empty($headers) || empty($this->payload) || ! isset($headers['signature']) || ! isset($headers['date'])) {
return;
return null;
}
$payload = json_decode($this->payload, true, 8);
@ -64,10 +64,9 @@ class InboxWorker implements ShouldQueue
ActivityHandler::dispatch($headers, $profile, $payload)->onQueue('shared');
return;
} else {
return;
return null;
}
return null;
}
protected function verifySignature($headers, $payload)

@ -117,7 +117,7 @@ class MediaDeletePipeline implements ShouldBeUniqueUntilProcessing, ShouldQueue
$i = implode('/', $e);
try {
if ((bool) config_cache('pixelfed.cloud_storage') == true) {
if ((bool) config_cache('pixelfed.cloud_storage') === true) {
$disk = Storage::disk(config('filesystems.cloud'));
if ($path && $disk->exists($path)) {

@ -22,7 +22,7 @@ class MediaFixLocalFilesystemCleanupPipeline implements ShouldQueue
public function handle()
{
if ((bool) config_cache('pixelfed.cloud_storage') == false) {
if ((bool) config_cache('pixelfed.cloud_storage') === false) {
// Only run if cloud storage is enabled
return;
}

@ -52,5 +52,6 @@ class MediaSyncLicensePipeline implements ShouldQueue
StatusService::del($media->status_id);
}
});
return null;
}
}

@ -71,7 +71,7 @@ class CleanupLegacyAccountMovePipeline implements ShouldQueue
*/
public function handle(): void
{
if (config('app.env') !== 'production' || (bool) config_cache('federation.activitypub.enabled') == false) {
if (config('app.env') !== 'production' || (bool) config_cache('federation.activitypub.enabled') === false) {
throw new Exception('Activitypub not enabled');
}

@ -80,7 +80,7 @@ class MoveMigrateFollowersPipeline implements ShouldQueue
*/
public function handle(): void
{
if (config('app.env') !== 'production' || (bool) config_cache('federation.activitypub.enabled') == false) {
if (config('app.env') !== 'production' || (bool) config_cache('federation.activitypub.enabled') === false) {
throw new Exception('Activitypub not enabled');
}

@ -76,7 +76,7 @@ class ProcessMovePipeline implements ShouldQueue
*/
public function handle(): void
{
if (config('app.env') !== 'production' || (bool) config_cache('federation.activitypub.enabled') == false) {
if (config('app.env') !== 'production' || (bool) config_cache('federation.activitypub.enabled') === false) {
throw new Exception('Activitypub not enabled');
}
@ -102,7 +102,7 @@ class ProcessMovePipeline implements ShouldQueue
}
$targetRes = Helpers::profileFetch($this->target);
if (! $targetRes) {
if (!$targetRes instanceof \App\Models\Profile) {
return false;
}
@ -133,7 +133,7 @@ class ProcessMovePipeline implements ShouldQueue
}
$actorRes = Helpers::profileFetch($this->activity);
if (! $actorRes) {
if (!$actorRes instanceof \App\Models\Profile) {
return false;
}

@ -68,7 +68,7 @@ class UnfollowLegacyAccountMovePipeline implements ShouldQueue
*/
public function handle(): void
{
if (config('app.env') !== 'production' || (bool) config_cache('federation.activitypub.enabled') == false) {
if (config('app.env') !== 'production' || (bool) config_cache('federation.activitypub.enabled') === false) {
throw new Exception('Activitypub not enabled');
}

@ -109,34 +109,35 @@ class SharePipeline implements ShouldQueue
public function remoteAnnounceDeliver()
{
if (config('app.env') !== 'production' || (bool) config_cache('federation.activitypub.enabled') == false) {
if (config('app.env') !== 'production' || (bool) config_cache('federation.activitypub.enabled') === false) {
return true;
}
$status = $this->status;
if ($status->uri !== null) {
return;
return null;
}
$profile = $status->profile;
if (! $profile || $profile->domain !== null) {
return;
return null;
}
if ($status->scope !== 'public') {
return;
return null;
}
$audience = $profile->getAudienceInbox();
if (empty($audience)) {
return;
return null;
}
$activity = FractalService::item($status, new Announce);
ActivityPubDeliveryService::pool($profile, $audience, $activity);
return null;
}
}

@ -63,16 +63,15 @@ class UndoSharePipeline implements ShouldQueue
return;
}
if (config('app.env') !== 'production' || (bool) config_cache('federation.activitypub.enabled') == false) {
if (config('app.env') !== 'production' || (bool) config_cache('federation.activitypub.enabled') === false) {
return $status->delete();
} else {
return $this->remoteAnnounceDeliver();
}
return $this->remoteAnnounceDeliver();
}
public function remoteAnnounceDeliver()
{
if (config('app.env') !== 'production' || (bool) config_cache('federation.activitypub.enabled') == false) {
if (config('app.env') !== 'production' || (bool) config_cache('federation.activitypub.enabled') === false) {
$this->status->delete();
return 1;

@ -94,11 +94,10 @@ class StatusDelete implements ShouldQueue
Cache::forget('pf:atom:user-feed:by-id:'.$status->profile_id);
if ((bool) config_cache('federation.activitypub.enabled') == true) {
if ((bool) config_cache('federation.activitypub.enabled') === true) {
return $this->fanoutDelete($status);
} else {
return $this->unlinkRemoveMedia($status);
}
return $this->unlinkRemoveMedia($status);
}
public function unlinkRemoveMedia($status)
@ -202,7 +201,7 @@ class StatusDelete implements ShouldQueue
$profile = $status->profile()->withTrashed()->first();
if (! $profile) {
return;
return null;
}
$status->setRelation('profile', $profile);

@ -528,11 +528,12 @@ class StoryFetch implements ShouldQueue
return false;
}
// Additional file type specific validations
if (str_starts_with($actualMimeType, 'image/')) {
return $this->validateImageFile($filePath);
} elseif (str_starts_with($actualMimeType, 'video/')) {
}
if (str_starts_with($actualMimeType, 'video/')) {
return $this->validateVideoFile($filePath);
}
@ -555,7 +556,7 @@ class StoryFetch implements ShouldQueue
// Check reasonable dimensions (not too large, not too small)
[$width, $height] = $imageInfo;
if ($width < 1 || $height < 1 || $width != 1080 || $height != 1920) {
if ($width < 1 || $height < 1 || $width !== 1080 || $height !== 1920) {
if (config('app.dev_log')) {
Log::warning('Image dimensions out of range', [
'width' => $width,

@ -76,9 +76,8 @@ class VideoHlsPipeline implements ShouldBeUniqueUntilProcessing, ShouldQueue
$version = $matches[1];
return (version_compare($version, config('laravel-ffmpeg.min_hls_version')) >= 0) ? 'ok' : false;
} else {
return false;
}
return false;
});
if (! $depCheck || $depCheck !== 'ok') {

@ -50,7 +50,8 @@ class VideoOptimize implements ShouldQueue
protected function transcode($media)
{
return;
// TODO INVESTIGATE
return null;
$base = $media->media_path;
$path = explode('/', $base);
$name = last($path);

@ -32,6 +32,6 @@ class ContactAdmin extends Mailable
{
$contact = $this->contact;
return $this->subject('New Support Message')->markdown('emails.contact.admin')->with(compact('contact'));
return $this->subject('New Support Message')->markdown('emails.contact.admin')->with(['contact' => $contact]);
}
}

@ -30,7 +30,7 @@ class CustomEmoji extends Model
public static function scan($text, $activitypub = false)
{
if ((bool) config_cache('federation.custom_emoji.enabled') == false) {
if ((bool) config_cache('federation.custom_emoji.enabled') === false) {
return [];
}
@ -69,22 +69,20 @@ class CustomEmoji extends Model
'url' => $url,
],
];
} else {
return [
'shortcode' => $match,
'url' => $url,
'static_url' => $url,
'visible_in_picker' => $tag['disabled'] == false,
];
}
return [
'shortcode' => $match,
'url' => $url,
'static_url' => $url,
'visible_in_picker' => $tag['disabled'] == false,
];
}
})
->filter(function ($tag) use ($activitypub) {
if ($activitypub == true) {
return $tag && isset($tag['icon']);
} else {
return $tag && isset($tag['static_url']);
}
return $tag && isset($tag['static_url']);
})
->values()
->toArray();

@ -100,6 +100,7 @@ class CustomFilter extends Model
case 2:
return 'blur';
}
return null;
}
public function getTitleAttribute()
@ -293,7 +294,7 @@ class CustomFilter extends Model
$pattern = preg_quote($keyword->keyword, '/');
if ($keyword->whole_word) {
$pattern = '\b'.$pattern.'\b';
return '\b'.$pattern.'\b';
}
return $pattern;
@ -395,7 +396,7 @@ class CustomFilter extends Model
// }
// }
if (! empty($keywordMatches) || ! empty($statusMatches)) {
if ($keywordMatches !== [] || ! empty($statusMatches)) {
$results[] = [
'filter' => $filter->toFilterArray(),
'keyword_matches' => $keywordMatches ?: null,

@ -79,7 +79,7 @@ class Media extends Model
public function mimeType()
{
if (! $this->mime) {
return;
return null;
}
return explode('/', $this->mime)[0];

@ -52,12 +52,10 @@ class ParentalControls extends Model
if ($u = $this->child) {
if ($u->profile_id) {
return AccountService::get($u->profile_id, true);
} else {
return [];
}
} else {
return [];
}
return [];
}
public function manageUrl()

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save