1 | /* |
---|
2 | * Russian translation |
---|
3 | * By ZooKeeper (utf-8 encoding) |
---|
4 | * 6 November 2007 |
---|
5 | */ |
---|
6 | |
---|
7 | Ext.UpdateManager.defaults.indicatorText = '<div class="loading-indicator">Идет загрузка...</div>'; |
---|
8 | |
---|
9 | if(Ext.View){ |
---|
10 | Ext.View.prototype.emptyText = ""; |
---|
11 | } |
---|
12 | |
---|
13 | if(Ext.grid.GridPanel){ |
---|
14 | Ext.grid.GridPanel.prototype.ddText = "{0} выбранных строк"; |
---|
15 | } |
---|
16 | |
---|
17 | if(Ext.TabPanelItem){ |
---|
18 | Ext.TabPanelItem.prototype.closeText = "Закрыть эту вкладку"; |
---|
19 | } |
---|
20 | |
---|
21 | if(Ext.form.Field){ |
---|
22 | Ext.form.Field.prototype.invalidText = "Значение в этом поле неверное"; |
---|
23 | } |
---|
24 | |
---|
25 | if(Ext.LoadMask){ |
---|
26 | Ext.LoadMask.prototype.msg = "Загрузка..."; |
---|
27 | } |
---|
28 | |
---|
29 | Date.monthNames = [ |
---|
30 | "Январь", |
---|
31 | "Февраль", |
---|
32 | "Март", |
---|
33 | "Апрель", |
---|
34 | "Май", |
---|
35 | "Июнь", |
---|
36 | "Июль", |
---|
37 | "Август", |
---|
38 | "Сентябрь", |
---|
39 | "Октябрь", |
---|
40 | "Ноябрь", |
---|
41 | "Декабрь" |
---|
42 | ]; |
---|
43 | |
---|
44 | Date.shortMonthNames = [ |
---|
45 | "Янв", |
---|
46 | "Февр", |
---|
47 | "Март", |
---|
48 | "Апр", |
---|
49 | "Май", |
---|
50 | "Июнь", |
---|
51 | "Июль", |
---|
52 | "Авг", |
---|
53 | "Сент", |
---|
54 | "Окт", |
---|
55 | "Нояб", |
---|
56 | "Дек" |
---|
57 | ]; |
---|
58 | |
---|
59 | Date.getShortMonthName = function(month) { |
---|
60 | return Date.shortMonthNames[month]; |
---|
61 | }; |
---|
62 | |
---|
63 | Date.monthNumbers = { |
---|
64 | 'Янв': 0, |
---|
65 | 'Фев': 1, |
---|
66 | 'Мар': 2, |
---|
67 | 'Апр': 3, |
---|
68 | 'Май': 4, |
---|
69 | 'Июн': 5, |
---|
70 | 'Июл': 6, |
---|
71 | 'Авг': 7, |
---|
72 | 'Сен': 8, |
---|
73 | 'Окт': 9, |
---|
74 | 'Ноя': 10, |
---|
75 | 'Дек': 11 |
---|
76 | }; |
---|
77 | |
---|
78 | Date.getMonthNumber = function(name) { |
---|
79 | return Date.monthNumbers[name.substring(0, 1).toUpperCase() + name.substring(1, 3).toLowerCase()]; |
---|
80 | }; |
---|
81 | |
---|
82 | Date.dayNames = [ |
---|
83 | "Воскресенье", |
---|
84 | "Понедельник", |
---|
85 | "Вторник", |
---|
86 | "Среда", |
---|
87 | "Четверг", |
---|
88 | "Пятница", |
---|
89 | "Суббота" |
---|
90 | ]; |
---|
91 | |
---|
92 | Date.getShortDayName = function(day) { |
---|
93 | return Date.dayNames[day].substring(0, 3); |
---|
94 | }; |
---|
95 | |
---|
96 | if(Ext.MessageBox){ |
---|
97 | Ext.MessageBox.buttonText = { |
---|
98 | ok : "OK", |
---|
99 | cancel : "Отмена", |
---|
100 | yes : "Да", |
---|
101 | no : "Нет" |
---|
102 | }; |
---|
103 | } |
---|
104 | |
---|
105 | if(Ext.util.Format){ |
---|
106 | Ext.util.Format.date = function(v, format){ |
---|
107 | if(!v) return ""; |
---|
108 | if(!(v instanceof Date)) v = new Date(Date.parse(v)); |
---|
109 | return v.dateFormat(format || "d.m.Y"); |
---|
110 | }; |
---|
111 | } |
---|
112 | |
---|
113 | if(Ext.DatePicker){ |
---|
114 | Ext.apply(Ext.DatePicker.prototype, { |
---|
115 | todayText : "Сегодня", |
---|
116 | minText : "Эта дата раньше минимальной даты", |
---|
117 | maxText : "Эта дата позже максимальной даты", |
---|
118 | disabledDaysText : "", |
---|
119 | disabledDatesText : "", |
---|
120 | monthNames : Date.monthNames, |
---|
121 | dayNames : Date.dayNames, |
---|
122 | nextText : 'Следующий месяц (Control+Вправо)', |
---|
123 | prevText : 'Предыдущий месяц (Control+Влево)', |
---|
124 | monthYearText : 'Выбор месяца (Control+Вверх/Вниз для выбора года)', |
---|
125 | todayTip : "{0} (Пробел)", |
---|
126 | format : "d.m.y", |
---|
127 | okText : " OK ", |
---|
128 | cancelText : "Отмена", |
---|
129 | startDay : 1 |
---|
130 | }); |
---|
131 | } |
---|
132 | |
---|
133 | if(Ext.PagingToolbar){ |
---|
134 | Ext.apply(Ext.PagingToolbar.prototype, { |
---|
135 | beforePageText : "Страница", |
---|
136 | afterPageText : "из {0}", |
---|
137 | firstText : "Первая страница", |
---|
138 | prevText : "Предыдущая страница", |
---|
139 | nextText : "Следующая страница", |
---|
140 | lastText : "Последняя страница", |
---|
141 | refreshText : "Обновить", |
---|
142 | displayMsg : "Отображаются записи с {0} по {1}, всего {2}", |
---|
143 | emptyMsg : 'Нет данных для отображения' |
---|
144 | }); |
---|
145 | } |
---|
146 | |
---|
147 | if(Ext.form.TextField){ |
---|
148 | Ext.apply(Ext.form.TextField.prototype, { |
---|
149 | minLengthText : "Минимальная длина этого поля {0}", |
---|
150 | maxLengthText : "Максимальная длина этого поля {0}", |
---|
151 | blankText : "Это поле обязательно для заполнения", |
---|
152 | regexText : "", |
---|
153 | emptyText : null |
---|
154 | }); |
---|
155 | } |
---|
156 | |
---|
157 | if(Ext.form.NumberField){ |
---|
158 | Ext.apply(Ext.form.NumberField.prototype, { |
---|
159 | minText : "Значение этого поля не может быть меньше {0}", |
---|
160 | maxText : "Значение этого поля не может быть больше {0}", |
---|
161 | nanText : "{0} не является числом" |
---|
162 | }); |
---|
163 | } |
---|
164 | |
---|
165 | if(Ext.form.DateField){ |
---|
166 | Ext.apply(Ext.form.DateField.prototype, { |
---|
167 | disabledDaysText : "Не доступно", |
---|
168 | disabledDatesText : "Не доступно", |
---|
169 | minText : "Дата в этом поле должна быть позде {0}", |
---|
170 | maxText : "Дата в этом поле должна быть раньше {0}", |
---|
171 | invalidText : "{0} не является правильной датой - дата должна быть указана в формате {1}", |
---|
172 | format : "d.m.y", |
---|
173 | altFormats : "d.m.y|d/m/Y|d-m-y|d-m-Y|d/m|d-m|dm|dmy|dmY|d|Y-m-d" |
---|
174 | }); |
---|
175 | } |
---|
176 | |
---|
177 | if(Ext.form.ComboBox){ |
---|
178 | Ext.apply(Ext.form.ComboBox.prototype, { |
---|
179 | loadingText : "Загрузка...", |
---|
180 | valueNotFoundText : undefined |
---|
181 | }); |
---|
182 | } |
---|
183 | |
---|
184 | if(Ext.form.VTypes){ |
---|
185 | Ext.apply(Ext.form.VTypes, { |
---|
186 | emailText : 'Это поле должно содержать адрес электронной почты в формате "user@domain.com"', |
---|
187 | urlText : 'Это поле должно содержать URL в формате "http:/'+'/www.domain.com"', |
---|
188 | alphaText : 'Это поле должно содержать только латинские буквы и символ подчеркивания "_"', |
---|
189 | alphanumText : 'Это поле должно содержать только латинские буквы, цифры и символ подчеркивания "_"' |
---|
190 | }); |
---|
191 | } |
---|
192 | |
---|
193 | if(Ext.form.HtmlEditor){ |
---|
194 | Ext.apply(Ext.form.HtmlEditor.prototype, { |
---|
195 | createLinkText : 'Пожалуйста введите адрес:', |
---|
196 | buttonTips : { |
---|
197 | bold : { |
---|
198 | title: 'Полужирный (Ctrl+B)', |
---|
199 | text: 'Применение полужирного начертания к выделенному тексту.', |
---|
200 | cls: 'x-html-editor-tip' |
---|
201 | }, |
---|
202 | italic : { |
---|
203 | title: 'Курсив (Ctrl+I)', |
---|
204 | text: 'Применение курсивного начертания к выделенному тексту.', |
---|
205 | cls: 'x-html-editor-tip' |
---|
206 | }, |
---|
207 | underline : { |
---|
208 | title: 'Подчёркнутый (Ctrl+U)', |
---|
209 | text: 'Подчёркивание выделенного текста.', |
---|
210 | cls: 'x-html-editor-tip' |
---|
211 | }, |
---|
212 | increasefontsize : { |
---|
213 | title: 'Увеличить размер', |
---|
214 | text: 'Увеличение размера шрифта.', |
---|
215 | cls: 'x-html-editor-tip' |
---|
216 | }, |
---|
217 | decreasefontsize : { |
---|
218 | title: 'Уменьшить размер', |
---|
219 | text: 'Уменьшение размера шрифта.', |
---|
220 | cls: 'x-html-editor-tip' |
---|
221 | }, |
---|
222 | backcolor : { |
---|
223 | title: 'Заливка', |
---|
224 | text: 'Изменение цвета фона для выделенного текста или абзаца.', |
---|
225 | cls: 'x-html-editor-tip' |
---|
226 | }, |
---|
227 | forecolor : { |
---|
228 | title: 'Цвет текста', |
---|
229 | text: 'Измение цвета текста.', |
---|
230 | cls: 'x-html-editor-tip' |
---|
231 | }, |
---|
232 | justifyleft : { |
---|
233 | title: 'Выровнять текст по левому краю', |
---|
234 | text: 'Выровнивание текста по левому краю.', |
---|
235 | cls: 'x-html-editor-tip' |
---|
236 | }, |
---|
237 | justifycenter : { |
---|
238 | title: 'По центру', |
---|
239 | text: 'Выровнивание текста по центру.', |
---|
240 | cls: 'x-html-editor-tip' |
---|
241 | }, |
---|
242 | justifyright : { |
---|
243 | title: 'Выровнять текст по правому краю', |
---|
244 | text: 'Выровнивание текста по правому краю.', |
---|
245 | cls: 'x-html-editor-tip' |
---|
246 | }, |
---|
247 | insertunorderedlist : { |
---|
248 | title: 'Маркеры', |
---|
249 | text: 'Начать маркированный список.', |
---|
250 | cls: 'x-html-editor-tip' |
---|
251 | }, |
---|
252 | insertorderedlist : { |
---|
253 | title: 'Нумерация', |
---|
254 | text: 'Начать нумернованный список.', |
---|
255 | cls: 'x-html-editor-tip' |
---|
256 | }, |
---|
257 | createlink : { |
---|
258 | title: 'Вставить гиперссылку', |
---|
259 | text: 'Создание ссылки из выделенного текста.', |
---|
260 | cls: 'x-html-editor-tip' |
---|
261 | }, |
---|
262 | sourceedit : { |
---|
263 | title: 'Исходный код', |
---|
264 | text: 'Переключиться на исходный код.', |
---|
265 | cls: 'x-html-editor-tip' |
---|
266 | } |
---|
267 | } |
---|
268 | }); |
---|
269 | } |
---|
270 | |
---|
271 | if(Ext.form.BasicForm){ |
---|
272 | Ext.form.BasicForm.prototype.waitTitle = "Пожалуйста подождите..."; |
---|
273 | } |
---|
274 | |
---|
275 | if(Ext.grid.GridView){ |
---|
276 | Ext.apply(Ext.grid.GridView.prototype, { |
---|
277 | sortAscText : "Сортировать по возрастанию", |
---|
278 | sortDescText : "Сортировать по убыванию", |
---|
279 | lockText : "Закрепить столбец", |
---|
280 | unlockText : "Снять закрепление столбца", |
---|
281 | columnsText : "Столбцы" |
---|
282 | }); |
---|
283 | } |
---|
284 | |
---|
285 | if(Ext.grid.GroupingView){ |
---|
286 | Ext.apply(Ext.grid.GroupingView.prototype, { |
---|
287 | emptyGroupText : '(Пусто)', |
---|
288 | groupByText : 'Группировать по этому полю', |
---|
289 | showGroupsText : 'Отображать по группам' |
---|
290 | }); |
---|
291 | } |
---|
292 | |
---|
293 | if(Ext.grid.PropertyColumnModel){ |
---|
294 | Ext.apply(Ext.grid.PropertyColumnModel.prototype, { |
---|
295 | nameText : "Название", |
---|
296 | valueText : "Значение", |
---|
297 | dateFormat : "d.m.Y" |
---|
298 | }); |
---|
299 | } |
---|
300 | |
---|
301 | if(Ext.SplitLayoutRegion){ |
---|
302 | Ext.apply(Ext.SplitLayoutRegion.prototype, { |
---|
303 | splitTip : "Тяните для изменения размера.", |
---|
304 | collapsibleSplitTip : "Тяните для изменения размера. Двойной щелчок спрячет панель." |
---|
305 | }); |
---|
306 | } |
---|
307 | |
---|
308 | if(Ext.layout.BorderLayout && Ext.layout.BorderLayout.SplitRegion){ |
---|
309 | Ext.apply(Ext.layout.BorderLayout.SplitRegion.prototype, { |
---|
310 | splitTip : "Тяните для изменения размера.", |
---|
311 | collapsibleSplitTip : "Тяните для изменения размера. Двойной щелчок спрячет панель." |
---|
312 | }); |
---|
313 | } |
---|