Skip to content

Commit

Permalink
Render json_editor for new notices in admin
Browse files Browse the repository at this point in the history
  • Loading branch information
peter-hank committed Jul 7, 2022
1 parent 0714efc commit 4ed0ce9
Show file tree
Hide file tree
Showing 2 changed files with 33 additions and 24 deletions.
2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). It uses [CalVer](https://calver.org/) as of May 2019.

## [22.07](https://github.com/berkmancenter/lumendatabase/releases/tag/2022.07) - 2022-07-06
### Fixed
* Made the admin render a json editor instance for new notices.
### Changed
* Updated the `rails-html-sanitizer` gem.

Expand Down
55 changes: 31 additions & 24 deletions app/assets/javascripts/rails_admin/custom/notice_edit_form.js
Original file line number Diff line number Diff line change
@@ -1,30 +1,30 @@
$(document).on('pjax:complete', function(event, request) {
edit_notice_form_actions();
notice_form_actions();
});

$(document).ready(function () {
edit_notice_form_actions();
notice_form_actions();
});

function edit_notice_form_actions() {
edit_notice_form = $(
`form#edit_notice,
form#edit_dmca,
form#edit_counterfeit,
form#edit_counternotice,
form#edit_court_order,
form#edit_data_protection,
form#edit_defamation,
form#edit_government_request,
form#edit_law_enforcement_request,
form#edit_private_information,
form#edit_trademark,
form#edit_other,
form#edit_placeholder`
);

if (edit_notice_form.length) {
var form_model_type = edit_notice_form.first().attr('id').replace('edit_', '');
function notice_form_actions() {
var forms = ['new', 'edit'];
var notice_types = ['notice', 'dmca', 'counterfeit', 'counternotice', 'court_order',
'data_protection', 'defamation', 'goverment_request', 'law_enforcement_request',
'private_information', 'trademark', 'other', 'placeholder'
];

var selectors = '';
forms.forEach(function (val_form) {
notice_types.forEach(function (val_type) {
selectors += `form#${val_form}_${val_type},`;
});
});
selectors = selectors.slice(0, -1);

var notice_form = $(selectors);

if (notice_form.length) {
var form_model_type = notice_form.first().attr('id').replace('edit_', '').replace('new_', '');

set_works_editor(form_model_type);
set_taggings_editor(form_model_type);
Expand All @@ -46,12 +46,15 @@ function set_works_editor(form_model_type) {
'items': {
'title': 'work',
'type': 'object',
'show_opt_in': true,
'properties': {
'description': {
'type': 'string'
'type': 'string',
'show_opt_in': true
},
'description_original': {
'type': 'string'
'type': 'string',
'show_opt_in': true
},
'kind': {
'type': 'string'
Expand Down Expand Up @@ -132,7 +135,11 @@ function set_taggings_editor(form_model_type) {

editor.on('ready',() => {
$(`.${field_id} .card-title`).first().hide();
editor.setValue(JSON.parse($(`#${input_field_id}`).val()));
var val_to_init = $(`#${input_field_id}`).val();
if (!val_to_init) {
val_to_init = '[]';
}
editor.setValue(JSON.parse(val_to_init));
});

editor.on('change',() => {
Expand Down

0 comments on commit 4ed0ce9

Please sign in to comment.