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