set('icons', 'light'); $site->setAll([ // 'has_map', // 'referrals', ]); $site->setIntegrations([ 'cloudflare', 'facebook', 'gmb', 'helcim', 'postmark', 'instagram', 'umami' ]); } /** * Defines base options like: * - directory & Membership * - dashboard * - membership settings (JVB_MEMBERSHIP) * - post types (JVB_CONTENT) * - taxonomies (JVB_TAXONOMY) * - User Roles (JVB_USER) * - enthusiast = (bool) short form for a subscriber-like user that can collect content for reference * - forum = (bool) create a forum * - member_only = (bool) if forum and this is true, creates a member-only forum in the custom dashboard * * as well as central filters for * - rewrite rules * - archive title */ add_filter('jvb_site', 'atat_setup_site'); function atat_setup_site():array { return [ 'icons' => 'light', 'is_directory' => false, //as in, a membership directory 'has_membership' => false, 'has_map' => true, 'dashboard' => true, 'referrals' => true, 'magicLink' => true, 'support' => false, 'feed_block' => false, 'email_notifications' => false, 'integrations' => [ 'bluesky' => false, 'cloudflare' => true, 'facebook' => true, 'maps' => true, 'gmb' => true, 'helcim' => true, 'postmark' => true, 'instagram' => true, 'square' => false, 'umami' => true, ], 'is_restaurant' => false, 'limit_hours' => false, 'enthusiast' => false, 'favourites' => false, //optional flag to allow enthusiasts, but not favourites ]; } /** * JVB_MEMBERSHIP defines the structure of the directory * Options include: * - membership_expires = useful if members pay a yearly membership fee * - hide_expired = removes users once membership expired; only used if membership_expires is true * - clip_expired = keeps users once membership expires, but limits the information shown; only used if membership_expires is true * - membership_approval = verified users can approve other users * - term_approval = (bool) verified users can create new terms, but needs approval * - member_only = (array) if empty, open to any registered user. otherwise an array of registered user roles */ //add_filter('jvb_membership', 'atat_setup_membership'); //function atat_setup_membership():array //{ // return [ // 'member_content' => true, // 'can_invite' => ['artist' => ['artist']], // 'member_verified' => true, // 'notifications' => true, // 'forum' => true, // 'member_only' => [ 'artist' ], // 'member_expires' => false, // 'hide_expired' => false, // 'clip_expired' => false, // 'term_approval' => true, // 'can_approve' => [ 'artist' ] // ]; //} // //add_filter('jvbLoadingQuips', 'atat_loading_quips'); //function atat_loading_quips(array $quips):array //{ // return []; //} add_filter('jvbBelowHeader', 'atat_header'); function atat_header(string $header):string { return '

FREE LOCAL PICKUP at Legacy Tattoo Removal.

'; } add_filter('jvbMenuExtra', 'atat_contact_nav', 10, 3); function atat_contact_nav(string $nav, string $menuName, array $block):string { if (array_key_exists('attrs', $block) && array_key_exists('className', $block['attrs']) && $block['attrs']['className'] === 'is-style-fixed' && $nav === '') { $call = '
  • '.jvbIcon('phone').'Call Us
  • '; $text = '
  • '.jvbIcon('chat').'825.925.7398PEWU
  • '; $email = '
  • '.jvbIcon('envelope').'info@legacytattooremoval.ca
  • '; return $call.$text.$email; } if (array_key_exists('attrs', $block) && array_key_exists('className', $block['attrs']) && $block['attrs']['className'] === 'is-style-floating' ) { return $nav.'
  • '; } return $nav; } add_filter('jvbBeforeFooter', 'alyns_acknowledgement'); function alyns_acknowledgement():string { return '

    amiskwacîwâskahikan ᐊᒥᐢᑲᐧᒋᐋᐧᐢᑲᐦᐃᑲᐣ

    Treaty 6 territory

    Edmonton, Alberta, Canada

    '; } add_action('jvbBlockStyles', 'atat_blockStyles'); function atat_blockStyles() { register_block_style( 'core/list', [ 'name'=>'blocky', 'label' => __('Blocky', 'atat') ] ); register_block_style( 'core/group', [ 'name'=>'triangle', 'label' => __('Triangle', 'atat') ] ); } add_filter('jvbRandomFooterText', 'atat_footer_text'); function atat_footer_text(string $text):string { $privacy = get_privacy_policy_url(); $privacy = ($privacy === '') ? '' : ' | Privacy Policy'; return '

    ©'.date('Y').' Madi Mori'.$privacy.'

    Built with ♡ by Jake Van

    '; } add_filter('jvbRegisterCustomIcons', 'atat_custom_icons'); function atat_custom_icons(array $icons):array { $icons['background'] = ATAT_DIR . '/assets/icons/background.svg'; // $icons['logo-jakevan'] = ATAT_DIR . '/assets/icons/logo-concentric-jakevan.svg'; // $icons['logo-right'] = ATAT_DIR . '/assets/icons/logo-right-aligned.svg'; // $icons['logo-right-jakevan'] = ATAT_DIR . '/assets/icons/logo-right-aligned-jakevan.svg'; // $icons['jakevan'] = ATAT_DIR . '/assets/icons/jakevan.svg'; // $icons['loading'] = ATAT_DIR . '/assets/icons/loading.svg'; return $icons; }