Commit ab0006f39bdb612d083625a1497c5fdd9ec52b91

Authored by Katarzyna Krasnowska
1 parent 0a4812d8

stub frame/schema filtering code + (hopefully) slightly better looks

common/static/common/css/common.css
... ... @@ -12,7 +12,11 @@ main {
12 12 }
13 13  
14 14 .bg-highlight {
15   - background-color: #e4e4e4;
  15 + background-color: #f3f4f5;
  16 +}
  17 +
  18 +.bg-white {
  19 + background-color: #ffffff;
16 20 }
17 21  
18 22 .tooltip > .tooltip-inner > ul {
... ... @@ -24,3 +28,28 @@ main {
24 28 text-align: left;
25 29 max-width: 500px;
26 30 }
  31 +
  32 +.modal-backdrop {
  33 + z-index: 2001 !important;
  34 +}
  35 +
  36 +.modal {
  37 + z-index: 2002 !important;
  38 +}
  39 +
  40 +/* TODO: doesn’t work under Firefox 89, possibly older too */
  41 +::-webkit-scrollbar {
  42 + width: 4px;
  43 +}
  44 +
  45 +::-webkit-scrollbar-track {
  46 + background: #dee1e4;
  47 +}
  48 +
  49 +::-webkit-scrollbar-thumb {
  50 + background: #b2bac1;
  51 +}
  52 +
  53 +::-webkit-scrollbar-thumb:hover {
  54 + background: #929ca6;
  55 +}
... ...
common/static/common/js/utils.js
... ... @@ -24,7 +24,7 @@ function activate_tooltips(selector) {
24 24  
25 25 function clear_info() {
26 26 $('#info').empty();
27   - $('#info').removeClass('bg-success bg-info bg-warning bg-danger');
  27 + $('#info').removeClass('bg-success bg-info bg-warning bg-danger bg-dark');
28 28 $('.wait-spinner').remove();
29 29 }
30 30  
... ... @@ -36,7 +36,7 @@ function show_debug(text) {
36 36  
37 37 function show_info(text) {
38 38 clear_info();
39   - $('#info').addClass('bg-info');
  39 + $('#info').addClass('bg-dark text-light');
40 40 $('#info').html(text);
41 41 }
42 42  
... ... @@ -48,7 +48,7 @@ function show_warning(text) {
48 48  
49 49 function show_error(text) {
50 50 clear_info();
51   - $('#info').addClass('bg-info');
  51 + $('#info').addClass('bg-danger');
52 52 $('#info').html(text);
53 53 }
54 54  
... ...
common/templates/base.html
... ... @@ -30,9 +30,12 @@
30 30 </head>
31 31  
32 32 <body>
  33 +
  34 +{% block modals %}{% endblock %}
  35 +
33 36 <div class="container-fluid h-100 d-flex flex-column p-0">
34 37  
35   - <nav class="navbar navbar-expand-lg sticky-top navbar-dark bg-dark font-weight-bold" style="z-index: 2000;">
  38 + <nav class="navbar navbar-expand-lg sticky-top navbar-dark bg-dark font-weight-bold p-2" style="z-index: 2000;">
36 39 <a class="navbar-brand" href="{% url 'dash' %}">Walenty [beta]</a>
37 40  
38 41 <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarNav" aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation">
... ... @@ -83,9 +86,10 @@
83 86 {% block content %}{% endblock %}
84 87 </main>
85 88  
86   - <div class="fixed-bottom text-dark" id="info"></div>
  89 + <div class="fixed-bottom" id="info"></div>
87 90  
88 91 </div>
  92 +
89 93 </body>
90 94  
91 95 </html>
... ...
entries/forms.py
... ... @@ -207,7 +207,7 @@ class EntryForm(QueryForm):
207 207 raise KeyError(type(child_form))
208 208  
209 209  
210   -# for forms that can appear multiple times in the query consrtuctor field
  210 +# for forms that can appear multiple times in the query constructor field
211 211 # (e.g. a phrase form), create a separate form class for each form ‘instance’,
212 212 # with globally unique field names to ensure proper javascript behaviour
213 213 # and retrieving the field values in views
... ... @@ -231,10 +231,13 @@ class FormFactory(object):
231 231 return { 'data_formtype' : form_type , 'data_formnumber' : unique_number }
232 232  
233 233 @staticmethod
234   - def make_layout(title, components):
  234 + def make_layout(title, components, subform_header=True):
  235 + elements = []
  236 + if subform_header:
  237 + elements.append('{} <span class="collapsed-info text-info"></span> <button class="btn collapse-button btn-xs btn-secondary" data-collapsed="false" type="button">{}</button><button class="btn remove-button btn-xs btn-danger" type="button">{}</button>'.format(title, _('Zwiń'), _('Usuń')))
  238 + elements += components
235 239 return layout.Layout(layout.Fieldset(
236   - '{} <span class="collapsed-info text-info"></span> <button class="btn collapse-button btn-xs btn-secondary" data-collapsed="false" type="button">{}</button><button class="btn remove-button btn-xs btn-danger" type="button">{}</button>'.format(title, _('Zwiń'), _('Usuń')),
237   - *components
  240 + *elements
238 241 ))
239 242  
240 243 @staticmethod
... ... @@ -242,7 +245,7 @@ class FormFactory(object):
242 245 return []
243 246  
244 247 @classmethod
245   - def get_form(cls, unique_number=None, *args, **kwargs):
  248 + def get_form(cls, unique_number=None, subform_header=True, *args, **kwargs):
246 249 unique_number = cls.unique_number() if unique_number is None else unique_number
247 250  
248 251 assert(cls.form_class_name is not None)
... ... @@ -270,7 +273,7 @@ class FormFactory(object):
270 273 components += component
271 274 else:
272 275 components.append(component)
273   - self.helper.layout = cls.make_layout(cls.form_header, components)
  276 + self.helper.layout = cls.make_layout(cls.form_header, components, subform_header=subform_header)
274 277  
275 278 form_class.__init__ = form_init
276 279  
... ...
entries/static/entries/css/entries.css
1   -/*#entries-table {
2   - max-height: 100%;
3   -}*/
4   -
5 1 .extra-phrase-types {
6   - border-top: 3px solid #747474;
  2 + border-top: 3px solid #9da6af;
7 3 }
8 4  
9 5 tr.entry {
... ... @@ -15,7 +11,7 @@ tr.entry {
15 11 }
16 12  
17 13 #entries-table_info {
18   - background-color: #c8c8c8;
  14 + background-color: #dee1e4;
19 15 padding-top: 0px;
20 16 padding-left: .25rem;
21 17 }
... ... @@ -25,7 +21,7 @@ tr.entry {
25 21 }
26 22  
27 23 .entry-meaning.active {
28   - background-color: #c8c8c8;
  24 + background-color: #dee1e4;
29 25 }
30 26  
31 27 legend {
... ... @@ -42,15 +38,15 @@ legend {
42 38 }
43 39  
44 40 .preferences.active {
45   - background-color: #c8c8c8;
  41 + background-color: #dee1e4;
46 42 }
47 43  
48 44 .position.active, .phrase.active {
49   - background-color: #acacac;
  45 + background-color: #c8cdd2;
50 46 }
51 47  
52 48 .schema.active {
53   - background-color: #c8c8c8;
  49 + background-color: #dee1e4;
54 50 }
55 51  
56 52 .col-form-label {
... ... @@ -94,53 +90,53 @@ legend {
94 90 }
95 91  
96 92 .form-depth-1 {
97   - background-color: #f2f2f2;
98   - border-color: #e4e4e4;
  93 + background-color: #fefefe;
  94 + border-color: #f3f4f5;
99 95 }
100 96  
101 97 .form-depth-2 {
102   - background-color: #e4e4e4;
103   - border-color: #d6d6d6;
  98 + background-color: #f3f4f5;
  99 + border-color: #e8ebed;
104 100 }
105 101  
106 102 .form-depth-3 {
107   - background-color: #d6d6d6;
108   - border-color: #c8c8c8;
  103 + background-color: #e8ebed;
  104 + border-color: #dee1e4;
109 105 }
110 106  
111 107 .form-depth-4 {
112   - background-color: #c8c8c8;
113   - border-color: #bababa;
  108 + background-color: #dee1e4;
  109 + border-color: #d3d7db;
114 110 }
115 111  
116 112 .form-depth-5 {
117   - background-color: #bababa;
118   - border-color: #acacac;
  113 + background-color: #d3d7db;
  114 + border-color: #c8cdd2;
119 115 }
120 116  
121 117 .form-depth-6 {
122   - background-color: #acacac;
123   - border-color: #9e9e9e;
  118 + background-color: #c8cdd2;
  119 + border-color: #bdc3c9;
124 120 }
125 121  
126 122 .form-depth-7 {
127   - background-color: #9e9e9e;
128   - border-color: #909090;
  123 + background-color: #bdc3c9;
  124 + border-color: #b2bac1;
129 125 }
130 126  
131 127 .form-depth-8 {
132   - background-color: #909090;
133   - border-color: #828282;
  128 + background-color: #b2bac1;
  129 + border-color: #a7b0b8;
134 130 }
135 131  
136 132 .form-depth-9 {
137   - background-color: #828282;
138   - border-color: #747474;
  133 + background-color: #a7b0b8;
  134 + border-color: #9da6af;
139 135 }
140 136  
141 137 .form-depth-10 {
142   - background-color: #747474;
143   - border-color: #666666;
  138 + background-color: #9da6af;
  139 + border-color: #929ca6;
144 140 }
145 141  
146 142 .to-remove {
... ... @@ -178,12 +174,25 @@ legend {
178 174 background-repeat: repeat;
179 175 }
180 176  
  177 +.sticky-bottom {
  178 + position: sticky;
  179 + bottom: 0;
  180 +}
  181 +
  182 +#entryTabs {
  183 + background-color: #dee1e4;
  184 +}
  185 +
181 186 .gutter {
182   - background-color: #9e9e9e;
  187 + background-color: #c8cdd2;
183 188 background-repeat: no-repeat;
184 189 background-position: 50%;
185 190 }
186 191  
  192 +.gutter:hover {
  193 + background-color: #a7b0b8;
  194 +}
  195 +
187 196 .gutter.gutter-horizontal {
188 197 background-image: url("/static/entries/img/gutter-h.png");
189 198 cursor: col-resize;
... ...
entries/static/entries/img/gutter-h.png

193 Bytes | W: 4px | H: 22px

192 Bytes | W: 2px | H: 22px

  • 2-up
  • Swipe
  • Onion skin
entries/static/entries/img/gutter-v.png

203 Bytes | W: 22px | H: 4px

197 Bytes | W: 22px | H: 2px

  • 2-up
  • Swipe
  • Onion skin
entries/static/entries/js/entries.js
... ... @@ -19,10 +19,10 @@ function make_opinion_row(item, span, width) {
19 19 // TODO make schema2dom and frame2dom share as much code as possible
20 20 function schema2dom(schema) {
21 21 var div = document.createElement('div');
22   - div.className = 'schema inactive';
  22 + div.className = 'schema mb-3 inactive';
23 23 div.setAttribute('data-schema_id', schema.id);
24 24 var table = document.createElement('table');
25   - table.className = 'table table-borderless border border-secondary text-dark';
  25 + table.className = 'table m-0 table-borderless border border-secondary text-dark';
26 26 var tbody = document.createElement('tbody');
27 27  
28 28 // opinion
... ... @@ -83,10 +83,10 @@ function subentries2dom(subentries) {
83 83 for (var i in subentries) {
84 84 var subentry = subentries[i];
85 85 var subentry_div = document.createElement('div');
86   - subentry_div.className = 'subentry mb-3';
  86 + subentry_div.className = 'subentry';
87 87 var subentry_header = document.createElement('div');
88   - subentry_header.className = 'bg-light border-0 mx-0 mt-0 mb-3 px-0 pt-2 pb-0 sticky-top';
89   - subentry_header.innerHTML = '<h5 class="bg-primary text-light p-1">' + subentry.str + '</h5>';
  88 + subentry_header.className = 'mb-1 sticky-top';
  89 + subentry_header.innerHTML = '<h5 class="bg-dark text-light p-1">' + subentry.str + '</h5>';
90 90 subentry_div.append(subentry_header)
91 91 for (var j in subentry.schemata) {
92 92 subentry_div.append(schema2dom(subentry.schemata[j]));
... ... @@ -101,10 +101,11 @@ function subentries2dom(subentries) {
101 101  
102 102 function frame2dom(frame) {
103 103 var div = document.createElement('div');
104   - div.className = 'frame';
  104 + div.className = 'frame mb-3';
105 105 div.setAttribute('data-frame_id', frame.id);
106 106  
107 107 var p = document.createElement('p');
  108 + p.className = 'mb-1'
108 109 var lexical_units = [];
109 110 for (var i in frame.lexical_units) {
110 111 var lu = frame.lexical_units[i];
... ... @@ -134,7 +135,7 @@ function frame2dom(frame) {
134 135 div.append(p)
135 136  
136 137 var table = document.createElement('table');
137   - table.className = 'table table-borderless border border-secondary text-dark';
  138 + table.className = 'table m-0 table-borderless border border-secondary text-dark';
138 139 var tbody = document.createElement('tbody');
139 140  
140 141 // opinion
... ... @@ -980,6 +981,7 @@ function clear_entry() {
980 981 $('#syntax-schemata').empty();
981 982 $('#syntax-examples-list').empty();
982 983 $('#syntax-examples').hide();
  984 + $('#syntax-no-examples').hide();
983 985  
984 986 $('#semantics-frames').empty();
985 987 $('#semantics-schemata').empty();
... ... @@ -1027,7 +1029,7 @@ function initialize_entries_list() {
1027 1029  
1028 1030  
1029 1031 $(document).ready(function() {
1030   -
  1032 +
1031 1033 Split(['#entries-list', '#entry-display'], {
1032 1034 sizes: [20, 80],
1033 1035 minSize: 300,
... ... @@ -1039,19 +1041,13 @@ $(document).ready(function() {
1039 1041 },
1040 1042 });
1041 1043  
1042   - Split(['#semantics-top-pane', '#semantics-bottom-pane'], {
1043   - direction: 'vertical',
1044   - sizes: [75, 25],
1045   - gutterSize: 4,
1046   - });
1047   -
1048   - Split(['#syntax-schemata', '#syntax-examples-pane'], {
  1044 + Split(['#semantics-top-pane', '#semantics-examples-pane'], {
1049 1045 direction: 'vertical',
1050 1046 sizes: [75, 25],
1051 1047 gutterSize: 4,
1052 1048 });
1053 1049  
1054   - Split(['#semantics-frames', '#semantics-schemata'], {
  1050 + Split(['#semantics-frames-pane', '#semantics-schemata-pane'], {
1055 1051 sizes: [40, 60],
1056 1052 minSize: 400,
1057 1053 gutterSize: 4,
... ... @@ -1062,6 +1058,12 @@ $(document).ready(function() {
1062 1058 },
1063 1059 });
1064 1060  
  1061 + Split(['#syntax-schemata-pane', '#syntax-examples-pane'], {
  1062 + direction: 'vertical',
  1063 + sizes: [75, 25],
  1064 + gutterSize: 4,
  1065 + });
  1066 +
1065 1067 adjust_heights();
1066 1068  
1067 1069 $(window).resize(adjust_heights);
... ... @@ -1082,6 +1084,8 @@ $(document).ready(function() {
1082 1084  
1083 1085 initialize_main_form();
1084 1086  
  1087 + //$('.local-filter').hide();
  1088 +
1085 1089 $('#main-form').submit();
1086 1090  
1087 1091 });
... ...
entries/templates/entries.html
... ... @@ -62,9 +62,9 @@
62 62 <div class="row h-100 m-0 p-0 bg-secondary">
63 63 <!-- left panel: list of entries -->
64 64 <div id="entries-list" class="col h-100 w-100 px-0">
65   - <div id="filter-div" class="col p-0 bg-primary">
66   - <button type="button" id='filter-button' class="btn btn-primary" data-toggle="modal" data-target="#entry-filters">
67   - {% trans "Filtrowanie" %}
  65 + <div id="filter-div" class="col p-1">
  66 + <button type="button" id='filter-button' class="btn btn-sm btn-block btn-outline-dark" data-toggle="modal" data-target="#entry-filters">
  67 + {% trans "Filtrowanie haseł" %}
68 68 </button>
69 69 </div>
70 70 <div id="entries-list-div" class="col p-0 h-100 w-100 overflow-auto">
... ... @@ -78,6 +78,10 @@
78 78 </div>
79 79 </div>
80 80  
  81 +{% endblock %}
  82 +
  83 +{% block modals %}
  84 +
81 85 <div class="modal fade" id="entry-filters" tabindex="-1" role="dialog" aria-labelledby="entry-filtersLabel" aria-hidden="true">
82 86 <div class="modal-dialog modal-xl" role="document">
83 87 <div class="modal-content">
... ... @@ -94,4 +98,36 @@
94 98 </div>
95 99 </div>
96 100  
  101 +<div class="modal fade" id="frame-filters" tabindex="-1" role="dialog" aria-labelledby="frame-filtersLabel" aria-hidden="true">
  102 + <div class="modal-dialog modal-xl" role="document">
  103 + <div class="modal-content">
  104 + <div class="modal-header">
  105 + <h5 class="modal-title" id="frame-filtersLabel">{% trans "Filtrowanie ram" %}</h5>
  106 + <button type="button" class="close" data-dismiss="modal" aria-label="Close">
  107 + <span aria-hidden="true">&times;</span>
  108 + </button>
  109 + </div>
  110 + <div class="modal-body text-dark">
  111 + {% crispy frames_form %}
  112 + </div>
  113 + </div>
  114 + </div>
  115 +</div>
  116 +
  117 +<div class="modal fade" id="schema-filters" tabindex="-1" role="dialog" aria-labelledby="schema-filtersLabel" aria-hidden="true">
  118 + <div class="modal-dialog modal-xl" role="document">
  119 + <div class="modal-content">
  120 + <div class="modal-header">
  121 + <h5 class="modal-title" id="schema-filtersLabel">{% trans "Filtrowanie schematów" %}</h5>
  122 + <button type="button" class="close" data-dismiss="modal" aria-label="Close">
  123 + <span aria-hidden="true">&times;</span>
  124 + </button>
  125 + </div>
  126 + <div class="modal-body text-dark">
  127 + {% crispy schemata_form %}
  128 + </div>
  129 + </div>
  130 + </div>
  131 +</div>
  132 +
97 133 {% endblock %}
... ...
entries/templates/entry_display.html
1 1 {% load i18n %}
2 2  
3   -<ul class="nav nav-pills nav-justified sticky-top p-1 border-bottom border-primary" id="entryTabs" role="tablist">
4   - <li class="nav-item">
5   - <a class="nav-link active" id="semantics-tab" data-toggle="tab" href="#semantics" role="tab" aria-controls="semantics" aria-selected="true">
  3 +<ul class="nav nav-pills nav-justified sticky-top p-1" id="entryTabs" role="tablist">
  4 + <li class="nav-item mr-1">
  5 + <a class="btn btn-sm btn-outline-dark nav-link active" id="semantics-tab" data-toggle="tab" href="#semantics" role="tab" aria-controls="semantics" aria-selected="true">
6 6 {% trans "Semantyka (ramy + schematy)" %}
7 7 </a>
8 8 </li>
9   - <li class="nav-item">
10   - <a class="nav-link" id="syntax-tab" data-toggle="tab" href="#syntax" role="tab" aria-controls="syntax" aria-selected="false">
  9 + <li class="nav-item mr-1">
  10 + <a class="btn btn-sm btn-outline-dark nav-link" id="syntax-tab" data-toggle="tab" href="#syntax" role="tab" aria-controls="syntax" aria-selected="false">
11 11 {% trans "Składnia (schematy)" %}
12 12 </a>
13 13 </li>
14   - <li class="nav-item">
15   - <a class="nav-link" id="examples-tab" data-toggle="tab" href="#examples" role="tab" aria-controls="examples" aria-selected="false">
  14 + <li class="nav-item mr-0">
  15 + <a class="btn btn-sm btn-outline-dark nav-link" id="examples-tab" data-toggle="tab" href="#examples" role="tab" aria-controls="examples" aria-selected="false">
16 16 {% trans "Przykłady niedopasowane" %}
17 17 </a>
18 18 </li>
19 19 </ul>
20 20  
21 21 <div class="tab-content h-100 w-100 p-0" id="entryTabsContent">
22   - <div class="col h-100 w-100 px-3 py-0 tab-pane show active" id="semantics" role="tabpanel" aria-labelledby="semantics-tab">
23   - <div class="row p-0" id="semantics-top-pane">
24   - <div class="col h-100 pt-2 pb-0 px-2 overflow-auto" id="semantics-frames"></div>
25   - <div class="col h-100 py-0 px-2 overflow-auto" id="semantics-schemata"></div>
  22 + <div class="col h-100 w-100 p-0 tab-pane show active" id="semantics" role="tabpanel" aria-labelledby="semantics-tab">
  23 + <div class="row m-0 p-0" id="semantics-top-pane">
  24 + <div class="col h-100 px-1 pt-0 pb-0 overflow-auto" id="semantics-frames-pane">
  25 + <div id="semantics-frames"></div>
  26 + <!--div class="sticky-bottom px-0 py-1 bg-white local-filter">
  27 + <button type="button" id='semantics-filter-frames-button' class="btn btn-block btn-sm btn-outline-dark" data-toggle="modal" data-target="#frame-filters">
  28 + {% trans "Filtrowanie ram" %}
  29 + </button>
  30 + </div-->
  31 + </div>
  32 + <div class="col h-100 px-1 pt-0 pb-0 overflow-auto" id="semantics-schemata-pane">
  33 + <div id="semantics-schemata"></div>
  34 + <!--div class="sticky-bottom px-0 py-1 bg-white local-filter">
  35 + <button type="button" id='semantics-filter-schemata-button' class="btn btn-block btn-sm btn-outline-dark" data-toggle="modal" data-target="#schema-filters">
  36 + {% trans "Filtrowanie schematów" %}
  37 + </button>
  38 + </div-->
  39 + </div>
26 40 </div>
27   - <div class="row p-2 overflow-auto" id="semantics-bottom-pane">
  41 + <div class="row m-0 p-0 overflow-auto" id="semantics-examples-pane">
28 42 <table id="semantics-examples" class="table table-sm table-hover">
29 43 <thead>
30 44 <tr>
... ... @@ -39,10 +53,17 @@
39 53 <p class="mx-1 my-1"id="semantics-no-examples">{% trans "Brak przykładów" %}</p>
40 54 </div>
41 55 </div>
42   - <div class="col h-100 w-100 px-3 py-0 tab-pane" id="syntax" role="tabpanel" aria-labelledby="syntax-tab">
43   - <div class="col w-100 py-0 px-2 overflow-auto" id="syntax-schemata"></div>
44   - <div class="col w-100 p-2 overflow-auto" id="syntax-examples-pane">
45   - <table id="syntax-examples" class="table table-sm table-hover table-responsive">
  56 + <div class="col h-100 w-100 p-0 tab-pane" id="syntax" role="tabpanel" aria-labelledby="syntax-tab">
  57 + <div class="col w-100 px-1 pt-0 pb-0 overflow-auto" id="syntax-schemata-pane">
  58 + <div id="syntax-schemata"></div>
  59 + <!--div class="sticky-bottom px-0 py-1 bg-white local-filter">
  60 + <button type="button" id='syntax-filter-schemata-button' class="btn btn-block btn-sm btn-outline-dark" data-toggle="modal" data-target="#schema-filters">
  61 + {% trans "Filtrowanie schematów" %}
  62 + </button>
  63 + </div-->
  64 + </div>
  65 + <div class="col w-100 p-0 overflow-auto" id="syntax-examples-pane">
  66 + <table id="syntax-examples" class="table table-sm table-hover">
46 67 <thead>
47 68 <tr>
48 69 <th scope="col">{% trans "Przykład" %}</th>
... ... @@ -56,7 +77,7 @@
56 77 <p class="mx-1 my-1"id="syntax-no-examples">{% trans "Brak przykładów" %}</p>
57 78 </div>
58 79 </div>
59   - <div class="col h-100 w-100 p-3 tab-pane" id="examples" role="tabpanel" aria-labelledby="examples-tab">
  80 + <div class="col h-100 w-100 p-0 tab-pane" id="examples" role="tabpanel" aria-labelledby="examples-tab">
60 81 <table id="unmatched-examples" class="table table-sm table-hover table-responsive">
61 82 <thead>
62 83 <tr>
... ...
entries/views.py
... ... @@ -49,7 +49,7 @@ def entries(request):
49 49 # TODO make this automatic by subclassing/configuring session object
50 50 if 'last_visited' not in request.session:
51 51 request.session['last_visited'] = []
52   - return render(request, 'entries.html', { 'entries_form' : EntryForm() })
  52 + return render(request, 'entries.html', { 'entries_form' : EntryForm(), 'frames_form' : FrameFormFactory.get_form(subform_header=False), 'schemata_form' : SchemaFormFactory.get_form(subform_header=False) })
53 53  
54 54 FORM_TYPES = {
55 55 #'entry-main' : MainEntryForm,
... ... @@ -277,6 +277,9 @@ def get_scroller_params(POST_data):
277 277 'filter' : POST_data['search[value]']
278 278 }
279 279  
  280 +# TODO restriction to >1 subentries for testing css – remove!!!
  281 +#from django.db.models import Count
  282 +
280 283 @ajax_required
281 284 def get_entries(request):
282 285 if request.method == 'POST':
... ... @@ -286,6 +289,10 @@ def get_entries(request):
286 289 assert(not errors_dict)
287 290 scroller_params = get_scroller_params(request.POST)
288 291 entries = get_filtered_objects(forms).filter(import_error=False)
  292 +
  293 + # TODO restriction to >1 subentries for testing css – remove!!!
  294 + #entries = entries.annotate(nsub=Count('subentries')).filter(nsub__gt=1, frames_count__gt=2, schemata_count__gt=4)
  295 +
289 296 total = entries.count()
290 297 if scroller_params['filter']:
291 298 entries = entries.filter(name__startswith=scroller_params['filter'])
... ...
locale/en/LC_MESSAGES/django.mo
No preview for this file type
locale/en/LC_MESSAGES/django.po
... ... @@ -8,7 +8,7 @@ msgid &quot;&quot;
8 8 msgstr ""
9 9 "Project-Id-Version: PACKAGE VERSION\n"
10 10 "Report-Msgid-Bugs-To: \n"
11   -"POT-Creation-Date: 2021-06-01 15:47+0200\n"
  11 +"POT-Creation-Date: 2021-06-23 14:30+0200\n"
12 12 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13 13 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
14 14 "Language-Team: LANGUAGE <LL@li.org>\n"
... ... @@ -18,24 +18,24 @@ msgstr &quot;&quot;
18 18 "Content-Transfer-Encoding: 8bit\n"
19 19 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
20 20  
21   -#: common/templates/base.html:45 entries/templates/entries.html:7
  21 +#: common/templates/base.html:48 entries/templates/entries.html:7
22 22 msgid "Hasła"
23 23 msgstr "Entries"
24 24  
25   -#: common/templates/base.html:52
  25 +#: common/templates/base.html:55
26 26 msgid "Typy fraz"
27 27 msgstr "Phrase types"
28 28  
29   -#: common/templates/base.html:57
  29 +#: common/templates/base.html:60
30 30 #: dictionary_statistics/templates/dictionary_statistics.html:7
31 31 msgid "Statystyki"
32 32 msgstr "Statistics"
33 33  
34   -#: common/templates/base.html:62
  34 +#: common/templates/base.html:65
35 35 msgid "Pobierz słownik"
36 36 msgstr "Download dictionary"
37 37  
38   -#: common/templates/base.html:78
  38 +#: common/templates/base.html:81
39 39 msgid "EN"
40 40 msgstr "PL"
41 41  
... ... @@ -71,7 +71,7 @@ msgstr &quot;...&quot;
71 71 msgid "Pobieranie"
72 72 msgstr "Download"
73 73  
74   -#: entries/autocompletes.py:27 entries/views.py:386
  74 +#: entries/autocompletes.py:27 entries/views.py:393
75 75 msgid "definicja:"
76 76 msgstr "definition:"
77 77  
... ... @@ -131,7 +131,7 @@ msgstr &quot;!&amp; operator doesn’t allow nested expressions: %(expr)s.&quot;
131 131 msgid "Niepoprawne wyrażenie: %(msg)s."
132 132 msgstr "Invalid expression: %(msg)s."
133 133  
134   -#: entries/form_fields/specialised_fields.py:44 entries/forms.py:512
  134 +#: entries/form_fields/specialised_fields.py:44 entries/forms.py:515
135 135 msgid "Typ frazeologizmu"
136 136 msgstr "Phraseologism type"
137 137  
... ... @@ -139,7 +139,7 @@ msgstr &quot;Phraseologism type&quot;
139 139 msgid "Typ frazy"
140 140 msgstr "Phrase type"
141 141  
142   -#: entries/form_fields/specialised_fields.py:51 entries/forms.py:600
  142 +#: entries/form_fields/specialised_fields.py:51 entries/forms.py:603
143 143 msgid "wybierz"
144 144 msgstr "choose"
145 145  
... ... @@ -195,9 +195,9 @@ msgstr &quot;Add&quot;
195 195 msgid "Schemat"
196 196 msgstr "Schema"
197 197  
198   -#: entries/forms.py:145 entries/forms.py:446 entries/forms.py:611
199   -#: entries/forms.py:730 entries/forms.py:732 entries/forms.py:734
200   -#: entries/forms.py:736
  198 +#: entries/forms.py:145 entries/forms.py:449 entries/forms.py:614
  199 +#: entries/forms.py:733 entries/forms.py:735 entries/forms.py:737
  200 +#: entries/forms.py:739
201 201 msgid "Fraza"
202 202 msgstr "Phrase"
203 203  
... ... @@ -225,8 +225,8 @@ msgstr &quot;Filter&quot;
225 225 msgid "Wyczyść"
226 226 msgstr "Reset"
227 227  
228   -#: entries/forms.py:166 entries/forms.py:462 entries/forms.py:468
229   -#: entries/forms.py:507 entries/templates/entries_list.html:6
  228 +#: entries/forms.py:166 entries/forms.py:465 entries/forms.py:471
  229 +#: entries/forms.py:510 entries/templates/entries_list.html:6
230 230 msgid "Lemat"
231 231 msgstr "Lemma"
232 232  
... ... @@ -254,201 +254,201 @@ msgstr &quot;Hide non-matching schemata&quot;
254 254 msgid "Ukryj niepasujące ramy"
255 255 msgstr "Hide non-matching frames"
256 256  
257   -#: entries/forms.py:236
  257 +#: entries/forms.py:237
258 258 msgid "Zwiń"
259 259 msgstr "Collapse"
260 260  
261   -#: entries/forms.py:236
  261 +#: entries/forms.py:237
262 262 msgid "Usuń"
263 263 msgstr "Remove"
264 264  
265   -#: entries/forms.py:282 entries/forms.py:768
  265 +#: entries/forms.py:285 entries/forms.py:771
266 266 msgid "Zaneguj"
267 267 msgstr "Negate"
268 268  
269   -#: entries/forms.py:297
  269 +#: entries/forms.py:300
270 270 msgid "Schemat składniowy"
271 271 msgstr "Syntactic schema"
272 272  
273   -#: entries/forms.py:303
  273 +#: entries/forms.py:306
274 274 msgid "Opinia o schemacie"
275 275 msgstr "Schema opinion"
276 276  
277   -#: entries/forms.py:315
  277 +#: entries/forms.py:318
278 278 msgid "Typ"
279 279 msgstr "Type"
280 280  
281   -#: entries/forms.py:317
  281 +#: entries/forms.py:320
282 282 msgid "zwykły"
283 283 msgstr "ordinary"
284 284  
285   -#: entries/forms.py:318
  285 +#: entries/forms.py:321
286 286 msgid "frazeologiczny"
287 287 msgstr "phraseological"
288 288  
289   -#: entries/forms.py:327
  289 +#: entries/forms.py:330
290 290 msgid "Zwrotność"
291 291 msgstr "Reflexiveness"
292 292  
293   -#: entries/forms.py:338
  293 +#: entries/forms.py:341
294 294 msgid "Negatywność"
295 295 msgstr "Negativity"
296 296  
297   -#: entries/forms.py:349
  297 +#: entries/forms.py:352
298 298 msgid "Predykatywność"
299 299 msgstr "Predicativity"
300 300  
301   -#: entries/forms.py:360 entries/polish_strings.py:80
  301 +#: entries/forms.py:363 entries/polish_strings.py:80
302 302 msgid "Aspekt"
303 303 msgstr "Aspect"
304 304  
305   -#: entries/forms.py:379
  305 +#: entries/forms.py:382
306 306 msgid "Liczba pozycyj"
307 307 msgstr "Number of positions"
308 308  
309   -#: entries/forms.py:394 entries/forms.py:606
  309 +#: entries/forms.py:397 entries/forms.py:609
310 310 msgid "Pozycja"
311 311 msgstr "Position"
312 312  
313   -#: entries/forms.py:410
  313 +#: entries/forms.py:413
314 314 msgid "Pozycja składniowa"
315 315 msgstr "Syntactic position"
316 316  
317   -#: entries/forms.py:416
  317 +#: entries/forms.py:419
318 318 msgid "Funkcja gramatyczna"
319 319 msgstr "Grammatical function"
320 320  
321   -#: entries/forms.py:426
  321 +#: entries/forms.py:429
322 322 msgid "Kontrola"
323 323 msgstr "Control"
324 324  
325   -#: entries/forms.py:436
  325 +#: entries/forms.py:439
326 326 msgid "Kontrola predykatywna"
327 327 msgstr "Predicative control"
328 328  
329   -#: entries/forms.py:445
  329 +#: entries/forms.py:448
330 330 msgid "Typ frazy występujący na pozycji."
331 331 msgstr "Phrase type occurring on the position."
332 332  
333   -#: entries/forms.py:482
  333 +#: entries/forms.py:485
334 334 msgid "Frazeologizm"
335 335 msgstr "Phraseologism"
336 336  
337   -#: entries/forms.py:488
  337 +#: entries/forms.py:491
338 338 msgid "Wybór lematów"
339 339 msgstr "Lemma choice"
340 340  
341   -#: entries/forms.py:498
  341 +#: entries/forms.py:501
342 342 msgid "Łączenie lematów"
343 343 msgstr "Lemma joining"
344 344  
345   -#: entries/forms.py:511 entries/forms.py:789
  345 +#: entries/forms.py:514 entries/forms.py:792
346 346 msgid "Typ składniowy frazeologizmu."
347 347 msgstr ""
348 348  
349   -#: entries/forms.py:534
  349 +#: entries/forms.py:537
350 350 msgid "Rama semantyczna"
351 351 msgstr "Semantic frame"
352 352  
353   -#: entries/forms.py:540 entries/templates/entry_display.html:33
354   -#: entries/templates/entry_display.html:50
355   -#: entries/templates/entry_display.html:65
  353 +#: entries/forms.py:543 entries/templates/entry_display.html:47
  354 +#: entries/templates/entry_display.html:71
  355 +#: entries/templates/entry_display.html:86
356 356 msgid "Opinia"
357 357 msgstr "Opinion"
358 358  
359   -#: entries/forms.py:550
  359 +#: entries/forms.py:553
360 360 msgid "Liczba argumentów"
361 361 msgstr "Number of arguments"
362 362  
363   -#: entries/forms.py:557
  363 +#: entries/forms.py:560
364 364 msgid "Liczba preferencyj selekcyjnych argumentu"
365 365 msgstr "Number of argument’s selectional preferences"
366 366  
367   -#: entries/forms.py:563
  367 +#: entries/forms.py:566
368 368 msgid "Argument"
369 369 msgstr "Argument"
370 370  
371   -#: entries/forms.py:579
  371 +#: entries/forms.py:582
372 372 msgid "Argument semantyczny"
373 373 msgstr "Semantic argument"
374 374  
375   -#: entries/forms.py:585
  375 +#: entries/forms.py:588
376 376 msgid "Rola"
377 377 msgstr "Role"
378 378  
379   -#: entries/forms.py:592
  379 +#: entries/forms.py:595
380 380 msgid "Atrybut roli"
381 381 msgstr "Role attribute"
382 382  
383   -#: entries/forms.py:599 entries/forms.py:602
  383 +#: entries/forms.py:602 entries/forms.py:605
384 384 msgid "Preferencja selekcyjna"
385 385 msgstr "Selectional preference"
386 386  
387   -#: entries/forms.py:600
  387 +#: entries/forms.py:603
388 388 msgid "Predefiniowana grupa znaczeń"
389 389 msgstr "Predefined meanings class"
390 390  
391   -#: entries/forms.py:600
  391 +#: entries/forms.py:603
392 392 msgid "Wyrażona przez relację"
393 393 msgstr "Expressed by relation"
394 394  
395   -#: entries/forms.py:600
  395 +#: entries/forms.py:603
396 396 msgid "Wyrażona przez jednostkę leksykalną Słowosieci"
397 397 msgstr "Expressed by plWordnet lexical unit"
398 398  
399   -#: entries/forms.py:610
  399 +#: entries/forms.py:613
400 400 msgid "Typ frazy, przez którą może być realizowany argument."
401 401 msgstr ""
402 402  
403   -#: entries/forms.py:631
  403 +#: entries/forms.py:634
404 404 msgid "Preferencja predefiniowana"
405 405 msgstr "Predefined preference"
406 406  
407   -#: entries/forms.py:637
  407 +#: entries/forms.py:640
408 408 msgid "Predefiniowane"
409 409 msgstr "Predefined"
410 410  
411   -#: entries/forms.py:651
  411 +#: entries/forms.py:654
412 412 msgid "Preferencja – relacja"
413 413 msgstr "Relational preference"
414 414  
415   -#: entries/forms.py:657
  415 +#: entries/forms.py:660
416 416 msgid "Relacja"
417 417 msgstr "Relation"
418 418  
419   -#: entries/forms.py:668
  419 +#: entries/forms.py:671
420 420 msgid "Do: rola"
421 421 msgstr "To: role"
422 422  
423   -#: entries/forms.py:675
  423 +#: entries/forms.py:678
424 424 msgid "Do: atrybut"
425 425 msgstr "To: attribute"
426 426  
427   -#: entries/forms.py:687
  427 +#: entries/forms.py:690
428 428 msgid "Preferencja – Słowosieć"
429 429 msgstr "plWordnet preference"
430 430  
431   -#: entries/forms.py:693
  431 +#: entries/forms.py:696
432 432 msgid "Jednostka leksykalna"
433 433 msgstr "Lexical unit"
434 434  
435   -#: entries/forms.py:741
  435 +#: entries/forms.py:744
436 436 msgid "Fraza {}"
437 437 msgstr "{} phrase"
438 438  
439   -#: entries/forms.py:743 entries/polish_strings.py:134
  439 +#: entries/forms.py:746 entries/polish_strings.py:134
440 440 msgid "frazeologizm"
441 441 msgstr "phraseologism"
442 442  
443   -#: entries/forms.py:779
  443 +#: entries/forms.py:782
444 444 msgid "Realizacja składniowa frazy."
445 445 msgstr "Syntactic realisation of the phrase."
446 446  
447   -#: entries/forms.py:783
  447 +#: entries/forms.py:786
448 448 msgid "Fraza składowa frazeologizmu porównawczego."
449 449 msgstr ""
450 450  
451   -#: entries/forms.py:785
  451 +#: entries/forms.py:788
452 452 msgid "Fraza realizująca frazeologizm."
453 453 msgstr ""
454 454  
... ... @@ -1997,14 +1997,19 @@ msgstr &quot;Options&quot;
1997 1997 msgid "Wyświetlaj opisy realizacji"
1998 1998 msgstr "Show realisation descriptions"
1999 1999  
2000   -#: entries/templates/entries.html:67
2001   -msgid "Filtrowanie"
2002   -msgstr "Filtering"
2003   -
2004   -#: entries/templates/entries.html:85
  2000 +#: entries/templates/entries.html:67 entries/templates/entries.html:89
2005 2001 msgid "Filtrowanie haseł"
2006 2002 msgstr "Entry filtering"
2007 2003  
  2004 +#: entries/templates/entries.html:105 entries/templates/entry_display.html:28
  2005 +msgid "Filtrowanie ram"
  2006 +msgstr "Frame filtering"
  2007 +
  2008 +#: entries/templates/entries.html:121 entries/templates/entry_display.html:36
  2009 +#: entries/templates/entry_display.html:61
  2010 +msgid "Filtrowanie schematów"
  2011 +msgstr "Schema filtering"
  2012 +
2008 2013 #: entries/templates/entry_display.html:6
2009 2014 msgid "Semantyka (ramy + schematy)"
2010 2015 msgstr "Semantics (frames + schemata)"
... ... @@ -2017,40 +2022,40 @@ msgstr &quot;Syntax (schemata)&quot;
2017 2022 msgid "Przykłady niedopasowane"
2018 2023 msgstr "Unmatched examples"
2019 2024  
2020   -#: entries/templates/entry_display.html:31
2021   -#: entries/templates/entry_display.html:48
2022   -#: entries/templates/entry_display.html:63
  2025 +#: entries/templates/entry_display.html:45
  2026 +#: entries/templates/entry_display.html:69
  2027 +#: entries/templates/entry_display.html:84
2023 2028 msgid "Przykład"
2024 2029 msgstr "Example"
2025 2030  
2026   -#: entries/templates/entry_display.html:32
2027   -#: entries/templates/entry_display.html:49
2028   -#: entries/templates/entry_display.html:64
  2031 +#: entries/templates/entry_display.html:46
  2032 +#: entries/templates/entry_display.html:70
  2033 +#: entries/templates/entry_display.html:85
2029 2034 msgid "Źródło"
2030 2035 msgstr "Source"
2031 2036  
2032   -#: entries/templates/entry_display.html:39
2033   -#: entries/templates/entry_display.html:56
2034   -#: entries/templates/entry_display.html:71
  2037 +#: entries/templates/entry_display.html:53
  2038 +#: entries/templates/entry_display.html:77
  2039 +#: entries/templates/entry_display.html:92
2035 2040 msgid "Brak przykładów"
2036 2041 msgstr "No examples"
2037 2042  
2038   -#: entries/views.py:374
  2043 +#: entries/views.py:381
2039 2044 msgid ""
2040 2045 "Realizacja tego argumentu w zdaniu powinna być powiązana jakąkolwiek relacją"
2041 2046 msgstr "Realisation of this argument in the sentence should be in any relation"
2042 2047  
2043   -#: entries/views.py:376
  2048 +#: entries/views.py:383
2044 2049 msgid ""
2045 2050 "Realizacja tego argumentu w zdaniu powinna być powiązana relacją <i>{}</i>"
2046 2051 msgstr ""
2047 2052 "Realisation of this argument in the sentence should be in <i>{}</i> relation"
2048 2053  
2049   -#: entries/views.py:377
  2054 +#: entries/views.py:384
2050 2055 msgid "z realizacją argumentu <i>{}</i>."
2051 2056 msgstr "with realisation of the <i>{}</i> argument."
2052 2057  
2053   -#: entries/views.py:390
  2058 +#: entries/views.py:397
2054 2059 msgid "hiperonimy:"
2055 2060 msgstr "hypernyms"
2056 2061  
... ...
locale/en/LC_MESSAGES/djangojs.po
... ... @@ -8,7 +8,7 @@ msgid &quot;&quot;
8 8 msgstr ""
9 9 "Project-Id-Version: PACKAGE VERSION\n"
10 10 "Report-Msgid-Bugs-To: \n"
11   -"POT-Creation-Date: 2021-06-01 15:47+0200\n"
  11 +"POT-Creation-Date: 2021-06-23 14:30+0200\n"
12 12 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13 13 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
14 14 "Language-Team: LANGUAGE <LL@li.org>\n"
... ... @@ -38,141 +38,141 @@ msgstr &quot;Phrase types&quot;
38 38 msgid "brak schematów"
39 39 msgstr "no schemata"
40 40  
41   -#: entries/static/entries/js/entries.js:121
  41 +#: entries/static/entries/js/entries.js:122
42 42 msgid "nowa jednostka spoza <i>Słowosieci</i>"
43 43 msgstr "new lexical unit not in <i>plWordnet</i>"
44 44  
45   -#: entries/static/entries/js/entries.js:145
  45 +#: entries/static/entries/js/entries.js:146
46 46 msgid "Rola"
47 47 msgstr "Role"
48 48  
49   -#: entries/static/entries/js/entries.js:147
  49 +#: entries/static/entries/js/entries.js:148
50 50 msgid "Preferencje selekcyjne"
51 51 msgstr "Selectional preferences"
52 52  
53   -#: entries/static/entries/js/entries.js:194
  53 +#: entries/static/entries/js/entries.js:195
54 54 msgid "brak ram"
55 55 msgstr "no frames"
56 56  
57   -#: entries/static/entries/js/entries.js:212
  57 +#: entries/static/entries/js/entries.js:213
58 58 msgid "Kliknij, aby wyświetlić przykłady dla tego schematu."
59 59 msgstr "Click to show examples for this schema."
60 60  
61   -#: entries/static/entries/js/entries.js:249
  61 +#: entries/static/entries/js/entries.js:250
62 62 msgid "Kliknij, aby cofnąć wyświetlanie przykładów dla tego schematu."
63 63 msgstr "Click to undo showing examples for this schema."
64 64  
65   -#: entries/static/entries/js/entries.js:261
66   -#: entries/static/entries/js/entries.js:452
67   -#: entries/static/entries/js/entries.js:484
68   -#: entries/static/entries/js/entries.js:530
  65 +#: entries/static/entries/js/entries.js:262
  66 +#: entries/static/entries/js/entries.js:453
  67 +#: entries/static/entries/js/entries.js:485
  68 +#: entries/static/entries/js/entries.js:531
69 69 msgid ""
70 70 "Kliknij, aby cofnąć ograniczenie wyświetlanych przykładów do powiązanych z"
71 71 msgstr "Click to undo restriction to examples linked to"
72 72  
73   -#: entries/static/entries/js/entries.js:261
74   -#: entries/static/entries/js/entries.js:263
  73 +#: entries/static/entries/js/entries.js:262
  74 +#: entries/static/entries/js/entries.js:264
75 75 msgid "tą pozycją"
76 76 msgstr "this position"
77 77  
78   -#: entries/static/entries/js/entries.js:261
79   -#: entries/static/entries/js/entries.js:263
  78 +#: entries/static/entries/js/entries.js:262
  79 +#: entries/static/entries/js/entries.js:264
80 80 msgid "tą frazą"
81 81 msgstr "this phrase"
82 82  
83   -#: entries/static/entries/js/entries.js:263
84   -#: entries/static/entries/js/entries.js:454
85   -#: entries/static/entries/js/entries.js:486
86   -#: entries/static/entries/js/entries.js:532
  83 +#: entries/static/entries/js/entries.js:264
  84 +#: entries/static/entries/js/entries.js:455
  85 +#: entries/static/entries/js/entries.js:487
  86 +#: entries/static/entries/js/entries.js:533
87 87 msgid "Kliknij, aby wyświetlić wyłącznie przykłady powiązane z"
88 88 msgstr "Click to show only examples linked to"
89 89  
90   -#: entries/static/entries/js/entries.js:349
  90 +#: entries/static/entries/js/entries.js:350
91 91 msgid ""
92 92 "Kliknij, aby wyświetlić przykłady dla tej ramy oraz jej realizacje "
93 93 "składniowe."
94 94 msgstr ""
95 95 "Click to show examples linked to this frame and its syntactic realisations."
96 96  
97   -#: entries/static/entries/js/entries.js:452
98   -#: entries/static/entries/js/entries.js:454
  97 +#: entries/static/entries/js/entries.js:453
  98 +#: entries/static/entries/js/entries.js:455
99 99 msgid "tym znaczeniem"
100 100 msgstr "this meaning"
101 101  
102   -#: entries/static/entries/js/entries.js:484
103   -#: entries/static/entries/js/entries.js:486
  102 +#: entries/static/entries/js/entries.js:485
  103 +#: entries/static/entries/js/entries.js:487
104 104 msgid "tą rolą"
105 105 msgstr "this role"
106 106  
107   -#: entries/static/entries/js/entries.js:530
108   -#: entries/static/entries/js/entries.js:532
  107 +#: entries/static/entries/js/entries.js:531
  108 +#: entries/static/entries/js/entries.js:533
109 109 msgid "tym schematem"
110 110 msgstr "this schema"
111 111  
112   -#: entries/static/entries/js/entries.js:560
  112 +#: entries/static/entries/js/entries.js:561
113 113 msgid "Kliknij, aby cofnąć wybór tej ramy."
114 114 msgstr "Click to undo choice if this frame."
115 115  
116   -#: entries/static/entries/js/entries.js:663
117   -#: entries/static/entries/js/entries.js:769
  116 +#: entries/static/entries/js/entries.js:664
  117 +#: entries/static/entries/js/entries.js:770
118 118 msgid "Komentarz"
119 119 msgstr "Comment"
120 120  
121   -#: entries/static/entries/js/entries.js:680
  121 +#: entries/static/entries/js/entries.js:681
122 122 msgid ""
123 123 "Kliknij, aby cofnąć wyświetlanie typów fraz powiązanych z tym przykładem."
124 124 msgstr "Click to undo showing phrase types linked to this example."
125 125  
126   -#: entries/static/entries/js/entries.js:682
  126 +#: entries/static/entries/js/entries.js:683
127 127 msgid "Kliknij, aby wyświetlić typy fraz powiązane z tym przykładem."
128 128 msgstr "Click to show phrase types linked to this example."
129 129  
130   -#: entries/static/entries/js/entries.js:721
  130 +#: entries/static/entries/js/entries.js:722
131 131 msgid ""
132 132 "Kliknij, aby cofnąć wyświetlanie argumentów i typów fraz powiązanych z tym "
133 133 "przykładem."
134 134 msgstr ""
135 135 "Click to undo showing arguments and phrase types linked to this example."
136 136  
137   -#: entries/static/entries/js/entries.js:723
  137 +#: entries/static/entries/js/entries.js:724
138 138 msgid ""
139 139 "Kliknij, aby wyświetlić argumenty i typy fraz powiązane z tym przykładem."
140 140 msgstr "Click to show arguments and phrase types linked to this example."
141 141  
142   -#: entries/static/entries/js/entries.js:958
  142 +#: entries/static/entries/js/entries.js:959
143 143 msgid "Przetwarzanie..."
144 144 msgstr "Processing"
145 145  
146   -#: entries/static/entries/js/entries.js:959
147   -#: entries/static/entries/js/entries.js:1015
  146 +#: entries/static/entries/js/entries.js:960
  147 +#: entries/static/entries/js/entries.js:1017
148 148 msgid "Szukaj:"
149 149 msgstr "Search:"
150 150  
151   -#: entries/static/entries/js/entries.js:960
  151 +#: entries/static/entries/js/entries.js:961
152 152 msgid "Liczba haseł: _TOTAL_"
153 153 msgstr "_TOTAL_ entries"
154 154  
155   -#: entries/static/entries/js/entries.js:961
156   -#: entries/static/entries/js/entries.js:1016
  155 +#: entries/static/entries/js/entries.js:962
  156 +#: entries/static/entries/js/entries.js:1018
157 157 msgid "Liczba haseł: 0"
158 158 msgstr "0 entries"
159 159  
160   -#: entries/static/entries/js/entries.js:962
  160 +#: entries/static/entries/js/entries.js:963
161 161 msgid "(spośród _MAX_)"
162 162 msgstr "(out of _MAX_)"
163 163  
164   -#: entries/static/entries/js/entries.js:963
165   -#: entries/static/entries/js/entries.js:1017
  164 +#: entries/static/entries/js/entries.js:964
  165 +#: entries/static/entries/js/entries.js:1019
166 166 msgid "Brak haseł do wyświetlenia."
167 167 msgstr "No entries to display."
168 168  
169   -#: entries/static/entries/js/entries.js:965
170   -#: entries/static/entries/js/entries.js:1019
  169 +#: entries/static/entries/js/entries.js:966
  170 +#: entries/static/entries/js/entries.js:1021
171 171 msgid ": sortuj kolumnę rosnąco"
172 172 msgstr ": sort column in ascending order"
173 173  
174   -#: entries/static/entries/js/entries.js:966
175   -#: entries/static/entries/js/entries.js:1020
  174 +#: entries/static/entries/js/entries.js:967
  175 +#: entries/static/entries/js/entries.js:1022
176 176 msgid ": sortuj kolumnę malejąco"
177 177 msgstr ": sort column in descending order"
178 178  
... ... @@ -259,7 +259,7 @@ msgid &quot;Wykonanie zapytania z operatorem ‹inny› może trwać zauważalnie dł
259 259 msgstr ""
260 260 "Execution of a query using the ‹other› operator can take considerably longer."
261 261  
262   -#: entries/static/entries/js/forms.js:320
  262 +#: entries/static/entries/js/forms.js:322
263 263 msgid ""
264 264 "Dodanie elementu jest niemożliwe: osiągnięto maksymalny poziom zagnieżdżenia."
265 265 msgstr "Can’t add an element: maximum depth reached."
... ...