Get("Date Last Modified"); if ($Modified == "0000-00-00 00:00:00") { $Modified = "—"; } else { $MUser = $Item->Get("Last Modified By Id", true); $MUser = array_shift($MUser); $Modified = StdLib::getPrettyTimestamp($Modified) ." - ".(($MUser instanceof User) ? $MUser->Name() : "(unknown)").""; $Modified = str_replace(" ", " ", $Modified); } return $Modified; } # set up links $BaseLink = "index.php?P=P_Pages_ListPages&CK=".$H_ListChecksum; $AddPageLink = "index.php?P=P_Pages_EditPage&ID=NEW"; $PageDisplayLink = "index.php?P=P_Pages_DisplayPage&ID=\$ID"; $PageEditLink = "index.php?P=P_Pages_EditPage&ID=\$ID"; $PageDeleteLink = "index.php?P=P_Pages_DeletePage&ID=\$ID"; # get singleton objects $AnonUser = User::getAnonymousUser(); $AF = ApplicationFramework::getInstance(); # set up fields to display $Fields = [ "Pages: Viewable" => [ "Heading" => "", "ValueFunction" => function ($Item) use ($AnonUser, $AF) { $EyeSlashLink = $AF->guiFile("EyeSlash.svg"); return $Item->userCanView($AnonUser) ? "" : ""; } ], "Pages: Title" => [ "Heading" => "Title", "Link" => $PageDisplayLink, "MaxLength" => 40 ], "Pages: Clean URL" => [ "Heading" => "URL", "Link" => $PageDisplayLink ], "Pages: Date Last Modified" => [ "Heading" => "Modified", "ValueFunction" => "GetLastModifiedText", "DefaultSortField" => true, "DefaultToDescendingSort" => true ], ]; # create and display list UI $ListUI = new ItemListUI($Fields, $H_TransportUI); $ListUI->heading("Page List"); $ListUI->itemsPerPage($H_PagesPerPage); $ListUI->baseLink($BaseLink); $ListUI->itemTypeName("Page"); $ListUI->addTopButton("Add New Page", $AddPageLink, "Plus.svg"); $ListUI->addActionButton("Edit", $PageEditLink, "Pencil.svg"); $ListUI->addActionButton("Delete", $PageDeleteLink, "Delete.svg"); $ListUI->display($H_Pages, $H_PageCount, $H_StartingIndex);