Introduction

BookyFlow Site Designer and Developer guide

This document is intended for Site Designers and Developers who are using BookyFlow.

Refers to BookyFlow v10.7.0

BookyFlow Site Designer and Developer guide Plugins

Introduction Plugin Infos

Developer notes Customising BookyFlow

Read This First Overriding files

How do you find the override directory?

Joomla Wordpress

Property type overrides Customising Hints and tips

Customising templates/layout

Where are BookyFlow templates?

Template Overrides Basic Overrides

BookyFlow Core templates

Property type specific templates BookyFlow Plugin templates

Shortcode template overrides Introduction

An example of overriding a template in a shortcode Summary

Template override packages Minicomponent Overrides

Property type specific minicomponents Function overrides

Class overrides Map style overrides jQuery UI overrides

CSS and Javascript files Router override

Access Control override Overrides and the REST API

Language files

Introduction Discussion

Upgrading after manually editing language files Plugin language files

A word of caution

You have strange text on your page after upgrading Language Context

Shortcode Language Context Designers

Fontawesome Search Widgets Shortcodes

Usage example

How can you show properties with specific features? Basic shortcode structure

Find the feature ID Add it to the menu How it looks Summary

Shortcodes in Joomla Modules Introduction

How to run a Joomla Plugin in a Joomla Module Shortcodes can use different template files

Including script content from one page in another BookyFlow template file How can we achieve it?

More detail (cos, ya need it)

What\'s the difference between {bookyflow and {bookyflow_script ...?

TLDR;

Content plugins

Setting the property uid

Joomla Modules and WordPress shortcodes in BookyFlow template files Joomla example

WordPress example Changing the FAQs JCH Optimize

Email Templates

Global email templates Developers

The get_property_module_data function Introduction

What it looks like

Can I customise the function?

Minicomponents Minicomponent Registry Developing Tips and Tricks

Useful variables & functions get_showtime(\'ePointFilepath\') get_showtime(\'eLiveSite\') BookyFlow_get_relative_path_to_file j00005 scripts

Switching stuff off Redirecting template calls Singletons

Using the BookyFlow Framework BookyFlow Plugin example : Hello World

Introduction The Code

BookyFlow framework and Encryption/Decryption Introduction

encryption_key.class.php An example module

Decrypting guest data Method 1

Method 2 Encrypting guest data

Using Shortcodes code from minicomponents Getting started with the code

Calling via the url

Pulling rendered snippets in your own code Extrapolation

Conclusion

Cron Jobs for plugin developers In brief

Conclusion

Template override packages

What\'s in a TOP plugin? A real world example

Distribution Updates

Webhooks & Webhook events Introduction

A Webhook Event

Who can use Webhooks Events? How can I use Webhook Events?

Webhook Events List

Creating Webhook Integration plugins Setup

Webhooks page

An Integration's code

Webhooks - Anatomy of a webhook integration plugin plugin_info.php j00005webhooks_authmethod_none.class.php j07300webhooks_auth_method_none.class.php

j07310watcher_authmethod_process_none.class.php OR j07320watcher_authmethod_process_none.class.php

Communication summary Debugging 07320 scripts

BookyFlow REST API API Clients Endpoints

Using Postman to access the API GET

POST

Creating Clients

Communicating with the BookyFlow API Creating your own API plugins

scopes.json auth_free.json

Anatomy of an API endpoint plugin Envelope

Code reuse Local tokens

REST API & Webhook case study Introduction

Security Discussion

Basic Webhook/REST API setup BookyFlow Installation

Responder setup Testing

What happened?

Postscript

Why is this a good thing?

Using the REST API in your own software Wordpress : API TEST page says I have to move files The REST API test fails

The BookyFlow Template System

How do I change the layout in a BookyFlow template file?

First, a really quick description of how the template system in BookyFlow works Populating template elements

Displaying multiple rows of repeating content There is html markup here that I do not recognise

I want to show xxx in yyy.html template file. How do I do it? Identifying individual templates

Common Strings Importing strings

The BookyFlow Licence Aide Memoires

Gateway Aide Mémoire

Vince\'s aide mémoire to making gateway plugins for BookyFlow Brief explanation of each file and what it does

Final notes to gateway developers BookyFlow 9 changes

Media Centre aide mémoire resource_type_gathering_trigger - 03379

upload_root_abs_path upload_root_rel_path resource_id_required

resource_id_gathering_trigger - 03381

post_upload_processing_trigger - 03382

get_existing_images_trigger - 03383 Allowed file types

Your role is to set up the look and/or feel of your BookyFlow site, either for yourself or somebody else.

This document will discuss various techniques you can use to get the most out of your BookyFlow installation. As a result it doesn't provide a direct reference to menu options in BookyFlow, except in passing. If you need that, please see the Site Administrator's guide.

The goal here is to pass on to you information that has been requested by other designers and developers, over the years. If you feel that some information is missing and you would like to see it in this document please don't hesitate to contact me via the ticket system at https://tickets.bookyflow.net

There are four main sections to this document.

  1. Plugins. A brief discussion about BookyFlow plugins.

  2. Customising. This section discusses techniques that both Designers and Developers will need to know when working with BookyFlow.

  3. Designers. This section discusses subjects more likely to be of interest to Designers such as creating search forms, shortcodes and similar.

  4. Developers. This section discusses subjects that will be of interest to those programmers who will be using BookyFlow as a part of a business strategy and need to learn it in more detail.