source: trunk/doc/ChangeLog @ 912

Last change on this file since 912 was 912, checked in by chrisaga, 19 years ago

bug fixed: cat-list.tpl validate now

improvement: removed some unnecessary css rules from old tests in

FROM design in file default-layout.css

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 24.2 KB
Line 
1
22005-10-23 chrisaga
3
4        * bug fixed: cat-list.tpl validate now
5
6        * improvement: removed some unnecessary css rules from old tests in
7        FROM  design in file default-layout.css
8
92005-10-23 Pierrick LE GALL
10
11        * bug 181 fixed: "Parameters not created in phpwebgallery_config
12        during upgrade". gallery_title and gallery_description had not
13        been added to config table. (use|show)_(exif|iptc) and
14        authorize_remembering have also been removed...
15
162005-10-22 chrisaga
17
18        * bug 177 fixed: icon tools wrong position in Safari and Konqueror
19        Needed a little trick to fix it. Put the trick in a fix-khtml.css
20        Loading in header.tpl and protected from IE, Geko and Opera,
21        just in case (couldn't foud a safari css-only filter wich validate)
22       
23        * bug fixed: issue in the FORM in remote_site.tpl which prevented
24        HTML validation (still something to do with the TABLE).
25
262005-10-22 Pierrick LE GALL
27
28        * bug fixed: link on a single day in
29        Administration>General>History was missing
30
312005-10-22 Pierrick LE GALL
32
33        * bug 173 fixed: due to phpBB user identifiers management, the
34        method to find the next user identifier has changer to MAX+1.
35
36        * improvement: information message when new user added
37
38        * bug fixed: language item "Username" used instead of "login".
39       
402005-10-20 chrisaga
41
42        * bug 176 fixed: need a javascript to handle transparent PNG
43        background in IE (tribute to Bob Osola
44        http://homepage.ntlworld.com/bobosola/index.htm)
45
46        * display: fixed another IE childselector bug in Categories
47        Management admin page and improved display of this page in all
48        browsers too.
49
502005-10-18 Pierrick LE GALL
51
52        * bug 174 fixed: use_exif_mapping configuration parameter was not
53        used to list database fields to update from EXIF values.
54
552005-10-18 Pierrick LE GALL
56
57        * bug 172 fixed: crash when changing password with an external
58        users table. The same kind of correction was also made in
59        picture.php and register.php.
60
612005-10-18 Pierrick LE GALL
62
63        * bug 159 and 166 fixed: parameter "options" for mail() function
64        disabled by default.
65
662005-10-18 chrisaga
67
68        * display : smaller font-size and, as requested, fonts more like 1.4
69
70        * bug 165 fixed : La largeur par défaut en PIXELS pas en Kb
71
722005-10-18 chrisaga
73
74        * display : in group_list.tpl - wrong form class, mixed html tags, ...
75
76        * display : suppress bullets in admin->synchronize and checkbox
77        under select
78
79        * display : set standard font size to 12pt
80
812005-10-17 Pierrick LE GALL
82
83        * improvement: use new function get_language_filepath in about.php
84        (complement of bug 168 correction)
85       
862005-10-17 Pierrick LE GALL
87
88        * bug 154 fixed: "Calendar category, too precise dates". Bug came
89        from the bigger precision of creation_date and available_date in
90        images tables. Need to retrieve only the year-month-day
91        information.
92       
932005-10-17 volcom
94
95        * new: history details by month,day
96       
972005-10-15 Pierrick LE GALL
98
99        * modification: localized labels in Administration>Pictures>Caddie
100
101        * translation: bug fixed on special categories title in French
102
103        * translation: all help pages were translated in french
104
1052005-10-09 Pierrick LE GALL
106
107        * new: "quick start" section in Administration>General>Instructions
108       
1092005-10-08 Pierrick LE GALL
110
111        * translation: new items related to configuration parameters
112        gallery_title and gallery_description in GUI.
113
1142005-10-08 Pierrick LE GALL
115
116        * modification: configuration parameters gallery_title and
117        gallery_description are GUI managed in
118        Administration>Configuration>General
119
120        * bug fixed: configuration parameters (use|show)_(exif|iptc) and
121        authorize_remembering should have been deleted from config table
122        some time ago.
123       
1242005-10-08 Pierrick LE GALL
125
126        * new: mass virtual categories movement manager in
127        Administration>Categories>Move screen.
128
1292005-10-05 Pierrick LE GALL
130
131        * bug 160 fixed: (part one of the bug) hard coded column name of
132        users table had to be replaced by the configurable column
133        name. This correction was made by a full rewrite of filtered users
134        list management. The other bug (not submited in bugtracker) that
135        needed this rewrite was that when you choose "all" as target for
136        mass users modification, you expected to apply modification on
137        filtered users, not all users.
138
139        * bug 160 fixed: (part two of the bug) hard coded column name for
140        primary key in mass_updates function.
141
142        * modification: configuration parameter users_page is now located
143        in the correct file (include/config_default.inc.php instead of
144        admin/user_list.php)
145
1462005-09-27 Pierrick LE GALL
147       
148        * bug 168 fixed: crash when language file does not
149        exists. Constant PHPWG_DEFAULT_LANGUAGE added. New function
150        get_language_filepath always used to find language files.
151
1522005-09-26 Pierrick LE GALL
153
154        * bug 158 fixed: display error on "double selects" screens (with
155        MSIE, strange behavior). VDigital modification optimizes width
156        usage :-)
157
1582005-09-25 Pierrick LE GALL
159
160        * bug 163 fixed: link error when cookies disabled in admin/stats
161
1622005-09-24 Pierrick LE GALL
163
164        * bug fixed: HTML error on nested UL in categories menu.
165
166        * bug 161 fixed: guest_id not taken into account for history table
167        insert.
168
169        * bug 164 fixed: category inserted in history table becomes too
170        long if HTML tags are kept.
171
1722005-09-24 Pierrick LE GALL
173
174        * bug 162 fixed: division by zero when trying to view "all" items
175        in admin/element_set_(global|unit)
176
177        * bug 156 fixed: error when selection is empty was not catched.
178       
1792005-09-21 Pierrick LE GALL
180
181        * bug 151 fixed: default maxheight was not proposed as "set to"
182        option in admin/user_list
183
1842005-09-21 Pierrick LE GALL
185
186        * bug 150 fixed: in category permissions management, wrong column
187        name when using an external users table.
188
1892005-09-20 Pierrick LE GALL
190
191        * update: upgrade from 1.4.0 or 1.4.1. Upgrade from 1.3.x is not
192        available anymore.
193
194        * update: README files updated for very near branch 1.5 :-)
195
196        * new: file tools/config_local.inc.php as example for optional
197        include/config_local.inc.php
198
199        * bug fixed: configuration parameter show_picture_name_on_title
200        was useless
201
2022005-09-18 Pierrick LE GALL
203
204        * bug 111 fixed: "Can't add virtual category when cookie
205        disabled". Correction reported from branch 1.4.
206
207        * bug 109 fixed : "disabled "best rated" menu item when rating is
208        not enabled". Correction reported from branch 1.4.
209
210        * bug 95 fixed : "default maxwidth and maxheight not registered
211        ". Correction reported from branch 1.4.
212
2132005-09-18 Pierrick LE GALL
214
215        * bug 107 fixed: crash when logging visit on a category containing
216        "'" character. Correction reported from branch 1.4
217
218        * bug fixed: in admin/stats, incorrect SQL queries gave no result.
219
2202005-09-18 Pierrick LE GALL
221
222        * bug 101 fixed: "problem with IE search on keywords". correction
223        reported from branch 1.4
224
2252005-09-17 Pierrick LE GALL
226
227        * new: automatic new password sent by mail when requested by user
228
2292005-09-17 Pierrick LE GALL
230
231        * improvement: add information about how to use an external table
232        for users
233       
234        * bug fixed: uses user configuration fields for filtering in
235        admin/user_list
236
237        * bug fixed: don't try to create feeds automatically during
238        sync_users (when line in user_infos is missing)
239
240        * bug fixed: create_user_infos function gives status admin if user
241        id matches $conf['webmaster_id']
242
2432005-09-17 Pierrick LE GALL
244
245        * new: the number of elements waiting for validation is notified
246        in RSS feed.
247
2482005-09-17 Pierrick LE GALL
249
250        * translation: common and admin strings translated in french from
251        english files
252
2532005-09-14 Pierrick LE GALL
254
255        * improvement: long localized messages are in HTML files instead
256        of $lang array. This is the case of admin/help and about pages.
257
258        * deletion: of unused functions (ts_to_mysqldt, is_image,
259        TN_exists, check_date_format, date_convert,
260        get_category_directories, get_used_metadata_list, array_remove,
261        pwg_write_debug, get_group_restrictions,
262        get_all_group_restrictions, is_group_allowed, style_select,
263        deprecated_getAttribute).
264
265        * new: many new contextual help pages to replace descriptions
266        previously included in pages.
267
268        * modification: reorganisation of language files. Deletion of
269        unused language keys, alphabetical sort. No faq.lang.php anymore
270        (replaced by help.html). Only done for en_UK.iso-8859-1.
271
2722005-09-03 Pierrick LE GALL
273
274        * bug fixed : no display of first added element date in
275        admin/intro if no element in the gallery.
276
2772005-09-03 Pierrick LE GALL
278
279        * new : template yoga, made by yoDan, helped by chrisaga for
280        integration becomes the official template.
281
2822005-09-03 Pierrick LE GALL
283
284        * modification : less configuration parameters in administration
285        screen. These parameters are move to
286        include/config_default.inc.php.
287
288        * new : ability to add a single picture to caddie from picture.php
289
290        * new : contextual help, only a few pages are available.
291
292        * new : ability to delete users from admin/user_list
293
294        * modification : reorganization of configuration file
295
296        * new : configuration parameter use_exif_mapping
297
298        * improvement : MOD hidemail added to standard
299
3002005-08-26 Pierrick LE GALL
301
302        * new : HTML BODY identifier to let CSS stylesheets manage
303        specific behaviour.
304
305        * deletion : admin/search useless
306
307        * improvement : in admin/user_list, special behaviour for
308        true/false fields (expand, show_comments)
309
310        * new : gallery_title and gallery_description are displayed at the
311        top of each page.
312
313        * improvement : simplification in HTML for categories menu.
314
315        * improvement : standardization of presentation in all public
316        pages (identification, registration, search, profile,
317        notification, comments, etc.)
318
3192005-08-25 Pierrick LE GALL
320
321        * deletion : no mail notification anymore. Feature replaced by RSS
322        feed notification.
323
324        * improvement : on waiting pictures management. Ability to
325        validate all or reject all in one clic.
326
3272005-08-21 Pierrick LE GALL
328
329        * modification : adaptation of template variables and blocks in
330        comments page to display comment by comment instead of picture by
331        picture.
332
3332005-08-20 Pierrick LE GALL
334
335        * improvement : dedicated page for user comments validation/reject
336        in administration. (screen is not shared with public part of the
337        gallery). Ability to validate all or reject all in one clic.
338
3392005-08-19 Pierrick LE GALL
340
341        * improvement : less compact presentation of screen
342        admin/element_set_unit.
343
3442005-08-19 Pierrick LE GALL
345
346        * improvement : standardization of categories navigation bar on
347        top of administration screen element_set_(global|unit),
348        cat_modify, cat_list, cat_perm.
349
350        * new : direct link to admin/cat_modify from category.php.
351
3522005-08-19 Pierrick LE GALL
353
354        * modification : RSS feed work only with a given feed
355        identifier. Thus we can avoid fixed frequency notification to
356        concentrate on variable frequency notification, which is much more
357        interesting. To do this, feeds have moved to a dedicated table
358        allowing each user (including guest user) to have more than on
359        feed.
360       
3612005-08-18 Pierrick LE GALL
362
363        * bug 133 fixed : (report from branch 1.4) Deleting user favorites
364        is too restrictive. Instead of deleting a favorite because it
365        belongs to at least one forbidden category, a favorite is deleted
366        if it belongs to no authorized category (which was the expected
367        behaviour).
368
3692005-08-18 Pierrick LE GALL
370
371        * bug 134 fixed : "Nb of images incorectly rendered in "tool tip"
372        near category in category menu". Correction reported (and
373        improved) from branch 1.4
374
3752005-08-18 Pierrick LE GALL
376
377        * improvement : screen admin/picture_modify
378        rewritten. Presentation copied from admin/cat_modify : fieldsets
379        regroup fields. Ability to synchronize metadata for the displayed
380        item.
381
382        * bug 110 fixed : "return to element view from element edition
383        fails depending on permissions". If a reachable (for the connected
384        admin) category is available, a "jump to" link is displayed, by
385        default, using the category given in URL.
386
387        * bug fixed : in mass_updates function, the first item of
388        $fields['update'] has not always 0 for id (as in any array).
389
390        * modification : get_keywords function understands spaces as
391        separator, allow less than 3 chars keywords, allow quotes.
392
393        * new : ability to allow HTML in picture or category description
394        (false by default)
395
3962005-08-17 Pierrick LE GALL
397
398        * improvement : in admin/user_perm, already authorized categories
399        thanks to group associations are displayed and not taken into
400        account for user specific permissions.
401
4022005-08-17 Pierrick LE GALL
403
404        * modification : major simplification of admin.php. Titles are
405        managed by included page, localized items are managed directly in
406        the template.
407
408        * new : sub template admin/double_select is included in templates
409        admin/cat_options, admin/user_perm and admin/group_perm. I haven't
410        been able to use it in admin/picture_modify because it seems
411        impossible to have two instance of the same sub-template without
412        interfering.
413
414        * modification : bug 99, in profile manager, no auto submit when
415        changing language (useless and generate accessibility problem).
416
417        * improvement : HTML semantically correct for administration menu,
418        simpler syntax, less tags, correct tags (dl/dt/dd instead of
419        div/div).
420
421        * modification : number of waiting elements and unvalidated
422        comments are displayed in admin/intro instead of administration
423        menu (with a link to the dedicated pages).
424
425        * deletion : no link to profile from admin/user_list anymore (no
426        need).
427
4282005-08-16 Pierrick LE GALL
429
430        * modification : admin/group_list screen completely rewrite to
431        present the list of existing groups and a form to add a new
432        group. Here you can delete a group, go to permissions management
433        for a group, go to member list of a group (on admin/user_list with
434        a filter on group).
435       
436        * modification : admin/user_perm and admin/group_perm are not
437        directly reachable by the admin menu anymore. Only the user/group
438        list lets you reach user/group permissions management screen.
439
4402005-08-15 Pierrick LE GALL
441
442        * new : introduction page to administration section. This page
443        gives informations about PhpWebGallery version, PHP version, MySQL
444        version, gallery database informations (number of categories,
445        elements, users, comments). Ability to request phpwebgallery.net
446        for upgrade.
447
448        * deletion : of obsolete admin/admin_phpinfo.php page replaced by
449        a link in introduction page.
450
4512005-08-14 Pierrick LE GALL
452
453        * modification : simplification of HTML/CSS code for double select
454        screen to manage categories properties (admin/cat_options)
455
4562005-08-14 Pierrick LE GALL
457
458        * new : ability to set an element as representant of its category
459        directly from picture.php screen.
460
461        * improvement : dedicated icon to add elements into caddie. Ths
462        icon is displayed in the category title bar.
463       
4642005-08-14 Pierrick LE GALL
465
466        * new : maintenance screen in administration. There you can update
467        categories informations (number of images, date of the last added
468        element), update images informations (path, average rate), purge
469        obsolete sessions, purge history.
470
471        * new : ability to have random representative for categories. This
472        configuration parameter is set to false by default.
473
474        * new : ability to set an element as representative of a category
475        without belonging to the category. Thus, administrator can choose
476        representative even for empty categories.
477
478        * improvement : semantically superior design for category edition
479        screen by regrouping fields in fieldsets. The improved screen
480        contains action buttons as in category list screen.
481
482        * new : ability to move a virtual category (ie change its parent
483        category).
484
485        * bug fixed : the sync_users function checks all user children
486        tables (access, cache, group association).
487
4882005-08-08 Pierrick LE GALL
489
490        * new : external authentication in another users table. Previous
491        users table is divided between users (common properties with any
492        web application) and user_infos (phpwebgallery specific
493        informations). External table and fields can be configured.
494       
495        * modification : profile.php is not reachable through
496        administration anymore (not useful).
497
498        * modification : in profile.php, current password is mandatory
499        only if user tries to change his password. Username can't be
500        changed.
501
502        * deletion : of obsolete functions get_user_restrictions,
503        update_user_restrictions, get_user_all_restrictions,
504        is_user_allowed, update_user
505
506        * modification : $user['forbidden_categories'] equals at least
507        "-1" so that category_id NOT IN ($user['forbidden_categories'])
508        can always be used.
509
510        * modification : user_forbidden table becomes user_cache so that
511        not only restriction informations can be stored in this table.
512       
5132005-07-17 Pierrick LE GALL
514
515        * improvement : in admin/element_set_global, javascript is not
516        used anymore to select an item with its thumbnail
517
5182005-07-17 Pierrick LE GALL
519
520        * bug fixed : in admin/user_list, if target is "selection" and
521        that no user is selected, an error occurs
522
5232005-07-17 Pierrick LE GALL
524
525        * new feature : use Apache authentication. If
526        $conf['apache_authentication'] is set true : if no user matches
527        $_SERVER['REMOTE_USER'] in "users" table, PWG automatically
528        creates one. This way, users can customize the behaviour of the
529        application.
530
531        * template : new organisation of identification menu
532        (category.php). Simplification is required for Apache
533        authentication (no logout link even if user is externally logged
534        in)
535
536        * new : usernames can contain quotes (required because Apache
537        authentication authorized quotes in usernames)
538
5392005-07-17 Pierrick LE GALL
540
541        * new configuration parameter : hide thumbnail captions on main
542        page with $conf['show_thumbnail_caption']
543
544        * new configuration parameter : hide picture name in title on
545        picture presentation page with $conf['show_picture_name_on_title']
546
547        * template : new CSS classes to manage picture.php title
548       
5492005-07-16 Pierrick LE GALL
550
551        * new feature : RSS notification feed. Feed generator is an
552        external tool (FeedCreator class v1.7.2). New file feed.php
553
554        * new database field : comments.validation_date (datetime). This
555        field is required for notification feed.
556
557        * new database field : users.feed_id (varchar(50)). users.feed_id
558        is an alias of users.id but is much more complicated to find (50
559        characters, figures or letters, case sensitive) : the purpose is
560        to keep it secret (as far as possible).
561
562        * new database field : users.last_feed_check (datetime)
563
564        * new database field : users.registration_date (datetime)
565
566        * bug fixed : no need to add the (unavailable) session id to
567        install.php in the installation form.
568
569        * modified database field : images.date_available become more
570        precise (date to datetime). This precision is needed for
571        notification feed.
572
573        * new index : comments_i1 (validation_date). Might be useful for
574        feed queries.
575
576        * new index : comments_i2 (image_id). Useful each time you want to
577        have informations about an element and its associated comments.
578
579        * version 9.11 of mysqldump outputs database field names and table
580        names with backquote "`" (didn't find how to take them off)
581       
5822005-06-30 Pierrick LE GALL
583       
584        * category permissions management comes back! (it disappeared in
585        branch 1.4) This time, it is designed to support better long users
586        list. On this screen, for a particular category, admin can say
587        which groups and users are permitted.
588       
5892005-06-30 Pierrick LE GALL
590
591        * users managment : change display of filter (according to filter
592        on user comments)
593
5942005-06-30 Pierrick LE GALL
595
596        * categories management : new display with icon for actions
597        (delete, sub-categories, elements, edit, jump to, permissions)
598
599        * categories management : semantic HTML layout (using common
600        lists)
601
602        * categories management : new way to order categories of the same
603        level : a text field let the admin reorder all categories at once.
604       
6052005-06-25 Pierrick LE GALL
606
607        * new feature : ability to add links on the main page (see
608        include/config_default.inc.php)
609       
6102005-06-21 Pierrick LE GALL
611
612        * comments page rewritten : comments are displayed one by one,
613        with filters and display options available. The list of comments
614        is paginated.
615       
6162005-06-21 Pierrick LE GALL
617
618        * direct communication between templates and language items,
619        without needing a mapping in the PHP code.
620
6212005-06-21 Pierrick LE GALL
622
623        * new function get_name_from_file to centralize the construction
624        of displayed name from the filename
625
626        * new function l10n which returns the corresponding value from
627        $lang if existing. Else, the key is returned. This means that if a
628        language item is not translated, the key is displayed instead
629        (better than nothing).
630
6312005-06-11 Pierrick LE GALL
632
633        * errors and informations boxes : management centralized in
634        admin.php, $errors and $infos arrays replaced by $page['errors']
635        and $page['infos'], special management for admin/update.php (more
636        complex management)
637
6382005-06-11 Pierrick LE GALL
639
640        * bug 96 (informations given by uploaders are lost) correction
641        reported from branch 1.4
642
6432005-05-10 Pierrick LE GALL
644
645        * user list : links to profile page and permissions page are
646        represented by icons (more compact)
647
648        * user list : ability to associate to a group or to dissociate
649        from a group a list of selected users
650
651        * user list : ability to set user properties in "batch" mode (a
652        selection of users at once)
653
654        * user list : alternate background color for each line
655       
6562005-04-30 Pierrick LE GALL
657
658        * user list updated : ability to filter list on status. Function
659        get_enums comes back to retrieve the list of possible status in
660        the database.
661       
6622005-04-28 Pierrick LE GALL
663
664        * user list updated : ability to filter list on group
665
6662005-04-25 Pierrick LE GALL
667
668        * include/config.inc.php becomes include/config_default.inc.php :
669        this file should not be modified. A new file
670        include/config_local.inc.php can be used for overwriting
671        configuration parameters
672       
6732005-04-25 Pierrick LE GALL
674
675        * come back to previous version of include/constants.php :
676        %PWGVERSION% was not a mistake
677
6782005-04-25 Pierrick LE GALL
679
680        * profile.php is no longer used for listing users :
681        admin/user_list.php comes back (as in 1.3 branch)
682
683        * user list updated : ability to filter list on username
684
6852005-04-25 Gweltas
686
687        * ability to install even if file include/mysql.inc.php doesn't
688        exist
689
690        * monthly statistics
691
692        * installation labels updated (english only)
693
6942005-04-16 Pierrick LE GALL <pierrick /at/ phpwebgallery {dot} net>
695
696        * elements batch management : element_set page becomes the
697        frontend to element_set_global and element_set_unit, infos_images
698        (after a long time of use) become deprecated : the more powerful
699        element_set is used instead. Consequently, batch management
700        concerns caddie but also "normal categories".
701       
702        * refactoring code in admin.php to include the sub-file (clearer)
703
704        * caddie : function fill_caddie replaces the code in category.php
705        and can be used in admin/element_set.php
706
707        * caddie : caddie table is added in delete_elements function
708
7092005-04-16 Pierrick LE GALL <pierrick /at/ phpwebgallery {dot} net>
710
711        * elements batch management : in addition to global mode, a unit
712        mode is added : ability to manage a set of elements, element by
713        element. This screen is very close to the existing "infos_images"
714        (which will soon disappear).
715
716        * elements batch management : in screen element_set_global, the
717        display options are displayed at the top as in element_set_unit
718       
7192005-04-11 Pierrick LE GALL <pierrick /at/ phpwebgallery {dot} net>
720
721        * functions get_day_list and get_month_list moved from search.php
722        to include/functions.inc.php : these functions are now also used
723        in admin/element_set_global.php
724
725        * elements batch management improved : ability to set the number
726        of elements to display per line, ability to set {author, name,
727        creation date} fields, ability to add and remove keywords, ability
728        to take selected elements out of caddie
729
7302005-03-31 Pierrick LE GALL <pierrick at phpwebgallery dot net>
731
732        * apply category name and element name separation in calendar
733        special category
734
735        * change method of counting total number of viewable pictures :
736        pictures linked to more than one category are not counted twice.
737       
7382005-03-26 Pierrick LE GALL <pierrick at phpwebgallery dot net>
739
740        * "add to caddie" link is visible only when categories contains
741        elements. Only admin users can see this link
742
743        * elements batch management : impossible to create a link between
744        category and element that already exists
745
746        * logical separation of category name under thumbnail and element
747        name
748
7492005-03-25 Pierrick LE GALL <pierrick at phpwebgallery dot net>
750
751        * application version is defined at build or release
752        creation. This way, include/constants.php won't change at each
753        build.
754
7552005-03-25 Pierrick LE GALL <pierrick at phpwebgallery dot net>
756
757        * typo fixed : wrong block name closed in template
758
7592005-03-25 Pierrick LE GALL <pierrick at phpwebgallery dot net>
760       
761        * new feature : caddie. The purpose is batch management,
762        especially concerning elements to categories associations.This is
763        the very first release, needs many improvements.
Note: See TracBrowser for help on using the repository browser.