X-Git-Url: https://git.llucax.com/z.facultad/75.52/sercom.git/blobdiff_plain/db587d0d4ce6518b3c4f8cf18989fc1f65b40c5e..8a48541f3436be46820515a84fb384fe393c5ced:/sercom/widgets.py?ds=sidebyside
diff --git a/sercom/widgets.py b/sercom/widgets.py
index 08adea7..ba75c51 100644
--- a/sercom/widgets.py
+++ b/sercom/widgets.py
@@ -17,4 +17,98 @@ class CustomTextField(widgets.TextField):
/>
+'''
+
+MultiSelectAjax = '''
+
+ function _on_alumno_get_result(lista, loading, results)
+ {
+ load = MochiKit.DOM.getElement(loading);
+ load.style.visibility = 'hidden';
+ if (results.error) {
+ alert(results.msg);
+ return;
+ }
+ MochiKit.DOM.appendChildNodes(lista, OPTION({'value':results.msg.id}, results.msg.value));
+ l = MochiKit.DOM.getElement(lista);
+ }
+
+ function _on_alumno_get_error(loading, results)
+ {
+ alert(results)
+ load = MochiKit.DOM.getElement(loading);
+ load.style.visibility = 'hidden';
+ }
+
+ function sacar_de_la_lista(lista)
+ {
+ l = MochiKit.DOM.getElement(lista);
+ if (l.selectedIndex < 0) return;
+
+ /* caso especial, 1 solo item */
+ if (l.options.length == 1) {
+ l.options.length = 0
+ return;
+ }
+
+ for (i=l.selectedIndex; i
+
+
+
+
+
+
+
+
'''
+ javascript = [widgets.JSSource(MultiSelectAjax)]
+ on_add = "alert('Not defined action');"
+
+ def __init__(self, **kw):
+ self.params.append('on_add')
+ self.on_add = "alert('Not defined action');"
+ widgets.MultipleSelectField.__init__(self, **kw)