public
Description: Web-based translation and translation management tool
Homepage: http://translate.sf.net/
Clone URL: git://github.com/julen/pootle.git
pootle / ChangeLog.pre-0.8
44f715f8 » davidfraser 2005-04-20 added PootleServer script, ... 1 2005-04-20 11:16 davidfraser
2
3 * README, TODO, __init__.py, adminpages.py, indexpage.py,
4 pagelayout.py, pootle.prefs, pootle.py, pootlefile.py, potree.py,
5 projects.py, translatepage.py, users.py, versioncontrol.py,
6 html/favicon.ico, html/pootle.css, html/robots.txt,
7 html/doc/howto.html, html/doc/index.html,
8 html/doc/resources.html, html/images/edit.png,
9 html/images/file.png, html/images/folder.png,
10 html/images/gap.png, html/images/goal.png, html/images/logo.png,
11 html/images/person.png, html/images/pootle-medium.jpg,
12 html/images/pootle-small.jpg, html/images/pootle.jpg,
13 html/images/pootle.svg, html/images/top.png,
14 html/js/autoexpand.js: removed translate/pootle (moving to
15 Pootle)
16
17 2005-04-19 21:52 davidfraser
18
19 * indexpage.py: added UI for adding users to a goal, showing users
20 in a goal
21
22 2005-04-19 21:23 davidfraser
23
24 * indexpage.py, projects.py: added logic to handle multiple goals
25 although we actually preserve single goals made it possible to
26 deallocate something by setting no goal don't display useless
27 information about goals renamed addfiletogoal to setfilegoals as
28 that's usually what we want to do
29
30 2005-04-19 21:05 davidfraser
31
32 * indexpage.py, projects.py: added infrastructure code to support
33 users in goals (simple copy of file code) renamed set goal to
34 setgoalfiles only show goals for a file if the file has multiple
35 goals
36
37 2005-04-19 20:47 davidfraser
38
39 * projects.py: simple code cleaning...
40
41 2005-04-19 17:57 davidfraser
42
43 * translatepage.py, html/js/autoexpand.js: added grow and shrink
44 buttons using javascript made other button captions localizable
45
46 2005-04-19 01:14 dwaynebailey
47
48 * users.py: Activate a uer from the admin page. Does not do
49 deactivation.
50
51 2005-04-19 01:02 dwaynebailey
52
53 * adminpages.py, potree.py: You can now edit: special characters,
54 the number of plurals and the plural equation from the language
55 admin page.
56
57 2005-04-19 00:46 dwaynebailey
58
59 * pagelayout.py: Added quick links to "All Projects" and "All
60 Languages"
61
62 2005-04-19 00:15 dwaynebailey
63
64 * indexpage.py, pootle.py: Add a page that lists all languages on
65 the Pootle server.
66
67 2005-04-14 09:37 davidfraser
68
69 * pootlefile.py, projects.py, translatepage.py: allow users with
70 translate rights to upload existing files, but don't add new
71 strings... also use username to record who uploaded changes
72 fixed up call to rejectsuggestion, removed session from assignto
73 function def
74
75 2005-04-14 09:32 davidfraser
76
77 * adminpages.py: added title, link to home page to
78 TranslationProjectAdminPage
79
80 2005-04-14 09:21 davidfraser
81
82 * indexpage.py: added link to administrate the translationproject
83 if you have the rights redid the layout of baselinks in the
84 process allow the uploadbox if you have translate rights (this
85 will deny new files however)
86
87 2005-04-14 08:58 davidfraser
88
89 * projects.py, adminpages.py, indexpage.py: added proper rights
90 controls for uploading/updating files, converting from templates
91 and setting goals created InternalAdminSession class which
92 projects can use when it does changes internally without a
93 session
94
95 2005-04-11 17:41 davidfraser
96
97 * translatepage.py: when actually submitting translations, we
98 should use pofilename that was supplied in the argdict for the
99 submission, not self.pofilename
100
101 2005-04-11 16:41 davidfraser
102
103 * translatepage.py: suggestions seem to be normal strings
104 sometimes, this should fix it till we find out why
105
106 2005-04-11 16:26 davidfraser
107
108 * translatepage.py: only add links to current folder, stats if
109 self.pofilename is not None (when a search is finished / returns
110 no items, self.pofilename is None)
111
112 2005-04-07 16:54 davidfraser
113
114 * pootlefile.py, projects.py: reset the encoding when rereading the
115 pofile (otherwise it won't decode properly!) only freshen the
116 newpofile on versioncontrol update, it should be read by the
117 constructor
118
119 2005-04-07 14:53 davidfraser
120
121 * indexpage.py: added tooltip to explain lack of link when no
122 untranslated items are present...
123
124 2005-04-07 14:53 davidfraser
125
126 * pootle.py: unified return-after-login logic, made it work with no
127 returnurl
128
129 2005-04-05 23:16 davidfraser
130
131 * indexpage.py, projects.py: tried to fix up subdirectory handling
132 of goals, needs more work
133
134 2005-04-05 22:47 davidfraser
135
136 * indexpage.py: renamed setgoal to editgoal
137
138 2005-04-05 22:45 davidfraser
139
140 * indexpage.py, projects.py: added ability to set files /
141 directories exclusively to goals also fixed bnad syntax (calling
142 list) note that this is not aware of files being contained inside
143 directories yet
144
145 2005-04-05 22:36 davidfraser
146
147 * projects.py, indexpage.py: changed linksrequired for goal items
148 renamed methods, restructured so files are only accessed in
149 getgoalfiles make sure goalfiles are not empty string fixed using
150 username instead of session
151
152 2005-04-05 22:32 davidfraser
153
154 * pagelayout.py, html/images/pootle-medium.jpg,
155 html/images/pootle-small.jpg, html/images/pootle.jpg: added small
156 and medium versions of pootle image, and updated them all from
157 new svg logo
158
159 2005-04-05 22:15 davidfraser
160
161 * html/images/pootle.svg: added background, changed page layout to
162 fit image, and centred image (landscape mode now)
163
164 2005-04-05 22:03 davidfraser
165
166 * html/images/pootle.svg: changed color of nose and mouth, aligned
167 them, removed center of mouth made logo on hat smaller combined
168 two segments of hat, and added outline made background blue, took
169 away purple border
170
171 2005-04-05 22:00 davidfraser
172
173 * html/images/pootle.svg: added SVG logo for Pootle from Lucas
174 Veietes
175
176 2005-04-05 19:28 dwaynebailey
177
178 * indexpage.py: "Quick Translate" is now always visible but
179 disabled if there are no items to translate. Should probably be
180 greyed out instead of just not have a link.
181
182 As a policy I think we need to ensure that: 1) You only see
183 things that you are allowed to see with your rights 2) Things do
184 not disappear they just get disabled.
185
186 2005-04-05 17:22 davidfraser
187
188 * indexpage.py, projects.py: fixed up funny empty items in
189 goalfiles list added ability to show items in goal by clicking on
190 goal title
191
192 2005-04-05 17:11 davidfraser
193
194 * indexpage.py, pootle.py: changed links for goal to include check,
195 assign, review and zip implemented zip of goal
196
197 2005-04-05 17:00 davidfraser
198
199 * indexpage.py: added ability to show goals as entries, to add new
200 goals, to place goalless files in goals tried to sanitize link
201 generation for options etc as well
202
203 2005-04-05 16:57 davidfraser
204
205 * potree.py: fixed docstring
206
207 2005-04-05 16:51 davidfraser
208
209 * pagelayout.py: added tediously inane GoalItem class
210
211 2005-04-05 16:50 davidfraser
212
213 * html/images/goal.png: added images for goals
214
215 2005-04-05 16:49 davidfraser
216
217 * html/pootle.css: added goal style
218
219 2005-04-05 16:20 davidfraser
220
221 * projects.py: modified getrights to the siteadmin always has admin
222 rights to all projects more enhancements to the goals
223 functionality (adding files to a goal, getting a specific goal,
224 etc) fixed setting the attribute to "goalname" instead of
225 goalname
226
227 2005-04-05 14:19 davidfraser
228
229 * pagelayout.py: was only initializing adminlink if
230 session.issiteadmin() or not session.isopen, changed to
231 initialize correctly
232
233 2005-04-05 12:31 davidfraser
234
235 * translatepage.py: wrong variable name
236
237 2005-04-04 10:34 dwaynebailey
238
239 * indexpage.py: You should only be able to remove assigns if you
240 actaully have the rights to assign them in the first place.
241
242 2005-04-03 16:06 dwaynebailey
243
244 * translatepage.py: Use the quotes Luke
245
246 2005-04-02 12:51 davidfraser
247
248 * projects.py: added initial goals interface cleaned out blank
249 lines
250
251 2005-04-02 12:44 davidfraser
252
253 * pootlefile.py: updated doc string
254
255 2005-04-02 12:40 davidfraser
256
257 * potree.py: do something with the new translationproject created,
258 and don't store getpodir result when just using it for a check
259
260 2005-04-02 12:38 davidfraser
261
262 * pootle.py, potree.py, projects.py: moved POTree into its own new
263 module, potree
264
265 2005-04-02 11:57 davidfraser
266
267 * indexpage.py, pootlefile.py, projects.py, translatepage.py: moved
268 pootlefile class into its own new file, and adjusted projects etc
269 also cleaned up links in indexpage
270
271 2005-04-02 11:35 davidfraser
272
273 * adminpages.py, indexpage.py, pootle.py, users.py: moved various
274 classes from indexpage into new module adminpages, and
275 UserOptions into users
276
277 2005-04-01 23:12 davidfraser
278
279 * indexpage.py: removed extraneous function call
280
281 2005-04-01 17:23 davidfraser
282
283 * projects.py, indexpage.py, pootle.py, translatepage.py: removed
284 the terrible concept known as 'TranslationSession' implement
285 rights checking in the TranslationProject added "assign" and
286 "admin" rights
287
288 2005-04-01 16:45 davidfraser
289
290 * indexpage.py, projects.py: made a method on the project that gets
291 the rights and localized names available for that project (moved
292 from indexpage)
293
294 2005-04-01 16:28 davidfraser
295
296 * indexpage.py, pootle.py, projects.py: implented permissions
297 system, with ability for administrator to change permissions each
298 translation project now has a prefs file
299 (pootle-projectcode-languagecode.prefs in the po directory) this
300 has a rights attribute, which stores default rights, nobody
301 rights, and rights for individual users the administrator can go
302 to /language/project/admin.html to edit the rights
303
304 2005-04-01 13:49 davidfraser
305
306 * projects.py, translatepage.py: if a entry is accessed in
307 project.pofiles and it is not there, but the file exists, then
308 update the index (this can happen if the timecache expires for
309 example) handle files being added / removed more robustly as well
310 also improved logic for setting and using pofilename in
311 translatepage (was fairly inconsistent) - receivetranslations
312 shouldn't set self.pofilename - also we now pick up pofilename
313 from dirfilter if explicitly a PO file
314
315 2005-03-31 21:02 dwaynebailey
316
317 * pootle.prefs, translatepage.py: If you define "specialchars" in a
318 language preferences then those characters will be displayed with
319 the input widget allowing users to copy and paste these
320 characters into the translation. Usefull if you do not have a
321 keyboard configured with these characters.
322
323 2005-03-31 20:15 dwaynebailey
324
325 * translatepage.py: Make sure that end never points to a negative
326 item. This happens when the number of items is less than
327 pagesize. We disable the link in this case but just fixing this
328 cause we can and it will stop it biting us later.
329
330 2005-03-31 19:02 dwaynebailey
331
332 * TODO: More buglets
333
334 2005-03-31 11:54 davidfraser
335
336 * indexpage.py, versioncontrol.py: only show update links if the
337 directory has version control
338
339 2005-03-31 08:56 dwaynebailey
340
341 * translatepage.py: In viewmode navifgation widget: - Start and End
342 are now disabled if you are at the beginning or end of the
343 file.
344
345 2005-03-31 00:41 dwaynebailey
346
347 * translatepage.py: Make the viewmode navigation more intuative and
348 user friendly: - Added Start and End links - Next 10 and Previous
349 10 do not disappear but are disabled if you are at the start or
350 end of the file (confusing when they disappear)
351
352 2005-03-30 23:04 dwaynebailey
353
354 * indexpage.py: Move Zip of folder up to the navbar. Remove the
355 addnavlink method as we have no more need for this.
356
357 2005-03-30 19:59 dwaynebailey
358
359 * TODO: Some interesting new TODO items
360
361 2005-03-30 17:47 davidfraser
362
363 * versioncontrol.py: backup the file first and restore or remove it
364 afterwards for cvs update this avoids having lots of
365 .#filename.rev files left around
366
367 2005-03-30 17:24 davidfraser
368
369 * projects.py: don't use sources to match items as thats a nice
370 idea for Mozilla/OpenOffice which use IDs as sources but a
371 horrible idea for everything else
372
373 2005-03-30 17:13 davidfraser
374
375 * projects.py, versioncontrol.py: updated CVS/svn update method so
376 that it now actually checks out the new version from CVS, to
377 update the record of which version is current. refactored
378 mergefile and created new matchitems method which mathces up
379 poitems from two files and returns them use the new matchitems to
380 extract current changes (equivalent to a cvs diff) and then merge
381 those with the new file (equivalent to a cvs patch) also moved
382 local function mergeitem to be a method, made it not try to find
383 headers check properly for full name and email address when doing
384 Last_Translator in versioncontrol, created helper shellescape and
385 added update methods as well as introspecting what version a file
386 is when getting a clean copy (BASE doesn't work here...)
387
388 2005-03-30 13:47 davidfraser
389
390 * TODO, translatepage.py: added a copy button
391
392 2005-03-30 11:48 davidfraser
393
394 * indexpage.py, projects.py, versioncontrol.py: added simple
395 versioncontrol module (CVS method from
396 http://software.cnx.rice.edu/downloads/python/pycvs/) and added
397 initial implementation for merging with latest CVS/.svn version -
398 this runs but what it actually *does* hasn't been tested also a
399 few cleanups in projects.py
400
401 2005-03-30 00:29 dwaynebailey
402
403 * translatepage.py: Make translation column headers translatable
404
405 2005-03-29 22:06 dwaynebailey
406
407 * translatepage.py: There are always 7 items on a translatable page
408 even if you are starting at the beginning.
409
410 2005-03-29 19:51 dwaynebailey
411
412 * users.py: Add some value catches for email., password and full
413 name to ensure that the default example values are not used.
414
415 2005-03-29 18:53 dwaynebailey
416
417 * users.py: Correcting some confusing or incorrect wording in user
418 creation
419
420 2005-03-29 16:35 dwaynebailey
421
422 * indexpage.py: Do not display the __dummy__ user Use getattr
423 function for getting email addresses as it can cope when there is
424 no value set.
425
426 2005-03-29 16:32 dwaynebailey
427
428 * pagelayout.py: Add an "Admin" quicklink if the user is a
429 siteadmin.
430
431 2005-03-28 15:09 dwaynebailey
432
433 * projects.py: The "Last-Translator" header field is now updated
434 during normal translation. No update is performed for a
435 suggestion but probably should be done - but who do we credit the
436 suggestor or the approver?
437
438 2005-03-28 09:56 dwaynebailey
439
440 * indexpage.py: Assignments now appear in alphabetical order
441
442 2005-03-27 20:40 dwaynebailey
443
444 * indexpage.py: "Show Checks" is not sorted alphabetically. had to
445 eliminate yield, iteritem and others so that we can sort the
446 dictionary keys. This should allow us to alternatively sort
447 these lists by the values also.
448
449 2005-03-27 14:01 dwaynebailey
450
451 * indexpage.py, pagelayout.py, pootle.py, translatepage.py: When a
452 user logs in they will be redirected to the folder that they were
453 browsing when they decided to login.
454
455 TODO currently if they are viewing a file they will be returned
456 to the folder that they started the view from they will not be
457 returned to the place were they were viewing.
458
459 2005-03-24 18:03 davidfraser
460
461 * translatepage.py: since PO files now handle encodings, all the
462 strings are unicode when grepping, so the searchtext should be
463 unicode too...
464
465 2005-03-24 16:50 dwaynebailey
466
467 * pagelayout.py: Quick link to users home page
468
469 2005-03-24 15:32 dwaynebailey
470
471 * indexpage.py: Remove "project root" from the sidebar and
472 integrate it into the top navbar
473
474 2005-03-24 14:34 dwaynebailey
475
476 * indexpage.py: No need for "current folder" and "parent folder" on
477 indepage as these are know accesibale throught the top directory
478 navigation bar.
479
480 2005-03-24 14:25 dwaynebailey
481
482 * indexpage.py: Make the title base links browsable so that you can
483 jump straight back to anywhere in the heirachy.
484
485 2005-03-22 07:29 dwaynebailey
486
487 * translatepage.py: Translation input textarea will now resize
488 depending on the size of the original or the translation. The
489 maximum is an arbitrary 10 rows.
490
491 2005-03-18 18:48 davidfraser
492
493 * TODO: added TODO abuot detecting languages
494
495 2005-03-18 18:40 davidfraser
496
497 * users.py: fixed syntax after actually running it :-)
498
499 2005-03-18 18:37 davidfraser
500
501 * projects.py: don't allow people to change English, and added TODO
502
503 2005-03-18 18:18 davidfraser
504
505 * users.py: don't allow a space in the email address
506
507 2005-03-18 15:06 dwaynebailey
508
509 * projects.py: Update PO-Revision-Date with proper timezone info.
510 Seems that there is a bug in Python where it forgets timezone
511 info.
512 http://mail.python.org/pipermail/patches/2003-July/012899.html
513
514 2005-03-18 14:45 davidfraser
515
516 * indexpage.py, projects.py: allow updating from templates from
517 project admin page renamed "create" to "converttemplates" which
518 is more accurate fixed it so it uses the new uploadpofile removed
519 debug print statement
520
521 2005-03-18 14:34 davidfraser
522
523 * projects.py: merged addnewpofile and mergepofile into
524 uploadpofile fixed variable name in mergeitems
525
526 2005-03-18 14:27 davidfraser
527
528 * indexpage.py, projects.py: added merging ability via mergefile
529 currently this copies translations if the existing translation is
530 blank, adds new strings (not in old file), and makes any changed
531 strings suggestions factored out getuploadpath from addnewpofile,
532 and added equivalent mergepofile these should probably both be
533 merged down to uploadpofile also use mergepofile from create,
534 though this needs development
535
536 2005-03-18 13:24 dwaynebailey
537
538 * indexpage.py, pootle.py, projects.py: Only make MO files
539 available to logged in users.
540
541 2005-03-18 13:08 davidfraser
542
543 * TODO: have fixed accepting/rejecting suggestions
544
545 2005-03-18 13:00 davidfraser
546
547 * projects.py: remove printout of track messages made
548 deletesuggestion actually find the relevant suggestion for the
549 correct item and delete that rather than just using suggitem as
550 an index into the whole pending file this still needs
551 improvements, but at least its not always wrong now
552
553 2005-03-18 12:38 davidfraser
554
555 * indexpage.py: refactored actions that can take place on IndexPage
556 into handleactions ensure that actions delete their arguments
557 from self.argdict, so they aren't placed into other links by
558 makelinks other argument handling moved to after handleactions
559
560 2005-03-16 12:38 davidfraser
561
562 * indexpage.py: added a localizable page title that includes the
563 projectname and the languagename
564
565 2005-03-16 12:19 davidfraser
566
567 * indexpage.py, pootle.py, projects.py: removed unneccessary
568 construction of translation before we try that construction :-)
569 added "archive" right which allows people to download zip files,
570 give it to logged-in users only display link to archive if
571 allowed to download it
572
573 2005-03-15 16:15 davidfraser
574
575 * translatepage.py: handle getting to the end of a translation
576 (self.item is None) when reviewing, and don't get suggestions
577
578 2005-03-15 16:11 davidfraser
579
580 * projects.py: actually create the directory when a new project is
581 created
582
583 2005-03-15 15:23 davidfraser
584
585 * pootle.py: made English the default language
586
587 2005-03-15 15:20 davidfraser
588
589 * projects.py: speedup for getlanguagecodes so it doesn't end up
590 recursing through directories looking for GNU files
591
592 2005-03-15 14:44 davidfraser
593
594 * pootle.py: get the correct encoding for PO files and set on the
595 header
596
597 2005-03-13 20:46 dwaynebailey
598
599 * indexpage.py, pootle.py, users.py: Allow users to change their
600 personal details
601
602 2005-03-13 11:21 dwaynebailey
603
604 * users.py: We now capture the users full name at registration.
605 Reordered the fields into something more logical.
606
607 2005-03-11 17:38 dwaynebailey
608
609 * pootle.prefs: Example setup for MO file generation
610
611 2005-03-11 17:32 dwaynebailey
612
613 * indexpage.py, pootle.py, projects.py: Allow download of MO files,
614 compiled on the fly from the PO file.
615
616 Admin users can specify if a project creates MO files. Projects
617 like OpenOffice.org, Mozilla, etc do not need MO file ever.
618
619 Correct HTTP content header to indicate correct encoding for CSV
620 and PO files (NOTE: this might cause a problem if the underlying
621 PO file is not UTF-8 encoded)
622
623 2005-03-11 17:22 davidfraser
624
625 * indexpage.py, projects.py: added ability to handle uploading zip
626 files (needs refinement) moved checking of upload file existence
627 from indexpage to projects use cStringIO rather than StringIO
628
629 2005-03-11 16:58 davidfraser
630
631 * projects.py: made hasgnufiles recurse subdirectories, and also
632 handle no languagecode (any language) also now uses directories
633 to detect non-gnustyle languagematch can also match any language
634 now if languagecode is None, using languagere
635
636 2005-03-11 16:57 davidfraser
637
638 * indexpage.py: slight simplification of
639 ProjectAdminPage.getlanguageitem
640
641 2005-03-11 16:41 davidfraser
642
643 * projects.py: implemented adding new languages to project based on
644 template .pot files added new method isgnustyle which returns
645 whether a whole project is gnustyle (needed when adding a new
646 language)
647
648 2005-03-11 15:49 davidfraser
649
650 * indexpage.py, pootle.py, projects.py: added project admin page
651 added ability to add new languages to a project (not yet
652 available for GNU-style projects) improved logic of hasproject
653
654 2005-03-11 15:18 davidfraser
655
656 * projects.py: handle regions being separated with _ and -
657
658 2005-03-11 15:10 davidfraser
659
660 * indexpage.py, projects.py: rather create the new file from within
661 the TranslationProject (this also allows us to add new checks...)
662
663 2005-03-11 13:57 davidfraser
664
665 * indexpage.py, projects.py: implemented PO file uploading also
666 converted the TranslationProject's initpootlefiles method to a
667 scanpofiles which will add / remove files that have appeared /
668 disappeared
669
670 2005-03-10 17:08 davidfraser
671
672 * translatepage.py: extract the stopped message directly rather
673 than using str() as the StopIteration won't handle unicode
674 properly (note that unicode(stoppedby) seems to call str first,
675 giving the same problem...)
676
677 2005-03-10 16:37 davidfraser
678
679 * pootle.py, translatepage.py: instead of returning to the
680 indexpage mystically when a search is finished, display a message
681 on the translatepage to indicate that (and display no
682 translations) this could be cleaned up but it already should make
683 things a lot cleaner...
684
685 2005-03-10 16:11 davidfraser
686
687 * pootle.py: updated to handle change to jToolkit requiring
688 webserver object (used for locking, logging etc) this will
689 require jToolkit source from 20050310 or later...
690
691 2005-03-09 13:33 dwaynebailey
692
693 * indexpage.py: Incorrect title for the user selected list of
694 languages
695
696 2005-03-09 13:26 dwaynebailey
697
698 * translatepage.py: Make "current folder" localizable
699
700 2005-03-08 22:27 davidfraser
701
702 * TODO, indexpage.py: made arguments to indexpage sticky (will be
703 remembered when going to other links, where sensible) this is
704 mostly done through the makelink method which can take keyword
705 arguments and override parameters, but otherwise includes all the
706 argdict parameters also added a helper getboolarg method for
707 reading boolean argument values
708
709 2005-03-08 21:35 davidfraser
710
711 * indexpage.py, pootle.py: split admin page up so projects and
712 languages are in separate pages
713
714 2005-03-08 16:06 davidfraser
715
716 * TODO: have done English login as default, and running without
717 Pootle PO files clarified that the PO files that need to be
718 generated are the Pootle ones
719
720 2005-03-08 16:01 davidfraser
721
722 * TODO: added TODOs from Durban feedback
723
724 2005-03-08 16:01 davidfraser
725
726 * projects.py: implemented removing languages / projects from
727 pootle don't try add a language unless a code is given
728
729 2005-03-07 22:20 dwaynebailey
730
731 * users.py, indexpage.py: Add capturing of user full name to the
732 user admin page
733
734 2005-03-07 21:31 dwaynebailey
735
736 * pootle.prefs: dummy needs and email address also
737
738 2005-03-07 21:26 dwaynebailey
739
740 * indexpage.py: Add missing new project field descriptors.
741
742 2005-03-07 16:45 davidfraser
743
744 * pootle.py: handle missing languages for pootle
745
746 2005-03-07 16:44 davidfraser
747
748 * pootle.prefs: fixed the dummy user so it doesn't cause problems
749
750 2005-03-07 16:24 davidfraser
751
752 * pootle.py, projects.py: add in more error checks and safeguards
753 for live translation, don't require it for pootle to run
754
755 2005-03-07 13:42 davidfraser
756
757 * users.py: replaced wrong variable name ...
758
759 2005-03-07 12:52 dwaynebailey
760
761 * indexpage.py: Correcting a localize problem Added entry fields
762 for project checker on the admin page
763
764 2005-03-04 17:16 davidfraser
765
766 * indexpage.py, projects.py, translatepage.py, html/pootle.css:
767 added the ability to show tracks of what has been changed...
768
769 2005-03-04 16:17 davidfraser
770
771 * TODO, indexpage.py, projects.py: added unassignments and remove
772 links to remove assignments...
773
774 2005-03-04 15:49 davidfraser
775
776 * indexpage.py: added link to user admin page
777
778 2005-03-04 15:42 davidfraser
779
780 * TODO: added yet more thigns to do :-)
781
782 2005-03-04 15:34 davidfraser
783
784 * indexpage.py, pootle.py, users.py: added user admin page where
785 you can add pages
786
787 2005-03-03 18:48 davidfraser
788
789 * projects.py: don't assume classname is in self.classify (from a
790 traceback, this happened)
791
792 2005-03-03 18:42 davidfraser
793
794 * projects.py: updated gettext with real code from ugettext
795
796 2005-03-03 13:46 davidfraser
797
798 * projects.py: make regional directory names return the full path,
799 not just the name
800
801 2005-03-02 23:52 davidfraser
802
803 * projects.py: removed debug print statements for ugettext
804
805 2005-03-02 23:49 davidfraser
806
807 * translatepage.py: only show assigns box if showassigns is true
808 (need a way to set this parameter without adding it to the URL
809 manually) disabled assignments requirement for now...
810
811 2005-03-02 09:35 davidfraser
812
813 * projects.py: readpofile got deleted inadvertently in last commit,
814 restoring
815
816 2005-03-01 21:57 davidfraser
817
818 * pootle.py, projects.py: use the pootle project to translate
819 itself live, by adding the required methods to the
820 TranslationProject and hooking them up in the server
821
822 2005-03-01 20:57 davidfraser
823
824 * pootle.prefs, projects.py: simplified po directory structure
825 rather than allowing multiple directories, allow only one,
826 defined on the instance as podirectory also, don't allow/require
827 the user to specify the $project and $language components of the
828 directory directories must be defined as project/language under
829 the main po directory for GNU-style directories, they must simply
830 be project under the main po directory
831
832 2005-02-28 17:20 davidfraser
833
834 * indexpage.py: only show the assignment box if show assigns is
835 selected
836
837 2005-02-26 00:42 davidfraser
838
839 * translatepage.py: added assign box for site admin on translate
840 page also set default search to only search assignments... this
841 needs to be fixed up properly!
842
843 2005-02-26 00:13 davidfraser
844
845 * indexpage.py, projects.py: added basic interface to let site
846 admin assign things to users
847
848 2005-02-25 23:37 davidfraser
849
850 * indexpage.py, projects.py: added interface to show assignments
851
852 2005-02-16 16:54 davidfraser
853
854 * html/doc/resources.html: added a link to the wiki
855
856 2005-02-16 12:19 davidfraser
857
858 * html/doc/: index.html, resources.html: added explanation, link to
859 resources, and took out leftover "up" link
860
861 2005-02-16 12:09 davidfraser
862
863 * pagelayout.py: added link to documentation
864
865 2005-02-16 12:09 davidfraser
866
867 * html/doc/index.html: added simple doc index
868
869 2005-02-16 12:03 davidfraser
870
871 * html/doc/howto.html: fixed links that pointed to html dir
872
873 2005-02-14 16:55 davidfraser
874
875 * projects.py: simplified the code for checking language / region
876 codes using sre
877
878 2005-02-14 16:46 davidfraser
879
880 * projects.py: added a function to make filenames with language and
881 region code match for gnu-style projects note that this implies
882 that if there is more than one region for a language, all the
883 regions will match
884
885 2005-02-14 14:03 davidfraser
886
887 * projects.py: fixed alphanum -> alnum and allow underscores in
888 project names
889
890 2005-02-11 14:36 dwaynebailey
891
892 * html/doc/howto.html: HOWTO use Pootle by Kamber Dotan
893 <kamberd@yahoo.com>
894
895 2005-02-10 17:45 davidfraser
896
897 * projects.py: added some simple PyLucene-based indexing (only will
898 run if PyLucene is installed) this needs to be redone to handle
899 individual items, but already speeds up text search a lot by
900 skipping over files that don't have the given text
901
902 2005-02-04 09:01 davidfraser
903
904 * projects.py: if we don't have a new project code, then ignore the
905 blank value...
906
907 2005-02-04 08:58 davidfraser
908
909 * projects.py: added better check for projectcode (could contain
910 numbers too)
911
912 2005-02-04 08:54 davidfraser
913
914 * indexpage.py: added title for checker style, and actually
915 retrieve it TODO: get rid of these getter methods, do it sensibly
916 :-)
917
918 2005-02-04 08:49 davidfraser
919
920 * projects.py: fixed pychecker errors (session -> self.session,
921 unneccessary import, variable misname, unused variable)
922
923 2005-01-30 18:34 dwaynebailey
924
925 * indexpage.py, pootle.prefs, projects.py: You can now set the
926 checker style for the project. Might be good to later make this
927 more fine grained so yo can make custom syles.
928
929 2005-01-28 18:41 davidfraser
930
931 * indexpage.py: if the user doesn't have any quicklinks, explain
932 why...
933
934 2005-01-28 18:40 davidfraser
935
936 * TODO: now have an admin page :-)
937
938 2005-01-28 18:33 davidfraser
939
940 * indexpage.py, pootle.py: added general options section to admin
941 page, code to change options to PootleServer added default values
942 for title and description, set them if missing in PootleServer
943
944 2005-01-28 18:14 davidfraser
945
946 * indexpage.py, projects.py: ability to add new languages and
947 projects via the admin page
948
949 2005-01-28 18:04 davidfraser
950
951 * indexpage.py: added titles to admin page tables, made sure Remove
952 %s is localized
953
954 2005-01-28 17:58 davidfraser
955
956 * indexpage.py, pootle.py, projects.py: added projects editing to
957 language page, similar to language editing
958
959 2005-01-28 17:50 davidfraser
960
961 * indexpage.py, pootle.py, projects.py: added admin page which
962 should let the site admin add/remove/change languages/projects
963 etc underlying changes are done through the potree which can now
964 save the prefs file
965
966 2005-01-28 17:26 davidfraser
967
968 * users.py: a cleaner way of validating the projects and languages
969 in a user's prefs...
970
971 2005-01-28 17:14 davidfraser
972
973 * users.py: make sure that if there are no projects or languages
974 defined we don't return a "" code...
975
976 2005-01-28 17:01 davidfraser
977
978 * indexpage.py, pootle.py: split up the user options into a
979 separate page took out verbose admin page description
980
981 2005-01-28 16:54 davidfraser
982
983 * indexpage.py: replaced all the strange ways of setting up titles
984 with a simple pagelayout.Title in so doing corrected a h2 ... h3
985 that caused layout problems
986
987 2005-01-28 16:37 davidfraser
988
989 * indexpage.py, pagelayout.py: added pagelayout.Title class to
990 prevent repitition (only one entry changed) added a link to a
991 (not yet existing) site admin page if the user is a siteadmin
992
993 2005-01-28 16:34 davidfraser
994
995 * users.py: make sure that the session's prefs get updated when the
996 session is opened or closed add a method to check if the current
997 user has site admin rights
998
999 2005-01-28 16:09 davidfraser
1000
1001 * pagelayout.py: removed some stuff from the Sidebar (shrinking it
1002 to move it to the top)
1003
1004 2005-01-28 16:07 davidfraser
1005
1006 * indexpage.py, pootle.py: added about page, with more details
1007 about the pootle project etc (moved some of that off the home
1008 page)
1009
1010 2005-01-28 15:29 davidfraser
1011
1012 * pootle.py, users.py: changed my/ home directory to home/ (after
1013 all, my/ is Burmese :-)) simplified PootleSession code by adding
1014 .prefs attribute started adding rights code
1015
1016 2005-01-28 15:07 davidfraser
1017
1018 * pootle.py: go to user page after login
1019
1020 2005-01-25 07:32 davidfraser
1021
1022 * indexpage.py: added language titles to user quicklinks
1023
1024 2005-01-25 07:23 davidfraser
1025
1026 * indexpage.py: only show projects that exist in user quicklinks
1027
1028 2005-01-25 07:21 davidfraser
1029
1030 * indexpage.py: added quick links to project-language combinations
1031 for user fixed up docstrings
1032
1033 2005-01-25 07:02 davidfraser
1034
1035 * users.py, indexpage.py, pootle.py: movied saveuserprefs onto the
1036 session object added ability to set user languages in my page
1037 save prefs when user changes options
1038
1039 2005-01-24 21:52 davidfraser
1040
1041 * pootle.py, indexpage.py, users.py: added functions to help store
1042 user prefs added initial /my page where the user can choose
1043 projects
1044
1045 2005-01-24 17:50 davidfraser
1046
1047 * TODO: added TODO about plurals
1048
1049 2005-01-24 17:36 davidfraser
1050
1051 * pootle.py, users.py: moved some more registration / activation
1052 code into the users module where it belongs
1053
1054 2005-01-24 17:14 davidfraser
1055
1056 * projects.py: return the first string for plural msgstr (and added
1057 a TODO to handle this properly)
1058
1059 2005-01-24 16:08 davidfraser
1060
1061 * users.py: fixed an old session.localize that should have been
1062 self, and was misspelt!
1063
1064 2005-01-20 12:27 davidfraser
1065
1066 * translatepage.py: reduce needs an initial value in case diffcodes
1067 is empty (no difference)
1068
1069 2005-01-20 10:50 davidfraser
1070
1071 * html/pootle.css: added border for diff styles so that the
1072 insertion / removal place can be seen in the other string even
1073 though it contains no text
1074
1075 2005-01-20 10:43 davidfraser
1076
1077 * translatepage.py, html/pootle.css: use tags to represent
1078 different kinds of changes when displaying diffs this gives us
1079 red background for removed text, green for added, yellow for
1080 modified
1081
1082 2005-01-19 22:48 davidfraser
1083
1084 * indexpage.py: added a link to an archive of the current folder's
1085 po files don't actually need to import projects as we use
1086 everything via the potree object
1087
1088 2005-01-19 22:47 davidfraser
1089
1090 * pootle.py, projects.py: added ability to make archives of zip
1091 files, either using the zip command line tool or python's zipfile
1092 module (which is slower)
1093
1094 2005-01-19 20:54 davidfraser
1095
1096 * pootle.py: set localedomains so it's not required in the prefs
1097 file
1098
1099 2005-01-19 20:15 davidfraser
1100
1101 * TODO: fixed escaping and quoting problems
1102
1103 2005-01-19 20:12 davidfraser
1104
1105 * projects.py: added methods "unquotefrompo" and "quoteforpo" to
1106 mirror the functions in translate.storage.po, but allow us to
1107 tweak them as desired the only current required tweak is to
1108 ignore the \r before \n sent with submitted text strings
1109
1110 2005-01-19 16:24 davidfraser
1111
1112 * projects.py: we shouldn't include escapes in unquoted strings...
1113
1114 2005-01-19 14:01 dwaynebailey
1115
1116 * TODO: Some pointers for compilation
1117
1118 2005-01-19 13:39 davidfraser
1119
1120 * translatepage.py: try to space out the original text better using
1121 the line breaks from the po file handle quoting of the pofilename
1122 properly when its in a URL (other + will get translated to space)
1123
1124 2005-01-19 12:40 davidfraser
1125
1126 * projects.py: added a custom filter error handler so errors in
1127 filters don't prevent work happening, they just record the filter
1128 as failing
1129
1130 2005-01-19 11:18 davidfraser
1131
1132 * translatepage.py: escape orig and trans text properly also escape
1133 inside suggestions which needs to be done when highlighting the
1134 diffs to prevent confusion
1135
1136 2005-01-19 10:52 davidfraser
1137
1138 * indexpage.py, pagelayout.py: always display the project root, and
1139 give it some proper text (project and language) and description
1140 also display it before the current/parent folder add ability to
1141 have tooltip in folderlinks
1142
1143 2005-01-19 10:51 davidfraser
1144
1145 * projects.py: store the projectdescription as an attribute on the
1146 TranslationProject
1147
1148 2005-01-19 10:35 davidfraser
1149
1150 * indexpage.py: added projectdescription in other indexes
1151
1152 2005-01-19 10:32 davidfraser
1153
1154 * pootle.py, projects.py: check if project exists at all when
1155 looking in projects folder (e.g. 'favicon.ico' is not a project
1156 :-)) ability to check if project exists at all when languagecode
1157 is none in potree.hasproject
1158
1159 2005-01-19 10:31 davidfraser
1160
1161 * html/pootle.css: make table titles bold centered and colored
1162
1163 2005-01-19 10:24 davidfraser
1164
1165 * pootle.py: ignoring languagenames if the list is empty has now
1166 been done in jToolkit
1167
1168 2005-01-14 13:08 dwaynebailey
1169
1170 * indexpage.py, pootle.prefs, projects.py: Projects listed on the
1171 front page now have a tooltip which gives a short description of
1172 the project.
1173
1174 2005-01-14 13:03 davidfraser
1175
1176 * indexpage.py, pagelayout.py, pootle.py, translatepage.py,
1177 users.py: fixed up localize code - generally use self.localize
1178 instead of session.localize since that isn't available everywhere
1179 if no languages are avilable for login, don't show the dropdown
1180 box
1181
1182 2005-01-14 12:14 davidfraser
1183
1184 * pagelayout.py, html/favicon.ico: added favicon support
1185
1186 2005-01-13 15:16 dwaynebailey
1187
1188 * TODO: Bug in searching at the PO files level
1189
1190 2005-01-13 15:08 dwaynebailey
1191
1192 * TODO: Goto specific message wish
1193
1194 2005-01-12 15:09 dwaynebailey
1195
1196 * indexpage.py, pagelayout.py, projects.py, translatepage.py,
1197 users.py: Add session.localize everywhere so that we can create
1198 translated versions of Pootle. Still needs language selection
1199 enabled and checking to see that we have everything and haven't
1200 broken anything. Then translation can begin. Only about 250
1201 words of translation required.
1202
1203 2005-01-12 14:31 davidfraser
1204
1205 * TODO: what's the point of a TODO list if it doesn't keep growing?
1206 stuff heather wants, and registration is basically working now
1207
1208 2005-01-12 12:52 davidfraser
1209
1210 * pootle.py, users.py: started moving user handling code into new
1211 users.py module
1212
1213 2005-01-12 12:03 davidfraser
1214
1215 * pootle.py: improved some mesages
1216
1217 2005-01-12 12:00 davidfraser
1218
1219 * pootle.py: remove inadvertent commit
1220
1221 2005-01-12 11:51 davidfraser
1222
1223 * pootle.py: don't show session status unless it is! show link when
1224 redirecting
1225
1226 2005-01-12 11:44 davidfraser
1227
1228 * pootle.py: more email cleanup, use mailer support for reply-to so
1229 it works properly
1230
1231 2005-01-12 11:37 davidfraser
1232
1233 * pootle.py: make registration errors have their own class so we
1234 don't miss underlying errors added support email address improved
1235 messages do real check for email address, only check password on
1236 new registration
1237
1238 2005-01-12 11:09 davidfraser
1239
1240 * pootle.py: tried to simplify registration / activation process by
1241 automatically filling in username where possible also try to add
1242 a direct activate link to the account creation email, and tried
1243 to improve email error message
1244
1245 2005-01-12 10:49 davidfraser
1246
1247 * html/robots.txt: exclude search engines from pootle
1248
1249 2005-01-11 16:37 davidfraser
1250
1251 * TODO: we can now detect languages in GNU-style directories by
1252 checking if there any files for a language
1253
1254 2005-01-11 14:05 davidfraser
1255
1256 * projects.py: do a full recount for refreshstats handle mismatch
1257 of string type between msgid and msgstr
1258
1259 2005-01-11 13:59 davidfraser
1260
1261 * projects.py: make sure if a project is gnu-style that we check
1262 that files actually exist before reporting hasproject = True
1263
1264 2005-01-10 16:48 davidfraser
1265
1266 * pootle.py: extracted main into separate function
1267
1268 2005-01-10 16:47 davidfraser
1269
1270 * projects.py: added further check on modify time in timecache
1271
1272 2005-01-10 13:06 davidfraser
1273
1274 * projects.py: added initial code to try and reduce memory
1275 requirements by using a timecache for pofiles and expiring them
1276 (reverting from parsed file to mere stats) after 15 minutes
1277
1278 2005-01-10 12:31 davidfraser
1279
1280 * translatepage.py: error when search finished didn't include
1281 searchtext
1282
1283 2005-01-10 11:36 davidfraser
1284
1285 * TODO: have done separate prefs files for users, changed priority
1286 of upload
1287
1288 2005-01-10 10:46 davidfraser
1289
1290 * pootle.py: updated to work with new loginchecker in jToolkit, and
1291 handle separate userprefs files
1292
1293 2005-01-05 19:41 dwaynebailey
1294
1295 * TODO: Some wishes and some bugs
1296
1297 2004-12-31 17:21 dwaynebailey
1298
1299 * TODO: Allow custom headers for downloaded PO files so that users
1300 will not have to configure (or break things) with a po file in
1301 for instance PO edit.
1302
1303 2004-12-20 12:29 davidfraser
1304
1305 * TODO: added TODO about quotes
1306
1307 2004-12-17 12:48 davidfraser
1308
1309 * pagelayout.py: added link to Activate since the redirection seems
1310 broken and people can't find it
1311
1312 2004-12-17 10:53 dwaynebailey
1313
1314 * README: Reflow and other layout fixes. Make things read a bit
1315 better and ... I'm sure add some spelling mistakes.
1316
1317 2004-12-14 16:30 davidfraser
1318
1319 * html/images/: edit.png, file.png, folder.png, person.png: added
1320 new icon images
1321
1322 2004-12-14 15:21 davidfraser
1323
1324 * translatepage.py: show the number of strings in the current po
1325 file in the current position also calculate lastitem correctly if
1326 its the last item in the file
1327
1328 2004-12-09 17:16 davidfraser
1329
1330 * pagelayout.py, translatepage.py, html/pootle.css: added
1331 background color alternation for translations note that tooltips
1332 for checks are now gone ...
1333
1334 2004-12-09 16:32 davidfraser
1335
1336 * translatepage.py, pagelayout.py, html/pootle.css: put odd and
1337 even styles into css rather than calculating font colors
1338
1339 2004-12-09 15:30 davidfraser
1340
1341 * translatepage.py: stopped automatically limiting to assigned work
1342 when logged in instead, use URL parameters. Still need to create
1343 links to these ...
1344
1345 2004-12-09 13:31 davidfraser
1346
1347 * translatepage.py: added page links to bottom of form too made
1348 page link numbers viewable for humans by adding 1 :-)
1349
1350 2004-12-09 13:13 davidfraser
1351
1352 * translatepage.py: refactored pagelinks into getpagelinks, added
1353 description of current items
1354
1355 2004-12-09 12:53 davidfraser
1356
1357 * translatepage.py: don't show translated text as a text area if
1358 you can't change it
1359
1360 2004-12-09 12:52 davidfraser
1361
1362 * TODO: added TODOs that have come up through testing
1363
1364 2004-12-09 12:49 davidfraser
1365
1366 * indexpage.py, translatepage.py: changed links for quick
1367 translate, review suggestions so they are present even if user
1368 has no rights, but have a different name don't switch into view
1369 mode if user can't translate, as they can only skip through the
1370 translations anyway
1371
1372 2004-12-09 12:44 davidfraser
1373
1374 * translatepage.py: implemented more fine-grained rights control
1375 over which buttons are shown added some docstrings allow
1376 reviewmode even if not allowed to review, as only skip buttons
1377 will be shown
1378
1379 2004-12-09 12:34 davidfraser
1380
1381 * pootle.py, projects.py: generate RightsErrors if people try and
1382 make changes they're not allowed to
1383
1384 2004-12-09 12:28 davidfraser
1385
1386 * indexpage.py, projects.py, translatepage.py: added basic rights
1387 management. currently this limits any changes to logged-in
1388 users. it only works by disabling links, more work is needed
1389
1390 2004-12-09 12:08 dwaynebailey
1391
1392 * TODO: Add wish for download of compiled PO and Qt .ts files
1393
1394 2004-12-08 11:14 davidfraser
1395
1396 * indexpage.py: fixed main link which should always point to the
1397 current folder
1398
1399 2004-12-08 11:10 davidfraser
1400
1401 * indexpage.py, pagelayout.py: polarity was done before sort, fixed
1402 it so its easy to set on the item and do it after the sort
1403
1404 2004-12-07 16:58 davidfraser
1405
1406 * html/images/pootle.jpg: hand-drawn cartoon
1407
1408 2004-12-07 16:53 davidfraser
1409
1410 * indexpage.py, pagelayout.py, html/pootle.css: added switching
1411 background color for alternating item rows
1412
1413 2004-12-07 16:38 davidfraser
1414
1415 * indexpage.py: made headings always link to item so we don't need
1416 "Browse/View" added getbrowseurl function to make that easier
1417 added option to say which links are required from getactionlinks
1418 leave out checks by default, only show in heading changed checks
1419 to show/hide checks based on current value fixed showchecks
1420 detection (work if it comes in as unicode)
1421
1422 2004-12-07 16:21 davidfraser
1423
1424 * html/pootle.css: added icon style (floating)
1425
1426 2004-12-07 16:16 davidfraser
1427
1428 * indexpage.py, pagelayout.py: added some icons, and sorted
1429 directories and files added an Icon class
1430
1431 2004-12-06 23:03 davidfraser
1432
1433 * projects.py, translatepage.py: record who suggested a suggestion
1434 in the msgid comment, look it up when displaying it later. fairly
1435 crude
1436
1437 2004-12-06 22:46 davidfraser
1438
1439 * README, projects.py: keep track of our latest pomtime in
1440 pootlefile so we re-read the file if it changes we use
1441 self.pomtime to reflect whether we have parsed the file as well
1442 (note: this needs to be done with care so that it is only set
1443 after parsing and classification and stats are done) new method
1444 pofreshen can be used to make sure the file is parsed and up to
1445 date updated the README to reflect the fact that reindexing is
1446 now automatic also added a note about how to do assignments
1447
1448 2004-12-06 22:15 davidfraser
1449
1450 * translatepage.py: set search.assignedaction based on the current
1451 mode (search for things the user has been assigned to
1452 review/suggest)
1453
1454 2004-12-06 22:09 davidfraser
1455
1456 * projects.py, translatepage.py: refactored pofilename searching
1457 into separate method matchessearch for each pofilename added
1458 assignment searching to pofilename searching replaced
1459 search.assigncondition with search.assignedto and
1460 search.assignedaction improved pootlefile.iteritems to handle
1461 either/both search.assign attributes fixed up docstrings to
1462 reflect new search parameter updated translatepage to use the new
1463 Search syntax
1464
1465 2004-12-06 21:33 davidfraser
1466
1467 * projects.py, translatepage.py: rearranged all the search
1468 parameters into a single object to make it easier to pass them
1469 around
1470
1471 2004-12-06 20:13 davidfraser
1472
1473 * translatepage.py: redid editlinks to float at the top right of
1474 the cell ; in this way they don't appear "out the box"
1475
1476 2004-12-06 11:05 davidfraser
1477
1478 * pootle.py: was sending the submitted password to the original
1479 email address which was nuts we don't have the actual password,
1480 only the md5sum, but send it anyway :-)
1481
1482 2004-12-06 10:46 davidfraser
1483
1484 * projects.py, translatepage.py: added the ability to search within
1485 a file based on assign conditions (file searches still need this)
1486 added "suggest" assignment search when logged in
1487
1488 2004-12-05 12:17 davidfraser
1489
1490 * projects.py: added code for handling ".assigns" files which store
1491 who has been assigned what ...
1492
1493 2004-12-05 11:45 davidfraser
1494
1495 * projects.py: added caching for pending files (if file is updated
1496 it will be re-read) store pending file time in stats file, since
1497 it depends on that too... added method to reclassify all items'
1498 suggestion status moved project.iterpoitems to pofile.iteritems,
1499 call getstats to update them if required
1500
1501 2004-12-05 10:55 davidfraser
1502
1503 * projects.py: getmodtime needs absolute, not relative filename
1504
1505 2004-12-05 10:53 davidfraser
1506
1507 * projects.py: made getmodtime a function that takes a filename so
1508 it is useful for files other than pofile.filename
1509
1510 2004-12-05 10:43 davidfraser
1511
1512 * projects.py, translatepage.py: removed code storing lastitem,
1513 pofilename on session (since they're stored in the browser state
1514 anyway)
1515
1516 2004-12-05 10:04 davidfraser
1517
1518 * projects.py: cache the mtime of the stats file as well so if it
1519 is changed it will be re-read automatically this should enable
1520 updating the stats separately to the web server
1521
1522 2004-12-05 09:50 davidfraser
1523
1524 * indexpage.py: mainstats was passing actual directory rather than
1525 relative one ("") to getitemstats so check links were wrong
1526
1527 2004-12-05 09:42 davidfraser
1528
1529 * projects.py: fixed up logic for when to read stats, handling
1530 missing stats files save stats after reclassifying elements
1531 removed translationproject's stats cache, renamed initstatscache
1532 to initpootlefiles
1533
1534 2004-12-05 09:22 davidfraser
1535
1536 * indexpage.py: blank dirfilter should be None so the logic works
1537 right
1538
1539 2004-12-04 22:48 davidfraser
1540
1541 * projects.py: major refactor of TranslationProject so most of the
1542 POfile-specific stuff gets handled in pootlefile, derived from
1543 pofile bugs remain (it will forget about all your strings) but
1544 once they're fixed it'll be lekka :-)
1545
1546 2004-12-04 22:34 davidfraser
1547
1548 * translatepage.py, html/pootle.css: made the current editable row
1549 highlighted in light gray (found this in the prototype, looks
1550 leet)
1551
1552 2004-12-03 23:37 davidfraser
1553
1554 * TODO, projects.py: added basic support for GNU-style
1555 project/languagecode.po this has made the code too complex,
1556 hopefully can be simplified
1557
1558 2004-12-03 23:17 davidfraser
1559
1560 * pootle.py: remember email address fixed emailing (needs message
1561 to be a proper mail message)
1562
1563 2004-12-03 23:05 davidfraser
1564
1565 * pootle.prefs: set baseurl to / which should work in most cases
1566 added default smtpserver of localhost (for registration emails
1567 etc)
1568
1569 2004-12-03 23:05 davidfraser
1570
1571 * pootle.py: added basic system for registration and activation
1572 changed to allow user to specify password added minimum password
1573 length of 6 improved operation in frozen conditions (e.g. py2exe)
1574 by setting directory names properly
1575
1576 2004-12-03 22:29 dwaynebailey
1577
1578 * TODO: More things to do
1579
1580 2004-12-03 21:44 davidfraser
1581
1582 * translatepage.py: made suggestion captions start at 1 move skip
1583 button for suggestions to last suggdiv
1584
1585 2004-12-03 21:40 davidfraser
1586
1587 * projects.py: refactored method to get filenames so its actually
1588 done by potree, not the TranslationProject this should make it
1589 easier to handle the GNU-style layout fixed docstring for
1590 getpodir
1591
1592 2004-12-03 21:12 davidfraser
1593
1594 * TODO: moved translatathon requirements added requirement for
1595 GNU-style ar.po filenames
1596
1597 2004-12-03 17:43 davidfraser
1598
1599 * indexpage.py: added stats for the main item (if it's not a po
1600 file, in which case you can see them under the po file) corrected
1601 links for check names (were missing a &)
1602
1603 2004-12-03 16:26 dwaynebailey
1604
1605 * TODO: More TODO items
1606
1607 2004-12-03 12:46 davidfraser
1608
1609 * TODO: added more TODOs from dwayne
1610
1611 2004-12-02 22:46 davidfraser
1612
1613 * indexpage.py, pagelayout.py, html/pootle.css: made the MainItem
1614 stand out ... link directory titles to Browse that directory
1615 handle dirfilter being None intelligently
1616
1617 2004-12-02 22:29 davidfraser
1618
1619 * TODO, indexpage.py, html/pootle.css: don't show actionlinks if
1620 dirfilter is a po file, and put them in a standard Item reordered
1621 code to make it more logical, put navlinks into separate function
1622 adjusted stylesheet so margin is below whole item, not only if it
1623 has statistics
1624
1625 2004-12-02 21:55 davidfraser
1626
1627 * indexpage.py: refactored main action links (at top of page) to
1628 use getactionlinks too factored out new method getchilditems
1629 rather than having this in the constructor checkslink was never
1630 included, also handle basename == "" in getactionlinks
1631
1632 2004-12-02 21:45 davidfraser
1633
1634 * indexpage.py: refactored ProjectIndex to share more code between
1635 diritem and fileitem
1636
1637 2004-12-02 21:12 davidfraser
1638
1639 * projects.py: use new keyword arguments to pogrepfilter
1640
1641 2004-12-02 16:20 davidfraser
1642
1643 * html/pootle.css: removed gratuitous spacing and case-changes
1644
1645 2004-12-02 16:18 davidfraser
1646
1647 * TODO: added basic diffing, so it's not TODO anymore :-)
1648
1649 2004-11-29 15:42 davidfraser
1650
1651 * translatepage.py: rearranged breaks in review mode, added skip
1652 button
1653
1654 2004-11-29 15:01 davidfraser
1655
1656 * translatepage.py: added basic diffs using difflib (tries to
1657 highlight in yellow what has changed) (handles multiple
1658 suggestions in a semi-intelligent way) added breaks between lines
1659 in review...
1660
1661 2004-11-27 23:05 davidfraser
1662
1663 * translatepage.py: added hidden widget for suggestion text so we
1664 know what it is when processing the form
1665
1666 2004-11-27 22:44 davidfraser
1667
1668 * projects.py: sort languages and projects by code...
1669
1670 2004-11-27 19:01 davidfraser
1671
1672 * translatepage.py: changed 'original' in review to 'Current
1673 Translation'
1674
1675 2004-11-27 18:48 davidfraser
1676
1677 * translatepage.py: simplify suggestions system so they're not
1678 editable text boxes...
1679
1680 2004-11-27 18:24 davidfraser
1681
1682 * pootle.py, projects.py: added ability to manually refresh all the
1683 stats from the commandline...
1684
1685 2004-11-27 18:06 davidfraser
1686
1687 * TODO: we need to be able to distinguish between (for example)
1688 pt_BR and pt_PR, and openoffice 1.1.3 and openoffice 2.0
1689
1690 2004-11-27 18:03 davidfraser
1691
1692 * indexpage.py, pootle.py, projects.py: added a project page for
1693 each project that lists the valid languages added a method to
1694 potree that lets you get the languagecodes for a specific project
1695
1696 2004-11-27 17:31 davidfraser
1697
1698 * indexpage.py, pootle.prefs, projects.py: changed the structure of
1699 pootle.prefs so instead of having to define every project under
1700 every language, you define: projects, in its own top-level tree
1701 languages, in its own top-level tree directories, using
1702 "$project" and "$language" to denote project (you can either
1703 just define a directorysearch as a string, or have a node which
1704 defines the project / language and a directory - see the
1705 examples) added links to projects as well (still need to define
1706 index for them...)
1707
1708 2004-11-27 16:53 davidfraser
1709
1710 * pagelayout.py: use SeparatedList for linking ActionLinks together
1711
1712 2004-11-27 16:36 davidfraser
1713
1714 * TODO, indexpage.py, projects.py: when suggestions are made or
1715 rejected, delete the stats to invalidate them in indexpage, only
1716 show "review" links if the item has suggestions
1717
1718 2004-11-27 16:14 davidfraser
1719
1720 * translatepage.py: need access to translations to calculate links,
1721 so making a member of translatepage...
1722
1723 2004-11-26 14:50 davidfraser
1724
1725 * TODO: added new requirements from Dwayne
1726
1727 2004-11-25 15:00 davidfraser
1728
1729 * TODO: added TODOs, mostly for what would be needed for a
1730 translatathon
1731
1732 2004-11-25 12:18 davidfraser
1733
1734 * README, __init__.py, pootle.prefs, pootle.py, server.py: renamed
1735 server.py to pootle.py so it's a more sensible thing to run...
1736 NOTE: this requires change the prefs' import statement (See
1737 pootle.prefs)
1738
1739 2004-11-23 23:32 davidfraser
1740
1741 * html/images/logo.gif: remove gif file (have png)
1742
1743 2004-11-23 23:30 davidfraser
1744
1745 * pagelayout.py: replaced gif with png
1746
1747 2004-11-23 23:29 davidfraser
1748
1749 * html/images/: gap.png, logo.png, top.png: replaced gif with png
1750 and added missing files
1751
1752 2004-11-23 23:27 davidfraser
1753
1754 * projects.py, translatepage.py: made suggest/submit user
1755 selectable (will be configured later) - separate button to submit
1756 suggestion / change got rid of unused (and confusing!) contents
1757 variable
1758
1759 2004-11-23 23:03 davidfraser
1760
1761 * projects.py: fixes to logic so has-suggestion statistics are kept
1762 correct, and pending files are saved at the right time
1763
1764 2004-11-23 22:48 davidfraser
1765
1766 * translatepage.py: remember last item for skips, accepts, rejects,
1767 not just submits made a tooltip on the original text showing the
1768 classes it belongs to...
1769
1770 2004-11-23 22:40 davidfraser
1771
1772 * projects.py, translatepage.py: require the suggestion item number
1773 for acceptsuggestion and rejectsuggestion, and remove from the
1774 pending file this is fairly brutal and no checks are done rename
1775 TranslatePage.translationsession to .session to save long names
1776 :-)
1777
1778 2004-11-23 22:36 davidfraser
1779
1780 * indexpage.py: added reviewlink to main toolbar fixed up review
1781 URLs to include the basename properly
1782
1783 2004-11-23 22:34 davidfraser
1784
1785 * translatepage.py: refactored receivetranslations so it can handle
1786 multiple actions - skip, submit, accept, reject this works by
1787 having an id (item or item.suggid) in each button which will only
1788 be received if the item is clicked moved call to gettranslations
1789 to inside maketable this allows us to call getsuggestions from
1790 there too to handle the review process refactored getorigcell /
1791 gettranscell to only fetch the div specialized gettrans into
1792 gettransedit/review/view replaced all row-based ids with absolute
1793 item-based ids (that actually refer to the item number in the po
1794 file)
1795
1796 2004-11-23 22:32 davidfraser
1797
1798 * projects.py: added stubs to accept / reject suggestions modified
1799 checks for pofile being a filename to allow unicode too added
1800 existence check before deleting stats added TODO about caching
1801 pending file
1802
1803 2004-11-23 21:16 davidfraser
1804
1805 * html/pootle.css: make action links invisible by default
1806 (javascript will show them when needed)
1807
1808 2004-11-23 21:13 davidfraser
1809
1810 * translatepage.py: refactored table generation, moved stuff back
1811 into one method so it can be made more versatile
1812
1813 2004-11-20 17:35 davidfraser
1814
1815 * indexpage.py, translatepage.py: added initial review support.
1816 currently just prints out suggestions to command line
1817
1818 2004-11-20 17:34 davidfraser
1819
1820 * projects.py: let getsuggestions receive either a pofile or a
1821 pofilename
1822
1823 2004-11-20 17:27 davidfraser
1824
1825 * projects.py: added getsuggestions method for looking up
1826 suggestions for a particular item remember a pofile's filename
1827 (should actually do this anyway) added statistics calculation for
1828 suggestions provided more error-handling for stats files
1829
1830 2004-11-20 17:05 davidfraser
1831
1832 * projects.py: started adding support for suggestions by using
1833 pending files
1834
1835 2004-11-20 16:24 davidfraser
1836
1837 * translatepage.py: don't return blank and check-blank's blank ...
1838 also sort matchnames so output is consistent...
1839
1840 2004-11-20 15:55 davidfraser
1841
1842 * projects.py: added method to get list of classes an item belongs
1843 to
1844
1845 2004-11-20 15:54 davidfraser
1846
1847 * TODO: client ip lookup ability now in jToolkit
1848
1849 2004-11-17 10:42 davidfraser
1850
1851 * projects.py: added code so when an item is changed, we only have
1852 to reclassify that item, not all the elements in the pofile
1853
1854 2004-11-17 10:33 davidfraser
1855
1856 * projects.py: refactored classifyelements to use classifyelement
1857 for each element
1858
1859 2004-11-17 10:16 davidfraser
1860
1861 * projects.py: refactored classification code into classifyelements
1862 method reclassify elements after save...
1863
1864 2004-11-17 08:54 davidfraser
1865
1866 * html/pootle.css: float the translation text so it lines up better
1867 with the action
1868
1869 2004-11-16 23:08 davidfraser
1870
1871 * indexpage.py, translatepage.py: fixed up current folder links so
1872 when you are in a .po file they still point to the current folder
1873
1874 2004-11-16 23:00 davidfraser
1875
1876 * indexpage.py: made quick translate only appear if there are
1877 untranslated (or fuzzy) strings
1878
1879 2004-11-16 22:52 davidfraser
1880
1881 * pagelayout.py, translatepage.py, html/pootle.css,
1882 html/js/autoexpand.js: tried to make edit links floatable this is
1883 half working but the layout is hard :-)
1884
1885 2004-11-13 17:53 davidfraser
1886
1887 * TODO, pootle.prefs, projects.py, server.py: beefened up
1888 registration a little ... handles errors, requires proper
1889 username etc
1890
1891 2004-11-13 17:34 davidfraser
1892
1893 * pootle.prefs: Added demo prefs file
1894
1895 2004-11-13 17:33 davidfraser
1896
1897 * README, server.py: html is actually underneath this directory
1898 fixed wrong python file name in README added some notes
1899
1900 2004-11-13 17:25 davidfraser
1901
1902 * README: added simple README
1903
1904 2004-11-13 17:20 davidfraser
1905
1906 * indexpage.py, pagelayout.py, translatepage.py: refactored folder
1907 links so they're in pagelayout also moved addsearchbox to the
1908 main PootlePage object
1909
1910 2004-11-13 17:07 davidfraser
1911
1912 * TODO, indexpage.py, pagelayout.py, translatepage.py: moved
1913 searchbox construction into pagelayout added searchbox to index
1914 pages updated TODO
1915
1916 2004-11-13 16:55 davidfraser
1917
1918 * TODO, projects.py, translatepage.py: TranslationSession seems to
1919 be fading away ... easier to do direct through the project use
1920 project's searchpoitems rather than getnextitems from session,
1921 remember pofilename and last item for page added basic search
1922 using pogrep, to searchpoitems, and added text book to
1923 translation page for it
1924
1925 2004-11-13 16:30 davidfraser
1926
1927 * indexpage.py, pagelayout.py, html/pootle.css: made special class
1928 for action links so we can separate them out a bit... changed
1929 CSS so the separators aren't white!
1930
1931 2004-11-13 16:19 davidfraser
1932
1933 * TODO, projects.py: made each project use an appropriate checker
1934 also use special PO checkers that do checks on the whole poel
1935
1936 2004-11-13 16:10 davidfraser
1937
1938 * indexpage.py, translatepage.py: refactored links to file, folders
1939 in translatepage added links to current folder, parent folder,
1940 project root in indexpage
1941
1942 2004-11-13 15:47 davidfraser
1943
1944 * TODO, indexpage.py, projects.py, translatepage.py: did some more
1945 refactoring, got viewing / browsing working readonably got rid of
1946 getitemsbefore / getitemsafter, replaced with getitems move
1947 translationsession.getitem to translationproject where it makes
1948 more sense separated out the item finding in gettranslations to
1949 finditem, save it in self.item
1950
1951 2004-11-13 15:32 davidfraser
1952
1953 * projects.py, translatepage.py: fixed up page links with the help
1954 of a getpofilelen method
1955
1956 2004-11-13 15:29 davidfraser
1957
1958 * indexpage.py, translatepage.py: refactored translatepage
1959 gettranslations so the actual html table generation is done by
1960 maketable added link to "view" translations in which case you can
1961 browse through 10 at a time with links to previous / next
1962
1963 2004-11-13 15:05 davidfraser
1964
1965 * indexpage.py, server.py, translatepage.py: added code to catch
1966 when a set of search items is finished and display a message The
1967 message could probably be clearer but at least it works out if no
1968 items matched at all...
1969
1970 2004-11-13 14:40 davidfraser
1971
1972 * projects.py: refactored searching methods to create iterators
1973 makes it a lot more logical and coherent, and allows us to catch
1974 StopIteration exceptions elsewhere...
1975
1976 2004-11-13 14:12 davidfraser
1977
1978 * projects.py: rename translationproject -> project, getlanguage ->
1979 getlanguageprefs for clarity
1980
1981 2004-11-13 14:07 davidfraser
1982
1983 * indexpage.py, projects.py, server.py, translatepage.py: don't
1984 make language and project prefs accessible through POTree -
1985 rather iterate through codes renamed translationproject to
1986 project in indexpage, server restore showing full names for
1987 language, project where needed
1988
1989 2004-11-13 13:21 davidfraser
1990
1991 * projects.py, translatepage.py: made the TranslationProject use
1992 the potree to find its podir and other attributes added getpodir
1993 function to POTree renamed "translationproject" to "project" in
1994 translatepage.py
1995
1996 2004-11-13 13:17 davidfraser
1997
1998 * indexpage.py, projects.py, server.py, translatepage.py: finished
1999 up making sure we don't use the language and project prefnodes
2000 anywhere these are basically only used to get full names for
2001 languages/projects so provided functions to get those
2002
2003 2004-11-13 13:00 davidfraser
2004
2005 * translatepage.py: never renamed project, subproject to language,
2006 project...
2007
2008 2004-11-13 12:56 davidfraser
2009
2010 * indexpage.py, server.py: more conversion to potree rather than
2011 using prefnodes directly removed unused cachetables parameter
2012
2013 2004-11-13 12:48 davidfraser
2014
2015 * projects.py, server.py: filled out iterating methods in POTree
2016
2017 2004-11-13 12:37 davidfraser
2018
2019 * projects.py, server.py: added default options for startup added
2020 POTree class in projects, use that to manage languages/projects
2021 rather than reading from prefs directly
2022
2023 2004-11-10 09:13 davidfraser
2024
2025 * projects.py, translatepage.py: did some simplification of
2026 translation session, factored out getitem method made argdict a
2027 member of TranslatePage, to simplify access added Edit link for
2028 each item that lets you go straight to edit that item
2029
2030 2004-11-10 08:53 davidfraser
2031
2032 * indexpage.py, projects.py, server.py: pass argdict in to
2033 ProjectIndex, use that for showchecks rather than a special
2034 variable use showchecks parameter rather than checks.html to
2035 determine checking allow ProjectIndex to work on a single file
2036 added browse and checks links per file allow projects code to
2037 handle individual po files
2038
2039 2004-11-10 08:30 davidfraser
2040
2041 * TODO, indexpage.py, projects.py, translatepage.py: instead of
2042 translate page defaulting to quick translate, pass fuzzy and
2043 blank as parameters similarly projects code doesn't default to
2044 fuzzy & blank, it defaults to matchnames=[] which allows
2045 everything DONE: renamed start translate
2046
2047 2004-11-10 08:19 davidfraser
2048
2049 * indexpage.py: changed "Start Translating" to "Quick Translate"
2050 Don't show the name of the file everywhere for PO files
2051
2052 2004-11-10 08:14 davidfraser
2053
2054 * projects.py: renamed po2csvmod -> po2csv (filename changed)
2055
2056 2004-11-08 19:00 davidfraser
2057
2058 * TODO: Added pootle TODO
2059
2060 2004-11-04 22:11 davidfraser
2061
2062 * server.py: added mani program to allow server to run webserver
2063 itself (will allow deefault options in future)
2064
2065 2004-11-04 16:07 davidfraser
2066
2067 * projects.py: have made po2csv into po2csvmod.py and po2csv
2068
2069 2004-11-04 16:06 davidfraser
2070
2071 * translatepage.py: added list of checks in sidebar
2072
2073 2004-11-04 16:00 davidfraser
2074
2075 * indexpage.py, projects.py, server.py, translatepage.py: create
2076 clickable links to be able to go through files that failed checks
2077 dded matchnames as an option to TranslationSession.getnextitem
2078 only get translationproject once in server
2079
2080 2004-11-04 15:43 davidfraser
2081
2082 * indexpage.py: factored out check details, apply it to both dirs
2083 and files (also don't say "files" when summarising a file...)
2084
2085 2004-11-04 15:35 davidfraser
2086
2087 * indexpage.py, projects.py: renamed the checks to check- so we
2088 don't show normal statistics as checks
2089
2090 2004-11-04 15:28 davidfraser
2091
2092 * indexpage.py, projects.py, server.py, html/pootle.css: added code
2093 to include checks and show statistics on them ...
2094
2095 2004-11-04 14:33 davidfraser
2096
2097 * projects.py: renamed subproject to project
2098
2099 2004-11-04 10:31 davidfraser
2100
2101 * indexpage.py: refactored summarizing statistics
2102
2103 2004-11-03 22:44 davidfraser
2104
2105 * indexpage.py, server.py: finished project->language and
2106 subproject->project rename
2107
2108 2004-11-03 14:50 davidfraser
2109
2110 * indexpage.py, server.py, translatepage.py: added link to current
2111 folder from translate page made banner height smaller except for
2112 main page
2113
2114 2004-11-03 14:30 davidfraser
2115
2116 * html/pootle.css: added some missing styles from translate.css
2117
2118 2004-11-03 14:19 davidfraser
2119
2120 * html/: pootle.css, images/logo.gif, images/pootle.jpg,
2121 js/autoexpand.js: added images
2122
2123 2004-11-03 14:07 davidfraser
2124
2125 * indexpage.py: fixed language links, misreplaced project/language
2126 names made Start Transating link look nice
2127
2128 2004-11-03 13:59 davidfraser
2129
2130 * indexpage.py, server.py: renamed "project" to "language"
2131
2132 2004-11-03 11:02 davidfraser
2133
2134 * server.py: pass the login page class to the underlying server
2135
2136 2004-11-03 10:00 davidfraser
2137
2138 * server.py: added support for browsing through directories and
2139 files added support for downloading po files and csv files
2140 updated to use non-database user details in prefs files improved
2141 registration -> login redirection made a lot of the required
2142 prefs optional, and added support for saving prefs currently
2143 emailing username + passwords is disabled, the message is printed
2144 on stdout
2145
2146 2004-11-03 09:54 davidfraser
2147
2148 * pagelayout.py: made a lot of the required prefs optional and have
2149 defaults
2150
2151 2004-11-03 09:45 davidfraser
2152
2153 * indexpage.py: added support for browsing through the files /
2154 directories in a project this allows browsing or translating at a
2155 given granularity also don't require the project node to have a
2156 fullname attribute
2157
2158 2004-11-03 09:40 davidfraser
2159
2160 * translatepage.py: refactored generation of translation rows so we
2161 don't have to call before / item / after separately refactored
2162 receivetranslations into a function, handle skipping added
2163 dirfilter support so the translatepage can be used with more
2164 granularity (used when finding the next item)
2165
2166 2004-11-03 09:24 davidfraser
2167
2168 * projects.py: added dir filtering ability, code to browse through
2169 po filenames and directories in a useful way added support for
2170 skipping translations added pofilenames option for calculatestats
2171 for retrieving stats in finer granularity added support for
2172 getting po file source and converting to csv (needs a po2csv
2173 module) this fits in with other refactoring in the other files
2174
2175 2004-10-28 08:48 davidfraser
2176
2177 * server.py: passwordgen is in jToolkit not pootle
2178
2179 2004-10-28 08:45 davidfraser
2180
2181 * pagelayout.py, server.py: added link to register added password
2182 generation and emailing
2183
2184 2004-10-28 07:33 davidfraser
2185
2186 * indexpage.py, pagelayout.py, server.py, translatepage.py: made
2187 PootlePage automatically wrap the main contents in a #content div
2188
2189 2004-10-27 23:00 davidfraser
2190
2191 * server.py: added very simple registration (username=password)
2192
2193 2004-10-27 22:49 davidfraser
2194
2195 * server.py: started adding registration page for new users
2196
2197 2004-10-27 22:40 davidfraser
2198
2199 * pagelayout.py: sidetitle got changed to sidecontents accidentally
2200 added TranslateForm
2201
2202 2004-10-27 22:37 davidfraser
2203
2204 * translatepage.py: simplified styles by moving to css
2205
2206 2004-10-27 21:53 davidfraser
2207
2208 * indexpage.py, pagelayout.py: renamed classes (and css classes) to
2209 be less bloggy renamed title to contents for Division classes
2210
2211 2004-10-27 21:44 davidfraser
2212
2213 * indexpage.py, pagelayout.py, server.py, translatepage.py: made
2214 little classes for all the div styles, to make stuff simpler...
2215
2216 2004-10-27 21:41 davidfraser
2217
2218 * projects.py: various minor pochecker fixups... don't just fall
2219 off the end if no more pofilenames could be found
2220
2221 2004-10-27 21:08 davidfraser
2222
2223 * indexpage.py, pagelayout.py, server.py, translatepage.py: used
2224 new cls= keyword parameter for Division rather than putting the
2225 class in a dictionary
2226
2227 2004-10-25 18:41 davidfraser
2228
2229 * indexpage.py: make sure empty projects are handle OK by the stats
2230 pages
2231
2232 2004-10-25 11:58 davidfraser
2233
2234 * projects.py: when an item is submitted, store the pofilename and
2235 lastitem on the TranslationSession this should make apache
2236 multi-process servers pass state between processes
2237
2238 2004-10-25 11:46 davidfraser
2239
2240 * translatepage.py: jToolkit has problems with non-unicode in the
2241 TextArea ; manually decoding to unicode for now
2242
2243 2004-10-25 11:08 davidfraser
2244
2245 * projects.py: added quick route to find next pofilename that
2246 contains matches, so we don't have to parse all those in between
2247
2248 2004-10-25 10:57 davidfraser
2249
2250 * pagelayout.py, server.py: added spearch url for login page which
2251 redirects back to the index if logged in (this is because the
2252 login page submits to itself in case of error) added link to
2253 logout / login to sidebar
2254
2255 2004-10-25 10:37 davidfraser
2256
2257 * server.py: added an OptionalLoginAppServer that makes login
2258 optional
2259
2260 2004-10-25 10:25 davidfraser
2261
2262 * projects.py: need to convert the statsmtime to an integer
2263 otherwise it'll never match
2264
2265 2004-10-25 09:53 davidfraser
2266
2267 * projects.py: took out __init__ loop through self.pofiles (should
2268 have been self.pofilename) as it would have been too expensive
2269 but it wasn't doing anything as self.pofiles was empty moved
2270 pofile.classify construction to getpofile as we always need the
2271 classifications available
2272
2273 2004-10-23 20:26 davidfraser
2274
2275 * projects.py: use matchnames for searching for next item, to make
2276 it superfast :-)
2277
2278 2004-10-23 20:09 davidfraser
2279
2280 * indexpage.py, projects.py, translatepage.py: replaced translated,
2281 total with named stats in a dictionary also keep in each pofile a
2282 classify member that keeps named lists of elements matching
2283 fuzzy, blank, etc this should be useful in optimizing searches
2284 added more info on blank, fuzzy to the sidebar of the translation
2285 page
2286
2287 2004-10-23 19:47 davidfraser
2288
2289 * indexpage.py, projects.py, translatepage.py: more detailed
2290 statistics invalidate statistics when a file changes
2291
2292 2004-10-23 19:40 davidfraser
2293
2294 * projects.py: changed to use relative paths for po files,
2295 calculate absolute path when needing to access files
2296
2297 2004-10-23 19:33 davidfraser
2298
2299 * pagelayout.py, projects.py, translatepage.py: added pofilename to
2300 the links at the side (made them accessible as PootlePage
2301 members) rearranged test for what is translated
2302
2303 2004-10-23 19:26 davidfraser
2304
2305 * projects.py: separated out receivetranslation so the actual
2306 changes are done from the TranslationProject made new savefile
2307 function which saves the pofile to disk currently saving after
2308 each change which is not ideal added doc strings
2309
2310 2004-10-23 19:19 davidfraser
2311
2312 * projects.py: added findnextitem which searches and filters
2313 options through a function this can be slow if you do what it
2314 does at the moment and searches for blank msgstrs... we should
2315 use the stats to filter out files automatically...
2316
2317 2004-10-23 19:08 davidfraser
2318
2319 * projects.py: moved logic about moving to next item from session
2320 into project
2321
2322 2004-10-23 14:57 davidfraser
2323
2324 * indexpage.py, projects.py, translatepage.py: created new class
2325 TranslationSession which represents a users work on a project use
2326 this to keep track of current po file, item rather than doing it
2327 globally in the project added the pofilename as a hidden field so
2328 we know what item is being translated exactly store translatable
2329 elements in pofile.transelements for each pofile to make indexing
2330 easier rather than returning items before and after with the
2331 translatable item, query for them separately also changed
2332 projects.getproject to only take the subproject config item
2333
2334 2004-10-23 13:58 davidfraser
2335
2336 * projects.py: added call to initstatscache so it is actually used
2337 :-) and make sure the right filenames etc are passed so that it
2338 actually reads the files...
2339
2340 2004-10-23 13:54 davidfraser
2341
2342 * projects.py: added primitive means of caching statistics in
2343 .stats files with timestamps
2344
2345 2004-10-23 13:43 davidfraser
2346
2347 * indexpage.py, projects.py, translatepage.py: read all pofiles in
2348 when TranslationProject is constructed added calculation and
2349 display of statistics ; this is currently very slow! renamed
2350 projects.getiterator to getproject
2351
2352 2004-10-23 13:15 davidfraser
2353
2354 * projects.py: added code to iterate through all the files in a
2355 directory tree rather than just one pofile this changes the pref
2356 name to podir fixed up getiterator to not use self everywhere...
2357
2358 2004-10-23 12:57 davidfraser
2359
2360 * projects.py, translatepage.py: moved TranslationIterator code
2361 into separate projects module, from whence it will be
2362 transmogrified
2363
2364 2004-10-23 12:46 davidfraser
2365
2366 * indexpage.py: count the subprojects
2367
2368 2004-10-23 12:45 davidfraser
2369
2370 * server.py: added login, LoginPage that looks pootley
2371
2372 2004-10-22 11:46 davidfraser
2373
2374 * server.py, translatepage.py: added hook to receive new
2375 translations calculate translation items correctly, made the row
2376 offset equal to the item in the file
2377
2378 2004-10-22 11:14 davidfraser
2379
2380 * translatepage.py: removed dummytranslations, now uses
2381 subproject.pofile to get translations from also fixed up some row
2382 calculation problems
2383
2384 2004-10-22 10:51 davidfraser
2385
2386 * __init__.py, indexpage.py, pagelayout.py, server.py,
2387 translatepage.py: added initial pootle implementation (with
2388 random dummy bork translations)
2389