makeYourNet

Here you find the more advanced topics:

Add labels to the buttons

By default the radio buttons of the client are labeled with the beginning of each snippet.
If this is not sufficient, there is an easy way to configure the button labels:
To add a button label, simply add a html comment at the beginning of the editable part.After the <!--pre--> and the label-comment only whitespace characters are allowed.
So let's add a label to our example file:
<html>
<head>
<title>Susis pet site</title>
</head>
<body>
<h4>Welcome to my pet site!</h4>
<!--pre--><!--favorite-->My favorite pet: Squeezie!<!--post-->
</body>
</html>
Now Susi will see this:

The button label has changed to "favorite".
>>go to top

Edit the config file with a text editor

So far we have used only the automatic creation for the config file. For many of the advanced features, it is necessary to edit the file in an editor. Of course you can download it, edit it with any text editor, and upload again. But the most convenient way is to use again ClientGenerator.jar. Simply press "Edit existing file" in the replace dialog, to start the editor.
For a complete description of the structure of the filelist.xml look here.
>>go to top

Use keyboard shortcuts

Hit F1 (in the client) to get a list of keybord shortcuts. Those include some special features like some help for entering links, adding text formatting tags, and a cool "synchronize" feature, which is explained here.

Disable ascii-html conversion

Normally the html is converted to ascii before displayed in the editor, and converted back to html before upload. If you know html, this might not be what you want, and you can disable it.
This is done on a per-user basis, so it is easy to make the same content visible in a transformed or a "pure" way depending on who connects with the server.
Simply add the attribute transform="false" to the "user" tag of the user, who shall see the html without transformation.
Here is a simple example, which makes the editable parts of mypage.html available for the users "frank" and "webmaster".
<?xml version="1.0" encoding="us-ascii"?>
<!DOCTYPE fileList SYSTEM "filelist.dtd">
<fileList>

  <user id="frank">
  <message>Hello Frank</message>
    <htmlFile path="mypage.html" />
  </user>
  
  <user id="webmaster" transform="false">
  <message>Hello Webmaster</message>
    <htmlFile path="mypage.html" />
  </user>
  
</fileList>
Now you create one client with user id "frank" and one client with user id "webmaster". Frank will see the converted html, the webmaster will see the raw html code.
This can be combined with setting different pre-and postfixes for the webmaster, for example <!--pre_web--> and <!--post_web-->.
Then you could make a bigger portion of the file available for the webmaster, or the file as a whole.
However, for non-html files transformation is disabled by default.  
One thing to note about conversion: The default conversion from html to ascii (and back) is a kind of compromise: " is transformed to &quot;, but < and > are left as is. I made it this way, because you can still enter html tags this way, but you have to leave out every quotation mark. Otherwise they will be converted, and the html will not work.
A disadvantage of this is that the user can break the html logic by typing something like </body>. Maybe I will add the choice for a "secure" converter in a future version, this would not be too much work.
>>go to top

Add your own ascii-html converter

This is interesting only for java programmers. The html-ascii and ascii-html converter used by the program is very simple and straightforward.
It can easily be replaced by a different one. In fact I was looking around a while to find a good free converter library, but I didn't find one. (Does anybody know one? Tell me)
If you would like to write your own converter, it must inherit from the Transformer class:

The class used by default is DefaultTransformer:

So, to use a own version, you can modify this and replace the DefaultTransformer.class file in the client.
>>go to top

Edit other files than html

If you disable transformation, the program works just like a texteditor, and you can use it for any kind of text file.
For some file types it is useful, to use another pre- and postfix. For example if you would like to make a .css file editable for the webdesigner, comments in css have a different syntax. Hence it would make sense to add a user who sees only the css file(s) and can use prefixes like /*pre*/ and /*post*/ upon them.
Here is how this can be achieved:
<?xml version="1.0" encoding="us-ascii"?>
<!DOCTYPE fileList SYSTEM "filelist.dtd">
<fileList>

  <user id="frank">
  <message>Hello Frank</message>
    <htmlFile path="mypage.html" />
  </user>
  
  <user id="css"
        prefix="/*pre*/"
        postfix="/*post*/"
        transform="false">
  <message>Edit the css file below</message>
    <htmlFile path="format.css" />
  </user>
  
</fileList>
Note:If you want to use an own prefix with contains "<" or ">" you have to replace them with &lt; and &gt; in the attributes.
So, if you wish pre- and postfixes like <!--pre_admin--> and <!--post_admin--> this should become:
prefix="&lt;!--pre_admin--&gt;"
postfix="&lt;!--post_admin--&gt;"

Edit repeated parts at once

Most websites have one or more parts wich are repeated on each page. For example, the menu or a header/footer.
Updating all these areas, for example to add a new page to the menu, is a quite silly job. In a dynamic environment, using PHP or JSP, this is not a problem: You could use a "include"-like directive to insert the same piece of hmtl in every page.
But with a static page, you are on your own, so what to do?
There is a cool way to solve this problem with makeYourNet. The trick is a special feature of the editor: If you press ctrl+alt+shift+s (I made the shortcut difficult, because it easily could cause a data loss when pressed accidentally) you can "synchronize" all snippets, what means, all snippets are overwritten with the currently shown snippet.
This makes sense, if you create a client which shows only parts which should always be the same, for example all the menus of a site.
Here is how you do this:

Multiple users

As I mentioned at the beginnig, there is only a very limited multiuser support in makeYourNet. If more than one client access the same file on the server, they will overwrite their results.
At sites which are seldom updated, this risk may be acceptable. If you would like to add a secure way, the only solution is to make shure, that every user has his editable areas on a different file.Remember that you can use iframes to put the content from several files together on one page.

Preconfigure the ClientGenerator

If you create several clients for the same page, it can get really annoying to type in the connection data every time.
Simply hit the "Save values as default button", and the client generator will put the file defaultValues.ser in the current working directory. At startup it will load these values and use as defaults. The local storage is to make it easy for you to deal with multiple ftp servers: A good strategy would be to have a folder for each website, with a copy of ClientGenerator.jar and the defaultValues.ser for this site.
Depending on your personal "paranoia state" leave the password field empty or not. ;-)

Things to do (in the next release)

I really have not much time for working on this program at the moment, so I will concentrate on bugfixes for now. But if you have some ideas, please let me know.