space Baylys
Just practicing to pass the Turing test.
space
space
space
space
Developer for Hire!
space
addedValues Plugin
space

Home

What's new

Bayly.Root

Cornershop Plugin

Career

edutools Root

Enhancements

Interests

linguist Plugin

Manila

Patches

Patches by Group

Papers

Sales

Sign My Guestbook

User(land) Relations.

Contact Address

Search Baylys

urlchains

space
Join Now
Login
space space space

manilaSuite.storyList

Increase the width assigned to the link (German has long words)

on storyList (categoryType, flCreateLink=true, hitsPerPage=50, flIncludeCheckBox=false, boxPrefix="", flCategoryInSearchArgs=false, flUseSiteStructurePaths=false)
  «Changes:
 unaltered lines omitted
 
  local (pta = html.getPageTableAddress ())
  local (adrSite = pta^.adrSiteRootTable)
  local (flEditor = pta^.flEditor)
  local (category, readerUrl, newUrl)
  local (htmlText, indentLevel = 0)
  local (url = pta^.urls^.discussMsgReader)
  local (siteUrl = pta^.ftpSite^.url)
  local (membershipGroup = pta^.defaultMembershipGroup)
 
  local (start = 1)
  local (end = hitsPerPage)
  local (flNeedNextLink = false, flNeedPrevLink = false) //03/02/01, 16:17:20 by DAB
  local (letterToJumpTo = "") //03/02/01, 16:13:16 by DAB
  local (flChronologicalSort = not manilaSuite.getNewssitePref("flstoriesAlphaSort", adrSite, false, true)) //03/02/12, 13:57:53 by DAB
  local (replacementTable)
  new (tableType, @replacementTable)
  local (memberCacheTable)
  new (tableType, @memberCacheTable)
 
  bundle //get start from search args
  if pta^.searchArgs != ""
  local (argTable)
  new (tableType, @argTable)
  webserver.parseArgs (pta^.searchArgs, @argTable)
  if defined (argTable.m) //03/02/01, 16:22:45 by DAB
  try
  hitsPerPage = number (argTable.m)
  try
 unaltered lines omitted
  if defined (argTable.letter) //03/02/01, 16:12:43 by DAB
  letterToJumpTo = string.trimWhiteSpace (string.lower (argTable.letter))
  start = infinity
 
  on add (s)
 unaltered lines omitted
  on td (s, align="")
 unaltered lines omitted
 
  local (countDeleteBoxes=0) //04/05/27, 16:48:24 by DAB
  on listOneMessage (adrMsg)
  add ("<tr>"); indentlevel++
  if flIncludeCheckbox
  «td ("<input type=\"checkbox\" name=\"" + boxPrefix + adrMsg^.msgNum + "\" value=\"0\">")
  if defined (pta^.adrMemberInfo) and (mainResponder.discuss.memberCanEdit (adrMsg, pta^.adrMemberInfo)) //04/05/27, 16:48:20 by DAB
  td ("<input type=\"checkbox\" name=\"" + boxPrefix + adrMsg^.msgNum + "\" value=\"0\">")
  countDeleteBoxes++
  else //04/05/27, 16:48:33 by DAB
  td (" ")
  td (mainResponder.localization.shortDateString (adrMsg^.posttime), align:" align=\"right\"") // 4/13/00 JES: localized
  if flUseSiteStructurePaths //PBS 09/06/01: if true, construct the link using the site structure path
  local (relativePath = manilaSuite.siteStructure.getRelativePathToMessage (adrMsg^.msgNum, adrSite))
  if relativePath == "" //no path?
  «td (mainresponder.discuss.linkToMessage (adrMsg, readerUrl, 40))
  td (mainresponder.discuss.linkToMessage (adrMsg, readerUrl, 80)) //03/01/02, 21:14:07 by DAB
  else //there's a path, use the relative URL
  local (subject = adrMsg^.subject)
  «subject = string.ellipsize (subject, 40)
  subject = string.ellipsize (subject, 80) //03/01/02, 21:13:40 by DAB
  local (storyUrl)
  storyUrl = siteUrl + string.popLeading (relativePath, "/")
  td ("<a href=\"" + storyUrl + "\">" + subject + "</a>")
  else //use storyReader$ (or similar) link
 unaltered lines omitted
  local (memberName)
  if defined (memberCacheTable.[adrMsg^.member]) //PBS 03/22/01: member names are cached, since they're often repeated
 unaltered lines omitted
  else
 unaltered lines omitted
  td (memberName)
  add ("</tr>"); indentlevel-- //PBS 03/20/01: </tr> tag was missing
  sys.systemTask () //PBS 03/22/01: kinder to the server
  return (true)
 
  case string.lower (categoryType)
  "stories"
  readerUrl = pta^.urls^.storyReader
  replacementTable.url = pta^.urls^.editorialNewStory
  category = manilaSuite.discuss.getStoriesCategory ()
  «newLink = "<b>" + manilaSuite.getString ("discuss.newStoryLink", @replacementTable) + "</b>"
  newLink = manilaSuite.getString ("discuss.newStoryLink", @replacementTable) //04/05/27, 21:25:51 by DAB
  if manilaSuite.pike.memberHasPike (pta)
  local (newStoryInPikeUrl = "newStoryInRadio") //12/22/00 JES: changed to newStoryInRadio
  «newLink = newLink + "<p>" + manilaSuite.pike.pikeButton (newStoryInPikeUrl, nil, pta^.adrMemberInfo, pta^.adrSiteRootTable, false, pta:pta)
  newLink = newLink +" " + manilaSuite.pike.pikeButton (newStoryInPikeUrl, nil, pta^.adrMemberInfo, pta^.adrSiteRootTable, false, pta:pta) //04/05/27, 21:25:43 by DAB
  "pictures"
  readerUrl = pta^.urls^.pictureReader
  replacementTable.url = pta^.urls^.editorialNewPicture
  category = manilaSuite.discuss.getPicturesCategory ()
  «newLink = "<b>" + html.getLink ("Create a New Picture", newUrl) + " to add a picture to this list.</b>"
  «newLink = "<b>" + manilaSuite.getString ("pictures.newPictureLink", @replacementTable) + "</b>"
  newLink = manilaSuite.getString ("pictures.newPictureLink", @replacementTable) //04/05/28, 07:34:31 by DAB
 
  bundle //beginning of table
  bundle //column headings; 4/13/00 JES: localized headings
  «bundle //list stories
  bundle //ensure table is sorted by correctly 03/02/12, 14:15:29 by DAB
  local (adrIndex = manilaSuite.discuss.getIndexTable (adrSite, categoryType))
  local (sortedBy = "")
  try {sortedBy = adrIndex^.sortedBy}
  local (sortedByWanted = "Value")
  if flChronologicalSort
  sortedByWanted = "Name"
  if sortedByWanted != sortedBy
  local (oldTarg = target.set(@adrIndex^.index))
  table.sortby(sortedByWanted)
  try {target.set(oldTarg)}
  adrIndex^.sortedBy = sortedByWanted
  if flChronologicalSort
  manilaSuite.discuss.visitIndex (adrSite, categoryType, @listOneMessage, true, start, hitsPerPage) //true for reverse-chronological
  «manilaSuite.discuss.visitIndex (adrSite, categoryType, @listOneMessage, false, start, hitsPerPage) //03/01/22, 12:00:43 by DAB
  bundle //links to more screens
  local (adrIndex = manilaSuite.discuss.getIndexTable (adrSite, categoryType))
  local (adrMessages = @adrIndex^.index)
  local (sizeMessages = sizeOf (adrMessages^))
  local (linkText="") //04/05/28, 07:26:27 by DAB
  if sizeMessages > hitsPerPage
  on add(s)
 unaltered lines omitted
  local (numScreens = ((sizeMessages - 1) / hitsPerPage) + 1)
  local (i)
  local (currentScreen = (start / hitsPerPage) + 1)
  «local (colspan = 3)
  «if flIncludeCheckbox
 unaltered lines omitted
  «add ("<tr><td colspan=\"" + colspan + "\"><font size=\"-1\"> <br>More: ")
  add (manilaSuite.getString("common.more", pta:pta)) //localised 04/05/28, 07:28:24 by DAB
  for i = 1 to numScreens
  add(" ") //04/05/28, 07:38:55 by DAB
  if i == currentScreen
  «add (i + " ")
  add (i ) //04/05/28, 07:39:09 by DAB
  else
 unaltered lines omitted
  «add ("</font></tr>") //commented 04/05/28, 07:27:32 by DAB
  htmltext = linkText + htmltext //04/05/28, 07:26:31 by DAB
  else //list stories, have to do it ourselves 03/02/01, 16:44:05 by DAB
  local (adrIndex = manilaSuite.discuss.getIndexTable (adrSite, categoryType))
  local (adrMessages = @adrIndex^.index)
  local (listedIn = manilaSuite.discuss.getCategoryName (categoryType, adrSite)) //go from "stories" to "mySiteStories" or whatever
  local (lowerListedIn = string.lower (listedIn))
  local (ix, sizeMessages = sizeOf (adrMessages^), displayCnt=0)
  if sizeMessages > 0
  local (adrRoot = manilaSuite.discuss.getRootFromSiteAddress (adrSite))
  local (flStarted = false, flRemainder = false, flCheckingForRemainder = false) //03/02/01, 16:27:45 by DAB
  for ix = 1 to sizeMessages
  local (adr = @adrMessages^ [ix])
  local (msgNum = number (nameOf (adr^)))
  «local (adrMsgTable = manilaSuite.discuss.getMessageTable (msgNum, adrSite))
  local (adrMsgTable = @adrRoot^.messages.[string.padWithZeros (msgNum, 7)]) //PBS 03/22/01: performance optimization
  bundle //validation is performed here -- it's defensive, but needed, because someone may have made a change by hand
  if defined (adrMsgTable^.flDeleted)
  if adrMsgTable^.flDeleted
  continue
  if not defined (adrMsgTable^.alsoListedIn) //PBS 03/22/01: performance optimization -- do validation here instead of calling to manilaSuite.discuss.isInCategory
  continue
  else
  if not (string.lower (adrMsgTable^.alsoListedIn) contains lowerListedIn)
  continue
  «if not (manilaSuite.discuss.isInCategory (adrMsgTable, listedIn)) //is it in this category?
  «flCallCallback = false //PBS 12/20/00: was a continue statement -- which led to an infinite loop
  displayCnt++
  if flCheckingForRemainder //don't display, just break: this means we need a Next link 03/02/01, 16:27:49 by DAB
  flNeedNextLink = true
  break
  if letterToJumpTo != "" //PBS 09/06/01: support for alphabet links 03/02/01, 16:27:52 by DAB
  if not flStarted
  local (lowersubject = adr^)
  local (ch = lowersubject [1])
  if char (ch) >= char (letterToJumpTo)
  start = displayCnt
  if displayCnt >= start
  flStarted = true
  if not listOneMessage (adrMsgTable)
  break
  else
  flNeedPrevLink = true
  if displayCnt == start + (hitsPerPage - 1)
  flCheckingForRemainder = true
  if countDeleteBoxes > 0 //04/05/27, 16:52:32 by DAB
  add ("<tr>"); indentlevel++
  add ("<td colspan ='4' align = 'left'>")
  add ("<input type='submit' name='deleteMessage' value='" + manilaSuite.getString ("admin.deleteDGMessage") + "'>  ")
  add("</td>")
  add ("</tr>"); indentlevel--
  add ("<tr>"); indentlevel++
  add ("<td colspan ='4' align = 'left'>")
  if categoryType == "stories"
  add ("<input type='submit' name='demoteStory' value='" + manilaSuite.getString ("admin.deleteFromStoriesList") + "'>")
  else
  add ("<input type='submit' name='demotePicture' value='" + manilaSuite.getString ("admin.deleteFromPicturesList") + "'>")
  add("</td>")
  add ("</tr>"); indentlevel--
  bundle //end of table
 
  if not flChronologicalSort //Links 03/02/01, 16:16:36 by DAB
  local (linkText = "")
  if flNeedPrevLink or flNeedNextLink //buildNext and Previous Links
  on add(s)
  linkText = linkText + s;
 
  local (pathArgsLink = "")
  if defined (pta^.pathArgs) and pta^.pathArgs != ""
  pathArgsLink = "$" + pta^.pathArgs
 
  local (catinsearchargs="") //03/07/30, 19:26:13 by DAB
  if flCategoryInSearchArgs
  catinsearchargs = "&c=" + categoryType
 
  local (previousStart = start - hitsPerPage)
 
  if flNeedPrevLink
 
  if previousStart < 1
  previousStart = 1
 
  «add ("<a href=\"" + pta^.URI + pathArgsLink + "?s=" + previousStart + "&m=" + hitsPerPage + "\">Previous</a>")
  add ("<a href=\"" + pta^.URI + pathArgsLink + "?s=" + previousStart + "&m=" + hitsPerPage + catinsearchargs + "\">Previous</a>") //03/07/30, 19:26:05 by DAB
  else
  add (manilaSuite.getString ("common.previous", pta: pta)) // 4/18/00 JES: localized
 
  add (" | ")
 
  if flNeedNextLink
  «add ("<a href=\"" + pta^.URI + pathArgsLink + "?s=" + (start + hitsPerPage) + "&m=" + hitsPerPage +"\">Next</a>")
  add ("<a href=\"" + pta^.URI + pathArgsLink + "?s=" + (start + hitsPerPage) + "&m=" + hitsPerPage + catinsearchargs + "\">Next</a>") //03/07/30, 19:26:01 by DAB
  else
  add (manilaSuite.getString ("common.next", pta: pta)) // 4/18/00 JES: localized
 
  local (alphaLinks = "")
  local (i)
  local (letterToBold = "")
  if defined (argTable.letter)
  try {letterToBold = argTable.letter [1]}
  on addAlphaLink (ch)
  if ch == letterToBold //bolden current letter
  alphaLinks = alphaLinks + "<b>" + ch + "</b>" + " "
  else
  local (url = pta^.URI + "?letter=" + ch)
  alphaLinks = alphaLinks + "<a href=\"" + url + "\">" + ch + "</a> "
  for i = 'A' to 'Z'
  addAlphaLink (char (i))
 
  add ("\r<p><font size=\"-1\">" + manilaSuite.getString("common.More", pta:pta) + ": " + alphaLinks + "</font>")
 
 
 
  htmltext = linktext + htmlText
 
  if (flEditor) and (flCreateLink) and (not pta^.flPrintFriendlyTemplate)
  «add ("<p>")
  «add (newLink)
  htmltext = newlink + ("<p>" + htmltext) //04/05/28, 07:26:39 by DAB
 
  return (manilaSuite.unTaint (htmlText))

Relative to Frontier version 9.7b10