def configs(request): allsettings = ConfigSetting.objects.all() if request.method == u'POST': logger.debug('Got a post!') params = dict(request.POST.items()) for param in params: if param.startswith('key_'): key = smart_str(param, 'utf-8', False)[4:] value = request.POST[param] for setting in allsettings: if key == setting.key: logger.debug('Working on ' + setting.key + '!') if setting.value != value: if setting.masked: repValue = request.POST[param + '_2'] logger.debug('Checking if the values match!') if repValue == value: logger.debug('Values Match!') setting.value = value setting.save() else: setting.value = value setting.save() # Handle checkboxes for setting in allsettings: if setting.type == 'check': if not request.POST.__contains__('key_' + setting.key): setting.value = '0' setting.save() ConfigCache.refresh() allsettings = ConfigSetting.objects.all() data = {'settings': allsettings} for setting in allsettings: if setting.type == 'check': data[setting.key.replace('.', '_')] = setting.value == '1' else: data[setting.key.replace('.', '_')] = setting.value return render_to_response('configs.html', data, context_instance=RequestContext(request))
def configs(request): allsettings = ConfigSetting.objects.all(); if request.method == u'POST': logger.debug('Got a post!') params = dict(request.POST.items()) for param in params: if param.startswith('key_'): key = smart_str(param,'utf-8',False)[4:] value = request.POST[param] for setting in allsettings: if key == setting.key: logger.debug('Working on ' + setting.key + '!') if setting.value != value: if setting.masked: # only proceed with update if masked value is not empty if value != '': repValue = request.POST[param + '_2'] logger.debug('Checking if the values match!') if repValue == value: logger.debug('Values Match!') setting.value = value setting.save() else: setting.value = value setting.save() # Handle checkboxes for setting in allsettings: if setting.type == 'check': if not request.POST.__contains__('key_' + setting.key): setting.value = '0' setting.save() ConfigCache.refresh() allsettings = ConfigSetting.objects.all(); data = {'settings': allsettings.order_by('key')} for setting in allsettings: if setting.type == 'check': data[setting.key.replace('.','_')] = setting.value == '1' else: data[setting.key.replace('.','_')] = setting.value return render_to_response('configs.html', data, context_instance=RequestContext(request))