}>
*/
public static function blocks() {
$blocks = array(
array(
'title' => __( 'VEF Booking', 'vefmultibooking' ),
'purpose' => __( 'The complete booking module: the visitor chooses an offer, a date, fills in the details and contact, then pays or confirms. It ends with a confirmation.', 'vefmultibooking' ),
'tips' => array(),
),
array(
'title' => __( 'VEF Offers', 'vefmultibooking' ),
'purpose' => __( 'A catalog of your published offers, each with its description, its price and a "Book" button.', 'vefmultibooking' ),
'tips' => array(),
),
array(
'title' => __( 'VEF Availability', 'vefmultibooking' ),
'purpose' => __( 'A month calendar that shows visitors which days can be booked and which are full. It is read only: a free day opens the booking page on that day.', 'vefmultibooking' ),
'tips' => array(),
),
array(
'title' => __( 'VEF Booking Summary', 'vefmultibooking' ),
'purpose' => __( 'The summary of one booking: number, offer, dates, persons, lines, total, amount paid and balance to pay.', 'vefmultibooking' ),
'tips' => array(),
),
);
/**
* Lets VEFmultiBooking Pro (or another extension) describe its own blocks in the Help.
*
* @param array $blocks Each item: title, purpose, tips (list of strings).
*/
return (array) apply_filters( 'vefmb_help_blocks', $blocks );
}
/**
* Registers the help of a tab on a screen: its topics and the sidebar of useful links.
*
* @param string $tab Tab slug.
* @param WP_Screen $screen Screen.
* @return void
*/
public static function register( $tab, $screen ) {
foreach ( self::get_topics( $tab ) as $topic ) {
$screen->add_help_tab(
array(
'id' => 'vefmb-help-' . $tab . '-' . $topic['id'],
'title' => $topic['title'],
'content' => wp_kses_post( $topic['content'] ),
)
);
}
$screen->set_help_sidebar(
'' . esc_html__( 'More help', 'vefmultibooking' ) . '
'
. '' . esc_html__( 'Getting started guide', 'vefmultibooking' ) . '
'
. '' . esc_html__( 'Support and feature requests', 'vefmultibooking' ) . '
'
. '' . esc_html__( 'Plugin page', 'vefmultibooking' ) . '
'
);
}
/**
* Address of the full help of a screen, on the publisher's site. The pages hold the complete text, so the
* plugin only carries a short summary of each screen (fewer texts to translate, one place to keep up to date).
*
* @param string $tab Tab slug.
* @return string
*/
public static function online_url( $tab ) {
$slug = 'help' === $tab ? 'guide' : sanitize_key( $tab );
$url = 'https://v-images.com/plugin-vefmultibooking/help/' . $slug . '/';
/**
* Lets an extension or a site point to another address for the full help of a screen.
*
* @param string $url Address.
* @param string $tab Tab slug.
*/
return (string) apply_filters( 'vefmb_admin_help_online_url', $url, $tab );
}
/**
* The short summary of each screen.
*
* @return array Text by tab slug.
*/
private static function summaries() {
return array(
'dashboard' => __( 'What needs your attention over the next 14 days, and the bookings waiting for your validation.', 'vefmultibooking' ),
'calendar' => __( 'Your bookings under several views. Drag a booking to another day to move it: availability is checked again first.', 'vefmultibooking' ),
'bookings' => __( 'Every booking, whatever the way it was made. Open one to confirm, validate or cancel it, to see its payments or to write to the customer. "+ Manual booking" enters one yourself.', 'vefmultibooking' ),
'customers' => __( 'Search a customer by name or email to see their contact details and all their bookings.', 'vefmultibooking' ),
'offers' => __( 'An offer is what the customer buys. Link the resources it uses, set its prices, options and questions, then publish it.', 'vefmultibooking' ),
'resources' => __( 'A resource is everything that can be booked. Choose its kind, then its settings: how it is booked follows its availability.', 'vefmultibooking' ),
'availability' => __( 'When a resource can be booked: recurring rules and slots for an activity, nights for an accommodation, blocked periods and seasons.', 'vefmultibooking' ),
'staff' => __( 'List the people who run your activities, then switch on the activities each one can run.', 'vefmultibooking' ),
'setup' => __( 'The guide takes you step by step through everything needed to sell something. The points to correct never block anything.', 'vefmultibooking' ),
'seasons' => __( 'A season is a named period of the year, defined once and picked in opening periods and in prices.', 'vefmultibooking' ),
'settings' => __( 'Booking rules, currency and online payment (start with the test mode of Stripe and PayPal), and the display of the admin.', 'vefmultibooking' ),
'emails' => __( 'The automatic emails sent to your customers and to you. Edit each template and use the tokens in curly braces to insert the booking details.', 'vefmultibooking' ),
'style' => __( 'The default look of the widgets: fonts, colors, shape, shadows and layout. Each block of your page builder can override it.', 'vefmultibooking' ),
'help' => __( 'A step-by-step guide to set the plugin up, the blocks it adds and what is translated where.', 'vefmultibooking' ),
'licenses' => __( 'About the plugin, the free and Pro versions, the versions available and the optional free license.', 'vefmultibooking' ),
'diagnostic' => __( 'Technical information for a support request, the support form and the temporary support access, which you open and close yourself.', 'vefmultibooking' ),
);
}
}