annotate Agendas/trunk/src/Agendas.Web/Views/Shared/EditorTemplates/Ponentes.cshtml @ 238:b43dc14886e3

Quitando ponente principal de la UI
author nelopauselli
date Tue, 04 Oct 2011 21:59:40 -0300
parents c61954d24c8c
children 92c912b46307
rev   line source
235
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
1 @model IEnumerable<Guid>
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
2 <script type="text/javascript">
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
3 $(document).ready(function () {
238
b43dc14886e3 Quitando ponente principal de la UI
nelopauselli
parents: 235
diff changeset
4 $("#agregarPonente").subpanel({ success: add_new_otro_ponente, url: '/PersonaApi/Nueva' });
235
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
5 $("#add").click(select_otro_ponente);
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
6 $("#remove").click(remove_otro_ponente);
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
7
238
b43dc14886e3 Quitando ponente principal de la UI
nelopauselli
parents: 235
diff changeset
8 var width = $("#posiblesPonentes").width();
b43dc14886e3 Quitando ponente principal de la UI
nelopauselli
parents: 235
diff changeset
9 $("#@Html.ViewData.ModelMetadata.PropertyName").width(width);
235
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
10 });
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
11
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
12 function add_new_otro_ponente(data) {
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
13 if (data.Succeful) {
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
14 var opcion = $("<option></option>").attr("value", data.Id).attr("selected", "selected").html(data.Nombre);
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
15 add_otro_ponente(opcion);
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
16 }
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
17 else {
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
18 alert(data.Message);
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
19 return false;
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
20 }
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
21 }
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
22
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
23 function select_otro_ponente(event) {
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
24 event.preventDefault();
238
b43dc14886e3 Quitando ponente principal de la UI
nelopauselli
parents: 235
diff changeset
25 var personas = $("#posiblesPonentes");
235
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
26 var current = $("option:selected", personas);
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
27 add_otro_ponente(current);
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
28 }
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
29
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
30 function add_otro_ponente(option) {
238
b43dc14886e3 Quitando ponente principal de la UI
nelopauselli
parents: 235
diff changeset
31 var Ponentes = $("#@Html.ViewData.ModelMetadata.PropertyName");
b43dc14886e3 Quitando ponente principal de la UI
nelopauselli
parents: 235
diff changeset
32 option.appendTo(Ponentes);
235
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
33 }
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
34
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
35 function remove_otro_ponente(event) {
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
36 event.preventDefault();
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
37
238
b43dc14886e3 Quitando ponente principal de la UI
nelopauselli
parents: 235
diff changeset
38 $("option:selected", $("#@Html.ViewData.ModelMetadata.PropertyName")).each(function () {
235
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
39 var current = $(this);
238
b43dc14886e3 Quitando ponente principal de la UI
nelopauselli
parents: 235
diff changeset
40 var posiblesPonentes = $("#posiblesPonentes");
b43dc14886e3 Quitando ponente principal de la UI
nelopauselli
parents: 235
diff changeset
41 current.appendTo(posiblesPonentes);
235
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
42
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
43 // ordenamos los ponentes
238
b43dc14886e3 Quitando ponente principal de la UI
nelopauselli
parents: 235
diff changeset
44 var options = $("option", posiblesPonentes);
235
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
45
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
46 options.sort(function (a, b) {
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
47 if (a.text > b.text) return 1;
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
48 else if (a.text < b.text) return -1;
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
49 else return 0
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
50 });
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
51
238
b43dc14886e3 Quitando ponente principal de la UI
nelopauselli
parents: 235
diff changeset
52 posiblesPonentes.empty().append(options);
235
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
53
238
b43dc14886e3 Quitando ponente principal de la UI
nelopauselli
parents: 235
diff changeset
54 posiblesPonentes.attr("value", current.val());
235
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
55 });
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
56 }
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
57 </script>
238
b43dc14886e3 Quitando ponente principal de la UI
nelopauselli
parents: 235
diff changeset
58 @Html.ListBox(string.Empty, Html.GetPonentes(Model), new { style = "vertical-align: top;" })
235
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
59 <div style="display: inline-block">
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
60 <div>
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
61 <a class="ajax-button ui-state-default ui-corner-all" id="add"><span class="ui-icon ui-icon-triangle-1-w"></span></a>
238
b43dc14886e3 Quitando ponente principal de la UI
nelopauselli
parents: 235
diff changeset
62 @Html.DropDownList("posiblesPonentes", Html.GetPonentesExcepto(Model), new { style = "vertical-align: top;", id = "posiblesPonentes" })
235
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
63 </div>
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
64 <div>
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
65 <a class="ajax-button ui-state-default ui-corner-all" id="remove"><span class="ui-icon ui-icon-triangle-1-e"></span></a>
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
66 </div>
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
67 <div>
238
b43dc14886e3 Quitando ponente principal de la UI
nelopauselli
parents: 235
diff changeset
68 <div id="agregarPonente"></div>
235
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
69 </div>
c61954d24c8c Quitando ponente principal y utilizando siempre la lista de ponentes
nelopauselli
parents:
diff changeset
70 </div>