<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<div class="moz-cite-prefix">Am 27.05.19 um 23:10 schrieb Jupiter
Jones:<br>
</div>
<blockquote type="cite"
cite="mid:7F27EE19-2862-4B1E-8E1C-5C2C3D2AFDF6@mail.com">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
Hi Bruno,
<div class=""><br class="">
</div>
<div class="">
<div>
<blockquote type="cite" class="">
<div class="">I never did what you mention but it seems a
lot of work.</div>
</blockquote>
<br>
<div><br class="">
</div>
<div>Then browse to the page and save as web archive, or open
a terminal and use wget:</div>
<div><br class="">
</div>
<div>wget -r -l1 <a href="http://localhost:8080/MySeasideSite"
class="" moz-do-not-send="true">http://localhost:8080/MySeasideSite</a></div>
<div><br class="">
</div>
<div>…and you’ll get a local static version of the site for
the CSS developer to work with. Note: there are many wget
options that can help depending on how your site is
configured so it’s definitely worth finding one that works
for you.</div>
<div><br class="">
</div>
</div>
</div>
</blockquote>
<p>I'd be interested in how this works for pages/components other
than your typical login screen? How do you modify session state in
order to navigate the calls/answers to download a static version
of a page in the middle of your app? The only Way I can think of
here is to have some mechanism to navigate the app to a certain
point (Parasol?, manually?) and then replicate your _s and _k to
your wget.</p>
<p><br>
</p>
<blockquote type="cite"
cite="mid:7F27EE19-2862-4B1E-8E1C-5C2C3D2AFDF6@mail.com">
<div class="">
<div>
<div>All WAFileLibrary files will be in their appropriate
relative locations (ie.
./files/SomeWAFileLibrary/<libraryRelativePathAndFileName>)
so the front-end dev can correctly refer to them if
required.</div>
<div><br class="">
</div>
<div>I get the css dev to create all their files in the
location:</div>
<div><br class="">
</div>
<div><siteRoot>/files/< MyFileLibraryName>/</div>
<div><br class="">
</div>
<div>That way, the css dev can use whatever directory
structure they are comfortable with and we can upload them
to a WAFileMetadataLibrary using:</div>
<div><br class="">
</div>
<div>MyFileLibraryName recursivelyAddAllFilesIn:
‘<pathToSiteRoot>/files/MyFileLibraryName’</div>
<div><br class="">
</div>
<div>…and it should be ready to go.</div>
<div><br class="">
</div>
<div>
<blockquote type="cite" class=""><span class=""
style="caret-color: rgb(0, 0, 0); float: none; display:
inline !important;">/*</span><br class=""
style="caret-color: rgb(0, 0, 0);">
<span class="" style="caret-color: rgb(0, 0, 0); float:
none; display: inline !important;">/You do not want to
mess with WAFileLibrary in that development
workflow.../ </span><br class="" style="caret-color:
rgb(0, 0, 0);">
<span class="" style="caret-color: rgb(0, 0, 0); float:
none; display: inline !important;">*/</span><br class=""
style="caret-color: rgb(0, 0, 0);">
</blockquote>
<div class=""><span class="" style="caret-color: rgb(0, 0,
0); float: none; display: inline !important;"><br
class="">
</span></div>
<div class=""><span class="" style="caret-color: rgb(0, 0,
0); float: none; display: inline !important;">This is in
the context of CSS development. The front-end dev could
be testing minor changes 10 times a minute and if they
need to upload the CSS files to a FileLibrary each time
- a minutes work becomes an hour.</span></div>
</div>
</div>
</div>
</blockquote>
<p>Hmmm. It shouldn't be too hard to make some handler in a
Smalltalk image that accepts uploads and compiles to a
WAFileLibrary. Or you could just have a directory somewhere
accessible for uplads and a button in your image that loads and
recompiles all files from there. This import of Strings to
WAFileLibrary methods take about a blink of an eye rather than
(an) hour(s)...?<br>
</p>
<p><br>
</p>
<blockquote type="cite"
cite="mid:7F27EE19-2862-4B1E-8E1C-5C2C3D2AFDF6@mail.com">
<div class="">
<div>
<div>
<div class=""><span class="" style="caret-color: rgb(0, 0,
0); float: none; display: inline !important;"><br
class="">
</span></div>
<div class=""><span class="" style="caret-color: rgb(0, 0,
0); float: none; display: inline !important;">Obviously
the best solution is for the css dev to run a local web
server, and also a local Pharo/gemstone seaside server
(ie. a copy of the production setup.) This way they can
browse the working site to test their work. In this
case, their web server should be serving their css and
resources directly from </span><siteRoot>/files/< MyFileLibraryName>/
- exactly how it will be in production.</div>
</div>
</div>
</div>
</blockquote>
<p>I disagree, but would be interested in reasons for that. My
experience from real-world projects is limited here, so I would
like to learn from yours.<br>
</p>
<p><br>
</p>
<blockquote type="cite"
cite="mid:7F27EE19-2862-4B1E-8E1C-5C2C3D2AFDF6@mail.com">
<div class="">
<div>
<div>
<div class=""><br class="">
</div>
<div class="">Once the css dev delivers you a finished
version of the files, upload them to
your WAFileMetadataLibrary for distribution and testing.
Once it moves into production, publish the FileLibrary to
disk and serve them via the HTTP server.</div>
</div>
</div>
</div>
</blockquote>
<p>You can, of course, skip the File Library Stuff completely if you
wish, either for all stages of your projects or only some. Web
Servers liek nginx and Apache offer a rich set of options for such
setups.<br>
</p>
<p><br>
</p>
<p>Joachim</p>
<br>
<pre class="moz-signature" cols="72">
</pre>
</body>
</html>