def generate_blocks_configuration_for_content(request, block_id): assert_has_global_permission(user=request.user, codename=MANAGE_BLOCK_PERMISSION) try: reg_block = RegisteredBlock.objects.get(id=block_id) block = reg_block.get_registry_item() form = BlockConfigForm() form.fields['config'].set_config(block.get_config()) result = form.as_django_admin() result = result.replace('<fieldset class="module aligned">', '') result = result.replace('</fieldset>', '') result = result.replace('<div class="form-row">', '') result = result[::-1].replace('>vid/<', '', 1)[::-1] # previous replace just removes the last </div> ocurrence result = result.replace(_('Configuration'), _('Block specific configuration')) result += '<p class="help">Fill this field to overwrite the block configuration</p>' except RegisteredBlock.DoesNotExist: result = '' return HttpResponse(result, mimetype='text/html')
def generate_blocks_configuration(request, block_id): assert_has_global_permission(user=request.user, codename=MANAGE_BLOCK_PERMISSION) reg_block = RegisteredBlock.objects.get(id=block_id) block = reg_block.get_registry_item() config = block.get_config() if request.method == 'POST': form = BlockConfigForm(request.POST) form.fields['config'].set_config(config) if form.is_valid(): reg_block.config = form.cleaned_data['config'] reg_block.save() return HttpResponse('ok') else: form = BlockConfigForm() form.fields['config'].set_config(config) return render_to_response('blocks/block_config.html', { 'form': form, 'reg_block': reg_block, 'block': block, })