mirror of
https://github.com/pixelfed/pixelfed.git
synced 2024-11-10 00:34:50 +00:00
commit
e9388e6648
6 changed files with 26 additions and 4 deletions
|
@ -134,6 +134,7 @@
|
|||
- Updated Profile, fix follower counter bug. ([d06bec9c](https://github.com/pixelfed/pixelfed/commit/d06bec9c))
|
||||
- Updated NotificationTransformer, add missing types. ([3a428366](https://github.com/pixelfed/pixelfed/commit/3a428366))
|
||||
- Updated StatusService, fix json bug. ([1ea2db74](https://github.com/pixelfed/pixelfed/commit/1ea2db74))
|
||||
- Updated NotificationTransformer, handle tagged deletes. ([881fa865](https://github.com/pixelfed/pixelfed/commit/881fa865))
|
||||
|
||||
## [v0.10.9 (2020-04-17)](https://github.com/pixelfed/pixelfed/compare/v0.10.8...v0.10.9)
|
||||
### Added
|
||||
|
|
|
@ -74,7 +74,10 @@ class StatusController extends Controller
|
|||
return redirect('/login?next='.urlencode('/' . $request->path()));
|
||||
}
|
||||
$id = HashidService::decode($id);
|
||||
$status = Status::findOrFail($id);
|
||||
$status = Status::find($id);
|
||||
if(!$status) {
|
||||
return redirect('/404');
|
||||
}
|
||||
return redirect($status->url());
|
||||
}
|
||||
|
||||
|
|
|
@ -4,6 +4,7 @@ namespace App\Jobs\StatusPipeline;
|
|||
|
||||
use DB;
|
||||
use App\{
|
||||
MediaTag,
|
||||
Notification,
|
||||
Report,
|
||||
Status,
|
||||
|
@ -104,6 +105,16 @@ class StatusDelete implements ShouldQueue
|
|||
Report::whereObjectType('App\Status')
|
||||
->whereObjectId($status->id)
|
||||
->delete();
|
||||
|
||||
MediaTag::where('status_id', $status->id)
|
||||
->cursor()
|
||||
->each(function($tag) {
|
||||
Notification::where('item_type', 'App\MediaTag')
|
||||
->where('item_id', $tag->id)
|
||||
->forceDelete();
|
||||
$tag->delete();
|
||||
});
|
||||
|
||||
$status->forceDelete();
|
||||
});
|
||||
|
||||
|
|
|
@ -37,4 +37,10 @@ class Notification extends Model
|
|||
{
|
||||
return $this->belongsTo(Status::class, 'item_id', 'id');
|
||||
}
|
||||
|
||||
public function tag()
|
||||
{
|
||||
return $this->hasOne(MediaTag::class, 'item_id', 'id');
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -6,6 +6,7 @@ use App\{
|
|||
Notification,
|
||||
Status
|
||||
};
|
||||
use App\Services\HashidService;
|
||||
use League\Fractal;
|
||||
|
||||
class NotificationTransformer extends Fractal\TransformerAbstract
|
||||
|
@ -97,8 +98,8 @@ class NotificationTransformer extends Fractal\TransformerAbstract
|
|||
$ml = $n->item;
|
||||
$res = $this->item($ml, function($ml) {
|
||||
return [
|
||||
'username' => $ml->status->profile->username,
|
||||
'post_url' => $ml->status->url()
|
||||
'username' => $ml->tagged_username,
|
||||
'post_url' => '/p/'.HashidService::encode($ml->status_id)
|
||||
];
|
||||
});
|
||||
return $res;
|
||||
|
|
|
@ -146,7 +146,7 @@
|
|||
<div v-else>
|
||||
<p :class="[status.content.length > 620 ? 'mb-1 read-more' : 'mb-1']" style="overflow: hidden;">
|
||||
<a class="font-weight-bold pr-1 text-dark text-decoration-none" :href="statusProfileUrl">{{statusUsername}}</a>
|
||||
<span class="comment-text" style="word-break: break-all;" :id="status.id + '-status-readmore'" v-html="status.content"></span>
|
||||
<span class="comment-text" :id="status.id + '-status-readmore'" v-html="status.content"></span>
|
||||
</p>
|
||||
</div>
|
||||
<hr>
|
||||
|
|
Loading…
Reference in a new issue