• Kontakt
  • O systemie
  • Strona główna
Pomoc
  • Założenia systemu
  • Praca z systemem
  • Opcje
  • Szablony
  • Moduły
  • Edytor HTML
  • E-commerce - sprzedaż online
  • Inne zagadnienia
    • Generowanie sitemap.xml
    • Autogenerowanie słów kluczowych
    • Mechanizm przypisywania do wielu kategorii
    • Wirtualne katalogi - przekazywanie zmiennych
    • Zewnętrzne biblioteki
    • Tagi
    • Konwersja video
    • Plik konfiguracyjny
    • Skrypty użytkownika w systemie
    • System uzytkowników - frontend
  • Przykłady rozwiązań

Skrypty użytkownika w systemie

Poniżej zostanie opisana lista możliwości w zakresie indywidualnych funkcji, opcji działających w systemie CMS po stronie back-endu.

Katalog basescripts

Plik w katalogu "basescripts" o nazwie [nazwa_bazy].inc.php jest includowany podczas:
  • edycji rekordu - po operacji zapisu danych
  • edycji pola w liście (ajaks)
  • listowanie rekordów - przed wygenerowaniem kodu html
przykład zastosowania:
wykrycie zapisu ($_SERVER['REQUEST_METHOD'] == 'POST') danych i zmiany statusu:


if ($_SERVER['REQUEST_METHOD'] == 'POST' && $_POST['status'] == 1 && $old['status'] == 0) {

// zrób coś jeśli zmieniono status z 0 na 1

}

analogicznie dla innych pól:
w zmiennej $_POST są nazwy pól wypełnione przez usera a w zmiennej $old poprzednia wartość pól.

Plik w katalogu "basescripts" o nazwie [nazwa_bazy]__edit_before.inc.php jest includowany podczas:
  • edycji rekordu - przed operacją zapisu danych
Plik w katalogu "basescripts" o nazwie [nazwa_bazy]__list.inc.php jest includowany podczas operacji:
  • listowanie rekordów - przed wygenerowaniem kodu html, po zdefiniowaniu tablicy kolumn w zmiennej $pola
    dzięki temu można zmodyfikować listę pokazywanych kolumn
przykład - dodanie kolumny z wyliczoną wartością - sumą

 $addVars .= ", (price*amout) as sumaq "; // dodatkowe zmienne do zapytania SQL
 
 // dodanie kolumny
 $pola = array_merge($pola, array(
  'sumaw'  => array ('wartość', 'text',10,'',1),
 ));
 
 // dodanie wyjątku - dla sortowania wg pól które nie są fizycznymi polami w tabeli
 if (!is_array($sdbiSortExcep)) $sdbiSortExcep = array();
 array_push($sdbiSortExcep, 'sumaw');



Plik w katalogu "basescripts" o nazwie [nazwa_bazy]__after.inc.php jest includowany podczas operacji:
  • listowanie rekordów - po wygenerowaniu html, przed stopką
    dzięki temu można dopisać do stopki dodatkową wartość - np. sumę itp.
przykład - dopisanie podsumowania pod listą - wartość w zmiennej $suma musi być wcześniej wyliczona

print "<div style=\"position:absolute;text-align: right;bottom:40px;right:10px;z-index:100;width: 200px;\">Suma: ". number_format($suma,2, ',', ' ')." PLN </div>";



Powered by Actualizer CMS