|
Lines 156-159
$(document).ready(function () {
Link Here
|
| 156 |
clean_line(line); |
156 |
clean_line(line); |
| 157 |
} |
157 |
} |
| 158 |
}); |
158 |
}); |
|
|
159 |
|
| 160 |
$('.add-facet').click(function() { |
| 161 |
var table = $(this).closest('table'); |
| 162 |
let table_id = table.attr('id'); |
| 163 |
let dt = $('#' + table_id).DataTable(); |
| 164 |
var line = $(this).closest('tr'); |
| 165 |
let selected_option = $(line).find('select[data-id="facet-search-field"] option:selected'); |
| 166 |
var search_field_name = selected_option.val(); |
| 167 |
let dt_data = dt.data(); |
| 168 |
let already_exists = dt_data.filter((row, idx) => row[1] === search_field_name); |
| 169 |
if ( already_exists.length ) { |
| 170 |
alert(__("Facet '%s' already exist".format(search_field_name))); |
| 171 |
return; |
| 172 |
} |
| 173 |
if (search_field_name.length > 0) { |
| 174 |
const next_id = Math.max.apply(null, dt_data.map(row => row[0])) + 1; |
| 175 |
const label = selected_option.data('label'); |
| 176 |
new_line = [next_id, search_field_name, '<span>%s</span><input type="hidden" name="facet_name" value="%s" />'.format(label.escapeHtml(), search_field_name.escapeHtml()), '<a class="btn btn-default btn-xs delete" style="cursor: pointer;"><i class="fa fa-trash"></i> %s</a>'.format(__("Delete"))]; |
| 177 |
dt.row.add(new_line).draw(); |
| 178 |
|
| 179 |
$(table).on( 'click', '.delete', function () { |
| 180 |
var table = $(this).closest('table'); |
| 181 |
let dt = $(table).DataTable(); |
| 182 |
dt.row( $(this).closest('tr') ).remove().draw(); |
| 183 |
} ); |
| 184 |
|
| 185 |
clean_line(line); |
| 186 |
} |
| 187 |
}); |
| 188 |
|
| 159 |
}); |
189 |
}); |
| 160 |
- |
|
|