Create Custom Portal Content Loadable

To release content on an aircraft, developers can create, release and deliver a custom content loadable for portals.

The custom content loadable can be created in any JavaScript programming language, such as Angular and ReactJS, with the Mobile Passenger JavaScript SDK. The loadable requires either an emulator or rack environment for testing.

Note: If creating a portal content loadable for a NEXT system, please use Unity CLM. In addition, Unity CLM should be used to create content loadables for Interactives. The application has built in NBD manifest registration and auto signs certs for NEXT systems.

Requirements

  • Portal Content Loadable Part Number 
  • For additional information on obtaining a content loadable part number, please contact your Panasonic focal.
  • Operating Systems
  • macOS -- versions 12.x Monterey,10.15 Catalina, 10.14 Mojave, 10.13 High Sierra, 10.12 Sierra, 10.11 El Capitan or 10.10 Yosemite (verified)
  • Linux Ubuntu -- versions 14.04, 16.04 or 18.04 (verified)
  • Linux Fedora -- versions 24 (verified)
  • Portal Content Loadable Script
  • Download MAKELOADPL_VER=03.20.7 script here: make_content_loadable_v20221026
  • Homebrew Package Management Software
  • Homebrew is used for macOS only
  • Available online on the Homebrew site

Install Software

You can create a custom loadable on a macOS, Ubuntu or Fedora operating system.

macOS Installation

The macOS installation uses Homebrew Package Management Software. Homebrew is a free and open source software package management system that simplifies software installation on macOS.

To begin:

  1. Download Homebrew from https://docs.brew.sh//installation
  2. Install the following:
  • brew install gnu-tar
  • brew install md5sha1sum
  • brew install squashfs
  • brew install wget
  • brew install xmlstarlet
  • brew install cpanm
  • cpan JSON
  1. On the macOS terminal, enter the following:
	xcode-select --install
	ruby -e "\$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

		brew install gnu-tar
		brew install md5sha1sum
		brew install squashfs
		brew install wget
		brew install xmlstarlet
		brew install cpanm

		sudo cpan JSON

The macOS installation is complete.

Ubuntu Installation

To begin:

  1. Install the following files:
  • squashfs-tools
  • libmxl2-utils
  • xmlstarlet
  • wget
  1. On the Ubuntu terminal, run:
        sudo apt-get install -y squashfs-tools
	sudo apt-get install -y libxml2-utils
        sudo apt-get install -y xmlstarlet
        sudo apt-get install -y wget

        sudo cpan JSON    

The Ubuntu installation is complete.

Fedora Installation

To begin:

  1. Install the following files:
  • squashfs-tools
  • libmxl libmxl2
  • perl-XML-LibXML
  • snapd
  • libmxl2-utils
  • wget
  1. On the Fedora terminal, run:
        # By root user
        dnf install -y squashs-tools
        dnf install -y libxml libxml2
        dnf install -y perl-XML-Parser
        dnf install -y xmlstarlet
        dnf install -y wget    

The Fedora installation is complete.

Extract Make Portal Loadable File

The Make Portal Loadable file must be placed first in your User Home directory. The Make Loadable script does not support a file path with spaces.

To begin:

  1. Extract the make_portal_loadable_XXXXX.zip file to macOS, Ubuntu or Fedora.
  2. In the User Home directory, place the make_portal_loadable_vXXXX folder first. The Make Loadable script does not support file path with spaces.

macOS: /Users/${USER}/make_portal_loadable_vXXXX

Example: /Users/user/make_portal_loadable_v20221026

Linux OS: /home/${USER}/make_portal_loadable_vXXXX

Example: /home/user/make_portal_loadable_v20221026

Update Portal Assets

You must update the portal assets, such as HTML, CSS, JavaScript, images and fonts.

To begin:

  1. In the www folder, review and update the portal assets as follows:

└── www

├── index.html

Make Static Portal Content Loadable

To begin:

  1. In the make_portal_loadable_vXXXX folder, review and update the portal.info file as follows:

portal.info file for 00000LY0

	PORTAL_ROOT_DIR=${W3DATA_DIR}/00000LY0_portal_app_exw_static
	DOMAIN_HOST_NAME=www.panair.com
	CONTENT_ACCESS_URL=/
	HTTPS_KEYNAME=PANA_PORTAL_KEY
	HTTPS_CERTNAME=PANA_PORTAL_CERT
	HTTPS_REDIRECT=0

Parameters

  • PORTAL_ROOT_DIR -- Verify the portal content loadable part number and folder name.
  • DOMAIN_HOST_NAME -- Specify the portal domain.
  • CONTENT_ACCESS_URL -- Specify:
  • / - root -- main content
  • /subfolder -- subfolder for sub or microsite content loadable.
  • HTTPS_KEYNAME -- If the portal requires https access with HTTPS_REDIRECT=1 option, then specify the HTTPS key name.
  • HTTPS_CERTNAME -- If the portal requires https access with HTTPS_REDIRECT=1 option, then specify the HTTPS certificate names.
  • HTTP_REDIRECT -- Specify 0 for HTTP or 1 for HTTPS.
  1. Specify the make portal content loadable command.
	cd make_portal_loadable_v20221026

	./make_loadable.sh p=00000LY0 v=01.00.00.1 

Output Loadable tgz File by make_loadable.sh Command

The portal content loadable tgz file is generated under the Loadable folder.  Example: ./loadable/K00000LYO_01.00.00.1.tgz 

Make Non-Static Portal Content Loadable for Legacy Support

You can make a non-static portal content loadable to support the legacy PortalWorks portal loader, part number 000002AB.

To begin:

  1. Specify nonstatic option to the make_loadable.sh with the following options:
  • nonstatic -- required for non-static portal content loadable
  • p={PART_NUMBER} -- required
  • n={CONTENT_FOLDER_NAME} -- required
  • v={VERSION_NUMBER} -- required
  • url={CONTENT_ACCESS_URL} -- optional
  • content -- optional for portal sub content loadable
  1. Specify the make_loadable.sh options as follows:

For the main portal loadable:

	cd make_portal_loadable_v20221026
	./make_loadable.sh p=00000LY0 n=portal_app_exw nonstatic v=01.00.00.1

For the portal sub content, specify the "content " and "url=" options:

	cd make_portal_loadable_v20221026
	./make_loadable.sh p=0000LY0 n=portal_app_exw nonstatic content url=/content v=01.00.00.1

Output Loadable tgz File by make_loadable.sh Command

The portal content loadable tgz file is generated under the Loadable folder. Example: ./loadable/K00000LYO_01.00.00.1.tgz