<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>

  <meta http-equiv="content-type" content="text/html; charset=UTF-8">

  <title>OpenOffice.org Conference 2006</title>

  <!-- Include the common CSS stylesheet -->
  <link rel="stylesheet" type="text/css" href="default.css" />
  
  <!-- Defines styles only for this page -->
  <style type="text/css">

    .question {
        margin: 1em 2em 3em 1em;
        border: thin solid #00315a;
    }

    .question .title {
        background-color: #369;
        color: #fff;
        margin: 0em 0em 1em 0em;
        padding-left: 1em;
    }

    .question .answer {
        margin-bottom: 1em;
        padding-left: 2em;
    }

    .required {
        color: #9CF;
        font-weight: bold;
    }
 
    .question .answer p {
        margin: 0em;
    }

  </style>
  
</head>

<body>

<div id="content">

    <div id="logo">
        <a href="/conference/index.html">
            <img style="border: 0px solid" 
                src="OOoConLyon.png" 
                alt="OpenOffice.org Conferences logo" />
        </a>
    </div>

    <div id="title">
        <h3>OpenOffice.org Conference (OOoCon 2006)</h3>
        <p>Registration</p>
    </div>

    <h3>Why register?</h3>

    <p>By registering now, you help us to prepare for your arrival and tailor the conference to your
    needs and expectations. Registration is free, but there is nothing preventing you from donating to the
    OpenOffice.org project on your arrival in Lyon. On arrival at the Conference, please go to the 
    welcome desk to collect your conference material including maps, programmes, etc.</p>

    <p><strong>If you want Wifi access</strong>, please select "yes" in the form below. You will
    be given a login and password to use for accessing the network. An account can also be created 
    during the conference if you forgot to request it on this page.</p>

    <p><strong>To make sure there are enough lunches available</strong>, please tell us on which days
    you will be in Lyon at midday. We will then let the local restaurants know how many people to expect.
    Please indicate if you'd prefer a quick sandwich, or a more leisurely cooked meal.</p>

    <p><strong>Rooms at INSA</strong> can be booked for 24&nbsp;&euro; a night. However, there will
    not be enough rooms for everybody: first come, first served. You can request a room at INSA with
    this form. If you do, you will receive an email later to tell you whether you have a room or not.</p>

    <h3>The registration form</h3>

    <p><strong>Please submit this form once and once only</strong>: there is no need to register 
    twice.</p>

    <p class="reqQuestion" style="font-size: smaller">Questions marked with a <span class="required">*</span> 
    are required.</p>

    <form method="post" 
          name="phpesp_response"
          action="http://survey.services.openoffice.org/survey/public/survey.php?name=oocon2006registration">

        <input type="hidden" name="referer" value="">
        <input type="hidden" name="userid" value="test">
        <input type="hidden" name="sid" value="8">
        <input type="hidden" name="rid" value="0">
        <input type="hidden" name="sec" value="1">
        <input type="hidden" name="name" value="oocon2006registration">

        <div class="question">
            <div class="title">First name:<span class="required">*</span></div>
            <div class="answer">
				<p><input type="text" size="20" name="95" /></p>
            </div>
        </div>
        
        <div class="question">
            <div class="title">Last name:<span class="required">*</span></div>
            <div class="answer">
                <p><input type="text" size="20" name="96" /></p>
            </div>
        </div>
        
        <div class="question">
            <div class="title">E-mail address:<span class="required">*</span></div>
            <div class="answer">
                <p><input type="text" size="20" name="97" /></p>
            </div>
        </div>
        
        <div class="question">
            <div class="title">Company/Affiliation</div>
            <div class="answer">
                <p><input type="text" size="30" name="98" /></p>
            </div>
        </div>

        <div class="question">
            <div class="title">Are you an employee of Microsoft Corporation, 
                or one of their subsidiaries or affiliates&nbsp;?
            </div>
			<div class="answer">
                <p><input type="checkbox" name="114[]" value="963" />Yes</p>
            </div>
        </div>


        <div class="question">
            <div class="title">Area of interest:</div>
            <div class="answer">
				<p><input type="checkbox" name="99[]" value="880" />General</p>
				<p><input type="checkbox" name="99[]" value="881" />Education</p>
				<p><input type="checkbox" name="99[]" value="882" />Public Administration</p>
				<p><input type="checkbox" name="99[]" value="883" />Enterprise</p>
				<p><input type="checkbox" name="99[]" value="884" />Development</p>
				<p><input type="checkbox" name="99[]" value="885" />XML &amp; OASIS OpenDocument Format</p>
            </div>
        </div>

        <div class="question">
            <div class="title">Which days will you be in Lyon at lunch time ?
                <span class="required">*</span>
            </div>
            <div class="answer">
				<p><input type="checkbox" name="101[]" value="886" />Monday</p>
				<p><input type="checkbox" name="101[]" value="887" />Tuesday</p>
				<p><input type="checkbox" name="101[]" value="888" />Wednesday</p>
            </div>
        </div>

        <div class="question">
            <div class="title">What would you prefer to eat for lunch ?
                <span class="required">*</span></div>
            <div class="answer">
                <select name="113">
                    <option></option>
                    <option value="961">Sandwiches</option>
                    <option value="962">Hot meal</option>
                </select>
            </div>
        </div>

        <div class="question">
            <div class="title">Do you want wifi access ?<span class="required">*</span></div>
            <div class="answer">
                <p><input type="radio" name="100" value="Y" />Yes</p>
                <p><input type="radio" name="100" value="N" />No</p>
            </div>
        </div>
        
        <div class="question">
            <div class="title">Do you want a room at INSA ?<span class="required">*</span></div>
            <div class="answer">
                <p>Our apologies, all the available rooms at INSA are now booked.</p>
                <!-- Automatic No answer: no more rooms -->
                <input type="hidden" name="112" value="N" />
            <!--
                <p><input type="radio" name="112" value="Y" />Yes</p>
                <p><input type="radio" name="112" value="N" />No</p>
            -->
            </div>
        </div>

	    <p style="text-align: center"><input type="submit" name="submit" value="Register"></p>
    </form>
</div>


<!-- Right menu -->
<div id="menu">
	<p id="langLine">
		<span class="thisLang">En</span> - 
        <a class="lang" href="registration_fr.html">Fr</a>
	</p>
    <h3>What is OOoCon</h3>
        <p><a href="index.html">Home</a></p>
    <h3>How to participate</h3>
        <p><a href="sponsorship.html">Sponsors</a></p>
        <p>Registration</p>
    <h3>Travel informations</h3>
        <p><a href="travel.html">Travel</a></p>
        <p><a href="accommodation.html">Accommodation</a></p>
        <p><a href="map.html">Map</a></p> 
    <h3>Programme</h3>
        <p><a href="schedule.html">Overview</a></p>
        <p><a href="schedule/monday.html">Monday</a></p>
        <p><a href="schedule/tuesday.html">Tuesday</a></p>
        <p><a href="schedule/wednesday.html">Wednesday</a></p>

</div>

</body>
</html>
