Exemple #1
0
def sensor_profile(sensor_id):
    form = SensorForm()
    sensor = Sensor.query.get(sensor_id)

    # Проверка существования объекта
    if not sensor:
        abort(404)

    if form.validate_on_submit():
        sensor.name = form.name.data
        sensor.action = int(form.action.data)
        sensor.property_1 = form.property_1.data
        sensor.property_2 = form.property_2.data
        sensor.property_3 = form.property_3.data
        sensor.property_4 = form.property_4.data
        sensor.description = form.description.data
        db.session.commit()

        return(redirect(url_for('server_profile', server_id=sensor.server_id)))

    # Вывод старого описания, по-другому никак потому что это TextArea
    form.description.data = sensor.description

    return(render_template('sensor_profile.html',
        form=form,
        sensor=sensor))
Exemple #2
0
def sensor_add(server_id):
    form = SensorForm()
    server = Server.query.get(server_id)

    # Проверка существования объекта
    if not server:
        abort(404)

    if form.validate_on_submit():
        form_name = form.name.data
        form_action = int(form.action.data)
        form_property_1 = form.property_1.data
        form_property_2 = form.property_2.data
        form_property_3 = form.property_3.data
        form_property_4 = form.property_4.data
        form_description = form.description.data

        new_sensor = Sensor(name=form_name,
            action=form_action,
            property_1=form_property_1,
            property_2=form_property_2,
            property_3=form_property_3,
            property_4=form_property_4,
            description=form_description,
            server_id=server.id)
        db.session.add(new_sensor)
        db.session.commit()

        return(redirect(url_for('server_profile', server_id=server.id)))

    return(render_template('sensor_add.html',
        form=form))
Exemple #3
0
 def sensor(self):
     F = SensorForm(self.conf, name='Pines del sensor')
     F.edit()
     self.conf.S1 = F.s1.value[0]
     self.conf.S2 = F.s2.value[0]
     self.conf.S3 = F.s3.value[0]
     self.conf.S4 = F.s4.value[0]
Exemple #4
0
def register():
    form = SensorForm(request.form)
    if form.validate():
        try:
            sensor = Sensor.query.filter(Sensor.sensor_key == form.data.get('sensor_key')).one()
            return {"sensor_id": str(sensor.id)}, 202
        except NoResultFound:
            sensor = Sensor(form.data.get('sensor_key'), form.data.get('description'))
            db.session.add(sensor)
            db.session.commit()
            return {"sensor_id": str(sensor.id)}, 201
    return {"error": "invalid"}, 400
Exemple #5
0
def edit(id):
    """
  Edit sensor form to modify a sensor.
  """
    sensor = Sensor.query.get(id)
    form = SensorForm(request.form, obj=sensor)
    if request.method == 'POST':
        form.populate_obj(sensor)
        if form.validate():
            db.session.commit()
            flash('You have successfully modified the sensor.', 'success')
            return redirect(url_for('sensors.edit', id=sensor.id))
    return render_template('sensors/edit.html', form=form, sensor=sensor)
Exemple #6
0
def new():
    """
  New sensor form to create a sensor.
  """
    form = SensorForm(request.form)
    if form.validate_on_submit():
        sensor = Sensor(form.name.data, form.attribute.data, form.comment.data,
                        form.c_1.data, form.c_2.data)
        db.session.add(sensor)
        db.session.commit()

        flash('You have successfully added a new sensor.', 'success')
        return redirect(url_for('sensors.view', id=sensor.id))
    return render_template('sensors/new.html', form=form)
Exemple #7
0
def new_sensor(request, name):
    group = Group.objects.get(name=name)
    if request.method == 'POST':
        form = SensorForm(request.POST)
        if form.is_valid():
            payload = {}
            payload['sensorType'] = form.cleaned_data['sensorType']
            payload['zipCode'] = form.cleaned_data['zipCode']
            url = "https://a6.cfapps.io/groups/" + str(group.code) + "/sensors"
            result = json.loads(helper.post_request(url, {}))
            print result
            s = Sensor.objects.create(group_id=group.id,
                                    name=form.cleaned_data['name'],
                                    sensorType=payload['sensorType'],
                                    zipCode=payload['zipCode'],
                                    code=result['sensorId'])
            s.save()
            return HttpResponseRedirect("/group/"+group.name)
    else:
        form = SensorForm()
    return render_to_response('new_sensor.html', { 'form' : form, 'group_name': group.name }, context_instance=RequestContext(request))