diff data/plugin/macro/FormSelect.py @ 617:07e8932e3594

add code from MacroMarket/FormCreate (form_create-1.7.tgz) - outdated code for moin 1.7/1.8
author Thomas Waldmann <tw AT waldmann-edv DOT de>
date Mon, 25 Mar 2013 16:16:43 +0100
parents
children e6a6740166c8
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/data/plugin/macro/FormSelect.py	Mon Mar 25 16:16:43 2013 +0100
@@ -0,0 +1,39 @@
+# -*- coding: iso-8859-1 -*-
+"""
+    MoinMoin - FormSelect Macro
+
+    
+
+    @copyright: 2008 by Peter Bodi <petrdll@centrum.sk>
+    @license: GNU GPL, see COPYING for details.
+"""
+
+from FormField import FormField
+
+class FormSelect(FormField):
+            
+    def __init__(self, macro, args):
+        FormField.__init__(self, macro, args)
+        
+        self.list = ()
+        self.size = ""
+        self.multiple = ""
+        self.disabled = ""
+        
+    def parse_args(self):
+        FormField.parse_args(self)
+        self.list = self._main
+        self.list.pop(0)
+        
+    def build(self):
+        FormField.build(self)
+        #self.output += self._build_input("hidden", "labels[]", {'value':self.label})
+        self.output += "<select name=\"%(label)s\" %(attribs)s>\n" % {'label':self.label, 'attribs':self._attribs}
+        self.output += "<option value=\"\"></option>\n"
+        for item in self.list:
+            self.output += "<option value=\"%(item)s\">%(item)s</option>\n" % {'item':item}
+        self.output += "</select>\n"
+    
+def execute(macro, args):
+    return FormSelect(macro, args).render()
+