Vývoj komponentov

Prostredníctvom vývoja vlastných komponentov môžete vytvárať zložené prvky a tie následne vkladať na stránky lokality s použitím ľubovoľnej technológie vytvárania stránok. Môžete tak rozšíriť zoznam komponentov poskytovaných so službou Oracle Content Management.

Položky pre všetky registrované komponenty sú uložené v katalógu komponentov, ktorý je priečinkom v službe Oracle Content Management obsahujúcim položky pre všetky registrované komponenty.

Pre šablóny, motívy, komponenty, lokality alebo stránky lokalít nepoužívajte nasledujúce názvy: authsite, content, pages, scstemplate_*, _comps, _components, _compsdelivery, _idcservice, _sitescloud, _sitesclouddelivery, _themes, _themesdelivery. Nasledujúce názvy môžete používať pre stránky lokalít, ale nie pre šablóny, motívy, komponenty ani pre lokality: documents, sites.

Typy komponentov

Katalóg komponentov podporuje tieto typy komponentov:

  • Lokálny komponent

  • Lokálny komponent vykreslený vo vloženom ráme

  • Vzdialený komponent

Typ komponentu je uložený ako atribút rozšírenia "xScsAppType" priečinka komponentu. Platné hodnoty sú:

Typ Popis

Lokálny komponent

Očakáva sa, že všetky závislosti budú lokálne.

Lokálny komponent vykreslený vo vloženom ráme

Komponent je obsluhovaný z rovnakej domény ako služba Oracle Content Management.

Vzdialený komponent

Komponent sa poskytuje zo vzdialeného umiestnenia.

Štruktúra súborov komponentu

Každý z typov komponentov má pri vytvorení v katalógu komponentov odlišnú množinu súborov podľa toho, ako sú implementované.

Lokálny komponent:

/Components/component-name
    appinfo.json
    _folder_icon.jpg
    assets
        settings.html
        render.js

Lokálny komponent používajúci vložený rám:

/Components/component-name
    appinfo.json
    _folder_icon.jpg
    assets
        settings.html
        render.js
        js
            sites.min.js
            knockout.min.js
            jquery.min.js

Vzdialený komponent:

/Components/component-name
    appinfo.json
    _folder_icon.jpg
    keys.json

Metadáta priečinka

Dáta registrácie komponentu sú uložené v metadátach priečinka. Nasledujúce vlastnosti slúžia na jednoznačnú identifikáciu komponentu a jeho typu.

Vlastnosť Popis

app name

Názov priečinka, ktorý označuje názov komponentu.

app description

Popis priečinka.

app guid

Každý komponent má priradený identifikátor GUID a je uložený ako atribút rozšírenia xScsItemGUID. Identifikátor GUID vygeneruje server počas vytvárania komponentu.

app type

Vlastnosť označuje typ komponentu. Je uložená ako atribút rozšírenia xScsApType.

Poznámka:

Vlastnosť iconUrl, ktorá je uložená ako atribút rozšírenia xScsAppIconUrl, je zastaraná.

Súbor appinfo.json

Registračný súbor appinfo.json pre každý typ komponentu obsahuje iba dáta, ktoré nie sú k dispozícii v metadátach priečinka. Vlastnosti komponentov, ktoré sú definované v metadátach priečinka, sa do súboru appinfo.json neduplikujú.

Lokálny komponent:

{
        "settingsData":{
                "settingsHeight":80,
                "settingsRenderOption"; "dialog",
                "settingsWidth":300,
                "componentLayouts":[],
                "triggers":[],
                "actions":[]
        },
        "initialData":{
                "customSettingsData":[],
        }
}

Lokálny komponent vykreslený vo vloženom ráme:

{
        "endpoints": {
              "settings": {
                      "height": "300",
                      "width": "400"
              }
        }
        "initialData": {
                "customSettingsData": {}
        }
}

Vzdialený komponent:

{
        "endpoints": {
              "widget": {
                     "url": "http://www.externaldomain.com/app/render.html"
              }
              "settings": {
                      "url": "http://www.externaldomain.com/app/settings.html",
                      "height": "300",
                      "width": "400"
              }
        }
        "initialData": {
              "customSettingsData": {}
        }
}

Pre lokálne komponenty neexistujú žiadne zaregistrované hodnoty "url". Používajú určité súbory, v ktorých je možné upravovať obsah, ale umiestnenie ani názov nemôžete zmeniť.

  • Lokálne komponenty používajú súbory assets/render.js a assets/settings.html.

  • Lokálne komponenty vykreslené vo vloženom ráme používajú súbory assets/render.html a assets/settings.html.

  • Vzdialené komponenty používajú akékoľvek zadané hodnoty "url".