Invision Power Services, Inc. * @copyright (c) Invision Power Services, Inc. * @license https://www.invisioncommunity.com/legal/standards/ * @package Invision Community * @subpackage * @since 08/04/2024 */ namespace IPS\Extensions; /* To prevent PHP errors (extending class does not exist) revealing path */ use IPS\Helpers\Menu\Buttons; use IPS\Helpers\Menu\MenuItem; use IPS\Member\Club; use IPS\Member\Club\Page as ClubPage; use IPS\Node\Model; if ( !defined( '\IPS\SUITE_UNIQUE_KEY' ) ) { header( ( $_SERVER['SERVER_PROTOCOL'] ?? 'HTTP/1.0' ) . ' 403 Forbidden' ); exit; } abstract class ClubAbstract { /** * Tabs * * @param Club $club The club * @param Model|null $container Container * @return array */ public function tabs( Club $club, ?Model $container = NULL ): array { return []; } /** * Return an array of menu elements to add to the club menu * * @param Club $club * @param Model|ClubPage|null $container * @return array */ public function menu( Club $club, Model|ClubPage|null $container = null ) : array { return []; } /** * Return an array of menu elements to add to the buttons list * in the club header. The menu will be rendered as individual buttons and not * as a dropdown menu. * * @see Buttons::button() * @param Club $club * @return array */ public function buttons( Club $club ) : array { return []; } }