Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • opCharts version >= 4.0.9
  • You will need system administration privileges so you can create the required files in the /usr/local/omk directory.


Image RemovedImage Added

How to

  1. Create a new template file and have its prefix .html.ep in <omk_dir>/templates/public/
  2. Define any arbitrary HTML inside the template as you see fit, mojolicious templates are also supported, see more on rendering mojolicious templates at https://mojolicious.org/perldoc/Mojo/Template
  3. Create an opCharts component to tell the dashboard it can render this new file. For this, create a new json file in /usr/local/omk/lib/json/opCharts/components.d/: Example: acme_component.json 

    Code Block
    {
      "name": "What the component is called in the dashboards dropdown list",
      "ep_template_file": "The loccation of the template file",
      "options": {
        "titleText": "the component display name"
      },
      "type": "ep_template"
    }


  4. Restart the omkd daemon. Please note that omkd daemon should be restarted after any change. 

...

  1. Create <omk_dir>/templates/public/acme_list.html.ep
  2. Add the html content.
  3. Create <omk_dir>/lib/json/opCharts/components.d/acme_component.json 

    Code Block
    languagejs
    titleacme_component.json
    {
      "name": "Acme Component",
      "ep_template_file": "public/acme_list",
      "options": {
        "titleText": "My Title"
      },
      "type": "ep_template"
    }


  4. Restart omkd daemon:

    Code Block
    languagejstitleacme_component.json
    sudo service omkd restart


...

  1. Create <omk_dir>/templates/public/wikipedia.html.ep
  2. Add the html content:


    Code Block
    <div class="row">
    		<div class="container-fluid">
    			<div class="navbar-header">
                    <iframe id="wikipediaIframeExample"
                        title="Wikipedia iframe Example"
                        width="900"
                        height="600"
                        src="https://www.wikipedia.org/">
                    </iframe>
                </div>
            </div>
     </div>  


  3. Create <omk_dir>/lib/json/opCharts/components.d/wikipedia_component.json 

    Code Block
    languagejs
    titleacmewikipedia_component.json
    {
      "name": "Wikipedia Component",
      "ep_template_file": "public/wikipedia",
      "options": {
        "titleText": "Wikipedia search Embebed"
      },
      "type": "ep_template"
    }


  4. Restart omkd daemon:

    Code Block
    languagejs
    titleacme_component.jsonconsole
    sudo service omkd restart


  5. Go to our Server Views/Dashboards: http://ourserver/en/omk/opCharts/dashboards and Add a New Dashboard. 
  6. Select Data Source Type> opCharts. We will out new component, Wikipedia Component. 
  7. We will see our new Dashboard:

Image RemovedImage Added

External Server restrictions

It is not possible to embedded some webpages in an iFrame due to the CSP.  The Content Security Policy is a http header from the original server that prevents to load a webpage from an external domain - Or even the same. 

It is possible to identify this heady visiting the external webpage and looking for the existence of this header:

Image Added

Trying to embed this webpage as an iframe, the result will be something like the following:

Image Added