/** * Metod kojim se izvrsava porucivanje i upis porudzbine u bazu */ public static function poruci() { $podaci = KorpaZaKupovinu::podaciIzKorpe(); // Uzmi podatke o sadrzaju korpe if ($podaci == 0 or !$_POST) { // Ako je korpa prazna Funkcije::redirektujNaUrl("index.php?modul=korpa&signal=prazna_korpa"); // Uputi korisnika da to vidi } else { $Korisnik_ID = PrijavaKorisnika::korisnikId(); // Uzmi ID prijavljenog korisnika $Suma = 0; // Za izracunavanje ukupnog iznosa za uplatu za porudzbinu foreach ($podaci as $item) { $SUMA += $item['Ukupno']; } $Porudzbina = MySQL::escape(json_encode($podaci)); // Pretvaranje svih podataka o porudzbini i JSON format za skladistenje $Ime_i_prezime = MySQL::escape($_POST['Ime_i_prezime']); $Adresa = MySQL::escape($_POST['Adresa']); $Grad = MySQL::escape($_POST['Grad']); $Telefon = MySQL::escape($_POST['Telefon']); $sql = "INSERT INTO porudzbine (`Korisnik_ID`, `Porudzbina`, `Suma`, `Ime_i_prezime`, `Adresa`, `Grad`, `Telefon`)\n VALUES ({$Korisnik_ID}, '{$Porudzbina}', {$SUMA}, '{$Ime_i_prezime}', '{$Adresa}', '{$Grad}', '{$Telefon}');"; $res = MySQL::upit($sql); // Izvrsiti upis u bazu if ($res) { KorpaZaKupovinu::isprazni(); Funkcije::redirektujNaUrl("index.php?modul=korpa&signal=uspesno_poruceno"); } else { Funkcije::redirektujNaUrl("index.php?modul=korpa&signal=greska"); } } }
/** * Metod kojim administrator obelezava da je neka porudzbina uspesno realizovana. Moze da se pokrene samo ako je prijavljeni korisnik admin */ public static function realizuj() { if (PrijavaKorisnika::daLiImaAdminPrivilegije()) { $Porudzbina_ID = intval($_GET['Porudzbina_ID']); MySQL::upit("UPDATE porudzbine SET Realizovana = 1 WHERE ID = {$Porudzbina_ID}"); Funkcije::redirektujNaUrl("index.php?modul=porudzbine"); } else { Funkcije::redirektujNaUrl("index.php"); } }
// Podrazumevane vrednosti modula smestena u privremenu promenljivu $opcija = $default_opcija; // Podrazumevane vrednosti opcije smestena u privremenu promenljivu // Preuzimanje izabranog modula i opcije iz HTTP zahteva if (isset($_GET['modul'])) { $modul = Funkcije::procistiIme($_GET['modul']); } if (isset($_GET['opcija'])) { $opcija = Funkcije::procistiIme($_GET['opcija']); } if (!file_exists("front/moduli/" . $modul . ".php")) { // Proveri da li postoji php fajl za izabrani modul $modul = $default_modul; // ako ne postoji, izaberi default modul } include_once "front/moduli/" . $modul . ".php"; // Ucitaj php fajl gde je definisana klasa modula // Proveri da li postoji metod sa izabranim imenom u klasi ucitanog modula, ako ne postoji, izaberi default opciju kao metod if (!is_callable(array($modul, $opcija))) { $opcija = $default_opcija; } define('modul', $modul); define('opcija', $opcija); $modul::before(); // Izvrsi funkciju before() pre bilo koje druge funkcije $modul::$opcija(); // Izvrsi izabranu opciju u izabranim modulu $modul::after(); // Izvrsi funkciju after() posle svih ostalih funkcija Funkcije::podnozjeSajta(); // Generisi podnozje sajta
/** * Metod za dodavanje knjige u korpu */ public static function kupi() { if (isset($_GET['Knjiga_ID'])) { $Knjiga_ID = intval($_GET['Knjiga_ID']); KorpaZaKupovinu::dodajKnjigu($Knjiga_ID); Funkcije::redirektujNaUrl("index.php?modul=knjige&opcija=prikaz&ID=" . $Knjiga_ID); } else { Funkcije::redirektujNaUrl("index.php"); } }
/** * Funkcija za odobravanje komentara iz baze podataka */ public static function odobrikomentar() { if (PrijavaKorisnika::daLiImaAdminPrivilegije()) { $Komentar_ID = intval($_GET['Komentar_ID']); MySQL::upit("UPDATE komentar SET odobren = 1 WHERE ID = '{$Komentar_ID}';"); Funkcije::redirektujNaUrl("index.php?modul=admin&opcija=komentari&signal=odobren"); } else { Funkcije::redirektujNaUrl("index.php"); } }
/** * Metod koji obezbedjuje funkciju odjave sa sajta */ public static function odjava() { PrijavaKorisnika::ponistiSesiju(); Funkcije::redirektujNaUrl("index.php?modul=main&opcija=prijava"); }
</article> <!-- Spisak komentara --> <?php if (isset($komentari) and count($komentari)) { foreach ($komentari as $komentar) { // Ako ima komentara za prikaz, prikazi ih ?> <section class="komentari"> <article class="komentar"> <div class="komentar-korisnik"><?php echo htmlspecialchars($komentar['KorisnikKorisnickoIme']); ?> </div> <div class="komentar-datum-vreme"><?php echo Funkcije::formatirajDatumVreme($komentar['DatumVreme']); ?> </div> <div class="komentar-tekst"><?php echo htmlspecialchars($komentar['Tekst']); ?> </div> </article> </section> <?php } } ?> <!-- Forma za objavu komentara --> <form action="index.php?modul=knjige&opcija=komentarisi" method="post">
/** * Funkcija koja proverava da li je sajtu upucen zajtev za opciju registracije glavnog modula sajta * @return boolean - Ako je upucen zahtev za registraciju, vrace true, a u svim ostalim slucajevima vraca false */ public static function daLiJeUpucenZahtevZaFormularRegistracije() { if (!isset($_GET['modul']) or !isset($_GET['opcija'])) { return false; } if (Funkcije::procistiIme($_GET['modul']) != 'main') { return false; } if (Funkcije::procistiIme($_GET['opcija']) != 'registracija') { return false; } return true; }