File paths in web-based stacks
Devin Asay
devin_asay at byu.edu
Fri Nov 3 15:21:21 EST 2006
On Nov 3, 2006, at 11:02 AM, Jim Ault wrote:
>> Of course, when you read your stack from a web server, it resides
>> completely in memory, so the filename is empty. So the routine above
>> does nothing.
> The defaultFolder is the one with the Rev app at startup. You
> could start
> there and get the user name and path to that folder, then create a
> folder
> where you want.
Of course, all of this would work, but you'd have to have written all
of your stacks anticipating that someday you might want to run them
from a web server.
>
> Add 'try' to the defaultFolder
> or 'if the filename of this stack is empty'
>
> ..code
> setDefaultFolder
> ..code
>
> on setDefaultFolder
>> set the itemDelimiter to "/"
>> get the [effective] filename of this stack
> if it is not empty then
>> set the defaultFolder to item 1 to -2 of it
> else
> --> use the base URL of the stack on the server
> end if
> end setDefaultFolder
<snip>
> Hope this is close to what you need.
In my case, I have dozens of example stacks that I have created over
the years for my classes, none of which were written with the idea
that they would someday be called from a web server. Now that I'm
starting to do that, I don't really want to rewrite them all. So what
I'm really asking is, is there a way to examine these stacks from the
calling stack or standalone, check to see whether the default folder
is set anywhere in the stack, then override the 'set the
defaultFolder' so that the stack looks at the web server for external
files, instead of in the relative file path as normally determined by
the defaultFolder property.
I can't think of a simple way to do it.
Devin
Devin Asay
Humanities Technology and Research Support Center
Brigham Young University
More information about the use-livecode
mailing list