Urobte svoj doplnok kompatibilným s LS4
From LimeSurvey Manual
Technické zmeny
Nový konfiguračný súbor XML
Od verzie LimeSurvey 4.0 potrebujú doplnky na spustenie v aplikácii konfiguračný súbor XML.
Dôvodom je možnosť ukladať metadáta, ako je autor doplnku, e-mail podpory alebo informácie o aktualizáciách.
Tento súbor XML je v LimeSurvey 4 povinný. Mal by sa nachádzať v koreňovom adresári doplnku. Viac informácií nájdete vo vývojárskej dokumentácii doplnkov
Príklad:

Nový adresár doplnkov
Adresár doplnkov sa v LimeSurvey 4 zmenil. Z bezpečnostných dôvodov sa teraz adresár doplnkov nachádza v adresári upload (/upload/plugins) vďaka novému správcovi doplnkov (nástroj na nahrávanie doplnkov). Pri manuálnom nahrávaní odporúčame nahrať súbory do nového adresára, aby sa predišlo nesprávnemu fungovaniu softvéru.
Ak je adresár v doplnku zadaný pevne v kóde, nezabudnite ho zmeniť alebo pridať nový.
Príklad:

Nové udalosti doplnkov
Niektoré udalosti doplnkov z LS3 boli zastarané. Použite nové udalosti doplnkov zavedené v LS4 na nahradenie starých udalostí. Viac informácií nájdete v našej vývojárskej príručke o udalostiach doplnkov.
Zastarané funkcie a metódy
Keďže sa zmenil základ kódu alebo štruktúra LimeSurvey 4, existuje veľa metód alebo funkcií, ktoré sa už nepoužívajú. Na vyriešenie tohto problému najprv zapnite režim ladenia v súbore config.php a potom prejdite na stránku doplnkov. Každá metóda, ktorá už neexistuje, sa zobrazí na chybovej stránke.
Niektoré metódy boli v LS4 premenované alebo sa už nepoužívajú. Aby ste si boli istí, že váš doplnok funguje v LS3 aj LS4, skontrolujte verziu LS pred volaním potrebnej metódy.
Príklad:

Osvedčené postupy
Vyhnite sa súborom SVG
Z bezpečnostných dôvodov (XSS) nie je nahrávanie súborov SVG možné. Nástroj na nahrávanie doplnkov súbory SVG ignoruje. Nahraďte ich súbormi PNG alebo JPEG. Nahrávanie súborov SVG je možné iba vtedy, ak máte prístup do inštalačného adresára cez FTP alebo iné serverové nástroje (nahrávanie akýchkoľvek súborov na vlastné riziko).
Vyhnite sa globálnym konštantám
Vyhnite sa používaniu globálnych konštánt, ktoré môžu kolidovať s premennými jadra aplikácie alebo iných doplnkov, ako napríklad „ROOT_PATH“. Globálne konštanty vo vývoji doplnkov vo všeobecnosti nepoužívajte.
Používajte menné priestory
Používajte menné priestory pre lepšiu organizáciu zoskupením tried, ktoré spolupracujú na vykonaní úlohy vo vašom doplnku. Takto sa vyhnete používaniu tried, ktoré už používa jadro aplikácie.
Príklad:

