After careful testing I have discovered the "break point"
It is simply this:
I can tell the CGI to
set the directoy to gStem
at the beginning of the script... but any attempt later to set the defaultFolder to a different folder will fail.. whether or not it is in a function, a handler or in the main script repeat loop itself. it keeps defaulting back to the cgi-bin as the default folder and "the files" will contain a list of my CGI's.
I've tested the stnOut for all variables at various points in the main script and also in the function and directoryWalk handler... and they are all being poked as expected... see comments in the script for where the problem lies.
=======
global gFileList,gMainFolder, gStem, gImageSet, gSource, gCollectionTarget, gDaKin
on startUp
put empty into gFileList
put empty into gMainFolder
put empty into gStem
put empty into gImageSet
put empty into gSource
put empty into gCollectionTarget
put "../htm/taka/images/taka_04_10_15/" into gStem
## if i do this now: set the directory to gStem put the files into buffer put "Content-Type: text/html" & cr put "Content-Length:" && the length of buffer & cr & cr put buffer ## a list of images in the gStem directory is returned as expected
# Create a small array of the targets put "bg-top,bg-bottom,symbol" into tCollections split tCollections by comma
## now get the collection pointer, a small semaphore file with a single word
put url ("file:" & gStem &"collection_target.txt")into gImageSet
## Now step through the three targets: repeat with x = 1 to 3 put tCollections[x] into gCollectionTarget put gStem & gCollectionTarget & ".jpg" into gTargetPath put chooseImage(gCollectionTarget,gImageSet) into gSource put URL ("binfile:" & gSource) into URL ("binfile:" & gTargetPath) ## works fine in a button that runs from a stack ## with paths to the local web site on our server put empty into gFileList end repeat put jai
end mouseup
function chooseImage gCollectionTarget,gImageSet
if gImageSet ="random" then
directoryWalk (gStem & gCollectionTarget)
else
set the defaultFolder to (gStem & gCollectionTarget &"/" & gImageSet & "/")
put the files into gFileList
## if run from my stack: I get a list of images from the collection folder as expect
## but if run as a CGI the files will now be
## from the cgi-bin itself and *not* from the folder
## that is being set as the defaultFolder
## this fails whether I turn the function into a handler that pokes a global
## or even if I move this whole thing up into the repeat segment itself
## the attempt to set the directory again will fail.
## both in Darwin and on Linux running under Apache
end if
put line (random (the number of lines of gFileList)) of gFileList into gSource
return gSource
end chooseImage
on directoryWalk whatFolder
set the itemDel to "/"
set the directory to whatFolder
put the files into temp
repeat for each line x in temp
put whatfolder & "/" & x & cr after gFileList
end repeat
put the folders into tDirList
delete line 1 of tDirList
repeat for each line x in tDirList
if x = ".." then next repeat
directoryWalk (whatFolder & "/" & x)
end repeat
end directoryWalk_______________________________________________ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
