Monday, November 08, 2010 at 12:04 AM.
system.verbs.builtins.mainResponder.adminSite.prefs.listObjects
on listObjects () { <<Changes <<9/5/02; 2:45:13 AM by JES <<Created. local (pta = html.getPageTableAddress ()); local (bgcolors = {pta^.trbg1, pta^.trbg2}); local (htmltext); on add (s) { htmltext = htmltext + (s + "\r");}; if pta^.method == "POST" { local (adrargs = @pta^.postArgs); if defined (adrargs^.undoCheckout) { local (adr); for adr in adrargs { if adr^ == "x" { local (name = string.urlDecode (nameOf (adr^))); local (adrcheckout = @user.custody.objects.[name]); if defined (adrcheckout^) { delete (adrcheckout)}}}}}; bundle { //list checked out objects add ("<table cellpadding=\"3\" cellspacing=\"0\" border=\"0\">"); bundle { //headers add ("<tr><td></td><td><b>Object</b></td><td><b>Who</b></td><td><b>When</b></td></tr>")}; local (objects = custody.getCheckedOutItems ()); local (ct = 0); for item in objects { add ("<tr bgcolor=\"" + bgcolors[ (ct++ % 2) + 1] + "\">"); add ("<td><input type=\"checkbox\" name=\"" + string.urlEncode (item["address"]) + "\" value=\"x\" /></td>"); add ("<td class=\"small\">" + string.popFileFromAddress (item["address"]) + "</td>"); add ("<td class=\"small\" valign=\"top\">" + item["user"] + "</td>"); add ("<td class=\"small\" valign=\"top\">" + item["checkedOutDate"] + "</td>"); add ("</tr>")}; if ct == 0 { add ("<tr><td colspan=\"4\">There are no objects checked out at this time.</td></tr>")} else { //add undo checkout button add ("<tr><td colspan=\"4\"><br /><input type=\"submit\" name=\"undoCheckout\" value=\"Undo Checkout\"></td></tr>")}; add ("</table>")}; return (htmltext)}
This listing is for code that runs in the OPML Editor environment. I created these listings because I wanted the search engines to index it, so that when I want to look up something in my codebase I don't have to use the much slower search functionality in my object database. Dave Winer.