PHP Classes

File: README.md

Recommend this page to a friend!
  Classes of Fabrice Fesch   Melis CMS Page JavaScript and CSS Editor   README.md   Download  
File: README.md
Role: Documentation
Content type: text/markdown
Description: Documentation
Class: Melis CMS Page JavaScript and CSS Editor
Add custom assets to a site using Melis CMS
Author: By
Last change:
Date: 2 years ago
Size: 4,966 bytes
 

Contents

Class file image Download

Melis CMS Page Script Editor

This module allows users to add custom scripts and styles at the site and page levels.

Getting started

These instructions will get you a copy of the project up and running on your machine.

Prerequisites

The following modules need to be installed to run the Melis CMS Page Script Editor module:

  • Melis core
  • Melis engine
  • Melis front
  • Melis CMS

Installing

Run the composer command:

composer require melisplatform/melis-cms-page-script-editor

The Melis CMS Page Script Editor module needs to be manually activated on the chosen site for the defined scripts to be rendered in front. This will be done by going to MelisCms > Site Tools > Sites menu, select a site, then activate the module in the 'Module Loading' tab.

Database

Database model is accessible via the MySQL Workbench file:

/melis-cms-page-script-editor/install/sql/Model

Database will be installed through composer and its hooks. In case of problems, SQL files are located here:

/melis-cms-page-script-editor/install/sql

Tools and elements provided

  • Scripts tab in Melis CMS' Page System
  • Scripts tab in Melis CMS' Tool Site
  • Page Script Editor Service
  • Listeners

Scripts Tab in Melis CMS' Page System

  • A 'Scripts' tab is added inside Melis CMS' page system where the user can add scripts to be inserted after the opening head tag, before the closing head tag, or before the closing body tag of the page when rendered
  • The user may opt to exclude the site's scripts in which during the rendering process, only the page's defined scripts are included

Scripts Tab in Melis CMS' Tool Site

  • A 'Scripts' tab is added inside Melis CMS' Tool Site in which the scripts that are set here will be applied to all pages belonging to the site, except for the pages that excluded the site's scripts
  • List of pages that exclude the site's scripts are displayed and the user has the option to remove the page from the exception list
  • The user also has the ability to add a page to the exception list

Page Script Editor Service

File: 
      - /melis-cms-page-script-editor/src/Service/MelisCmsPageScriptEditorService.php   

  • MelisCmsPageScriptEditorService - This service's functions include the retrieval and adding of page or site's scripts.

    //Get the service
    $pageScriptEditorService = $this->getServiceManager()->get("MelisCmsPageScriptEditorService");
    
    //Retrieve final scripts of the page
    $resultList = $pageScriptEditorService->getMixedScriptsPerPage($pageId);   
    

    - Common methods this service is used for are as follows: - Retrieving page scripts: getScriptsPerPage(...) - Retrieving site scripts : getScriptsPerSite(...) - Retrieving site exceptions: getScriptExceptions(...) - Saving page or site scripts : addScript(...) - Saving exception : addScriptException(...)

  • For a more detailed information on the methods, please visit the file.

Listeners

There are three listeners inside the module: - MelisCmsPageScriptEditorSavePageListener - MelisCmsPageScriptEditorSaveSiteScriptListener - MelisCmsPageScriptEditorScriptTagListener

Files: 
      - /melis-cms-page-script-editor/src/Listener/MelisCmsPageScriptEditorSavePageListener.php
      - /melis-cms-page-script-editor/src/Listener/MelisCmsPageScriptEditorSaveSiteScriptListener.php
      - /melis-cms-page-script-editor/src/Listener/MelisCmsPageScriptEditorScriptTagListener.php

  • MelisCmsPageScriptEditorSavePageListener - This is triggered when the page in Melis Cms' Page Edition is saved or published and will automatically save the script data and the exception configuration defined for the given page
  • MelisCmsPageScriptEditorSaveSiteScriptListener - This is triggered when the site is saved and will automatically save the script data and the exception configuration defined for the given site
  • MelisCmsPageScriptEditorScriptTagListener - This is triggered when the page is rendered - The scripts for the page will be inserted to its defined destination(after the opening head tag, before the closing head tag or before the closing body tag) - If the page exluded the site's scripts, only the page's scripts will be inserted, else, the scripts will be the combination of the site and page's scripts where the site's scripts will always come first during the rendering process
  • For a more detailed information on the listeners, please visit the files.

Authors

See also the list of contributors who participated in this project.

License

This project is licensed under the Melis Technology premium versions end user license agreement (EULA) - see the LICENSE.md file for details