Skip to content
  • There are no suggestions because the search field is empty.

How to implement Q-share?


01 — What you receive from QUINTA

Before starting, QUINTA will provide three items. Do not begin until all three are confirmed.

  • License key — a unique string for the data-license attribute. Bound to this property only, format XXXXX-XXXX.
  • Script URL — the src value for the Q-Share script tag.
  • Language code(s) — the data-lang value(s) matching the locale(s) of the website.

Important: The license key is unique per property. Never reuse it across different hotels or domains.

 

02 — How Q-Share works

Q-Share is a lightweight JavaScript library. When loaded on a page, it scans the DOM for elements carrying a data-point attribute, fetches the corresponding values from the hotel's Q-Data repository, and injects them as text content.

Updates made in the QUINTA platform propagate to the website within minutes — no re-deployment or CMS republication required.

 

03 — Script installation

Place the script tag immediately before the closing </body> tag on every page where content injection should occur.

 
<script   src="https://q-share.quicktext.im/script.min.js"   data-license="XXXXX-XXXX"   data-lang="en" ></script> </body> </html>

Replace XXXXX-XXXX with the license key provided by QUINTA. Set data-lang to the page language code.

Attributes

Attribute Required Value
src Yes Script URL provided by QUINTA
data-license Yes License key provided by QUINTA
data-lang Yes Language code for injected content

Supported language codes: en · fr · de · es · it · pt · nl · ru · ar · zh · ja

For multilingual websites, include one script tag per language version — each with the corresponding data-lang value on its respective page or template.

Framework compatibility: Q-Share works with standard HTML, React, Vue, Angular, and server-side rendered stacks (WordPress, Drupal, custom CMS). The script must execute against the real DOM.

 

04 — Data-point tags

Add a data-point attribute to any HTML element where live content should appear. Q-Share replaces the element's inner text with the corresponding value from Q-Data at page load.

Basic usage

<!-- Hotel name --> <h1 data-point="10-20"></h1>  <!-- Check-in time --> <span data-point="13-03"></span>  <!-- Pet policy --> <p data-point="19-32"></p>

Multi-entry dialogs — array notation

Some dialogs hold multiple entries (room types, restaurants, F&B outlets). Use zero-based array notation to target individual entries.

<!-- First restaurant name --> <span data-point="17-11[0]"></span>  <!-- Second restaurant name --> <span data-point="17-11[1]"></span>

Compatible HTML elements: <span>, <p>, <h1><h6>, <li>, <a>, <td>, and any block or inline element.

Recommended CSS rule:

[data-point]:empty { display: none; }

Practical example — restaurant page

 
 
html
<section class="restaurant">   <h2  data-point="17-11[0]"></h2>   <!-- Name -->   <p   data-point="17-15[0]"></p>   <!-- Cuisine -->   <p   data-point="17-20[0]"></p>   <!-- Opening hours -->   <p   data-point="17-32[0]"></p>   <!-- Dress code -->   <p   data-point="17-39[0]"></p>   <!-- Reservation policy --> </section>

 

05 — Data-point catalogue

FID Category Content Multi-entry
10-20 Hotel Hotel name No
10-25 Hotel Hotel description No
10-42 Hotel Star rating No
10-55 Hotel Number of rooms No
11-02 Location Address No
11-12 Location City No
13-03 Check-in / Check-out Check-in time No
13-04 Check-in / Check-out Check-out time No
13-07 Check-in / Check-out Early check-in policy No
14-01 Rooms Room types Yes
17-11 Restaurant Restaurant name Yes
17-15 Restaurant Cuisine type Yes
17-20 Restaurant Opening hours Yes
17-32 Restaurant Dress code Yes
17-39 Restaurant Reservation policy Yes
18-02 Spa Spa name No
18-03 Spa Spa description No
18-04 Spa Spa opening hours No
19-32 Policies Pet policy No
19-42 Policies Cancellation policy No
20-22 Parking Parking availability No
20-23 Parking Parking price No

Full data point catalogue 

06 — Go-live checklist

  • License key and script URL received from QUINTA
  • Script tag placed immediately before </body> on all target pages
  • data-lang matches the correct locale(s) of the site
  • At least 10 data-point tags placed on priority pages (home, rooms, restaurant)
  • CSS rule [data-point]:empty { display: none; } added to the stylesheet
  • Injected values visible in the browser