Vedo due problemi. Credo che sia uno script piuttosto vecchio, almeno risalente ai tempi nei quali era prassi nefasta avere la direttiva GLOBAL_REGISTER su ON.
Ora tutti i parametri inviati tramite metodo GET (se global register è come credo e come è auspicabile su off) vanno recuperati da $_GET.
ad esempio non è possibile recuperare $directory se non con $_GET['directory'], lo stesso per $phpslideshow e poi non so se ce ne sono altri...
Inoltre, $PHP_SELF va sostituito con un più moderno e appropriato $_SERVER['PHP_SELF']