1 <?xml version="1.0" encoding="iso-8859-1"?> 2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" 3 "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> 4 <html xmlns="http://www.w3.org/1999/xhtml" 5 xmlns:template="http://www.boddie.org.uk/ns/xmltools/template"> 6 <head> 7 <title>System Configurator</title> 8 <meta name="generator" content="amaya 8.1a, see http://www.w3.org/Amaya/" /> 9 <link xmlns:xlink="http://www.w3.org/1999/xlink" href="styles/styles.css" rel="stylesheet" type="text/css" /> 10 <script type="text/javascript" src="scripts/sarissa.js"> </script> 11 <script type="text/javascript" src="scripts/XSLForms.js"> </script> 12 </head> 13 14 <body> 15 <h1>System Configurator</h1> 16 17 <form method="post" action="" template:element="configuration"> 18 <div id="left"> 19 <div template:element="details" class="details"> 20 <h2>Base System</h2> 21 22 <p template:element="base-system">Model 23 <select name="{template:multi-field-name('value')}" onchange="requestUpdate('{$application-url}cpu', '{template:multi-field-name('value')}', 'cpu-node', '{template:other-multi-field-names('value', ../cpu)}'); requestUpdate('{$application-url}memory', '{template:multi-field-name('value')}', 'memory', '{template:other-multi-field-names('value', ../../memory/memory-unit)}')"> 24 <option template:element="base-system-enum" template:expr="@value-is-set" template:expr-attr="selected" template:value="@value" 25 value="{@value}"></option> 26 </select> 27 </p> 28 29 <h2>Processor</h2> 30 31 <p template:element="cpu">CPU 32 <select id='cpu-node' name="{template:multi-field-name('value')}"> 33 <option template:element="cpu-enum" template:expr="@value-is-set" template:expr-attr="selected" template:value="@value" 34 value="{@value}"></option> 35 </select> 36 </p> 37 </div> 38 39 <div template:element="memory" class="memory"> 40 <h2>Memory</h2> 41 42 <p id="memory-node" template:element="memory-unit">Memory unit 43 <select name="{template:multi-field-name('value')}"> 44 <option template:element="memory-unit-enum" template:expr="@value-is-set" template:expr-attr="selected" template:value="@value" 45 value="{@value}"></option> 46 </select> 47 48 <input type="submit" value="Remove" 49 name="remove-memory-unit={template:this-position()}" /></p> 50 51 <p> 52 <input type="submit" value="Add memory" 53 name="add-memory-unit={template:this-position()}" /></p> 54 </div> 55 </div> 56 <div id="right"> 57 <div template:element="hard-disks" class="hard-disks"> 58 <h2>Hard Disks</h2> 59 60 <p template:element="hard-disk">Hard disk drive 61 <select name="{template:multi-field-name('value')}"> 62 <option template:element="hard-disk-enum" template:expr="@value-is-set" template:expr-attr="selected" template:value="@value" 63 value="{@value}"></option> 64 </select> 65 66 <input type="submit" value="Remove" 67 name="remove-hard-disk={template:this-position()}" /></p> 68 69 <p> 70 <input type="submit" value="Add hard disk" 71 name="add-hard-disk={template:this-position()}" /></p> 72 </div> 73 74 <div template:element="storage" class="storage"> 75 <h2>Additional Storage</h2> 76 77 <p template:element="storage-unit">Storage unit 78 <select name="{template:multi-field-name('value')}"> 79 <option template:element="storage-unit-enum" template:expr="@value-is-set" template:expr-attr="selected" template:value="@value" 80 value="{@value}"></option> 81 </select> 82 83 <input type="submit" value="Remove" 84 name="remove-storage-unit={template:this-position()}" /></p> 85 86 <p> 87 <input type="submit" value="Add storage" 88 name="add-storage-unit={template:this-position()}" /></p> 89 </div> 90 </div> 91 <div id="bottom"> 92 <div template:element="peripherals" class="peripherals"> 93 <h2>Input Devices</h2> 94 95 <p template:element="keyboard">Keyboard 96 <select name="{template:multi-field-name('value')}"> 97 <option template:element="keyboard-enum" template:expr="@value-is-set" template:expr-attr="selected" template:value="@value" 98 value="{@value}"></option> 99 </select> 100 </p> 101 102 <p template:element="mouse">Mouse 103 <select name="{template:multi-field-name('value')}"> 104 <option template:element="mouse-enum" template:expr="@value-is-set" template:expr-attr="selected" template:value="@value" 105 value="{@value}"></option> 106 </select> 107 </p> 108 109 <h2>Display</h2> 110 111 <p template:element="screen">Screen 112 <select name="{template:multi-field-name('value')}"> 113 <option template:element="screen-enum" template:expr="@value-is-set" template:expr-attr="selected" template:value="@value" 114 value="{@value}"></option> 115 </select> 116 </p> 117 </div> 118 119 <div class="price"> 120 <h2>Price</h2> 121 122 <p>Total for this configuration: 123 <span template:value="sum(/configuration//*/@price)"></span></p> 124 125 <p> 126 <input type="submit" value="Update!" name="update" /> 127 <input type="submit" value="Export!" name="export" /></p> 128 </div> 129 </div> 130 </form> 131 </body> 132 </html>