-#def cdromList($cdroms, $default="")
-<select name="cdrom" id="cdromlist">
+#filter WebSafe
+#def databaseList($lst, $default, $onchange, $name, $id, $valueattr, $descattr)
+<select name="$name" id="$id"#slurp
+#if $onchange is not None
+onchange="$onchange"#slurp
+#end if
+>
<option #slurp
#if $default then '' else 'selected'
value="">None</option>
- #for $cdrom in $cdroms
+ #for $item in $lst
<option #slurp
-#if $default == $cdrom.cdrom_id then 'selected' else ''
- value="$cdrom.cdrom_id">
- $cdrom.description
+#if $default == getattr(item, valueattr) then 'selected' else ''
+ value="${getattr(item, valueattr)}">
+ ${getattr(item, descattr)}
</option>
#end for
</select>
#end def
+#def cdromList($default="", $onchange=None)
+#filter None
+$databaseList(sorted($sipb_xen_database.CDROM.select(), key=lambda x: x.description),
+ default, onchange, 'cdrom', 'cdromlist', 'cdrom_id', 'description')
+#end filter
+#end def
+
+#def autoList($default="", $onchange=None)
+#filter None
+$databaseList(sorted($sipb_xen_database.Autoinstall.select(), key=lambda x: x.description),
+ default, onchange, 'autoinstall', 'autoinstalllist', 'autoinstall_id', 'description')
+#end filter
+#end def
+
#def vmTypeList($default=None)
-#for $vmtype in sorted($sipb_xen_database.Type.select(), key=lambda x: x.description)
+#for $vmtype in (('linux-hvm', 'HVM'), ('linux', 'ParaVM'), )
<label>
<input #slurp
-#if $default == $vmtype then 'checked' else ''
- type="radio" name="vmtype" value="${vmtype.type_id}">${vmtype.description}</input>
+#if $default == $vmtype[0] then 'checked' else ''
+ type="radio" name="vmtype" value="${vmtype[0]}">${vmtype[1]}</input>
</label>
#end for
#end def
</tr>
#end if
#end def
-
-$full_body
\ No newline at end of file
+#filter None
+$full_body
+#end filter
+#end filter
\ No newline at end of file