<commit_before>{% load i18n %}
{% load hq_shared_tags %}

<div>
    <p data-bind="text: DetailScreenConfig.message.EMPTY_SCREEN, visible: !$root.edit && _.isEmpty(columns)"></p>
    <table class="table table-condensed detail-screen-table">
        <thead>
            <tr tabindex="999" data-bind="paste: function (data) { pasteCallback(data, 0); }">
                <th class="detail-screen-icon"></th>
                <th class="detail-screen-field" data-bind="text: DetailScreenConfig.message.FIELD"></th>
                <th class="detail-screen-header" data-bind="text: DetailScreenConfig.message.HEADER"></th>
                <th class="detail-screen-format" data-bind="text: DetailScreenConfig.message.FORMAT"></th>
                <th class="detail-screen-icon"></th>
            </tr>
        </thead>
        <tbody class="detail-screen-columns" data-bind="sortable: {
            data: columns,
            afterAdd: function (elem) { $(elem).hide().fadeIn() },
            beforeRemove: function (elem) { $(elem).fadeOut() }
        }">
            <tr data-bind="css: {info: isTab}, attr: {'data-order': _sortableOrder, 'tabindex': 1000 + $index()},
                           copy: function () { return copyCallback(); },
                           paste: function (data) { $parent.pasteCallback(data, $index() + 1); }">
                <td class="detail-screen-icon" data-bind="jqueryElement: $grip, visible: $root.edit"></td>
                <!--ko if: !isTab -->
                    <td class="detail-screen-field control-group"
                        data-bind="css: {error: showWarning}">
                        <div data-bind="html: CC_DETAIL_SCREEN.getFieldHtml(field.val()), visible: !field.edit"></div>
                        <div data-bind="jqueryElement: field.ui, visible: field.edit"></div>
                        <div data-bind="jqueryElement: format_warning, visible: showWarning"></div>
                    </td>
                    <td class="detail-screen-header" data-bind="jqueryElement: header.ui"></td>
                    <td class="detail-screen-format" data-bind="jqueryElement: $format"></td>
                <!--/ko-->
                <!--ko if: isTab -->
                    <td colspan="3" data-bind="jqueryElement: header.ui"></td>
                <!--/ko-->

                <td class="detail-screen-icon">
                    <i style="cursor: pointer;"
                       data-bind="
                        visible: $root.edit && ($parent.columns().length > 1),
                        click: function(){screen.columns.remove($data);},
                        css: COMMCAREHQ.icons.DELETE,
                        attr: {title: DetailScreenConfig.message.DELETE_COLUMN}
                    "></i>
                </td>
            </tr>
        </tbody>
        <tbody>
            <tr>
                <td></td>
                <td colspan="4">
                    <div class="btn-group">
                        <button class="btn add-property-item" data-bind="click: addProperty">Add Property</button>
                        {% if request|feature_preview_enabled:'CALC_XPATHS' or request|toggle_enabled:'GRAPH_CREATION' %}
                        <button class="btn dropdown-toggle" data-toggle="dropdown">
                            <span class="caret"></span><commit_msg>Fixed drag-and-drop in Case Detail page in Firefox<commit_after>{% load i18n %}
{% load hq_shared_tags %}

<div>
    <p data-bind="text: DetailScreenConfig.message.EMPTY_SCREEN, visible: !$root.edit && _.isEmpty(columns)"></p>
    <table class="table table-condensed detail-screen-table">
        <thead>
            <tr tabindex="999" data-bind="paste: function (data) { pasteCallback(data, 0); }">
                <th class="detail-screen-icon"></th>
                <th class="detail-screen-field" data-bind="text: DetailScreenConfig.message.FIELD"></th>
                <th class="detail-screen-header" data-bind="text: DetailScreenConfig.message.HEADER"></th>
                <th class="detail-screen-format" data-bind="text: DetailScreenConfig.message.FORMAT"></th>
                <th class="detail-screen-icon"></th>
            </tr>
        </thead>
        <tbody class="detail-screen-columns" data-bind="sortable: {
            data: columns,
            afterAdd: function (elem) { $(elem).hide().fadeIn() },
            beforeRemove: function (elem) { $(elem).fadeOut() }
        }"><tr data-bind="css: {info: isTab}, attr: {'data-order': _sortableOrder, 'tabindex': 1000 + $index()},
                           copy: function () { return copyCallback(); },
                           paste: function (data) { $parent.pasteCallback(data, $index() + 1); }">
                <td class="detail-screen-icon" data-bind="jqueryElement: $grip, visible: $root.edit"></td>
                <!--ko if: !isTab -->
                    <td class="detail-screen-field control-group"
                        data-bind="css: {error: showWarning}">
                        <div data-bind="html: CC_DETAIL_SCREEN.getFieldHtml(field.val()), visible: !field.edit"></div>
                        <div data-bind="jqueryElement: field.ui, visible: field.edit"></div>
                        <div data-bind="jqueryElement: format_warning, visible: showWarning"></div>
                    </td>
                    <td class="detail-screen-header" data-bind="jqueryElement: header.ui"></td>
                    <td class="detail-screen-format" data-bind="jqueryElement: $format"></td>
                <!--/ko-->
                <!--ko if: isTab -->
                    <td colspan="3" data-bind="jqueryElement: header.ui"></td>
                <!--/ko-->

                <td class="detail-screen-icon">
                    <i style="cursor: pointer;"
                       data-bind="
                        visible: $root.edit && ($parent.columns().length > 1),
                        click: function(){screen.columns.remove($data);},
                        css: COMMCAREHQ.icons.DELETE,
                        attr: {title: DetailScreenConfig.message.DELETE_COLUMN}
                    "></i>
                </td>
            </tr></tbody>
        <tbody>
            <tr>
                <td></td>
                <td colspan="4">
                    <div class="btn-group">
                        <button class="btn add-property-item" data-bind="click: addProperty">Add Property</button>
                        {% if request|feature_preview_enabled:'CALC_XPATHS' or request|toggle_enabled:'GRAPH_CREATION' %}
                        <button class="btn dropdown-toggle" data-toggle="dropdown">
                            <span class="caret"></span>
{'fraction_non_alphanumeric': 0.15831213526859195, 'fraction_numerical': 0.004189735148885231, 'mean_word_length': 1.7551525144270403, 'pattern_counts': {'":': 0, '<': 117, '<?xml version=': 0, '>': 119, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1119454', 'n_tokens_mistral': 1877, 'n_tokens_neox': 1755, 'n_words': 339}