Disable event title links for officials managers

This commit is contained in:
2026-04-02 12:29:37 -05:00
parent bc0e913dfb
commit 65df3525a4

View File

@@ -320,11 +320,60 @@ function tony_sportspress_limit_event_admin_ui_for_officials_manager() {
.post-type-sp_event .wrap .bulkactions { .post-type-sp_event .wrap .bulkactions {
display: none; display: none;
} }
.post-type-sp_event .wp-list-table .column-title .row-title {
color: inherit;
cursor: default;
text-decoration: none;
}
</style> </style>
<script>
(function() {
const replaceTitleLinks = function() {
document.querySelectorAll('.post-type-sp_event .wp-list-table .column-title a.row-title').forEach(function(link) {
const text = document.createTextNode(link.textContent || '');
const span = document.createElement('span');
span.className = link.className;
span.appendChild(text);
link.replaceWith(span);
});
};
if (document.readyState === 'loading') {
document.addEventListener('DOMContentLoaded', replaceTitleLinks);
} else {
replaceTitleLinks();
}
})();
</script>
<?php <?php
} }
add_action( 'admin_head', 'tony_sportspress_limit_event_admin_ui_for_officials_manager' ); add_action( 'admin_head', 'tony_sportspress_limit_event_admin_ui_for_officials_manager' );
/**
* Prevent clickable edit links to events for assignment-only users.
*
* This keeps the list-table title as plain text while preserving Quick Edit.
*
* @param string|false $link Edit link.
* @param int $post_id Post ID.
* @param string $context Link context.
* @return string|false
*/
function tony_sportspress_disable_event_edit_links_for_officials_manager( $link, $post_id, $context ) {
if ( ! is_admin() || ! tony_sportspress_is_officials_manager_user() ) {
return $link;
}
if ( 'sp_event' !== get_post_type( $post_id ) ) {
return $link;
}
return false;
}
add_filter( 'get_edit_post_link', 'tony_sportspress_disable_event_edit_links_for_officials_manager', 10, 3 );
/** /**
* Preserve core event fields so assignment-only users cannot alter them via Quick Edit. * Preserve core event fields so assignment-only users cannot alter them via Quick Edit.
* *