Učinite svoj dodatak kompatibilnim s LS4
From LimeSurvey Manual
Tehničke promjene
Nova XML konfiguracijska datoteka
Od verzije LimeSurvey 4.0 dodacima je potrebna XML konfiguracijska datoteka kako bi se mogli pokrenuti u aplikaciji.
Razlog tome je mogućnost pohranjivanja metapodataka, kao što su autor dodatka, e-pošta za podršku ili informacije o ažuriranju.
Ova XML datoteka je obavezna u LimeSurvey 4. Treba se nalaziti u korijenskom direktoriju dodatka. Za više informacija pogledajte razvoj dodataka dodaci
Primjer:

Novi direktorij dodataka
Direktorij dodataka promijenjen je u LimeSurvey 4. Iz sigurnosnih razloga direktorij dodataka sada se nalazi u direktoriju za učitavanje (/upload/plugins) zbog novog upravitelja dodataka (alat za učitavanje dodataka). Za ručno učitavanje preporučujemo da svoje datoteke učitate u novi direktorij kako biste izbjegli neispravan rad softvera.
Obavezno promijenite ili dodajte novi direktorij ako je on ugrađen (hard-coded) u vaš dodatak.
Primjer:

Novi događaji dodataka
Neki događaji dodataka iz LS3 su zastarjeli. Koristite nove događaje dodataka uvedene u LS4 kako biste zamijenili stare. Za više informacija pogledajte naš razvojni priručnik o događajima dodataka.
Zastarjele funkcije i metode
Budući da su se kod ili struktura LimeSurvey 4 promijenili, postoji mnogo metoda ili funkcija koje se više ne koriste. Kako biste riješili ovaj problem, najprije morate omogućiti način rada za otklanjanje pogrešaka u datoteci config.php, a zatim otići na stranicu dodataka. Svaka metoda koja više ne postoji bit će prikazana na stranici s pogreškom.
Neke metode su preimenovane u LS4 ili se više ne koriste. Kako biste bili sigurni da vaš dodatak radi i u LS3 i u LS4, provjerite verziju LS-a prije pozivanja metode koja vam je potrebna.
Primjer:

Najbolja praksa
Izbjegavajte SVG datoteke
Iz sigurnosnih razloga (XSS) učitavanje SVG datoteka nije moguće. Alat za učitavanje dodataka ignorirat će SVG datoteke. Zamijenite ih PNG ili JPEG datotekama. Učitavanje SVG datoteka moguće je samo ako imate pristup instalacijskom direktoriju putem FTP-a ili drugih poslužiteljskih alata (učitavate sve datoteke na vlastitu odgovornost).
Izbjegavajte globalne konstante
Izbjegavajte korištenje globalnih konstanti koje mogu doći u sukob s varijablama jezgre aplikacije ili drugih dodataka, poput „ROOT_PATH“. Općenito nemojte koristiti globalne konstante pri razvoju dodataka.
Koristite imenske prostore (namespaces)
Koristite imenske prostore za bolju organizaciju grupiranjem klasa koje zajedno obavljaju zadatak u vašem dodatku. Na taj način izbjegavate korištenje klasa koje se već koriste u jezgri aplikacije.
Primjer:

