File:  [mozdev] / autoform / www / .development.html
Revision 1.1: download - view: text, annotated - select for diffs - revision graph
Tue Apr 12 12:24:13 2005 UTC (12 years, 6 months ago) by kessler
Branches: MAIN
CVS tags: HEAD
index2 -> index

<html>
    <head>
        <title>Autoform - Automatic Form Control</title>
        <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
        <meta http-equiv="Content-Script-Type" content="text/javascript" />
        <meta http-equiv="Content-Style-Type" content="text/css" />
        <meta name="robots" content="index, follow" />
        <meta name="description" content="Autoform - Automatic Form Control" lang="en" />
        <meta name="keywords" content="firefox, form, fill, automatic, control, password, encryption, context, virtual user" lang="en" />
        <meta name="author" content="Michael Kessler" />
        <meta name="content-language" content="en" />
        <meta name="revisit-after" content="10 days" />
        <link rel="stylesheet" href="/autoform.css" /> 
        <script language="JavaScript" type="application/x-javascript" src="/autoform.js" />               
    </head>
    <body>
        <table class="centered">
            <tr>
                <td>
                    <h1>Autoform -  Automatic Form Control</h1>
                </td>
            </tr>
        </table>
        <table class="content centered">
            <tr>
                <td class="tab"><a href="/index2.html" class="menu">Home</a></td>
                <td>&nbsp;</td>
                <td class="tab"><a href="/screenshots.html" class="menu">Screenshots</a></td>
                <td>&nbsp;</td>
                <td class="tab"><a href="/installation.html" class="menu">Installation</a></td>
                <td>&nbsp;</td>
                <td class="tab"><a href="/list.html" class="menu">Mailinglist</a></td>
                <td>&nbsp;</td>
                <td class="tab-selected"><a href="/development.html" class="menu-selected">Development</a></td>
            </tr>
            <tr>
                <td class="dashed" colspan="9">
                    <p>If you are <i>really</i> interested in developing autoform, please read the following informations carefully. You should have
                    knowledge of html, javascript, XUL, XPCOM and RDF.</p>
                    <p>If you want to localise the extension, please wait until the new one has been released.</p>
                    <p>I'm using <a href="http://www.eclipse.org">Eclipse</a> as my IDE and I can strongly recommend it. It has built in support for <a href="http://www.cvshome.org">cvs</a> and <a href="http://ant.apache.org">ant</a>
                    (which is used by autoform for packaging and deployment). There are also many plugins available to extend the standard functions. I'm
                    also using the <a href="http://www.myeclipseide.com/">myeclipseide</a> plugin for eclipse to have a html and javascript editor. The generate the javascript doc, I use <a href="http://jsdoc.sourceforge.net/">JSDoc</a></p>
                    <p>I really appreciate every help to develop the extension, but please understand that I first must see some implementation before I
                    can give you write access to the cvs. Please contact <a href="mailto:michael.kessler@swisscom.com">me</a> before starting to prevent collisions)</p>
                    <p><b>How to get started:</b>
                    <ol>
                        <li>Install eclipse.</li>
                        <li>Check out the source code from cvs</li>
                        <li>Configure the build.properties and copy to your home directory</li>
                        <li>Build and install the extension</li>
                        <li>Make you familiary with the existing code</li>
                        <li>Implement a feature on the todo list and send me the patch</li>
                    </ol>
                    </p>
                    <br />
                    <hr />
                    <h3>Source code</h3>
                    <hr />
                    <p>The autoform source code can be accessed in either of the following ways:</p>
                    <ul>
                        <li>View the source using the CVS <a href="http://www.mozdev.org/source/browse/<?php echo $project; ?>/">web interface</a></li>
                        <li>Check out the source using anonymous CVS with the following commands (password is guest):
                            <pre>
                            cvs -d :pserver:guest@mozdev.org:/cvs login
                            cvs -d :pserver:guest@mozdev.org:/cvs co <?php echo $project; ?>
                            </pre>
                        </li>
                    </ul>
                    <p>There is also a jsdoc online <a href="/jsdoc/index.html">here</a>.
                    <br />
                    <hr />
                    <h3>Development guide</h3>
                    <hr />
                    <p>To avoid mistakes made in the first version and have a maintainable clean code, follow the following simple rules:
                        <ul>
                            <li>Make small js file with clear responsibility (no all mighty js files)</li>
                            <li>Make packages (folders) to separate the js files</li>
                            <li>Descibe every 'class' and function with the <a href="http://jsdoc.sourceforge.net/">jsdoc</a> tags</li>
                            <li>Use self-describing names for functions and variables (not cryptic)</li>
                        </ul>
                    </p>
                    <p>The whole plugin configuration with virtual users, configurable toolbar has already been rewritten in this style. Please have a look at it, there isn't any big js file, everying is separated very clearly.</p>
                    <p><b>TODO</b>
                        <ol>
                            <li>Formdata store - The old version uses the preference store, which is really a bad idea. It is hard to manage, import and export.
                            When it grows it slows down firefox. The idea to rewrite it is that each virtual user has a own RDF file with the form data. 
                            This makes it more simpler to display in a XUL Treeview, since it can be used as a datasource and import/export is only a matter of
                            copy files. It should be implemented like the preferences, a RDFService parent class which handles the storage of the data. Every
                            form element should have a own js class which inherits from the RDFService.</li>
                            <li>Autoload/Autosave/Exclude Parameters logic</li>
                            <li>Optional encryption of all form data. Add a configurable timeout for the masterpassword and a unset button.</li>
                            <li>Edit/Export/Import stored form data</li>
                        </ol>
                    </p>
                    <p>The TODO implementation techniques are only a proposal, feel free to discuss it on the mailing list.</p>
                    <br />
                    <hr />
                    <h3>Report bugs</h3>
                    <hr />
                    <p>Please do not report bugs concerning the old autoform version version &lt; 6.0!</p>
                    <ul>
                        <li>Enter a <a href="http://<?php echo HOST; ?>/bugs/enter_bug.cgi?product=<?php echo $project; ?>">new bug</a> for autoform</li>
                        <li>View <a href="http://mozdev.org/bugs/buglist.cgi?email1=&amp;emailtype1=substring&amp;emailassigned_to1=1&amp;email2=&amp;emailtype2=substring&amp;emailreporter2=1&amp;bugidtype=include&amp;bug_id=&amp;changedin=&amp;votes=&amp;chfieldfrom=&amp;chfieldto=Now&amp;chfieldvalue=&amp;product=<?php echo $project; ?>&amp;short_desc=&amp;short_desc_type=allwordssubstr&amp;long_desc=&amp;long_desc_type=allwordssubstr&amp;bug_file_loc=&amp;bug_file_loc_type=allwordssubstr&amp;field0-0-0=noop&amp;type0-0-0=noop&amp;value0-0-0=&amp;cmdtype=doit&amp;order=Bug+Number">all bugs</a></li> 
                        <li>See all <a href="http://mozdev.org/bugs/buglist.cgi?bug_status=UNCONFIRMED&amp;bug_status=NEW&amp;bug_status=ASSIGNED&amp;bug_status=REOPENED&amp;email1=&amp;emailtype1=substring&amp;emailassigned_to1=1&amp;email2=&amp;emailtype2=substring&amp;emailreporter2=1&amp;bugidtype=include&amp;bug_id=&amp;changedin=&amp;votes=&amp;chfieldfrom=&amp;chfieldto=Now&amp;chfieldvalue=&amp;product=<?php echo $project; ?>&amp;short_desc=&amp;short_desc_type=allwordssubstr&amp;long_desc=&amp;long_desc_type=allwordssubstr&amp;bug_file_loc=&amp;bug_file_loc_type=allwordssubstr&amp;field0-0-0=noop&amp;type0-0-0=noop&amp;value0-0-0=&amp;cmdtype=doit&amp;order=Bug+Number">open bugs</a></li>
                        <li>Search by Bug Number
                            <br />
                                <form action="http://<?php echo HOST; ?>/bugs/show_bug.cgi" method="get">
                                <p><input type="submit" value="Find"><input size="6" name="id"></p>
                            </form>
                        </li>
                    </ul>
                 </td>
            </tr>
            <tr>
                <td colspan="9"><i class="footer">Maintained by the Autoform team - please contact us through the mailing list. | Infrastructure by <a href="http://www.mozdev.org">Mozdev.org</a></i></td>
            </tr>            
        </table>
    </body>
</html>

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>