コード例 #1
0
ファイル: views.py プロジェクト: iblis17/slick
def record_edit(record_id):
    record = manager.get_record(record_id)

    if not record:
        flash('DNS record not found.', 'error')
        return redirect(url_for('.index'))

    defaults = record
    defaults['zone_id'] = record['domain']['id']

    form = ZoneRecordForm(**defaults)

    if form.validate_on_submit():
        fields = {'id': record_id}

        for field in form:
            if 'csrf_token' == field.name:
                continue

            fields[field.name] = field.data

        (success, message) = manager.update_record(fields)

        if success:
            flash(message, 'success')
        else:
            flash(message, 'error')

        return redirect(url_for('.zone_view', zone_id=record['domain']['id']))

    payload = {
        'title': 'Edit Zone Record',
        'subheader': '%s.%s' % (record['host'], record['domain']['name']),
        'record': record,
        'form': form,
        'action': url_for('.record_edit', record_id=record_id),
        'action_name': 'Edit',
        'zone': record['domain'],
    }

    return render_template('zone_update_record.html', **payload)
コード例 #2
0
ファイル: views.py プロジェクト: iblis17/slick
def record_delete(record_id):
    """ This function will remove the record ID from the specified zone.

    :param int id: The ID of the record to remove

    """

    record = manager.get_record(record_id)

    if not record:
        flash('DNS record not found.', 'error')
        return redirect(url_for('.index'))

    (success, message) = manager.delete_record(record_id)

    if success:
        flash(message, 'success')
    else:
        flash(message, 'error')

    return redirect(url_for('.zone_view', zone_id=record['domain']['id']))