@@ -112,3 +117,79 @@ class AjaxMultiSelect(widgets.MultipleSelectField):
self.params.append('on_add')
self.on_add = "alert('Not defined action');"
widgets.MultipleSelectField.__init__(self, **kw)
+
+DosListasAjax = '''
+ function makeOption(option) {
+ return OPTION({"value": option.value}, option.text);
+ }
+
+ function moveOption( fromSelect, toSelect) {
+ // add 'selected' nodes toSelect
+ appendChildNodes(toSelect,
+ map( makeOption,ifilter(itemgetter('selected'), $(fromSelect).options)));
+ // remove the 'selected' fromSelect
+ replaceChildNodes(fromSelect,
+ list(ifilterfalse(itemgetter('selected'), $(fromSelect).options))
+ );
+ }
+'''
+
+class AjaxDosListasSelect(widgets.MultipleSelectField):
+ template = '''
+
+ '''
+ javascript = [widgets.JSSource(DosListasAjax)]
+ title_from = ""
+ title_to = ""
+ move_signal = ""
+
+ def __init__(self, **kw):
+ self.params.append('title_from')
+ self.params.append('title_to')
+ self.params.append('move_signal')
+ self.title_from = " "
+ self.title_to = " "
+ self.move_signal = ""
+ widgets.MultipleSelectField.__init__(self, **kw)
+