diff --git a/apps/abs/models.py b/apps/abs/models.py
index e3c045b..004f341 100644
--- a/apps/abs/models.py
+++ b/apps/abs/models.py
@@ -745,6 +745,18 @@ class ABSBeam(models.Model):
return self
+ def set_activebeam(self):
+ """
+ This function change de active beam of ABS Configuration
+ """
+ conf = self.abs_conf
+ active_beam = {}
+ active_beam['active_beam'] = self.id
+ conf.active_beam = json.dumps(active_beam)
+ conf.save()
+
+ return
+
def module_6bits(self, module):
diff --git a/apps/abs/templates/abs_conf.html b/apps/abs/templates/abs_conf.html
index 8a9d5f3..50900ce 100644
--- a/apps/abs/templates/abs_conf.html
+++ b/apps/abs/templates/abs_conf.html
@@ -469,7 +469,7 @@
{% if active_beam.id != beam.id %}
-
@@ -516,6 +516,11 @@
diff --git a/apps/abs/urls.py b/apps/abs/urls.py
index 1160620..9c4faff 100644
--- a/apps/abs/urls.py
+++ b/apps/abs/urls.py
@@ -8,6 +8,7 @@ urlpatterns = (
#url(r'^(?P-?\d+)/read/$', views.dev_conf_read, name='url_read_abs_conf'),
#url(r'^(?P-?\d+)/import/$', views.dev_conf_import, name='url_import_abs_conf'),
#url(r'^(?P-?\d+)/export/$', views.dev_conf_export, name='url_export_abs_conf'),
+ url(r'^(?P-?\d+)/change_beam/(?P-?\d+)/$', views.send_beam, name='url_send_beam'),
url(r'^(?P-?\d+)/plot/$', views.plot_patterns, name='url_plot_abs_patterns'),
url(r'^(?P-?\d+)/plot/(?P-?\d+)/$', views.plot_patterns, name='url_plot_abs_patterns'),
url(r'^(?P-?\d+)/plot/(?P-?\d+)/(?P[\w\-]+)/pattern.png$', views.plot_pattern, name='url_plot_beam'),
diff --git a/apps/abs/views.py b/apps/abs/views.py
index 6dc27c8..7c8019c 100644
--- a/apps/abs/views.py
+++ b/apps/abs/views.py
@@ -4,6 +4,7 @@ from django.shortcuts import redirect, render, get_object_or_404
from django.contrib import messages
from django.conf import settings
from django.http import HttpResponse
+from django.core.urlresolvers import reverse
from datetime import datetime
from time import sleep
@@ -207,6 +208,25 @@ def abs_conf_edit(request, id_conf):
return render(request, 'abs_conf_edit.html', kwargs)
+def send_beam(request, id_conf, id_beam):
+
+ conf = get_object_or_404(ABSConfiguration, pk=id_conf)
+ beam = get_object_or_404(ABSBeam, pk=id_beam)
+ beams_list = ABSBeam.objects.filter(abs_conf=conf)
+ #To set this beam as an Active Beam
+ beam.set_activebeam()
+ #To send beam position to abs-modules
+ i = 0
+ for b in beams_list:
+ if b.id == int(id_beam):
+ break
+ else:
+ i += 1
+ beam_pos = i + 1 #Estandarizar
+ print 'Position: ',beam_pos
+ conf.send_beam_num(beam_pos)
+
+ return redirect('url_abs_conf', conf.id)
def add_beam(request, id_conf):