Upload Part Two

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
9 messages Options
Reply | Threaded
Open this post in threaded view
|

Upload Part Two

Chris Cunnington-5
Hmmm,
It's odd but it seems I've figured out how this works. I'm not supposed to
pull an application from Seaside and then send it to the server. I'm
supposed to make changes to the Seaside browser and then upload the image
and changes file together FOR THE WHOLE THING. I did that, and I got a bad
gateway error. Then I looked at all the sites that were all stopped... I
asked if there were a button for starting the website. Could there be? Is my
site supposed to get started like a lawnmower? Yes, yes it is. There's a
button that says Start. And now it works. Wow.

So I change my question to this: does seasidehostin.st allow you to use the
halo button to make changes to the site from within the browser?

Cheers,
Chris Cunnington

_______________________________________________
Seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
Reply | Threaded
Open this post in threaded view
|

Re: Upload Part Two

Yanni Chiu
Chris Cunnington wrote:
> So I change my question to this: does seasidehostin.st allow you to use the
> halo button to make changes to the site from within the browser?

Your seaside hosting site should have a SqueakStartup.st
that was put there automatically when you registered for
the account/site. This script gets run when your image is
started. There should be a line like:

     [ WAApplication allSubInstances do: [ :each | each preferenceAt: #deploymentMode put: true ] ] ifError: [ ].

which should disable the Seaside toolbar at the bottom of
all your applications. If you remove (or comment out) this
line then you should be able to browse/edit code - BUT, so
could anyone else that accesses the site! To make a change,
download the existing version, edit it, and upload the replacement.

BTW, I think the default startup script uses allInstancesDo:
instead of "allSubInstances do:". I changed my SqueakStartup.st
to use allSubInstnaces because I was using Shore applications
which subclassed from WAApplication.

_______________________________________________
Seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
Reply | Threaded
Open this post in threaded view
|

Re: Re: Upload Part Two

Lukas Renggli
>      [ WAApplication allSubInstances do: [ :each | each preferenceAt: #deploymentMode put: true ] ] ifError: [ ].

Yes, this line is automatically execute when the image is started up,
however there is nothing that prevents you to manually re-enable the
toolbar. We only disable the toolbar to help people making their image
production ready and prevent other people from accessing their code.

> which should disable the Seaside toolbar at the bottom of
> all your applications. If you remove (or comment out) this
> line then you should be able to browse/edit code - BUT, so
> could anyone else that accesses the site! To make a change,
> download the existing version, edit it, and upload the replacement.

Yes, this is something you usually don't want ;-)

> BTW, I think the default startup script uses allInstancesDo:
> instead of "allSubInstances do:". I changed my SqueakStartup.st
> to use allSubInstnaces because I was using Shore applications
> which subclassed from WAApplication.

Thanks for the bug-report, I will fix this problem immediately.

Keep in mind that the startup-file is recreated on every restart of
the image and that this is an internal thing that we might change or
replaced without announcement (in fact this already happened several
times). Better use your own startUp method from inside the image! Of
course we could also provide a configuration box where you could
provide your own code from the configuration web-interface, if this is
required?

Cheers,
Lukas

--
Lukas Renggli
http://www.lukas-renggli.ch
_______________________________________________
Seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
Reply | Threaded
Open this post in threaded view
|

Re: Upload Part Two

Yanni Chiu
Lukas Renggli wrote:
> Keep in mind that the startup-file is recreated on every restart of
> the image and that this is an internal thing that we might change or
> replaced without announcement (in fact this already happened several
> times).

Really? When I restart my image using the seasidehosting interface,
my startup script is unchanged. Do you mean when the machine is
rebooted, or, maybe when the www.seasidehosting.st image is restarted?

 > Better use your own startUp method from inside the image!

Thanks, I'll keep that in mind.

_______________________________________________
Seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
Reply | Threaded
Open this post in threaded view
|

Re: Re: Upload Part Two

Lukas Renggli
> Really? When I restart my image using the seasidehosting interface,
> my startup script is unchanged. Do you mean when the machine is
> rebooted, or, maybe when the www.seasidehosting.st image is restarted?

Luckily we never needed to reboot the machine so far ;-)

It is recreated every time the image is restarted, because the user
might have changed options from the user-interface that need a
slightly different startup file. Moreover we use a hidden file now,
SqueakStartup.st is not used anymore.

> Thanks, I'll keep that in mind.

As I said, it would be easy to allow users to add their own code into
the startup file from the user-interface. If this would help anybody,
let me know.

Lukas

--
Lukas Renggli
http://www.lukas-renggli.ch
_______________________________________________
Seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
Reply | Threaded
Open this post in threaded view
|

Re: Where to put the double quotes?

Chris Cunnington-5
Hi Yanni and Lukas,

Thank you for your help several days ago. I reached satiety and had to
refrain for a bit, but I have a new collection of related questions. They
all refer to what Yanni said I ought to do if I wished to activate the Halo
button.

Before I address the specifics of where the method is located that I need to
suppress with a comment's double quotes. I wonder what Avi Bryant does for
his clients? The Halo button is a great tool. And people don't need to know
a lick of Smalltalk to use it. They can change CSS and HTML just by looking
in the right box. Skip the Smalltalk. Avoid it. Just fire up your browser
anytime, and anywhere and the output device you've been using becomes an
input device. Brilliant.

But how does Avi get his clients to turn access to the Halo button on and
off? Or does he give them access to it at all? It is conceivable the he is
the only one who can use the Halo button for all the websites he's helped
create. That doesn't seem likely to me, so there must be another mechanism
that allows people to turn on and off access to the Halo button beside
looking for the right method to comment out. How does Avi do it?

But for my purposes, I'm looking for a method that looks like this:

[ WAApplication allSubInstances do: [ :each | each preferenceAt:
#deploymentMode put: true ] ] ifError: [ ].

OK, that's the target. I understand that the target is supposed to be part
of some material that Netstyle.ch has injected into my copy of Seaside which
I loaded up to its site. So I download it using ftp, and open it up on my
local Squeak. Thus and so, I start to look for the dreaded method.

But I'm told it's in something called SqueakStartup.st. As far as I can tell
that's not a class category, class, method category or method. In fact it
looks like a file that is supposed to be filed-in (loaded) to create new
classes and methods. In fact it looks a lot like the four files I have for
Fastalk that Peter Blount wrote that I'm trying to file-in, and am getting
syntax errors for. But I digress.

Using the method finder I can type in SqueakStartup.st and I get a plethora
of answers all with an arrow pointing to something else such as the word
copy. Typing in WAApplication seems to produce a recognized method class,
but no methods. I'm looking for a class and method that will produce the
identified piece of code in the bottom window of the browser, but I don't
see how what I understand to be the name of an input/file-in file,
SqueakStartup.st, can be anything I could find in a browser. Nothing in the
browser windows seems to have a ".st" suffix. What class and method might I
find the target code snippet in?

Any help you could give me in this regard (why do I get a syntax error while
trying to load Fastalk files?) would be greatly appreciated.

Yours Truly,
Chris Cunnington

_______________________________________________
Seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
Reply | Threaded
Open this post in threaded view
|

Re: Where to put the double quotes?

Lukas Renggli
> But for my purposes, I'm looking for a method that looks like this:
>
> [ WAApplication allSubInstances do: [ :each | each preferenceAt:
> #deploymentMode put: true ] ] ifError: [ ].
>
> OK, that's the target. I understand that the target is supposed to be part
> of some material that Netstyle.ch has injected into my copy of Seaside which
> I loaded up to its site. So I download it using ftp, and open it up on my
> local Squeak. Thus and so, I start to look for the dreaded method.

We don't inject code into the image, we only pass in a start-up script
that is executed when the vm is opened on the server. This start-up
script contains this particular line of code among others that start
the server on the right port, etc.

> But I'm told it's in something called SqueakStartup.st. As far as I can tell
> that's not a class category, class, method category or method. In fact it
> looks like a file that is supposed to be filed-in (loaded) to create new
> classes and methods. In fact it looks a lot like the four files I have for
> Fastalk that Peter Blount wrote that I'm trying to file-in, and am getting
> syntax errors for. But I digress.

Yes, it is a hidden file in the file-system, that is not supposed to
be changed. As I said it does not generate any code, these are just a
few expressions that get evaluated when the service starts the image.

> Any help you could give me in this regard (why do I get a syntax error while
> trying to load Fastalk files?) would be greatly appreciated.

Sorry, I don't get this question.

If you really want to enable the halos you could hack Seaside to
always display them, no matter what the #deploymentMode setting has
been configured to. However, keep in mind that this imposes a big
security risk to your image and account, basically everybody will be
able to look at your code, change it and execute anything (e.g. delete
your image) within your seasidehosting.st account.

Cheers,
Lukas

--
Lukas Renggli
http://www.lukas-renggli.ch
_______________________________________________
Seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
Reply | Threaded
Open this post in threaded view
|

Re: Where to put the double quotes?

Yanni Chiu
In reply to this post by Chris Cunnington-5
Chris Cunnington wrote:
> ... turn access to the Halo button on and off?

The normal way is to use the config app, which, in your case,
would be available at: http://brasspen.seasidehosting.st/seaside/config
Your browser will ask for user/password and send your response
using basic authentication (as defined by HTTP). When you installed
Seaside, you would have been asked for an admin name and password.
If you're using the prebuilt image from seaside.st, then check
the website for name/pwd.

The config app is just another seaside application running in your image,
but it let's you set your application preferences. Look for the deployment
mode setting. Another place you can set your application preferences is in
the class initialize method of your application.

The startup script is used to run some snippet of code when the
image starts. When you're developing code, you normally have a
workspace available to run a code snippet. But in the seasidehosting
environment, your image is deployed "headless" (i.e. no GUI). As a
convenience, Lukas had set up seasidehosting with a startup script,
which (amongst other things) set the deployment mode to "true" for
all the apps in the image. So you didn't have to use the config app
to set this preference.

IIUC, the startup script mechanism has been improved, to capture
the deployment mode settings for all the apps in your image, and
save these to a "hidden" file. So what I said earlier about editing
your startup script is no longer valid.

_______________________________________________
Seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
Reply | Threaded
Open this post in threaded view
|

Re: Where to put the double quotes?

Chris Cunnington-5
In reply to this post by Lukas Renggli
Hi Lukas and Yanni,

Thank you for your help. I think the problem is that I'm going to need to
dig into Smalltalk and Squeak before I can adequately approach this problem.
Thanks!

Chris Cunnington

_______________________________________________
Seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside