jreviews:permission:listing.set_listing_expiration_date
Filters whether a user has permission to manually set a listing expiration date. Controls when the listing automatically becomes unpublished.
Start here
Copy the boilerplate below, then add the logic you need. Return the modified first argument. New to hooks? Read the hooks primer first.
Fires when checking if the expiration date field should be shown or if user input should be accepted
Parameters
| Name | Type | Description |
|---|---|---|
$canSetExpDate |
bool |
Whether the user can set the expiration date (always true in admin, or when enabled in listing type settings) |
$user |
\JReviews\App\Models\User |
The user attempting to set the expiration date |
$listing |
\JReviews\App\Models\Listing |
The listing whose expiration date is being set |
Boilerplate
Paste this into your hook file, then add your logic and return the modified first argument.
fwd_add_filter('jreviews:permission:listing.set_listing_expiration_date', function($canSetExpDate, $user, $listing)
{
// Your code here
return $canSetExpDate;
}, 20, 3);
Why the final numbers matter:
, 20, N sets the priority and how many arguments your callback accepts. If you use both $filterResult and $listing, keep , 20, 2 so both are passed to your callback.
Source Files
app/Policies/ListingPolicy.php