pax_global_header00006660000000000000000000000064142652207220014514gustar00rootroot0000000000000052 comment=b98a4ef8b7ddd7a6214f010ccc22429401df5a87 gyrus-0.4.2/000077500000000000000000000000001426522072200126705ustar00rootroot00000000000000gyrus-0.4.2/.gitlab-ci.yml000066400000000000000000000015751426522072200153340ustar00rootroot00000000000000# You can override the included template(s) by including variable overrides # SAST customization: https://docs.gitlab.com/ee/user/application_security/sast/#customizing-the-sast-settings # Secret Detection customization: https://docs.gitlab.com/ee/user/application_security/secret_detection/#customizing-settings # Dependency Scanning customization: https://docs.gitlab.com/ee/user/application_security/dependency_scanning/#customizing-the-dependency-scanning-settings # Container Scanning customization: https://docs.gitlab.com/ee/user/application_security/container_scanning/#customizing-the-container-scanning-settings # Note that environment variables can be set in several places # See https://docs.gitlab.com/ee/ci/variables/#cicd-variable-precedence stages: - test sast: stage: test include: - template: Security/SAST.gitlab-ci.yml - template: Security/Secret-Detection.gitlab-ci.yml gyrus-0.4.2/AUTHORS000066400000000000000000000002711426522072200137400ustar00rootroot00000000000000Alejandro Valdés Jiménez Jorge Bustos Bustos Claudio Saavedra Valdés Francisco Rojas gyrus-0.4.2/COPYING000066400000000000000000000431101426522072200137220ustar00rootroot00000000000000 GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. 1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. 6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. 10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) year name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. , 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Library General Public License instead of this License. gyrus-0.4.2/ChangeLog000066400000000000000000002402061426522072200144460ustar00rootroot000000000000002022-07-14 Willem van den Akker * Change to meson build * Add debian patches 2010-01-24 Claudio Saavedra * ChangeLog is autogenerated when releasing. Check ChangeLog.old for original ChangeLog and 'git log' for a detailed list of changes. 2009-04-28 Claudio Saavedra * gyrus.doap: Describe project. 2009-04-28 Claudio Saavedra * README: Point to git repository. 2009-02-23 Claudio Saavedra * src/gyrus-admin.c: (gyrus_admin_init_get_widgets): * src/gyrus-common.c: (gyrus_dialog_password_new): * src/gyrus-dialog-find-mailbox.c: (gyrus_dialog_find_mailbox_init_get_widgets): * src/gyrus-dialog-mailbox-new.c: (gyrus_dialog_mailbox_new_init_get_widgets): * src/gyrus-preferences.c: (gyrus_preferences_show_dialog): * src/gyrus-report.c: (gyrus_report_show_report): * src/gyrus-session.c: (gyrus_session_load_interface), (gyrus_session_edit_load_interface): Use g_build_filename() instead of g_strdup_printf() to build the filename for the glade files. 2009-02-15 Claudio Saavedra * configure.in: post release version bump 2009-02-15 Claudio Saavedra * README: update version * NEWS: update for 0.3.8 2008-10-14 Francisco Rojas * src/gyrus-admin.c (gyrus_admin_listen_channel), (gyrus_admin_write_channel): Use appropriate gsize instead of guint for bytes_written parameter. Fixes bug #435869. 2008-10-13 Claudio Saavedra * AUTHORS: * README: * src/gyrus-main-app.c: (gyrus_main_app_about): Credit Francisco. 2008-10-12 Claudio Saavedra * configure.in: Bump GTK+ dependency (because of GtkPrint) 2008-10-12 Francisco Rojas * configure.in: Remove the dependency on libgnomeui * src/gyrus-main-app.c (gyrus_main_app_init), (menu_item_select_cb), (menu_item_deselect_cb), (connect_proxy_cb), (disconnect_proxy_cb): Replace GnomeAppbar with GtkStatusbar and GtkProgressBar. Remove dependence on obsolete libgnomeui. Fixes bug #555919. 2008-10-12 Claudio Saavedra * src/glade/report.glade: Give a more reasonable size to the dialog. 2008-10-12 Claudio Saavedra * src/gyrus-report.c: (draw_page): Plug a leak. 2008-10-12 Claudio Saavedra * configure.in: Replace libgnomeprintui checks with gtkprint checks. * src/gyrus-report.c: (gyrus_report_show_report), (gyrus_report_on_button_cancel_clicked), (gyrus_report_on_button_update_clicked), (begin_print), (draw_page), (gyrus_report_on_button_print_clicked): Port the report to printing to GtkPrint. Remove dependence on obsolete libgnomeprintui. 2008-10-11 Claudio Saavedra * src/glade/report.glade: Set page-size to 0 in the adjustment, to fix a gtk-warning. 2008-10-11 Francisco Rojas * src/gyrus-main-app.c (main): replace gnome_program_init() with gtk_init() 2008-10-11 Claudio Saavedra * src/gyrus-report.c: Mark private methods static. * src/gyrus-report.h: No need to expose private methods or structures, move to gyrus-report.c. Remove unused includes. 2008-10-11 Claudio Saavedra * src/glade/sessions.glade: Set page-size to 0 in the adjustment, to fix a gtk-warning. 2008-10-08 Kjartan Maraas * configure.in: Added nb to ALL_LINGUAS. 2008-02-29 Claudio Saavedra * src/gyrus-admin-acl.c: (gyrus_admin_acl_set_entry): * src/gyrus-admin-mailbox.c: (gyrus_admin_mailbox_get_quota), (gyrus_admin_mailbox_clear_info), (gyrus_admin_mailbox_on_button_quota_apply_clicked), (gyrus_admin_mailbox_new), (gyrus_admin_get_submailboxes), (gyrus_admin_mailbox_delete), (gyrus_admin_acl_set_tree_view), (gyrus_admin_add_acl_entry): * src/gyrus-admin.c: (gyrus_admin_initialize_mailbox_tree_view), (gyrus_admin_initialize_acl_tree_view), (gyrus_admin_create_socket_from_session), (gyrus_admin_listen_channel), (gyrus_admin_clean_mailbox_treeview), (gyrus_admin_load_session_info), (gyrus_admin_on_button_connect_clicked), (gyrus_admin_on_users_selection_changed), (gyrus_admin_on_renderer_toggled), (gyrus_admin_ask_user_if_overwrite), (gyrus_admin_on_acl_identifier_edited): * src/gyrus-common.c: (gyrus_gtk_entry_has_text), (gyrus_dialog_password_new): * src/gyrus-connection.c: (gyrus_connection_prepare_ubuffer), (gyrus_connection_send): * src/gyrus-dialog-find-mailbox.c: (gyrus_dialog_find_mailbox_init): * src/gyrus-dialog-mailbox-new.c: (gyrus_dialog_mailbox_new_on_button_ok_clicked): * src/gyrus-main-app.c: (gyrus_main_app_on_switch_page), (gyrus_main_app_append_page): * src/gyrus-report.c: (gyrus_report_on_button_update_clicked), (gyrus_report_create_data_page): * src/gyrus-session.c: (gyrus_session_on_button_delete_session_clicked), (gyrus_session_append_session), (gyrus_session_set_defaults_from_session), (gyrus_session_load_gconf_settings), (gyrus_session_open): Many, many functions and variables declaration fixes, courtesy of sparse. 2008-01-18 Claudio Saavedra * HACKING: Add guidelines for working in the gyrus SVN. 2007-10-14 Yannig Marchegay * configure.in: Added 'oc' to ALL_LINGUAS. 2007-08-12 Claudio Saavedra * MAINTAINERS: Add file to comply with GNOME SVN standards. 2007-05-02 Claudio Saavedra * configure.in: Post release version bump. 0.3.7 2007-05-02 Claudio Saavedra * NEWS: Updated for 0.3.7 release. * README: Update version at the top of the file. 2007-04-29 Claudio Saavedra * src/gyrus-admin.c: (gyrus_admin_class_init), (gyrus_admin_post_login), (gyrus_admin_on_acl_selection_changed), (gyrus_admin_on_users_selection_changed): Store signals ids in a static array instead of the class structure. Renamed "::acl-entry-selection-changed" signal to "::acl-selection-changed". (gyrus_admin_logged_out): Emit the "::disconnected" signal. * src/gyrus-admin.h: * src/gyrus-main-app.c: (main_app_on_acl_selection_changed): renamed. (gyrus_main_app_append_page): updated accordingly to GyrusAdmin changes. 2007-04-27 Claudio Saavedra * ChangeLog: change file coding to UTF-8. 2007-04-27 Stephane Raimbault * configure.in: Added fr entry. 2007-04-25 Claudio Saavedra * src/glade/page.glade: Do not force a size in the password dialog. In localized enviroments, it looks ugly. 2007-04-25 Claudio Saavedra * src/gyrus-dialog-mailbox-new.c: (gyrus_dialog_mailbox_new_class_init): * src/gyrus-dialog-mailbox-new.h: Clean GyrusDialogMailboxNew class. 2007-04-25 Claudio Saavedra * src/gyrus-dialog-find-mailbox.c: (gyrus_dialog_find_mailbox_class_init), (gyrus_dialog_find_mailbox_finalize), (gyrus_dialog_find_mailbox_set_admin): * src/gyrus-dialog-find-mailbox.h: Clean GyrusDialogFindMailbox class. 2007-04-25 Claudio Saavedra * src/gyrus-connection.c: (gyrus_connection_set_property), (gyrus_connection_class_init), (gyrus_connection_init): More GObject cleaning. This time, GyrusConnection. 2007-04-24 Claudio Saavedra * src/gyrus-admin-mailbox.c: (gyrus_admin_mailbox_delete_all), (gyrus_admin_delete_selected_acl_entry): Update according to the api change. * src/gyrus-admin-private.h: Remove parent_app property. * src/gyrus-admin.c: Remove the parent_app getter. * src/gyrus-admin.h: Ditto. * src/gyrus-main-app.c: (gyrus_main_app_append_page): Update according to the API change. 2007-04-24 Claudio Saavedra * src/Makefile.am: Add gyrus-admin-private.h * src/gyrus-admin-mailbox.c: * src/gyrus-admin-private.h: New definition of the private data to hide it. * src/gyrus-admin.c: (gyrus_admin_class_init), (gyrus_admin_init), (gyrus_admin_finalize), (gyrus_admin_destroy): More GObject love. (+gyrus_admin_get_users_treeview): Added getter method. * src/gyrus-admin.h: Remove the private data declaration from here. * src/gyrus-dialog-find-mailbox.c: Use the getter instead of accessing to the private data directly. (gyrus_dialog_find_mailbox_on_button_find_clicked): Ditto. * src/gyrus-report.c: (gyrus_report_on_button_update_clicked): Ditto. More GObject love. This time, cleaned up GyrusAdmin class. 2007-04-24 Claudio Saavedra * src/gyrus-admin.c: (gyrus_admin_class_init): Use GLib marshalers for VOID__BOOL instead of our own. * src/gyrus-marshal.list: remove VOID:BOOLEAN. 2007-04-24 Claudio Saavedra * src/gyrus-main-app.c: (gyrus_main_app_finalize), (gyrus_main_app_destroy), (gyrus_main_app_class_init), (gyrus_main_app_init): Add the private structure definition here. Also improve the usage of the GObject facilities. * src/gyrus-main-app.h: Remove the definition of the private structure. Improve the usage of GObject facilities in the GyrusMainApp class. Based on a patch from Alejandro Valdes Jimenez . Partially fixes bug #429138. 2007-04-24 Claudio Saavedra * src/gyrus-admin-mailbox.c: (gyrus_admin_mailbox_on_button_quota_apply_clicked), (gyrus_admin_mailbox_new): Fix a typo. Patch from Bob Mauchin . Fixes bug #432628. 2007-04-12 Claudio Saavedra * src/pixmap/logo_gyrus.png: Update the logo. * src/pixmap/logo_gyrus.xcf: Add to svn the xcf version of the logo. Patch from Alejandro Valdes Jimenez . Fixes bug #429160. 2007-03-17 Claudio Saavedra * src/gyrus-connection.c: (gyrus_connection_conn_cb): Use correctly gnutls_record_recv () when it needs more than 1024 bytes. Fixes bug #319436. 2007-03-16 Claudio Saavedra * src/glade/sessions.glade: Pimp the dialog a bit. 2007-03-16 Claudio Saavedra * src/gyrus-admin.c: (gyrus_admin_listen_channel), (+imap_quote_string), (gyrus_admin_login): Quote password to allow password with special characters. Fixes bug #337655. 2007-03-16 Claudio Saavedra * configure.in: * src/gyrus-connection.c: (gyrus_connection_conn_cb), (gyrus_connection_instance_init), (gyrus_connection_connect), (gyrus_connection_send): * tests/gyrus-talk.c: (main): * tests/gyrus-talk.glade: Make gnutls optional, and disable it by default, as it's currently not working. 2007-03-15 Claudio Saavedra * gyrus.desktop.in.in: Fix the categories field. 2007-03-14 Claudio Saavedra * Makefile.am: Make tests build optional. * configure.in: Add --enable-tests parameter. 2007-03-14 Claudio Saavedra * tests/Makefile.am: Use macros instead of hardcoded paths. * tests/gyrus-talk.c: Remove hardcoded include. 2007-03-14 Claudio Saavedra * src/gyrus-connection.c: (gyrus_connection_class_init): Use g_cclosure_marshal_VOID__INT for the "connect-response" signal, as ENUM is intended for real enums. 2007-03-11 Josep Puigdemont i Casamajó * configure.in: Added "ca" (Catalan) to ALL_LINGUAS. 2007-02-05 Claudio Saavedra * INSTALL: * Makefile.am: Fix the problems with the .desktop file. * README: Update website address and clean up a bit. * src/gyrus-main-app.c: (gyrus_main_app_about): Show the webpage in the about dialog. 2007-01-21 Claudio Saavedra * config.guess: Removed from SVN. * config.sub: 2007-01-21 Claudio Saavedra * configure.in: Add gyrus.desktop.in to AC_OUTPUT and small fixes. * gyrus.desktop.in: Renamed to gyrus.desktop.in.in, to properly generate set the VERSION value. 2006-12-31 Claudio Saavedra * README: Point to new GNOME SVN repository. 2006-12-25 Pema Geyleg * configure.in: Added 'dz' to ALL_LINGUAS. 2006-08-05 Claudio Saavedra * src/glade/sessions.glade: Redesigned the sessions interface removing useless items and reordering items. * src/gyrus-common.c: (gyrus_gtk_entry_has_text): Renamed gtk_entry_has_text () to take it out from GTK+ namespace. * src/gyrus-common.h: ditto. * src/gyrus-dialog-find-mailbox.c: (gyrus_dialog_find_mailbox_on_entry_changed): ditto. * src/gyrus-dialog-mailbox-new.c: (gyrus_dialog_mailbox_new_on_checkbutton_toggled), (gyrus_dialog_mailbox_new_on_entry_changed): ditto. * src/gyrus-main-app.c: Use more stock items where possible. Renamed "Reports..." to "Create reports..." to improve usability. * src/gyrus-session.c: (gyrus_session_on_button_delete_session_clicked), (gyrus_session_on_row_activated), (gyrus_session_on_entry_changed), (gyrus_session_append_session), (gyrus_session_treeview_on_key_press_event), (gyrus_session_on_key_press_event), (gyrus_session_get_selected_session), (gyrus_session_open), (gyrus_session_load_interface), (gyrus_session_edit_load_interface): Remove wrapped function gyrus_session_name_compare_func () and update accordly. Do not allow the user to accept in the edition dialog when there are empty entries. Use double click to open a session. Removed also the "session saved" dialog. 2006-03-25 Claudio Saavedra * configure.in: Post release bump. 0.3.6 2006-03-25 Claudio Saavedra * NEWS: * README: Updated for version 0.3.6. 2006-03-22 Claudio Saavedra * src/gyrus-main-app.c: (gyrus_admin_delete_dialog_on_response): Remove useless action work that caused "RemoveMailbox" action to be disabled after trying to delete a mailbox. Blame me. 2006-03-21 Claudio Saavedra * src/gyrus-admin-mailbox.c: (gyrus_admin_get_submailboxes): Fixed leak. 2006-03-21 Claudio Saavedra * src/gyrus-admin.c: (gyrus_admin_on_treeview_focused), (gyrus_admin_initialize_mailbox_tree_view), (gyrus_admin_initialize_acl_tree_view), (gyrus_admin_on_users_selection_changed): Use selection's "changed" signal instead of the (GtkTreeSelectionSelectFunc). 2006-03-21 Claudio Saavedra * src/gyrus-session.c: (gyrus_session_edit_load_interface): Set a default item in the separator char combobox. 2006-03-21 Claudio Saavedra * src/gyrus-admin.c: (gyrus_admin_set_selected_treeview): Callback to set the last focused treeview from the mailboxes and the orphaned mailboxes one. (gyrus_admin_initialize_mailbox_tree_view): Connecting "focus-in-event" signal. (gyrus_admin_get_selected_mailbox): Get selected mailbox from the last focused treeview. * TODO: Updated. Allow to delete selected orphaned mailboxes. 2006-03-10 Ilkka Tuohela * configure.in: Added "fi" to ALL_LINGUAS. 2006-03-06 Claudio Saavedra * src/gyrus-admin.c: (gyrus_admin_init), (gyrus_admin_mailbox_tree_model_new), (gyrus_admin_get_users_list), (gyrus_admin_initialize_mailbox_tree_view): Replace the two initialize treeview functions in a generic way. (gyrus_admin_clean_mailbox_treeview): Abstract the cleaning of the mailbox treeviews when logging out of servers. (gyrus_admin_logged_out): Use gyrus_admin_clean_mailbox_treeview (). (gyrus_admin_select_foreach_func), (gyrus_admin_get_selected_mailbox), (gyrus_admin_on_users_selection_changed), (gyrus_admin_on_acl_identifier_edited): * src/gyrus-admin.h: Rewrote the GyrusColumnMailbox enum to make it clearer. * src/gyrus-dialog-find-mailbox.c: Using GyrusColumnMailbox enum. (gyrus_dialog_find_mailbox_on_button_find_clicked): Using GyrusColumnMailbox enum. * src/gyrus-report.c: (gyrus_report_evaluate_quota): Using GyrusColumnMailbox enum. Removed redundant code to manipulate mailboxes treeviews (duplicated functions, enumerations, etc). 2006-02-07 Claudio Saavedra * TODO: Updated. * src/glade/page.glade: Added treeview for orphaned mailboxes and vpaned. * src/gyrus-admin.c: (gyrus_admin_init_get_widgets), (gyrus_admin_init), (gyrus_admin_get_users_list), (gyrus_admin_corrupt_mailbox_tree_model_new), (gyrus_admin_initialize_corrupt_mailbox_tree_view), (gyrus_admin_logged_out): Added support for orphaned mailboxes. We fill a new model with those mailboxes that doesn't seem to fit in a sane mailboxes tree and we show it (fixes also the critical warning #330184). Right now we only show the orphaned mailboxes. Future work should allow to reparent them and/or delete them. * src/gyrus-admin.h: Added treeview for orphaned mailboxes to the private structure. 2006-01-27 Claudio Saavedra * src/gyrus-main-app.c: (gyrus_main_app_init): Adding necessary calls to gtk_action_group_set_translation_domain () to get menu translated. 2006-01-22 Claudio Saavedra * src/gyrus-admin-mailbox.c: (gyrus_admin_mailbox_new): Use KB here, too. * src/gyrus-admin-mailbox.h: * src/gyrus-dialog-mailbox-new.c: (gyrus_dialog_mailbox_new_on_button_ok_clicked): 2006-01-22 Claudio Saavedra * src/gyrus-admin-mailbox.c: (gyrus_admin_mailbox_set_quota), (gyrus_admin_mailbox_on_button_quota_apply_clicked): * src/gyrus-admin-mailbox.h: Changing gyrus_admin_mailbox_set_quota new_quota parameter to KB. (#306485). 2006-01-20 Claudio Saavedra * acconfig.h: Removed. * autogen.sh: Using automake 1.9. * configure.in: Fixes. * install-sh: Removed. * missing: Removed. * mkinstalldirs: Removed. * src/Makefile.am: Removing gyrus-i18n.h * src/gyrus-admin-acl.c: * src/gyrus-admin-mailbox.c: * src/gyrus-admin.c: * src/gyrus-common.c: * src/gyrus-connection.c: * src/gyrus-dialog-find-mailbox.c: * src/gyrus-dialog-mailbox-new.c: * src/gyrus-i18n.h: Removed. * src/gyrus-main-app.c: * src/gyrus-preferences.c: * src/gyrus-report.c: * src/gyrus-session.c: Updating includes. Updates to automake 1.9 and some configure and build fixes. Also there are some files in cvs that don't belong there (install-sh, missing, mkinstalldirs, acconfig.h). (#327767, Patch from chpe@gnome.org). 2006-01-16 Claudio Saavedra * src/gyrus-admin-mailbox.c: (gyrus_admin_mailbox_get_quota): Fixed typo (#327052, Pointed out by Clytie Siddall). 2005-12-30 Stanislav Brabec * configure.in: Added cs to ALL_LINGUAS. 2005-12-05 Claudio Saavedra * autogen.sh: Better message for developers trying to build without having gnome-common. 2005-12-04 Claudio Saavedra * src/gyrus-connection.c: (gyrus_connection_tls_read): Freeing the lasts received bytes when no more needed. (gyrus_connection_conn_cb): Cleaning a little the record_rcv code. And making conn->priv->data = NULL after freeing it. * tests/gyrus-talk.c: (on_data_received): Cosmetic change. 2005-10-28 Claudio Saavedra * src/gyrus-admin-mailbox.c: (gyrus_admin_add_acl_entry): If mailbox doesn't have an ACL entry then show the ACL treeview. 2005-10-28 Claudio Saavedra * AUTHORS: * src/gyrus-main-app.c: (gyrus_main_app_about): Updated stars email addresses. 2005-10-27 Claudio Saavedra * configure.in: * po/POTFILES.in: * src/Makefile.am: Removed references to src/schemas/*. Directory removed from distribution. 2005-10-27 Claudio Saavedra * configure.in: Removed dependence on libbonoboui. * src/gyrus-admin-mailbox.c: (gyrus_admin_acl_set_tree_view): * src/gyrus-admin.c: (gyrus_admin_class_init), (gyrus_admin_logged_out), (gyrus_admin_post_login), (gyrus_admin_on_button_connect_clicked), (gyrus_admin_on_acl_selection_changed), (gyrus_admin_on_users_selection_changed): * src/gyrus-admin.h: Added signals ids. * src/gyrus-connection.c: (gyrus_connection_class_init): * src/gyrus-main-app.c: (gyrus_main_app_on_file_open_session), (gyrus_main_app_on_file_exit), (gyrus_main_app_on_edit_find), (gyrus_main_app_on_edit_mailbox_add), (gyrus_admin_delete_dialog_on_response), (gyrus_main_app_on_edit_mailbox_remove), (gyrus_main_app_on_edit_preferences), (gyrus_main_app_on_acl_entry_delete), (gyrus_main_app_on_acl_entry_rename), (gyrus_main_app_on_acl_entry_new), (gyrus_main_app_on_view_refresh), (gyrus_main_app_on_view_report), (gyrus_main_app_on_help_about), (gyrus_main_app_make_sensitivity_consistent), (gyrus_main_app_on_switch_page), (gyrus_main_app_get_type), (gyrus_main_app_init), (main_app_on_admin_connected), (main_app_on_admin_disconnected), (main_app_on_acl_entry_selection_changed), (main_app_on_mailbox_selection_changed), (gyrus_main_app_append_page), (gyrus_main_app_menu_set_sensitive), (main): Goodbye libbonoboui code! Hello GTK+! * src/gyrus-main-app.h: Parent class is now GtkWindow. Added elements to private structure to store GtkActionGroups. * src/gyrus-marshal.list: Added marshaling item. * src/gyrus-session.c: Removed dependence on libbonoboui. Using GtkUIManager. Using signals to notify the GyrusMainApp of changes on the status in GyrusAdmin objects. Code is now a little more clean. 2005-10-12 Claudio Saavedra * src/gyrus-connection.c: (gyrus_connection_tls_read), (gyrus_connection_conn_cb), (gyrus_connection_inetaddr_cb), (gyrus_connection_set_property), (gyrus_connection_connect), (gyrus_connection_send): Simplifying g_string code and improving indentation. 2005-10-09 Claudio Saavedra * src/gyrus-connection.c: (gyrus_connection_receive), (gyrus_connection_tls_write), (gyrus_connection_conn_cb), (gyrus_connection_class_init), (gyrus_connection_get_type), (gyrus_connection_new): Changing order of parameters. * src/gyrus-connection.h: * tests/gyrus-talk.c: (make_connection), (progress_bar_pulse_func): Fixing typo: s/recive/receive. Improving indentation. 2005-10-09 Claudio Saavedra * src/gyrus-connection.c: (gyrus_connection_conn_cb), (gyrus_connection_class_init): * src/gyrus-connection.h: * tests/gyrus-talk.c: (on_data_received), (make_connection): Fixing typo: s/recived/received 2005-10-02 Claudio Saavedra * Makefile.am: Added dir tests. * configure.in: Search for path to glib-genmarshal. * src/Makefile.am: Adding LIBGNUTLS flags and needed calls to generate gyrus-marshal.{c,h}. Sorted the list of sources files. * src/gyrus-connection.c: (gyrus_connection_recive), (gyrus_connection_tls_read), (gyrus_connection_tls_write), (gyrus_connection_prepare_ubuffer), (gyrus_connection_conn_cb), (gyrus_connection_inetaddr_cb), (gyrus_connection_class_finalize), (gyrus_connection_set_property), (gyrus_connection_get_property), (gyrus_connection_class_init), (gyrus_connection_instance_init), (gyrus_connection_get_type), (gyrus_connection_new), (gyrus_connection_destroy), (gyrus_connection_connect), (gyrus_connection_disconnect), (gyrus_connection_send), (gyrus_connection_get_connected), (gyrus_connection_get_host), (gyrus_connection_get_port): New file in project. * src/gyrus-connection.h: New file in project. * src/gyrus-marshal.list: New file in project. * tests/Makefile.am: New files to test gyrus-connection. * tests/gyrus-talk.c: (on_window_main_delete_event), (on_checkbutton_usetls_toggled), (on_button_connect_clicked), (on_entry_cmd_activate), (on_button_send_clicked), (on_connect_response), (on_data_recived), (on_connection_close), (log_append_text), (make_connection), (disconnect), (progress_bar_pulse_func), (wait_response), (response_done), (send_command), (main): New files to test gyrus-connection. * tests/gyrus-talk.glade: New files to test gyrus-connection. 2005-09-27 Claudio Saavedra * configure.in: 0.3.6 (now the version bump is _after_ the release and not _before_ it). 2005-09-27 Claudio Saavedra * NEWS: 0.3.5 * configure.in: 0.3.5 2005-09-20 Claudio Saavedra * src/gyrus-session.c: (gyrus_session_on_button_delete_session_clicked): Fixing memory leak. 2005-09-05 Claudio Saavedra * configure.in: Added missing vi entry translation. * src/gyrus-report.c: (gyrus_report_cell_data_func): Formats the percentage column with one decimal. (gyrus_report_initialize_tree_view): References to gyrus_report_cell_data_function. (gyrus_report_evaluate_quota): Updating code in #else. (gyrus_report_on_button_print_clicked), (gyrus_report_create_print), (gyrus_report_draw_begin), (gyrus_report_create_data_page), (gyrus_report_print_quota): Cleaned warnings and memory leaks. 2005-09-03 Claudio Saavedra * src/gyrus-session.c: (gyrus_session_get_with_name): Check if returned gconf value is NULL and set it to a default value. If session has no hierarchy character set (as in sessions created with versions olders than 0.3.4) doesn't crash when loading it. Fixes #314809. 2005-09-03 Claudio Saavedra * README: Added info about the mailing list. 2005-08-28 Claudio Saavedra * src/gyrus-admin-mailbox.h: Improved documentation of get_quota. * src/gyrus-admin.c: (gyrus_admin_pre_login): Indented. * src/gyrus-report.c: (gyrus_report_show_report), (gyrus_report_initialize_tree_view), (gyrus_report_on_delete_event_window_report), (gyrus_report_on_button_cancel_clicked), (gyrus_report_on_button_update_clicked), (gyrus_report_evaluate_quota), (gyrus_report_print_quota): Cleaned treeview code and using GTK stock icons. * src/gyrus-report.h: Removed pixbuf_folder element of structure. 2005-08-28 Claudio Saavedra * src/gyrus-main-app.c: (gyrus_main_app_about): Removed unused documentors array. 2005-08-26 Claudio Saavedra * gyrus.desktop.in: Improved UI string. * src/gyrus-admin-mailbox.c: (gyrus_admin_mailbox_new): Improved UI string. * src/gyrus-admin.h: Added definition of function. * src/schemas/gyrus.xml: Improved UI string. 2005-08-24 Claudio Saavedra * src/pixmaps/Makefile.am: Removed folder.png * src/pixmaps/folder.png: 0.3.4 2005-08-23 Claudio Saavedra * NEWS: 0.3.4 * README: 0.3.4 * configure.in: 0.3.4 * src/glade/sessions.glade: Hiding (still) unused elements. 2005-08-23 Claudio Saavedra * intltool-extract.in: * intltool-merge.in: * intltool-update.in: Removed files. 2005-08-22 Claudio Saavedra * src/glade/sessions.glade: Added GtkComboBox for choosing the separator char. * src/gyrus-admin-mailbox.c: (gyrus_admin_mailbox_name_is_valid): Changing interface. Now requires also the GyrusAdmin instance. (gyrus_admin_mailbox_on_button_quota_apply_clicked), (gyrus_admin_mailbox_new), (gyrus_admin_get_submailboxes): Changing static "." separator for call to function to use the correct separator. Call to gyrus_admin_mailbox_name_is_valid () according to new interface. Uses gyrus_admin_get_mailbox_from_list_message (). Now works correctly with newer versions of cyrus-imapd. * src/gyrus-admin.c: (gyrus_admin_get_mailbox_from_list_message): Obtains the name of the mailbox from a line of the LIST response. It is supposed to have a better support to newer versions of cyrus-imapd. (gyrus_admin_set_separator_char_auto): Autodetects the separator character and stores it in admin->priv->session. (gyrus_admin_get_users_list): Reads all the maiboxes, not only those beginning with "user.". Uses gyrus_admin_get_mailbox_from_list_message (). Now works correctly with newer versions of cyrus-imapd. (gyrus_admin_post_login): If character separator is set to autodetection, call gyrus_admin_set_separator_char_auto () to set it correctly. (gyrus_admin_select_foreach_func): Fixing memory leak. (gyrus_admin_get_separator_char): Obtains the hierarchy character separator from the session. (gyrus_admin_load_session_info): Loads the hierarchy separator. (gyrus_admin_on_users_selection_changed): Changing static "." separator everywhere for a call to function to use the correct separator. * src/gyrus-admin.h: Declares gyrus_admin_get_separator_char (). * src/gyrus-session.c: New column in model COLUMN_SEP_CHAR. New widget combobox_sep_char. (gyrus_session_on_button_delete_session_clicked): Deletes separator character from saved session too. (gyrus_session_edit_session): Saves sep. char. too. (gyrus_session_is_valid): Validates sep.char. (gyrus_session_append_session): The same... (gyrus_session_set_defaults_from_session), (gyrus_session_new_from_interface), (gyrus_session_add_session_to_treeview), (gyrus_session_treeview_on_key_press_event), (gyrus_session_set_treeview), (gyrus_session_create_model_sessions), (gyrus_session_get_selected_session), (gyrus_session_get_with_name), (gyrus_session_edit_load_interface), (gyrus_session_free): * src/gyrus-session.h: Changing static "." separator everywhere for a call to function to use the correct separator. Adding support for the storing and loading of the mailbox hierarchy separator. 2005-08-19 Mario Fuentes * src/glade/page.glade: * src/glade/sessions.glade: UI improvement, re-design of the Session dialog, added fields to use with the TLS support (work in progress). Set treeview's shadow to "In". * src/src/gyrus-session.[ch]: added support for manage TLS sessions, included a gconf parameter. 2005-08-19 Mario Fuentes * src/gyrus-admin.c (gyrus_admin_users_tree_model_new): changed the first column of the ListStore from GDK_TYPE_PIXBUF to G_TYPE_STRING for uses the stock icon "gtk-directory". (gyrus_admin_get_users_list): Changed the first column of the Users's TreeView to uses the stock icon for Folders. 2005-08-14 Pedro Villavicencio Garrido * src/gyrus-main-app.c (gyrus_main_app_about): port to GtkAboutDialog. 2005-08-14 Pedro Villavicencio Garrido * src/gyrus-admin.c (gyrus_admin_logged_out), (gyrus_admin_pre_login): * src/glade/page.glade: use gtk-connect and gtk-disconnect instead of gtk-jump-to and gtk-stop. * configure.in: bump GTK+ dep to 2.6. 2005-08-14 Claudio Saavedra * src/gyrus-admin.c: (gyrus_admin_listen_channel), (gyrus_admin_write_channel): Added support for [ALERT] server responses, as specified in RFC 2060. Fixes #305197. 2005-08-09 Maxim Dziumanenko * configure.in: Added uk to ALL_LINGUAS 2005-07-22 Claudio Saavedra * TODO: Updated. * src/glade/report.glade: Set the scrolling policy to automatic. * src/gyrus-report.c: (gyrus_report_show_report), (gyrus_report_initialize_tree_view), (gyrus_report_evaluate_quota): Fixing memory leaks. Beginning work to improve performance. 2005-07-22 Claudio Saavedra * configure.in: New dependences (libgnomeprintui). * src/Makefile.am: Added files (gyrus-report.[ch]). * src/glade/Makefile.am: Added file (report.glade). * src/glade/report.glade: New UI for reports. * src/gyrus-admin.h: Including * src/gyrus-main-app.c: (gyrus_main_app_on_view_report), (gyrus_main_app_menu_set_sensitive): * src/gyrus-report.c: (gyrus_report_show_report), (gyrus_report_initialize_tree_view), (gyrus_report_on_delete_event_window_report), (gyrus_report_on_button_cancel_clicked), (gyrus_report_on_button_update_clicked), (gyrus_report_evaluate_quota), (gyrus_report_on_button_print_clicked), (gyrus_report_create_print), (gyrus_report_draw_begin), (gyrus_report_create_data_page), (gyrus_report_print_quota): * src/gyrus-report.h: * src/schemas/gyrus.xml: New menu entry. Merging changes from Alejandro Valdés in order to support the creation of reports with users overquota (#307181). 2005-07-18 Alejandro Valdes * src/gyrus-admin.h: add this file. * src/gyrus-report.c: add this file. Support for gnomeprintui. * src/glade/report.glade: add this file. 2005-07-22 Claudio Saavedra * src/gyrus-main-app.c: (gyrus_main_app_on_button_close_page_clicked), (gyrus_main_app_on_switch_page): Puts the name of the active session in the title of the main window (#307293). Patch by Héctor Enríquez Díaz with little modifications. 2005-06-24 Claudio Saavedra * src/gyrus-admin.c: (gyrus_admin_on_acl_identifier_edited): Check if the iter is seted correctly. Fix bug #308422. Patch from Juan Carlos Inostroza . 2005-06-09 Claudio Saavedra * src/gyrus-admin-mailbox.c: (gyrus_admin_mailbox_get_quota): Renamed parameter from message to error. * src/gyrus-admin-mailbox.h: * src/gyrus-admin.h: * src/gyrus-common.h: * src/gyrus-dialog-find-mailbox.h: * src/gyrus-dialog-mailbox-new.h: * src/gyrus-main-app.h: * src/gyrus-preferences.h: * src/gyrus-session.c: (gyrus_session_show_sessions): Marked parameter widget as G_GNUC_UNUSED. * src/gyrus-session.h: Documented all the public API. 2005-06-03 Claudio Saavedra * README: Updated Bugzilla info. 2005-05-20 Claudio Saavedra * src/gyrus-admin-acl.c: (gyrus_admin_acl_set_entry): Uses gyrus_common_str_is_ascii. * src/gyrus-common.c: (gyrus_common_str_is_ascii): * src/gyrus-common.h: Function to check if a string is ASCII. 0.3.3 2005-05-19 Claudio Saavedra * NEWS: Updated. * configure.in: Increased version. * po/en_CA.po: * po/en_GB.po: * po/es.po: * po/pt_BR.po: * po/sv.po: * po/zh_CN.po: 2005-05-19 Claudio Saavedra * src/gyrus-admin-acl.c: (gyrus_admin_acl_set_entry): Rejects utf-8 identifiers, as cyrus doesn't allow those chars. Fixes bug #301960. 2005-05-16 Pedro Villavicencio Garrido * gyrus.desktop.in: Added desktop entry. * Makefile.am: Updated for generate the .desktop. * po/POTFILES.in: Added gyrus.desktop.in to the list. 2005-05-13 Claudio Saavedra * TODO: Updated info. * po/POTFILES.in: Added encoding message. * src/gyrus-main-app.c: (main): Adding bind_textdomain_codeset() call. Fixes #303742. Patch from Pedro Villavicencio . 2005-05-13 Claudio Saavedra * src/gyrus-admin-acl.c: (gyrus_admin_acl_set_entry): Check if entry or mailbox name comes empty. * src/gyrus-admin-mailbox.h: Added headers to remove warnings. * src/gyrus-session.c: Commented out the unused gyrus_session_debug_pring_stored_session() function. 2005-05-13 Claudio Saavedra * TODO: Updated info * src/glade/page.glade: Added a dialog to ask for the password, changing entries to labels to make the app more HIG'ished. * src/gyrus-admin.c: (gyrus_admin_init_get_widgets), (gyrus_admin_init_connect_signals), (gyrus_admin_pre_login): Cleaned up code. (gyrus_admin_load_session_info), (gyrus_admin_new): * src/gyrus-admin.h: * src/gyrus-common.c: (gyrus_dialog_password_new): Create dialog to ask for the password. * src/gyrus-common.h: * src/gyrus-main-app.c: (gyrus_main_app_about): Changed string "translators" to "translators-credits" so translators will know where to put their credits. 2005-04-21 Gareth Owen * configure.in: Added en_GB to ALL_LINGUAS 0.3.2 2005-04-20 Claudio Saavedra V * README: Updated info. * configure.in: Increased version. * po/en_CA.po: * po/es.po: * po/pt_BR.po: * po/sv.po: * po/zh_CN.po: 2005-04-19 Claudio Saavedra V * AUTHORS: * NEWS: Added info for 0.3.2 * intltool-extract.in: * intltool-merge.in: * intltool-update.in: * src/glade/page.glade: Removed RULES_HINTS from treeview and disabled auto search.. * src/glade/preferences.glade: Removed RULES_HINTS from treeview. * src/glade/sessions.glade: * src/gyrus-admin-mailbox.c: (gyrus_admin_mailbox_on_button_quota_apply_clicked), (gyrus_admin_mailbox_exists), (gyrus_admin_mailbox_new), (gyrus_admin_mailbox_delete), (gyrus_admin_acl_set_tree_view), (gyrus_admin_start_editing_selected_acl), (gyrus_admin_add_acl_entry): Improved messages. Fixed bug that didn't allow to create mailboxes under maiboxes whose names have spaces. Allows to create ACL entries, with care of not overwriting previously existent entris. * src/gyrus-admin.c: (gyrus_admin_get_users_list), Better parsing of LIST command. (gyrus_admin_write_channel), (gyrus_admin_logged_out), (gyrus_admin_has_current_acl_access), Returns TRUE if user has access to ACL of selected mailbox. (gyrus_admin_on_users_selection_changed), Keeps sensitivity of items consistent. (gyrus_admin_on_acl_identifier_edited): Changed lot of g_print's to g_warning's. * src/gyrus-admin.h: indented comments. Header for gyrus_admin_has_current_acl_access. * src/gyrus-main-app.c: (gyrus_main_app_on_acl_entry_new), Adds an entry to current ACL. (gyrus_main_app_make_sensitivity_consistent), (gyrus_main_app_on_switch_page), (gyrus_main_app_about): Removed my second lastname (mom i love you :-). * src/gyrus-session.c: (gyrus_session_set_treeview), (gyrus_session_show_sessions): Keeps sessions list sorted. 2005-04-14 Claudio Saavedra V * src/glade/preferences.glade: * src/gyrus-admin.c: (gyrus_admin_ask_user_if_overwrite): * src/gyrus-main-app.c: (gyrus_main_app_on_edit_mailbox_remove): Fixed typos and improved messages. 2005-04-12 Claudio Saavedra V * README: Updated cvs information. * TODO: Added more things to do. 2005-04-09 Raphael Higino * configure.in: Added pt_BR to ALL_LINGUAS. 2005-04-09 Adam Weinberger * configure.in: Added en_CA to ALL_LINGUAS. 2005-04-10 Funda Wang * configure.in: Added "zh_CN" to ALL_LINGUAS. 2005-04-09 Christian Rose * configure.in: Added "sv" to ALL_LINGUAS. 2005-04-05 Claudio Saavedra * src/gyrus-main-app.c: (gyrus_main_app_make_sensitivity_consistent): Makes the sensitivity of the app items consistent with the GyrusAdmin currently being showed. (gyrus_main_app_on_button_close_page_clicked): Calls gyrus_main_app_make_sensitivity_consistent to make the sensitivity of the application items consistent. 2005-04-03 Claudio Saavedra * src/gyrus-admin-acl.c: (gyrus_admin_acl_get): Fixed bug that crashed when getting an empty ACL. (gyrus_admin_acl_list_free): Function to free memory used by a GList of GyrusImapAclEntry'es. * src/gyrus-admin-acl.h: Added header for gyrus_admin_acl_list_free. * src/gyrus-admin-mailbox.c: (gyrus_admin_acl_set_tree_view): Use gyrus_admin_acl_list_free. (gyrus_admin_start_editing_selected_acl): Start editing the identifier of the selected ACL. * src/gyrus-admin-mailbox.h: Header for gyrus_admin_start_editing_selected_acl. * src/gyrus-admin.c: (gyrus_admin_initialize_acl_tree_view): Signal "edited" connected to gyrus_admin_on_acl_identifier_edited. (gyrus_admin_on_acl_selection_changed): Changing sensitivity of "ACL->Rename entry" menu item. (gyrus_admin_acl_eliminate_model_entry): 'Foreach' function that delete a item in the model. Used by gyrus_admin_on_acl_identifier_edited. (gyrus_admin_ask_user_if_overwrite): Message to ask the user if he/she wants to overwrite an existent entry when renaming. (gyrus_admin_on_acl_identifier_edited): Callback when editing of the name of an ACL entry is done. Renames if new name is different from the old one, calls gyrus_admin_ask_user_if_overwrite if needed, and makes all the rename magicly :-). Needs a little love. * src/gyrus-main-app.c: (gyrus_main_app_on_acl_entry_rename): Call gyrus_admin_start_editing_selected_acl. (gyrus_main_app_on_switch_page): Maintains sensitivity of Menu Items consistent when switching pages in the main notebook. 2005-04-02 Claudio Saavedra * TODO: Added file with (short) future development plans. * src/gyrus-admin-acl.c: (gyrus_admin_acl_delete_entry): Function to delete a ACL entry. * src/gyrus-admin-acl.h: Moved GyrusImapAclEntry and GYRUS_IMAP_ACL_ENTRY() definition from gyrus-admin-acl.c. Also added header for gyrus_admin_acl_get, gyrus_admin_acl_delete_entry. * src/gyrus-admin-mailbox.c: (gyrus_admin_acl_rights_have_right), (gyrus_admin_acl_set_tree_view): Moved gyrus_admin_acl_set_tree_view, gyrus_admin_acl_rights_have_right, from gyrus-admin-acl.c. (gyrus_admin_acl_has_selection): Returns TRUE if @admin has selection. (gyrus_admin_delete_selected_acl_entry): Delete the selected ACL entry. * src/gyrus-admin-mailbox.h: Added header for gyrus_admin_delete_selected_acl_entry . * src/gyrus-admin.c: (gyrus_admin_initialize_acl_tree_view): (gyrus_admin_on_acl_selection_changed): Verify if there is a selection in current ACL. Then sets the sensitivity of "Delete ACL" menu entry. * src/gyrus-main-app.c: (gyrus_main_app_on_acl_entry_delete), (gyrus_main_app_on_acl_entry_rename), (gyrus_main_app_on_acl_entry_new): Added callbacks for the new ACL actions. (gyrus_main_app_on_switch_page): On switch page check if there is ACL entry selected, to set sensitive the "Delete ACL" menu entry. * src/schemas/gyrus.xml: Added schema for ACL editing. 2005-03-28 Claudio Saavedra V * NEWS: Added info of releases. 2005-03-26 Claudio Saavedra * README: * po/es.gmo: * po/es.po: * po/gyrus.pot: * src/gyrus-main-app.c: (gyrus_main_app_init): Changed gconf path for UI configuration. * src/gyrus-session.c: (gyrus_session_edit_on_button_ok_clicked): Make edited session default selection in treeview. Also grab focus to "Open" button. (gyrus_session_edit_load_interface): Grab default to "OK" button. (gyrus_session_show_sessions): Select first session in list, if any, then grab focus to "Open" button. If no session exists, grab focus to "New" button. (gyrus_session_seek_session), (gyrus_session_select_session): Functions to get the edited session selected. 2005-03-25 Claudio Saavedra * README: More descriptive README. Now in English. * po/de.po: * po/es.gmo: * po/es.po: * po/gyrus.pot: * src/gyrus-admin-acl.c: (gyrus_admin_acl_get): Corrects wrong comment. (gyrus_admin_acl_set_tree_view): Fix HORRIBLE bug, that showed 'i' permission in the column where 'w' permission goes. * src/gyrus-admin.c: (gyrus_admin_initialize_acl_tree_view): Adds data to columns, so it can be recovered later in gyrus_admin_on_renderer_toggled. (gyrus_admin_on_renderer_toggled): Call gyrus_admin_acl_set_entry to change ACL permissions. Updates permissions when these are changed. * src/gyrus-admin.h: Renamed enum 'GyrusColumnsAcl' to 'GyrusColumnAcl'. 2004-12-30 Claudio Saavedra * src/Makefile.am: Added file for i18n. * src/gyrus-admin-acl.c: * src/gyrus-admin-mailbox.c: * src/gyrus-admin.c: * src/gyrus-common.c: * src/gyrus-dialog-find-mailbox.c: * src/gyrus-dialog-mailbox-new.c: * src/gyrus-i18n.h: * src/gyrus-main-app.c: (gyrus_main_app_create_label_from_admin), (main): * src/gyrus-preferences.c: * src/gyrus-session.c: Including "gyrus-i18n.h" in every file. Now translation works!. Fixes bug #6. Added a litle love to the label of pages in notebook. 2004-12-29 Claudio Saavedra * configure.in: Added (poor) German translation. * src/glade/sessions.glade: Make clearer some user visible strings. * src/gyrus-admin.c: (gyrus_admin_login): * src/gyrus-dialog-find-mailbox.c: (gyrus_dialog_find_mailbox_init): * src/gyrus-session.c: (gyrus_session_append_session), (gyrus_session_set_treeview): Make clearer some user visible strings. 2004-12-29 Claudio Saavedra * configure.in: * po/es.gmo: * po/es.po: * po/gyrus.pot: * src/gyrus-admin-acl.c: * src/gyrus-admin-mailbox.c: * src/gyrus-admin.c: (gyrus_admin_init_get_widgets): * src/gyrus-common.c: * src/gyrus-dialog-find-mailbox.c: (gyrus_dialog_find_mailbox_init_get_widgets): * src/gyrus-dialog-find-mailbox.h: * src/gyrus-dialog-mailbox-new.c: (gyrus_dialog_mailbox_new_init_get_widgets): * src/gyrus-main-app.c: (gyrus_main_app_init), (gyrus_main_app_about): * src/gyrus-main-app.h: * src/gyrus-preferences.c: * src/gyrus-session.c: (gyrus_session_load_interface), (gyrus_session_edit_load_interface): Improved i18n system. Now the entire application is translated, excepts the BonoboUI component (menubar). 2004-12-28 Claudio Saavedra V. * src/glade/page.glade: Added a hiden GtkLabel in area of ACL. * src/gyrus-admin-acl.c: (gyrus_admin_acl_get), (gyrus_admin_acl_set_tree_view): If there is no permission to see the ACL, hide the GtkTreeView and show a "Permission Denied" message. Also fixes bug #7. * src/gyrus-admin.c: (gyrus_admin_init_get_widgets): Get the GtkScrolledWindow of the ACL TreeView and the added GtkLabel. * src/gyrus-admin.h: Added a GtkLabel (label_acl) and a GtkScrolledWindow (scrolled_acl) to struct GyrusAdminPrivate. 2004-12-27 Claudio Saavedra VERSION 0.3.1 ============= * configure.in: Version 0.3.1 2004-12-27 Claudio Saavedra * po/es.gmo: * po/es.po: Translation updated. * po/gyrus.pot: * src/glade/page.glade: Commented out (yet) useless toolbar. * src/gyrus-admin-acl.h: Added header for gyrus_admin_acl_set_tree_view (). * src/gyrus-admin-mailbox.c: (gyrus_admin_mailbox_get_quota), (gyrus_admin_mailbox_clear_info), (gyrus_admin_mailbox_new), (gyrus_admin_mailbox_delete_all): Show correctly message when no permission to check the Quota of mailbox. Let create mailboxes in "user.". 2004-12-26 Claudio Saavedra * src/glade/page.glade: Added expander to glade file. Removed unused window_quota. Moved widgets from unused ACL Window to main window. * src/gyrus-admin-acl.c: (gyrus_admin_acl_rights_have_right), (gyrus_admin_acl_set_tree_view): Show ACL in treeview. * src/gyrus-admin-mailbox.c: (gyrus_admin_mailbox_set_sensitive), (gyrus_admin_mailbox_show_info), (gyrus_admin_mailbox_clear_info), (gyrus_admin_mailbox_on_button_quota_apply_clicked): Added calls to show/clean ACL in treeview. * src/gyrus-admin.c: (gyrus_admin_init_get_widgets), (gyrus_admin_init), (gyrus_admin_finalize), (gyrus_admin_destroy), (gyrus_admin_get_users_list), (gyrus_admin_acl_tree_model_new), (gyrus_admin_initialize_acl_tree_view): Change return from GtkTreeModel to GtkListStore, because it is a list. Moved GyrusColumnsAcl enum to gyrus-admin.h to make it public. Also renamed COL_ACL_ENTRY to COL_ACL_IDENTIFIER. Removed unused variable xml_quota. * src/gyrus-admin.h: Moved GyrusColumnsAcl enum to gyrus-admin.h to make it public. Also renamed COL_ACL_ENTRY to COL_ACL_IDENTIFIER. 2004-12-25 Claudio Saavedra * po/es.gmo: * po/es.po: * po/gyrus.pot: * src/gyrus-admin-acl.c: (gyrus_admin_acl_sort_func), (gyrus_admin_acl_get): New function to retrieve a the access control list. See code for details. 2004-12-24 Claudio Saavedra * po/POTFILES.in: Added files. * po/es.gmo: * po/es.po: Updated translation. * po/gyrus.pot: * src/gyrus-dialog-find-mailbox.c: (gyrus_dialog_find_mailbox_compare_with_method), (gyrus_dialog_find_mailbox_on_button_find_clicked): Searchs in mode 'Wrap around'. 2004-12-23 Claudio Saavedra * po/es.gmo: * po/es.po: * po/gyrus.pot: * src/gyrus-dialog-find-mailbox.c: (gyrus_dialog_find_mailbox_kp), (gyrus_dialog_find_mailbox_compare_with_method), (gyrus_dialog_find_mailbox_on_button_find_clicked), (gyrus_dialog_find_mailbox_init_connect_signals): Find in 'Match entire word only' mode also. 2004-12-23 Claudio Saavedra * src/gyrus-admin.c: Moved GyrusColumnMailboxes from gyrus-admin.h * src/gyrus-admin.h: Moved GyrusColumnMailboxes to gyrus-admin.c * src/gyrus-dialog-find-mailbox.c: (gyrus_dialog_find_mailbox_on_button_find_clicked), (gyrus_dialog_find_mailbox_init_connect_signals), (gyrus_dialog_find_mailbox_init), (gyrus_dialog_find_mailbox_finalize), (gyrus_dialog_find_mailbox_set_admin): * src/gyrus-dialog-find-mailbox.h: Finds a string in the mailboxes. Matchs only if the mailbox begins with the string. It can continue search. Added private GyrusAdmin element. Must be set with gyrus_dialog_find_set_admin (); * src/gyrus-main-app.c: (gyrus_main_app_on_edit_find), (gyrus_main_app_on_edit_mailbox_add): Sets the GyrusAdmin for GyrusDialogFindMailbox when this is created. 2004-12-17 Claudio Saavedra * src/Makefile.am: Added src/gyrus-dialog-find-mailbox.[ch] * src/glade/Makefile.am: Added src/glade/find.glade * src/glade/find.glade: GyrusDialogFindMailbox interface. * src/gyrus-admin.c: (gyrus_admin_on_users_selection_changed): Correctly shows mailbox owner in Info table. * src/gyrus-dialog-find-mailbox.c: (gyrus_dialog_find_mailbox_on_entry_changed), (gyrus_dialog_find_mailbox_class_init), (gyrus_dialog_find_mailbox_init_get_widgets), (gyrus_dialog_find_mailbox_init_connect_signals), (gyrus_dialog_find_mailbox_init), (gyrus_dialog_find_mailbox_finalize), (gyrus_dialog_find_mailbox_destroy), (gyrus_dialog_find_mailbox_new), (gyrus_dialog_find_mailbox_get_type): * src/gyrus-dialog-find-mailbox.h: Started API for GyrusDialogFindMailbox, a dialog and engine for searching mailboxes. * src/gyrus-main-app.c: (gyrus_main_app_on_edit_find): Shows a GyrusDialogFindMailbox when "find/edit" command activated. 2004-12-16 Claudio Saavedra V. * intltool-extract.in: * intltool-merge.in: * intltool-update.in: * src/gyrus-admin-acl.c: (gyrus_admin_acl_set_entry): Added break in the end of switch. Fixes bug #5. 2004-12-13 Claudio Saavedra VERSION 0.3.0 ============= * configure.in: Up version. * po/es.po: 2004-12-13 Claudio Saavedra * po/es.gmo: * po/es.po: * src/gyrus-main-app.c: (gyrus_main_app_init): Added a GnomeAppbar to GyrusMainApp. TODO: Include it as a private member of the class. 2004-12-12 Claudio Saavedra * po/POTFILES.in: Added src/gyrus-mailbox-acl.c * po/es.gmo: * po/es.po: * po/gyrus.pot: Updated translation. * src/Makefile.am: Added src/gyrus-mailbox-acl.[ch] * src/gyrus-admin-acl.c: (gyrus_admin_acl_set_entry): * src/gyrus-admin-acl.h: ACL support modules added. * src/gyrus-admin-mailbox.c: (gyrus_admin_mailbox_delete), (gyrus_admin_mailbox_delete_all): Added flag for deleting with permission. * src/gyrus-admin.c: (gyrus_admin_finalize), (gyrus_admin_destroy), (gyrus_admin_listen_channel), (gyrus_admin_write_channel): Removed g_print () calls. * src/gyrus-common.c: * src/gyrus-main-app.c: (gyrus_main_app_on_file_open_session), (gyrus_main_app_on_file_exit), (gyrus_admin_delete_dialog_on_response), (gyrus_main_app_on_edit_mailbox_remove), (gyrus_main_app_on_edit_preferences), (gyrus_main_app_on_view_refresh), (gyrus_main_app_on_help_about), (gyrus_main_app_get_type), (gyrus_main_app_class_init), (gyrus_main_app_init), (gyrus_main_app_finalize), (gyrus_main_app_destroy), (gyrus_main_app_new), (gyrus_application_window_destroyed_callback): Removed g_print () calls. * src/gyrus-session.h: Improved header. 2004-12-12 Claudio Saavedra * po/es.gmo: * po/es.po: Updated translation. * po/gyrus.pot: Updated template. * src/glade/sessions.glade: Improved messages. * src/gyrus-admin-mailbox.c: (gyrus_admin_mailbox_get_quota), (gyrus_admin_mailbox_set_quota), (gyrus_admin_mailbox_on_button_quota_apply_clicked), (gyrus_admin_mailbox_name_is_valid), (gyrus_admin_mailbox_new), (gyrus_admin_get_submailboxes), (gyrus_admin_mailbox_delete), (gyrus_admin_mailbox_delete_all): * src/gyrus-admin-mailbox.h: * src/gyrus-admin.c: (gyrus_admin_logged_out), (gyrus_admin_on_users_selection_changed): * src/gyrus-admin.h: * src/gyrus-main-app.c: (gyrus_main_app_on_edit_mailbox_remove), (gyrus_main_app_on_help_about), (gyrus_main_app_on_button_close_page_clicked), (gyrus_main_app_on_switch_page), (gyrus_main_app_about), (gyrus_main_app_append_page), (gyrus_main_app_menu_item_set_sensitive), (gyrus_main_app_menu_set_sensitive): * src/gyrus-main-app.h: * src/gyrus-session.c: (gyrus_session_append_session), (gyrus_session_set_treeview), (gyrus_session_open): Improved messages. Added modules for deleting mailboxes. Show message when trying to delete a mailbox without permission. 2004-12-11 Claudio Saavedra * Makefile.am: Added intltool-*.in to EXTRA_DIST, and intltool-*^{.in} to DISTCLEANFILES. * po/es.gmo: * po/es.po: 2004-12-11 Claudio Saavedra * src/Makefile.am: * src/glade/Makefile.am: * src/glade/Makefile.in: * src/glade/create_mailbox.glade: Added interface for creating mailboxes. * src/gyrus-admin-mailbox.c: (gyrus_admin_mailbox_exists), (gyrus_admin_mailbox_name_is_valid), (gyrus_admin_mailbox_new): * src/gyrus-admin-mailbox.h: * src/gyrus-admin.c: (gyrus_admin_finalize), (gyrus_admin_destroy), (gyrus_admin_initialize_users_tree_view), (gyrus_admin_initialize_acl_tree_view), (gyrus_admin_select_foreach_func), (gyrus_admin_select_mailbox), (gyrus_admin_get_selected_mailbox), (gyrus_admin_is_connected), (gyrus_admin_get_current_host), (gyrus_admin_get_current_user), (gyrus_admin_get_current_port), (gyrus_admin_get_current_session_name), (gyrus_admin_get_current_passwd), (gyrus_admin_load_session_info), (gyrus_admin_new): * src/gyrus-admin.h: Application create mailboxes. To do so, select parent mailbox and press the 'Add mailbox' button. * src/gyrus-common.c: * src/gyrus-common.h: (gtk_entry_has_text): Function to check if GtkEntry has text (distinct of spaces). * src/gyrus-dialog-mailbox-new.c: (gyrus_dialog_mailbox_new_on_button_ok_clicked), (gyrus_dialog_mailbox_new_on_checkbutton_toggled), (gyrus_dialog_mailbox_new_on_entry_changed), (gyrus_dialog_mailbox_new_get_type), (gyrus_dialog_mailbox_new_class_init), (gyrus_dialog_mailbox_new_init_get_widgets), (gyrus_dialog_mailbox_new_init_connect_signals), (gyrus_dialog_mailbox_new_init), (gyrus_dialog_mailbox_new_finalize), (gyrus_dialog_mailbox_new_destroy), (gyrus_dialog_mailbox_new_new): * src/gyrus-dialog-mailbox-new.h: New class for the dialog 'New Mailbox'. Checks text and quota. Validate input (valid mailbox name, valid double quota). * src/gyrus-main-app.c: (gyrus_main_app_on_edit_find), (gyrus_main_app_on_edit_mailbox_add), (gyrus_main_app_menu_set_sensitive): * src/gyrus-main-app.h: * src/schemas/gyrus.xml: Changed 'Add/remove account' to 'Add/remove mailbox'. 2004-12-09 Claudio Saavedra * src/gyrus-admin.c: (gyrus_admin_get_users_list), (gyrus_admin_mailbox_exists), (gyrus_admin_mailbox_name_is_valid), (gyrus_admin_mailbox_new): * src/gyrus-admin.h: * src/gyrus-main-app.c: (gyrus_main_app_on_help_about): Functions for creating mailboxes in server. Validates mailbox name, root existence, asignate quota. 2004-12-08 Claudio Saavedra * configure.in: * po/Makefile.in.in: * po/POTFILES.in: * po/es.gmo: * po/es.po: * po/gyrus.pot: * src/glade/Makefile.in: * src/schemas/gyrus.xml: * src/glade/Makefile.in: Fixed i18n stuffs. 2004-12-08 Claudio Saavedra * src/gyrus-admin-mailbox.c: (gyrus_admin_mailbox_get_quota): Indented header. * src/gyrus-admin.c: (gyrus_admin_init_get_widgets), (gyrus_admin_finalize), (gyrus_admin_logout), (gyrus_admin_logged_out), (gyrus_admin_post_login), (gyrus_admin_set_parent_app), (gyrus_admin_refresh_users_list), (gyrus_admin_on_button_connect_clicked): Added functionality for refreshing mailboxes tree. Make Update command available only when current GyrusAdmin is connected. * src/gyrus-admin.h: Added private member gpointer parent_app. * src/gyrus-main-app.c: (gyrus_main_app_on_view_refresh), (gyrus_main_app_on_button_close_page_clicked), (gyrus_main_app_on_switch_page), (gyrus_main_app_init), (gyrus_main_app_finalize), (gyrus_main_app_destroy), (gyrus_main_app_get_current_admin), (gyrus_main_app_about), (gyrus_main_app_new), (gyrus_main_app_append_page), (gyrus_main_app_menu_set_sensitive): Make Update command available only when current GyrusAdmin is connected. * src/gyrus-main-app.h: * src/gyrus-session.c: (gyrus_session_open): * src/schemas/gyrus.xml: Added CTRL+F (find), CTRL+R (refresh) 2004-12-08 Claudio Saavedra Valdés * src/glade/page.glade: Removed toolbox with buttons for add/remove mailboxes. * src/gyrus-admin-mailbox.c: (gyrus_admin_mailbox_get_quota), (gyrus_admin_mailbox_show_info), (gyrus_admin_mailbox_on_button_quota_apply_clicked): * src/gyrus-admin-mailbox.h: Added a message parameter (gyrus_admin_mailbox_get_quota) to send special messages. * src/gyrus-admin.c: (gyrus_admin_listen_channel), (gyrus_admin_write_channel): Using the debug info. * src/schemas/gyrus.xml: Added a toolbar with options. 2004-10-18 Claudio Saavedra V. VERSION 0.2.99 ============== * configure.in: up version. 2004-10-17 Claudio Saavedra V. * po/es.po: * src/glade/sessions.glade: Separate buttons of dialog "Sessions" in 5 pixels. * src/gyrus-admin-mailbox.c: (gyrus_admin_mailbox_get_quota), (gyrus_admin_mailbox_show_info): * src/gyrus-admin-mailbox.h: * src/gyrus-admin.c: (gyrus_admin_get_users_list), (gyrus_admin_create_socket_from_session), (gyrus_admin_listen_channel), (gyrus_admin_write_channel), (gyrus_admin_logout), (gyrus_admin_logged_out), (gyrus_admin_login), (gyrus_admin_pre_logout): * src/gyrus-admin.h: * src/gyrus-main-app.c: (gyrus_main_app_menu_toggle_sensitive): * src/gyrus-main-app.h: * src/gyrus-session.c: (gyrus_session_debug_print_stored_sessions), (gyrus_session_list_free), (gyrus_session_edit_on_button_cancel_clicked), (gyrus_session_edit_on_button_ok_clicked), (gyrus_session_on_button_properties_clicked), (gyrus_session_on_button_new_clicked), (gyrus_session_on_button_open_clicked), (gyrus_session_name_compare_func), (gyrus_session_on_button_delete_session_clicked), (gyrus_session_list_set_sensitive), (gyrus_session_edit_session), (gyrus_session_is_valid), (gyrus_session_append_session), (gyrus_session_new_from_interface), (gyrus_session_add_session_to_treeview), (gyrus_session_create_model_sessions), (gyrus_session_get_selected_session), (gyrus_session_get_with_name), (gyrus_session_load_gconf_settings), (gyrus_session_edit_load_interface), (gyrus_session_free): Improved the GyrusSession api. Removed global lists of sessions. Now uses the ListStore to store the sessions. Removing correctly the sessions from the gconf system. Validating new data with gconf_valid_key(). Fixed a lot of leaks. Fixed the bug mentioned in 2004-09-24. * src/gyrus-session.h: 2004-09-24 Claudio Saavedra V. * configure.in: * src/glade/sessions.glade: * src/gyrus-admin-mailbox.c: (gyrus_admin_mailbox_get_human_quota): * src/gyrus-admin-mailbox.h: * src/gyrus-admin.c: (gyrus_admin_finalize), (gyrus_admin_users_tree_model_new), (gyrus_admin_get_users_list), (gyrus_admin_acl_tree_model_new), (gyrus_admin_initialize_acl_tree_view), (gyrus_admin_listen_channel), (gyrus_admin_write_channel): * src/gyrus-admin.h: * src/gyrus-session.c: (gyrus_session_edit_on_button_cancel_clicked), (gyrus_session_edit_on_button_ok_clicked_for_new), (gyrus_session_edit_on_button_ok_clicked_for_edit), (gyrus_session_on_button_properties_clicked), (gyrus_session_on_button_new_clicked), (gyrus_session_on_button_open_clicked), (gyrus_session_on_button_delete_session_clicked), (gyrus_session_list_set_sensitive), (gyrus_session_edit_session), (gyrus_session_append_session), (gyrus_session_set_defaults_from_session), (gyrus_session_add_session_to_treeview), (gyrus_session_on_selection_changed), (gyrus_session_treeview_on_key_press_event), (gyrus_session_load_gconf_settings), (gyrus_session_open), (gyrus_session_load_interface), (gyrus_session_edit_load_interface), (gyrus_session_show_sessions): * src/gyrus-session.h: Improved the GyrusSession GUI and API. TODO: Fix a bug when creating a session and deleting it inmediatly. The session doesnt get deleted. 2004-09-10 Claudio Saavedra V. * src/Makefile.am: * src/glade/Makefile.am: * src/glade/preferences.glade: * src/gyrus-main-app.c: (gyrus_main_app_on_file_exit), (gyrus_main_app_on_edit_preferences): * src/gyrus-preferences.c: (gyrus_preferences_show_dialog): * src/gyrus-preferences.h: * src/schemas/gyrus.xml: Added files for the support of preferences. Currently preferences only being showed. 2004-09-10 Claudio Saavedra V. * src/gyrus-session.c: (gyrus_session_on_button_load_session_clicked), (gyrus_session_on_button_delete_session_clicked), (gyrus_session_store_session), (gyrus_session_add_session), (gyrus_session_set_treeview), (gyrus_session_create_model_sessions), (gyrus_session_get_selected_session): Rewrote sessions management to fix bug and eliminate usage of array. If any GConf master wants to check consistence and the good usage of the GConf client, please do it. 2004-09-10 Claudio Saavedra V. * src/gyrus-session.c: (gyrus_session_treeview_on_key_press_event), (gyrus_session_on_key_press_event), (gyrus_session_set_treeview), (gyrus_session_load_interface): Actuvated Esc key to cancel the load of a session. 2004-09-10 Claudio Saavedra V. * src/gyrus-session.c: (gyrus_session_treeview_on_key_press_event), (gyrus_session_set_treeview), (gyrus_session_get_with_name): Activated Del and Intro keys in treeview of sessions. 2004-09-03 Claudio Saavedra V. * src/gyrus-admin-mailbox.c: (gyrus_admin_mailbox_on_button_quota_apply_clicked): Fixed leak. Also, if user havent entered a quota, then does not change current. 2004-09-03 Claudio Saavedra V. * src/glade/page.glade: * src/gyrus-admin-mailbox.c: (gyrus_admin_mailbox_set_quota), (gyrus_admin_mailbox_show_info), (gyrus_admin_mailbox_on_button_quota_apply_clicked), (gyrus_admin_mailbox_on_entry_quota_new_activate): * src/gyrus-admin-mailbox.h: * src/gyrus-admin.c: (gyrus_admin_init_get_widgets), (gyrus_admin_init_connect_signals), (gyrus_admin_on_entry_pass_activate): New api for changing a mailbox quota. Implemented UI for changing updating quota. 2004-09-03 Claudio Saavedra V. * po/es.po: * src/gyrus-admin-mailbox.c: (gyrus_admin_mailbox_get_human_quota), (gyrus_admin_mailbox_show_info): * src/gyrus-session.h: New function to get a human readable quota size. 2004-08-20 Claudio Saavedra V. * acconfig.h: unused. soon to be removed. * configure.in: * src/glade/sessions.glade: Changed title * src/gyrus-admin-mailbox.c: (gyrus_admin_mailbox_show_info): * src/gyrus-admin.c: (gyrus_admin_get_users_list), (gyrus_admin_create_socket_from_session), (gyrus_admin_login), (gyrus_admin_pre_login), (gyrus_admin_on_users_selection_changed): * src/gyrus-admin.h: * src/gyrus-session.c: (gyrus_session_on_button_delete_session_clicked), (gyrus_session_list_set_sensitive), (gyrus_session_on_selection_changed), (gyrus_session_set_treeview), (gyrus_session_load_interface): Some widgets unsensitive when no item selected in treeview. 2004-08-20 Alejandro Valdes * src/gyrus-admin-mailbox.c: (gyrus_admin_mailbox_clear_info): clean number of accounts. * src/gyrus-admin.c: (gyrus_admin_get_users_list): set numbers of accounts in header column of treview-users. * src/pixmaps/logo_gyrus.png: change to version 0.2 2004-08-17 Claudio Saavedra V. * src/gyrus-admin.[ch]: Many changes including major interfase changes, Showing quota usage for mailboxes, etc. * src/gyrus-admin-mailbox.[ch]: new file with modules for administration of user mailbox. * src/glade/page.glade: changes in the interfase to simplify it. 2004-08-13 Claudio Saavedra V. * NEWS: * mkinstalldirs: * po/es.po: * src/gyrus-admin.c: (gyrus_admin_get_type), (gyrus_admin_class_init), (gyrus_admin_init_connect_signals), (gyrus_admin_init), (gyrus_admin_get_users_list), (gyrus_admin_create_socket_from_session), (gyrus_admin_initialize_channel), (gyrus_admin_listen_channel), (gyrus_admin_write_channel), (gyrus_admin_logout), (gyrus_admin_login), (gyrus_admin_post_login), (gyrus_admin_pre_logout), (gyrus_admin_pre_login), (gyrus_admin_is_connected), (gyrus_admin_get_current_passwd), (gyrus_admin_on_button_connect_clicked): Sync versions of gyrus in my own local repository 2004-08-06 Claudio Saavedra V. * src/gyrus-admin.[ch]: Administrators get connected with servers and retrieve the users list. New functionality that shows complete submailboxes tree. 2004-07-30 Claudio Saavedra V. * po/es.po: * src/gyrus-admin.c: (gyrus_admin_init_get_widgets), (gyrus_admin_finalize), (gyrus_admin_initialize_acl_tree_view), (gyrus_admin_create_socket_from_session), (gyrus_admin_initialize_channel), (gyrus_admin_login), (gyrus_admin_load_session_info): New functions to connect with servers. * src/gyrus-admin.h: Renamed fool variable. * src/gyrus-main-app.c: (gyrus_main_app_on_button_close_page_clicked), (gyrus_main_app_create_label_from_admin), (gyrus_main_app_append_page): Delete pages when clicked in tab button. * src/gyrus-main-app.h: Removed stupid blank lines. * src/gyrus-session.c: (gyrus_session_on_window_main_delete_event), (gyrus_session_on_button_store_session_clicked), (gyrus_session_on_button_load_session_clicked), (gyrus_session_on_button_delete_session_clicked), (gyrus_session_store_session), (gyrus_session_get_selected_session), (gyrus_session_load_gconf_settings), (gyrus_session_open), (gyrus_session_load_interface), (gyrus_session_free): Indented and added passwd to the structure GyrusSession in order to stablish connections. * src/gyrus-session.h: Added element passwd to struct GyrusSession. 2004-07-29 Claudio Saavedra V. * configure: removed file. * src/gyrus-admin.c: (gyrus_admin_init), (gyrus_admin_finalize), (gyrus_admin_get_current_host), (gyrus_admin_get_current_user), (gyrus_admin_get_current_port), (gyrus_admin_get_current_session_name), (gyrus_admin_load_session_info), (gyrus_admin_new): Improve of the load of the data to make independient the interfase and the object properties. * src/gyrus-admin.h: Added a GyrusStruct element to GyrusAdmin structure. * src/gyrus-main-app.c: (gyrus_main_app_get_type), (gyrus_main_app_init), (gyrus_main_app_finalize), (gyrus_main_app_create_label_from_session), (gyrus_main_app_new), (gyrus_main_app_append_page), (main): Label of notebook pages shows a button and the name of the session. * src/gyrus-main-app.h: Removed unused elements in struct GyrusMainApp * src/gyrus-session.c: (gyrus_session_on_button_delete_session_clicked), (gyrus_session_store_session), (gyrus_session_open), (gyrus_session_load_interface): Cleaned some leaks and unused call to glade_xml_signal_autoconnect() * src/gyrus-session.h: Removed unused macro definitions 2004-07-28 Claudio Saavedra V. VERSION: 0.2 [NEW SOURCE CODE STRUCTURE] * configure.in: Version 0.1 -> 0.2 * src/gyrus-admin.c: (gyrus_admin_initialize_acl_tree_view): Commented property setting. * src/gyrus-session.c: (gyrus_session_get_with_name), (gyrus_session_load_interface): Cleaned memory leaks and fixed wrong usage macro. 2004-07-17 Claudio Saavedra Valdés * src/acl.h: * src/acl.c: * src/gyrus.c: Mejoras estructurales varias. Algunas funciones nuevas para mejorar consistencia. Varios memory leaks limpiados. 2004-07-16 Claudio Saavedra Valdés * src/acl.c: * src/acl.h: * src/gyrus.h: * src/gyrus.c: Se crean nuevas funciones para crear modelos y treeviews para la ACL y lista de usuarios a modo de reorganizar el código. Se crea nueva columna en modelo para la ACL para registrar modificaciones y que solo se actualizen en el servidor las entradas modificadas y no todas. Creada función para obtener informacion de la quota de un usuario. Se extrae el código de gyrus_get_data_user (). TODO: Hacer lo mismo para las ACL. * po/es.po: Actualizado archivo con respecto a cambios realizados a algunos strings en src/gyrus.c 2004-07-16 Claudio Saavedra Valdés * src/Makefile.am: * src/gyrus.c: Se mueven todas las funciones gyrus_acl_* a nuevo archivo acl.c. Se desactiva la propiedad "reorderable" de los GtkTreeView de usuarios y ACL. Se activa ordenación automatica en los treeviews de acl y usuarios. El criterio de orden es 'entrada' y 'mailbox' respectivamente. * src/gyrus.h: Se renombran enumeraciones para mayor claridad. * src/glade/pixmaps/Makefile: eliminado. * src/acl.{c,h}: Added Files. Se modifica funcion gyrus_acl_entry_edited_callback () para evitar que al agregar un nuevo elemento a la ACL se envie informacion incompleta al servidor. Se corrige bug que no permitia crear nuevas entradas en la ACL. 2004-07-15 Claudio Saavedra Valdés * src/gyrus.c: Added signal to response when pressing return on password entry. This signal activates the "clicked" signal of the button "connect", to follow whatever this button does when clicked. * src/gyrus.{c,h}: Fixed ugly warnings when compiling. Bad function prototypes for functions gyrus_acl_tree_selection_foreach_func, gyrus_acl_selection_func and gyrus_acl_entry_foreach_func. 2004-05-11 Claudio Saavedra Valdés * src/gyrus.h: removed n_pages from struct Gyrus. * src/gyrus.c: - removed old references to n_pages. - FIXED: little bug when deselecting ACL entry while editing entry name. FIXME: Cast problems when toggling ACL rights entries. 2004-04-27 Alejandro Valdes * src/gyrus.c: - Se implemento la eliminación de los objectos gyrus que se guardaban el el GList. - Se dejo sin uso el campo de la estructura gyrus->n_page, no sirve. Falta sacarlo de la estructura. Esto ultimo se hizo ya que no siempre guarda relación el número de la pestaña seleccionada con el numero de pagina asociado a la estructura. - Se reparo el tema de la busqueda en los arboles. Ahora busca en los arboles que corresponden y no abre mas ventanas de busqueda. - Se reordeno la funcion gyrus_create_new_page(). - FIXME: falta actualizar la conexion con el servidor, una ves que ha pasado un tiempo, ya que por defecto las conexiones expiran por parte del servidor. * src/session.c: Reparaciones asociadas a la obtención de la estructura gyrus actual. 2004-03-11 Claudio Saavedra Valdés * src/gyrus.c: ACL: Deleting entries ready. TODO: Reload ACL Treeview after deleting entries; fix bug when cancelling rename. * src/glade/page.glade: New button for ACL deleting. * src/gyrus.h: Respective new element in ObjectGyrus struct. 2004-02-27 Claudio Saavedra Valdés * src/gyrus.c: ACL: Modifying entries names ready. Restructured some functions to make code more consistent. 2004-02-26 Claudio Saavedra Valdés * src/gyrus.c: ACL: Now it is posible to add ACL entries. Modifying entry name in developing. Some function names changed to follow standards. * src/gyrus.h: New element added to structure ObjectGyrus. * src/glade/page.glade: Added vertical button box for acl. 2004-02-15 Claudio Saavedra Valdés * src/gyrus.c: Modifying ACL entries now ready. Cleaned up some messages. 2004-02-14 Claudio Saavedra Valdes * src/gyrus.c: Part of the functions to update/add ACL entries ready. Fixed bug: when there is no ACL entry program crashes. * configure.in: Removed deprecated and obsolete GNOME_PLATFORM_GNOME_2 macro. This is in testing and there is no certainity about if this change works in all platforms. 2004-02-07 Claudio Saavedra Valdes * src/gyrus.c: Created function to toggle GtkCellRenderer in treeview_acl. Adjusted apropiated sensibility of button_apply_acl for each status of treeview_acl. 2004-02-04 Claudio Saavedra Valdes * src/gyrus.c: Correct display of the ACL of mailboxes. 2004-01-29 Claudio Saavedra Valdes * src/gyrus.c: Added functions to delete users/mailboxes. Renamed function create_new_page() to gyrus_create_new_page() accordly with standard. * src/gyrus.h: Some function definitions were added. New elements added to the struct ObjectGyrus. * src/sessions.c: Minor modifications. * src/glade/delete_mailbox.glade: New window added to the project. * src/glade/Makefile.am: Added entry for delete_mailbox.glade . 2004-01-29 Claudio Saavedra Valdes * src/gyrus.c: Created functions to add users. Now adding users is part of gyrus. * src/gyrus.h: Some function definitions added. Also new elements were added to the struct ObjectGyrus. * src/glade/create_user.glade: New window added to the project. * src/glade/Makefile.am: Added entry for create_user.glade . * src/glade/page.glade: Added panel with buttons for create/remove users. 2004-01-28 Claudio Saavedra Valdes * src/gyrus.c: Created gyrus_set_quota function. * src/gyrus.h: Definition of gyrus_set_quota function. 2004-01-14 Claudio Saavedra Valdes * src/gyrus.c: Automated creation of columns in ACL GtkTreeView. 2004-01-13 Alejandro Valdes * src/gyrus.c: change function create_new_page for function libglade * src/glade/page.glade: new file glade * po/es.po: add some words * src/glade/gyrus.glade: add propierty scrollable to notebook 2004-01-12 Alejandro Valdes * src/gyrus.c: repare some bugs in function new page 2004-01-08 Alejandro Valdes * src/gyrus.c: added function new page. * src/glade/gyrus.glade: modificated interface. 2004-01-08 Jorge Bustos * src/gyrus.h : Added function key_press_event_[find,connect] * src/gyrus.c : Added function key_press_event_[find,connect] 2004-01-08 Claudio Saavedra * src/gyrus.c: fixed gyrus_set_new_quota bug. 2004-01-08 Alejandro Valdes * src/gyrus.c: new function gyrus_refresh_treeview, separated filling function of treeview * src/gyrus.h: add new functions: gyrus_refresh_treeview and gyrus_fill_treeview 2004-01-08 Claudio Saavedra * src/gyrus.c: Fixed the 'user without quota' bug. * AUTHORS: My email was wrong in this file :) 2004-01-07 Claudio Saavedra * src/gyrus.c: add new version of gyrus_find_account_in_treeview function. 2003-12-12 Alejandro Valdes * src/gyrus.c: add new struct gyrus 2003-12-05 Alejandro Valdes * po/es.po: add some string 2003-11-28 Alejandro Valdes * src/gyrus.c : enable session management * src/sessions.c: some changes, repared somo bugs * src/glade/pixmap/logo_gyrus.png: change logo * configure.in: replace gconfgtk for gconf-2.0 2003-11-27 Alejandro Valdes * src/sessions.c: new file for management sessions * src/glase/sessions.glade: interface sessions management 2003-11-26 Jorge Bustos * src/gyrus.h : Added function key_press_event * src/gyrus.c : Added Key press support into gyrus_find_account() 2003-11-26 Alejandro Valdes * src/gyrus.c: repair gyrus_click_check, but is incomplete, add gconf functions, delete function create directory * src/glade/gyrus.glade: modification of interface * configure.in: add link to gconf library 2003-11-25 Alejandro Valdes * src/gyrus.c: repair gyrus_click_check, but is incomplete * src/gyrus.c: repair gyrus_click_check, but is incomplete * src/glade/gyrus.glade: add widget notebook to interfaz 2003-11-20 Alejandro Valdes * src/gyrus.c: add renderers type toggle for permissions, add function gyrus_click_check. (incomplete) 2003-11-20 Alejandro Valdes * src/gyrus.c: replace ACL combobox for gtktreeview * src/glade/gyrus.glade: change interfaz 2003-11-20 Alejandro Valdes * src/gyrus.c: show ACL in combo box 2003-11-19 Alejandro Valdes * src/gyrus.c: set focus on gtktreview and gtkentries, get ACL 2003-11-17 Alejandro Valdes * src/main.c: rename functions name * src/gyrus.c: rename functions name * src/gyrus.h: rename functions name 2003-10-16 Mario Fuentes * src/main.c: * src/gyrus.[ch]: added code for win32 portability, Now compile in win32!!, from now the portability is imminent and a new feature :). * src/glade/gyrus-gtk.glade: added, is a gyrus.glade modification without GNOME widgets, only GTK+, for windows port. 2003-10-07 Alejandro Valdes * src/glade/gyrus.glade: add new item to menu (find). * src/gyrus.c: new function find account * src/glade/entry.glade: new glade file for entry. 2003-09-05 Alejandro Valdes * src/gyrus.c: - add function logout (delete socket). - 2003-09-04 Alejandro Valdes * src/gyrus.c: - it did not show all the accounts, repaired. - change format presentation of quotas. 2003-09-03 Alejandro Valdes * src/gyrus.c: Rename some vars. Remove call to file about.glade. Implementing GtkListStore (testing). * /src/glade/gyrus.glade: add new features (ACL). * /src/glade/about.glade: removed. 2003-09-03 Jorge Bustos * src/main.c: Added GPL license and autoformated with indent -kr -i8 -pcs -lps -psl * src/gyrus.c: Added GPL license and autoformated with indent -kr -i8 -pcs -lps -psl * src/gyrus.h: Added GPL license and autoformated with indent -kr -i8 -pcs -lps -psl 2003-09-03 Alejandro Valdes * gyrus.c, gyrus.h: renombre de funciones. 2003-09-02 Alejandro Valdes * Cambio de nombre del proyecto * gyrus.c: trasformacion de KB a MB * /glade/gyrus.glade: reubicacion de objetos 2003-08-30 Alejandro Valdes * Se agrega un cuadro de dialogo para mostrar los mensajes. * hay que elimiar el archivo caja.glade (ya no es util). * se elimino codigo que estaa para la version anterior. * Se elimino archivo utal.png y se agrego user.xpm * Creacion de Imagen presentacion programa. * Se elimino archivo xpm.h, se reemplazo por imagen xpm. 2003-08-29 Alejandro Valdes * agrege las cuentas de usuarios cons sus carpetas al gtktreeview * se sacaron algunos botones (setear,consultar) * cambie la interfaz para mostrar los datos del usuario 2003-08-28 Alejandro Valdes * Agrege GTKTREEVIEW para visualizar las cuentas de un servidor * Agrege archivoxpm.h con imagenes paera el gtktreeeview 2003-08-21 Alejandro Valdes * Elimincion de script en tcl * Incorporacion de Gnet para conexion con socket al servidor Cyrus Imap 2003-08-19 Alejandro Valdes * Implementacion del INSTALL 2003-08-11 Alejandro Valdes * Inicio proyecto gyrus-0.4.2/INSTALL000066400000000000000000000010131426522072200137140ustar00rootroot00000000000000Installation Instructions ************************* Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005 Free Software Foundation, Inc. This file is free documentation; the Free Software Foundation gives unlimited permission to copy, distribute and modify it. Basic Installation ================== These are generic installation instructions. First create a build directory meson build Then build and install the package ninja -C build install To remove the package ninja -c uninstall gyrus-0.4.2/NEWS000066400000000000000000000162621426522072200133760ustar00rootroot000000000000000.4.0 ===== * New build system * Continue development 0.3.12 ====== * Remove markup from UI files (Daniel Mustieles) * Fix format not a string literal (Bart Martens) * Remove unused variables (Claudio Saavedra) New and updated translatiosn: cs: Marek Černocký es: Daniel Mustieles pl: Piotr Drąg pt_BR: Rafael Ferreira sl: Matej Urbančič sr: Мирослав Николић (sr) sr@latin: Мирослав Николић 0.3.11 ====== * Linking fixes (Claudio Saavedra) New and updated translations: cs: Marek Černocký de: Mario Blättermann es: Daniel Mustieles, Jorge González fr: Bruno Brouard gl: Fran Dieguez pl: Piotr Drąg pt_BR: Mateus Zenaide ro: Lucian Adrian Grijincu, Alexandru Baicoianu sl: Andrej Žnidaršič sv: Daniel Nylander 0.3.10 ====== * Replace glade with gtkbuilder (Alejandro Valdés, Claudio Saavedra) * Replace gnet with gio (Claudio Saavedra) * Remove GTK+ deprecated API usage (Claudio Saavedra) * Memory leaks fixed, UI improvements, and code fixes (Claudio Saavedra) * autotools and intltool fixes (Claudio Saavedra, Claude Paroz) New and updated translations: da: Joe Hansen fr: Bruno Brouard ga: Dario Villar Veres, Fran Diéguez hu: Gabor Kelemen pl: Piotr Drąg sl: Andrej Žnidaršič, Matej Urbančič zh_CN: Aron Xu, du baodao 0.3.9 ===== * Fix build * Minor code cleanup New and updated translations: cs: Marek Černocký de: Mario Blättermann sl: Andrej Žnidaršič sv: Daniel Nylander 0.3.8 ===== * Remove dependency on libgnomeui (Francisco Rojas). * Remove dependency on libgnomeprintui. * Fix a crasher on 64 bits machines (Francisco Rojas). * Code cleanups and fixes. Bug fixes: #435869, crash in Gyrus IMAP Cyrus Administrator: connecting to a server w... (Francisco Rojas) #555919, remove dependency on libgnomeui (Francisco Rojas) New and updated translations: ar: Djihed Afifi cs: Petr Kovar, Lucas Lommer, Andre Klapper en_GB: David Lodge es: Jorge González nb: Kjartan Maraas oc: Yannig Marchegay (Kokoyaya) pt_BR: Flamarion Jorge, Vladimir Melo sv: Daniel Nylander 0.3.7 ===== * Many usability fixes, dialogs clean up, more GTK+ stock usage, etc. * Show the program version in bug-buddy. * Build system fixes. * Make the tests build optional (disabled by default). * Make gnutls requirement optional (disabled by default). * Logo updated (Alejandro Valdés). * Fixed a typo (Bob Mauchin). * Many GObject related fixes and refactoring (Alejandro Valdés, Claudio). * GyrusConnection class works with secure connections. * Allow login with passwords with special characters. * Several code cleanups. Bug fixes: #337655 -- Allow passwords with special characters. #319436 -- Use correctly gnutls_record_recv () when it needs more than 1024 bytes. #429160 -- Logo shows old gyrus version. #432628 -- Typo in src/gyrus-admin-mailbox.c #429138 -- Private data of GObject classes are not hidden. New and updated translations: ar: Djihed Afifi ca: Jordi Deu-Pons en_GB: David Lodge es: Francisco Javier F. Serrador fr: Robert-André Mauchin and Claude Paroz dz: Sonam Pelden fi: Ilkka Tuohela hu: Albitz Nóra sv: Daniel Nylander vi: Clytie Siddall 0.3.6 ===== UI: * Dropped dependence on libbonoboui. Using now GtkUIManager. * Allow to create ACL entries in mailboxes with empty ACL. * Fixed typos and messages improved. (Clytie Siddall). New Features: * Allow to list and delete orphaned mailboxes. * New secure connection client interface (still in development, gyrus not ported to it) (Mario Fuentes). Fixes: * Fixed memory leaks. * Use automake 1.9 and some configure and build fixes (#327767, chpe@gnome.org). New and updated translations: * Lukáš Novotný (cs). * Adam Weinberger (en_CA). * Francisco Javier F. Serrador (es). * Ilkka Tuohela (fi). * Vincent van Adrighem (nl). * Clytie Siddall (vi). Thanks to: chpe@gnome.org, Mario Fuentes, Lukáš Novotný, Francisco Javier F. Serrador, Clytie Siddall, Ilkka Tuohela, Vincent van Adrighem, Adam Weinberger. 0.3.5 ===== UI: * Removed unused images from distribution. * Improved some messages. * Better usage of GTK+ stock icons. Fixes: * Do not crash when manipulating old format sessions (#314809). * Fixed several memory leaks and compilation time warnings. Translations: * New and updated translations (en_CA, vi). Thanks to: Mauricio Fuentes, Clitye Siddall, Adam Weinberger. 0.3.4 ===== New Features: * Allows to create printable reports of users with quota exceeded (Alejandro Valdés). * Added support for [ALERT] server responses. * Added support for servers using the UNIX mailbox hierarchy separator instead of the netnews separator character. UI: * Shows the name of the active session in the title of the main window (Héctor Enríquez Díaz, Claudio). * Better usage of GTK+ stock icons (Mario Fuentes, Pedro Villavicencio Garrido). * Improved dialog for edition of sessions (Mario, Claudio). * Dumped to GTK+ 2.6.0 and using GtkDialogAbout (Pedro). Translations: * Updated tarnslations (en_CA, es). * New translations (uk). Bug fixes: * #308422. Check if iter is set correctly (Juan Carlos Inostroza). * #305197. Do not hang when server uses [ALERT] responses. Thanks to: Héctor Enríquez Díaz, Maxim Dziumanenko, Mario Fuentes, Juan Carlos Inostroza, Alejandro Valdés, Pedro Villavicencio Garrido, Adam Weinberger. 0.3.3 ===== UI: * Changed GtkEntry'es to GtkLabel's in main interface. * Removed password entry and changed for a dialog. Integration: * Added entry in GNOME Menu (Pedro Villavicencio). Translations: * Updated tarnslations (en_CA, es). * New translations (en_GB). Bug fixes: * #303402. Added bind_textdomain_codeset() call (Pedro). * #301960. Reject utf-8 identifiers in ACL. Thanks to: Pedro Villavicencio, Gareth Owen, Adam Weinberger. 0.3.2 ===== Access Control List: * Allows to add, remove and rename ACL entries. * Allows to modify permissions. * Hides Access Control List when user doesn't have permission to see it. UI: * Improved messages and fixed typos. * Various improvements in GUI. * Added menu items for ACL manipulation. Translations: * Translation now works. * New translations (en_CA pt_BR sv zh_CN). * Updated translations (es). Bug fixes: * Allows to create mailboxes under mailboxes whose name include spaces. * Show correctly permission 'write' in the ACL. * Do not crash if user doesn't have permission to see ACL. * Better interaction for non administrator users. Thanks to: Christian Rose, Funda Wang, Adam Weinberger, Raphael Higino, Rodrigo Moya, Fernando San Martín W. 0.3.1 ===== * A Dialog for finding mailboxes. * Shows the Access Control List (ACL) for selected mailboxes. Next releases will include the ability to modify ACL and add/remove entries. Bug Fixes: * Removed some compile time warnings (Claudio, Casper Pedersen). * Allows to create mailboxes in root level. * Show correct messages when user has no permission to check the quota of a mailbox. i18n: * Updated translation (es). 0.3.0 ===== Added following modules: * Creation of mailboxes. * Deletion of mailboxes. Improved GUI: * Added a toolbar. * Improved messages. i18n: * Updated translation (es). * Added intltool to help with translations. * Improved structure of some messages. 0.2.99 ====== * Fixed GConfs bugs. * Improved sessions interface. * Allow modification of user quotas. gyrus-0.4.2/README000066400000000000000000000057131426522072200135560ustar00rootroot00000000000000Gyrus: GNOME IMAP/Cyrus Administrator. ====================================== https://gitlab.com/wvdakker/gyrus Version: 0.4.0 Gyrus is a small tool for the administration of mailboxes in IMAP/Cyrus servers. The main idea behind it, is to provide mail server administrators with a better way to do the daily maintenance than a command line or a plain and boring telnet client.. Gyrus is free software and licensed under the GPL v.2, you are free and encouraged to copy it and distribute it. See the COPYING file for details. * Getting Gyrus Gyrus can be downloaded from its Web page: http://www.gnome.org/projects/gyrus. If you want to get the development version, you can check it out from the git repository: $ git clone https://gitlab.com/wvdakker/gyrus Normally, the development version is pretty stable, so don't feel too scared to download it. * Dependencies The needed dependencies include: gtk+-3.0 (>= 3.22.0) gio (>= 2.22.0) amtk(>= 5.5) * Features - Connections: Currently, gyrus support only plain IMAP connections (normally, these go by port 143). In the future, secure connections will be implemented. Also, servers using the UNIX hierarchy separator are supported. - Mailboxes: Gyrus allows you to browse through all the mailboxes of the server. For a better performance, you can search a desired mailbox with the 'Find' dialog. You can create mailboxes: for new users, or as sub-mailboxes for existing ones. Also, if you have the needed permissions, you can delete mailboxes easily. - Quota Management: With Gyrus you can define the Quota of mailboxes (ie. the maximum amount of space resources that a user can use in its mailboxes). It is possible to create printable reports of mailboxes whose quota is over a percentage, so administrator can easily monitor mailboxes with quota exceeded. - Access Control List: Gyrus lets you administrate the ACL of each mailbox, i.e., to create, delete, remove and modify the entries of Access Control List. * Contributing: For things that need to be worked you can check the TODO file that should come with any gyrus distribution. If you want to send bug reports, patches, improvements, suggestions, please use https://gitlab.com/wvdakker/gyrus. Instructions to subscribe to the list follow. * Credits: - Maintainer and main developer: Claudio Saavedra - Contributors: Francisco Rojas - Original author: Alejandro Valdés - Former Contributors: Jorge Bustos Juan Carlos Inostroza Mario Fuentes Felipe Barros * Known Bugs: - When the inactivity time is reached and the server sends a "BYE LOGOUT" command and disconnects, Gyrus 'can' hang out. - Even when it's not a bug, gyrus still can't handle secure connections. Please do not report this as a bug, we are working on it. gyrus-0.4.2/TODO000066400000000000000000000041471426522072200133660ustar00rootroot00000000000000Things that need to be worked: * Allow gyrus to get notified when the server sends a "BYE LOGOUT" message. Then the application must get logged out. Speaking more generally, gyrus is not able to cleanly finish a connection when this is closed by the server. You can realize of this if you connect gyrus to your local imap server and kill the connection with the 'kill' command. * Rewrite the gyrus-session.[ch] API to make it clearer. I suggest to use GObject to get a 'nice' piece of work. If possible, do not modify the interface with the rest of the application. I don't think it's necessary. * Change the error handling (currently it only uses gchar**) to GError. * Separate the client side of GyrusAdmin and make a GyrusImapClient object, that should be totally GTK+ independent (i.e., only must depend of GLib and GNet libraries). Then, make GyrusImapClient an aggregated class of GyrusAdmin. What do we win with that? well, GyrusImapClient can be the beginning of a C library to work with mail servers. I don't really know how evolution and other GNOME mail software establish connections and work with mail servers, but i think that creating an gyrus independent library (i don't know, maybe we can call it libgyrus) gyrus can be more easily extensible than it is right now. * Right now the report module for users over quota is slow. It needs a little of love, as I think that it can get faster. * Orphaned mailboxes dealing. Mailboxes usually get orphaned when some poor quality software deletes only a parent mailbox, leaving the children ones in the server. Many applications do not get notification of this, so these orphaned mailboxes get inaccessible. A special case of orphaned mailboxes occur when a user creates a mailbox whose name includes the mailbox hierarchy separator (for example, when the hierarchy separator is "." and Joe user create a "user.joe.my.lovely.emails" mailbox). Currently gyrus displays those mailboxes and allows you to delete them. To give the chance to reparent them would be nice, too. New Nice Features: * Your suggestion here? gyrus-0.4.2/data/000077500000000000000000000000001426522072200136015ustar00rootroot00000000000000gyrus-0.4.2/data/create_mailbox.xml000066400000000000000000000055641426522072200173130ustar00rootroot00000000000000 True False 10 10 5 True False Name: 0 0 0 True True 1 0 True True 1 2 True False Quota (MB): 0 0 2 Assign quota True True False True True True 0 1 gyrus-0.4.2/data/find.xml000066400000000000000000000065171426522072200152540ustar00rootroot00000000000000 True False 10 vertical True False 10 True False Search for: False False 0 True False True True True False True 1 False True 0 Match _entire word only True True False True True False False 5 1 _Wrap around True True False True True True False False 5 2 gyrus-0.4.2/data/gresource.xml000066400000000000000000000007531426522072200163260ustar00rootroot00000000000000 create_mailbox.xml find.xml page.xml password.xml report.xml sessions_edit.xml sessions.xml logo_gyrus.png gyrus-0.4.2/data/gyrus.desktop.in.in000066400000000000000000000004061426522072200173570ustar00rootroot00000000000000[Desktop Entry] Name=Gyrus IMAP Cyrus Administrator Comment=Administer the mailboxes of your IMAP Cyrus servers Keywords=cyrus;imapd;administration; Exec=gyrus Icon=logo_gyrus Terminal=false Type=Application X-AppStream-Ignore=true Categories=GNOME;GTK;Network; gyrus-0.4.2/data/gyrus.doap000066400000000000000000000014021426522072200156140ustar00rootroot00000000000000 gyrus IMAP/cyrus administration client Claudio Saavedra csaavedra gyrus-0.4.2/data/logo_gyrus.png000066400000000000000000000125041426522072200165020ustar00rootroot00000000000000PNG  IHDRRliCCPICC profile(}=H@_SKE* !Cu ZQP Vh/hҐ8 ?.κ: "ƃ~{*Ӭ @m3J|Ea@Tf1'Iix{zYjbO$eioOo}+*9I$~7%1yXaYԈ1U)_ȵYYYu#HaK BATa#NN '=Q/K!W AwVqjJ@8ǎ:ך'鍮;uWS`ɐMٕ4bx?oCZ>N,ue{turbbKGD pHYs.#.#x?vtIME94q%tEXtCommentCreated with GIMPWIDATxy5ǿvZl""# *Te "a(*d (&#LmY``RH @i;$g,9^/~&y$O'OB!B!B!B!B!B!B!B!B!B!B!B!B!B!B!B!B!B!B!B!B!B!B!B!B!\Dcg'cpϪj9|r׃z5/F`g`+`B:oT)ˁ3bpoM1x╫k x[C)U1ӻ ~:1֯Lv^ k O{ہڽgdRhÅ0,?{T~_j \<T] ]ipAA47*> \ \:Qm+;Lͅy~Ҽp(0 O^`pm G"wX1N@[1xctc aȕԎӌ[t!p Gcp]ˣ8`o`*X?X`s0'wc{4  8EydQ1wSa>0T8̈Md  fq 7s`.j2,8XH#ˀof'cϯw<58q]R iH`UAiyEAv|>pƺzYa1p06 pFp]gs[&C6pb^,I{x-p03k|Y|'5p~^u?$ovv3ummϪ;YQQfV]r\ z0 ]1Mss൹C;0i_W X?8p1 z'ԬR{ /34,nm ?99wW*zu Yӎ݇C*vcp+yd~3YMS- 3`obp6:Ĺ2}>6@c\a o:Lz97)bp?ܪSo cIjH^;.Wqp+ۀnk31U% 1k N& doc~NFwyi;>k)T肠 wHܝ@(J*|0ic l7ZƝuF .}3p~/ʴZiZa+*]+4ZU8=8s[IE-$uY ґh-Ma,(30XVVYȺFn=6J0Xq (S3~=7wiE6)aQm@/8xXSfA|kP*y=HjhW2ZHq8H[hdu XccZ)Pi; +uC`.g^֊){*gZ>c[~okv$ u٘)X?dr~&=\@ڰu:^=uon] +Iܟ~ܫtd$ch Tj!Z~E;H[C]cpW3 $+{K@I*҆3C,qp n:ړF0t ~kyvж,+Lt!\u܍C0+}$SM+x F{@qo@/E&C /~[o6C\h`e [Hr`ٌQ$ `Aabo'(1.f:dZۍwQi5;qO nZ `#M;Hv=t;&<]Aǽ~ #^wc_ۊi5c3@ 0nxcŭP[dX/=&lrA-{Z cWӈ^Ug S;LT;=fʂ0 R= |䳩.*|ߞUTYvL4ֿ)־O.  ߓ >ݲd- .GDo8PXҁ`i&)Yܺt7Ixxt"ĐXi#i\T#d)in8 mnIq$KL-r57bզB!Dwkl |м~~mQ?' ׅF+ Xr:-s-y<1%]z_JZ 6J9*1/hN]"}GiuM60_H>X?X_{]XCNc$Bc/z;0pl]ye0it!,Vc1( GPlVw>H^c_/f**?2_ܶNjoHx[tp$3F\w#GU꾕}Kmbp{^A-׼5!=q~߁wjR%yp9FW"PZi:95Zl/eoF۸YF`T%5wn]#~5iډtڴgK/_< /`|%OH:hy>i[Tz.-%]JMX?=7|Zhoh{3Hw!Y03KzN[rcjH>$6LX"9x3Hr7Q 20O.돯עܾNR|3Q.;\;/kXI:tp~o n܌\ :V[Oz37ɽ 4plԎ|o!.Rbt3`?5 k1o5)둕9e {H&6Z7Kg"03W; ȁpsx,N{y"|`l[rkD}]s$2`c&깾vMwĶ;ɚkiم\fv ͼmithNYZ95`![hL֫YD:{GۗGv L>i_Li]2U` nR FۤWQԦX}U:UnYH喙11s?oݨ wR:/dVSp3izmNʙ6Sw^ь]z'۫*ܒ%y7i"0{ =ymO#EtnRYKkfF^_o3Y7}uƿح,hwD#\xFe#_^7 Ä́tTFco3֟U[9]Y:ɢp7d՞ X6L'/w25,Yg_ӟY\>&c<]Zۓd6^~o@:y_Pzqy1PF//} MVܸ^+cecη{:O2{N[\ `i ^N{i).χ06iv*H!B!B!B!B!B!B!B!B!B!B!B!B!B!B!B!B!B!B!B!B!B!B!B!B!B!B:.IENDB`gyrus-0.4.2/data/logo_gyrus.xcf000066400000000000000000000153271426522072200165040ustar00rootroot00000000000000gimp xcf filedBBS gimp-commentCreated with The GIMPgimp-image-grid(style intersections) (fgcolor (color-rgba 0.000000 0.000000 0.000000 1.000000)) (bgcolor (color-rgba 1.000000 1.000000 1.000000 1.000000)) (xspacing 10.000000) (yspacing 10.000000) (spacing-unit inches) (xoffset 0.000000) (yoffset 0.000000) (offset-unit inches) ~Q:GYRUS     !gimp-text-layer(text "GYRUS") (font "Sans Bold") (font-size 50.000000) (font-size-unit pixels) (hinting no) (antialias yes) (language "en-us") (base-direction ltr) (color (color-rgba 0.235294 0.274510 0.596078 1.000000)) (justify center) (box-mode dynamic) (box-unit pixels) :fr: <F4-ps8&ttk_ g6VR); ϼjM X Bx > 0 wAdU  ,YF{o@$!L J" h\< <  xJL \ R 9L \ ~?L \ sPL \ X^eL \  =L \ \ . \  \ 78 \  \ O& \ }\  iB.$6X\ C\ Q\ =\ "  F} 2 q(MtqH<FBWtt>/t tsmaVC/tt:hm hfh hh) h h hlh hh$h %h\\cwqh rhh hh )hh yhh hh - hh  h/h h  h2 hHHNb( h hD h h) h7 hP hhg hh hh eh445Aj Uh_5 Dhn 3hOh1 hNh1FhKh6Yh Gh ; h Dh @ vh @ oF<FFF"r -tt auH d "c dm d dk d dؿ dM H d" o dDD5 dY" daH dO d.4 d ﹆S dk d] d`F dn| d?j d \ d #l f'_  qp# >:  Qm I)m4@1) 6tdC9LkܤlK7$!2X 5Dut  6 J  E@~ ߃$Gra3#GkyL_/ GNOME Cyrus/IMAP Administrator     C5gimp-text-layer(text "GNOME Cyrus/IMAP Administrator") (font "Sans") (font-size 11.000000) (font-size-unit pixels) (hinting no) (antialias yes) (language "en-us") (base-direction ltr) (color (color-rgba 0.235294 0.274510 0.596078 1.000000)) (justify center) (box-mode dynamic) (box-unit pixels) ~ 9E F@<@F@B &%& 5(޿xfl#ݶ ں/?Y(cEl,T+ ](* Yk&Ƥl,) v W 00 g(V%#glǼW xWW'֠ / (W% glS00/W`- * t v(* Y (l,) :Fڹy "(c f,l,S_F (ܿw l:ܱg  # ! # {:: F@<@F@OZ],flg;,Elp,7pzͿ,k&Ƥl9U,:9Uu߶SK,#gl2VCq2V!aM^M, gl{ƪ7ǔ{Y T  , (l{,{ZU%9, f,lV9,V9!_z归W۲ϣ_, lh?,h?x޵ $'p<FCYY-    !Y>rͿ j! l޵9jH1dP"SWo PW:^ YӹZ 8T 2HZ8%O P8W۲ϣ  £ m߸: $ !  "{].d New Layer      dd?O_o                d22gyrus-0.4.2/data/meson.build000066400000000000000000000017361426522072200157520ustar00rootroot00000000000000gnome = import('gnome') # Glade UI files gresources = gnome.compile_resources('resource', 'gresource.xml', source_dir: '.') # Desktop file desktop_config = configuration_data() desktop_config.set('VERSION', meson.project_version()) desktop_file_configured = configure_file( input: 'gyrus.desktop.in.in', output: 'gyrus.desktop', configuration: desktop_config, install_dir: join_paths( datadir, 'applications', ) ) desktop_file_validate = find_program('desktop-file-validate', required: false) if desktop_file_validate.found() test( 'desktop file test', desktop_file_validate, args: [ desktop_file_configured ] ) endif schemas_dir = get_option('prefix') / get_option('datadir') / 'glib-2.0' / 'schemas' settings_schemas = [ 'org.gnome.gyrus.gschema.xml' ] install_data(settings_schemas, install_dir: schemas_dir) # Icon install_data('logo_gyrus.png', install_dir: join_paths(datadir, 'icons', 'hicolor', '192x192', 'apps'), ) # Manpage #install_man('gyrus.1') gyrus-0.4.2/data/org.gnome.gyrus.gschema.xml000066400000000000000000000011571426522072200210000ustar00rootroot00000000000000 [] '' 143 '' '.' false gyrus-0.4.2/data/page.xml000066400000000000000000000547571426522072200152610ustar00rootroot00000000000000 True False 2 True True 210 True True True vertical 120 True True True 5 in True True 5 True False False True True True 5 in True True 5 True True False True True False 5 vertical 10 True False True False False 2 0 True False 3 2 5 7 True False Free space: right 0 2 GTK_FILL True False Assigned space: right 0 1 GTK_FILL True True True 0 1 GTK_FILL True True True 0 1 1 GTK_FILL True True True 0 1 2 GTK_FILL True False Owner: right 0 GTK_FILL False True 1 True True True False 10 True False New quota (MB) False False 0 True True True True 1 gtk-apply True True True True True False False 2 True False Modify quota False False 2 True True True False 5 vertical 5 True True in True True True True True True 0 False False False 1 True False Access control list True True 3 True True 1 2 GTK_EXPAND | GTK_SHRINK | GTK_FILL GTK_EXPAND | GTK_SHRINK | GTK_FILL True False 5 0 none True False 6 True False 10 True False Host: False False 0 True True True False False 1 True True 0 True False 10 True False User: False False 0 True True True False False 1 True True 1 True False 10 True False Port: False False 0 True True True False False 1 True True 2 gtk-connect True True True True True True False False 3 True False GTK_FILL GTK_FILL gyrus-0.4.2/data/password.xml000066400000000000000000000134371426522072200161750ustar00rootroot00000000000000 True False Password False dialog True False vertical True False end gtk-cancel True True False True False False 0 gtk-ok True True True True False True False False 1 False False end 0 True False 10 vertical True True False True False gtk-dialog-question 6 False True 0 True False Enter your password False False 1 False False 0 True True True False True False False 1 False True 2 cancelbutton1 okbutton1 gyrus-0.4.2/data/report.xml000066400000000000000000000155641426522072200156510ustar00rootroot00000000000000 100 1 10 450 400 True False Report center True False vertical True False 5 10 True False Over (%) False False 0 True True True adjustment1 1 False True 1 gtk-refresh True True False True True False False 2 False True 0 True True 5 in True True True True True True 1 True False False True 2 2 True False 5 29 gtk-print True True False True False True True False False 0 gtk-close True True True False True True False False 1 False True 3 gyrus-0.4.2/data/sessions.xml000066400000000000000000000207141426522072200161750ustar00rootroot00000000000000 True False Open session 350 350 dialog True False vertical True False end gtk-help True True True False True True False False 0 gtk-cancel True True True False True True False False 1 gtk-open True True True False True True False False 2 False False end 0 True False 3 3 True True in True True True True True 0 True False vertical 5 start gtk-new True True True False True True False False 0 gtk-properties True True True False True True False False 1 gtk-delete True True True False True True False False 2 False True end 1 True True 2 helpbutton2 button_cancel button_open gyrus-0.4.2/data/sessions_edit.xml000066400000000000000000000477741426522072200172210ustar00rootroot00000000000000 1 65536 143 1 10 True False 300 250 dialog True False vertical 3 True False end gtk-help True True True False True True False False 0 gtk-cancel True True True False True True False False 1 gtk-ok True True True False True True False False 2 False False end 0 True False 5 vertical 10 True False 0 none True False 12 True False 5 30 True False Session name: 0 False False 0 True True False True 1 False True 0 True False 0 none True False 3 12 True False 5 5 10 False Password: entry_passwd 0 0 3 True False Username: entry_user 0 0 2 True False Port: 0 0 1 True False Host: True entry_host 0 0 0 False True False 1 3 True True 1 2 True False vertical True True False False 0 1 0 True False 0 True True adjustment1 1 1 True False Session details False True 1 True False 0 none True False 3 12 True False 5 vertical Use a secure connection True False True True False False 0 True False 5 True False Mailbox hierarchy separator: False False 0 True False False True 1 False False 1 True False <b>Options</b> True False True 2 False True 2 helpbutton3 button_session_edit_cancel button_session_edit_ok gyrus-0.4.2/meson.build000066400000000000000000000024141426522072200150330ustar00rootroot00000000000000project( 'gyrus', 'c', version: '0.4.0', meson_version : '>= 0.49.0' ) # Find dependencies gtk_deps = dependency('gtk+-3.0', version : '>= 3.24.0') amtk_deps = dependency('amtk-5', version : '> 5.5.0') # Find install paths prefix = get_option('prefix') datadir = join_paths(prefix, get_option('datadir')) localedir = join_paths(prefix, get_option('localedir')) # Configure gyrus conf = configuration_data() conf.set_quoted('VERSION', meson.project_version()) conf.set_quoted('PACKAGE_VERSION', meson.project_version()) conf.set_quoted('PACKAGE', meson.project_name()) conf.set_quoted('RELEASE_DATE', 'July 2022') conf.set_quoted('LOCALEDIR', localedir) conf.set_quoted('GNOME_LOCALE_DIR', localedir) conf.set_quoted('GYRUS_PIXMAPS_DIR', '../data') conf.set_quoted('GYRUS_UI_DIR', 'data') conf.set_quoted('GETTEXT_PACKAGE', 'gyrus') cc = meson.get_compiler('c') doxygen = find_program('doxygen', required : false) if doxygen.found() message('Doxygen found') else warning('Documentation disabled without doxygen') endif configure_file(output : 'config.h', configuration : conf) config = declare_dependency(include_directories : include_directories('.', 'src', '../src')) subdir('data') subdir('src') subdir('po') #subdir('doc') meson.add_install_script('meson_post_install.py') gyrus-0.4.2/meson_post_install.py000066400000000000000000000006171426522072200171620ustar00rootroot00000000000000#!/usr/bin/env python3 import os import subprocess install_prefix = os.environ['MESON_INSTALL_PREFIX'] schemadir = os.path.join(install_prefix, 'share', 'glib-2.0', 'schemas') if not os.environ.get('DESTDIR'): print('Compiling gsettings schemas...') subprocess.call(['glib-compile-schemas', schemadir]) print ('Update icon chache ...') subprocess.call ('gtk-update-icon-cache') gyrus-0.4.2/po/000077500000000000000000000000001426522072200133065ustar00rootroot00000000000000gyrus-0.4.2/po/ChangeLog000066400000000000000000000155641426522072200150730ustar00rootroot000000000000002009-01-06 Jonh Wendell * pt_BR.po: Updated Brazilian Portuguese translation by Flamarion Jorge and Vladimir Melo. 2008-10-22 Daniel Nylander * sv.po: Updated Swedish translation. 2008-10-16 Jorge Gonzalez * es.po: Updated Spanish translation 2008-10-12 Claudio Saavedra * POTFILES.skip: Add gyrus.desktop.in 2008-10-08 Kjartan Maraas * nb.po: Add Norwegian bokmål translation. 2008-07-31 Djihed Afifi * ar.po: Updated Arabic Translation by Djihed Afifi. 2008-05-07 Petr Kovar * cs.po: Fixed Czech translation by Lucas Lommer (bug #517967). 2008-03-13 Andre Klapper * cs.po: Fixed Czech translation on behalf of Lucas Lommer. See bug #517758. 2007-12-31 Yannig Marchegay * oc.po: Updated Occitan translation. 2007-10-22 Djihed Afifi * ar.po: Updated Arabic Translation by Djihed Afifi. 2007-05-16 David Lodge * en_GB.po: Updated British English translation 2007-04-27 Stéphane Raimbault * fr.po: Added French translation by Robert-André Mauchin and Claude Paroz. 2007-04-26 Djihed Afifi * ar.po: Updated Arabic Translation by Djihed Afifi. 2007-04-25 Djihed Afifi * ar.po: Updated Arabic Translation by Djihed Afifi. 2007-04-24 Claudio Saavedra * ca.po: * cs.po: * dz.po: * es.po: * fi.po: * hu.po: * sv.po: * vi.po: I fixed a typo in the code (#432628), updating translations accordingly to avoid having extra fuzzy strings. 2007-04-22 Djihed Afifi * ar.po: Updated Arabic Translation by Djihed Afifi. 2007-03-11 Josep Puigdemont i Casamajó * ca.po: Added Catalan translation by Jordi Deu-Pons . 2007-01-21 Claudio Saavedra * .cvsignore: Remove and use now svn:ignore property. 2007-01-21 Claudio Saavedra * POTFILES.in: s/gyrus.desktop.in/gyrus.desktop.in.in 2006-12-15 Pema Geyleg * dz.po: Added Dzongkha Translation. 2006-12-04 Francisco Javier F. Serrador * es.po: Updated Spanish translation. 2006-11-18 Djihed Afifi * ar.po: Added Arabic Translation. * LINGUAS: Added ar. 2006-10-03 Ilkka Tuohela * fi.po: Updated Finnish translation. 2006-09-12 David Lodge * en_GB.po: British (English) translation updated. 2006-09-10 Gabor Kelemen * hu.po: Translation added by Albitz Nóra. 2006-09-04 Daniel Nylander * sv.po: Updated Swedish translation. 2006-08-24 Clytie Siddall * vi.po: Updated Vietnamese translation. 2006-07-29 Francisco Javier F. Serrador * es.po: Updated Spanish translation. 2006-04-18 Daniel Nylander * sv.po: Updated Swedish translation. 2006-03-10 Ilkka Tuohela * fi.po: Added Finnish translation. 2006-02-10 Clytie Siddall * vi.po: Updated Vietnamese translation. 2006-01-22 Clytie Siddall * vi.po: Updated Vietnamese translation. 2006-01-17 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2006-01-10 Clytie Siddall * vi.po: Updated Vietnamese translation. Please, someone add "vi" to LINGUAS for me, if you have time. :) Thankyou! 2005-12-30 Stanislav Brabec * cs.po: Added Czech translation from Lukas Novotny. 2005-11-13 Francisco Javier F. Serrador * es.po: Updated Spanish translation. 2005-11-01 Adam Weinberger * POTFILES.in: Added missing file. * en_CA.po: Updated Canadian English translation. 2005-10-12 Francisco Javier F. Serrador * es.po: Updated Spanish translation. 2005-09-28 Vincent van Adrighem * nl.po: Translation added. 2005-08-28 Clytie Siddall * vi.po: Updated Vietnamese translation. 2005-08-27 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2005-08-26 Clytie Siddall * vi.po: Updated Vietnamese translation. 2005-08-21 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2005-08-14 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2005-08-12 Claudio Saavedra * es.po: Updated Spanish translation (Hector Henriquez). 2005-08-09 Maxim Dziumanenko * uk.po: Added Ukrainian translation. 2005-07-23 Adam Weinberger * POTFILES.in: Added missing files. * en_CA.po: Updated Canadian English translation. 2005-05-23 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2005-05-19 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2005-05-16 Pedro Villavicencio Garrido * es.po: Update Spanish translation. 2005-04-21 Gareth Owen * en_GB.po: Added British English translation. 2005-04-20 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2005-04-19 Claudio Saavedra V * es.po: Updated Spanish translation. 2005-04-15 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2005-04-09 Raphael Higino * pt_BR.po: Added Brazilian Portuguese translation. 2005-04-09 Adam Weinberger * en_CA.po: Added Canadian English translation. 2005-04-10 Funda Wang * zh_CN.po: Added Simplified Chinese translation. 2005-04-09 Christian Rose * sv.po: Added Swedish translation. 2005-04-09 Christian Rose * .cvsignore: Added this file. * POTFILES.in: Sorted and added comment. 2004-12-30 Claudio Saavedra * po/POTFILES.in: * po/de.po: * po/es.gmo: * po/es.po: * po/gyrus.pot: Updated translations and pot file. 2004-12-29 * de.po: Added (something poor) DE translation. 2004-12-11 * POTFILES.in: Added new sources. * gyrus.pot: Updated POT file. * es.po: Updated ES translation. 2004-07-28 * POTFILES.in: Removed entries to fit with new sources structure. 2003-12-10 Jorge Bustos * ChangeLog : Added comments. * POTFILES.in : Added source files. * POTFILES, Makefile.in: Removed. gyrus-0.4.2/po/LINGUAS000066400000000000000000000002341426522072200143320ustar00rootroot00000000000000# please keep this list sorted alphabetically # ar bs ca cs da de dz el en_CA en_GB es fi fr gl hu nb nl oc pl pt pt_BR ro sl sr sr@latin sv tr uk vi zh_CN gyrus-0.4.2/po/POTFILES.in000066400000000000000000000012241426522072200150620ustar00rootroot00000000000000# List of source files containing translatable strings. # Please keep this file sorted alphabetically. [encoding: UTF-8] gyrus.desktop.in.in [type: gettext/glade]src/ui/create_mailbox.xml [type: gettext/glade]src/ui/find.xml [type: gettext/glade]src/ui/page.xml [type: gettext/glade]src/ui/password.xml [type: gettext/glade]src/ui/report.xml [type: gettext/glade]src/ui/sessions.xml [type: gettext/glade]src/ui/sessions_edit.xml src/gyrus-admin-acl.c src/gyrus-admin-mailbox.c src/gyrus-admin.c src/gyrus-dialog-find-mailbox.c src/gyrus-dialog-mailbox-new.c src/gyrus-main-app.c src/gyrus-report.c src/gyrus-session.c [type: gettext/glade]tests/gyrus-talk.xml gyrus-0.4.2/po/POTFILES.skip000066400000000000000000000000211426522072200154140ustar00rootroot00000000000000gyrus.desktop.in gyrus-0.4.2/po/ar.po000066400000000000000000000360461426522072200142610ustar00rootroot00000000000000# Arabic translations for THIS package. # Copyright (C) 2007 THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as THIS package. # Automatically generated, 2007. # Djihed Afifi , 2007 msgid "" msgstr "" "Project-Id-Version: Arabic\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-04-24 18:49+0100\n" "PO-Revision-Date: 2007-04-26 09:35+0100\n" "Last-Translator: Djihed Afifi \n" "Language-Team: Arabeyes \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../gyrus.desktop.in.in.h:1 msgid "Administer the mailboxes of your IMAP Cyrus servers" msgstr "ادِر صناديق البريد لخوادم IMAP سيروس" #: ../gyrus.desktop.in.in.h:2 msgid "Gyrus IMAP Cyrus Administrator" msgstr "جيروس: برنامج ادارة IMAP Cyrus" #: ../src/glade/create_mailbox.glade.h:1 msgid "*" msgstr "*" #: ../src/glade/create_mailbox.glade.h:2 msgid "Name:" msgstr "الإسم:" #: ../src/glade/create_mailbox.glade.h:3 msgid "Quota (MB):" msgstr "الحصّة (MB):" #: ../src/glade/create_mailbox.glade.h:4 msgid "Assign quota" msgstr "عيّن الحصّة" #: ../src/glade/create_mailbox.glade.h:5 msgid "Create mailbox" msgstr "إنشاء صندوق بريد" #: ../src/glade/find.glade.h:1 msgid "Find" msgstr "ا_بحث" #: ../src/glade/find.glade.h:2 msgid "Match _entire word only" msgstr "طابِق ك_امل الكلمة فقط" #: ../src/glade/find.glade.h:3 msgid "Search for:" msgstr "ابحث عن:" #: ../src/glade/find.glade.h:4 msgid "_Wrap around" msgstr "_لف حول" #: ../src/glade/page.glade.h:1 msgid "Assigned space:" msgstr "حدد مساحة:" #: ../src/glade/page.glade.h:2 msgid "Enter your password" msgstr "أدخل كلمة سر" #: ../src/glade/page.glade.h:3 msgid "Free space:" msgstr "الفضاء المطلق:" #: ../src/glade/page.glade.h:4 msgid "Host:" msgstr "م_ضيف" #: ../src/glade/page.glade.h:5 msgid "Owner:" msgstr "المالك:" #: ../src/glade/page.glade.h:6 msgid "Port:" msgstr "المنفذ:" #: ../src/glade/page.glade.h:7 msgid "User:" msgstr "المستخدم:" #: ../src/glade/page.glade.h:8 msgid "Access control list" msgstr "قائمة التحكم بالنفاذ (ق.ت.ن)" #: ../src/glade/page.glade.h:9 msgid "Modify quota" msgstr "عدّل الحصّة" #: ../src/glade/page.glade.h:10 msgid "New quota (MB)" msgstr "الحصّة الجديدة (م.ب.)" #: ../src/glade/page.glade.h:11 msgid "Password" msgstr "كلمة السر" #: ../src/glade/page.glade.h:12 #: ../src/gyrus-admin.c:842 #: ../tests/gyrus-talk.glade.h:7 msgid "_Connect" msgstr "اتّ_صل" #: ../src/glade/preferences.glade.h:1 msgid "Mailbox quota:" msgstr ":حصة صندوق البريد " #: ../src/glade/preferences.glade.h:2 msgid "Mailboxes tree:" msgstr ":شجرة صناديق البريد " #: ../src/glade/preferences.glade.h:3 msgid "Default suffix for changing quota:" msgstr "اللاحقة الافتراضية لتغيير الحصّة:" #: ../src/glade/preferences.glade.h:4 msgid "Preferences" msgstr "تفضيلات" #: ../src/glade/preferences.glade.h:5 msgid "View complete mailboxes tree" msgstr "اظهر كامل شجرة صندوق البريد" #: ../src/glade/report.glade.h:2 #, no-c-format msgid "Over (%)" msgstr "فوق (%)" #: ../src/glade/report.glade.h:3 msgid "Report" msgstr "تقرير" #. Translate only Autodetect please. #: ../src/glade/sessions.glade.h:2 msgid "" ".\n" "/\n" "Autodetect" msgstr "" ".\n" "/\n" "تعرف آلي" #: ../src/glade/sessions.glade.h:5 msgid "Options" msgstr "الخيارات" #: ../src/glade/sessions.glade.h:6 msgid "Session details" msgstr "تفاصيل الجلسة" #: ../src/glade/sessions.glade.h:7 #: ../tests/gyrus-talk.glade.h:3 msgid "Host:" msgstr "المضيف:" #: ../src/glade/sessions.glade.h:8 msgid "Mailbox hierarchy separator:" msgstr "فاصل هرمية صناديق البريد:" #: ../src/glade/sessions.glade.h:9 msgid "Open session" msgstr "افتح جلسة" #: ../src/glade/sessions.glade.h:10 msgid "Password:" msgstr "كلمة السر:" #: ../src/glade/sessions.glade.h:11 #: ../tests/gyrus-talk.glade.h:4 msgid "Port:" msgstr "منفد:" #: ../src/glade/sessions.glade.h:12 msgid "Session name:" msgstr "اسم الجلسة:" #: ../src/glade/sessions.glade.h:13 #: ../tests/gyrus-talk.glade.h:6 msgid "Use a secure connection" msgstr "استخدم اتصالا آمنا" #: ../src/glade/sessions.glade.h:14 msgid "Username:" msgstr "اسم المستخدم: " #: ../src/gyrus-admin-acl.c:53 #: ../src/gyrus-admin-acl.c:101 #, c-format msgid "Mailbox '%s' does not exist." msgstr "صندوق البريد '%s' غير موجود." #: ../src/gyrus-admin-acl.c:74 msgid "Invalid identifier." msgstr "مُعرِف غير صالح" #: ../src/gyrus-admin-acl.c:80 msgid "Empty entry name." msgstr "اسم المدخل فارغ." #: ../src/gyrus-admin-acl.c:85 msgid "Empty mailbox name." msgstr "اسم صندوق البريد فارغ." #: ../src/gyrus-admin-acl.c:105 msgid "Missing required argument to Setacl" msgstr "معامل مطلوب مفقود لـ Setacl" #: ../src/gyrus-admin-acl.c:141 #: ../src/gyrus-admin-mailbox.c:80 msgid "Permission denied" msgstr "التصريح مطلوب" #: ../src/gyrus-admin-acl.c:173 msgid "Empty access control list." msgstr "قائمة التحكم بالنفاذ فارغة" #: ../src/gyrus-admin-mailbox.c:78 msgid "Quota does not exist" msgstr "حصّة غير موجودة" #: ../src/gyrus-admin-mailbox.c:172 msgid "Quota overloaded" msgstr "حصّة فوق الاحتمال" #: ../src/gyrus-admin-mailbox.c:228 msgid "Quota not valid. Please try again." msgstr "حصّة غير صالحة. أعد المحاولة." #: ../src/gyrus-admin-mailbox.c:242 msgid "Unable to change quota. Are you sure do you have the appropriate permissions?" msgstr "لا يمكن تغيير الحصّة. هل انت متأكد من امتلاكك الصلاحيات المناسبة؟" #: ../src/gyrus-admin-mailbox.c:326 #, c-format msgid "'%s' is not a valid mailbox name. Please try a different one." msgstr "الإسم \"%s\" غير صالح. الرجاء استخدام اسم آخر." #: ../src/gyrus-admin-mailbox.c:334 #, c-format msgid "Parent mailbox '%s' does not exist. Please refresh the mailboxes list and try again." msgstr "صندوق البريد '%s' غير موجود. الرجاء اعادة تحميل قائمة صناديق البريد." #: ../src/gyrus-admin-mailbox.c:344 #, c-format msgid "Mailbox '%s' already exists. Please try a different name." msgstr "صندوق البريد '%s' موجود مسبقا. الرجاء استخدام اسم آخر." #: ../src/gyrus-admin-mailbox.c:357 msgid "Unable to create the mailbox. Are you sure do you have the appropriate permissions?" msgstr "لم يمكن انشاء صندوق البريد. هل انت متأكد من امتلاكك الصلاحيات المناسبة؟" #: ../src/gyrus-admin-mailbox.c:367 msgid "Mailbox created, but could not set quota." msgstr "تم انشاء صندوق البريد، لكن لم يمكن تحديد الحصّة." #: ../src/gyrus-admin-mailbox.c:423 #, c-format msgid "Unable to delete '%s'. Permission denied." msgstr "تعذّر حذف '%s'. تصاريح غير كافية." #: ../src/gyrus-admin-mailbox.c:624 msgid "new entry" msgstr "مدخل جديد" #: ../src/gyrus-admin.c:484 #: ../src/gyrus-report.c:266 #, c-format msgid "Users (%d)" msgstr "مستخدمون (%d)" #: ../src/gyrus-admin.c:490 #, c-format msgid "Orphaned mailboxes (%d)" msgstr "صنادق بريد يتيمة (%d)" #: ../src/gyrus-admin.c:534 #: ../src/gyrus-admin.c:851 msgid "Orphaned mailboxes" msgstr "صناديق البريد المنتقاة" #: ../src/gyrus-admin.c:534 #: ../src/gyrus-admin.c:849 #: ../src/gyrus-report.c:150 msgid "Users" msgstr "مستخدمون" #: ../src/gyrus-admin.c:605 msgid "lookup" msgstr "بحث" #: ../src/gyrus-admin.c:606 msgid "read" msgstr "قراءة" #: ../src/gyrus-admin.c:607 msgid "seen" msgstr "روجع" #: ../src/gyrus-admin.c:608 msgid "write" msgstr "كتابة" #: ../src/gyrus-admin.c:609 msgid "insert" msgstr "أدرج" #: ../src/gyrus-admin.c:610 msgid "post" msgstr "أرسِل" #: ../src/gyrus-admin.c:611 msgid "create" msgstr "إ_نشيء" #: ../src/gyrus-admin.c:612 msgid "delete" msgstr "حدف" #: ../src/gyrus-admin.c:613 msgid "admin" msgstr "ادر" #: ../src/gyrus-admin.c:619 msgid "Identifier" msgstr "المميز:" #: ../src/gyrus-admin.c:689 #, c-format msgid "%s could not be found. Please check the name and try again." msgstr "لم يمكن العثور على %s. تأكد من الاسم وحاول مجددا." #: ../src/gyrus-admin.c:700 #, c-format msgid "Could not connect to %s, port %d." msgstr "لم يمكن الاتصال بـ %s، المنفذ %d." #: ../src/gyrus-admin.c:997 msgid "Unable to connect with empty passwords. Please introduce your password." msgstr "لا يمكن الاتصال بكلمة سر فارغة. الرجاء ادخال كلمة السر." #: ../src/gyrus-admin.c:1004 msgid "Incorrect login/password" msgstr "تسجيل دخول غير صحيح" #: ../src/gyrus-admin.c:1012 msgid "_Disconnect" msgstr "ا_قطع الاتصال" #: ../src/gyrus-admin.c:1359 msgid "Could not change permission. Server error: " msgstr "تعذر تغيير الصلاحيات. خطأ الخادم:" #: ../src/gyrus-admin.c:1400 #, c-format msgid "An entry called '%s' already exists. Overwrite it?" msgstr "هناك مدخل باسم '%s' موجود حاليا. هل تريد الكتابة فوقه؟" #: ../src/gyrus-dialog-find-mailbox.c:158 #, c-format msgid "The text '%s' was not found in the mailbox list." msgstr "لم يمكن ايجاد النص '%s' في قائمة صناديق البريد." #: ../src/gyrus-dialog-find-mailbox.c:259 msgid "Find mailbox" msgstr "ابحث عن صندوق بريد" #: ../src/gyrus-dialog-mailbox-new.c:82 msgid "Quota not valid" msgstr "حصّة غير سليمة" #: ../src/gyrus-dialog-mailbox-new.c:238 msgid "New mailbox" msgstr "صندوق بريد جديد" #: ../src/gyrus-main-app.c:125 #, c-format msgid "Really delete mailbox '%s' and all of its submailboxes?" msgstr "هل تريد فعلاً حذف صندوق البريد '%s' و كل صناديقه الفرعية؟" #: ../src/gyrus-main-app.c:247 #: ../src/gyrus-main-app.c:422 msgid "Cyrus IMAP Administrator" msgstr "مدير IMAP سيروس" #: ../src/gyrus-main-app.c:261 #, c-format msgid "%s - Cyrus IMAP Administrator" msgstr "%s - مدير IMAP سيروس" #: ../src/gyrus-main-app.c:368 msgid "_File" msgstr "_ملف" #: ../src/gyrus-main-app.c:369 msgid "_Edit" msgstr "ح_رّر" #: ../src/gyrus-main-app.c:370 msgid "_ACL" msgstr "_ق.ت.ن" #: ../src/gyrus-main-app.c:371 msgid "_View" msgstr "_عرض" #: ../src/gyrus-main-app.c:372 msgid "_Help" msgstr "م_ساعدة" #: ../src/gyrus-main-app.c:373 msgid "Go to server..." msgstr "ا>هب للخادم..." #: ../src/gyrus-main-app.c:374 msgid "Show the list of servers" msgstr "اظهر قائمة الخوادم" #: ../src/gyrus-main-app.c:384 msgid "Add mailbox" msgstr "ضِف صندوق بريد" #: ../src/gyrus-main-app.c:385 msgid "Add a mailbox under the one selected" msgstr "ضِف صندوق بريد تحت المنتقى حاليا" #: ../src/gyrus-main-app.c:387 msgid "Search for a mailbox in current server" msgstr "ابحث عن صندوق البريد في الخادم الحالي" #: ../src/gyrus-main-app.c:389 msgid "Refresh the mailbox list" msgstr "إعادة تحميل قائمة صناديق البريد" #: ../src/gyrus-main-app.c:390 msgid "Create report..." msgstr "انشيء تقرير..." #: ../src/gyrus-main-app.c:391 msgid "Create report of users with quota problems" msgstr "انشئ تقريرا عن المستخدمين الذين لهم مشاكل في حصتهم" #: ../src/gyrus-main-app.c:395 msgid "New entry" msgstr "مدخل جديد" #: ../src/gyrus-main-app.c:396 msgid "Create a new ACL entry in current mailbox" msgstr "أنشيء مدخل ق.ت.ن جديد في صندوق البريد الحالي" #: ../src/gyrus-main-app.c:397 msgid "Remove mailbox" msgstr "احذف صندوق البريد" #: ../src/gyrus-main-app.c:398 msgid "Remove current mailbox from the server" msgstr "اعد تسمية صندوق البريد الحالي من الخادم" #: ../src/gyrus-main-app.c:403 msgid "Rename entry" msgstr "اعد تسمية المدخل" #: ../src/gyrus-main-app.c:404 msgid "Rename selected ACL entry" msgstr "اعد تسمية مدخل ق.ت.ن المنتقى" #: ../src/gyrus-main-app.c:405 msgid "Delete entry" msgstr "حذف المدخل" #: ../src/gyrus-main-app.c:406 msgid "Delete selected ACL entry" msgstr "حذف مدخل ق.ت.ن المنتقى" #: ../src/gyrus-main-app.c:546 msgid "translators-credits" msgstr "" "فريق عربآيز للترجمة http://www.arabeyes.org :\n" "جهاد عفيفي\t" #: ../src/gyrus-main-app.c:556 msgid "GNOME Cyrus Administrator" msgstr "برنامج ادارة سيروس (Cyrus)" #: ../src/gyrus-main-app.c:558 msgid "" "(c) 2003-2005 GNOME Foundation\n" "(c) 2004-2005 Claudio Saavedra" msgstr "" "(c) 2003-2005 مؤسسة جنوم\n" "(c) 2004-2005 كلوديو سافيدرا" #: ../src/gyrus-main-app.c:560 msgid "Administration tool for Cyrus IMAP servers." msgstr "اداة ادارة لخوادم IMAP سيروس" #. set title #: ../src/gyrus-report.c:86 #, c-format msgid "Report: %s" msgstr "تقرير: %s" #: ../src/gyrus-report.c:171 #: ../src/gyrus-report.c:458 msgid "Quota (%)" msgstr "حصّة (%)" #: ../src/gyrus-report.c:184 #: ../src/gyrus-report.c:461 msgid "Assigned (KB)" msgstr "معطاة (KB)" #: ../src/gyrus-report.c:195 #: ../src/gyrus-report.c:464 msgid "Used (KB)" msgstr "مُستخدَمة (KB)" #: ../src/gyrus-report.c:384 msgid "Print Report" msgstr "اطبع التقرير" #. /my_status_bar_print ("Print previewing ..."); #: ../src/gyrus-report.c:427 msgid "Preview" msgstr "معاينة" #: ../src/gyrus-report.c:455 msgid "User" msgstr "مستخدم" #: ../src/gyrus-session.c:164 msgid "Edit session" msgstr "حرّر الجلسة" #: ../src/gyrus-session.c:178 msgid "New session" msgstr "جلسة جديدة" #: ../src/gyrus-session.c:357 msgid "A session name is required." msgstr "بحاجة لإسم جلسة" #: ../src/gyrus-session.c:368 #, c-format msgid "Session named \"%s\" already exists." msgstr "اسم الجلية \"%s\" موجود مسبقا" #: ../src/gyrus-session.c:465 msgid "Autodetect" msgstr "تعرف آالي" #: ../src/gyrus-session.c:550 msgid "Session" msgstr "جلسة" #: ../src/gyrus-session.c:700 msgid "No host specified." msgstr "لم يحدد أسم مضيف." #: ../tests/gyrus-talk.glade.h:1 msgid "Connection" msgstr "الإتصال" #: ../tests/gyrus-talk.glade.h:2 msgid "Command:" msgstr "أمر:" #: ../tests/gyrus-talk.glade.h:5 msgid "Talk - Echo client" msgstr "Talk - عميل إيكو" #: ../tests/gyrus-talk.glade.h:8 msgid "_Send" msgstr "أر_سل" gyrus-0.4.2/po/bs.po000066400000000000000000000316361426522072200142630ustar00rootroot00000000000000# Bosnian translation for bosnianuniversetranslation # Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 # This file is distributed under the same license as the bosnianuniversetranslation package. # FIRST AUTHOR , 2013. # msgid "" msgstr "" "Project-Id-Version: bosnianuniversetranslation\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" "product=gyrus&keywords=I18N+L10N&component=general\n" "POT-Creation-Date: 2015-02-26 22:39+0000\n" "PO-Revision-Date: 2015-02-05 00:36+0000\n" "Last-Translator: Samir Ribić \n" "Language-Team: Bosnian \n" "Language: bs\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2015-02-05 06:55+0000\n" "X-Generator: Launchpad (build 17331)\n" #: ../gyrus.desktop.in.in.h:1 msgid "Gyrus IMAP Cyrus Administrator" msgstr "Gyrus IMAP Cyrus Administrator" #: ../gyrus.desktop.in.in.h:2 msgid "Administer the mailboxes of your IMAP Cyrus servers" msgstr "Upravljajte poštanskim sandučićima vaših IMAP Cyrus servera" #: ../src/ui/create_mailbox.xml.h:1 msgid "Name:" msgstr "Ime:" #: ../src/ui/create_mailbox.xml.h:2 msgid "Quota (MB):" msgstr "Kvota (MB):" #: ../src/ui/create_mailbox.xml.h:3 msgid "Assign quota" msgstr "Dodjela kvote" #: ../src/ui/find.xml.h:1 msgid "Search for:" msgstr "Traži za:" #: ../src/ui/find.xml.h:2 msgid "Match _entire word only" msgstr "Upoređuj samo _cijele riječi" #: ../src/ui/find.xml.h:3 msgid "_Wrap around" msgstr "_Idi u krug" #: ../src/ui/page.xml.h:1 msgid "Free space:" msgstr "Slobodan prostor:" #: ../src/ui/page.xml.h:2 msgid "Assigned space:" msgstr "Dodijeljen prostor:" #: ../src/ui/page.xml.h:3 msgid "Owner:" msgstr "Vlasnik:" #: ../src/ui/page.xml.h:4 msgid "New quota (MB)" msgstr "Nova kvota (MB)" #: ../src/ui/page.xml.h:5 msgid "Modify quota" msgstr "Mijenjaj kvotu" #: ../src/ui/page.xml.h:6 msgid "Access control list" msgstr "Lista kontrole pristupa" #: ../src/ui/page.xml.h:7 ../src/ui/sessions_edit.xml.h:5 #: ../tests/gyrus-talk.xml.h:2 msgid "Host:" msgstr "Domaćin:" #: ../src/ui/page.xml.h:8 msgid "User:" msgstr "Korisnik:" #: ../src/ui/page.xml.h:9 ../src/ui/sessions_edit.xml.h:4 #: ../tests/gyrus-talk.xml.h:4 msgid "Port:" msgstr "Priključak:" #: ../src/ui/password.xml.h:1 msgid "Password" msgstr "Lozinka" #: ../src/ui/password.xml.h:2 msgid "Enter your password" msgstr "Unesite lozinku" #: ../src/ui/report.xml.h:1 msgid "Report" msgstr "Izvještaj" #: ../src/ui/report.xml.h:3 #, no-c-format msgid "Over (%)" msgstr "Preko (%)" #: ../src/ui/sessions.xml.h:1 msgid "Open session" msgstr "Otvori sesiju" #: ../src/ui/sessions_edit.xml.h:1 msgid "Session name:" msgstr "Ime sesije:" #: ../src/ui/sessions_edit.xml.h:2 msgid "Password:" msgstr "Lozinka:" #: ../src/ui/sessions_edit.xml.h:3 msgid "Username:" msgstr "Korisničko ime:" #: ../src/ui/sessions_edit.xml.h:6 msgid "Session details" msgstr "Detalji sesije" #: ../src/ui/sessions_edit.xml.h:7 ../tests/gyrus-talk.xml.h:3 msgid "Use a secure connection" msgstr "Korisiti sigurnu konekciju" #: ../src/ui/sessions_edit.xml.h:8 msgid "Mailbox hierarchy separator:" msgstr "Poštanski sandučić hijerarhijskog rastavljača:" #: ../src/ui/sessions_edit.xml.h:9 msgid "Options" msgstr "Opcije" #: ../src/gyrus-admin-acl.c:53 ../src/gyrus-admin-acl.c:102 #, c-format msgid "Mailbox '%s' does not exist." msgstr "Poštanski sandučić '%s' ne postoji." #: ../src/gyrus-admin-acl.c:75 msgid "Invalid identifier." msgstr "Nevažeći identifikator." #: ../src/gyrus-admin-acl.c:81 msgid "Empty entry name." msgstr "Prazan naziv ulaza." #: ../src/gyrus-admin-acl.c:86 msgid "Empty mailbox name." msgstr "Prazno ime poštanskog sandučića." #: ../src/gyrus-admin-acl.c:106 msgid "Missing required argument to Setacl" msgstr "Nedostaje potreban argument Setacl-u" #: ../src/gyrus-admin-acl.c:142 ../src/gyrus-admin-mailbox.c:79 msgid "Permission denied" msgstr "Pristup odbijen" #: ../src/gyrus-admin-acl.c:174 msgid "Empty access control list." msgstr "Prazan popis kontrole pristupa." #: ../src/gyrus-admin-mailbox.c:77 msgid "Quota does not exist" msgstr "Kvota ne postoji" #: ../src/gyrus-admin-mailbox.c:171 #, c-format msgid "Quota overloaded" msgstr "Kvota preopterećena" #: ../src/gyrus-admin-mailbox.c:229 msgid "Quota not valid. Please try again." msgstr "Kvota nije ispravna. Molimo pokušajte ponovno." #: ../src/gyrus-admin-mailbox.c:243 msgid "" "Unable to change quota. Are you sure do you have the appropriate permissions?" msgstr "" "Nije moguće promijeniti kvotu. Jeste li sigurni da imate odgovarajuće " "dozvole?" #: ../src/gyrus-admin-mailbox.c:323 #, c-format msgid "'%s' is not a valid mailbox name. Please try a different one." msgstr "" "'%s' nije važeći naziv poštanskog sandučića. Molimo pokušajte s drugim." #: ../src/gyrus-admin-mailbox.c:331 #, c-format msgid "" "Parent mailbox '%s' does not exist. Please refresh the mailboxes list and " "try again." msgstr "" "Matični poštanski sandučić '%s' ne postoji. Osvježite popis poštanskih " "sandučića i pokušajte ponovno." #: ../src/gyrus-admin-mailbox.c:341 #, c-format msgid "Mailbox '%s' already exists. Please try a different name." msgstr "Poštanski sandučić '% s' već postoji. Pokušajte neki drugi naziv." #: ../src/gyrus-admin-mailbox.c:354 msgid "" "Unable to create the mailbox. Are you sure do you have the appropriate " "permissions?" msgstr "" "Ne mogu napraviti poštanski sandučić. Jeste li sigurni da imate odgovarajuće " "dozvole?" #: ../src/gyrus-admin-mailbox.c:365 msgid "Mailbox created, but could not set quota." msgstr "Poštanski sandučić je napravljen, ali nije moguće postaviti kvotu." #: ../src/gyrus-admin-mailbox.c:432 #, c-format msgid "Unable to delete '%s'. Permission denied." msgstr "Nije moguće izbrisati '%s'. Dopuštenje odbijeno." #: ../src/gyrus-admin-mailbox.c:633 msgid "new entry" msgstr "novi ulaz" #: ../src/gyrus-admin.c:446 ../src/gyrus-report.c:286 #, c-format msgid "Users (%d)" msgstr "Korisnici (%d)" #: ../src/gyrus-admin.c:452 #, c-format msgid "Orphaned mailboxes (%d)" msgstr "Poštanski sandučići bez matičnih sandučića (%d)" #: ../src/gyrus-admin.c:496 ../src/gyrus-admin.c:851 msgid "Orphaned mailboxes" msgstr "Poštanski sandučići bez matičnih sandučića" #: ../src/gyrus-admin.c:496 ../src/gyrus-admin.c:849 ../src/gyrus-report.c:167 msgid "Users" msgstr "Korisnici" #: ../src/gyrus-admin.c:564 msgid "lookup" msgstr "potraži" #: ../src/gyrus-admin.c:565 msgid "read" msgstr "čitanje" #: ../src/gyrus-admin.c:566 msgid "seen" msgstr "viđen" #: ../src/gyrus-admin.c:567 msgid "write" msgstr "pisanje" #: ../src/gyrus-admin.c:568 msgid "insert" msgstr "umetni" #: ../src/gyrus-admin.c:569 msgid "post" msgstr "objava" #: ../src/gyrus-admin.c:570 msgid "create" msgstr "napravite" #: ../src/gyrus-admin.c:571 msgid "delete" msgstr "obriši" #: ../src/gyrus-admin.c:572 msgid "admin" msgstr "administrator" #: ../src/gyrus-admin.c:580 msgid "Identifier" msgstr "Identifikator" #: ../src/gyrus-admin.c:650 msgid "Couldn't create the client socket." msgstr "Ne mogu stvoriti klijenta spojnicu." #: ../src/gyrus-admin.c:658 msgid "Couldn't parse the server address." msgstr "Nije moguće analizirati adresu servera." #: ../src/gyrus-admin.c:667 #, c-format msgid "Could not connect to %s, port %d." msgstr "Ne mogu se spojiti na %s, priključak %d." #: ../src/gyrus-admin.c:997 msgid "Unable to connect with empty passwords. Please introduce your password." msgstr "" "Nije se moguće povezati sa praznim lozinkama. Molimo iznesite svoju lozinku." #: ../src/gyrus-admin.c:1004 msgid "Incorrect login/password" msgstr "Netačna prijava/lozinka" #: ../src/gyrus-admin.c:1360 msgid "Could not change permission. Server error: " msgstr "Ne mogu promijeniti dozvolu. Greška servera: " #: ../src/gyrus-admin.c:1403 #, c-format msgid "An entry called '%s' already exists. Overwrite it?" msgstr "Ulaz pod imenom '%s' već postoji. Prepiši ga?" #: ../src/gyrus-dialog-find-mailbox.c:170 #, c-format msgid "The text '%s' was not found in the mailbox list." msgstr "Tekst '%s' nije pronađen u popisu poštanskih sandučića." #: ../src/gyrus-dialog-find-mailbox.c:274 msgid "Find mailbox" msgstr "Pronađi poštanski sandučić" #: ../src/gyrus-dialog-mailbox-new.c:92 msgid "Quota not valid" msgstr "Kvota nije ispravna" #: ../src/gyrus-dialog-mailbox-new.c:219 msgid "New mailbox" msgstr "Novi poštanski sandučić" #: ../src/gyrus-main-app.c:145 #, c-format msgid "Really delete mailbox '%s' and all of its submailboxes?" msgstr "" "Stvarno želite izbrisati poštanski sandučić '%s' i sve njegove pod-spremnike?" #: ../src/gyrus-main-app.c:260 ../src/gyrus-main-app.c:406 #: ../src/gyrus-main-app.c:702 msgid "Cyrus IMAP Administrator" msgstr "Cyrus IMAP administrator" #: ../src/gyrus-main-app.c:274 #, c-format msgid "%s - Cyrus IMAP Administrator" msgstr "%s - Cyrus IMAP administrator" #: ../src/gyrus-main-app.c:353 msgid "_File" msgstr "_Datoteka" #: ../src/gyrus-main-app.c:354 msgid "_Edit" msgstr "_Izmjeni" #: ../src/gyrus-main-app.c:355 msgid "_ACL" msgstr "_ACL" #: ../src/gyrus-main-app.c:356 msgid "_View" msgstr "_Pregled" #: ../src/gyrus-main-app.c:357 msgid "_Help" msgstr "_Pomoć" #: ../src/gyrus-main-app.c:358 msgid "Go to server..." msgstr "Idi na server..." #: ../src/gyrus-main-app.c:359 msgid "Show the list of servers" msgstr "Prikaži popis servera" #: ../src/gyrus-main-app.c:367 msgid "Add mailbox" msgstr "Dodaj poštansko sanduče" #: ../src/gyrus-main-app.c:368 msgid "Add a mailbox under the one selected" msgstr "Dodaj poštansko sanduče pod jednim odabranim" #: ../src/gyrus-main-app.c:370 msgid "Search for a mailbox in current server" msgstr "Traži poštansko sanduče na trenutnom serveru" #: ../src/gyrus-main-app.c:372 msgid "Refresh the mailbox list" msgstr "Osvježi popis poštanskih sandučića" #: ../src/gyrus-main-app.c:373 msgid "Create report..." msgstr "Napravi izvještaj..." #: ../src/gyrus-main-app.c:374 msgid "Create report of users with quota problems" msgstr "Napravi izvještaj korisnika sa problemima kvote" #: ../src/gyrus-main-app.c:378 msgid "New entry" msgstr "Novi unos" #: ../src/gyrus-main-app.c:379 msgid "Create a new ACL entry in current mailbox" msgstr "Napravi novi ACL ulaz u trenutnom poštanskom sandučiću" #: ../src/gyrus-main-app.c:380 msgid "Remove mailbox" msgstr "Ukloni poštansko sanduče" #: ../src/gyrus-main-app.c:381 msgid "Remove current mailbox from the server" msgstr "Ukloni trenutno poštansko sanduče sa servera" #: ../src/gyrus-main-app.c:386 msgid "Rename entry" msgstr "Preimenuj unos" #: ../src/gyrus-main-app.c:387 msgid "Rename selected ACL entry" msgstr "Preimenuj izabrani ACL unos" #: ../src/gyrus-main-app.c:388 msgid "Delete entry" msgstr "Obriši unos" #: ../src/gyrus-main-app.c:389 msgid "Delete selected ACL entry" msgstr "Obriši izabrani ACL unos" #: ../src/gyrus-main-app.c:522 msgid "translators-credits" msgstr "zasluge prevodioca" #: ../src/gyrus-main-app.c:532 msgid "GNOME Cyrus Administrator" msgstr "GNOME Cyrus administrator" #: ../src/gyrus-main-app.c:534 msgid "" "(c) 2003-2005 GNOME Foundation\n" "(c) 2004-2005 Claudio Saavedra" msgstr "" "(c) 2003-2005 GNOME fondacija\n" "(c) 2004-2005 Claudio Saavedra" #: ../src/gyrus-main-app.c:536 msgid "Administration tool for Cyrus IMAP servers." msgstr "Administracijska alatka za Cyrus IMAP servere." #. set title #: ../src/gyrus-report.c:104 #, c-format msgid "Mailbox space usage report for %s" msgstr "Izvješće poštanskog sandučeta prostora korištenja za %s" #: ../src/gyrus-report.c:188 ../src/gyrus-report.c:489 msgid "Quota (%)" msgstr "Kvota (%)" #: ../src/gyrus-report.c:201 ../src/gyrus-report.c:493 msgid "Assigned (KB)" msgstr "Dodijeljeno (KB)" #: ../src/gyrus-report.c:212 ../src/gyrus-report.c:497 msgid "Used (KB)" msgstr "Iskorišteno (KB)" #. Translators: this represents the number of pages being printed. #: ../src/gyrus-report.c:462 #, c-format msgid "%d/%d" msgstr "%d/%d" #: ../src/gyrus-report.c:485 msgid "User" msgstr "Korisnik" #: ../src/gyrus-session.c:163 msgid "Edit session" msgstr "Uredi sesiju" #: ../src/gyrus-session.c:177 msgid "New session" msgstr "Nova sesija" #: ../src/gyrus-session.c:356 msgid "A session name is required." msgstr "Potrebno je ime sesije." #: ../src/gyrus-session.c:367 #, c-format msgid "Session named \"%s\" already exists." msgstr "Ime sesije \"%s\" već postoji." #: ../src/gyrus-session.c:463 ../src/gyrus-session.c:597 msgid "Autodetect" msgstr "Automatsko detektovanje" #: ../src/gyrus-session.c:548 msgid "Session" msgstr "Sesija" #: ../src/gyrus-session.c:717 msgid "No host specified." msgstr "Domaćin nije naveden." #: ../tests/gyrus-talk.xml.h:1 msgid "Talk - Echo client" msgstr "Razgovor-jeka klijent" #: ../tests/gyrus-talk.xml.h:5 msgid "_Connect" msgstr "_Spoji se" #: ../tests/gyrus-talk.xml.h:6 msgid "Connection" msgstr "Veza" #: ../tests/gyrus-talk.xml.h:7 msgid "Command:" msgstr "Naredba:" #: ../tests/gyrus-talk.xml.h:8 msgid "_Send" msgstr "_Pošalji" gyrus-0.4.2/po/ca.po000066400000000000000000000342111426522072200142320ustar00rootroot00000000000000# Catalan translation of gyrus. # Copyright © 2007 The Free Software Foundation, Inc. # This file is licensed under the same license as the gyrus package. # Jordi Deu-Pons , 2007. # msgid "" msgstr "" "Project-Id-Version: gyrus\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" "product=gyrus&keywords=I18N+L10N&component=general\n" "POT-Creation-Date: 2013-12-19 14:26+0000\n" "PO-Revision-Date: 2007-04-24 13:44-0400\n" "Last-Translator: Jordi Deu-Pons \n" "Language-Team: Catalan \n" "Language: ca\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../gyrus.desktop.in.in.h:1 msgid "Gyrus IMAP Cyrus Administrator" msgstr "Gyrus: administrador de l'IMAP Cyrus" #: ../gyrus.desktop.in.in.h:2 msgid "Administer the mailboxes of your IMAP Cyrus servers" msgstr "Administra les bústies del servidor IMAP Cyrus" #: ../src/ui/create_mailbox.xml.h:1 msgid "Name:" msgstr "" #: ../src/ui/create_mailbox.xml.h:2 #, fuzzy #| msgid "Quota (%)" msgid "Quota (MB):" msgstr "Quota (%)" #: ../src/ui/create_mailbox.xml.h:3 msgid "Assign quota" msgstr "Assigna una quota" #: ../src/ui/find.xml.h:1 msgid "Search for:" msgstr "Cerca:" #: ../src/ui/find.xml.h:2 msgid "Match _entire word only" msgstr "Concorda _només la paraula sencera" #: ../src/ui/find.xml.h:3 msgid "_Wrap around" msgstr "Cerca _de nou des del començament" #: ../src/ui/page.xml.h:1 #, fuzzy #| msgid "Free space:" msgid "Free space:" msgstr "Espai lliure:" #: ../src/ui/page.xml.h:2 #, fuzzy #| msgid "Assigned space:" msgid "Assigned space:" msgstr "Espai assignat:" #: ../src/ui/page.xml.h:3 #, fuzzy #| msgid "Owner:" msgid "Owner:" msgstr "Propietari:" #: ../src/ui/page.xml.h:4 msgid "New quota (MB)" msgstr "Quota nova (MB)" #: ../src/ui/page.xml.h:5 msgid "Modify quota" msgstr "Modifica la quota" #: ../src/ui/page.xml.h:6 msgid "Access control list" msgstr "Llista de control d'accés" #: ../src/ui/page.xml.h:7 ../src/ui/sessions_edit.xml.h:5 #: ../tests/gyrus-talk.xml.h:2 msgid "Host:" msgstr "Ordinador central:" #: ../src/ui/page.xml.h:8 #, fuzzy #| msgid "User" msgid "User:" msgstr "Usuari" #: ../src/ui/page.xml.h:9 ../src/ui/sessions_edit.xml.h:4 #: ../tests/gyrus-talk.xml.h:4 msgid "Port:" msgstr "Port:" #: ../src/ui/password.xml.h:1 msgid "Password" msgstr "Contrasenya" #: ../src/ui/password.xml.h:2 #, fuzzy #| msgid "Enter your password" msgid "Enter your password" msgstr "Introdueix la contrasenya" #: ../src/ui/report.xml.h:1 msgid "Report" msgstr "Informe" #: ../src/ui/report.xml.h:3 #, no-c-format msgid "Over (%)" msgstr "Per sobre (%)" #: ../src/ui/sessions.xml.h:1 msgid "Open session" msgstr "Sessió oberta" #: ../src/ui/sessions_edit.xml.h:1 msgid "Session name:" msgstr "Nom de la sessió:" #: ../src/ui/sessions_edit.xml.h:2 msgid "Password:" msgstr "Contrasenya:" #: ../src/ui/sessions_edit.xml.h:3 msgid "Username:" msgstr "Nom d'usuari:" #: ../src/ui/sessions_edit.xml.h:6 #, fuzzy #| msgid "Session details" msgid "Session details" msgstr "Detalls de la sessió" #: ../src/ui/sessions_edit.xml.h:7 ../tests/gyrus-talk.xml.h:3 msgid "Use a secure connection" msgstr "Utilitza una connexió segura" #: ../src/ui/sessions_edit.xml.h:8 msgid "Mailbox hierarchy separator:" msgstr "Separador de jerarquia de bústies:" #: ../src/ui/sessions_edit.xml.h:9 msgid "Options" msgstr "Opcions" #: ../src/gyrus-admin-acl.c:54 ../src/gyrus-admin-acl.c:103 #, c-format msgid "Mailbox '%s' does not exist." msgstr "La bústia «%s» no existeix." #: ../src/gyrus-admin-acl.c:76 msgid "Invalid identifier." msgstr "Identificador invàlid." #: ../src/gyrus-admin-acl.c:82 msgid "Empty entry name." msgstr "Nom d'entrada buit." #: ../src/gyrus-admin-acl.c:87 msgid "Empty mailbox name." msgstr "Nom de bústia buit." #: ../src/gyrus-admin-acl.c:107 msgid "Missing required argument to Setacl" msgstr "Manca un paràmetre obligatori per al Setacl" #: ../src/gyrus-admin-acl.c:143 ../src/gyrus-admin-mailbox.c:80 msgid "Permission denied" msgstr "Permís denegat" #: ../src/gyrus-admin-acl.c:175 msgid "Empty access control list." msgstr "Llista de control d'accés buida." #: ../src/gyrus-admin-mailbox.c:78 msgid "Quota does not exist" msgstr "La quota no existeix" #: ../src/gyrus-admin-mailbox.c:172 #, c-format msgid "Quota overloaded" msgstr "S'ha sobrepassat la quota" #: ../src/gyrus-admin-mailbox.c:230 msgid "Quota not valid. Please try again." msgstr "La quota no és vàlida. Torneu a provar." #: ../src/gyrus-admin-mailbox.c:244 msgid "" "Unable to change quota. Are you sure do you have the appropriate permissions?" msgstr "" "No s'ha pogut canviar la quota. Esteu segur que teniu el permís necessari?" #: ../src/gyrus-admin-mailbox.c:324 #, c-format msgid "'%s' is not a valid mailbox name. Please try a different one." msgstr "«%s» no és un nom de bústia vàlid. Trieu-ne un de diferent." #: ../src/gyrus-admin-mailbox.c:332 #, c-format msgid "" "Parent mailbox '%s' does not exist. Please refresh the mailboxes list and " "try again." msgstr "" "La bústia «%s» no existeix. Refresqueu la llista de bústies i torneu-ho a " "intentar." #: ../src/gyrus-admin-mailbox.c:342 #, c-format msgid "Mailbox '%s' already exists. Please try a different name." msgstr "La bústia «%s» ja existeix. Proveu-ho amb un nom diferent." #: ../src/gyrus-admin-mailbox.c:355 msgid "" "Unable to create the mailbox. Are you sure do you have the appropriate " "permissions?" msgstr "No es pot crear la bústia. Esteu segur que teniu el permís necessari?" #: ../src/gyrus-admin-mailbox.c:366 msgid "Mailbox created, but could not set quota." msgstr "S'ha creat la bústia, però no s'ha pogut establir la quota." #: ../src/gyrus-admin-mailbox.c:433 #, c-format msgid "Unable to delete '%s'. Permission denied." msgstr "No s'ha pogut eliminar «%s». S'ha denegat el permís." #: ../src/gyrus-admin-mailbox.c:634 msgid "new entry" msgstr "entrada nova" #: ../src/gyrus-admin.c:447 ../src/gyrus-report.c:287 #, c-format msgid "Users (%d)" msgstr "Usuaris (%d)" #: ../src/gyrus-admin.c:453 #, c-format msgid "Orphaned mailboxes (%d)" msgstr "Bústies òrfenes (%d)" #: ../src/gyrus-admin.c:497 ../src/gyrus-admin.c:852 msgid "Orphaned mailboxes" msgstr "Bústies òrfenes" #: ../src/gyrus-admin.c:497 ../src/gyrus-admin.c:850 ../src/gyrus-report.c:168 msgid "Users" msgstr "Usuaris" #: ../src/gyrus-admin.c:565 msgid "lookup" msgstr "cerca" #: ../src/gyrus-admin.c:566 msgid "read" msgstr "lectura" #: ../src/gyrus-admin.c:567 msgid "seen" msgstr "vist" #: ../src/gyrus-admin.c:568 msgid "write" msgstr "escriptura" #: ../src/gyrus-admin.c:569 msgid "insert" msgstr "inserció" #: ../src/gyrus-admin.c:570 msgid "post" msgstr "enviament" #: ../src/gyrus-admin.c:571 msgid "create" msgstr "creació" #: ../src/gyrus-admin.c:572 msgid "delete" msgstr "supressió" #: ../src/gyrus-admin.c:573 msgid "admin" msgstr "administració" #: ../src/gyrus-admin.c:581 msgid "Identifier" msgstr "Identificador" #: ../src/gyrus-admin.c:651 msgid "Couldn't create the client socket." msgstr "" #: ../src/gyrus-admin.c:659 msgid "Couldn't parse the server address." msgstr "" #: ../src/gyrus-admin.c:668 #, c-format msgid "Could not connect to %s, port %d." msgstr "No s'ha pogut connectar a %s, port %d." #: ../src/gyrus-admin.c:998 msgid "Unable to connect with empty passwords. Please introduce your password." msgstr "" "No es pot connectar amb una contrasenya buida. Introduïu la contrasenya." #: ../src/gyrus-admin.c:1005 msgid "Incorrect login/password" msgstr "Les dades d'entrada són incorrectes" #: ../src/gyrus-admin.c:1361 msgid "Could not change permission. Server error: " msgstr "No s'han pogut canviar els permisos. Hi ha un error al servidor." #: ../src/gyrus-admin.c:1404 #, c-format msgid "An entry called '%s' already exists. Overwrite it?" msgstr "Ja existeix l'entrada «%s». Voleu sobreescriure-la?" #: ../src/gyrus-dialog-find-mailbox.c:171 #, c-format msgid "The text '%s' was not found in the mailbox list." msgstr "No s'ha trobat el text «%s» a la llista de bústies." #: ../src/gyrus-dialog-find-mailbox.c:275 msgid "Find mailbox" msgstr "Cerca la bústia" #: ../src/gyrus-dialog-mailbox-new.c:93 msgid "Quota not valid" msgstr "Quota invàlida" #: ../src/gyrus-dialog-mailbox-new.c:220 msgid "New mailbox" msgstr "Bústia nova" #: ../src/gyrus-main-app.c:146 #, c-format msgid "Really delete mailbox '%s' and all of its submailboxes?" msgstr "Segur que voleu eliminar la bústia «%s» i totes les seves subbústies?" #: ../src/gyrus-main-app.c:261 ../src/gyrus-main-app.c:407 #: ../src/gyrus-main-app.c:703 msgid "Cyrus IMAP Administrator" msgstr "Administrador Cyrus IMAP" #: ../src/gyrus-main-app.c:275 #, c-format msgid "%s - Cyrus IMAP Administrator" msgstr "%s - Administrador Cyrus IMAP" #: ../src/gyrus-main-app.c:354 msgid "_File" msgstr "_Fitxer" #: ../src/gyrus-main-app.c:355 msgid "_Edit" msgstr "_Edita" #: ../src/gyrus-main-app.c:356 msgid "_ACL" msgstr "_ACL" #: ../src/gyrus-main-app.c:357 msgid "_View" msgstr "_Visualitza" #: ../src/gyrus-main-app.c:358 msgid "_Help" msgstr "A_juda" #: ../src/gyrus-main-app.c:359 msgid "Go to server..." msgstr "Vés al servidor..." #: ../src/gyrus-main-app.c:360 msgid "Show the list of servers" msgstr "Mostra la llista de servidors" #: ../src/gyrus-main-app.c:368 msgid "Add mailbox" msgstr "Afegeix una bústia" #: ../src/gyrus-main-app.c:369 msgid "Add a mailbox under the one selected" msgstr "Afegeix una bústia sota la seleccionada" #: ../src/gyrus-main-app.c:371 msgid "Search for a mailbox in current server" msgstr "Cerca una bústia en el servidor actual" #: ../src/gyrus-main-app.c:373 msgid "Refresh the mailbox list" msgstr "Refresca la llista de bústies" #: ../src/gyrus-main-app.c:374 msgid "Create report..." msgstr "Crea un informe..." #: ../src/gyrus-main-app.c:375 msgid "Create report of users with quota problems" msgstr "Crea un informe dels usuaris amb problemes de quota" #: ../src/gyrus-main-app.c:379 msgid "New entry" msgstr "Entrada nova" #: ../src/gyrus-main-app.c:380 msgid "Create a new ACL entry in current mailbox" msgstr "Crea una entrada nova ACL a la bústia actual" #: ../src/gyrus-main-app.c:381 msgid "Remove mailbox" msgstr "Elimina la bústia" #: ../src/gyrus-main-app.c:382 msgid "Remove current mailbox from the server" msgstr "Elimina les bústies actuals del servidor" #: ../src/gyrus-main-app.c:387 msgid "Rename entry" msgstr "Canvia el nom de l'entrada" #: ../src/gyrus-main-app.c:388 msgid "Rename selected ACL entry" msgstr "Canvia el nom de les entrades ACL seleccionades" #: ../src/gyrus-main-app.c:389 msgid "Delete entry" msgstr "Elimina l'entrada" #: ../src/gyrus-main-app.c:390 msgid "Delete selected ACL entry" msgstr "Elimina les entrades ACL seleccionades" #: ../src/gyrus-main-app.c:523 msgid "translators-credits" msgstr "Jordi Deu-Pons " #: ../src/gyrus-main-app.c:533 msgid "GNOME Cyrus Administrator" msgstr "Administrador del Cyrus per al GNOME" #: ../src/gyrus-main-app.c:535 msgid "" "(c) 2003-2005 GNOME Foundation\n" "(c) 2004-2005 Claudio Saavedra" msgstr "" "(c) 2003-2005 GNOME Foundation\n" "(c) 2004-2005 Claudio Saavedra" #: ../src/gyrus-main-app.c:537 msgid "Administration tool for Cyrus IMAP servers." msgstr "Eina d'administració del servidor Cyrus IMAP." #. set title #: ../src/gyrus-report.c:105 #, c-format msgid "Mailbox space usage report for %s" msgstr "" #: ../src/gyrus-report.c:189 ../src/gyrus-report.c:490 msgid "Quota (%)" msgstr "Quota (%)" #: ../src/gyrus-report.c:202 ../src/gyrus-report.c:494 msgid "Assigned (KB)" msgstr "Assignat (KB)" #: ../src/gyrus-report.c:213 ../src/gyrus-report.c:498 msgid "Used (KB)" msgstr "Ocupat (KB)" #. Translators: this represents the number of pages being printed. #: ../src/gyrus-report.c:463 #, c-format msgid "%d/%d" msgstr "" #: ../src/gyrus-report.c:486 msgid "User" msgstr "Usuari" #: ../src/gyrus-session.c:164 msgid "Edit session" msgstr "Edita la sessió" #: ../src/gyrus-session.c:178 msgid "New session" msgstr "Sessió nova" #: ../src/gyrus-session.c:357 msgid "A session name is required." msgstr "El nom de sessió és obligatori." #: ../src/gyrus-session.c:368 #, c-format msgid "Session named \"%s\" already exists." msgstr "La sessió «%s» ja existeix." #: ../src/gyrus-session.c:464 ../src/gyrus-session.c:598 msgid "Autodetect" msgstr "Detecta automàticament" #: ../src/gyrus-session.c:549 msgid "Session" msgstr "Sessió" #: ../src/gyrus-session.c:718 msgid "No host specified." msgstr "No s'ha especificat cap ordinador central." #: ../tests/gyrus-talk.xml.h:1 msgid "Talk - Echo client" msgstr "Client echo" #: ../tests/gyrus-talk.xml.h:5 msgid "_Connect" msgstr "_Connecta" #: ../tests/gyrus-talk.xml.h:6 #, fuzzy #| msgid "_Connect" msgid "Connection" msgstr "_Connecta" #: ../tests/gyrus-talk.xml.h:7 msgid "Command:" msgstr "Ordre:" #: ../tests/gyrus-talk.xml.h:8 msgid "_Send" msgstr "_Envia" #~ msgid "*" #~ msgstr "*" #~ msgid "Name:" #~ msgstr "Nom:" #~ msgid "Quota (MB):" #~ msgstr "Quota (MB):" #~ msgid "Create mailbox" #~ msgstr "Crea una bústia" #~ msgid "Find" #~ msgstr "Cerca" #~ msgid "Host:" #~ msgstr "Ordinador central:" #~ msgid "Port:" #~ msgstr "Port:" #~ msgid "User:" #~ msgstr "Usuari:" #~ msgid "Mailbox quota:" #~ msgstr "Quota de la bústia:" #~ msgid "Mailboxes tree:" #~ msgstr "Arbre de bústies:" #~ msgid "Default suffix for changing quota:" #~ msgstr "Sufix predeterminat per canviar la quota:" #~ msgid "Preferences" #~ msgstr "Preferències" #~ msgid "View complete mailboxes tree" #~ msgstr "Visualitza l'arbre complet de bústies" #~ msgid "" #~ ".\n" #~ "/\n" #~ "Autodetect" #~ msgstr "" #~ ".\n" #~ "/\n" #~ "Detecció automàtica" #~ msgid "%s could not be found. Please check the name and try again." #~ msgstr "No s'ha pogut trobar %s. Comproveu el nom i torneu-ho a intentar." #~ msgid "_Disconnect" #~ msgstr "_Desconnecta" #~ msgid "Report: %s" #~ msgstr "Informe: %s" #~ msgid "Print Report" #~ msgstr "Imprimeix l'informe" #~ msgid "Preview" #~ msgstr "Previsualització" #~ msgid "Connection" #~ msgstr "Connexió" gyrus-0.4.2/po/cs.po000066400000000000000000000324161426522072200142610ustar00rootroot00000000000000# Czech translation of Gyrus. # Copyright (C) 2005, 2008, 2009 the author(s) of Gyrus. # This file is distributed under the same license as the gyrus package. # # Lukáš Novotný , 2005. # Lucas Lommer , 2008 (just fixing GNOMEBUG #517758 and #517967). # Petr Kovar , 2008. # Marek Černocký , 2009, 2010. # msgid "" msgstr "" "Project-Id-Version: Gyrus\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" "product=gyrus&keywords=I18N+L10N&component=general\n" "POT-Creation-Date: 2012-11-09 17:03+0000\n" "PO-Revision-Date: 2012-11-06 09:45+0100\n" "Last-Translator: Marek Černocký \n" "Language-Team: Czech \n" "Language: cs\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" "X-Poedit-Language: Czech\n" "X-Poedit-SourceCharset: utf-8\n" #: ../gyrus.desktop.in.in.h:1 msgid "Gyrus IMAP Cyrus Administrator" msgstr "Gyrus - správce IMAP Cyrus" #: ../gyrus.desktop.in.in.h:2 msgid "Administer the mailboxes of your IMAP Cyrus servers" msgstr "Spravujte e-mailové schránky na svém serveru IMAP Cyrus" #: ../src/ui/create_mailbox.xml.h:1 msgid "Name:" msgstr "Název:" #: ../src/ui/create_mailbox.xml.h:2 msgid "Quota (MB):" msgstr "Kvóta (MB):" #: ../src/ui/create_mailbox.xml.h:3 msgid "Assign quota" msgstr "Přidělená kvóta" #: ../src/ui/find.xml.h:1 msgid "Search for:" msgstr "Vyhledat:" #: ../src/ui/find.xml.h:2 msgid "Match _entire word only" msgstr "Pouze jako c_elé slovo" #: ../src/ui/find.xml.h:3 msgid "_Wrap around" msgstr "Přecházet přes _okraj" #: ../src/ui/page.xml.h:1 msgid "Free space:" msgstr "Volné místo:" #: ../src/ui/page.xml.h:2 msgid "Assigned space:" msgstr "Přidělený prostor:" #: ../src/ui/page.xml.h:3 msgid "Owner:" msgstr "Vlastník:" #: ../src/ui/page.xml.h:4 msgid "New quota (MB)" msgstr "Nová kvóta (MB)" #: ../src/ui/page.xml.h:5 msgid "Modify quota" msgstr "Upravit kvótu" #: ../src/ui/page.xml.h:6 msgid "Access control list" msgstr "Seznam přístupových práv" #: ../src/ui/page.xml.h:7 ../src/ui/sessions_edit.xml.h:5 #: ../tests/gyrus-talk.xml.h:2 msgid "Host:" msgstr "Hostitel:" #: ../src/ui/page.xml.h:8 msgid "User:" msgstr "Uživatel:" #: ../src/ui/page.xml.h:9 ../src/ui/sessions_edit.xml.h:4 #: ../tests/gyrus-talk.xml.h:4 msgid "Port:" msgstr "Port:" #: ../src/ui/password.xml.h:1 msgid "Password" msgstr "Heslo" #: ../src/ui/password.xml.h:2 msgid "Enter your password" msgstr "Zadejte své heslo" #: ../src/ui/report.xml.h:1 msgid "Report" msgstr "Souhrn" #: ../src/ui/report.xml.h:3 #, no-c-format msgid "Over (%)" msgstr "Obsazeno (%)" #: ../src/ui/sessions.xml.h:1 msgid "Open session" msgstr "Otevřené sezení" #: ../src/ui/sessions_edit.xml.h:1 msgid "Session name:" msgstr "Název sezení:" #: ../src/ui/sessions_edit.xml.h:2 msgid "Password:" msgstr "Heslo:" #: ../src/ui/sessions_edit.xml.h:3 msgid "Username:" msgstr "Uživatelské jméno:" #: ../src/ui/sessions_edit.xml.h:6 msgid "Session details" msgstr "Podrobnosti sezení" #: ../src/ui/sessions_edit.xml.h:7 ../tests/gyrus-talk.xml.h:3 msgid "Use a secure connection" msgstr "Použít zabezpečené spojení" #: ../src/ui/sessions_edit.xml.h:8 msgid "Mailbox hierarchy separator:" msgstr "Oddělovač hierarchie e-mailové schránky" #: ../src/ui/sessions_edit.xml.h:9 msgid "Options" msgstr "Volby" #: ../src/gyrus-admin-acl.c:54 ../src/gyrus-admin-acl.c:103 #, c-format msgid "Mailbox '%s' does not exist." msgstr "E-mailová schránka „%s“ neexistuje" #: ../src/gyrus-admin-acl.c:76 msgid "Invalid identifier." msgstr "Neplatný identifikátor." #: ../src/gyrus-admin-acl.c:82 msgid "Empty entry name." msgstr "Prázdný název záznamu." #: ../src/gyrus-admin-acl.c:87 msgid "Empty mailbox name." msgstr "Prázdný název e-mailové schránky." #: ../src/gyrus-admin-acl.c:107 msgid "Missing required argument to Setacl" msgstr "Schází povinný argument pro příkaz setacl (nastavení oprávnění)" #: ../src/gyrus-admin-acl.c:143 ../src/gyrus-admin-mailbox.c:80 msgid "Permission denied" msgstr "Nedostatečné oprávnění" #: ../src/gyrus-admin-acl.c:175 msgid "Empty access control list." msgstr "Prázdný seznam oprávnění." #: ../src/gyrus-admin-mailbox.c:78 msgid "Quota does not exist" msgstr "Žádná kvóta neexistuje" #: ../src/gyrus-admin-mailbox.c:172 #, c-format msgid "Quota overloaded" msgstr "Kvóta je překročena" #: ../src/gyrus-admin-mailbox.c:230 msgid "Quota not valid. Please try again." msgstr "Kvóta není platná. Zadejte ji znovu prosím." #: ../src/gyrus-admin-mailbox.c:244 msgid "" "Unable to change quota. Are you sure do you have the appropriate permissions?" msgstr "Nelze změnit kvótu. Jste si jisti, že máte příslušná oprávnění?" #: ../src/gyrus-admin-mailbox.c:324 #, c-format msgid "'%s' is not a valid mailbox name. Please try a different one." msgstr "„%s“ není platný název e-mailové schránky. Zadejte prosím jiný název." #: ../src/gyrus-admin-mailbox.c:332 #, c-format msgid "" "Parent mailbox '%s' does not exist. Please refresh the mailboxes list and " "try again." msgstr "" "Rodičovská e-mailová schránka „%s“ neexistuje. Obnovte prosím seznam e-" "mailových schránek a zkuste to znovu." #: ../src/gyrus-admin-mailbox.c:342 #, c-format msgid "Mailbox '%s' already exists. Please try a different name." msgstr "E-mailová schránka „%s“ již existuje. Zkuste prosím jiný název." #: ../src/gyrus-admin-mailbox.c:355 msgid "" "Unable to create the mailbox. Are you sure do you have the appropriate " "permissions?" msgstr "" "Nelze vytvořit e-mailovou.schránku. Jste si jisti, že máte příslušná " "oprávnění?" #: ../src/gyrus-admin-mailbox.c:366 msgid "Mailbox created, but could not set quota." msgstr "E-mailová schránka vytvořena, ale nelze nastavit kvótu." #: ../src/gyrus-admin-mailbox.c:433 #, c-format msgid "Unable to delete '%s'. Permission denied." msgstr "Nelze smazat „%s“. Nedostatečná oprávnění." #: ../src/gyrus-admin-mailbox.c:634 msgid "new entry" msgstr "nový záznam" #: ../src/gyrus-admin.c:447 ../src/gyrus-report.c:289 #, c-format msgid "Users (%d)" msgstr "Uživatelé (%d)" #: ../src/gyrus-admin.c:453 #, c-format msgid "Orphaned mailboxes (%d)" msgstr "Osiřelé e-mailové schránky (%d)" #: ../src/gyrus-admin.c:497 ../src/gyrus-admin.c:855 msgid "Orphaned mailboxes" msgstr "Osiřelé e-mailové schránky" #: ../src/gyrus-admin.c:497 ../src/gyrus-admin.c:853 ../src/gyrus-report.c:170 msgid "Users" msgstr "Uživatelé" #: ../src/gyrus-admin.c:565 msgid "lookup" msgstr "vyhledávání" #: ../src/gyrus-admin.c:566 msgid "read" msgstr "čtení" #: ../src/gyrus-admin.c:567 msgid "seen" msgstr "zobrazení" #: ../src/gyrus-admin.c:568 msgid "write" msgstr "zápis" #: ../src/gyrus-admin.c:569 msgid "insert" msgstr "vkládání" #: ../src/gyrus-admin.c:570 msgid "post" msgstr "odesílání" #: ../src/gyrus-admin.c:571 msgid "create" msgstr "vytváření" #: ../src/gyrus-admin.c:572 msgid "delete" msgstr "mazání" #: ../src/gyrus-admin.c:573 msgid "admin" msgstr "správa" #: ../src/gyrus-admin.c:581 msgid "Identifier" msgstr "Identifikátor" #: ../src/gyrus-admin.c:651 msgid "Couldn't create the client socket." msgstr "Nelze vytvořit soket klienta." #: ../src/gyrus-admin.c:659 msgid "Couldn't parse the server address." msgstr "Nelze zpracovat adresu serveru." #: ../src/gyrus-admin.c:668 #, c-format msgid "Could not connect to %s, port %d." msgstr "Neleze se připojit k %s na portu %d." #: ../src/gyrus-admin.c:1001 msgid "Unable to connect with empty passwords. Please introduce your password." msgstr "Nelze se připojit s prázdným heslem. Uveďte prosím své heslo." #: ../src/gyrus-admin.c:1008 msgid "Incorrect login/password" msgstr "Nesprávné přihlašovací jméno/heslo" #: ../src/gyrus-admin.c:1364 msgid "Could not change permission. Server error: " msgstr "Nelze změnit oprávnění. Chyba serveru: " #: ../src/gyrus-admin.c:1407 #, c-format msgid "An entry called '%s' already exists. Overwrite it?" msgstr "Záznam nazvaný „%s“ již existuje. Chcete jej přepsat?" #: ../src/gyrus-dialog-find-mailbox.c:171 #, c-format msgid "The text '%s' was not found in the mailbox list." msgstr "Text „%s“ nebyl nalezen v seznamu e-mailových schránek." #: ../src/gyrus-dialog-find-mailbox.c:275 msgid "Find mailbox" msgstr "Hledat e-mailovou schránku" #: ../src/gyrus-dialog-mailbox-new.c:93 msgid "Quota not valid" msgstr "Kvóta není platná" #: ../src/gyrus-dialog-mailbox-new.c:220 msgid "New mailbox" msgstr "Nová e-mailová schránka" #: ../src/gyrus-main-app.c:146 #, c-format msgid "Really delete mailbox '%s' and all of its submailboxes?" msgstr "Opravdu chcete smazat e-mailovou schránku „%s“ a všechny její složky." #: ../src/gyrus-main-app.c:261 ../src/gyrus-main-app.c:436 #: ../src/gyrus-main-app.c:732 msgid "Cyrus IMAP Administrator" msgstr "Správce Cyrus IMAP" #: ../src/gyrus-main-app.c:275 #, c-format msgid "%s - Cyrus IMAP Administrator" msgstr "%s - Správce Cyrus IMAP" #: ../src/gyrus-main-app.c:383 msgid "_File" msgstr "_Soubor" #: ../src/gyrus-main-app.c:384 msgid "_Edit" msgstr "_Upravit" #: ../src/gyrus-main-app.c:385 msgid "_ACL" msgstr "_Oprávnění" #: ../src/gyrus-main-app.c:386 msgid "_View" msgstr "_Zobrazit" #: ../src/gyrus-main-app.c:387 msgid "_Help" msgstr "_Nápověda" #: ../src/gyrus-main-app.c:388 msgid "Go to server..." msgstr "Jít na server…" #: ../src/gyrus-main-app.c:389 msgid "Show the list of servers" msgstr "Zobrazit seznam serverů" #: ../src/gyrus-main-app.c:397 msgid "Add mailbox" msgstr "Přidat schránku" #: ../src/gyrus-main-app.c:398 msgid "Add a mailbox under the one selected" msgstr "Přidat e-mailovou schránku pod právě vybranou" #: ../src/gyrus-main-app.c:400 msgid "Search for a mailbox in current server" msgstr "Hledat e-mailovou schránku na současném serveru" #: ../src/gyrus-main-app.c:402 msgid "Refresh the mailbox list" msgstr "Občerstvit seznam e-mailových schránek" #: ../src/gyrus-main-app.c:403 msgid "Create report..." msgstr "Vytvořit souhrnnou zprávu…" #: ../src/gyrus-main-app.c:404 msgid "Create report of users with quota problems" msgstr "Vytvořit souhrnnou zprávu o uživatelích s problémy s kvótou" #: ../src/gyrus-main-app.c:408 msgid "New entry" msgstr "Nový záznam" #: ../src/gyrus-main-app.c:409 msgid "Create a new ACL entry in current mailbox" msgstr "Vytvořit nový záznam oprávnění v současné e-mailové schránce" #: ../src/gyrus-main-app.c:410 msgid "Remove mailbox" msgstr "Odstranit schránku" #: ../src/gyrus-main-app.c:411 msgid "Remove current mailbox from the server" msgstr "Odstranit současnou e-mailovou schránku ze serveru" #: ../src/gyrus-main-app.c:416 msgid "Rename entry" msgstr "Přejmenovat záznam" #: ../src/gyrus-main-app.c:417 msgid "Rename selected ACL entry" msgstr "Přejmenovat vybraný záznam oprávnění" #: ../src/gyrus-main-app.c:418 msgid "Delete entry" msgstr "Smazat záznam" #: ../src/gyrus-main-app.c:419 msgid "Delete selected ACL entry" msgstr "Smazat vybraný záznam oprávnění" #: ../src/gyrus-main-app.c:552 msgid "translators-credits" msgstr "Marek Černocký " #: ../src/gyrus-main-app.c:562 msgid "GNOME Cyrus Administrator" msgstr "Správce Cyrus pro GNOME" #: ../src/gyrus-main-app.c:564 msgid "" "(c) 2003-2005 GNOME Foundation\n" "(c) 2004-2005 Claudio Saavedra" msgstr "" "© 2003-2005 GNOME Foundation\n" "© 2004-2005 Claudio Saavedra" #: ../src/gyrus-main-app.c:566 msgid "Administration tool for Cyrus IMAP servers." msgstr "Nástroj pro správu serverů Cyrus IMAP." #. set title #: ../src/gyrus-report.c:107 #, c-format msgid "Mailbox space usage report for %s" msgstr "Souhrnná zpráva o využití prostoru e-mailové schránky pro %s" #: ../src/gyrus-report.c:191 ../src/gyrus-report.c:492 msgid "Quota (%)" msgstr "Kvóta (%)" #: ../src/gyrus-report.c:204 ../src/gyrus-report.c:496 msgid "Assigned (KB)" msgstr "Přiděleno (kB)" #: ../src/gyrus-report.c:215 ../src/gyrus-report.c:500 msgid "Used (KB)" msgstr "Obsazeno (kB)" #. Translators: this represents the number of pages being printed. #: ../src/gyrus-report.c:465 #, c-format msgid "%d/%d" msgstr "%d/%d" #: ../src/gyrus-report.c:488 msgid "User" msgstr "Uživatel" #: ../src/gyrus-session.c:164 msgid "Edit session" msgstr "Upravit sezení" #: ../src/gyrus-session.c:178 msgid "New session" msgstr "Nové sezení" #: ../src/gyrus-session.c:357 msgid "A session name is required." msgstr "Název sezení je nutné zadat." #: ../src/gyrus-session.c:368 #, c-format msgid "Session named \"%s\" already exists." msgstr "Sezení s názvem „%s“ již existuje." #: ../src/gyrus-session.c:464 ../src/gyrus-session.c:598 msgid "Autodetect" msgstr "Autodetekcí" #: ../src/gyrus-session.c:549 msgid "Session" msgstr "Sezení" #: ../src/gyrus-session.c:718 msgid "No host specified." msgstr "Hostitel není zadán." #: ../tests/gyrus-talk.xml.h:1 msgid "Talk - Echo client" msgstr "Talk - odpovídací klient" #: ../tests/gyrus-talk.xml.h:5 msgid "_Connect" msgstr "_Připojit" #: ../tests/gyrus-talk.xml.h:6 msgid "Connection" msgstr "Připojení" #: ../tests/gyrus-talk.xml.h:7 msgid "Command:" msgstr "Příkaz:" #: ../tests/gyrus-talk.xml.h:8 msgid "_Send" msgstr "_Odeslat" gyrus-0.4.2/po/da.po000066400000000000000000000311141426522072200142320ustar00rootroot00000000000000# Danish translation for gyrus. # Copyright (C) 2013 gyrus & nedenstående oversætttere. # This file is distributed under the same license as the gyrus package. # Joe Hansen , 2010, 2013, # # appropriate -> nødvendige # entry -> punkt # exists -> findes # msgid "" msgstr "" "Project-Id-Version: gyrus master\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2013-03-24 16:09+0100\n" "PO-Revision-Date: 2013-03-18 19:00+0000\n" "Last-Translator: Joe Hansen \n" "Language-Team: Danish \n" "Language: da\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: ../gyrus.desktop.in.in.h:1 msgid "Gyrus IMAP Cyrus Administrator" msgstr "Gyrus - administrator til IMAP Cyrus" #: ../gyrus.desktop.in.in.h:2 msgid "Administer the mailboxes of your IMAP Cyrus servers" msgstr "Administrer postkasserne på dine IMAP Cyrus-servere" #: ../src/ui/create_mailbox.xml.h:1 msgid "Name:" msgstr "Navn:" #: ../src/ui/create_mailbox.xml.h:2 msgid "Quota (MB):" msgstr "Kvote (MB):" #: ../src/ui/create_mailbox.xml.h:3 msgid "Assign quota" msgstr "Tildel kvote" #: ../src/ui/find.xml.h:1 msgid "Search for:" msgstr "Søg efter:" #: ../src/ui/find.xml.h:2 msgid "Match _entire word only" msgstr "Find kun _hele ord" #: ../src/ui/find.xml.h:3 msgid "_Wrap around" msgstr "_Ombryd linjer" #: ../src/ui/page.xml.h:1 msgid "Free space:" msgstr "Ledig plads:" #: ../src/ui/page.xml.h:2 msgid "Assigned space:" msgstr "Tildelt plads:" #: ../src/ui/page.xml.h:3 msgid "Owner:" msgstr "Ejer:" #: ../src/ui/page.xml.h:4 msgid "New quota (MB)" msgstr "Ny kvote (MB)" #: ../src/ui/page.xml.h:5 msgid "Modify quota" msgstr "Ændr kvote" #: ../src/ui/page.xml.h:6 msgid "Access control list" msgstr "Tilgangskontrolliste" #: ../src/ui/page.xml.h:7 ../src/ui/sessions_edit.xml.h:5 #: ../tests/gyrus-talk.xml.h:2 msgid "Host:" msgstr "Vært:" #: ../src/ui/page.xml.h:8 msgid "User:" msgstr "Bruger:" #: ../src/ui/page.xml.h:9 ../src/ui/sessions_edit.xml.h:4 #: ../tests/gyrus-talk.xml.h:4 msgid "Port:" msgstr "Port:" #: ../src/ui/password.xml.h:1 msgid "Password" msgstr "Adgangskode" #: ../src/ui/password.xml.h:2 msgid "Enter your password" msgstr "Indtast din adgangskode" #: ../src/ui/report.xml.h:1 msgid "Report" msgstr "Rapport" #: ../src/ui/report.xml.h:3 #, no-c-format msgid "Over (%)" msgstr "Over (%)" #: ../src/ui/sessions.xml.h:1 msgid "Open session" msgstr "Åbn session" #: ../src/ui/sessions_edit.xml.h:1 msgid "Session name:" msgstr "Sessionsnavn:" #: ../src/ui/sessions_edit.xml.h:2 msgid "Password:" msgstr "Adgangskode:" #: ../src/ui/sessions_edit.xml.h:3 msgid "Username:" msgstr "Brugernavn:" #: ../src/ui/sessions_edit.xml.h:6 msgid "Session details" msgstr "Sessionsdetaljer" #: ../src/ui/sessions_edit.xml.h:7 ../tests/gyrus-talk.xml.h:3 msgid "Use a secure connection" msgstr "Brug en sikker forbindelse" #: ../src/ui/sessions_edit.xml.h:8 msgid "Mailbox hierarchy separator:" msgstr "Adskillelsestegn for postkassehierarki:" #: ../src/ui/sessions_edit.xml.h:9 msgid "Options" msgstr "Indstillinger" #: ../src/gyrus-admin-acl.c:54 ../src/gyrus-admin-acl.c:103 #, c-format msgid "Mailbox '%s' does not exist." msgstr "Postkasse '%s' findes ikke." #: ../src/gyrus-admin-acl.c:76 msgid "Invalid identifier." msgstr "Ugyldig identifikator." #: ../src/gyrus-admin-acl.c:82 msgid "Empty entry name." msgstr "Tomt punktnavn." #: ../src/gyrus-admin-acl.c:87 msgid "Empty mailbox name." msgstr "Tomt postkassenavn." #: ../src/gyrus-admin-acl.c:107 msgid "Missing required argument to Setacl" msgstr "Påkrævet argument til Setacl mangler" #: ../src/gyrus-admin-acl.c:143 ../src/gyrus-admin-mailbox.c:80 msgid "Permission denied" msgstr "Tilladelse nægtet" #: ../src/gyrus-admin-acl.c:175 msgid "Empty access control list." msgstr "Tom adgangskontrolliste." #: ../src/gyrus-admin-mailbox.c:78 msgid "Quota does not exist" msgstr "Kvote findes ikke" #: ../src/gyrus-admin-mailbox.c:172 #, c-format msgid "Quota overloaded" msgstr "Kvote overskredet" #: ../src/gyrus-admin-mailbox.c:230 msgid "Quota not valid. Please try again." msgstr "Kvote ugyldig. Forsøg venligst igen." #: ../src/gyrus-admin-mailbox.c:244 msgid "" "Unable to change quota. Are you sure do you have the appropriate permissions?" msgstr "" "Kunne ikke ændre kvote. Er du sikker på, at du har de nødvendige rettigheder?" #: ../src/gyrus-admin-mailbox.c:324 #, c-format msgid "'%s' is not a valid mailbox name. Please try a different one." msgstr "" "'%s' er ikke et gyldigt postkassenavn. Forsøg venligst med et andet navn." # (ja, tror det er postkasserne, der danner et træ, som tidligere nævnt) #: ../src/gyrus-admin-mailbox.c:332 #, c-format msgid "" "Parent mailbox '%s' does not exist. Please refresh the mailboxes list and " "try again." msgstr "" "Overpostkasse '%s' findes ikke. Opdater venligst postkasselisten og forsøg " "igen." #: ../src/gyrus-admin-mailbox.c:342 #, c-format msgid "Mailbox '%s' already exists. Please try a different name." msgstr "Postkasse '%s' findes allerede. Forsøg venligst et andet navn." #: ../src/gyrus-admin-mailbox.c:355 msgid "" "Unable to create the mailbox. Are you sure do you have the appropriate " "permissions?" msgstr "" "Kunne ikke oprette postkassen. Er du sikker på, at du har de nødvendige " "tilladelser?" #: ../src/gyrus-admin-mailbox.c:366 msgid "Mailbox created, but could not set quota." msgstr "Postkasse oprettet, men kunne ikke angive kvote." #: ../src/gyrus-admin-mailbox.c:433 #, c-format msgid "Unable to delete '%s'. Permission denied." msgstr "Kunne ikke slette '%s'. Tilladelse nægtet." #: ../src/gyrus-admin-mailbox.c:634 msgid "new entry" msgstr "nyt punkt" #: ../src/gyrus-admin.c:447 ../src/gyrus-report.c:287 #, c-format msgid "Users (%d)" msgstr "Brugere (%d)" #: ../src/gyrus-admin.c:453 #, c-format msgid "Orphaned mailboxes (%d)" msgstr "Forældreløse postkasser (%d)" #: ../src/gyrus-admin.c:497 ../src/gyrus-admin.c:852 msgid "Orphaned mailboxes" msgstr "Forældreløse postkasser" #: ../src/gyrus-admin.c:497 ../src/gyrus-admin.c:850 ../src/gyrus-report.c:168 msgid "Users" msgstr "Brugere" #: ../src/gyrus-admin.c:565 msgid "lookup" msgstr "opslag" #: ../src/gyrus-admin.c:566 msgid "read" msgstr "læst" #: ../src/gyrus-admin.c:567 msgid "seen" msgstr "set" #: ../src/gyrus-admin.c:568 msgid "write" msgstr "skriv" #: ../src/gyrus-admin.c:569 msgid "insert" msgstr "indsæt" #: ../src/gyrus-admin.c:570 msgid "post" msgstr "post" #: ../src/gyrus-admin.c:571 msgid "create" msgstr "opret" #: ../src/gyrus-admin.c:572 msgid "delete" msgstr "slet" #: ../src/gyrus-admin.c:573 msgid "admin" msgstr "admin" #: ../src/gyrus-admin.c:581 msgid "Identifier" msgstr "Identifikator" #: ../src/gyrus-admin.c:651 msgid "Couldn't create the client socket." msgstr "Kunne ikke oprette klientsoklen." #: ../src/gyrus-admin.c:659 msgid "Couldn't parse the server address." msgstr "Kunne ikke fortolke serveradressen." #: ../src/gyrus-admin.c:668 #, c-format msgid "Could not connect to %s, port %d." msgstr "Kunne ikke forbinde til %s, port %d." #: ../src/gyrus-admin.c:998 msgid "Unable to connect with empty passwords. Please introduce your password." msgstr "" "Kan ikke forbinde med tomme adgangskoder. Angiv venligst din adgangskode." #: ../src/gyrus-admin.c:1005 msgid "Incorrect login/password" msgstr "Forkert logind/adgangskode" #: ../src/gyrus-admin.c:1361 msgid "Could not change permission. Server error: " msgstr "Kunne ikke ændre tilladelse. Serverfejl: " #: ../src/gyrus-admin.c:1404 #, c-format msgid "An entry called '%s' already exists. Overwrite it?" msgstr "Et punkt kaldt '%s' findes allerede. Overskriv det?" #: ../src/gyrus-dialog-find-mailbox.c:171 #, c-format msgid "The text '%s' was not found in the mailbox list." msgstr "Teksten '%s' blev ikke fundet i postkasselisten." #: ../src/gyrus-dialog-find-mailbox.c:275 msgid "Find mailbox" msgstr "Find postkasse" #: ../src/gyrus-dialog-mailbox-new.c:93 msgid "Quota not valid" msgstr "Kvote er ugyldig" #: ../src/gyrus-dialog-mailbox-new.c:220 msgid "New mailbox" msgstr "Ny postkasse" #: ../src/gyrus-main-app.c:146 #, c-format msgid "Really delete mailbox '%s' and all of its submailboxes?" msgstr "Vil du virkelig slette postkassen '%s' og alle dens underpostkasser?" #: ../src/gyrus-main-app.c:261 ../src/gyrus-main-app.c:407 #: ../src/gyrus-main-app.c:703 msgid "Cyrus IMAP Administrator" msgstr "Cyrus IMAP-administrator" #: ../src/gyrus-main-app.c:275 #, c-format msgid "%s - Cyrus IMAP Administrator" msgstr "%s - Cyrus IMAP-administrator" #: ../src/gyrus-main-app.c:354 msgid "_File" msgstr "_Fil" #: ../src/gyrus-main-app.c:355 msgid "_Edit" msgstr "_Rediger" #: ../src/gyrus-main-app.c:356 msgid "_ACL" msgstr "_ACL" #: ../src/gyrus-main-app.c:357 msgid "_View" msgstr "_Vis" #: ../src/gyrus-main-app.c:358 msgid "_Help" msgstr "_Hjælp" #: ../src/gyrus-main-app.c:359 msgid "Go to server..." msgstr "Gå til server..." #: ../src/gyrus-main-app.c:360 msgid "Show the list of servers" msgstr "Vis listen over servere" #: ../src/gyrus-main-app.c:368 msgid "Add mailbox" msgstr "Tilføj postkasse" #: ../src/gyrus-main-app.c:369 msgid "Add a mailbox under the one selected" msgstr "Tilføj en postkasse under den valgte" #: ../src/gyrus-main-app.c:371 msgid "Search for a mailbox in current server" msgstr "Søg efter en postkasse på den aktuelle server" #: ../src/gyrus-main-app.c:373 msgid "Refresh the mailbox list" msgstr "Genopdater postkasselisten" #: ../src/gyrus-main-app.c:374 msgid "Create report..." msgstr "Opret rapport..." #: ../src/gyrus-main-app.c:375 msgid "Create report of users with quota problems" msgstr "Opret rapport over brugere med kvoteproblemer" #: ../src/gyrus-main-app.c:379 msgid "New entry" msgstr "Nyt punkt" #: ../src/gyrus-main-app.c:380 msgid "Create a new ACL entry in current mailbox" msgstr "Opret et nyt ACL-punkt i aktuel postkasse" #: ../src/gyrus-main-app.c:381 msgid "Remove mailbox" msgstr "Fjern postkasse" #: ../src/gyrus-main-app.c:382 msgid "Remove current mailbox from the server" msgstr "Fjern aktuel postkasse fra serveren" #: ../src/gyrus-main-app.c:387 msgid "Rename entry" msgstr "Omdøb punkt" #: ../src/gyrus-main-app.c:388 msgid "Rename selected ACL entry" msgstr "Omdøb valgt ACL-punkt" #: ../src/gyrus-main-app.c:389 msgid "Delete entry" msgstr "Slet punkt" #: ../src/gyrus-main-app.c:390 msgid "Delete selected ACL entry" msgstr "Slet valgt ACL-punkt" #: ../src/gyrus-main-app.c:523 msgid "translators-credits" msgstr "" "Joe Hansen, 2010, 2013.\n" "\n" "Dansk-gruppen \n" "Mere info: http://www.dansk-gruppen.dk" #: ../src/gyrus-main-app.c:533 msgid "GNOME Cyrus Administrator" msgstr "GNOME Cyrus-administrator" #: ../src/gyrus-main-app.c:535 msgid "" "(c) 2003-2005 GNOME Foundation\n" "(c) 2004-2005 Claudio Saavedra" msgstr "" "(c) 2003-2005 GNOME Foundation\n" "(c) 2004-2005 Claudio Saavedra" #: ../src/gyrus-main-app.c:537 msgid "Administration tool for Cyrus IMAP servers." msgstr "Administrationsværktøj til Cyrus IMAP-servere." #. set title #: ../src/gyrus-report.c:105 #, c-format msgid "Mailbox space usage report for %s" msgstr "Rapport over forbrug af postkasseplads for %s" #: ../src/gyrus-report.c:189 ../src/gyrus-report.c:490 msgid "Quota (%)" msgstr "Kvote (%)" #: ../src/gyrus-report.c:202 ../src/gyrus-report.c:494 msgid "Assigned (KB)" msgstr "Tildelt (KB)" #: ../src/gyrus-report.c:213 ../src/gyrus-report.c:498 msgid "Used (KB)" msgstr "Brugt (KB)" #. Translators: this represents the number of pages being printed. #: ../src/gyrus-report.c:463 #, c-format msgid "%d/%d" msgstr "%d/%d" #: ../src/gyrus-report.c:486 msgid "User" msgstr "Bruger" #: ../src/gyrus-session.c:164 msgid "Edit session" msgstr "Rediger session" #: ../src/gyrus-session.c:178 msgid "New session" msgstr "Ny session" #: ../src/gyrus-session.c:357 msgid "A session name is required." msgstr "Der kræves et sessionsnavn." #: ../src/gyrus-session.c:368 #, c-format msgid "Session named \"%s\" already exists." msgstr "Sessionen ved navn \"%s\" findes allerede." #: ../src/gyrus-session.c:464 ../src/gyrus-session.c:598 msgid "Autodetect" msgstr "Find automatisk" #: ../src/gyrus-session.c:549 msgid "Session" msgstr "Session" #: ../src/gyrus-session.c:718 msgid "No host specified." msgstr "Ingen vært angivet." # hvad er dette? #: ../tests/gyrus-talk.xml.h:1 msgid "Talk - Echo client" msgstr "Snak - Ekkoklient" #: ../tests/gyrus-talk.xml.h:5 msgid "_Connect" msgstr "_Forbind" #: ../tests/gyrus-talk.xml.h:6 msgid "Connection" msgstr "Forbindelse" #: ../tests/gyrus-talk.xml.h:7 msgid "Command:" msgstr "Kommand:" #: ../tests/gyrus-talk.xml.h:8 msgid "_Send" msgstr "_Send" gyrus-0.4.2/po/de.po000066400000000000000000000317731426522072200142510ustar00rootroot00000000000000# German translation for gyrus # Mario Blättermann , 2009, 2011, 2016. # msgid "" msgstr "" "Project-Id-Version: gyrus master\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" "product=gyrus&keywords=I18N+L10N&component=general\n" "POT-Creation-Date: 2013-12-19 14:26+0000\n" "PO-Revision-Date: 2016-01-01 18:54+0100\n" "Last-Translator: Mario Blättermann \n" "Language-Team: German \n" "Language: de\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" "X-Generator: Poedit 1.8.6\n" #: ../gyrus.desktop.in.in.h:1 msgid "Gyrus IMAP Cyrus Administrator" msgstr "Gyrus IMAP Cyrus-Verwaltung" #: ../gyrus.desktop.in.in.h:2 msgid "Administer the mailboxes of your IMAP Cyrus servers" msgstr "Postfachverwaltung auf Ihren IMAP Cyrus-Servern" #: ../src/ui/create_mailbox.xml.h:1 msgid "Name:" msgstr "Name:" #: ../src/ui/create_mailbox.xml.h:2 msgid "Quota (MB):" msgstr "Speicherplatz (MB):" #: ../src/ui/create_mailbox.xml.h:3 msgid "Assign quota" msgstr "Speicherplatz zuordnen" #: ../src/ui/find.xml.h:1 msgid "Search for:" msgstr "Suchen nach:" #: ../src/ui/find.xml.h:2 msgid "Match _entire word only" msgstr "Nur nach _ganzen Wörtern suchen" #: ../src/ui/find.xml.h:3 msgid "_Wrap around" msgstr "_Zeilenumbruch" #: ../src/ui/page.xml.h:1 msgid "Free space:" msgstr "Freier Platz:" #: ../src/ui/page.xml.h:2 msgid "Assigned space:" msgstr "Zugeordneter Platz:" #: ../src/ui/page.xml.h:3 msgid "Owner:" msgstr "Eigentümer:" #: ../src/ui/page.xml.h:4 msgid "New quota (MB)" msgstr "Neuer Speicherplatz (MB)" #: ../src/ui/page.xml.h:5 msgid "Modify quota" msgstr "Speicherplatz-Zuordnung ändern" #: ../src/ui/page.xml.h:6 msgid "Access control list" msgstr "Zugriffskontrollliste" #: ../src/ui/page.xml.h:7 ../src/ui/sessions_edit.xml.h:5 #: ../tests/gyrus-talk.xml.h:2 msgid "Host:" msgstr "Rechner:" #: ../src/ui/page.xml.h:8 msgid "User:" msgstr "Benutzer:" #: ../src/ui/page.xml.h:9 ../src/ui/sessions_edit.xml.h:4 #: ../tests/gyrus-talk.xml.h:4 msgid "Port:" msgstr "Port:" #: ../src/ui/password.xml.h:1 msgid "Password" msgstr "Passwort" #: ../src/ui/password.xml.h:2 msgid "Enter your password" msgstr "Passwort eingeben" #: ../src/ui/report.xml.h:1 msgid "Report" msgstr "Report" #: ../src/ui/report.xml.h:3 #, no-c-format msgid "Over (%)" msgstr "Übrig (%)" #: ../src/ui/sessions.xml.h:1 msgid "Open session" msgstr "Sitzung öffnen" #: ../src/ui/sessions_edit.xml.h:1 msgid "Session name:" msgstr "Sitzungsname:" #: ../src/ui/sessions_edit.xml.h:2 msgid "Password:" msgstr "Passwort:" #: ../src/ui/sessions_edit.xml.h:3 msgid "Username:" msgstr "Benutzername:" #: ../src/ui/sessions_edit.xml.h:6 msgid "Session details" msgstr "Sitzungsdetails" #: ../src/ui/sessions_edit.xml.h:7 ../tests/gyrus-talk.xml.h:3 msgid "Use a secure connection" msgstr "Sichere Verbindung verwenden" #: ../src/ui/sessions_edit.xml.h:8 msgid "Mailbox hierarchy separator:" msgstr "Trenner für Postfach-Hierarchie:" #: ../src/ui/sessions_edit.xml.h:9 msgid "Options" msgstr "Optionen" #: ../src/gyrus-admin-acl.c:54 ../src/gyrus-admin-acl.c:103 #, c-format msgid "Mailbox '%s' does not exist." msgstr "Postfach »%s« existiert nicht." #: ../src/gyrus-admin-acl.c:76 msgid "Invalid identifier." msgstr "Ungültige Bezeichnung." #: ../src/gyrus-admin-acl.c:82 msgid "Empty entry name." msgstr "Eintragsname fehlt." #: ../src/gyrus-admin-acl.c:87 msgid "Empty mailbox name." msgstr "Postfachname fehlt" #: ../src/gyrus-admin-acl.c:107 msgid "Missing required argument to Setacl" msgstr "Benötigtes Argument für Setacl fehlt" #: ../src/gyrus-admin-acl.c:143 ../src/gyrus-admin-mailbox.c:80 msgid "Permission denied" msgstr "Zugriff verweigert" #: ../src/gyrus-admin-acl.c:175 msgid "Empty access control list." msgstr "Zugriffskontrollliste ist leer." #: ../src/gyrus-admin-mailbox.c:78 msgid "Quota does not exist" msgstr "Zugeordneter Speicherplatz existiert nicht" #: ../src/gyrus-admin-mailbox.c:172 #, c-format msgid "Quota overloaded" msgstr "Speicherplatz ist ausgeschöpft" #: ../src/gyrus-admin-mailbox.c:230 msgid "Quota not valid. Please try again." msgstr "" "Zuordnung des Speicherplatzes ist ungültig. Bitte versuchen Sie es erneut." #: ../src/gyrus-admin-mailbox.c:244 msgid "" "Unable to change quota. Are you sure do you have the appropriate permissions?" msgstr "" "Zuordnung des Speicherplatzes konnte nicht geändert werden. Sind Sie sicher, " "dass Sie über die nötigen Zugriffsrechte verfügen?" #: ../src/gyrus-admin-mailbox.c:324 #, c-format msgid "'%s' is not a valid mailbox name. Please try a different one." msgstr "" "»%s« ist kein gültiger Postfachname. Bitte versuchen Sie einen anderen Namen." #: ../src/gyrus-admin-mailbox.c:332 #, c-format msgid "" "Parent mailbox '%s' does not exist. Please refresh the mailboxes list and " "try again." msgstr "" "Eltern-Postfach »%s« existiert nicht. Bitte aktualisieren Sie die " "Postfachliste und versuchen Sie es erneut." #: ../src/gyrus-admin-mailbox.c:342 #, c-format msgid "Mailbox '%s' already exists. Please try a different name." msgstr "" "Postfach »%s« existiert bereits. Bitte versuchen Sie einen anderen Namen." #: ../src/gyrus-admin-mailbox.c:355 msgid "" "Unable to create the mailbox. Are you sure do you have the appropriate " "permissions?" msgstr "" "Postfach konnte nicht erstellt werden. Sind Sie sicher, dass Sie über die " "nötigen Zugriffsrechte verfügen?" #: ../src/gyrus-admin-mailbox.c:366 msgid "Mailbox created, but could not set quota." msgstr "" "Postfach wurde erstellt, aber Speicherplatz konnte nicht zugeordnet werden." #: ../src/gyrus-admin-mailbox.c:433 #, c-format msgid "Unable to delete '%s'. Permission denied." msgstr "»%s« konnte nicht gelöscht werden. Zugriff verweigert." #: ../src/gyrus-admin-mailbox.c:634 msgid "new entry" msgstr "Neuer Eintrag" #: ../src/gyrus-admin.c:447 ../src/gyrus-report.c:287 #, c-format msgid "Users (%d)" msgstr "Benutzer (%d)" #: ../src/gyrus-admin.c:453 #, c-format msgid "Orphaned mailboxes (%d)" msgstr "Verwaiste Postfächer (%d)" #: ../src/gyrus-admin.c:497 ../src/gyrus-admin.c:852 msgid "Orphaned mailboxes" msgstr "Verwaiste Postfächer" #: ../src/gyrus-admin.c:497 ../src/gyrus-admin.c:850 ../src/gyrus-report.c:168 msgid "Users" msgstr "Benutzer" #: ../src/gyrus-admin.c:565 msgid "lookup" msgstr "lookup" #: ../src/gyrus-admin.c:566 msgid "read" msgstr "read" #: ../src/gyrus-admin.c:567 msgid "seen" msgstr "seen" #: ../src/gyrus-admin.c:568 msgid "write" msgstr "write" #: ../src/gyrus-admin.c:569 msgid "insert" msgstr "insert" #: ../src/gyrus-admin.c:570 msgid "post" msgstr "post" #: ../src/gyrus-admin.c:571 msgid "create" msgstr "create" #: ../src/gyrus-admin.c:572 msgid "delete" msgstr "delete" #: ../src/gyrus-admin.c:573 msgid "admin" msgstr "admin" #: ../src/gyrus-admin.c:581 msgid "Identifier" msgstr "Bezeichnung" #: ../src/gyrus-admin.c:651 msgid "Couldn't create the client socket." msgstr "Der Client-Socket konnte nicht erstellt werden." #: ../src/gyrus-admin.c:659 msgid "Couldn't parse the server address." msgstr "Die Serveradresse konnte nicht verarbeitet werden." #: ../src/gyrus-admin.c:668 #, c-format msgid "Could not connect to %s, port %d." msgstr "Verbindung zu %s, Port %d konnte nicht hergestellt werden." #: ../src/gyrus-admin.c:998 msgid "Unable to connect with empty passwords. Please introduce your password." msgstr "" "Verbindung ohne Passwort ist nicht möglich. Bitte geben Sie Ihr Passwort ein." #: ../src/gyrus-admin.c:1005 msgid "Incorrect login/password" msgstr "Anmeldename/Passwort nicht korrekt" #: ../src/gyrus-admin.c:1361 msgid "Could not change permission. Server error: " msgstr "Zugriffsrechte konnten nicht geändert werden. Serverfehler:" #: ../src/gyrus-admin.c:1404 #, c-format msgid "An entry called '%s' already exists. Overwrite it?" msgstr "Ein Eintrag namens »%s« existiert bereits. Überschreiben?" #: ../src/gyrus-dialog-find-mailbox.c:171 #, c-format msgid "The text '%s' was not found in the mailbox list." msgstr "Der Text »%s« wurde in der Postfachliste nicht gefunden." #: ../src/gyrus-dialog-find-mailbox.c:275 msgid "Find mailbox" msgstr "Postfach suchen" #: ../src/gyrus-dialog-mailbox-new.c:93 msgid "Quota not valid" msgstr "Zuordnung ist ungültig" #: ../src/gyrus-dialog-mailbox-new.c:220 msgid "New mailbox" msgstr "Neues Postfach" #: ../src/gyrus-main-app.c:146 #, c-format msgid "Really delete mailbox '%s' and all of its submailboxes?" msgstr "Postfach »%s« und dessen Unterpostfächer wirklich löschen?" #: ../src/gyrus-main-app.c:261 ../src/gyrus-main-app.c:407 #: ../src/gyrus-main-app.c:703 msgid "Cyrus IMAP Administrator" msgstr "Cyrus IMAP-Verwaltung" #: ../src/gyrus-main-app.c:275 #, c-format msgid "%s - Cyrus IMAP Administrator" msgstr "%s - Cyrus IMAP-Verwaltung" #: ../src/gyrus-main-app.c:354 msgid "_File" msgstr "_Datei" #: ../src/gyrus-main-app.c:355 msgid "_Edit" msgstr "_Bearbeiten" #: ../src/gyrus-main-app.c:356 msgid "_ACL" msgstr "_Zugriffskontrolle" #: ../src/gyrus-main-app.c:357 msgid "_View" msgstr "_Ansicht" #: ../src/gyrus-main-app.c:358 msgid "_Help" msgstr "_Hilfe" #: ../src/gyrus-main-app.c:359 msgid "Go to server..." msgstr "Server …" #: ../src/gyrus-main-app.c:360 msgid "Show the list of servers" msgstr "Serverliste anzeigen" #: ../src/gyrus-main-app.c:368 msgid "Add mailbox" msgstr "Postfach hinzufügen" #: ../src/gyrus-main-app.c:369 msgid "Add a mailbox under the one selected" msgstr "Postfach unterhalb des gewählten Postfachs hinzufügen" #: ../src/gyrus-main-app.c:371 msgid "Search for a mailbox in current server" msgstr "Auf dem aktuellen Server nach einem Postfach suchen" #: ../src/gyrus-main-app.c:373 msgid "Refresh the mailbox list" msgstr "Postfachliste aktualisieren" #: ../src/gyrus-main-app.c:374 msgid "Create report..." msgstr "Bericht erstellen …" #: ../src/gyrus-main-app.c:375 msgid "Create report of users with quota problems" msgstr "Bericht für Benutzer mit Speicherplatzproblemen erstellen" #: ../src/gyrus-main-app.c:379 msgid "New entry" msgstr "Neuer Eintrag" #: ../src/gyrus-main-app.c:380 msgid "Create a new ACL entry in current mailbox" msgstr "" "Neuen Eintrag der Zugriffskontrollliste im aktuellen Postfach erstellen" #: ../src/gyrus-main-app.c:381 msgid "Remove mailbox" msgstr "Postfach löschen" #: ../src/gyrus-main-app.c:382 msgid "Remove current mailbox from the server" msgstr "Aktuelles Postfach auf dem Server löschen" #: ../src/gyrus-main-app.c:387 msgid "Rename entry" msgstr "Eintrag umbenennen" #: ../src/gyrus-main-app.c:388 msgid "Rename selected ACL entry" msgstr "Ausgewählten Eintrag der Zugriffskontrollliste umbenennen" #: ../src/gyrus-main-app.c:389 msgid "Delete entry" msgstr "Eintrag löschen" #: ../src/gyrus-main-app.c:390 msgid "Delete selected ACL entry" msgstr "Ausgewählten Eintrag der Zugriffskontrollliste entfernen" #: ../src/gyrus-main-app.c:523 msgid "translators-credits" msgstr "Mario Blättermann " #: ../src/gyrus-main-app.c:533 msgid "GNOME Cyrus Administrator" msgstr "GNOME Cyrus-Verwaltung" #: ../src/gyrus-main-app.c:535 msgid "" "(c) 2003-2005 GNOME Foundation\n" "(c) 2004-2005 Claudio Saavedra" msgstr "" "(c) 2003-2005 GNOME Foundation\n" "(c) 2004-2005 Claudio Saavedra" #: ../src/gyrus-main-app.c:537 msgid "Administration tool for Cyrus IMAP servers." msgstr "Verwaltungswerkzeug für Cyrus IMAP-Server." #. set title #: ../src/gyrus-report.c:105 #, c-format msgid "Mailbox space usage report for %s" msgstr "Bericht über zugeordneten Speicherplatz für %s" #: ../src/gyrus-report.c:189 ../src/gyrus-report.c:490 msgid "Quota (%)" msgstr "Speicherplatz (%)" #: ../src/gyrus-report.c:202 ../src/gyrus-report.c:494 msgid "Assigned (KB)" msgstr "Zugeordnet (kB)" #: ../src/gyrus-report.c:213 ../src/gyrus-report.c:498 msgid "Used (KB)" msgstr "Benutzt (kB)" #. Translators: this represents the number of pages being printed. #: ../src/gyrus-report.c:463 #, c-format msgid "%d/%d" msgstr "%d von %d" #: ../src/gyrus-report.c:486 msgid "User" msgstr "Benutzer" #: ../src/gyrus-session.c:164 msgid "Edit session" msgstr "Sitzung bearbeiten" #: ../src/gyrus-session.c:178 msgid "New session" msgstr "Neue Sitzung" #: ../src/gyrus-session.c:357 msgid "A session name is required." msgstr "Ein Sitzungsname wird benötigt." #: ../src/gyrus-session.c:368 #, c-format msgid "Session named \"%s\" already exists." msgstr "Sitzung namens »%s« existiert bereits." #: ../src/gyrus-session.c:464 ../src/gyrus-session.c:598 msgid "Autodetect" msgstr "Autoerkennung" #: ../src/gyrus-session.c:549 msgid "Session" msgstr "Sitzung" #: ../src/gyrus-session.c:718 msgid "No host specified." msgstr "Kein Rechner angegeben." #: ../tests/gyrus-talk.xml.h:1 msgid "Talk - Echo client" msgstr "Talk - Echo-Client" #: ../tests/gyrus-talk.xml.h:5 msgid "_Connect" msgstr "_Verbinden" #: ../tests/gyrus-talk.xml.h:6 msgid "Connection" msgstr "Verbindung" #: ../tests/gyrus-talk.xml.h:7 msgid "Command:" msgstr "Befehl:" #: ../tests/gyrus-talk.xml.h:8 msgid "_Send" msgstr "_Senden" gyrus-0.4.2/po/dz.po000066400000000000000000000514601426522072200142710ustar00rootroot00000000000000# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # FIRST AUTHOR , YEAR. # msgid "" msgstr "" "Project-Id-Version: gnome-extras/gyrus.HEAD.pot\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-04-24 13:45-0400\n" "PO-Revision-Date: 2007-04-24 13:45-0400\n" "Last-Translator: sonam pelden \n" "Language-Team: Dzongkha \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n!=1);\n" "X-Poedit-Language: Dzongkha\n" "X-Poedit-Country: Bhutan\n" "X-Poedit-SourceCharset: utf-8\n" #: ../gyrus.desktop.in.in.h:1 msgid "Administer the mailboxes of your IMAP Cyrus servers" msgstr "ཁྱོད་རའི་ཨའི་ཨེམ་ཨེ་པི་སའི་རཱསི་སར་བར་གྱི་ཡིག་སྒྲོམ་ཚུ་བདག་སྐྱོང་འཐབ་" #: ../gyrus.desktop.in.in.h:2 msgid "Gyrus IMAP Cyrus Administrator" msgstr "ཇི་རཱསི་ ཨའི་ཨེམ་ཨེ་པི་སའི་རཱསི་བདག་སྐྱོང་འཐབ་" #: ../src/glade/create_mailbox.glade.h:1 msgid "*" msgstr "*" #: ../src/glade/create_mailbox.glade.h:2 msgid "Name:" msgstr "མིང་:" #: ../src/glade/create_mailbox.glade.h:3 msgid "Quota (MB):" msgstr "ཐོབ་སྐལ་ (ཨེམ་བི་):" #: ../src/glade/create_mailbox.glade.h:4 msgid "Assign quota" msgstr "ཐོབ་སྐལ་འགན་སྤྲོད་འབད་" #: ../src/glade/create_mailbox.glade.h:5 msgid "Create mailbox" msgstr "ཡིག་སྒྲོམ་གསར་བསྐྲུན་འབད་" #: ../src/glade/find.glade.h:1 msgid "Find" msgstr "འཚོལ་" #: ../src/glade/find.glade.h:2 msgid "Match _entire word only" msgstr "མིང་ཚིག་ཧྲིལ་བུ་རྐྱངམ་ཅིག་མཐུན་སྒྲིག་འབད། (_e)" #: ../src/glade/find.glade.h:3 msgid "Search for:" msgstr "དོན་ལུ་འཚོལ:" #: ../src/glade/find.glade.h:4 msgid "_Wrap around" msgstr "མཐའ་འཁོར་ལོག་མཚམས་བཟོོ། (_W)" #: ../src/glade/page.glade.h:1 msgid "Assigned space:" msgstr "བར་སྟོང་འགན་སྤྲོད་ཡོདཔ:" #: ../src/glade/page.glade.h:2 msgid "Enter your password" msgstr "ཁྱོད་རའི་ཆོག་ཡིག་ཐོ་བཀོད་འབད" #: ../src/glade/page.glade.h:3 msgid "Free space:" msgstr "བར་སྟོང་དལཝ:" #: ../src/glade/page.glade.h:4 msgid "Host:" msgstr "ཧོསཊི:" #: ../src/glade/page.glade.h:5 msgid "Owner:" msgstr "བདག་པོ:" #: ../src/glade/page.glade.h:6 msgid "Port:" msgstr "འདྲེན་ལམ:" #: ../src/glade/page.glade.h:7 msgid "User:" msgstr "ལག་ལེན་པ:" #: ../src/glade/page.glade.h:8 msgid "Access control list" msgstr "ཚད་བཟུང་ཐོ་ཡིག་འདི་འཛུལ་སྤྱོད་འབད་" #: ../src/glade/page.glade.h:9 msgid "Modify quota" msgstr "ཐོབ་སྐལ་ལེགས་བཅོས་འབད་" #: ../src/glade/page.glade.h:10 msgid "New quota (MB)" msgstr "ཐོབ་སྐལ་གསརཔ་ (ཨེམ་བི་)" #: ../src/glade/page.glade.h:11 msgid "Password" msgstr "ཆོག་ཡིག་" #: ../src/glade/page.glade.h:12 ../src/gyrus-admin.c:842 #: ../tests/gyrus-talk.glade.h:7 msgid "_Connect" msgstr "མཐུད། (_C)" #: ../src/glade/preferences.glade.h:1 msgid "Mailbox quota:" msgstr "ཡིག་སྒྲོམ་ཐོབ་སྐལ:" #: ../src/glade/preferences.glade.h:2 msgid "Mailboxes tree:" msgstr "ཡིག་སྒྲོམ་ཚུ་གི་རྩ་འབྲེལ:" #: ../src/glade/preferences.glade.h:3 msgid "Default suffix for changing quota:" msgstr "ཐོབ་སྐལ་བསྒྱུར་བཅོས་འབད་ནི་དོན་ལུ་ སྔོན་སྒྲིག་རྗེས་ཚིག:" #: ../src/glade/preferences.glade.h:4 msgid "Preferences" msgstr "དགའ་གདམ་ཚུ་" #: ../src/glade/preferences.glade.h:5 msgid "View complete mailboxes tree" msgstr "ཡིག་སྒྲོམ་ཚུའི་རྩ་འབྲེལ་མཇུག་བསྡུ་འདི་སྟོན་" #: ../src/glade/report.glade.h:2 #, no-c-format msgid "Over (%)" msgstr "ལྷག་ (%)" #: ../src/glade/report.glade.h:3 msgid "Report" msgstr "སྙན་ཞུ་" #. Translate only Autodetect please. #: ../src/glade/sessions.glade.h:2 msgid "" ".\n" "/\n" "Autodetect" msgstr "" ".\n" "/\n" "རང་བཞིན་སྐྱོན་འཛིན་པ་" #: ../src/glade/sessions.glade.h:5 msgid "Options" msgstr "གདམ་ཁ་ཚུ་" #: ../src/glade/sessions.glade.h:6 msgid "Session details" msgstr "ལཱ་ཡུན་རྒྱས་བཤད་ཚུ་" #: ../src/glade/sessions.glade.h:7 ../tests/gyrus-talk.glade.h:3 msgid "Host:" msgstr "ཧེསཊི:" #: ../src/glade/sessions.glade.h:8 msgid "Mailbox hierarchy separator:" msgstr "ཡིག་སྒྲོམ་སྡེ་རིམ་དབྱེ་བྱེད་པ:" #: ../src/glade/sessions.glade.h:9 msgid "Open session" msgstr "ལཱ་ཡུན་ཁ་ཕྱེ་" #: ../src/glade/sessions.glade.h:10 msgid "Password:" msgstr "ཆོག་ཡིག:" #: ../src/glade/sessions.glade.h:11 ../tests/gyrus-talk.glade.h:4 msgid "Port:" msgstr "འདྲེན་ལམ:" #: ../src/glade/sessions.glade.h:12 msgid "Session name:" msgstr "ལཱ་ཡུན་མིང་:" #: ../src/glade/sessions.glade.h:13 ../tests/gyrus-talk.glade.h:6 msgid "Use a secure connection" msgstr "མཐའ་བཙན་མཐུད་ལམ་ཅིག་ལག་ལེན་འཐབ" #: ../src/glade/sessions.glade.h:14 msgid "Username:" msgstr "ལག་ལེན་པའི་མིང་:" #: ../src/gyrus-admin-acl.c:53 ../src/gyrus-admin-acl.c:101 #, c-format msgid "Mailbox '%s' does not exist." msgstr "ཡིག་སྒྲོམ་ '%s' འདི་མིན་འདུག།" #: ../src/gyrus-admin-acl.c:74 msgid "Invalid identifier." msgstr "ནུས་ཅན་མེད་པའི་ངོས་འཛིན་པ།" #: ../src/gyrus-admin-acl.c:80 msgid "Empty entry name." msgstr "འཛུལ་ཞུགས་མིང་སྟོངམ་སྟོན།" #: ../src/gyrus-admin-acl.c:85 msgid "Empty mailbox name." msgstr "ཡིག་སྒྲོམ་མིང་སྟོངམ་སྟོན།" #: ../src/gyrus-admin-acl.c:105 msgid "Missing required argument to Setacl" msgstr "སེཊི་ཨེ་སི་ཨེལ་ལུ་བརླག་སྟོར་ཞུགས་ཡོད་པའི་སྒྲུབ་རྟགས་" #: ../src/gyrus-admin-acl.c:141 ../src/gyrus-admin-mailbox.c:80 msgid "Permission denied" msgstr "གནང་བ་ཉན་མ་བཏུབ་" #: ../src/gyrus-admin-acl.c:173 msgid "Empty access control list." msgstr "ཚད་འཛིན་ཐོ་ཡིག་འཛུལ་སྤྱོད་འབད་ནི་འདི་སྟོངམ་སྟོན།" #: ../src/gyrus-admin-mailbox.c:78 msgid "Quota does not exist" msgstr "ཐོབ་སྐལ་མེད་" #: ../src/gyrus-admin-mailbox.c:172 msgid "Quota overloaded" msgstr "ཐོབ་སྐལ་ལས་སྣ་མང་དྲགས་པ་" #: ../src/gyrus-admin-mailbox.c:228 msgid "Quota not valid. Please try again." msgstr "ཐོབ་སྐལ་ནུས་ཅན་མེད། ལོག་འབད་རྩོལ་བསྐྱེད་གནང་།" #: ../src/gyrus-admin-mailbox.c:242 msgid "" "Unable to change quota. Are you sure do you have the appropriate permissions?" msgstr "" "ཐོབ་སྐལ་བསྒྱུར་བཅོས་འབད་མ་ཚུགས། ཁྱོད་ལུ་འོས་ལྡན་གྱི་གནང་བ་ཡོད་ཟེར་མི་འདི་ ཁྱོད་ངེས་བདེན་ཨིན་ན?" #: ../src/gyrus-admin-mailbox.c:326 #, c-format msgid "'%s' is not a valid mailbox name. Please try a different one." msgstr "'%s' འདི་ནུས་ཅན་ཡོད་པའི་ཡིག་སྒྲོམ་མིང་མེན། སོ་སོ་ཅིག་འབད་རྩོལ་བསྐྱེད་གནང་།" #: ../src/gyrus-admin-mailbox.c:334 #, c-format msgid "" "Parent mailbox '%s' does not exist. Please refresh the mailboxes list and " "try again." msgstr "རྩ་ལག་ཡིག་སྒྲོམ་ '%s' མེད། ཡིག་སྒྲོམ་ཚུའི་ཐོ་ཡིག་ཡང་སེལ་འབད་དེ་ལོག་འབད་རྩོལ་བསྐྱེད་གནང་།" #: ../src/gyrus-admin-mailbox.c:344 #, c-format msgid "Mailbox '%s' already exists. Please try a different name." msgstr "ཡིག་སྒྲོམ་ '%s' འདི་ཧེ་མ་ལས་རང་འདུག། མིང་སོ་སོ་ཅིག་འབད་བལྟ།" #: ../src/gyrus-admin-mailbox.c:357 msgid "" "Unable to create the mailbox. Are you sure do you have the appropriate " "permissions?" msgstr "" "ཡིག་སྒྲོམ་འདི་གསར་བསྐྲུན་འབད་མ་ཚུགས། ཁྱོད་ལུ་འོས་ལྡན་གྱི་གནང་བ་ཡོད་ཟེར་ ཁྱོད་ངེས་བདེན་ཨིན་ན?" #: ../src/gyrus-admin-mailbox.c:367 msgid "Mailbox created, but could not set quota." msgstr "ཡིག་སྒྲོམ་གསར་བསྐྲུན་འབད་ནུག་ དེ་འབདཝ་ད་ ཐོབ་སྐལ་འདི་གཞི་སྒྲིག་འབད་མ་ཚུགས།" #: ../src/gyrus-admin-mailbox.c:423 #, c-format msgid "Unable to delete '%s'. Permission denied." msgstr "'%s' བཏོན་གཏང་མ་ཚུགས། གནང་བ་ཁས་མ་ལེན།" #: ../src/gyrus-admin-mailbox.c:624 msgid "new entry" msgstr "འཛུལ་ཞུགས་གསརཔ་" #: ../src/gyrus-admin.c:484 ../src/gyrus-report.c:266 #, c-format msgid "Users (%d)" msgstr "ལག་ལེན་པ་ (%d)" #: ../src/gyrus-admin.c:490 #, c-format msgid "Orphaned mailboxes (%d)" msgstr "ཨོར་ཕེནཌི་ཡིག་སྒྲོམ་ཚུ་ (%d)" #: ../src/gyrus-admin.c:534 ../src/gyrus-admin.c:851 msgid "Orphaned mailboxes" msgstr "ཨོར་ཕེནཌི་ཡིག་སྒྲོམ་ཚུ་" #: ../src/gyrus-admin.c:534 ../src/gyrus-admin.c:849 ../src/gyrus-report.c:150 msgid "Users" msgstr "ལག་ལེན་པ་ཚུ་" #: ../src/gyrus-admin.c:605 msgid "lookup" msgstr "བལྟ་བ་" #: ../src/gyrus-admin.c:606 msgid "read" msgstr "ལྷག་" #: ../src/gyrus-admin.c:607 msgid "seen" msgstr "མཐོང་ཡོདཔ་" #: ../src/gyrus-admin.c:608 msgid "write" msgstr "འབྲི་" #: ../src/gyrus-admin.c:609 msgid "insert" msgstr "བཙུགས་" #: ../src/gyrus-admin.c:610 msgid "post" msgstr "གནས་བསྐྱོད་" #: ../src/gyrus-admin.c:611 msgid "create" msgstr "གསར་བསྐྲུན་འབད་" #: ../src/gyrus-admin.c:612 msgid "delete" msgstr "བཏོན་གཏང་" #: ../src/gyrus-admin.c:613 msgid "admin" msgstr "བདག་སྐྱོང་" #: ../src/gyrus-admin.c:619 msgid "Identifier" msgstr "ངོས་འཛིན་པ་" #: ../src/gyrus-admin.c:689 #, c-format msgid "%s could not be found. Please check the name and try again." msgstr "%sའདི་འཐོབ་མ་ཚུགས། མིང་རྟགས་ཞིབ་འབད་ཞིནམ་ལས་ལོག་འབད་བལྟ།" #: ../src/gyrus-admin.c:700 #, c-format msgid "Could not connect to %s, port %d." msgstr "%s འདྲེན་ལམ་ %d ལུ་མཐུད་མ་ཚུགས།" #: ../src/gyrus-admin.c:997 msgid "Unable to connect with empty passwords. Please introduce your password." msgstr "ཆོག་ཡིག་སྟོངམ་ཚུ་དང་ཅིག་ཁར་མཐུད་མ་ཚུགས། ཁྱོད་རའི་ཆོག་ཡིག་ངོ་སྤྲོད་འབད་གནང་།" #: ../src/gyrus-admin.c:1004 msgid "Incorrect login/password" msgstr "ནང་བསྐྱོད་/ ཆོག་ཡིག་བདེན་མེད་" #: ../src/gyrus-admin.c:1012 msgid "_Disconnect" msgstr "མཐུད་ལམ་བཏོག་ནི། (_D)" #: ../src/gyrus-admin.c:1359 msgid "Could not change permission. Server error: " msgstr "གནང་བ་བསྒྱུར་བཅོས་འབད་མ་ཚུགས། སར་བར་འཛོལ་བ:" #: ../src/gyrus-admin.c:1400 #, c-format msgid "An entry called '%s' already exists. Overwrite it?" msgstr "'%s' ཟེར་བའི་འཛུལ་ཞུགས་འདི་ཧེ་མ་ལས་རང་འདུག། ཚབ་སྲུང་འབད་ག?" #: ../src/gyrus-dialog-find-mailbox.c:158 #, c-format msgid "The text '%s' was not found in the mailbox list." msgstr "'%s'ཚིག་ཡིག་འདི་ ཡིག་སྒྲོམ་ཐོ་ཡིག་ནང་འཚོལ་མ་འཐོབ།" #: ../src/gyrus-dialog-find-mailbox.c:259 msgid "Find mailbox" msgstr "ཡིག་སྒྲོམ་འཚོལ་" #: ../src/gyrus-dialog-mailbox-new.c:82 msgid "Quota not valid" msgstr "ཐོབ་སྐལ་ནུས་ཅན་མེད" #: ../src/gyrus-dialog-mailbox-new.c:238 msgid "New mailbox" msgstr "ཡིག་སྒྲོམ་གསརཔ་" #: ../src/gyrus-main-app.c:125 #, c-format msgid "Really delete mailbox '%s' and all of its submailboxes?" msgstr "ཡིག་སྒྲོམ་ '%s' འདི་དང་ དེ་ལས་དེའི་ཡན་ལག་ཡིག་སྒྲོམ་ཚུ་ངོ་མ་སྦེ་རང་བཏོན་གཏང་ག?" #: ../src/gyrus-main-app.c:247 ../src/gyrus-main-app.c:422 msgid "Cyrus IMAP Administrator" msgstr "སའི་རཱསི་ཨའི་ཨེམ་ཨེ་པི་བདག་སྐྱོང་པ" #: ../src/gyrus-main-app.c:261 #, c-format msgid "%s - Cyrus IMAP Administrator" msgstr "%s - སའི་རཱསི་ཨའི་ཨེམ་ཨེ་པི་བདག་སྐྱོང་པ་" #: ../src/gyrus-main-app.c:368 msgid "_File" msgstr "ཡིག་སྣོད། (_F)" #: ../src/gyrus-main-app.c:369 msgid "_Edit" msgstr "ཞུན་དག་འབད། (_E)" #: ../src/gyrus-main-app.c:370 msgid "_ACL" msgstr "ཨེ་སི་ཨེལ། (_A)" #: ../src/gyrus-main-app.c:371 msgid "_View" msgstr "མཐོང་སྣང་། (_V)" #: ../src/gyrus-main-app.c:372 msgid "_Help" msgstr "གྲོགས་རམ། (_H)" #: ../src/gyrus-main-app.c:373 msgid "Go to server..." msgstr "སར་བར་ལུ་འགྱོ..." #: ../src/gyrus-main-app.c:374 msgid "Show the list of servers" msgstr "སར་བར་ཚུ་གི་ཐོ་ཡིག་སྟོན་" #: ../src/gyrus-main-app.c:384 msgid "Add mailbox" msgstr "ཡིག་སྒྲོམ་ཁ་སྐོང་བརྐྱབ་" #: ../src/gyrus-main-app.c:385 msgid "Add a mailbox under the one selected" msgstr "གཅིག་སེལ་འཐུ་འབད་དེ་ཡོད་ས་ལུ་ ཡིག་སྒྲོམ་ཅིག་ཁ་སྐོང་བརྐྱབ་" #: ../src/gyrus-main-app.c:387 msgid "Search for a mailbox in current server" msgstr "ད་ལྟོའི་སར་བར་ནང་ཡིག་སྒྲོམ་ཅིག་འཚོལ་ཞིབ་འབད་" #: ../src/gyrus-main-app.c:389 msgid "Refresh the mailbox list" msgstr "ཡིག་སྒྲོམ་ཐོ་ཡིག་འདི་ཡང་སེལ་འབད་" #: ../src/gyrus-main-app.c:390 msgid "Create report..." msgstr "སྙན་ཞུ་གསར་བསྐྲུན་འབད..." #: ../src/gyrus-main-app.c:391 msgid "Create report of users with quota problems" msgstr "ཐོབ་སྐལ་དཀའ་ངལ་དང་ཅིག་ཁར་ ལག་ལེན་པ་ཚུ་གི་སྙན་ཞུ་གསར་བསྐྲུན་འབད་" #: ../src/gyrus-main-app.c:395 msgid "New entry" msgstr "ཐོ་བཀོད་གསརཔ་" #: ../src/gyrus-main-app.c:396 msgid "Create a new ACL entry in current mailbox" msgstr "ད་ལྟོའི་སྒྲོམ་ནང་ལུ་ ཨེ་སི་ཨེལ་གསརཔ་ཅིག་གསར་བསྐྲུན་འབད་" #: ../src/gyrus-main-app.c:397 msgid "Remove mailbox" msgstr "ཡིག་སྒྲོམ་རྩ་བསྐྲད་གཏང་" #: ../src/gyrus-main-app.c:398 msgid "Remove current mailbox from the server" msgstr "སར་བར་ལས་ད་ལྟོའི་ཡིག་སྒྲོམ་འདི་རྩ་བསྐྲད་གཏང་" #: ../src/gyrus-main-app.c:403 msgid "Rename entry" msgstr "འཛུལ་ཞུགས་འདི་བསྐྱར་མིང་བཏགས་" #: ../src/gyrus-main-app.c:404 msgid "Rename selected ACL entry" msgstr "སེལ་འཐུ་འབད་ཡོད་པའི་ཨེ་སི་ཨེལ་འཛུལ་ཞུགས་འདི་བསྐྱར་མིང་བཏགས་" #: ../src/gyrus-main-app.c:405 msgid "Delete entry" msgstr "འཛུལ་ཞུགས་བཏོན་གཏང་" #: ../src/gyrus-main-app.c:406 msgid "Delete selected ACL entry" msgstr "སེལ་འཐུ་འབད་ཡོད་པའི་ཨེ་སི་ཨེལ་འཛུལ་ཞུགས་འདི་བཏོན་གཏང་" #: ../src/gyrus-main-app.c:546 msgid "translators-credits" msgstr "སྐད་བསྒྱུར་པའི་ངོ་བསྟོད་ཚུ་" #: ../src/gyrus-main-app.c:556 msgid "GNOME Cyrus Administrator" msgstr "ཇི་ནོམ་སའི་རཱསི་བདག་སྐྱོང་པ་" #: ../src/gyrus-main-app.c:558 msgid "" "(c) 2003-2005 GNOME Foundation\n" "(c) 2004-2005 Claudio Saavedra" msgstr "" "(c) 2003-2005ཇི་ནོམ་གཞི་ཚོགས་\n" "(c) 2004-2005 ཀོལོ་ཌིའུ་ སཱ་བི་ཌ་" #: ../src/gyrus-main-app.c:560 msgid "Administration tool for Cyrus IMAP servers." msgstr "སའི་རཱསི་ཨའི་ཨེམ་ཨེ་པི་སར་བར་ཚུ་གི་དོན་ལུ་ བདག་སྐྱོང་གི་ལག་ཆས་ཚུ།" #. set title #: ../src/gyrus-report.c:86 #, c-format msgid "Report: %s" msgstr "སྙན་ཞུ: %s" #: ../src/gyrus-report.c:171 ../src/gyrus-report.c:458 msgid "Quota (%)" msgstr "ཐོབ་སྐལ་ (%)" #: ../src/gyrus-report.c:184 ../src/gyrus-report.c:461 msgid "Assigned (KB)" msgstr "འགན་སྤྲོད་འབད་ཡོདཔ་ (ཀེ་བི་)" #: ../src/gyrus-report.c:195 ../src/gyrus-report.c:464 msgid "Used (KB)" msgstr "ལག་ལེན་འཐབ་ཡོད་པའི་ (ཀེ་བི་)" #: ../src/gyrus-report.c:384 msgid "Print Report" msgstr "སྙན་ཞུ་དཔར་བསྐྲུན་འབད་" #. /my_status_bar_print ("Print previewing ..."); #: ../src/gyrus-report.c:427 msgid "Preview" msgstr "སྔོན་བལྟ་" #: ../src/gyrus-report.c:455 msgid "User" msgstr "ལག་ལེན་པ་" #: ../src/gyrus-session.c:164 msgid "Edit session" msgstr "ལཱ་ཡུན་ཞུན་དག་འབད་" #: ../src/gyrus-session.c:178 msgid "New session" msgstr "ལཱ་ཡུན་གསརཔ་" #: ../src/gyrus-session.c:357 msgid "A session name is required." msgstr "ལཱ་ཡུན་གྱི་མིང་དགོས་མཁོ་ཡོད།" #: ../src/gyrus-session.c:368 #, c-format msgid "Session named \"%s\" already exists." msgstr " \"%s\" མིང་བཏགས་ཡོད་པའི་ལཱ་ཡུན་འདི་ཧེ་མ་ལས་རང་འདུག།" #: ../src/gyrus-session.c:465 msgid "Autodetect" msgstr "རང་བཞིན་སྐྱོན་འཛིན་པ་" #: ../src/gyrus-session.c:550 msgid "Session" msgstr "ལཱ་ཡུན་" #: ../src/gyrus-session.c:700 msgid "No host specified." msgstr "ཧོསཊི་གསལ་བཀོད་མ་འབད་བས།" #: ../tests/gyrus-talk.glade.h:1 msgid "Connection" msgstr "མཐུད་ལམ" #: ../tests/gyrus-talk.glade.h:2 msgid "Command:" msgstr "བརྡ་བཀོད:" #: ../tests/gyrus-talk.glade.h:5 msgid "Talk - Echo client" msgstr "ཁ་སླབ་ནི་- བྲག་ཅ་ཞབས་ཏོག་སྤྱོད་མི་" #: ../tests/gyrus-talk.glade.h:8 msgid "_Send" msgstr "གཏང་། (_S)" gyrus-0.4.2/po/el.po000066400000000000000000000377501426522072200142620ustar00rootroot00000000000000# Greek translation for gyrus. # Copyright (C) 2013 gyrus's COPYRIGHT HOLDER # This file is distributed under the same license as the gyrus package. # Dimitris Spingos , 2013. # Dimitris Spingos (Δημήτρης Σπίγγος) , 2013. msgid "" msgstr "" "Project-Id-Version: gyrus master\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gyrus&" "keywords=I18N+L10N&component=general\n" "POT-Creation-Date: 2013-03-24 15:09+0000\n" "PO-Revision-Date: 2013-06-26 12:57+0300\n" "Last-Translator: Dimitris Spingos (Δημήτρης Σπίγγος) \n" "Language-Team: team@gnome.gr\n" "Language: el\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" "X-Generator: Virtaal 0.7.1\n" "X-Project-Style: gnome\n" #: ../gyrus.desktop.in.in.h:1 msgid "Gyrus IMAP Cyrus Administrator" msgstr "Διαχειριστής Gyrus IMAP Cyrus" #: ../gyrus.desktop.in.in.h:2 msgid "Administer the mailboxes of your IMAP Cyrus servers" msgstr "Διαχείριση των γραμματοκιβωτίων σε διακομιστές IMAP Cyrus" #: ../src/ui/create_mailbox.xml.h:1 msgid "Name:" msgstr "Όνομα:" #: ../src/ui/create_mailbox.xml.h:2 msgid "Quota (MB):" msgstr "Ποσόστωση (MB):" #: ../src/ui/create_mailbox.xml.h:3 msgid "Assign quota" msgstr "Απόδοση ποσόστωσης" #: ../src/ui/find.xml.h:1 msgid "Search for:" msgstr "Αναζήτηση για:" #: ../src/ui/find.xml.h:2 msgid "Match _entire word only" msgstr "Ταίριασμα μόνο _ολόκληρης λέξης" #: ../src/ui/find.xml.h:3 msgid "_Wrap around" msgstr "_Αναδίπλωση γύρω από" #: ../src/ui/page.xml.h:1 msgid "Free space:" msgstr "Ελεύθερος χώρος:" #: ../src/ui/page.xml.h:2 msgid "Assigned space:" msgstr "Εκχωρημένος χώρος:" #: ../src/ui/page.xml.h:3 msgid "Owner:" msgstr "Κάτοχος:" #: ../src/ui/page.xml.h:4 msgid "New quota (MB)" msgstr "Νέα ποσόστωση (ΜΒ)" #: ../src/ui/page.xml.h:5 msgid "Modify quota" msgstr "Τροποποίηση ποσόστωσης" #: ../src/ui/page.xml.h:6 msgid "Access control list" msgstr "Λίστα ελέγχου πρόσβασης" #: ../src/ui/page.xml.h:7 ../src/ui/sessions_edit.xml.h:5 #: ../tests/gyrus-talk.xml.h:2 msgid "Host:" msgstr "Οικοδεσπότης:" #: ../src/ui/page.xml.h:8 msgid "User:" msgstr "Χρήστης:" #: ../src/ui/page.xml.h:9 ../src/ui/sessions_edit.xml.h:4 #: ../tests/gyrus-talk.xml.h:4 msgid "Port:" msgstr "Θύρα:" #: ../src/ui/password.xml.h:1 msgid "Password" msgstr "Κωδικός πρόσβασης" #: ../src/ui/password.xml.h:2 msgid "Enter your password" msgstr "Εισάγετε τον κωδικό πρόσβασής σας" #: ../src/ui/report.xml.h:1 msgid "Report" msgstr "Αναφορά" #: ../src/ui/report.xml.h:3 #, no-c-format msgid "Over (%)" msgstr "Πάνω από (%)" #: ../src/ui/sessions.xml.h:1 msgid "Open session" msgstr "Ανοικτή συνεδρία" #: ../src/ui/sessions_edit.xml.h:1 msgid "Session name:" msgstr "Όνομα συνεδρίας:" #: ../src/ui/sessions_edit.xml.h:2 msgid "Password:" msgstr "Κωδικός πρόσβασης:" #: ../src/ui/sessions_edit.xml.h:3 msgid "Username:" msgstr "Όνομα χρήστη:" #: ../src/ui/sessions_edit.xml.h:6 msgid "Session details" msgstr "Λεπτομέρειες συνεδρίας" #: ../src/ui/sessions_edit.xml.h:7 ../tests/gyrus-talk.xml.h:3 msgid "Use a secure connection" msgstr "Χρήση ασφαλούς σύνδεσης" #: ../src/ui/sessions_edit.xml.h:8 msgid "Mailbox hierarchy separator:" msgstr "Διαχωριστικό ιεραρχίας γραμματοκιβωτίου:" #: ../src/ui/sessions_edit.xml.h:9 msgid "Options" msgstr "Επιλογές" #: ../src/gyrus-admin-acl.c:54 ../src/gyrus-admin-acl.c:103 #, c-format msgid "Mailbox '%s' does not exist." msgstr "Το γραμματοκιβώτιο '%s' δεν υπάρχει." #: ../src/gyrus-admin-acl.c:76 msgid "Invalid identifier." msgstr "Άκυρο αναγνωριστικό." #: ../src/gyrus-admin-acl.c:82 msgid "Empty entry name." msgstr "Κενό όνομα καταχώρισης." #: ../src/gyrus-admin-acl.c:87 msgid "Empty mailbox name." msgstr "Κενό όνομα γραμματοκιβωτίου." #: ../src/gyrus-admin-acl.c:107 msgid "Missing required argument to Setacl" msgstr "Λείπει απαιτούμενο όρισμα στο Setacl" #: ../src/gyrus-admin-acl.c:143 ../src/gyrus-admin-mailbox.c:80 msgid "Permission denied" msgstr "Άρνηση πρόσβασης" #: ../src/gyrus-admin-acl.c:175 msgid "Empty access control list." msgstr "Κενή λίστα ελέγχου πρόσβασης." #: ../src/gyrus-admin-mailbox.c:78 msgid "Quota does not exist" msgstr "Δεν υπάρχει ποσόστωση" #: ../src/gyrus-admin-mailbox.c:172 #, c-format msgid "Quota overloaded" msgstr "Υπερφορτωμένη ποσόστωση" #: ../src/gyrus-admin-mailbox.c:230 msgid "Quota not valid. Please try again." msgstr "Μη έγκυρη ποσόστωση. Παρακαλούμε, ξαναπροσπαθήστε." #: ../src/gyrus-admin-mailbox.c:244 msgid "" "Unable to change quota. Are you sure do you have the appropriate permissions?" msgstr "" "Αδύνατη η αλλαγή ποσόστωσης. Είσαστε βέβαιοι ότι έχετε τα κατάλληλα " "δικαιώματα;" #: ../src/gyrus-admin-mailbox.c:324 #, c-format msgid "'%s' is not a valid mailbox name. Please try a different one." msgstr "" "Το '%s' δεν είναι έγκυρο όνομα γραμματοκιβωτίου. Παρακαλούμε, δοκιμάστε ένα " "διαφορετικό όνομα." #: ../src/gyrus-admin-mailbox.c:332 #, c-format msgid "" "Parent mailbox '%s' does not exist. Please refresh the mailboxes list and " "try again." msgstr "" "Το γονικό γραμματοκιβώτιο '%s' δεν υπάρχει. Παρακαλούμε, ανανεώστε τη λίστα " "γραμματοκιβωτίων και προσπαθήστε πάλι." #: ../src/gyrus-admin-mailbox.c:342 #, c-format msgid "Mailbox '%s' already exists. Please try a different name." msgstr "" "το γραμματοκιβώτιο '%s' υπάρχει ήδη. Παρακαλούμε, δοκιμάστε ένα διαφορετικό " "όνομα." #: ../src/gyrus-admin-mailbox.c:355 msgid "" "Unable to create the mailbox. Are you sure do you have the appropriate " "permissions?" msgstr "" "Αδύνατη η δημιουργία του γραμματοκιβωτίου. Είσαστε βέβαιοι ότι έχετε τα " "κατάλληλα δικαιώματα;" #: ../src/gyrus-admin-mailbox.c:366 msgid "Mailbox created, but could not set quota." msgstr "Το γραμματοκιβώτιο δημιουργήθηκε, αλλά δεν μπόρεσε να ορίσει ποσόστωση." #: ../src/gyrus-admin-mailbox.c:433 #, c-format msgid "Unable to delete '%s'. Permission denied." msgstr "Αδύνατη η διαγραφή του '%s'. Άρνηση πρόσβασης." #: ../src/gyrus-admin-mailbox.c:634 msgid "new entry" msgstr "νέα καταχώριση" #: ../src/gyrus-admin.c:447 ../src/gyrus-report.c:287 #, c-format msgid "Users (%d)" msgstr "Χρήστες (%d)" #: ../src/gyrus-admin.c:453 #, c-format msgid "Orphaned mailboxes (%d)" msgstr "Ορφανά γραμματοκιβώτια (%d)" #: ../src/gyrus-admin.c:497 ../src/gyrus-admin.c:852 msgid "Orphaned mailboxes" msgstr "Ορφανά γραμματοκιβώτια" #: ../src/gyrus-admin.c:497 ../src/gyrus-admin.c:850 ../src/gyrus-report.c:168 msgid "Users" msgstr "Χρήστες" #: ../src/gyrus-admin.c:565 msgid "lookup" msgstr "αναζήτηση" #: ../src/gyrus-admin.c:566 msgid "read" msgstr "ανάγνωση" #: ../src/gyrus-admin.c:567 msgid "seen" msgstr "όψη" #: ../src/gyrus-admin.c:568 msgid "write" msgstr "εγγραφή" #: ../src/gyrus-admin.c:569 msgid "insert" msgstr "εισαγωγή" #: ../src/gyrus-admin.c:570 msgid "post" msgstr "αποστολή" #: ../src/gyrus-admin.c:571 msgid "create" msgstr "δημιουργία" #: ../src/gyrus-admin.c:572 msgid "delete" msgstr "διαγραφή" #: ../src/gyrus-admin.c:573 msgid "admin" msgstr "διαχείριση" #: ../src/gyrus-admin.c:581 msgid "Identifier" msgstr "Αναγνωριστικό" #: ../src/gyrus-admin.c:651 msgid "Couldn't create the client socket." msgstr "Αδύνατη η δημιουργία της υποδοχής πελάτη." #: ../src/gyrus-admin.c:659 msgid "Couldn't parse the server address." msgstr "Αδύνατη η ανάλυση διεύθυνσης διακομιστή." #: ../src/gyrus-admin.c:668 #, c-format msgid "Could not connect to %s, port %d." msgstr "Αδύνατη η σύνδεση στο %s, θύρα %d." #: ../src/gyrus-admin.c:998 msgid "Unable to connect with empty passwords. Please introduce your password." msgstr "" "Αδύνατη η σύνδεση με κενούς κωδικούς πρόσβασης. Παρακαλούμε, εισάγετε τον " "κωδικό πρόσβασής σας." #: ../src/gyrus-admin.c:1005 msgid "Incorrect login/password" msgstr "Εσφαλμένη σύνδεση/κωδικός πρόσβασης" #: ../src/gyrus-admin.c:1361 msgid "Could not change permission. Server error: " msgstr "Αδύνατη η αλλαγή δικαιώματος. Σφάλμα διακομιστή: " #: ../src/gyrus-admin.c:1404 #, c-format msgid "An entry called '%s' already exists. Overwrite it?" msgstr "Μια καταχώριση που λέγεται '%s' υπάρχει ήδη. Να αντικατασταθεί;" #: ../src/gyrus-dialog-find-mailbox.c:171 #, c-format msgid "The text '%s' was not found in the mailbox list." msgstr "Το κείμενο '%s' δε βρέθηκε στη λίστα γραμματοκιβωτίου." #: ../src/gyrus-dialog-find-mailbox.c:275 msgid "Find mailbox" msgstr "Εύρεση γραμματοκιβωτίου" #: ../src/gyrus-dialog-mailbox-new.c:93 msgid "Quota not valid" msgstr "Μη έγκυρη ποσόστωση" #: ../src/gyrus-dialog-mailbox-new.c:220 msgid "New mailbox" msgstr "Νέο γραμματοκιβώτιο" #: ../src/gyrus-main-app.c:146 #, c-format msgid "Really delete mailbox '%s' and all of its submailboxes?" msgstr "" "Να διαγραφούν πραγματικά το γραμματοκιβώτιο '%s' και όλα τα " "υπογραμματοκιβώτια του;" #: ../src/gyrus-main-app.c:261 ../src/gyrus-main-app.c:407 #: ../src/gyrus-main-app.c:703 msgid "Cyrus IMAP Administrator" msgstr "Διαχειριστής Cyrus IMAP" #: ../src/gyrus-main-app.c:275 #, c-format msgid "%s - Cyrus IMAP Administrator" msgstr "%s - Διαχειριστής Cyrus IMAP" #: ../src/gyrus-main-app.c:354 msgid "_File" msgstr "_Αρχείο" #: ../src/gyrus-main-app.c:355 msgid "_Edit" msgstr "_Επεξεργασία" #: ../src/gyrus-main-app.c:356 msgid "_ACL" msgstr "_Λίστα ελέγχου πρόσβασης (ACL)" #: ../src/gyrus-main-app.c:357 msgid "_View" msgstr "_Προβολή" #: ../src/gyrus-main-app.c:358 msgid "_Help" msgstr "_Βοήθεια" #: ../src/gyrus-main-app.c:359 msgid "Go to server..." msgstr "Μετάβαση στον διακομιστή..." #: ../src/gyrus-main-app.c:360 msgid "Show the list of servers" msgstr "Εμφάνιση της λίστας διακομιστών" #: ../src/gyrus-main-app.c:368 msgid "Add mailbox" msgstr "Προσθήκη γραμματοκιβωτίου" #: ../src/gyrus-main-app.c:369 msgid "Add a mailbox under the one selected" msgstr "Προσθήκη γραμματοκιβωτίου κάτω από το επιλεγμένο" #: ../src/gyrus-main-app.c:371 msgid "Search for a mailbox in current server" msgstr "Αναζήτηση για γραμματοκιβώτιο στον τρέχοντα διακομιστή" #: ../src/gyrus-main-app.c:373 msgid "Refresh the mailbox list" msgstr "Ανανέωση της λίστας του γραμματοκιβωτίου" #: ../src/gyrus-main-app.c:374 msgid "Create report..." msgstr "Δημιουργία αναφοράς..." #: ../src/gyrus-main-app.c:375 msgid "Create report of users with quota problems" msgstr "Δημιουργία αναφοράς χρηστών με προβλήματα ποσόστωσης" #: ../src/gyrus-main-app.c:379 msgid "New entry" msgstr "Νέα καταχώριση" #: ../src/gyrus-main-app.c:380 msgid "Create a new ACL entry in current mailbox" msgstr "Δημιουργία νέας καταχώρισης ACL στο τρέχον γραμματοκιβώτιο" #: ../src/gyrus-main-app.c:381 msgid "Remove mailbox" msgstr "Αφαίρεση γραμματοκιβωτίου" #: ../src/gyrus-main-app.c:382 msgid "Remove current mailbox from the server" msgstr "Αφαίρεση τρέχοντος γραμματοκιβωτίου από τον διακομιστή" #: ../src/gyrus-main-app.c:387 msgid "Rename entry" msgstr "Μετονομασία καταχώρισης" #: ../src/gyrus-main-app.c:388 msgid "Rename selected ACL entry" msgstr "Μετονομασία επιλεγμένης καταχώρισης ACL" #: ../src/gyrus-main-app.c:389 msgid "Delete entry" msgstr "Διαγραφή καταχώρισης" #: ../src/gyrus-main-app.c:390 msgid "Delete selected ACL entry" msgstr "Διαγραφή επιλεγμένης καταχώρισης ACL" #: ../src/gyrus-main-app.c:523 msgid "translators-credits" msgstr "" "Ελληνική μεταφραστική ομάδα του GNOME\n" " Δημήτρης Σπίγγος \n" "Για περισσότερα δείτε: http://gnome.gr" #: ../src/gyrus-main-app.c:533 msgid "GNOME Cyrus Administrator" msgstr "Διαχειριστής GNOME Cyrus" #: ../src/gyrus-main-app.c:535 msgid "" "(c) 2003-2005 GNOME Foundation\n" "(c) 2004-2005 Claudio Saavedra" msgstr "" "(c) 2003-2005 GNOME Foundation\n" "(c) 2004-2005 Claudio Saavedra" #: ../src/gyrus-main-app.c:537 msgid "Administration tool for Cyrus IMAP servers." msgstr "Εργαλείο διαχείρισης για διακομιστές Cyrus IMAP." #. set title #: ../src/gyrus-report.c:105 #, c-format msgid "Mailbox space usage report for %s" msgstr "Αναφορά χρήσης χώρου γραμματοκιβωτίου για %s" #: ../src/gyrus-report.c:189 ../src/gyrus-report.c:490 msgid "Quota (%)" msgstr "Ποσόστωση (%)" #: ../src/gyrus-report.c:202 ../src/gyrus-report.c:494 msgid "Assigned (KB)" msgstr "Εκχωρημένο (KB)" #: ../src/gyrus-report.c:213 ../src/gyrus-report.c:498 msgid "Used (KB)" msgstr "Χρησιμοποιούμενο (KB)" #. Translators: this represents the number of pages being printed. #: ../src/gyrus-report.c:463 #, c-format msgid "%d/%d" msgstr "%d/%d" #: ../src/gyrus-report.c:486 msgid "User" msgstr "Χρήστης" #: ../src/gyrus-session.c:164 msgid "Edit session" msgstr "Επεξεργασία συνεδρίας" #: ../src/gyrus-session.c:178 msgid "New session" msgstr "Νέα συνεδρία" #: ../src/gyrus-session.c:357 msgid "A session name is required." msgstr "Απαιτείται όνομα συνεδρίας." #: ../src/gyrus-session.c:368 #, c-format msgid "Session named \"%s\" already exists." msgstr "Μια συνεδρία με όνομα \"%s\" υπάρχει ήδη." #: ../src/gyrus-session.c:464 ../src/gyrus-session.c:598 msgid "Autodetect" msgstr "Αυτόματος εντοπισμός" #: ../src/gyrus-session.c:549 msgid "Session" msgstr "Συνεδρία" #: ../src/gyrus-session.c:718 msgid "No host specified." msgstr "Δεν καθορίστηκε οικοδεσπότης." #: ../tests/gyrus-talk.xml.h:1 msgid "Talk - Echo client" msgstr "Πελάτης ομιλίας - ηχούς" #: ../tests/gyrus-talk.xml.h:5 msgid "_Connect" msgstr "_Σύνδεση" #: ../tests/gyrus-talk.xml.h:6 msgid "Connection" msgstr "Σύνδεση" #: ../tests/gyrus-talk.xml.h:7 msgid "Command:" msgstr "Εντολή:" #: ../tests/gyrus-talk.xml.h:8 msgid "_Send" msgstr "Απο_στολή" gyrus-0.4.2/po/en_CA.po000066400000000000000000000331431426522072200146170ustar00rootroot00000000000000# Canadian English translation for Gyrus # Copyright (C) 2005-2006 Adam Weinberger and the GNOME Foundation # This file is distributed under the same licence as the gyrus package. # Adam Weinberger , 2005, 2006. # # msgid "" msgstr "" "Project-Id-Version: gyrus\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-01-17 20:06-0500\n" "PO-Revision-Date: 2005-08-27 13:09-0400\n" "Last-Translator: Adam Weinberger \n" "Language-Team: Canadian English \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../gyrus.desktop.in.h:1 msgid "Administer the mailboxes of your IMAP Cyrus servers" msgstr "Administer the mailboxes of your IMAP Cyrus servers" #: ../gyrus.desktop.in.h:2 msgid "Gyrus IMAP Cyrus Administrator" msgstr "Gyrus IMAP Cyrus Administrator" #: ../src/glade/create_mailbox.glade.h:1 msgid "*" msgstr "*" #: ../src/glade/create_mailbox.glade.h:2 msgid "Name:" msgstr "Name:" #: ../src/glade/create_mailbox.glade.h:3 msgid "Quota (MB):" msgstr "Quota (MB):" #: ../src/glade/create_mailbox.glade.h:4 msgid "Assign quota" msgstr "Assign quota" #: ../src/glade/create_mailbox.glade.h:5 msgid "Create mailbox" msgstr "Create mailbox" #: ../src/glade/find.glade.h:1 msgid "Find" msgstr "Find" #: ../src/glade/find.glade.h:2 msgid "Match _entire word only" msgstr "Match _entire word only" #: ../src/glade/find.glade.h:3 msgid "Search for:" msgstr "Search for:" #: ../src/glade/find.glade.h:4 msgid "_Wrap around" msgstr "_Wrap around" #: ../src/glade/page.glade.h:1 msgid "Assigned space:" msgstr "Assigned space:" #: ../src/glade/page.glade.h:2 msgid "Enter your password" msgstr "Enter your password" #: ../src/glade/page.glade.h:3 msgid "Free space:" msgstr "Free space:" #: ../src/glade/page.glade.h:4 msgid "Host:" msgstr "Host:" #: ../src/glade/page.glade.h:5 msgid "Owner:" msgstr "Owner:" #: ../src/glade/page.glade.h:6 msgid "Port:" msgstr "Port:" #: ../src/glade/page.glade.h:7 msgid "User:" msgstr "User:" #: ../src/glade/page.glade.h:8 msgid "Access control list" msgstr "Access control list" #: ../src/glade/page.glade.h:9 msgid "Modify quota" msgstr "Modify quota" #: ../src/glade/page.glade.h:10 msgid "New quota (MB)" msgstr "New quota (MB)" #: ../src/glade/page.glade.h:11 msgid "Password" msgstr "Password" #: ../src/glade/page.glade.h:12 ../src/gyrus-admin.c:763 #: ../tests/gyrus-talk.glade.h:7 msgid "_Connect" msgstr "_Connect" #: ../src/glade/preferences.glade.h:1 msgid "Mailbox quota:" msgstr "Mailbox quota:" #: ../src/glade/preferences.glade.h:2 msgid "Mailboxes tree:" msgstr "Mailboxes tree:" #: ../src/glade/preferences.glade.h:3 msgid "Default suffix for changing quota:" msgstr "Default suffix for changing quota:" #: ../src/glade/preferences.glade.h:4 msgid "Preferences" msgstr "Preferences" #: ../src/glade/preferences.glade.h:5 msgid "View complete mailboxes tree" msgstr "View complete mailboxes tree" #: ../src/glade/report.glade.h:2 #, no-c-format msgid "Over (%)" msgstr "Over (%)" #: ../src/glade/report.glade.h:3 ../src/gyrus-main-app.c:394 msgid "Report" msgstr "Report" #. Translate only Autodetect please. #: ../src/glade/sessions.glade.h:2 msgid "" ".\n" "/\n" "Autodetect" msgstr "" ".\n" "/\n" "Autodetect" #: ../src/glade/sessions.glade.h:5 msgid "Options" msgstr "Options" #: ../src/glade/sessions.glade.h:6 msgid "Session details" msgstr "Session details" #: ../src/glade/sessions.glade.h:7 msgid "Note: Uses a hostname or IP address" msgstr "Note: Uses a hostname or IP address" #: ../src/glade/sessions.glade.h:8 ../tests/gyrus-talk.glade.h:3 msgid "Host:" msgstr "Host:" #: ../src/glade/sessions.glade.h:9 msgid "Mailbox hierarchy separator:" msgstr "Mailbox hierarchy separator:" #: ../src/glade/sessions.glade.h:10 msgid "Open session" msgstr "Open session" #: ../src/glade/sessions.glade.h:11 msgid "Password:" msgstr "Password:" #: ../src/glade/sessions.glade.h:12 ../tests/gyrus-talk.glade.h:4 msgid "Port:" msgstr "Port:" #: ../src/glade/sessions.glade.h:13 msgid "Save as:" msgstr "Save as:" #: ../src/glade/sessions.glade.h:14 ../tests/gyrus-talk.glade.h:6 msgid "Use a secure connection" msgstr "Use a secure connection" #: ../src/glade/sessions.glade.h:15 msgid "Username:" msgstr "Username:" #: ../src/gyrus-admin-acl.c:51 ../src/gyrus-admin-acl.c:99 #, c-format msgid "Mailbox '%s' does not exist." msgstr "Mailbox '%s' does not exist." #: ../src/gyrus-admin-acl.c:72 msgid "Invalid identifier." msgstr "Invalid identifier." #: ../src/gyrus-admin-acl.c:78 msgid "Empty entry name." msgstr "Empty entry name." #: ../src/gyrus-admin-acl.c:83 msgid "Empty mailbox name." msgstr "Empty mailbox name." #: ../src/gyrus-admin-acl.c:103 msgid "Missing required argument to Setacl" msgstr "Missing required argument to Setacl" #: ../src/gyrus-admin-acl.c:139 ../src/gyrus-admin-mailbox.c:78 msgid "Permission denied" msgstr "Permission denied" #: ../src/gyrus-admin-acl.c:171 msgid "Empty access control list." msgstr "Empty access control list." #: ../src/gyrus-admin-mailbox.c:76 msgid "Quota does not exist" msgstr "Quota does not exist" #: ../src/gyrus-admin-mailbox.c:170 msgid "Quota overloaded" msgstr "Quota overloaded" #: ../src/gyrus-admin-mailbox.c:226 msgid "Quota not valid. Please try again." msgstr "Quota is not valid. Please try again." #: ../src/gyrus-admin-mailbox.c:240 msgid "" "Unable to change quota. Are you sure do you have the appropiate permissions?" msgstr "" "Unable to change quota. Are you sure you have the appropiate permissions?" #: ../src/gyrus-admin-mailbox.c:324 #, c-format msgid "'%s' is not a valid mailbox name. Please try a different one." msgstr "'%s' is not a valid mailbox name. Please try a different one." #: ../src/gyrus-admin-mailbox.c:332 #, c-format msgid "" "Parent mailbox '%s' does not exist. Please refresh the mailboxes list and " "try again." msgstr "" "Parent mailbox '%s' does not exist. Please refresh the mailboxes list and " "try again." #: ../src/gyrus-admin-mailbox.c:342 #, c-format msgid "Mailbox '%s' already exists. Please try a different name." msgstr "Mailbox '%s' already exists. Please try a different name." #: ../src/gyrus-admin-mailbox.c:355 msgid "" "Unable to create the mailbox. Are you sure do you have the appropiate " "permissions?" msgstr "" "Unable to create the mailbox. Are you sure you have the appropiate " "permissions?" #: ../src/gyrus-admin-mailbox.c:365 msgid "Mailbox created, but could not set quota." msgstr "Mailbox created, but could not set quota." #: ../src/gyrus-admin-mailbox.c:419 #, c-format msgid "Unable to delete '%s'. Permission denied." msgstr "Unable to delete '%s'. Permission denied." #: ../src/gyrus-admin-mailbox.c:620 msgid "new entry" msgstr "new entry" #: ../src/gyrus-admin.c:451 ../src/gyrus-report.c:264 #, c-format msgid "Users (%d)" msgstr "Users (%d)" #: ../src/gyrus-admin.c:469 ../src/gyrus-admin.c:772 ../src/gyrus-report.c:148 msgid "Users" msgstr "Users" #: ../src/gyrus-admin.c:539 msgid "lookup" msgstr "look up" #: ../src/gyrus-admin.c:540 msgid "read" msgstr "read" #: ../src/gyrus-admin.c:541 msgid "seen" msgstr "seen" #: ../src/gyrus-admin.c:542 msgid "write" msgstr "write" #: ../src/gyrus-admin.c:543 msgid "insert" msgstr "insert" #: ../src/gyrus-admin.c:544 msgid "post" msgstr "post" #: ../src/gyrus-admin.c:545 msgid "create" msgstr "create" #: ../src/gyrus-admin.c:546 msgid "delete" msgstr "delete" #: ../src/gyrus-admin.c:547 msgid "admin" msgstr "admin" #: ../src/gyrus-admin.c:553 msgid "Identifier" msgstr "Identifier" #: ../src/gyrus-admin.c:623 #, c-format msgid "%s could not be found. Please check the name and try again." msgstr "%s could not be found. Please check the name and try again." #: ../src/gyrus-admin.c:634 #, c-format msgid "Could not connect to %s, port %d." msgstr "Could not connect to %s, port %d." #: ../src/gyrus-admin.c:876 msgid "Unable to connect with empty passwords. Please introduce your password." msgstr "Unable to connect with empty passwords. Please enter your password." #: ../src/gyrus-admin.c:883 msgid "Incorrect login/password" msgstr "Incorrect login/password" #: ../src/gyrus-admin.c:891 msgid "_Disconnect" msgstr "_Disconnect" #: ../src/gyrus-admin.c:1234 msgid "Could not change permission. Server error: " msgstr "Could not change permission. Server error: " #: ../src/gyrus-admin.c:1275 #, c-format msgid "An entry called '%s' already exists. Overwrite it?" msgstr "An entry called '%s' already exists. Overwrite it?" #: ../src/gyrus-dialog-find-mailbox.c:156 #, c-format msgid "The text '%s' was not found in the mailbox list." msgstr "The text '%s' was not found in the mailbox list." #: ../src/gyrus-dialog-find-mailbox.c:257 msgid "Find mailbox" msgstr "Find mailbox" #: ../src/gyrus-dialog-mailbox-new.c:80 msgid "Quota not valid" msgstr "Quota not valid" #: ../src/gyrus-dialog-mailbox-new.c:236 msgid "New mailbox" msgstr "New mailbox" #: ../src/gyrus-main-app.c:129 #, c-format msgid "Really delete mailbox '%s' and all of its submailboxes?" msgstr "Really delete mailbox '%s' and all of its submailboxes?" #: ../src/gyrus-main-app.c:251 ../src/gyrus-main-app.c:426 msgid "Cyrus IMAP Administrator" msgstr "Cyrus IMAP Administrator" #: ../src/gyrus-main-app.c:265 #, c-format msgid "%s - Cyrus IMAP Administrator" msgstr "%s - Cyrus IMAP Administrator" #: ../src/gyrus-main-app.c:372 msgid "_File" msgstr "_File" #: ../src/gyrus-main-app.c:373 msgid "_Edit" msgstr "_Edit" #: ../src/gyrus-main-app.c:374 msgid "_ACL" msgstr "_ACL" #: ../src/gyrus-main-app.c:375 msgid "_View" msgstr "_View" #: ../src/gyrus-main-app.c:376 msgid "_Help" msgstr "_Help" #: ../src/gyrus-main-app.c:377 msgid "Go to server..." msgstr "Go to server..." #: ../src/gyrus-main-app.c:378 msgid "Show the list of servers" msgstr "Show the list of servers" #: ../src/gyrus-main-app.c:379 msgid "_Quit" msgstr "_Quit" #: ../src/gyrus-main-app.c:380 msgid "Quit the program" msgstr "Quit the program" #: ../src/gyrus-main-app.c:381 msgid "_About" msgstr "_About" #: ../src/gyrus-main-app.c:388 msgid "Add mailbox" msgstr "Add mailbox" #: ../src/gyrus-main-app.c:389 msgid "Add a mailbox under the one selected" msgstr "Add a mailbox under the one selected" #: ../src/gyrus-main-app.c:390 msgid "_Find" msgstr "_Find" #: ../src/gyrus-main-app.c:391 msgid "Search for a mailbox in current server" msgstr "Search for a mailbox in current server" #: ../src/gyrus-main-app.c:392 msgid "_Refresh" msgstr "_Refresh" #: ../src/gyrus-main-app.c:393 msgid "Refresh the mailbox list" msgstr "Refresh the mailbox list" #: ../src/gyrus-main-app.c:395 msgid "Create report of users with quota problems" msgstr "Create report of users with quota problems" #: ../src/gyrus-main-app.c:399 msgid "New entry" msgstr "New entry" #: ../src/gyrus-main-app.c:400 msgid "Create a new ACL entry in current mailbox" msgstr "Create a new ACL entry in current mailbox" #: ../src/gyrus-main-app.c:401 msgid "Remove mailbox" msgstr "Remove mailbox" #: ../src/gyrus-main-app.c:402 msgid "Remove current mailbox from the server" msgstr "Remove current mailbox from the server" #: ../src/gyrus-main-app.c:407 msgid "Rename entry" msgstr "Rename entry" #: ../src/gyrus-main-app.c:408 msgid "Rename selected ACL entry" msgstr "Rename selected ACL entry" #: ../src/gyrus-main-app.c:409 msgid "Delete entry" msgstr "Delete entry" #: ../src/gyrus-main-app.c:410 msgid "Delete selected ACL entry" msgstr "Delete selected ACL entry" #: ../src/gyrus-main-app.c:542 msgid "translators-credits" msgstr "Adam Weinberger " #: ../src/gyrus-main-app.c:552 msgid "GNOME Cyrus Administrator" msgstr "GNOME Cyrus Administrator" #: ../src/gyrus-main-app.c:554 msgid "" "(c) 2003-2005 GNOME Foundation\n" "(c) 2004-2005 Claudio Saavedra" msgstr "" "(c) 2003-2005 GNOME Foundation\n" "(c) 2004-2005 Claudio Saavedra" #: ../src/gyrus-main-app.c:556 msgid "Administration tool for Cyrus IMAP servers." msgstr "Administration tool for Cyrus IMAP servers." #. set title #: ../src/gyrus-report.c:84 #, c-format msgid "Report: %s" msgstr "Report: %s" #: ../src/gyrus-report.c:169 ../src/gyrus-report.c:456 msgid "Quota (%)" msgstr "Quota (%)" #: ../src/gyrus-report.c:182 ../src/gyrus-report.c:459 msgid "Assigned (KB)" msgstr "Assigned (KB)" #: ../src/gyrus-report.c:193 ../src/gyrus-report.c:462 msgid "Used (KB)" msgstr "Used (KB)" #: ../src/gyrus-report.c:382 msgid "Print Report" msgstr "Print Report" #. /my_status_bar_print ("Print previewing ..."); #: ../src/gyrus-report.c:425 msgid "Preview" msgstr "Preview" #: ../src/gyrus-report.c:453 msgid "User" msgstr "User" #: ../src/gyrus-session.c:163 msgid "Edit session" msgstr "Edit session" #: ../src/gyrus-session.c:177 msgid "New session" msgstr "New session" #: ../src/gyrus-session.c:339 msgid "A session name is required." msgstr "A session name is required." #: ../src/gyrus-session.c:350 #, c-format msgid "Session named \"%s\" already exists." msgstr "Session named \"%s\" already exists." #: ../src/gyrus-session.c:388 msgid "Session saved" msgstr "Session saved" #: ../src/gyrus-session.c:449 msgid "Autodetect" msgstr "Autodetect" #: ../src/gyrus-session.c:539 msgid "Session" msgstr "Session" #: ../src/gyrus-session.c:690 msgid "No host specified." msgstr "No host specified." #: ../tests/gyrus-talk.glade.h:1 msgid "Connection" msgstr "Connection" #: ../tests/gyrus-talk.glade.h:2 msgid "Command:" msgstr "Command:" #: ../tests/gyrus-talk.glade.h:5 msgid "Talk - Echo client" msgstr "Talk - Echo client" #: ../tests/gyrus-talk.glade.h:8 msgid "_Send" msgstr "_Send" gyrus-0.4.2/po/en_GB.po000066400000000000000000000330141426522072200146210ustar00rootroot00000000000000# English (British) translation. # Copyright (C) 2005 THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # Abigail Brady , Bastien Nocera , 2005. # msgid "" msgstr "" "Project-Id-Version: gyrus\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-05-16 08:23+0100\n" "PO-Revision-Date: 2007-05-16 08:23-0000\n" "Last-Translator: David Lodge \n" "Language-Team: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../gyrus.desktop.in.in.h:1 msgid "Administer the mailboxes of your IMAP Cyrus servers" msgstr "Administer the mailboxes of your IMAP Cyrus servers" #: ../gyrus.desktop.in.in.h:2 msgid "Gyrus IMAP Cyrus Administrator" msgstr "Gyrus IMAP Cyrus Administrator" #: ../src/glade/create_mailbox.glade.h:1 msgid "*" msgstr "*" #: ../src/glade/create_mailbox.glade.h:2 msgid "Name:" msgstr "Name:" #: ../src/glade/create_mailbox.glade.h:3 msgid "Quota (MB):" msgstr "Quota (MB):" #: ../src/glade/create_mailbox.glade.h:4 msgid "Assign quota" msgstr "Assign quota" #: ../src/glade/create_mailbox.glade.h:5 msgid "Create mailbox" msgstr "Create mailbox" #: ../src/glade/find.glade.h:1 msgid "Find" msgstr "Find" #: ../src/glade/find.glade.h:2 msgid "Match _entire word only" msgstr "Match _entire word only" #: ../src/glade/find.glade.h:3 msgid "Search for:" msgstr "Search for:" #: ../src/glade/find.glade.h:4 msgid "_Wrap around" msgstr "_Wrap around" #: ../src/glade/page.glade.h:1 msgid "Assigned space:" msgstr "Assigned space:" #: ../src/glade/page.glade.h:2 msgid "Enter your password" msgstr "Enter your password" #: ../src/glade/page.glade.h:3 msgid "Free space:" msgstr "Free space:" #: ../src/glade/page.glade.h:4 msgid "Host:" msgstr "Host:" #: ../src/glade/page.glade.h:5 msgid "Owner:" msgstr "Owner:" #: ../src/glade/page.glade.h:6 msgid "Port:" msgstr "Port:" #: ../src/glade/page.glade.h:7 msgid "User:" msgstr "User:" #: ../src/glade/page.glade.h:8 msgid "Access control list" msgstr "Access control list" #: ../src/glade/page.glade.h:9 msgid "Modify quota" msgstr "Modify quota" #: ../src/glade/page.glade.h:10 msgid "New quota (MB)" msgstr "New quota (MB)" #: ../src/glade/page.glade.h:11 msgid "Password" msgstr "Password" #: ../src/glade/page.glade.h:12 #: ../src/gyrus-admin.c:827 #: ../tests/gyrus-talk.glade.h:7 msgid "_Connect" msgstr "_Connect" #: ../src/glade/preferences.glade.h:1 msgid "Mailbox quota:" msgstr "Mailbox quota:" #: ../src/glade/preferences.glade.h:2 msgid "Mailboxes tree:" msgstr "Mailboxes tree:" #: ../src/glade/preferences.glade.h:3 msgid "Default suffix for changing quota:" msgstr "Default suffix for changing quota:" #: ../src/glade/preferences.glade.h:4 msgid "Preferences" msgstr "Preferences" #: ../src/glade/preferences.glade.h:5 msgid "View complete mailboxes tree" msgstr "View complete mailboxes tree" #: ../src/glade/report.glade.h:2 #, no-c-format msgid "Over (%)" msgstr "Over (%)" #: ../src/glade/report.glade.h:3 msgid "Report" msgstr "Report" #. Translate only Autodetect please. #: ../src/glade/sessions.glade.h:2 msgid "" ".\n" "/\n" "Autodetect" msgstr "" ".\n" "/\n" "Autodetect" #: ../src/glade/sessions.glade.h:5 msgid "Options" msgstr "Options" #: ../src/glade/sessions.glade.h:6 msgid "Session details" msgstr "Session details" #: ../src/glade/sessions.glade.h:7 #: ../tests/gyrus-talk.glade.h:3 msgid "Host:" msgstr "Host:" #: ../src/glade/sessions.glade.h:8 msgid "Mailbox hierarchy separator:" msgstr "Mailbox hierarchy separator:" #: ../src/glade/sessions.glade.h:9 msgid "Open session" msgstr "Open session" #: ../src/glade/sessions.glade.h:10 msgid "Password:" msgstr "Password:" #: ../src/glade/sessions.glade.h:11 #: ../tests/gyrus-talk.glade.h:4 msgid "Port:" msgstr "Port:" #: ../src/glade/sessions.glade.h:12 msgid "Session name:" msgstr "Session name:" #: ../src/glade/sessions.glade.h:13 #: ../tests/gyrus-talk.glade.h:6 msgid "Use a secure connection" msgstr "Use a secure connection" #: ../src/glade/sessions.glade.h:14 msgid "Username:" msgstr "Username:" #: ../src/gyrus-admin-acl.c:53 #: ../src/gyrus-admin-acl.c:101 #, c-format msgid "Mailbox '%s' does not exist." msgstr "Mailbox '%s' does not exist." #: ../src/gyrus-admin-acl.c:74 msgid "Invalid identifier." msgstr "Invalid identifier." #: ../src/gyrus-admin-acl.c:80 msgid "Empty entry name." msgstr "Empty entry name." #: ../src/gyrus-admin-acl.c:85 msgid "Empty mailbox name." msgstr "Empty mailbox name." #: ../src/gyrus-admin-acl.c:105 msgid "Missing required argument to Setacl" msgstr "Missing required argument to Setacl" #: ../src/gyrus-admin-acl.c:141 #: ../src/gyrus-admin-mailbox.c:81 msgid "Permission denied" msgstr "Permission denied" #: ../src/gyrus-admin-acl.c:173 msgid "Empty access control list." msgstr "Empty access control list." #: ../src/gyrus-admin-mailbox.c:79 msgid "Quota does not exist" msgstr "Quota does not exist" #: ../src/gyrus-admin-mailbox.c:173 msgid "Quota overloaded" msgstr "Quota overloaded" #: ../src/gyrus-admin-mailbox.c:229 msgid "Quota not valid. Please try again." msgstr "Quota not valid. Please try again." #: ../src/gyrus-admin-mailbox.c:243 msgid "Unable to change quota. Are you sure do you have the appropriate permissions?" msgstr "Unable to change quota. Are you sure you have the appropriate permissions?" #: ../src/gyrus-admin-mailbox.c:327 #, c-format msgid "'%s' is not a valid mailbox name. Please try a different one." msgstr "'%s' is not a valid mailbox name. Please try a different one." #: ../src/gyrus-admin-mailbox.c:335 #, c-format msgid "Parent mailbox '%s' does not exist. Please refresh the mailboxes list and try again." msgstr "Parent mailbox '%s' does not exist. Please refresh the mailboxes list and try again." #: ../src/gyrus-admin-mailbox.c:345 #, c-format msgid "Mailbox '%s' already exists. Please try a different name." msgstr "Mailbox '%s' already exists. Please try a different name." #: ../src/gyrus-admin-mailbox.c:358 msgid "Unable to create the mailbox. Are you sure do you have the appropriate permissions?" msgstr "Unable to create the mailbox. Are you sure you have the appropriate permissions?" #: ../src/gyrus-admin-mailbox.c:368 msgid "Mailbox created, but could not set quota." msgstr "Mailbox created, but could not set quota." #: ../src/gyrus-admin-mailbox.c:424 #, c-format msgid "Unable to delete '%s'. Permission denied." msgstr "Unable to delete '%s'. Permission denied." #: ../src/gyrus-admin-mailbox.c:622 msgid "new entry" msgstr "new entry" #: ../src/gyrus-admin.c:469 #: ../src/gyrus-report.c:268 #, c-format msgid "Users (%d)" msgstr "Users (%d)" #: ../src/gyrus-admin.c:475 #, c-format msgid "Orphaned mailboxes (%d)" msgstr "Orphaned mailboxes (%d)" #: ../src/gyrus-admin.c:519 #: ../src/gyrus-admin.c:836 msgid "Orphaned mailboxes" msgstr "Orphaned mailboxes" #: ../src/gyrus-admin.c:519 #: ../src/gyrus-admin.c:834 #: ../src/gyrus-report.c:150 msgid "Users" msgstr "Users" #: ../src/gyrus-admin.c:590 msgid "lookup" msgstr "lookup" #: ../src/gyrus-admin.c:591 msgid "read" msgstr "read" #: ../src/gyrus-admin.c:592 msgid "seen" msgstr "seen" #: ../src/gyrus-admin.c:593 msgid "write" msgstr "write" #: ../src/gyrus-admin.c:594 msgid "insert" msgstr "insert" #: ../src/gyrus-admin.c:595 msgid "post" msgstr "post" #: ../src/gyrus-admin.c:596 msgid "create" msgstr "create" #: ../src/gyrus-admin.c:597 msgid "delete" msgstr "delete" #: ../src/gyrus-admin.c:598 msgid "admin" msgstr "admin" #: ../src/gyrus-admin.c:604 msgid "Identifier" msgstr "Identifier" #: ../src/gyrus-admin.c:674 #, c-format msgid "%s could not be found. Please check the name and try again." msgstr "%s could not be found. Please check the name and try again." #: ../src/gyrus-admin.c:685 #, c-format msgid "Could not connect to %s, port %d." msgstr "Could not connect to %s, port %d." #: ../src/gyrus-admin.c:984 msgid "Unable to connect with empty passwords. Please introduce your password." msgstr "Unable to connect with empty passwords. Please introduce your password." #: ../src/gyrus-admin.c:991 msgid "Incorrect login/password" msgstr "Incorrect login/password" #: ../src/gyrus-admin.c:999 msgid "_Disconnect" msgstr "_Disconnect" #: ../src/gyrus-admin.c:1347 msgid "Could not change permission. Server error: " msgstr "Could not change permission. Server error: " #: ../src/gyrus-admin.c:1388 #, c-format msgid "An entry called '%s' already exists. Overwrite it?" msgstr "An entry called '%s' already exists. Overwrite it?" #: ../src/gyrus-dialog-find-mailbox.c:172 #, c-format msgid "The text '%s' was not found in the mailbox list." msgstr "The text '%s' was not found in the mailbox list." #: ../src/gyrus-dialog-find-mailbox.c:274 msgid "Find mailbox" msgstr "Find mailbox" #: ../src/gyrus-dialog-mailbox-new.c:93 msgid "Quota not valid" msgstr "Quota not valid" #: ../src/gyrus-dialog-mailbox-new.c:216 msgid "New mailbox" msgstr "New mailbox" #: ../src/gyrus-main-app.c:133 #, c-format msgid "Really delete mailbox '%s' and all of its submailboxes?" msgstr "Really delete mailbox '%s' and all of its submailboxes?" #: ../src/gyrus-main-app.c:255 #: ../src/gyrus-main-app.c:433 msgid "Cyrus IMAP Administrator" msgstr "Cyrus IMAP Administrator" #: ../src/gyrus-main-app.c:269 #, c-format msgid "%s - Cyrus IMAP Administrator" msgstr "%s - Cyrus IMAP Administrator" #: ../src/gyrus-main-app.c:377 msgid "_File" msgstr "_File" #: ../src/gyrus-main-app.c:378 msgid "_Edit" msgstr "_Edit" #: ../src/gyrus-main-app.c:379 msgid "_ACL" msgstr "_ACL" #: ../src/gyrus-main-app.c:380 msgid "_View" msgstr "_View" #: ../src/gyrus-main-app.c:381 msgid "_Help" msgstr "_Help" #: ../src/gyrus-main-app.c:382 msgid "Go to server..." msgstr "Go to server..." #: ../src/gyrus-main-app.c:383 msgid "Show the list of servers" msgstr "Show the list of servers" #: ../src/gyrus-main-app.c:393 msgid "Add mailbox" msgstr "Add mailbox" #: ../src/gyrus-main-app.c:394 msgid "Add a mailbox under the one selected" msgstr "Add a mailbox under the one selected" #: ../src/gyrus-main-app.c:396 msgid "Search for a mailbox in current server" msgstr "Search for a mailbox in current server" #: ../src/gyrus-main-app.c:398 msgid "Refresh the mailbox list" msgstr "Refresh the mailbox list" #: ../src/gyrus-main-app.c:399 msgid "Create report..." msgstr "Create report..." #: ../src/gyrus-main-app.c:400 msgid "Create report of users with quota problems" msgstr "Create report of users with quota problems" #: ../src/gyrus-main-app.c:404 msgid "New entry" msgstr "New entry" #: ../src/gyrus-main-app.c:405 msgid "Create a new ACL entry in current mailbox" msgstr "Create a new ACL entry in current mailbox" #: ../src/gyrus-main-app.c:406 msgid "Remove mailbox" msgstr "Remove mailbox" #: ../src/gyrus-main-app.c:407 msgid "Remove current mailbox from the server" msgstr "Remove current mailbox from the server" #: ../src/gyrus-main-app.c:412 msgid "Rename entry" msgstr "Rename entry" #: ../src/gyrus-main-app.c:413 msgid "Rename selected ACL entry" msgstr "Rename selected ACL entry" #: ../src/gyrus-main-app.c:414 msgid "Delete entry" msgstr "Delete entry" #: ../src/gyrus-main-app.c:415 msgid "Delete selected ACL entry" msgstr "Delete selected ACL entry" #: ../src/gyrus-main-app.c:532 msgid "translators-credits" msgstr "" "Abigail Brady \n" "David Lodge " #: ../src/gyrus-main-app.c:542 msgid "GNOME Cyrus Administrator" msgstr "GNOME Cyrus Administrator" #: ../src/gyrus-main-app.c:544 msgid "" "(c) 2003-2005 GNOME Foundation\n" "(c) 2004-2005 Claudio Saavedra" msgstr "" "(c) 2003-2005 GNOME Foundation\n" "(c) 2004-2005 Claudio Saavedra" #: ../src/gyrus-main-app.c:546 msgid "Administration tool for Cyrus IMAP servers." msgstr "Administration tool for Cyrus IMAP servers." #. set title #: ../src/gyrus-report.c:86 #, c-format msgid "Report: %s" msgstr "Report: %s" #: ../src/gyrus-report.c:171 #: ../src/gyrus-report.c:461 msgid "Quota (%)" msgstr "Quota (%)" #: ../src/gyrus-report.c:184 #: ../src/gyrus-report.c:464 msgid "Assigned (KB)" msgstr "Assigned (KB)" #: ../src/gyrus-report.c:195 #: ../src/gyrus-report.c:467 msgid "Used (KB)" msgstr "Used (KB)" #: ../src/gyrus-report.c:387 msgid "Print Report" msgstr "Print Report" #. /my_status_bar_print ("Print previewing ..."); #: ../src/gyrus-report.c:430 msgid "Preview" msgstr "Preview" #: ../src/gyrus-report.c:458 msgid "User" msgstr "User" #: ../src/gyrus-session.c:164 msgid "Edit session" msgstr "Edit session" #: ../src/gyrus-session.c:178 msgid "New session" msgstr "New session" #: ../src/gyrus-session.c:357 msgid "A session name is required." msgstr "A session name is required." #: ../src/gyrus-session.c:368 #, c-format msgid "Session named \"%s\" already exists." msgstr "Session named \"%s\" already exists." #: ../src/gyrus-session.c:465 msgid "Autodetect" msgstr "Autodetect" #: ../src/gyrus-session.c:550 msgid "Session" msgstr "Session" #: ../src/gyrus-session.c:700 msgid "No host specified." msgstr "No host specified." #: ../tests/gyrus-talk.glade.h:1 msgid "Connection" msgstr "Connection" #: ../tests/gyrus-talk.glade.h:2 msgid "Command:" msgstr "Command:" #: ../tests/gyrus-talk.glade.h:5 msgid "Talk - Echo client" msgstr "Talk - Echo client" #: ../tests/gyrus-talk.glade.h:8 msgid "_Send" msgstr "_Send" #~ msgid "Host (or IP address)" #~ msgstr "Host (or IP address)" #~ msgid "Save session as" #~ msgstr "Save session as" #~ msgid "(c) 2003 GNOME Foundation" #~ msgstr "(c) 2003 GNOME Foundation" gyrus-0.4.2/po/es.po000066400000000000000000000345421426522072200142650ustar00rootroot00000000000000# Spanish translation of Gyrus. # Copyright (C) 2003 GNOME Foundation, Inc. # Jorge Bustos , 2003. # Claudio Saavedra , 2004. # Francisco Javier F. Serrador , 2005. # Jorge González , 2008, 2010. # Daniel Mustieles , 2012. # msgid "" msgstr "" "Project-Id-Version: gnome-screensaver\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" "product=gyrus&keywords=I18N+L10N&component=general\n" "POT-Creation-Date: 2013-12-19 14:26+0000\n" "PO-Revision-Date: 2012-11-11 21:22+0100\n" "Last-Translator: Daniel Mustieles \n" "Language-Team: Español; Castellano \n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: Gtranslator 2.91.5\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: ../gyrus.desktop.in.in.h:1 msgid "Gyrus IMAP Cyrus Administrator" msgstr "Gyrus Administrador IMAP Cyrus" #: ../gyrus.desktop.in.in.h:2 msgid "Administer the mailboxes of your IMAP Cyrus servers" msgstr "Administre los buzones de correo de sus servidores IMAP Cyrus" #: ../src/ui/create_mailbox.xml.h:1 msgid "Name:" msgstr "Nombre:" #: ../src/ui/create_mailbox.xml.h:2 msgid "Quota (MB):" msgstr "Cuota (MB):" #: ../src/ui/create_mailbox.xml.h:3 msgid "Assign quota" msgstr "Asignar cuota" #: ../src/ui/find.xml.h:1 msgid "Search for:" msgstr "Buscar:" #: ../src/ui/find.xml.h:2 msgid "Match _entire word only" msgstr "Buscar sólo palabra compl_eta" #: ../src/ui/find.xml.h:3 msgid "_Wrap around" msgstr "_Continuar desde el principio" #: ../src/ui/page.xml.h:1 msgid "Free space:" msgstr "Espacio libre:" #: ../src/ui/page.xml.h:2 msgid "Assigned space:" msgstr "Espacio asignado:" #: ../src/ui/page.xml.h:3 msgid "Owner:" msgstr "Propietario:" #: ../src/ui/page.xml.h:4 msgid "New quota (MB)" msgstr "Cuota nueva (MB)" #: ../src/ui/page.xml.h:5 msgid "Modify quota" msgstr "Modificar cuota" #: ../src/ui/page.xml.h:6 msgid "Access control list" msgstr "Lista de control de acceso" #: ../src/ui/page.xml.h:7 ../src/ui/sessions_edit.xml.h:5 #: ../tests/gyrus-talk.xml.h:2 msgid "Host:" msgstr "Servidor:" #: ../src/ui/page.xml.h:8 msgid "User:" msgstr "Usuario:" #: ../src/ui/page.xml.h:9 ../src/ui/sessions_edit.xml.h:4 #: ../tests/gyrus-talk.xml.h:4 msgid "Port:" msgstr "Puerto:" #: ../src/ui/password.xml.h:1 msgid "Password" msgstr "Contraseña" #: ../src/ui/password.xml.h:2 msgid "Enter your password" msgstr "Introduzca su contraseña" #: ../src/ui/report.xml.h:1 msgid "Report" msgstr "Informe" #: ../src/ui/report.xml.h:3 #, no-c-format msgid "Over (%)" msgstr "Por encima (%)" #: ../src/ui/sessions.xml.h:1 msgid "Open session" msgstr "Abrir sesión" #: ../src/ui/sessions_edit.xml.h:1 msgid "Session name:" msgstr "Nombre de sesión:" #: ../src/ui/sessions_edit.xml.h:2 msgid "Password:" msgstr "Contraseña:" #: ../src/ui/sessions_edit.xml.h:3 msgid "Username:" msgstr "Usuario:" #: ../src/ui/sessions_edit.xml.h:6 msgid "Session details" msgstr "Detalles de la sesión" #: ../src/ui/sessions_edit.xml.h:7 ../tests/gyrus-talk.xml.h:3 msgid "Use a secure connection" msgstr "Usar una conexión segura" #: ../src/ui/sessions_edit.xml.h:8 msgid "Mailbox hierarchy separator:" msgstr "Separador de la jerarquía de buzones:" #: ../src/ui/sessions_edit.xml.h:9 msgid "Options" msgstr "Opciones" #: ../src/gyrus-admin-acl.c:54 ../src/gyrus-admin-acl.c:103 #, c-format msgid "Mailbox '%s' does not exist." msgstr "El buzón «%s» no existe." #: ../src/gyrus-admin-acl.c:76 msgid "Invalid identifier." msgstr "Identificador no válido." #: ../src/gyrus-admin-acl.c:82 msgid "Empty entry name." msgstr "Nombre de entrada vacío." #: ../src/gyrus-admin-acl.c:87 msgid "Empty mailbox name." msgstr "Nombre del buzón vacío." #: ../src/gyrus-admin-acl.c:107 msgid "Missing required argument to Setacl" msgstr "Falta un argumento requerido para Setacl" #: ../src/gyrus-admin-acl.c:143 ../src/gyrus-admin-mailbox.c:80 msgid "Permission denied" msgstr "Permiso denegado" #: ../src/gyrus-admin-acl.c:175 msgid "Empty access control list." msgstr "Lista de control de acceso vacía." #: ../src/gyrus-admin-mailbox.c:78 msgid "Quota does not exist" msgstr "La cuota no existe" #: ../src/gyrus-admin-mailbox.c:172 #, c-format msgid "Quota overloaded" msgstr "La cuota se ha sobrepasado" #: ../src/gyrus-admin-mailbox.c:230 msgid "Quota not valid. Please try again." msgstr "La cuota no es válida. Intente de nuevo." #: ../src/gyrus-admin-mailbox.c:244 msgid "" "Unable to change quota. Are you sure do you have the appropriate permissions?" msgstr "" "No se pudo cambiar la cuota. ¿Está seguro de tener los permisos apropiados?" #: ../src/gyrus-admin-mailbox.c:324 #, c-format msgid "'%s' is not a valid mailbox name. Please try a different one." msgstr "«%s» no es un nombre de buzón válido. Intente uno diferente." #: ../src/gyrus-admin-mailbox.c:332 #, c-format msgid "" "Parent mailbox '%s' does not exist. Please refresh the mailboxes list and " "try again." msgstr "" "El buzón padre «%s» no existe. Por favor actualice la lista de buzones e " "intente de nuevo." #: ../src/gyrus-admin-mailbox.c:342 #, c-format msgid "Mailbox '%s' already exists. Please try a different name." msgstr "El buzón «%s» ya existe. Intente un nombre diferente." #: ../src/gyrus-admin-mailbox.c:355 msgid "" "Unable to create the mailbox. Are you sure do you have the appropriate " "permissions?" msgstr "" "No se pudo crear el buzón. ¿Está seguro de tener los permisos apropiados?" #: ../src/gyrus-admin-mailbox.c:366 msgid "Mailbox created, but could not set quota." msgstr "Buzón creado, pero no se pudo establecer la cuota." #: ../src/gyrus-admin-mailbox.c:433 #, c-format msgid "Unable to delete '%s'. Permission denied." msgstr "No se pudo borrar «%s». Permiso denegado." #: ../src/gyrus-admin-mailbox.c:634 msgid "new entry" msgstr "Entrada nueva" #: ../src/gyrus-admin.c:447 ../src/gyrus-report.c:287 #, c-format msgid "Users (%d)" msgstr "Usuarios (%d)" #: ../src/gyrus-admin.c:453 #, c-format msgid "Orphaned mailboxes (%d)" msgstr "Buzones huérfanos (%d)" #: ../src/gyrus-admin.c:497 ../src/gyrus-admin.c:852 msgid "Orphaned mailboxes" msgstr "Buzones huérfanos" #: ../src/gyrus-admin.c:497 ../src/gyrus-admin.c:850 ../src/gyrus-report.c:168 msgid "Users" msgstr "Usuarios" #: ../src/gyrus-admin.c:565 msgid "lookup" msgstr "buscar" #: ../src/gyrus-admin.c:566 msgid "read" msgstr "leer" #: ../src/gyrus-admin.c:567 msgid "seen" msgstr "visto" #: ../src/gyrus-admin.c:568 msgid "write" msgstr "escribir" #: ../src/gyrus-admin.c:569 msgid "insert" msgstr "insertar" #: ../src/gyrus-admin.c:570 msgid "post" msgstr "publicar" #: ../src/gyrus-admin.c:571 msgid "create" msgstr "crear" #: ../src/gyrus-admin.c:572 msgid "delete" msgstr "borrar" #: ../src/gyrus-admin.c:573 msgid "admin" msgstr "administrar" #: ../src/gyrus-admin.c:581 msgid "Identifier" msgstr "Identificador" #: ../src/gyrus-admin.c:651 msgid "Couldn't create the client socket." msgstr "No se pudo crear el socket cliente." #: ../src/gyrus-admin.c:659 msgid "Couldn't parse the server address." msgstr "No se pudo analizar la dirección del servidor." #: ../src/gyrus-admin.c:668 #, c-format msgid "Could not connect to %s, port %d." msgstr "No pudo conectar con %s, puerto %d." #: ../src/gyrus-admin.c:998 msgid "Unable to connect with empty passwords. Please introduce your password." msgstr "" "Incapaz de conectarse sin contraseña. Por favor introduzca su contraseña." #: ../src/gyrus-admin.c:1005 msgid "Incorrect login/password" msgstr "Usuario/contraseña incorrecto(a)" #: ../src/gyrus-admin.c:1361 msgid "Could not change permission. Server error: " msgstr "No se pudo cambiar permisos. Error del servidor: " #: ../src/gyrus-admin.c:1404 #, c-format msgid "An entry called '%s' already exists. Overwrite it?" msgstr "Ya existe una entrada llamada «%s». ¿Desea sobrescribirla?" #: ../src/gyrus-dialog-find-mailbox.c:171 #, c-format msgid "The text '%s' was not found in the mailbox list." msgstr "El texto «%s» no se encontró en la lista de buzones." #: ../src/gyrus-dialog-find-mailbox.c:275 msgid "Find mailbox" msgstr "Buscar buzón" #: ../src/gyrus-dialog-mailbox-new.c:93 msgid "Quota not valid" msgstr "Cuota no válida." #: ../src/gyrus-dialog-mailbox-new.c:220 msgid "New mailbox" msgstr "Buzón nuevo" #: ../src/gyrus-main-app.c:146 #, c-format msgid "Really delete mailbox '%s' and all of its submailboxes?" msgstr "¿Realmente desea borrar el buzón «%s» y todos sus descendientes?" #: ../src/gyrus-main-app.c:261 ../src/gyrus-main-app.c:407 #: ../src/gyrus-main-app.c:703 msgid "Cyrus IMAP Administrator" msgstr "Administrador Cyrus IMAP" #: ../src/gyrus-main-app.c:275 #, c-format msgid "%s - Cyrus IMAP Administrator" msgstr "%s - Administrador Cyrus IMAP" #: ../src/gyrus-main-app.c:354 msgid "_File" msgstr "_Archivo" #: ../src/gyrus-main-app.c:355 msgid "_Edit" msgstr "_Editar" #: ../src/gyrus-main-app.c:356 msgid "_ACL" msgstr "LC_A" #: ../src/gyrus-main-app.c:357 msgid "_View" msgstr "_Ver" #: ../src/gyrus-main-app.c:358 msgid "_Help" msgstr "Ay_uda" #: ../src/gyrus-main-app.c:359 msgid "Go to server..." msgstr "Ir al servidor..." #: ../src/gyrus-main-app.c:360 msgid "Show the list of servers" msgstr "Muestra la lista de servidores" #: ../src/gyrus-main-app.c:368 msgid "Add mailbox" msgstr "Añadir buzón" #: ../src/gyrus-main-app.c:369 msgid "Add a mailbox under the one selected" msgstr "Añade un buzón bajo el seleccionado" #: ../src/gyrus-main-app.c:371 msgid "Search for a mailbox in current server" msgstr "Busca un buzón en el servidor actual" #: ../src/gyrus-main-app.c:373 msgid "Refresh the mailbox list" msgstr "Refrescar la lista de buzones" #: ../src/gyrus-main-app.c:374 msgid "Create report..." msgstr "Crear informe..." #: ../src/gyrus-main-app.c:375 msgid "Create report of users with quota problems" msgstr "Crea un informe de usuarios con problemas de cuota" #: ../src/gyrus-main-app.c:379 msgid "New entry" msgstr "Entrada nueva" #: ../src/gyrus-main-app.c:380 msgid "Create a new ACL entry in current mailbox" msgstr "Crea una entrada ACL nueva en el buzón actual" #: ../src/gyrus-main-app.c:381 msgid "Remove mailbox" msgstr "Eliminar buzón" #: ../src/gyrus-main-app.c:382 msgid "Remove current mailbox from the server" msgstr "Elimina el buzón seleccionado del servidor" #: ../src/gyrus-main-app.c:387 msgid "Rename entry" msgstr "Renombrar entrada" #: ../src/gyrus-main-app.c:388 msgid "Rename selected ACL entry" msgstr "Renombra la entrada ACL seleccionada" #: ../src/gyrus-main-app.c:389 msgid "Delete entry" msgstr "Borrar entrada" #: ../src/gyrus-main-app.c:390 msgid "Delete selected ACL entry" msgstr "Borra la entrada ACL seleccionada" #: ../src/gyrus-main-app.c:523 msgid "translators-credits" msgstr "" "Jorge González , 2008-2010\n" "Jorge Bustos , 2003\n" "Claudio Saavedra , 2004\n" "Héctor Enríquez Díaz \n" "QA: Francisco Javier F. Serrador 12-Oct-2005" #: ../src/gyrus-main-app.c:533 msgid "GNOME Cyrus Administrator" msgstr "Administrador Cyrus para Gnome" #: ../src/gyrus-main-app.c:535 msgid "" "(c) 2003-2005 GNOME Foundation\n" "(c) 2004-2005 Claudio Saavedra" msgstr "" "(c) 2003-2005 Fundación GNOME \n" "(c) 2004-2005 Claudio Saavedra" #: ../src/gyrus-main-app.c:537 msgid "Administration tool for Cyrus IMAP servers." msgstr "Herramienta para la administración de servidores Cyrus IMAP." #. set title #: ../src/gyrus-report.c:105 #, c-format msgid "Mailbox space usage report for %s" msgstr "Informe del uso del espacio del buzón de correo para %s" #: ../src/gyrus-report.c:189 ../src/gyrus-report.c:490 msgid "Quota (%)" msgstr "Cuota (%s)" #: ../src/gyrus-report.c:202 ../src/gyrus-report.c:494 msgid "Assigned (KB)" msgstr "Asignado (Kb)" #: ../src/gyrus-report.c:213 ../src/gyrus-report.c:498 msgid "Used (KB)" msgstr "Usado (Kb)" #. Translators: this represents the number of pages being printed. #: ../src/gyrus-report.c:463 #, c-format msgid "%d/%d" msgstr "%d/%d" #: ../src/gyrus-report.c:486 msgid "User" msgstr "Usuario" #: ../src/gyrus-session.c:164 msgid "Edit session" msgstr "Editar sesión" #: ../src/gyrus-session.c:178 msgid "New session" msgstr "Sesión nueva" #: ../src/gyrus-session.c:357 msgid "A session name is required." msgstr "Se necesita el nombre de una sesión." #: ../src/gyrus-session.c:368 #, c-format msgid "Session named \"%s\" already exists." msgstr "Ya existe una sesión llamada «%s»." #: ../src/gyrus-session.c:464 ../src/gyrus-session.c:598 msgid "Autodetect" msgstr "Autodetectar" #: ../src/gyrus-session.c:549 msgid "Session" msgstr "Sesión" #: ../src/gyrus-session.c:718 msgid "No host specified." msgstr "No se especificó un servidor." #: ../tests/gyrus-talk.xml.h:1 msgid "Talk - Echo client" msgstr "Talk - Echo cliente" #: ../tests/gyrus-talk.xml.h:5 msgid "_Connect" msgstr "_Conectar" #: ../tests/gyrus-talk.xml.h:6 msgid "Connection" msgstr "Conexión" #: ../tests/gyrus-talk.xml.h:7 msgid "Command:" msgstr "Comando:" #: ../tests/gyrus-talk.xml.h:8 msgid "_Send" msgstr "_Enviar" #~ msgid "Name:" #~ msgstr "Nombre:" #~ msgid "Quota (MB):" #~ msgstr "Cuota (MB):" #~ msgid "Host:" #~ msgstr "Servidor:" #~ msgid "User:" #~ msgstr "Usuario:" #~ msgid "Port:" #~ msgstr "Puerto:" #~ msgid "Connection" #~ msgstr "Conexión" #~ msgid "*" #~ msgstr "*" #~ msgid "Create mailbox" #~ msgstr "Crear buzón" #~ msgid "Find" #~ msgstr "Buscar" #~ msgid "Mailbox quota:" #~ msgstr "Cuota del buzón:" #~ msgid "Mailboxes tree:" #~ msgstr "Árbol de buzones:" #~ msgid "Default suffix for changing quota:" #~ msgstr "Sufijo predeterminado para la cambiar la cuota:" #~ msgid "Preferences" #~ msgstr "Preferencias" #~ msgid "View complete mailboxes tree" #~ msgstr "Ver árbol de buzones completo" #~ msgid "" #~ ".\n" #~ "/\n" #~ "Autodetect" #~ msgstr "" #~ ".\n" #~ "/\n" #~ "Autodetectar" #~ msgid "%s could not be found. Please check the name and try again." #~ msgstr "" #~ "No se pudo encontrar %s. Por favor compruebe el nombre e intente de nuevo." #~ msgid "_Disconnect" #~ msgstr "_Desconectar" #~ msgid "Report: %s" #~ msgstr "Informe: %s" #~ msgid "Print Report" #~ msgstr "Imprimir informe" #~ msgid "Preview" #~ msgstr "Vista previa" gyrus-0.4.2/po/fi.po000066400000000000000000000343641426522072200142560ustar00rootroot00000000000000# Finnish messages for gyrus. # Copyright (C) 2006 Ilkka Tuohela. # Suomennos: http://gnome-fi.sourceforge.net/ # Ilkka Tuohela , 2006. # Jiri Grönroos , 2013. # msgid "" msgstr "" "Project-Id-Version: gyrus\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" "product=gyrus&keywords=I18N+L10N&component=general\n" "POT-Creation-Date: 2013-12-19 14:26+0000\n" "PO-Revision-Date: 2013-09-15 14:50+0300\n" "Last-Translator: Jiri Grönroos \n" "Language-Team: suomi \n" "Language: fi\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" "X-Generator: Gtranslator 2.91.6\n" #: ../gyrus.desktop.in.in.h:1 msgid "Gyrus IMAP Cyrus Administrator" msgstr "Gyrus - Cyrus-/IMAP-palvelimen hallinta" #: ../gyrus.desktop.in.in.h:2 msgid "Administer the mailboxes of your IMAP Cyrus servers" msgstr "Hallitse Cyrus-/IMAP-palvelimen postilaatikoita" #: ../src/ui/create_mailbox.xml.h:1 msgid "Name:" msgstr "Nimi:" #: ../src/ui/create_mailbox.xml.h:2 msgid "Quota (MB):" msgstr "Levytila (Mt):" #: ../src/ui/create_mailbox.xml.h:3 msgid "Assign quota" msgstr "Määrittele levytila" #: ../src/ui/find.xml.h:1 msgid "Search for:" msgstr "Etsittävä merkkijono:" #: ../src/ui/find.xml.h:2 msgid "Match _entire word only" msgstr "Täsmää _vain koko sanoihin" #: ../src/ui/find.xml.h:3 msgid "_Wrap around" msgstr "_Rivitä" #: ../src/ui/page.xml.h:1 msgid "Free space:" msgstr "Vapaa levytila:" #: ../src/ui/page.xml.h:2 msgid "Assigned space:" msgstr "Myönnetty levytila:" #: ../src/ui/page.xml.h:3 msgid "Owner:" msgstr "Omistaja:" #: ../src/ui/page.xml.h:4 msgid "New quota (MB)" msgstr "Uusi levytila (Mt)" #: ../src/ui/page.xml.h:5 msgid "Modify quota" msgstr "Muuta levytilaa" #: ../src/ui/page.xml.h:6 msgid "Access control list" msgstr "Pääsylista" #: ../src/ui/page.xml.h:7 ../src/ui/sessions_edit.xml.h:5 #: ../tests/gyrus-talk.xml.h:2 msgid "Host:" msgstr "Palvelin:" #: ../src/ui/page.xml.h:8 msgid "User:" msgstr "Käyttäjä:" #: ../src/ui/page.xml.h:9 ../src/ui/sessions_edit.xml.h:4 #: ../tests/gyrus-talk.xml.h:4 msgid "Port:" msgstr "Portti:" #: ../src/ui/password.xml.h:1 msgid "Password" msgstr "Salasana" #: ../src/ui/password.xml.h:2 msgid "Enter your password" msgstr "Syötä salasana" #: ../src/ui/report.xml.h:1 msgid "Report" msgstr "Raportti" #: ../src/ui/report.xml.h:3 #, no-c-format msgid "Over (%)" msgstr "Yli (%)" #: ../src/ui/sessions.xml.h:1 msgid "Open session" msgstr "Avaa istunto" #: ../src/ui/sessions_edit.xml.h:1 msgid "Session name:" msgstr "Istunto nimi:" #: ../src/ui/sessions_edit.xml.h:2 msgid "Password:" msgstr "Salasana:" #: ../src/ui/sessions_edit.xml.h:3 msgid "Username:" msgstr "Käyttäjätunnus:" #: ../src/ui/sessions_edit.xml.h:6 msgid "Session details" msgstr "Istunnon yksityiskohdat" #: ../src/ui/sessions_edit.xml.h:7 ../tests/gyrus-talk.xml.h:3 msgid "Use a secure connection" msgstr "Käytä salattua yhteyttä" #: ../src/ui/sessions_edit.xml.h:8 msgid "Mailbox hierarchy separator:" msgstr "Postilaatikon hierarkian erotin:" #: ../src/ui/sessions_edit.xml.h:9 msgid "Options" msgstr "Valinnat" #: ../src/gyrus-admin-acl.c:54 ../src/gyrus-admin-acl.c:103 #, c-format msgid "Mailbox '%s' does not exist." msgstr "Sähköpostikansiota \"%s\" ei ole olemassa." #: ../src/gyrus-admin-acl.c:76 msgid "Invalid identifier." msgstr "Virheellinen tunniste" #: ../src/gyrus-admin-acl.c:82 msgid "Empty entry name." msgstr "Syötetty nimi on tyhjä." #: ../src/gyrus-admin-acl.c:87 msgid "Empty mailbox name." msgstr "Tyhjä postilaatikon nimi." #: ../src/gyrus-admin-acl.c:107 msgid "Missing required argument to Setacl" msgstr "Komennon Setacl vaadittu argumentti puuttuu" #: ../src/gyrus-admin-acl.c:143 ../src/gyrus-admin-mailbox.c:80 msgid "Permission denied" msgstr "Lupa evätty" #: ../src/gyrus-admin-acl.c:175 msgid "Empty access control list." msgstr "Tyhjä pääsylista." #: ../src/gyrus-admin-mailbox.c:78 msgid "Quota does not exist" msgstr "Levytilaa ei ole määritelty" #: ../src/gyrus-admin-mailbox.c:172 #, c-format msgid "Quota overloaded" msgstr "Levytila on ylitetty" #: ../src/gyrus-admin-mailbox.c:230 msgid "Quota not valid. Please try again." msgstr "Levytilan määrittely ei kelpaa, yritä uudestaan." #: ../src/gyrus-admin-mailbox.c:244 msgid "" "Unable to change quota. Are you sure do you have the appropriate permissions?" msgstr "Levytilan muuttaminen ei onnistunut. Riittävätkö oikeutesi toimintoon?" #: ../src/gyrus-admin-mailbox.c:324 #, c-format msgid "'%s' is not a valid mailbox name. Please try a different one." msgstr "\"%s\" ei ole kelvollinen kansion nimi, käytä toista nimeä." #: ../src/gyrus-admin-mailbox.c:332 #, c-format msgid "" "Parent mailbox '%s' does not exist. Please refresh the mailboxes list and " "try again." msgstr "" "Ylemmän tason kansi \"%s\" ei ole olemassa. Päivitä kansiolista ja yritä " "uudestaan." #: ../src/gyrus-admin-mailbox.c:342 #, c-format msgid "Mailbox '%s' already exists. Please try a different name." msgstr "Postilaatikko \"%s\" on jo olemassa, valitse toinen nimi." #: ../src/gyrus-admin-mailbox.c:355 msgid "" "Unable to create the mailbox. Are you sure do you have the appropriate " "permissions?" msgstr "Kansiota ei voi luoda. Riittävätkö oikeutesi varmasti tähän?" #: ../src/gyrus-admin-mailbox.c:366 msgid "Mailbox created, but could not set quota." msgstr "Postilaatikko on luotu, mutta levytilaa ei voitu asettaa." #: ../src/gyrus-admin-mailbox.c:433 #, c-format msgid "Unable to delete '%s'. Permission denied." msgstr "Kansiota \"%s\" ei voi poistaa, lupa evätty." #: ../src/gyrus-admin-mailbox.c:634 msgid "new entry" msgstr "uusi kohta" #: ../src/gyrus-admin.c:447 ../src/gyrus-report.c:287 #, c-format msgid "Users (%d)" msgstr "Käyttäjät (%d)" #: ../src/gyrus-admin.c:453 #, c-format msgid "Orphaned mailboxes (%d)" msgstr "Hylätyt sähköpostikansiot (%d)" #: ../src/gyrus-admin.c:497 ../src/gyrus-admin.c:852 msgid "Orphaned mailboxes" msgstr "Hylätyt sähköpostikansiot" #: ../src/gyrus-admin.c:497 ../src/gyrus-admin.c:850 ../src/gyrus-report.c:168 msgid "Users" msgstr "Käyttäjät" #: ../src/gyrus-admin.c:565 msgid "lookup" msgstr "etsi" #: ../src/gyrus-admin.c:566 msgid "read" msgstr "luku" #: ../src/gyrus-admin.c:567 msgid "seen" msgstr "nähty" #: ../src/gyrus-admin.c:568 msgid "write" msgstr "kirjoitus" #: ../src/gyrus-admin.c:569 msgid "insert" msgstr "lisäys" #: ../src/gyrus-admin.c:570 msgid "post" msgstr "postitus" #: ../src/gyrus-admin.c:571 msgid "create" msgstr "luonti" #: ../src/gyrus-admin.c:572 msgid "delete" msgstr "poisto" #: ../src/gyrus-admin.c:573 msgid "admin" msgstr "ylläpito" #: ../src/gyrus-admin.c:581 msgid "Identifier" msgstr "Tunniste" #: ../src/gyrus-admin.c:651 msgid "Couldn't create the client socket." msgstr "" #: ../src/gyrus-admin.c:659 msgid "Couldn't parse the server address." msgstr "" #: ../src/gyrus-admin.c:668 #, c-format msgid "Could not connect to %s, port %d." msgstr "Palvelimeen \"%s\" ei saatu yhteyttä (portti %d)." #: ../src/gyrus-admin.c:998 msgid "Unable to connect with empty passwords. Please introduce your password." msgstr "Ei voitu yhdistää tyhjällä salasanalla, anna salasanalla." #: ../src/gyrus-admin.c:1005 msgid "Incorrect login/password" msgstr "Väärä käyttäjätunnus tai salasana" #: ../src/gyrus-admin.c:1361 msgid "Could not change permission. Server error: " msgstr "Oikeuksia ei voi muuttaa, palvelinvirhe: " #: ../src/gyrus-admin.c:1404 #, c-format msgid "An entry called '%s' already exists. Overwrite it?" msgstr "Kohta nimeltä \"%s\" on jo olemassa, kirjoitetaanko sen yli?" #: ../src/gyrus-dialog-find-mailbox.c:171 #, c-format msgid "The text '%s' was not found in the mailbox list." msgstr "Merkkijonoa \"%s\" ei löydy postikansioiden listasta." #: ../src/gyrus-dialog-find-mailbox.c:275 msgid "Find mailbox" msgstr "Etsi postilaatikko" #: ../src/gyrus-dialog-mailbox-new.c:93 msgid "Quota not valid" msgstr "Virheellinen levytilan määrittely" #: ../src/gyrus-dialog-mailbox-new.c:220 msgid "New mailbox" msgstr "Uusi postilaatikko" #: ../src/gyrus-main-app.c:146 #, c-format msgid "Really delete mailbox '%s' and all of its submailboxes?" msgstr "Poistetaanko todella postikansio \"%s\" ja kaikki sen alikansiot?" #: ../src/gyrus-main-app.c:261 ../src/gyrus-main-app.c:407 #: ../src/gyrus-main-app.c:703 msgid "Cyrus IMAP Administrator" msgstr "Cyrus-/IMAP-palvelimen hallinta" #: ../src/gyrus-main-app.c:275 #, c-format msgid "%s - Cyrus IMAP Administrator" msgstr "%s - Cyrus-/IMAP-palvelimen hallinta" #: ../src/gyrus-main-app.c:354 msgid "_File" msgstr "_Tiedosto" #: ../src/gyrus-main-app.c:355 msgid "_Edit" msgstr "_Muokkaa" #: ../src/gyrus-main-app.c:356 msgid "_ACL" msgstr "_ACL" #: ../src/gyrus-main-app.c:357 msgid "_View" msgstr "_Näytä" #: ../src/gyrus-main-app.c:358 msgid "_Help" msgstr "O_hje" #: ../src/gyrus-main-app.c:359 msgid "Go to server..." msgstr "Siirry palvelimelle..." #: ../src/gyrus-main-app.c:360 msgid "Show the list of servers" msgstr "Näytä lista palvelimista" #: ../src/gyrus-main-app.c:368 msgid "Add mailbox" msgstr "Lisää postilaatikko" #: ../src/gyrus-main-app.c:369 msgid "Add a mailbox under the one selected" msgstr "Lisää postilaatikko valitun alakansioksi" #: ../src/gyrus-main-app.c:371 msgid "Search for a mailbox in current server" msgstr "Etsi postilaatikkoa valitulta palvelimelta" #: ../src/gyrus-main-app.c:373 msgid "Refresh the mailbox list" msgstr "Päivitä lista postilaatikoista" #: ../src/gyrus-main-app.c:374 msgid "Create report..." msgstr "Luo raportti..." #: ../src/gyrus-main-app.c:375 msgid "Create report of users with quota problems" msgstr "Luo raportti käyttäjistä, joilla on levytilaongelmia" #: ../src/gyrus-main-app.c:379 msgid "New entry" msgstr "Uusi kohta" #: ../src/gyrus-main-app.c:380 msgid "Create a new ACL entry in current mailbox" msgstr "Luo uusi pääsylistan määrittely valitulle postilaatikolle" #: ../src/gyrus-main-app.c:381 msgid "Remove mailbox" msgstr "Poista postilaatikko" #: ../src/gyrus-main-app.c:382 msgid "Remove current mailbox from the server" msgstr "Poista tämä sähköpostikansio palvelimelta" #: ../src/gyrus-main-app.c:387 msgid "Rename entry" msgstr "Nimeä kohta uudestaan" #: ../src/gyrus-main-app.c:388 msgid "Rename selected ACL entry" msgstr "Nimeä valittu ACL-kohta uudestaan" #: ../src/gyrus-main-app.c:389 msgid "Delete entry" msgstr "Poista kohta" #: ../src/gyrus-main-app.c:390 msgid "Delete selected ACL entry" msgstr "Poista valittu ACL-kohta" #: ../src/gyrus-main-app.c:523 msgid "translators-credits" msgstr "" "Ilkka Tuohela, 2006\n" "\n" "https://l10n.gnome.org/teams/fi/" #: ../src/gyrus-main-app.c:533 msgid "GNOME Cyrus Administrator" msgstr "Gnomen Cyrus-palvelimen hallinta" #: ../src/gyrus-main-app.c:535 msgid "" "(c) 2003-2005 GNOME Foundation\n" "(c) 2004-2005 Claudio Saavedra" msgstr "" "(c) 2003-2005 GNOME Foundation\n" "(c) 2004-2005 Claudio Saavedra" #: ../src/gyrus-main-app.c:537 msgid "Administration tool for Cyrus IMAP servers." msgstr "Hallintatyökalu Cyrus-/IMAP-palvelimille." #. set title #: ../src/gyrus-report.c:105 #, c-format msgid "Mailbox space usage report for %s" msgstr "Postilaatikon tilankäyttöraportti käyttäjälle %s" #: ../src/gyrus-report.c:189 ../src/gyrus-report.c:490 msgid "Quota (%)" msgstr "Levytila (%)" #: ../src/gyrus-report.c:202 ../src/gyrus-report.c:494 msgid "Assigned (KB)" msgstr "Myönnetty (kt)" #: ../src/gyrus-report.c:213 ../src/gyrus-report.c:498 msgid "Used (KB)" msgstr "Käytössä (kt)" #. Translators: this represents the number of pages being printed. #: ../src/gyrus-report.c:463 #, c-format msgid "%d/%d" msgstr "%d/%d" #: ../src/gyrus-report.c:486 msgid "User" msgstr "Käyttäjä" #: ../src/gyrus-session.c:164 msgid "Edit session" msgstr "Muokkaa istuntoa" #: ../src/gyrus-session.c:178 msgid "New session" msgstr "Uusi istunto" #: ../src/gyrus-session.c:357 msgid "A session name is required." msgstr "Istunnon nimi vaaditaan." #: ../src/gyrus-session.c:368 #, c-format msgid "Session named \"%s\" already exists." msgstr "Istunto nimeltä \"%s\" on jo olemassa." #: ../src/gyrus-session.c:464 ../src/gyrus-session.c:598 msgid "Autodetect" msgstr "Tunnista automaattisesti" #: ../src/gyrus-session.c:549 msgid "Session" msgstr "Istunto" #: ../src/gyrus-session.c:718 msgid "No host specified." msgstr "Verkkonimeä ei annettu." #: ../tests/gyrus-talk.xml.h:1 msgid "Talk - Echo client" msgstr "Talk - Echo-asiakas" #: ../tests/gyrus-talk.xml.h:5 msgid "_Connect" msgstr "_Avaa yhteys" #: ../tests/gyrus-talk.xml.h:6 msgid "Connection" msgstr "Yhteys" #: ../tests/gyrus-talk.xml.h:7 msgid "Command:" msgstr "Komento:" #: ../tests/gyrus-talk.xml.h:8 msgid "_Send" msgstr "_Lähetä" #~ msgid "*" #~ msgstr "*" #~ msgid "Name:" #~ msgstr "Nimi:" #~ msgid "Quota (MB):" #~ msgstr "Levytila (Mt):" #~ msgid "Create mailbox" #~ msgstr "Luo postilaatikko" #~ msgid "Find" #~ msgstr "Etsi" #~ msgid "Host:" #~ msgstr "Palvelin:" #~ msgid "Port:" #~ msgstr "Portti:" #~ msgid "User:" #~ msgstr "Käyttäjä:" #~ msgid "Mailbox quota:" #~ msgstr "Sähköpostin levytila:" #~ msgid "Mailboxes tree:" #~ msgstr "Sähköpostikansiopuu:" #~ msgid "Default suffix for changing quota:" #~ msgstr "Levytilaa muutettaessa käytetty oletuspääte:" #~ msgid "Preferences" #~ msgstr "Asetukset" #~ msgid "View complete mailboxes tree" #~ msgstr "Näytä koko postikansioiden puu" #~ msgid "" #~ ".\n" #~ "/\n" #~ "Autodetect" #~ msgstr "" #~ ".\n" #~ "/\n" #~ "Tunnista automaattisesti" #~ msgid "%s could not be found. Please check the name and try again." #~ msgstr "Kansiota %s ei löydy, tarkista nimi ja yritä uudestaan." #~ msgid "_Disconnect" #~ msgstr "_Katkaise yhteys" #~ msgid "Report: %s" #~ msgstr "Raportti: %s" #~ msgid "Print Report" #~ msgstr "Tulosta raportti" #~ msgid "Preview" #~ msgstr "Esikatselu" #~ msgid "Connection" #~ msgstr "Yhteys" #~ msgid "Save as:" #~ msgstr "Tallenna nimellä:" #~ msgid "_Quit" #~ msgstr "_Sulje" #~ msgid "Quit the program" #~ msgstr "Sulje ohjelma" #~ msgid "_About" #~ msgstr "_Tietoja" #~ msgid "_Find" #~ msgstr "_Etsi" #~ msgid "_Refresh" #~ msgstr "_Päivitä" gyrus-0.4.2/po/fr.po000066400000000000000000000350461426522072200142650ustar00rootroot00000000000000# French translation of gyrus. # Copyright (C) 2004-2007 The Free Software Foundation, Inc. # This file is distributed under the same license as the gyrus package. # # Robert-André Mauchin , 2007. # Claude Paroz , 2007. # Stéphane Raimbault , 2007. # msgid "" msgstr "" "Project-Id-Version: gyrus 0.3.6\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" "product=gyrus&component=general\n" "POT-Creation-Date: 2010-12-29 00:34+0000\n" "PO-Revision-Date: 2007-04-27 20:25+0200\n" "Last-Translator: Claude Paroz \n" "Language-Team: GNOME French Team \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n>1;\n" #: ../gyrus.desktop.in.in.h:1 msgid "Administer the mailboxes of your IMAP Cyrus servers" msgstr "Administrer les boîtes aux lettres de vos serveurs IMAP Cyrus" #: ../gyrus.desktop.in.in.h:2 msgid "Gyrus IMAP Cyrus Administrator" msgstr "Administrateur Gyrus IMAP Cyrus" #: ../src/ui/create_mailbox.xml.h:1 msgid "Name:" msgstr "Nom :" #: ../src/ui/create_mailbox.xml.h:2 msgid "Quota (MB):" msgstr "Quota (Mio) :" #: ../src/ui/create_mailbox.xml.h:3 msgid "Assign quota" msgstr "Définir un quota" #: ../src/ui/find.xml.h:1 msgid "Match _entire word only" msgstr "_Mots entiers seulement" #: ../src/ui/find.xml.h:2 msgid "Search for:" msgstr "Rechercher :" #: ../src/ui/find.xml.h:3 msgid "_Wrap around" msgstr "Recherche _circulaire" #: ../src/ui/page.xml.h:1 msgid "Assigned space:" msgstr "Espace attribué :" #: ../src/ui/page.xml.h:2 msgid "Free space:" msgstr "Espace disponible :" #: ../src/ui/page.xml.h:3 msgid "Host:" msgstr "Hôte :" #: ../src/ui/page.xml.h:4 msgid "Owner:" msgstr "Propriétaire :" #: ../src/ui/page.xml.h:5 msgid "Port:" msgstr "Port :" #: ../src/ui/page.xml.h:6 msgid "User:" msgstr "Utilisateur :" #: ../src/ui/page.xml.h:7 msgid "Access control list" msgstr "Liste de contrôle d'accès" #: ../src/ui/page.xml.h:8 msgid "Modify quota" msgstr "Modifier le quota" #: ../src/ui/page.xml.h:9 msgid "New quota (MB)" msgstr "Nouveau quota (Mio)" #: ../src/ui/password.xml.h:1 msgid "Enter your password" msgstr "Saisissez votre mot de passe" #: ../src/ui/password.xml.h:2 msgid "Password" msgstr "Mot de passe" #: ../src/ui/report.xml.h:2 #, no-c-format msgid "Over (%)" msgstr "Dépassement (%)" #: ../src/ui/report.xml.h:3 msgid "Report" msgstr "Rapport" #: ../src/ui/sessions.xml.h:1 msgid "Open session" msgstr "Ouvrir une session" #: ../src/ui/sessions_edit.xml.h:1 msgid "Options" msgstr "Options" #: ../src/ui/sessions_edit.xml.h:2 msgid "Session details" msgstr "Détails de la session" #: ../src/ui/sessions_edit.xml.h:3 ../tests/gyrus-talk.xml.h:3 msgid "Host:" msgstr "Hôte :" #: ../src/ui/sessions_edit.xml.h:4 msgid "Mailbox hierarchy separator:" msgstr "Séparateur de la hiérarchie des boîtes aux lettres :" #: ../src/ui/sessions_edit.xml.h:5 msgid "Password:" msgstr "Mot de passe :" #: ../src/ui/sessions_edit.xml.h:6 ../tests/gyrus-talk.xml.h:4 msgid "Port:" msgstr "Port :" #: ../src/ui/sessions_edit.xml.h:7 msgid "Session name:" msgstr "Nom de session :" #: ../src/ui/sessions_edit.xml.h:8 ../tests/gyrus-talk.xml.h:6 msgid "Use a secure connection" msgstr "Utiliser une connexion sécurisée" #: ../src/ui/sessions_edit.xml.h:9 msgid "Username:" msgstr "Nom d'utilisateur :" #: ../src/gyrus-admin-acl.c:54 ../src/gyrus-admin-acl.c:103 #, c-format msgid "Mailbox '%s' does not exist." msgstr "La boîte aux lettres « %s » n'existe pas." #: ../src/gyrus-admin-acl.c:76 msgid "Invalid identifier." msgstr "Identificateur non valide." #: ../src/gyrus-admin-acl.c:82 msgid "Empty entry name." msgstr "Nom de valeur vide." #: ../src/gyrus-admin-acl.c:87 msgid "Empty mailbox name." msgstr "Nom de boîte aux lettres vide." #: ../src/gyrus-admin-acl.c:107 msgid "Missing required argument to Setacl" msgstr "Argument requis manquant pour Setacl" #: ../src/gyrus-admin-acl.c:143 ../src/gyrus-admin-mailbox.c:80 msgid "Permission denied" msgstr "Permission refusée" #: ../src/gyrus-admin-acl.c:175 msgid "Empty access control list." msgstr "Liste de contrôle d'accès vide." #: ../src/gyrus-admin-mailbox.c:78 msgid "Quota does not exist" msgstr "Le quota n'existe pas" #: ../src/gyrus-admin-mailbox.c:172 #, c-format msgid "Quota overloaded" msgstr "Dépassement du quota" #: ../src/gyrus-admin-mailbox.c:230 msgid "Quota not valid. Please try again." msgstr "Quota non valide. Essayez à nouveau." #: ../src/gyrus-admin-mailbox.c:244 msgid "" "Unable to change quota. Are you sure do you have the appropriate permissions?" msgstr "" "Impossible de modifier le quota. Êtes-vous certain de posséder les " "autorisations appropriées ?" #: ../src/gyrus-admin-mailbox.c:324 #, c-format msgid "'%s' is not a valid mailbox name. Please try a different one." msgstr "" "« %s » n'est pas un nom de boîte aux lettres valide. Essayez un nom différent." #: ../src/gyrus-admin-mailbox.c:332 #, c-format msgid "" "Parent mailbox '%s' does not exist. Please refresh the mailboxes list and " "try again." msgstr "" "La boîte aux lettres parente « %s » n'existe pas. Réactualisez la liste des " "boîtes aux lettres et essayez à nouveau." #: ../src/gyrus-admin-mailbox.c:342 #, c-format msgid "Mailbox '%s' already exists. Please try a different name." msgstr "La boîte aux lettres « %s » existe déjà. Essayez un nom différent." #: ../src/gyrus-admin-mailbox.c:355 msgid "" "Unable to create the mailbox. Are you sure do you have the appropriate " "permissions?" msgstr "" "Impossible de créer la boîte aux lettres. Êtes-vous certain de posséder les " "autorisations appropriées ?" #: ../src/gyrus-admin-mailbox.c:366 msgid "Mailbox created, but could not set quota." msgstr "" "La boîte aux lettres a été créée, mais impossible d'en définir le quota." #: ../src/gyrus-admin-mailbox.c:433 #, c-format msgid "Unable to delete '%s'. Permission denied." msgstr "Impossible de supprimer « %s ». Permission refusée." #: ../src/gyrus-admin-mailbox.c:634 msgid "new entry" msgstr "nouvelle valeur" #: ../src/gyrus-admin.c:447 ../src/gyrus-report.c:289 #, c-format msgid "Users (%d)" msgstr "Utilisateurs (%d)" #: ../src/gyrus-admin.c:453 #, c-format msgid "Orphaned mailboxes (%d)" msgstr "Boîtes aux lettres orphelines (%d)" #: ../src/gyrus-admin.c:497 ../src/gyrus-admin.c:855 msgid "Orphaned mailboxes" msgstr "Boîtes aux lettres orphelines" #: ../src/gyrus-admin.c:497 ../src/gyrus-admin.c:853 ../src/gyrus-report.c:170 msgid "Users" msgstr "Utilisateurs" #: ../src/gyrus-admin.c:565 msgid "lookup" msgstr "voir" #: ../src/gyrus-admin.c:566 msgid "read" msgstr "lire" #: ../src/gyrus-admin.c:567 msgid "seen" msgstr "vu" #: ../src/gyrus-admin.c:568 msgid "write" msgstr "écrire" #: ../src/gyrus-admin.c:569 msgid "insert" msgstr "insérer" #: ../src/gyrus-admin.c:570 msgid "post" msgstr "envoyer" #: ../src/gyrus-admin.c:571 msgid "create" msgstr "créer" #: ../src/gyrus-admin.c:572 msgid "delete" msgstr "supprimer" #: ../src/gyrus-admin.c:573 msgid "admin" msgstr "administrer" #: ../src/gyrus-admin.c:581 msgid "Identifier" msgstr "Identificateur" #: ../src/gyrus-admin.c:651 msgid "Couldn't create the client socket." msgstr "Impossible de créer le socket client." #: ../src/gyrus-admin.c:659 msgid "Couldn't parse the server address." msgstr "Impossible d'analyser l'adresse du serveur." #: ../src/gyrus-admin.c:668 #, c-format msgid "Could not connect to %s, port %d." msgstr "Impossible de se connecter à %s, port %d." #: ../src/gyrus-admin.c:1001 msgid "Unable to connect with empty passwords. Please introduce your password." msgstr "" "Impossible de se connecter avec des mots de passe vides. Saisissez votre mot " "de passe." #: ../src/gyrus-admin.c:1008 msgid "Incorrect login/password" msgstr "Identifiant/mot de passe incorrect" #: ../src/gyrus-admin.c:1364 msgid "Could not change permission. Server error: " msgstr "Impossible de modifier l'autorisation. Erreur du serveur : " #: ../src/gyrus-admin.c:1407 #, c-format msgid "An entry called '%s' already exists. Overwrite it?" msgstr "Une valeur nommée « %s » existe déjà. Voulez-vous l'écraser ?" #: ../src/gyrus-dialog-find-mailbox.c:171 #, c-format msgid "The text '%s' was not found in the mailbox list." msgstr "" "Le texte « %s » n'a pas été trouvé dans la liste des boîtes aux lettres." #: ../src/gyrus-dialog-find-mailbox.c:275 msgid "Find mailbox" msgstr "Rechercher une boîte aux lettres" #: ../src/gyrus-dialog-mailbox-new.c:93 msgid "Quota not valid" msgstr "Quota non valide" #: ../src/gyrus-dialog-mailbox-new.c:220 msgid "New mailbox" msgstr "Nouvelle boîte aux lettres" #: ../src/gyrus-main-app.c:146 #, c-format msgid "Really delete mailbox '%s' and all of its submailboxes?" msgstr "" "Voulez-vous vraiment supprimer la boîte aux lettres « %s » et toutes ses " "boîtes aux lettres dépendantes ?" #: ../src/gyrus-main-app.c:261 ../src/gyrus-main-app.c:436 #: ../src/gyrus-main-app.c:732 msgid "Cyrus IMAP Administrator" msgstr "Administrateur IMAP Cyrus" #: ../src/gyrus-main-app.c:275 #, c-format msgid "%s - Cyrus IMAP Administrator" msgstr "%s - Administrateur IMAP Cyrus" #: ../src/gyrus-main-app.c:383 msgid "_File" msgstr "_Fichier" #: ../src/gyrus-main-app.c:384 msgid "_Edit" msgstr "É_dition" #: ../src/gyrus-main-app.c:385 msgid "_ACL" msgstr "A_CL" #: ../src/gyrus-main-app.c:386 msgid "_View" msgstr "_Affichage" #: ../src/gyrus-main-app.c:387 msgid "_Help" msgstr "Aid_e" #: ../src/gyrus-main-app.c:388 msgid "Go to server..." msgstr "Rejoindre le serveur..." #: ../src/gyrus-main-app.c:389 msgid "Show the list of servers" msgstr "Afficher la liste des serveurs" #: ../src/gyrus-main-app.c:397 msgid "Add mailbox" msgstr "Ajouter une boîte aux lettres" #: ../src/gyrus-main-app.c:398 msgid "Add a mailbox under the one selected" msgstr "Ajoute une boîte aux lettres sous celle sélectionnée" #: ../src/gyrus-main-app.c:400 msgid "Search for a mailbox in current server" msgstr "Rechercher une boîte aux lettres sur le serveur actuel" #: ../src/gyrus-main-app.c:402 msgid "Refresh the mailbox list" msgstr "Réactualiser la liste des boîtes aux lettres" #: ../src/gyrus-main-app.c:403 msgid "Create report..." msgstr "Créer un rapport..." #: ../src/gyrus-main-app.c:404 msgid "Create report of users with quota problems" msgstr "Crée un rapport des utilisateurs avec des problèmes de quota" #: ../src/gyrus-main-app.c:408 msgid "New entry" msgstr "Nouvelle valeur" #: ../src/gyrus-main-app.c:409 msgid "Create a new ACL entry in current mailbox" msgstr "Crée une nouvelle valeur ACL dans la boîte aux lettres actuelle" #: ../src/gyrus-main-app.c:410 msgid "Remove mailbox" msgstr "Supprimer la boîte aux lettres" #: ../src/gyrus-main-app.c:411 msgid "Remove current mailbox from the server" msgstr "Supprime la boîte aux lettres actuelle du serveur" #: ../src/gyrus-main-app.c:416 msgid "Rename entry" msgstr "Renommer la valeur" #: ../src/gyrus-main-app.c:417 msgid "Rename selected ACL entry" msgstr "Renomme la valeur ACL sélectionnée" #: ../src/gyrus-main-app.c:418 msgid "Delete entry" msgstr "Supprimer la valeur" #: ../src/gyrus-main-app.c:419 msgid "Delete selected ACL entry" msgstr "Supprime la valeur ACL sélectionnée" #: ../src/gyrus-main-app.c:552 msgid "translators-credits" msgstr "" "Robert-André Mauchin \n" "Claude Paroz \n" "Stéphane Raimbault " #: ../src/gyrus-main-app.c:562 msgid "GNOME Cyrus Administrator" msgstr "Administrateur GNOME Cyrus" #: ../src/gyrus-main-app.c:564 msgid "" "(c) 2003-2005 GNOME Foundation\n" "(c) 2004-2005 Claudio Saavedra" msgstr "" "(c) 2003-2005 GNOME Foundation\n" "(c) 2004-2005 Claudio Saavedra" #: ../src/gyrus-main-app.c:566 msgid "Administration tool for Cyrus IMAP servers." msgstr "Outil d'administration pour les serveurs IMAP Cyrus." #. set title #: ../src/gyrus-report.c:107 #, c-format msgid "Mailbox space usage report for %s" msgstr "" "Rapport sur l'utilisation de l'espace disque de la boîte aux lettres pour %s" #: ../src/gyrus-report.c:191 ../src/gyrus-report.c:492 msgid "Quota (%)" msgstr "Quota (%)" #: ../src/gyrus-report.c:204 ../src/gyrus-report.c:496 msgid "Assigned (KB)" msgstr "Attribué (Kio)" #: ../src/gyrus-report.c:215 ../src/gyrus-report.c:500 msgid "Used (KB)" msgstr "Utilisé (Kio)" #. Translators: this represents the number of pages being printed. #: ../src/gyrus-report.c:465 #, c-format msgid "%d/%d" msgstr "%d/%d" #: ../src/gyrus-report.c:488 msgid "User" msgstr "Utilisateur" #: ../src/gyrus-session.c:164 msgid "Edit session" msgstr "Éditer la session" #: ../src/gyrus-session.c:178 msgid "New session" msgstr "Nouvelle session" #: ../src/gyrus-session.c:357 msgid "A session name is required." msgstr "Un nom de session est requis." #: ../src/gyrus-session.c:368 #, c-format msgid "Session named \"%s\" already exists." msgstr "Une session nommée « %s » existe déjà." #: ../src/gyrus-session.c:464 ../src/gyrus-session.c:598 msgid "Autodetect" msgstr "Détection automatique" #: ../src/gyrus-session.c:549 msgid "Session" msgstr "Session" #: ../src/gyrus-session.c:718 msgid "No host specified." msgstr "Aucun hôte indiqué." #: ../tests/gyrus-talk.xml.h:1 msgid "Connection" msgstr "Connexion" #: ../tests/gyrus-talk.xml.h:2 msgid "Command:" msgstr "Commande :" #: ../tests/gyrus-talk.xml.h:5 msgid "Talk - Echo client" msgstr "Talk - client Echo" #: ../tests/gyrus-talk.xml.h:7 msgid "_Connect" msgstr "Se _connecter" #: ../tests/gyrus-talk.xml.h:8 msgid "_Send" msgstr "_Envoyer" #~ msgid "*" #~ msgstr "*" #~ msgid "Create mailbox" #~ msgstr "Créer une boîte aux lettres" #~ msgid "Find" #~ msgstr "Rechercher" #~ msgid "Mailbox quota:" #~ msgstr "Quota de la boîte aux lettres :" #~ msgid "Mailboxes tree:" #~ msgstr "Arbre des boîtes aux lettres :" #~ msgid "Default suffix for changing quota:" #~ msgstr "Suffixe par défaut pour le changement de quota :" #~ msgid "Preferences" #~ msgstr "Préférences" #~ msgid "View complete mailboxes tree" #~ msgstr "Voir l'arbre complet des boîtes aux lettres" #~ msgid "" #~ ".\n" #~ "/\n" #~ "Autodetect" #~ msgstr "" #~ ".\n" #~ "/\n" #~ "Détection automatique" #~ msgid "%s could not be found. Please check the name and try again." #~ msgstr "%s est introuvable. Vérifiez le nom et essayez à nouveau." #~ msgid "_Disconnect" #~ msgstr "Se _déconnecter" gyrus-0.4.2/po/gl.po000066400000000000000000000341111426522072200142500ustar00rootroot00000000000000# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # Dario Villar Veres , 2010. # Fran Diéguez , 2010. # Fran Dieguez , 2011, 2013. msgid "" msgstr "" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2013-09-13 00:43+0200\n" "PO-Revision-Date: 2013-09-13 00:44+0200\n" "Last-Translator: Fran Dieguez \n" "Language-Team: gnome-l10n-gl@gnome.org\n" "Language: gl\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" "X-Generator: Virtaal 0.7.1\n" #: ../gyrus.desktop.in.in.h:1 msgid "Gyrus IMAP Cyrus Administrator" msgstr "Administrador de IMAP Cyrus Gyrus" #: ../gyrus.desktop.in.in.h:2 msgid "Administer the mailboxes of your IMAP Cyrus servers" msgstr "Administre as caixas de correo dos seus servidores IMAP Cyrus" #: ../src/ui/create_mailbox.xml.h:1 msgid "Name:" msgstr "Nome:" #: ../src/ui/create_mailbox.xml.h:2 msgid "Quota (MB):" msgstr "Cota (MB):" #: ../src/ui/create_mailbox.xml.h:3 msgid "Assign quota" msgstr "Asignar cota" #: ../src/ui/find.xml.h:1 msgid "Search for:" msgstr "Buscar por:" #: ../src/ui/find.xml.h:2 msgid "Match _entire word only" msgstr "Coincidir só coa palabra _enteira" #: ../src/ui/find.xml.h:3 msgid "_Wrap around" msgstr "Dar a _volta" #: ../src/ui/page.xml.h:1 msgid "Free space:" msgstr "Espazo libre:" #: ../src/ui/page.xml.h:2 msgid "Assigned space:" msgstr "Espazo asignado:" #: ../src/ui/page.xml.h:3 msgid "Owner:" msgstr "Dono:" #: ../src/ui/page.xml.h:4 msgid "New quota (MB)" msgstr "Nova cota (MB)" #: ../src/ui/page.xml.h:5 msgid "Modify quota" msgstr "Modificar cota" #: ../src/ui/page.xml.h:6 msgid "Access control list" msgstr "Lista de control de acceso" #: ../src/ui/page.xml.h:7 ../src/ui/sessions_edit.xml.h:5 #: ../tests/gyrus-talk.xml.h:2 msgid "Host:" msgstr "Servidor:" #: ../src/ui/page.xml.h:8 msgid "User:" msgstr "Usuario:" #: ../src/ui/page.xml.h:9 ../src/ui/sessions_edit.xml.h:4 #: ../tests/gyrus-talk.xml.h:4 msgid "Port:" msgstr "Porto:" #: ../src/ui/password.xml.h:1 msgid "Password" msgstr "Contrasinal" #: ../src/ui/password.xml.h:2 msgid "Enter your password" msgstr "Introduza o seu contrasinal" #: ../src/ui/report.xml.h:1 msgid "Report" msgstr "Informe" #: ../src/ui/report.xml.h:3 #, no-c-format msgid "Over (%)" msgstr "Sobre (%)" #: ../src/ui/sessions.xml.h:1 msgid "Open session" msgstr "Abrir a sesión" #: ../src/ui/sessions_edit.xml.h:1 msgid "Session name:" msgstr "Nome da sesión:" #: ../src/ui/sessions_edit.xml.h:2 msgid "Password:" msgstr "Contrasinal:" #: ../src/ui/sessions_edit.xml.h:3 msgid "Username:" msgstr "Nome de usuario:" #: ../src/ui/sessions_edit.xml.h:6 msgid "Session details" msgstr "Información da sesión" #: ../src/ui/sessions_edit.xml.h:7 ../tests/gyrus-talk.xml.h:3 msgid "Use a secure connection" msgstr "Usar unha conexión segura" #: ../src/ui/sessions_edit.xml.h:8 msgid "Mailbox hierarchy separator:" msgstr "Separador xerárquico da caixa de correo:" #: ../src/ui/sessions_edit.xml.h:9 msgid "Options" msgstr "Opcións" #: ../src/gyrus-admin-acl.c:54 ../src/gyrus-admin-acl.c:103 #, c-format msgid "Mailbox '%s' does not exist." msgstr "A caixa de correo «%s» non existe." #: ../src/gyrus-admin-acl.c:76 msgid "Invalid identifier." msgstr "Identificador non válido." #: ../src/gyrus-admin-acl.c:82 msgid "Empty entry name." msgstr "Nome da entrada baleiro." #: ../src/gyrus-admin-acl.c:87 msgid "Empty mailbox name." msgstr "Nome da caixa de correo baleiro." #: ../src/gyrus-admin-acl.c:107 msgid "Missing required argument to Setacl" msgstr "Falta o argumento requirido para Setacl" #: ../src/gyrus-admin-acl.c:143 ../src/gyrus-admin-mailbox.c:80 msgid "Permission denied" msgstr "Permiso denegado" #: ../src/gyrus-admin-acl.c:175 msgid "Empty access control list." msgstr "Lista de control de acceso baleira." #: ../src/gyrus-admin-mailbox.c:78 msgid "Quota does not exist" msgstr "Non existe a cota" #: ../src/gyrus-admin-mailbox.c:172 #, c-format msgid "Quota overloaded" msgstr "Superouse a cota" #: ../src/gyrus-admin-mailbox.c:230 msgid "Quota not valid. Please try again." msgstr "A cota non é válida. Ténteo de novo." #: ../src/gyrus-admin-mailbox.c:244 msgid "" "Unable to change quota. Are you sure do you have the appropriate permissions?" msgstr "" "Non foi posíbel cambiar a cota. Esta seguro de que ten os permisos axeitados?" #: ../src/gyrus-admin-mailbox.c:324 #, c-format msgid "'%s' is not a valid mailbox name. Please try a different one." msgstr "«%s» non é un nome de caixa de correo válido. Probe con un diferente." #: ../src/gyrus-admin-mailbox.c:332 #, c-format msgid "" "Parent mailbox '%s' does not exist. Please refresh the mailboxes list and " "try again." msgstr "" "Non existe a caixa de correo pai «%s». Actualice a lista de caixas de correo " "e ténteo de novo." #: ../src/gyrus-admin-mailbox.c:342 #, c-format msgid "Mailbox '%s' already exists. Please try a different name." msgstr "A caixa de correo «%s» xa existe. Tente con un nome diferente." #: ../src/gyrus-admin-mailbox.c:355 msgid "" "Unable to create the mailbox. Are you sure do you have the appropriate " "permissions?" msgstr "" "Non foi posíbel crear a caixa de correo. Esta seguro de ter os permisos " "apropiados?" #: ../src/gyrus-admin-mailbox.c:366 msgid "Mailbox created, but could not set quota." msgstr "Caixa de correo creada, porén non se definiu a cota." #: ../src/gyrus-admin-mailbox.c:433 #, c-format msgid "Unable to delete '%s'. Permission denied." msgstr "Non foi posíbel borrar «%s». Permiso denegado." #: ../src/gyrus-admin-mailbox.c:634 msgid "new entry" msgstr "nova entrada" #: ../src/gyrus-admin.c:447 ../src/gyrus-report.c:287 #, c-format msgid "Users (%d)" msgstr "Usuarios (%d)" #: ../src/gyrus-admin.c:453 #, c-format msgid "Orphaned mailboxes (%d)" msgstr "Caixas de correo orfas (%d)" #: ../src/gyrus-admin.c:497 ../src/gyrus-admin.c:852 msgid "Orphaned mailboxes" msgstr "Caixas de correo orfas" #: ../src/gyrus-admin.c:497 ../src/gyrus-admin.c:850 ../src/gyrus-report.c:168 msgid "Users" msgstr "Usuarios" #: ../src/gyrus-admin.c:565 msgid "lookup" msgstr "buscar" #: ../src/gyrus-admin.c:566 msgid "read" msgstr "ler" #: ../src/gyrus-admin.c:567 msgid "seen" msgstr "visto" #: ../src/gyrus-admin.c:568 msgid "write" msgstr "escribir" #: ../src/gyrus-admin.c:569 msgid "insert" msgstr "inserir" #: ../src/gyrus-admin.c:570 msgid "post" msgstr "enviar" #: ../src/gyrus-admin.c:571 msgid "create" msgstr "crear" #: ../src/gyrus-admin.c:572 msgid "delete" msgstr "borrar" #: ../src/gyrus-admin.c:573 msgid "admin" msgstr "administrador" #: ../src/gyrus-admin.c:581 msgid "Identifier" msgstr "Identificador" #: ../src/gyrus-admin.c:651 msgid "Couldn't create the client socket." msgstr "Non foi posíbel crear un socket do cliente." #: ../src/gyrus-admin.c:659 msgid "Couldn't parse the server address." msgstr "Non foi posíbel analizar o enderezo do servidor." #: ../src/gyrus-admin.c:668 #, c-format msgid "Could not connect to %s, port %d." msgstr "Non foi posíbel conectarse a %s, no porto %d." #: ../src/gyrus-admin.c:998 msgid "Unable to connect with empty passwords. Please introduce your password." msgstr "" "Non foi posíbel conectar co contrasinal baleiro. Introduza o seu contrasinal." #: ../src/gyrus-admin.c:1005 msgid "Incorrect login/password" msgstr "Usuario ou contrasinal incorrecto" #: ../src/gyrus-admin.c:1361 msgid "Could not change permission. Server error: " msgstr "Non se puideron modificar os permisos. Erro do servidor: " #: ../src/gyrus-admin.c:1404 #, c-format msgid "An entry called '%s' already exists. Overwrite it?" msgstr "Xa existe unha entrada chamada «%s». Desexa sobrescribila?" #: ../src/gyrus-dialog-find-mailbox.c:171 #, c-format msgid "The text '%s' was not found in the mailbox list." msgstr "Non foi posíbel atopar o o texto «%s» na lista de caixas de correo." #: ../src/gyrus-dialog-find-mailbox.c:275 msgid "Find mailbox" msgstr "Buscar caixa de correo" #: ../src/gyrus-dialog-mailbox-new.c:93 msgid "Quota not valid" msgstr "A cota non é válida" #: ../src/gyrus-dialog-mailbox-new.c:220 msgid "New mailbox" msgstr "Nova caixa de correo" #: ../src/gyrus-main-app.c:146 #, c-format msgid "Really delete mailbox '%s' and all of its submailboxes?" msgstr "" "Ten certeza de que quere borrar a caixa de correo «%s» e todas as súas " "subcaixas?" #: ../src/gyrus-main-app.c:261 ../src/gyrus-main-app.c:407 #: ../src/gyrus-main-app.c:703 msgid "Cyrus IMAP Administrator" msgstr "Administrador IMAP Cyrus" #: ../src/gyrus-main-app.c:275 #, c-format msgid "%s - Cyrus IMAP Administrator" msgstr "%s - Administrador IMAP Cyrus" #: ../src/gyrus-main-app.c:354 msgid "_File" msgstr "_Ficheiro" #: ../src/gyrus-main-app.c:355 msgid "_Edit" msgstr "_Editar" #: ../src/gyrus-main-app.c:356 msgid "_ACL" msgstr "_ACL" #: ../src/gyrus-main-app.c:357 msgid "_View" msgstr "_Ver" #: ../src/gyrus-main-app.c:358 msgid "_Help" msgstr "_Axuda" #: ../src/gyrus-main-app.c:359 msgid "Go to server..." msgstr "Ir ao servidor..." #: ../src/gyrus-main-app.c:360 msgid "Show the list of servers" msgstr "Mostrar a lista de servidores" #: ../src/gyrus-main-app.c:368 msgid "Add mailbox" msgstr "Engadir unha caixa de correo" #: ../src/gyrus-main-app.c:369 msgid "Add a mailbox under the one selected" msgstr "Engadir unha caixa de correo embaixo da escollida" #: ../src/gyrus-main-app.c:371 msgid "Search for a mailbox in current server" msgstr "Buscar unha caixa de correo no servidor actual" #: ../src/gyrus-main-app.c:373 msgid "Refresh the mailbox list" msgstr "Actualizar a lista de caixas de correo" #: ../src/gyrus-main-app.c:374 msgid "Create report..." msgstr "Crear informe..." #: ../src/gyrus-main-app.c:375 msgid "Create report of users with quota problems" msgstr "Crear informe dos ususarios con problemas de cota" #: ../src/gyrus-main-app.c:379 msgid "New entry" msgstr "Nova entrada" #: ../src/gyrus-main-app.c:380 msgid "Create a new ACL entry in current mailbox" msgstr "Crear unha entrada ACL nova na caixa de correo actual" #: ../src/gyrus-main-app.c:381 msgid "Remove mailbox" msgstr "Eliminar caixa de correo" #: ../src/gyrus-main-app.c:382 msgid "Remove current mailbox from the server" msgstr "Eliminar a caixa de correo actual do servidor" #: ../src/gyrus-main-app.c:387 msgid "Rename entry" msgstr "Cambiar o nome da entrada" #: ../src/gyrus-main-app.c:388 msgid "Rename selected ACL entry" msgstr "Cambiar o nome da entrada ACL" #: ../src/gyrus-main-app.c:389 msgid "Delete entry" msgstr "Eliminar a entrada" #: ../src/gyrus-main-app.c:390 msgid "Delete selected ACL entry" msgstr "Eliminar a entrada ACL escollida" #: ../src/gyrus-main-app.c:523 msgid "translators-credits" msgstr "" "Darío Villar Veres , 2010.\n" "QA: Fran Diéguez Souto , 2010." #: ../src/gyrus-main-app.c:533 msgid "GNOME Cyrus Administrator" msgstr "Administrador de Cyrus de GNOME" #: ../src/gyrus-main-app.c:535 msgid "" "(c) 2003-2005 GNOME Foundation\n" "(c) 2004-2005 Claudio Saavedra" msgstr "" "(c) 2003-2005 GNOME Foundation\n" "(c) 2004-2005 Claudio Saavedra" #: ../src/gyrus-main-app.c:537 msgid "Administration tool for Cyrus IMAP servers." msgstr "Ferramenta de administración de servidores IMAP Cyrus." #. set title #: ../src/gyrus-report.c:105 #, c-format msgid "Mailbox space usage report for %s" msgstr "Informe de uso de espazo da caixa de correo para %s" #: ../src/gyrus-report.c:189 ../src/gyrus-report.c:490 msgid "Quota (%)" msgstr "Cota (%)" #: ../src/gyrus-report.c:202 ../src/gyrus-report.c:494 msgid "Assigned (KB)" msgstr "Asignado (KB)" #: ../src/gyrus-report.c:213 ../src/gyrus-report.c:498 msgid "Used (KB)" msgstr "Usado (KB)" #. Translators: this represents the number of pages being printed. #: ../src/gyrus-report.c:463 #, c-format msgid "%d/%d" msgstr "%d/%d" #: ../src/gyrus-report.c:486 msgid "User" msgstr "Usuario" #: ../src/gyrus-session.c:164 msgid "Edit session" msgstr "Editar sesión" #: ../src/gyrus-session.c:178 msgid "New session" msgstr "Nova sesión" #: ../src/gyrus-session.c:357 msgid "A session name is required." msgstr "Requírese un nome de sesión." #: ../src/gyrus-session.c:368 #, c-format msgid "Session named \"%s\" already exists." msgstr "Xa existe unha sesión nomeada «%s»." #: ../src/gyrus-session.c:464 ../src/gyrus-session.c:598 msgid "Autodetect" msgstr "Detectar automaticamente" #: ../src/gyrus-session.c:549 msgid "Session" msgstr "Sesión" #: ../src/gyrus-session.c:718 msgid "No host specified." msgstr "Non se especificou ningún servidor." #: ../tests/gyrus-talk.xml.h:1 msgid "Talk - Echo client" msgstr "Cliente echo - Talk" #: ../tests/gyrus-talk.xml.h:5 msgid "_Connect" msgstr "_Conectar" #: ../tests/gyrus-talk.xml.h:6 msgid "Connection" msgstr "Conexión" #: ../tests/gyrus-talk.xml.h:7 msgid "Command:" msgstr "Orde:" #: ../tests/gyrus-talk.xml.h:8 msgid "_Send" msgstr "E_nviar" #~ msgid "Name:" #~ msgstr "Nome:" #~ msgid "Quota (MB):" #~ msgstr "Cota (MB)" #~ msgid "Host:" #~ msgstr "Servidor:" #~ msgid "Port:" #~ msgstr "Porto:" #~ msgid "User:" #~ msgstr "Usuario:" #~ msgid "Connection" #~ msgstr "Conexión" #~ msgid "*" #~ msgstr "*" #~ msgid "Create mailbox" #~ msgstr "Crear caixa de correo" #~ msgid "Find" #~ msgstr "Buscar" #~ msgid "Mailbox quota:" #~ msgstr "Cota da caixa de correo" #~ msgid "Mailboxes tree:" #~ msgstr "Árbore das caixas de correo" #~ msgid "Default suffix for changing quota:" #~ msgstr "Sufixo predeterminado para cambiar a cota:" #~ msgid "Preferences" #~ msgstr "Preferencias" #~ msgid "View complete mailboxes tree" #~ msgstr "Ver a árbore completa das caixas de correo" #~ msgid "" #~ ".\n" #~ "/\n" #~ "Autodetect" #~ msgstr "" #~ ".\n" #~ "/\n" #~ "Detectar automaticamente" #~ msgid "%s could not be found. Please check the name and try again." #~ msgstr "Non foi posíbel encontrar %s. Comprobe o nome e ténteo de novo." #~ msgid "_Disconnect" #~ msgstr "_Desconectar" gyrus-0.4.2/po/hu.po000066400000000000000000000350041426522072200142640ustar00rootroot00000000000000# Hungarian messages for gyrus. # Copyright (C) 2006 Free Software Foundation # This file is distributed under the same license as the gyrus package. # # Nora Albitz , 2006. # Gabor Kelemen , 2006, 2010. # Balázs Úr , 2013. msgid "" msgstr "" "Project-Id-Version: gyrus master\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" "product=gyrus&keywords=I18N+L10N&component=general\n" "POT-Creation-Date: 2012-11-09 17:03+0000\n" "PO-Revision-Date: 2013-03-17 11:13+0100\n" "Last-Translator: Balázs Úr \n" "Language-Team: Hungarian \n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: Lokalize 1.2\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: ../gyrus.desktop.in.in.h:1 msgid "Gyrus IMAP Cyrus Administrator" msgstr "Gyrus IMAP Cyrus adminisztrátor" #: ../gyrus.desktop.in.in.h:2 msgid "Administer the mailboxes of your IMAP Cyrus servers" msgstr "Az IMAP Cyrus kiszolgálók levélmappáinak adminisztrációja" #: ../src/ui/create_mailbox.xml.h:1 msgid "Name:" msgstr "Név:" #: ../src/ui/create_mailbox.xml.h:2 #| msgid "Quota (%)" msgid "Quota (MB):" msgstr "Kvóta (MB):" #: ../src/ui/create_mailbox.xml.h:3 msgid "Assign quota" msgstr "Kvóta meghatározása" #: ../src/ui/find.xml.h:1 msgid "Search for:" msgstr "Keresés erre:" #: ../src/ui/find.xml.h:2 msgid "Match _entire word only" msgstr "_Csak teljes szóra" #: ../src/ui/find.xml.h:3 msgid "_Wrap around" msgstr "_Körbe" #: ../src/ui/page.xml.h:1 #| msgid "Free space:" msgid "Free space:" msgstr "Szabad hely:" #: ../src/ui/page.xml.h:2 #| msgid "Assigned space:" msgid "Assigned space:" msgstr "Kiosztott hely:" #: ../src/ui/page.xml.h:3 #| msgid "Owner:" msgid "Owner:" msgstr "Tulajdonos:" #: ../src/ui/page.xml.h:4 msgid "New quota (MB)" msgstr "Új kvóta (MB)" #: ../src/ui/page.xml.h:5 msgid "Modify quota" msgstr "Kvóta módosítása" #: ../src/ui/page.xml.h:6 msgid "Access control list" msgstr "Hozzáférés-felügyeleti lista" #: ../src/ui/page.xml.h:7 ../src/ui/sessions_edit.xml.h:5 #: ../tests/gyrus-talk.xml.h:2 msgid "Host:" msgstr "Kiszolgáló:" #: ../src/ui/page.xml.h:8 #| msgid "User" msgid "User:" msgstr "Felhasználó:" #: ../src/ui/page.xml.h:9 ../src/ui/sessions_edit.xml.h:4 #: ../tests/gyrus-talk.xml.h:4 msgid "Port:" msgstr "Port:" #: ../src/ui/password.xml.h:1 msgid "Password" msgstr "Jelszó" #: ../src/ui/password.xml.h:2 #| msgid "Enter your password" msgid "Enter your password" msgstr "Adja meg a jelszavát" #: ../src/ui/report.xml.h:1 msgid "Report" msgstr "Jelentés" #: ../src/ui/report.xml.h:3 #, no-c-format msgid "Over (%)" msgstr "Felett (%)" #: ../src/ui/sessions.xml.h:1 msgid "Open session" msgstr "Munkafolyamat megnyitása" #: ../src/ui/sessions_edit.xml.h:1 msgid "Session name:" msgstr "Munkamenet neve:" #: ../src/ui/sessions_edit.xml.h:2 msgid "Password:" msgstr "Jelszó:" #: ../src/ui/sessions_edit.xml.h:3 msgid "Username:" msgstr "Felhasználónév:" #: ../src/ui/sessions_edit.xml.h:6 #| msgid "Session details" msgid "Session details" msgstr "Munkafolyamat részletei" #: ../src/ui/sessions_edit.xml.h:7 ../tests/gyrus-talk.xml.h:3 msgid "Use a secure connection" msgstr "Biztonságos kapcsolat használata" #: ../src/ui/sessions_edit.xml.h:8 msgid "Mailbox hierarchy separator:" msgstr "Levélmappa hierarchia-elválasztó" #: ../src/ui/sessions_edit.xml.h:9 msgid "Options" msgstr "Beállítások" #: ../src/gyrus-admin-acl.c:54 ../src/gyrus-admin-acl.c:103 #, c-format msgid "Mailbox '%s' does not exist." msgstr "A levélmappa (%s) nem létezik." #: ../src/gyrus-admin-acl.c:76 msgid "Invalid identifier." msgstr "Érvénytelen azonosító." #: ../src/gyrus-admin-acl.c:82 msgid "Empty entry name." msgstr "Üres bejegyzésnév." #: ../src/gyrus-admin-acl.c:87 msgid "Empty mailbox name." msgstr "Üres postafióknév." #: ../src/gyrus-admin-acl.c:107 msgid "Missing required argument to Setacl" msgstr "Hiányzó kötelező paraméter a Setacl-hez" #: ../src/gyrus-admin-acl.c:143 ../src/gyrus-admin-mailbox.c:80 msgid "Permission denied" msgstr "Hozzáférés megtagadva" #: ../src/gyrus-admin-acl.c:175 msgid "Empty access control list." msgstr "Üres hozzáférés-felügyeleti lista." #: ../src/gyrus-admin-mailbox.c:78 msgid "Quota does not exist" msgstr "A kvóta nem létezik" #: ../src/gyrus-admin-mailbox.c:172 #, c-format msgid "Quota overloaded" msgstr "Kvóta túllépve" #: ../src/gyrus-admin-mailbox.c:230 msgid "Quota not valid. Please try again." msgstr "A kvóta nem érvényes. Próbálja meg újra." #: ../src/gyrus-admin-mailbox.c:244 msgid "" "Unable to change quota. Are you sure do you have the appropriate permissions?" msgstr "" "A kvótaváltoztatás meghiúsult. Biztosan rendelkezik a megfelelő " "jogosultsággal?" #: ../src/gyrus-admin-mailbox.c:324 #, c-format msgid "'%s' is not a valid mailbox name. Please try a different one." msgstr "A(z) „%s” nem érvényes postafióknév. Próbáljon egy másikat." #: ../src/gyrus-admin-mailbox.c:332 #, c-format msgid "" "Parent mailbox '%s' does not exist. Please refresh the mailboxes list and " "try again." msgstr "" "A szülőlevélmappa (%s) nem létezik. Frissítse a levélmappalistát és próbálja " "újra." #: ../src/gyrus-admin-mailbox.c:342 #, c-format msgid "Mailbox '%s' already exists. Please try a different name." msgstr "Már létezik postafiók „%s” néven. Adjon másik nevet." #: ../src/gyrus-admin-mailbox.c:355 msgid "" "Unable to create the mailbox. Are you sure do you have the appropriate " "permissions?" msgstr "" "Nem lehet a postafiókot létrehozni. Biztosan rendelkezik a megfelelő " "jogosultsággal?" #: ../src/gyrus-admin-mailbox.c:366 msgid "Mailbox created, but could not set quota." msgstr "Postafiók létrehozva, de a kvóta nem lett beállítva." #: ../src/gyrus-admin-mailbox.c:433 #, c-format msgid "Unable to delete '%s'. Permission denied." msgstr "A(z) „%s” nem törölhető. Engedély megtagadva." #: ../src/gyrus-admin-mailbox.c:634 msgid "new entry" msgstr "új bejegyzés" #: ../src/gyrus-admin.c:447 ../src/gyrus-report.c:289 #, c-format msgid "Users (%d)" msgstr "Felhasználók (%d)" #: ../src/gyrus-admin.c:453 #, c-format msgid "Orphaned mailboxes (%d)" msgstr "Árva postafiókok (%d)" #: ../src/gyrus-admin.c:497 ../src/gyrus-admin.c:855 msgid "Orphaned mailboxes" msgstr "Árva postafiókok" #: ../src/gyrus-admin.c:497 ../src/gyrus-admin.c:853 ../src/gyrus-report.c:170 msgid "Users" msgstr "Felhasználók" #: ../src/gyrus-admin.c:565 msgid "lookup" msgstr "keresés" #: ../src/gyrus-admin.c:566 msgid "read" msgstr "olvasás" #: ../src/gyrus-admin.c:567 msgid "seen" msgstr "olvasott" #: ../src/gyrus-admin.c:568 msgid "write" msgstr "írás" #: ../src/gyrus-admin.c:569 msgid "insert" msgstr "beszúrás" #: ../src/gyrus-admin.c:570 msgid "post" msgstr "küldés" #: ../src/gyrus-admin.c:571 msgid "create" msgstr "létrehozás" #: ../src/gyrus-admin.c:572 msgid "delete" msgstr "törlés" #: ../src/gyrus-admin.c:573 msgid "admin" msgstr "admin" #: ../src/gyrus-admin.c:581 msgid "Identifier" msgstr "Azonosító" #: ../src/gyrus-admin.c:651 msgid "Couldn't create the client socket." msgstr "Nem hozható létre a kliens foglalat." #: ../src/gyrus-admin.c:659 msgid "Couldn't parse the server address." msgstr "Nem dolgozható fel a kiszolgáló cím." #: ../src/gyrus-admin.c:668 #, c-format msgid "Could not connect to %s, port %d." msgstr "Nem sikerült a csatlakozás, kiszolgáló: %s, port: %d." #: ../src/gyrus-admin.c:1001 msgid "Unable to connect with empty passwords. Please introduce your password." msgstr "Jelszó nélkül nem lehet csatlakozni. Adja meg a jelszavát." #: ../src/gyrus-admin.c:1008 msgid "Incorrect login/password" msgstr "Helytelen felhasználónév/jelszó" #: ../src/gyrus-admin.c:1364 msgid "Could not change permission. Server error: " msgstr "A jogosultság nem változtatható. Kiszolgálóhiba: " #: ../src/gyrus-admin.c:1407 #, c-format msgid "An entry called '%s' already exists. Overwrite it?" msgstr "A bejegyzés (%s) már létezik. Felülírja?" #: ../src/gyrus-dialog-find-mailbox.c:171 #, c-format msgid "The text '%s' was not found in the mailbox list." msgstr "A szöveg (%s) nem található a levélmappa listában." #: ../src/gyrus-dialog-find-mailbox.c:275 msgid "Find mailbox" msgstr "Levélmappa keresése" #: ../src/gyrus-dialog-mailbox-new.c:93 msgid "Quota not valid" msgstr "A kvóta nem érvényes" #: ../src/gyrus-dialog-mailbox-new.c:220 msgid "New mailbox" msgstr "Új levélmappa" #: ../src/gyrus-main-app.c:146 #, c-format msgid "Really delete mailbox '%s' and all of its submailboxes?" msgstr "Biztosan törli a(z) „%s” levélmappát az összes almappájával?" #: ../src/gyrus-main-app.c:261 ../src/gyrus-main-app.c:436 #: ../src/gyrus-main-app.c:732 msgid "Cyrus IMAP Administrator" msgstr "Cyrus IMAP adminisztrátor" #: ../src/gyrus-main-app.c:275 #, c-format msgid "%s - Cyrus IMAP Administrator" msgstr "%s - Cyrus IMAP adminisztrátor" #: ../src/gyrus-main-app.c:383 msgid "_File" msgstr "_Fájl" #: ../src/gyrus-main-app.c:384 msgid "_Edit" msgstr "S_zerkesztés" #: ../src/gyrus-main-app.c:385 msgid "_ACL" msgstr "_ACL" #: ../src/gyrus-main-app.c:386 msgid "_View" msgstr "_Nézet" #: ../src/gyrus-main-app.c:387 msgid "_Help" msgstr "_Súgó" #: ../src/gyrus-main-app.c:388 msgid "Go to server..." msgstr "Csatlakozás a kiszolgálóhoz..." #: ../src/gyrus-main-app.c:389 msgid "Show the list of servers" msgstr "Kiszolgálólista megjelenítése" #: ../src/gyrus-main-app.c:397 msgid "Add mailbox" msgstr "Levélmappa hozzáadása" #: ../src/gyrus-main-app.c:398 msgid "Add a mailbox under the one selected" msgstr "Levélmappa hozzáadása a kijelölt alá" #: ../src/gyrus-main-app.c:400 msgid "Search for a mailbox in current server" msgstr "Levélmappa keresése a jelenlegi kiszolgálón" #: ../src/gyrus-main-app.c:402 msgid "Refresh the mailbox list" msgstr "A levélmappalista frissítése" #: ../src/gyrus-main-app.c:403 msgid "Create report..." msgstr "Jelentés létrehozása…" #: ../src/gyrus-main-app.c:404 msgid "Create report of users with quota problems" msgstr "Jelentés létrehozása a kvótaproblémás felhasználókról." #: ../src/gyrus-main-app.c:408 msgid "New entry" msgstr "Új bejegyzés" #: ../src/gyrus-main-app.c:409 msgid "Create a new ACL entry in current mailbox" msgstr "Egy új ACL bejegyzés létrehozása a jelenlegi levélmappában" #: ../src/gyrus-main-app.c:410 msgid "Remove mailbox" msgstr "Levélmappa eltávolítása" #: ../src/gyrus-main-app.c:411 msgid "Remove current mailbox from the server" msgstr "Jelenlegi levélmappa eltávolítása a kiszolgálóról" #: ../src/gyrus-main-app.c:416 msgid "Rename entry" msgstr "Bejegyzés átnevezése" #: ../src/gyrus-main-app.c:417 msgid "Rename selected ACL entry" msgstr "Kiválasztott ACL bejegyzés átnevezése" #: ../src/gyrus-main-app.c:418 msgid "Delete entry" msgstr "Bejegyzés törlése" #: ../src/gyrus-main-app.c:419 msgid "Delete selected ACL entry" msgstr "Kiválasztott ACL bejegyzés törlése" #: ../src/gyrus-main-app.c:552 msgid "translators-credits" msgstr "" "Albitz Nóra \n" "Kelemen Gábor " #: ../src/gyrus-main-app.c:562 msgid "GNOME Cyrus Administrator" msgstr "GNOME Cyrus adminisztrátor" #: ../src/gyrus-main-app.c:564 msgid "" "(c) 2003-2005 GNOME Foundation\n" "(c) 2004-2005 Claudio Saavedra" msgstr "" "(c) 2003-2005 GNOME Alapítvány\n" "(c) 2004-2005 Claudio Saavedra" #: ../src/gyrus-main-app.c:566 msgid "Administration tool for Cyrus IMAP servers." msgstr "Adminisztrációs eszköz Cyrus IMAP kiszolgálókhoz." #. set title #: ../src/gyrus-report.c:107 #, c-format msgid "Mailbox space usage report for %s" msgstr "Postafiók-használati jelentés a következőhöz: %s" #: ../src/gyrus-report.c:191 ../src/gyrus-report.c:492 msgid "Quota (%)" msgstr "Kvóta (%)" #: ../src/gyrus-report.c:204 ../src/gyrus-report.c:496 msgid "Assigned (KB)" msgstr "Kijelölt (KB)" #: ../src/gyrus-report.c:215 ../src/gyrus-report.c:500 msgid "Used (KB)" msgstr "Felhasznált (KB)" #. Translators: this represents the number of pages being printed. #: ../src/gyrus-report.c:465 #, c-format msgid "%d/%d" msgstr "%d/%d" #: ../src/gyrus-report.c:488 msgid "User" msgstr "Felhasználó" #: ../src/gyrus-session.c:164 msgid "Edit session" msgstr "Munkafolyamat szerkesztése" #: ../src/gyrus-session.c:178 msgid "New session" msgstr "Új munkafolyamat" #: ../src/gyrus-session.c:357 msgid "A session name is required." msgstr "Adjon nevet a munkafolyamatnak." #: ../src/gyrus-session.c:368 #, c-format msgid "Session named \"%s\" already exists." msgstr "Már létezik munkafolyamat „%s” néven." #: ../src/gyrus-session.c:464 ../src/gyrus-session.c:598 msgid "Autodetect" msgstr "Automatikus felismerés" #: ../src/gyrus-session.c:549 msgid "Session" msgstr "Munkafolyamat" #: ../src/gyrus-session.c:718 msgid "No host specified." msgstr "Nincs megadva kiszolgáló." #: ../tests/gyrus-talk.xml.h:1 msgid "Talk - Echo client" msgstr "Talk - Echo kliens" #: ../tests/gyrus-talk.xml.h:5 msgid "_Connect" msgstr "_Csatlakozás" #: ../tests/gyrus-talk.xml.h:6 #| msgid "_Connect" msgid "Connection" msgstr "Kapcsolat" #: ../tests/gyrus-talk.xml.h:7 msgid "Command:" msgstr "Parancs:" #: ../tests/gyrus-talk.xml.h:8 msgid "_Send" msgstr "_Küldés" #~ msgid "*" #~ msgstr "*" #~ msgid "Name:" #~ msgstr "Név:" #~ msgid "Quota (MB):" #~ msgstr "Kvóta (MB):" #~ msgid "Create mailbox" #~ msgstr "Levélmappa létrehozása" #~ msgid "Find" #~ msgstr "Keresés" #~ msgid "Host:" #~ msgstr "Kiszolgáló:" #~ msgid "Port:" #~ msgstr "Port:" #~ msgid "User:" #~ msgstr "Felhasználó:" #~ msgid "Mailbox quota:" #~ msgstr "Levélmappa kvóta:" #~ msgid "Mailboxes tree:" #~ msgstr "Levélmappa fa:" #~ msgid "Default suffix for changing quota:" #~ msgstr "Alapértelmezett utótag a kvóta megváltoztatásához:" #~ msgid "Preferences" #~ msgstr "Beállítások" #~ msgid "View complete mailboxes tree" #~ msgstr "Teljes postafiók fanézetben" #~ msgid "" #~ ".\n" #~ "/\n" #~ "Autodetect" #~ msgstr "" #~ ".\n" #~ "/\n" #~ "Automatikus felismerés" #~ msgid "%s could not be found. Please check the name and try again." #~ msgstr "%s nem található. Ellenőrizze a nevet és próbálja meg újra." #~ msgid "_Disconnect" #~ msgstr "_Kilépés" #~ msgid "Connection" #~ msgstr "Kapcsolat" gyrus-0.4.2/po/meson.build000066400000000000000000000001501426522072200154440ustar00rootroot00000000000000i18n = import('i18n') i18n.gettext(meson.project_name(), args: '--directory=' + meson.source_root() ) gyrus-0.4.2/po/nb.po000066400000000000000000000267421426522072200142600ustar00rootroot00000000000000# Norwegian translation of evolution-data-server (bokmål dialect). # Copyright (C) 1998-2004, 2005 Free Software Foundation, Inc. # Kjartan Maraas , 1998-2008. # Terance Edward Sola , 2005. # msgid "" msgstr "" "Project-Id-Version: evolution-data-server 1.11.x\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-10-08 20:40+0200\n" "PO-Revision-Date: 2008-10-08 20:43+0200\n" "Last-Translator: Kjartan Maraas \n" "Language-Team: Norwegian Bokmal \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8-bit\n" #: ../gyrus.desktop.in.in.h:1 msgid "Administer the mailboxes of your IMAP Cyrus servers" msgstr "" #: ../gyrus.desktop.in.in.h:2 msgid "Gyrus IMAP Cyrus Administrator" msgstr "" #: ../src/glade/create_mailbox.glade.h:1 msgid "*" msgstr "*" #: ../src/glade/create_mailbox.glade.h:2 msgid "Name:" msgstr "" #: ../src/glade/create_mailbox.glade.h:3 msgid "Quota (MB):" msgstr "" #: ../src/glade/create_mailbox.glade.h:4 msgid "Assign quota" msgstr "" #: ../src/glade/create_mailbox.glade.h:5 msgid "Create mailbox" msgstr "" #: ../src/glade/find.glade.h:1 msgid "Find" msgstr "Finn" #: ../src/glade/find.glade.h:2 msgid "Match _entire word only" msgstr "" #: ../src/glade/find.glade.h:3 msgid "Search for:" msgstr "Søk etter:" #: ../src/glade/find.glade.h:4 msgid "_Wrap around" msgstr "" #: ../src/glade/page.glade.h:1 msgid "Assigned space:" msgstr "" #: ../src/glade/page.glade.h:2 msgid "Enter your password" msgstr "Oppgi ditt passord" #: ../src/glade/page.glade.h:3 msgid "Free space:" msgstr "Ledig plass:" #: ../src/glade/page.glade.h:4 msgid "Host:" msgstr "Vert: " #: ../src/glade/page.glade.h:5 msgid "Owner:" msgstr "Eier:" #: ../src/glade/page.glade.h:6 msgid "Port:" msgstr "Port: " #: ../src/glade/page.glade.h:7 msgid "User:" msgstr "Bruker:" #: ../src/glade/page.glade.h:8 msgid "Access control list" msgstr "" #: ../src/glade/page.glade.h:9 msgid "Modify quota" msgstr "" #: ../src/glade/page.glade.h:10 msgid "New quota (MB)" msgstr "" #: ../src/glade/page.glade.h:11 msgid "Password" msgstr "Passord" #: ../src/glade/page.glade.h:12 ../src/gyrus-admin.c:825 #: ../tests/gyrus-talk.glade.h:7 msgid "_Connect" msgstr "_Koble til" #: ../src/glade/preferences.glade.h:1 msgid "Mailbox quota:" msgstr "" #: ../src/glade/preferences.glade.h:2 msgid "Mailboxes tree:" msgstr "" #: ../src/glade/preferences.glade.h:3 msgid "Default suffix for changing quota:" msgstr "" #: ../src/glade/preferences.glade.h:4 msgid "Preferences" msgstr "Brukervalg" #: ../src/glade/preferences.glade.h:5 msgid "View complete mailboxes tree" msgstr "" #: ../src/glade/report.glade.h:2 #, no-c-format msgid "Over (%)" msgstr "Over (%)" #: ../src/glade/report.glade.h:3 msgid "Report" msgstr "Rapport" #. Translate only Autodetect please. #: ../src/glade/sessions.glade.h:2 msgid "" ".\n" "/\n" "Autodetect" msgstr "" #: ../src/glade/sessions.glade.h:5 msgid "Options" msgstr "Alternativer" #: ../src/glade/sessions.glade.h:6 #, fuzzy msgid "Session details" msgstr "Ko_ntakter " #: ../src/glade/sessions.glade.h:7 ../tests/gyrus-talk.glade.h:3 msgid "Host:" msgstr "" #: ../src/glade/sessions.glade.h:8 msgid "Mailbox hierarchy separator:" msgstr "" #: ../src/glade/sessions.glade.h:9 msgid "Open session" msgstr "" #: ../src/glade/sessions.glade.h:10 msgid "Password:" msgstr "Passord:" #: ../src/glade/sessions.glade.h:11 ../tests/gyrus-talk.glade.h:4 msgid "Port:" msgstr "Port:" #: ../src/glade/sessions.glade.h:12 #, fuzzy msgid "Session name:" msgstr "Tilgang nektet" #: ../src/glade/sessions.glade.h:13 ../tests/gyrus-talk.glade.h:6 msgid "Use a secure connection" msgstr "" #: ../src/glade/sessions.glade.h:14 msgid "Username:" msgstr "Brukernavn:" #: ../src/gyrus-admin-acl.c:54 ../src/gyrus-admin-acl.c:103 #, fuzzy, c-format msgid "Mailbox '%s' does not exist." msgstr "Mappen «%s» eksisterer ikke." #: ../src/gyrus-admin-acl.c:76 msgid "Invalid identifier." msgstr "Ugyldig identifikator." #: ../src/gyrus-admin-acl.c:82 msgid "Empty entry name." msgstr "" #: ../src/gyrus-admin-acl.c:87 msgid "Empty mailbox name." msgstr "" #: ../src/gyrus-admin-acl.c:107 msgid "Missing required argument to Setacl" msgstr "" #: ../src/gyrus-admin-acl.c:143 ../src/gyrus-admin-mailbox.c:82 msgid "Permission denied" msgstr "Tilgang nektet" #: ../src/gyrus-admin-acl.c:175 msgid "Empty access control list." msgstr "" #: ../src/gyrus-admin-mailbox.c:80 #, fuzzy msgid "Quota does not exist" msgstr "Mappen «%s» eksisterer ikke." #: ../src/gyrus-admin-mailbox.c:174 #, fuzzy, c-format msgid "Quota overloaded" msgstr "URI ble ikke lastet" #: ../src/gyrus-admin-mailbox.c:232 msgid "Quota not valid. Please try again." msgstr "" #: ../src/gyrus-admin-mailbox.c:246 msgid "" "Unable to change quota. Are you sure do you have the appropriate permissions?" msgstr "" #: ../src/gyrus-admin-mailbox.c:332 #, c-format msgid "'%s' is not a valid mailbox name. Please try a different one." msgstr "" #: ../src/gyrus-admin-mailbox.c:340 #, c-format msgid "" "Parent mailbox '%s' does not exist. Please refresh the mailboxes list and " "try again." msgstr "" #: ../src/gyrus-admin-mailbox.c:350 #, c-format msgid "Mailbox '%s' already exists. Please try a different name." msgstr "" #: ../src/gyrus-admin-mailbox.c:363 msgid "" "Unable to create the mailbox. Are you sure do you have the appropriate " "permissions?" msgstr "" #: ../src/gyrus-admin-mailbox.c:373 msgid "Mailbox created, but could not set quota." msgstr "" #: ../src/gyrus-admin-mailbox.c:437 #, c-format msgid "Unable to delete '%s'. Permission denied." msgstr "" #: ../src/gyrus-admin-mailbox.c:638 msgid "new entry" msgstr "" #: ../src/gyrus-admin.c:469 ../src/gyrus-report.c:269 #, c-format msgid "Users (%d)" msgstr "" #: ../src/gyrus-admin.c:475 #, fuzzy, c-format msgid "Orphaned mailboxes (%d)" msgstr "postboks:%s (%s)" #: ../src/gyrus-admin.c:519 ../src/gyrus-admin.c:834 msgid "Orphaned mailboxes" msgstr "" #: ../src/gyrus-admin.c:519 ../src/gyrus-admin.c:832 ../src/gyrus-report.c:150 msgid "Users" msgstr "Brukere" #: ../src/gyrus-admin.c:587 msgid "lookup" msgstr "" #: ../src/gyrus-admin.c:588 msgid "read" msgstr "les" #: ../src/gyrus-admin.c:589 msgid "seen" msgstr "sett" #: ../src/gyrus-admin.c:590 msgid "write" msgstr "skriv" #: ../src/gyrus-admin.c:591 msgid "insert" msgstr "sett inn" #: ../src/gyrus-admin.c:592 msgid "post" msgstr "post" #: ../src/gyrus-admin.c:593 msgid "create" msgstr "" #: ../src/gyrus-admin.c:594 msgid "delete" msgstr "slett" #: ../src/gyrus-admin.c:595 msgid "admin" msgstr "admin" #: ../src/gyrus-admin.c:603 msgid "Identifier" msgstr "" #: ../src/gyrus-admin.c:673 #, c-format msgid "%s could not be found. Please check the name and try again." msgstr "" #: ../src/gyrus-admin.c:684 #, fuzzy, c-format msgid "Could not connect to %s, port %d." msgstr "Kunne ikke koble til %s (port %s): %s" #: ../src/gyrus-admin.c:982 msgid "Unable to connect with empty passwords. Please introduce your password." msgstr "" #: ../src/gyrus-admin.c:989 msgid "Incorrect login/password" msgstr "" #: ../src/gyrus-admin.c:997 msgid "_Disconnect" msgstr "" #: ../src/gyrus-admin.c:1350 #, fuzzy msgid "Could not change permission. Server error: " msgstr "Kunne ikke avbryte operasjon" #: ../src/gyrus-admin.c:1393 #, c-format msgid "An entry called '%s' already exists. Overwrite it?" msgstr "" #: ../src/gyrus-dialog-find-mailbox.c:172 #, c-format msgid "The text '%s' was not found in the mailbox list." msgstr "" #: ../src/gyrus-dialog-find-mailbox.c:276 #, fuzzy msgid "Find mailbox" msgstr "Sendmail" #: ../src/gyrus-dialog-mailbox-new.c:94 #, fuzzy msgid "Quota not valid" msgstr "CRL er ikke gyldig ennå" #: ../src/gyrus-dialog-mailbox-new.c:217 msgid "New mailbox" msgstr "" #: ../src/gyrus-main-app.c:133 #, c-format msgid "Really delete mailbox '%s' and all of its submailboxes?" msgstr "" #: ../src/gyrus-main-app.c:255 ../src/gyrus-main-app.c:435 msgid "Cyrus IMAP Administrator" msgstr "" #: ../src/gyrus-main-app.c:269 #, c-format msgid "%s - Cyrus IMAP Administrator" msgstr "" #: ../src/gyrus-main-app.c:379 msgid "_File" msgstr "_Fil" #: ../src/gyrus-main-app.c:380 msgid "_Edit" msgstr "R_ediger" #: ../src/gyrus-main-app.c:381 msgid "_ACL" msgstr "_ACL" #: ../src/gyrus-main-app.c:382 msgid "_View" msgstr "_Vis" #: ../src/gyrus-main-app.c:383 msgid "_Help" msgstr "_Hjelp" #: ../src/gyrus-main-app.c:384 #, fuzzy msgid "Go to server..." msgstr "Kobler til LDAP-tjener på nytt..." #: ../src/gyrus-main-app.c:385 msgid "Show the list of servers" msgstr "" #: ../src/gyrus-main-app.c:395 msgid "Add mailbox" msgstr "" #: ../src/gyrus-main-app.c:396 msgid "Add a mailbox under the one selected" msgstr "" #: ../src/gyrus-main-app.c:398 msgid "Search for a mailbox in current server" msgstr "" #: ../src/gyrus-main-app.c:400 msgid "Refresh the mailbox list" msgstr "" #: ../src/gyrus-main-app.c:401 msgid "Create report..." msgstr "" #: ../src/gyrus-main-app.c:402 msgid "Create report of users with quota problems" msgstr "" #: ../src/gyrus-main-app.c:406 msgid "New entry" msgstr "" #: ../src/gyrus-main-app.c:407 msgid "Create a new ACL entry in current mailbox" msgstr "" #: ../src/gyrus-main-app.c:408 msgid "Remove mailbox" msgstr "" #: ../src/gyrus-main-app.c:409 #, fuzzy msgid "Remove current mailbox from the server" msgstr "Ingen svar fra tjener" #: ../src/gyrus-main-app.c:414 msgid "Rename entry" msgstr "" #: ../src/gyrus-main-app.c:415 msgid "Rename selected ACL entry" msgstr "" #: ../src/gyrus-main-app.c:416 #, fuzzy msgid "Delete entry" msgstr "Slettede oppføringer" #: ../src/gyrus-main-app.c:417 msgid "Delete selected ACL entry" msgstr "" #: ../src/gyrus-main-app.c:534 msgid "translators-credits" msgstr "" #: ../src/gyrus-main-app.c:544 msgid "GNOME Cyrus Administrator" msgstr "" #: ../src/gyrus-main-app.c:546 msgid "" "(c) 2003-2005 GNOME Foundation\n" "(c) 2004-2005 Claudio Saavedra" msgstr "" #: ../src/gyrus-main-app.c:548 msgid "Administration tool for Cyrus IMAP servers." msgstr "" #. set title #: ../src/gyrus-report.c:86 #, fuzzy, c-format msgid "Report: %s" msgstr "Finner: «%s»" #: ../src/gyrus-report.c:171 ../src/gyrus-report.c:462 msgid "Quota (%)" msgstr "" #: ../src/gyrus-report.c:184 ../src/gyrus-report.c:465 msgid "Assigned (KB)" msgstr "" #: ../src/gyrus-report.c:195 ../src/gyrus-report.c:468 msgid "Used (KB)" msgstr "" #: ../src/gyrus-report.c:388 msgid "Print Report" msgstr "" #. /my_status_bar_print ("Print previewing ..."); #: ../src/gyrus-report.c:431 msgid "Preview" msgstr "" #: ../src/gyrus-report.c:459 msgid "User" msgstr "Bruker" #: ../src/gyrus-session.c:164 msgid "Edit session" msgstr "Rediger sesjon" #: ../src/gyrus-session.c:178 msgid "New session" msgstr "Ny sesjon" #: ../src/gyrus-session.c:357 msgid "A session name is required." msgstr "" #: ../src/gyrus-session.c:368 #, fuzzy, c-format msgid "Session named \"%s\" already exists." msgstr "Mappen eksisterer allerede" #: ../src/gyrus-session.c:465 msgid "Autodetect" msgstr "" #: ../src/gyrus-session.c:550 msgid "Session" msgstr "Sesjon" #: ../src/gyrus-session.c:702 msgid "No host specified." msgstr "" #: ../tests/gyrus-talk.glade.h:1 #, fuzzy msgid "Connection" msgstr "Ko_ntakter " #: ../tests/gyrus-talk.glade.h:2 msgid "Command:" msgstr "Kommando:" #: ../tests/gyrus-talk.glade.h:5 msgid "Talk - Echo client" msgstr "" #: ../tests/gyrus-talk.glade.h:8 msgid "_Send" msgstr "_Send" gyrus-0.4.2/po/nl.po000066400000000000000000000321611426522072200142620ustar00rootroot00000000000000# Alleyoop Dutch translation # Copyright (C) 2003 THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the Alleyoop package. # Jan-Willem Harmanny , 2003. # Tino Meinen , 2004, 2005 # msgid "" msgstr "" "Project-Id-Version: gyrus cvs\n" "Report-Msgid-Bugs-To: vertaling@vrijschrift.org\n" "POT-Creation-Date: 2005-09-28 11:43+0200\n" "PO-Revision-Date: 2005-07-09 13:39+0200\n" "Last-Translator: Vincent van Adrighem adrighem@gnome.org>\n" "Language-Team: Dutch \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../gyrus.desktop.in.h:1 msgid "Administer the mailboxes of your IMAP Cyrus servers" msgstr "" #: ../gyrus.desktop.in.h:2 #, fuzzy msgid "Gyrus IMAP Cyrus Administrator" msgstr "Systeembeheerder" #: ../src/glade/create_mailbox.glade.h:1 msgid "*" msgstr "*" #: ../src/glade/create_mailbox.glade.h:2 msgid "Name:" msgstr "Naam:" #: ../src/glade/create_mailbox.glade.h:3 #, fuzzy msgid "Quota (MB):" msgstr "Opmerkingen:" #: ../src/glade/create_mailbox.glade.h:4 #, fuzzy msgid "Assign quota" msgstr "Taak Toewijzen" #: ../src/glade/create_mailbox.glade.h:5 #, fuzzy msgid "Create mailbox" msgstr "Aanmaken postbus" #: ../src/glade/find.glade.h:1 msgid "Find" msgstr "Zoeken" #: ../src/glade/find.glade.h:2 msgid "Match _entire word only" msgstr "Pas alleen compl_ete woorden" #: ../src/glade/find.glade.h:3 msgid "Search for:" msgstr "Zoeken naar:" #: ../src/glade/find.glade.h:4 msgid "_Wrap around" msgstr "Tekst laten doorlopen" #: ../src/glade/page.glade.h:1 #, fuzzy msgid "Assigned space:" msgstr "Witruimtes" #: ../src/glade/page.glade.h:2 #, fuzzy msgid "Enter your password" msgstr "Voer wachtwoord in" # betere vertaling? #: ../src/glade/page.glade.h:3 #, fuzzy msgid "Free space:" msgstr "Naamruimte" #: ../src/glade/page.glade.h:4 #, fuzzy msgid "Host:" msgstr "_Computer:" #: ../src/glade/page.glade.h:5 msgid "Owner:" msgstr "Eigenaar:" #: ../src/glade/page.glade.h:6 #, fuzzy msgid "Port:" msgstr "_Poort:" #: ../src/glade/page.glade.h:7 #, fuzzy msgid "User:" msgstr "_Gebruiker:" #: ../src/glade/page.glade.h:8 #, fuzzy msgid "Access control list" msgstr "Toegangsbeheer" #: ../src/glade/page.glade.h:9 #, fuzzy msgid "Modify quota" msgstr "Woord aanpassen" #: ../src/glade/page.glade.h:10 #, fuzzy msgid "New quota (MB)" msgstr "Nieuwe grootte (MB):" #: ../src/glade/page.glade.h:11 msgid "Password" msgstr "Wachtwoord" # wat voor context? #: ../src/glade/page.glade.h:12 ../src/gyrus-admin.c:709 msgid "_Connect" msgstr "_Verbinden" #: ../src/glade/preferences.glade.h:1 #, fuzzy msgid "Mailbox quota:" msgstr "Favoriet:" #: ../src/glade/preferences.glade.h:2 #, fuzzy msgid "Mailboxes tree:" msgstr "Mappenfilter" #: ../src/glade/preferences.glade.h:3 #, fuzzy msgid "Default suffix for changing quota:" msgstr "Standaard waarschuwingstijd voor geluidsalarm" #: ../src/glade/preferences.glade.h:4 msgid "Preferences" msgstr "Voorkeuren" #: ../src/glade/preferences.glade.h:5 #, fuzzy msgid "View complete mailboxes tree" msgstr "Verberg voltooide _taken na" #: ../src/glade/report.glade.h:2 #, fuzzy, no-c-format msgid "Over (%)" msgstr "Gebruiker (%)" #: ../src/glade/report.glade.h:3 ../src/schemas/gyrus.xml.h:9 msgid "Report" msgstr "Rapportage" #. Translate only Autodetect please. #: ../src/glade/sessions.glade.h:2 #, fuzzy msgid "" ".\n" "/\n" "Autodetect" msgstr "_Automatisch detecteren" #: ../src/glade/sessions.glade.h:5 msgid "Options" msgstr "Opties" # ui/preferences.glade.h:50 #: ../src/glade/sessions.glade.h:6 #, fuzzy msgid "Session details" msgstr "Sessie" #: ../src/glade/sessions.glade.h:7 #, fuzzy msgid "Note: Uses a hostname or IP address" msgstr "Opmerking: # (enumerator)." #: ../src/glade/sessions.glade.h:8 msgid "Host:" msgstr "Host:" #: ../src/glade/sessions.glade.h:9 #, fuzzy msgid "Mailbox hierarchy separator:" msgstr "Voorwaarden hierarchie fout" # ui/preferences.glade.h:125 #: ../src/glade/sessions.glade.h:10 #, fuzzy msgid "Open session" msgstr "Een sessie openen" #: ../src/glade/sessions.glade.h:11 msgid "Password:" msgstr "Wachtwoord:" #: ../src/glade/sessions.glade.h:12 msgid "Port:" msgstr "Poort:" #: ../src/glade/sessions.glade.h:13 #, fuzzy msgid "Save as:" msgstr "Opslaan als" #: ../src/glade/sessions.glade.h:14 #, fuzzy msgid "Use a secure connection" msgstr "Beveiligde verbinding (SSL) gebr_uiken:" #: ../src/glade/sessions.glade.h:15 msgid "Username:" msgstr "Gebruikersnaam:" #: ../src/gyrus-admin-acl.c:51 ../src/gyrus-admin-acl.c:99 #, fuzzy, c-format msgid "Mailbox '%s' does not exist." msgstr "Postbus bestaat niet." #: ../src/gyrus-admin-acl.c:72 #, fuzzy msgid "Invalid identifier." msgstr "Ongeldige interface" #: ../src/gyrus-admin-acl.c:78 #, fuzzy msgid "Empty entry name." msgstr "Ingang naam" #: ../src/gyrus-admin-acl.c:83 #, fuzzy msgid "Empty mailbox name." msgstr "Ongeldige postbusnaam" #: ../src/gyrus-admin-acl.c:103 #, fuzzy msgid "Missing required argument to Setacl" msgstr "Vereiste objecten ontbreken!" #: ../src/gyrus-admin-acl.c:139 ../src/gyrus-admin-mailbox.c:78 msgid "Permission denied" msgstr "Operatie niet toegestaan" #: ../src/gyrus-admin-acl.c:171 #, fuzzy msgid "Empty access control list." msgstr "Toegangsbeheer" #: ../src/gyrus-admin-mailbox.c:76 #, fuzzy msgid "Quota does not exists" msgstr "bestaat niet" #: ../src/gyrus-admin-mailbox.c:170 #, fuzzy msgid "Quota overloaded" msgstr "Niet geladen" #: ../src/gyrus-admin-mailbox.c:226 #, fuzzy msgid "Quota not valid. Please try again." msgstr "Probeert u het nog eens." #: ../src/gyrus-admin-mailbox.c:240 #, fuzzy msgid "" "Unable to change quota. Are you sure do you have the appropiate permissions?" msgstr "Zorg ervoor dat u de benodigde schrijfrechten heeft." #: ../src/gyrus-admin-mailbox.c:324 #, fuzzy, c-format msgid "'%s' is not a valid mailbox name. Please try a different one." msgstr "De naam \"%s\" is ongeldig. Gelieve een andere naam te kiezen." #: ../src/gyrus-admin-mailbox.c:332 #, fuzzy, c-format msgid "" "Parent mailbox '%s' does not exist. Please refresh the mailboxes list and " "try again." msgstr "" "De GDM-gebruiker bestaat niet. Corrigeer alstublieft de configuratie %s en " "herstart GDM." # kies ipv gebruik #: ../src/gyrus-admin-mailbox.c:342 #, fuzzy, c-format msgid "Mailbox '%s' already exists. Please try a different name." msgstr "Een map genaamd \"%s\" bestaat al. Kies een andere naam." #: ../src/gyrus-admin-mailbox.c:355 #, fuzzy msgid "" "Unable to create the mailbox. Are you sure do you have the appropiate " "permissions?" msgstr "" "Kan het bestand \"%s\" niet maken.\n" "\n" "Zorg ervoor dat U de benodigde schrijfrechten heeft." #: ../src/gyrus-admin-mailbox.c:365 msgid "Mailbox created, but could not set quota." msgstr "" #: ../src/gyrus-admin-mailbox.c:419 #, fuzzy, c-format msgid "Unable to delete '%s'. Permission denied." msgstr "Verwijderen van partitie mislukt!" #: ../src/gyrus-admin-mailbox.c:620 #, fuzzy msgid "new entry" msgstr "geen ingang" #: ../src/gyrus-admin.c:397 ../src/gyrus-report.c:264 #, fuzzy, c-format msgid "Users (%d)" msgstr "Gebruiker (%)" #: ../src/gyrus-admin.c:415 ../src/gyrus-admin.c:718 ../src/gyrus-report.c:148 msgid "Users" msgstr "Gebruikers" #: ../src/gyrus-admin.c:485 #, fuzzy msgid "lookup" msgstr "Opzoeken" # klaar #: ../src/gyrus-admin.c:486 #, fuzzy msgid "read" msgstr "voltooid" #: ../src/gyrus-admin.c:487 #, fuzzy msgid "seen" msgstr "zeven" #: ../src/gyrus-admin.c:488 #, fuzzy msgid "write" msgstr "wit" #: ../src/gyrus-admin.c:489 #, fuzzy msgid "insert" msgstr "Invoegen" #: ../src/gyrus-admin.c:490 #, fuzzy msgid "post" msgstr "postadres" #: ../src/gyrus-admin.c:491 #, fuzzy msgid "create" msgstr "Aanmaken" #: ../src/gyrus-admin.c:492 msgid "delete" msgstr "verwijderen" #: ../src/gyrus-admin.c:493 #, fuzzy msgid "admin" msgstr "min" #: ../src/gyrus-admin.c:499 msgid "Identifier" msgstr "Identificatie" #: ../src/gyrus-admin.c:569 #, fuzzy, c-format msgid "%s could not be found. Please check the name and try again." msgstr "" "Bestand %s kon niet worden gevonden. Controleer alstublieft uw installatie." # kon geen verbinding maken/kon niet verbinden #: ../src/gyrus-admin.c:580 #, fuzzy, c-format msgid "Could not connect to %s, port %d." msgstr "Kon niet verbinden met %s (poort %s): %s" #: ../src/gyrus-admin.c:831 msgid "Unable to connect with empty passwords. Please introduce your password." msgstr "" # invoeren hier met opzet weggelaten #: ../src/gyrus-admin.c:838 #, fuzzy msgid "Incorrect login/password" msgstr "Onjuist wachtwoord" #: ../src/gyrus-admin.c:846 msgid "_Disconnect" msgstr "Verbinding ver_breken" #: ../src/gyrus-admin.c:1215 #, fuzzy msgid "Could not change permission. Server error: " msgstr "Kon de rechten voor de map niet instellen" #: ../src/gyrus-admin.c:1256 #, fuzzy, c-format msgid "An entry called '%s' already exists. Overwrite it?" msgstr "Het bestand %s bestaat al. Wilt u het overschrijven?" #: ../src/gyrus-dialog-find-mailbox.c:156 #, fuzzy, c-format msgid "The text '%s' was not found in the mailbox list." msgstr "De tekst '%s' is niet gevonden." #: ../src/gyrus-dialog-find-mailbox.c:257 #, fuzzy msgid "Find mailbox" msgstr "Kan uw postbus niet vinden" #: ../src/gyrus-dialog-mailbox-new.c:80 #, fuzzy msgid "Quota not valid" msgstr "Ongeldig formaat" #: ../src/gyrus-dialog-mailbox-new.c:236 #, fuzzy msgid "New mailbox" msgstr "Nieuwe mailbox..." #: ../src/gyrus-main-app.c:134 #, fuzzy, c-format msgid "Really delete mailbox '%s' and all of its submailboxes?" msgstr "De map \"{0}\" en alle submappen echt verwijderen?" #: ../src/gyrus-main-app.c:278 ../src/gyrus-main-app.c:416 #, fuzzy msgid "Cyrus IMAP Administrator" msgstr "Systeembeheerder" #: ../src/gyrus-main-app.c:294 #, fuzzy, c-format msgid "%s - Cyrus IMAP Administrator" msgstr "Systeembeheerder" #: ../src/gyrus-main-app.c:488 #, fuzzy msgid "translators-credits" msgstr "" "Vincent van Adrighem\n" "Michiel Sikkes\n" "Tino Meinen\n" "Zie ook nl.gnome.org" #: ../src/gyrus-main-app.c:498 #, fuzzy msgid "GNOME Cyrus Administrator" msgstr "Systeembeheerder" #: ../src/gyrus-main-app.c:500 msgid "" "(c) 2003-2005 GNOME Foundation\n" "(c) 2004-2005 Claudio Saavedra" msgstr "" #: ../src/gyrus-main-app.c:502 #, fuzzy msgid "Administration tool for Cyrus IMAP servers." msgstr "Administratie voor gcompris" #. set title #: ../src/gyrus-report.c:84 #, fuzzy, c-format msgid "Report: %s" msgstr "Rapporten" #: ../src/gyrus-report.c:169 ../src/gyrus-report.c:456 #, fuzzy msgid "Quota (%)" msgstr "Totaal (%)" #: ../src/gyrus-report.c:182 ../src/gyrus-report.c:459 #, fuzzy msgid "Assigned (KB)" msgstr "Toegewezen" #: ../src/gyrus-report.c:193 ../src/gyrus-report.c:462 #, fuzzy msgid "Used (KB)" msgstr "Gebruikt(MB)" #: ../src/gyrus-report.c:382 #, fuzzy msgid "Print Report" msgstr "Bereik Afdrukken" #. /my_status_bar_print ("Print previewing ..."); #: ../src/gyrus-report.c:425 msgid "Preview" msgstr "Voorbeeld" #: ../src/gyrus-report.c:453 msgid "User" msgstr "Gebruiker" #: ../src/gyrus-session.c:164 #, fuzzy msgid "Edit session" msgstr "Sessienaam bewerken" #: ../src/gyrus-session.c:178 #, fuzzy msgid "New session" msgstr "Nieuwe versie" #: ../src/gyrus-session.c:340 #, fuzzy msgid "A session name is required." msgstr "Een hostnaam is vereist" #: ../src/gyrus-session.c:351 #, fuzzy, c-format msgid "Session named \"%s\" already exists." msgstr "Een bestand genaamd \"%s\" bestaad al." #: ../src/gyrus-session.c:389 #, fuzzy msgid "Session saved" msgstr "Sessienaam" #: ../src/gyrus-session.c:450 #, fuzzy msgid "Autodetect" msgstr "_Automatisch detecteren" #: ../src/gyrus-session.c:540 msgid "Session" msgstr "Sessie" #: ../src/gyrus-session.c:691 #, fuzzy msgid "No host specified." msgstr "Geen computer gegeven" # een rand om de selectie zetten #: ../src/schemas/gyrus.xml.h:1 #, fuzzy msgid "Add a mailbox under the one selected" msgstr "Een rand aan de selectie toevoegen" #: ../src/schemas/gyrus.xml.h:2 #, fuzzy msgid "Add mailbox" msgstr "brievenbus" #: ../src/schemas/gyrus.xml.h:3 #, fuzzy msgid "Delete entry" msgstr "Aantekening _verwijderen" #: ../src/schemas/gyrus.xml.h:4 #, fuzzy msgid "Go to server..." msgstr "_Verbinden met server..." #: ../src/schemas/gyrus.xml.h:5 #, fuzzy msgid "New entry" msgstr "Nieuwe ingang..." #: ../src/schemas/gyrus.xml.h:6 #, fuzzy msgid "Remove current mailbox from the server" msgstr "De gebruikte weergave uit de buffer verwijderen" #: ../src/schemas/gyrus.xml.h:7 #, fuzzy msgid "Remove mailbox" msgstr "Alles verwijderen" #: ../src/schemas/gyrus.xml.h:8 #, fuzzy msgid "Rename entry" msgstr "Gebruiker hernoemen" #: ../src/schemas/gyrus.xml.h:10 #, fuzzy msgid "Shows the list of servers" msgstr "Toont de laatste pagina" #: ../src/schemas/gyrus.xml.h:11 #, fuzzy msgid "_ACL" msgstr "AC" #: ../src/schemas/gyrus.xml.h:12 msgid "_Edit" msgstr "Be_werken" #: ../src/schemas/gyrus.xml.h:13 msgid "_File" msgstr "_Bestand" #: ../src/schemas/gyrus.xml.h:14 msgid "_Help" msgstr "_Hulp" #: ../src/schemas/gyrus.xml.h:15 msgid "_View" msgstr "Beel_d" gyrus-0.4.2/po/oc.po000066400000000000000000000260771426522072200142630ustar00rootroot00000000000000# Translation of oc.po to Occitan # Occitan translation of gyrus. # Copyright (C) 2004-2007 The Free Software Foundation, Inc. # This file is distributed under the same license as the gyrus package. # # Yannig Marchegay (Kokoyaya) , 2006-2008. msgid "" msgstr "" "Project-Id-Version: oc\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-03-07 10:22+0100\n" "PO-Revision-Date: 2007-12-23 13:07+0100\n" "Last-Translator: Yannig Marchegay (Kokoyaya) \n" "Language-Team: Occitan \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" #: ../gyrus.desktop.in.in.h:1 msgid "Administer the mailboxes of your IMAP Cyrus servers" msgstr "" #: ../gyrus.desktop.in.in.h:2 msgid "Gyrus IMAP Cyrus Administrator" msgstr "" #: ../src/glade/create_mailbox.glade.h:1 msgid "*" msgstr "*" #: ../src/glade/create_mailbox.glade.h:2 msgid "Name:" msgstr "Nom :" #: ../src/glade/create_mailbox.glade.h:3 msgid "Quota (MB):" msgstr "" #: ../src/glade/create_mailbox.glade.h:4 msgid "Assign quota" msgstr "" #: ../src/glade/create_mailbox.glade.h:5 msgid "Create mailbox" msgstr "" #: ../src/glade/find.glade.h:1 msgid "Find" msgstr "Recercar" #: ../src/glade/find.glade.h:2 msgid "Match _entire word only" msgstr "" #: ../src/glade/find.glade.h:3 msgid "Search for:" msgstr "" #: ../src/glade/find.glade.h:4 msgid "_Wrap around" msgstr "" #: ../src/glade/page.glade.h:1 msgid "Assigned space:" msgstr "" #: ../src/glade/page.glade.h:2 msgid "Enter your password" msgstr "" #: ../src/glade/page.glade.h:3 msgid "Free space:" msgstr "" #: ../src/glade/page.glade.h:4 msgid "Host:" msgstr "" #: ../src/glade/page.glade.h:5 msgid "Owner:" msgstr "Propietari :" #: ../src/glade/page.glade.h:6 msgid "Port:" msgstr "" #: ../src/glade/page.glade.h:7 msgid "User:" msgstr "" #: ../src/glade/page.glade.h:8 msgid "Access control list" msgstr "" #: ../src/glade/page.glade.h:9 msgid "Modify quota" msgstr "" #: ../src/glade/page.glade.h:10 msgid "New quota (MB)" msgstr "" #: ../src/glade/page.glade.h:11 msgid "Password" msgstr "Mot de pas" #: ../src/glade/page.glade.h:12 ../src/gyrus-admin.c:825 #: ../tests/gyrus-talk.glade.h:7 msgid "_Connect" msgstr "Se _connectar" #: ../src/glade/preferences.glade.h:1 msgid "Mailbox quota:" msgstr "" #: ../src/glade/preferences.glade.h:2 msgid "Mailboxes tree:" msgstr "" #: ../src/glade/preferences.glade.h:3 msgid "Default suffix for changing quota:" msgstr "" #: ../src/glade/preferences.glade.h:4 msgid "Preferences" msgstr "Preferéncias" #: ../src/glade/preferences.glade.h:5 msgid "View complete mailboxes tree" msgstr "" #: ../src/glade/report.glade.h:2 #, no-c-format msgid "Over (%)" msgstr "" #: ../src/glade/report.glade.h:3 msgid "Report" msgstr "Rapòrt" #. Translate only Autodetect please. #: ../src/glade/sessions.glade.h:2 msgid "" ".\n" "/\n" "Autodetect" msgstr "" #: ../src/glade/sessions.glade.h:5 msgid "Options" msgstr "Opcions" #: ../src/glade/sessions.glade.h:6 msgid "Session details" msgstr "" #: ../src/glade/sessions.glade.h:7 ../tests/gyrus-talk.glade.h:3 msgid "Host:" msgstr "Òste :" #: ../src/glade/sessions.glade.h:8 msgid "Mailbox hierarchy separator:" msgstr "" #: ../src/glade/sessions.glade.h:9 msgid "Open session" msgstr "" #: ../src/glade/sessions.glade.h:10 msgid "Password:" msgstr "Mot de pas :" #: ../src/glade/sessions.glade.h:11 ../tests/gyrus-talk.glade.h:4 msgid "Port:" msgstr "Pòrt :" #: ../src/glade/sessions.glade.h:12 msgid "Session name:" msgstr "" #: ../src/glade/sessions.glade.h:13 ../tests/gyrus-talk.glade.h:6 msgid "Use a secure connection" msgstr "" #: ../src/glade/sessions.glade.h:14 msgid "Username:" msgstr "Nom d'utilizaire :" #: ../src/gyrus-admin-acl.c:54 ../src/gyrus-admin-acl.c:103 #, c-format msgid "Mailbox '%s' does not exist." msgstr "" #: ../src/gyrus-admin-acl.c:76 msgid "Invalid identifier." msgstr "" #: ../src/gyrus-admin-acl.c:82 msgid "Empty entry name." msgstr "" #: ../src/gyrus-admin-acl.c:87 msgid "Empty mailbox name." msgstr "" #: ../src/gyrus-admin-acl.c:107 msgid "Missing required argument to Setacl" msgstr "" #: ../src/gyrus-admin-acl.c:143 ../src/gyrus-admin-mailbox.c:82 msgid "Permission denied" msgstr "" #: ../src/gyrus-admin-acl.c:175 msgid "Empty access control list." msgstr "" #: ../src/gyrus-admin-mailbox.c:80 msgid "Quota does not exist" msgstr "" #: ../src/gyrus-admin-mailbox.c:174 #, c-format msgid "Quota overloaded" msgstr "" #: ../src/gyrus-admin-mailbox.c:232 msgid "Quota not valid. Please try again." msgstr "" #: ../src/gyrus-admin-mailbox.c:246 msgid "" "Unable to change quota. Are you sure do you have the appropriate permissions?" msgstr "" #: ../src/gyrus-admin-mailbox.c:332 #, c-format msgid "'%s' is not a valid mailbox name. Please try a different one." msgstr "" #: ../src/gyrus-admin-mailbox.c:340 #, c-format msgid "" "Parent mailbox '%s' does not exist. Please refresh the mailboxes list and " "try again." msgstr "" #: ../src/gyrus-admin-mailbox.c:350 #, c-format msgid "Mailbox '%s' already exists. Please try a different name." msgstr "" #: ../src/gyrus-admin-mailbox.c:363 msgid "" "Unable to create the mailbox. Are you sure do you have the appropriate " "permissions?" msgstr "" #: ../src/gyrus-admin-mailbox.c:373 msgid "Mailbox created, but could not set quota." msgstr "" #: ../src/gyrus-admin-mailbox.c:437 #, c-format msgid "Unable to delete '%s'. Permission denied." msgstr "" #: ../src/gyrus-admin-mailbox.c:638 msgid "new entry" msgstr "" #: ../src/gyrus-admin.c:469 ../src/gyrus-report.c:269 #, c-format msgid "Users (%d)" msgstr "" #: ../src/gyrus-admin.c:475 #, c-format msgid "Orphaned mailboxes (%d)" msgstr "" #: ../src/gyrus-admin.c:519 ../src/gyrus-admin.c:834 msgid "Orphaned mailboxes" msgstr "" #: ../src/gyrus-admin.c:519 ../src/gyrus-admin.c:832 ../src/gyrus-report.c:150 msgid "Users" msgstr "Utilizaires" #: ../src/gyrus-admin.c:587 msgid "lookup" msgstr "" #: ../src/gyrus-admin.c:588 msgid "read" msgstr "lectura" #: ../src/gyrus-admin.c:589 msgid "seen" msgstr "" #: ../src/gyrus-admin.c:590 msgid "write" msgstr "escritura" #: ../src/gyrus-admin.c:591 msgid "insert" msgstr "" #: ../src/gyrus-admin.c:592 msgid "post" msgstr "" #: ../src/gyrus-admin.c:593 msgid "create" msgstr "" #: ../src/gyrus-admin.c:594 msgid "delete" msgstr "suprimir" #: ../src/gyrus-admin.c:595 msgid "admin" msgstr "" #: ../src/gyrus-admin.c:603 msgid "Identifier" msgstr "" #: ../src/gyrus-admin.c:673 #, c-format msgid "%s could not be found. Please check the name and try again." msgstr "" #: ../src/gyrus-admin.c:684 #, c-format msgid "Could not connect to %s, port %d." msgstr "" #: ../src/gyrus-admin.c:982 msgid "Unable to connect with empty passwords. Please introduce your password." msgstr "" #: ../src/gyrus-admin.c:989 msgid "Incorrect login/password" msgstr "" #: ../src/gyrus-admin.c:997 msgid "_Disconnect" msgstr "_Desconnectar" #: ../src/gyrus-admin.c:1350 msgid "Could not change permission. Server error: " msgstr "" #: ../src/gyrus-admin.c:1393 #, c-format msgid "An entry called '%s' already exists. Overwrite it?" msgstr "" #: ../src/gyrus-dialog-find-mailbox.c:172 #, c-format msgid "The text '%s' was not found in the mailbox list." msgstr "" #: ../src/gyrus-dialog-find-mailbox.c:276 msgid "Find mailbox" msgstr "" #: ../src/gyrus-dialog-mailbox-new.c:94 msgid "Quota not valid" msgstr "" #: ../src/gyrus-dialog-mailbox-new.c:217 msgid "New mailbox" msgstr "" #: ../src/gyrus-main-app.c:133 #, c-format msgid "Really delete mailbox '%s' and all of its submailboxes?" msgstr "" #: ../src/gyrus-main-app.c:255 ../src/gyrus-main-app.c:435 msgid "Cyrus IMAP Administrator" msgstr "" #: ../src/gyrus-main-app.c:269 #, c-format msgid "%s - Cyrus IMAP Administrator" msgstr "" #: ../src/gyrus-main-app.c:379 msgid "_File" msgstr "_Fichièr" #: ../src/gyrus-main-app.c:380 msgid "_Edit" msgstr "_Edicion" #: ../src/gyrus-main-app.c:381 msgid "_ACL" msgstr "" #: ../src/gyrus-main-app.c:382 msgid "_View" msgstr "_Visualizacion" #: ../src/gyrus-main-app.c:383 msgid "_Help" msgstr "_Ajuda" #: ../src/gyrus-main-app.c:384 msgid "Go to server..." msgstr "" #: ../src/gyrus-main-app.c:385 msgid "Show the list of servers" msgstr "" #: ../src/gyrus-main-app.c:395 msgid "Add mailbox" msgstr "" #: ../src/gyrus-main-app.c:396 msgid "Add a mailbox under the one selected" msgstr "" #: ../src/gyrus-main-app.c:398 msgid "Search for a mailbox in current server" msgstr "" #: ../src/gyrus-main-app.c:400 msgid "Refresh the mailbox list" msgstr "" #: ../src/gyrus-main-app.c:401 msgid "Create report..." msgstr "" #: ../src/gyrus-main-app.c:402 msgid "Create report of users with quota problems" msgstr "" #: ../src/gyrus-main-app.c:406 msgid "New entry" msgstr "" #: ../src/gyrus-main-app.c:407 msgid "Create a new ACL entry in current mailbox" msgstr "" #: ../src/gyrus-main-app.c:408 msgid "Remove mailbox" msgstr "" #: ../src/gyrus-main-app.c:409 msgid "Remove current mailbox from the server" msgstr "" #: ../src/gyrus-main-app.c:414 msgid "Rename entry" msgstr "" #: ../src/gyrus-main-app.c:415 msgid "Rename selected ACL entry" msgstr "" #: ../src/gyrus-main-app.c:416 msgid "Delete entry" msgstr "" #: ../src/gyrus-main-app.c:417 msgid "Delete selected ACL entry" msgstr "" #: ../src/gyrus-main-app.c:534 msgid "translators-credits" msgstr "Yannig Marchegay (Kokoyaya) " #: ../src/gyrus-main-app.c:544 msgid "GNOME Cyrus Administrator" msgstr "" #: ../src/gyrus-main-app.c:546 msgid "" "(c) 2003-2005 GNOME Foundation\n" "(c) 2004-2005 Claudio Saavedra" msgstr "" #: ../src/gyrus-main-app.c:548 msgid "Administration tool for Cyrus IMAP servers." msgstr "" #. set title #: ../src/gyrus-report.c:86 #, c-format msgid "Report: %s" msgstr "" #: ../src/gyrus-report.c:171 ../src/gyrus-report.c:462 msgid "Quota (%)" msgstr "" #: ../src/gyrus-report.c:184 ../src/gyrus-report.c:465 msgid "Assigned (KB)" msgstr "" #: ../src/gyrus-report.c:195 ../src/gyrus-report.c:468 msgid "Used (KB)" msgstr "" #: ../src/gyrus-report.c:388 msgid "Print Report" msgstr "" #. /my_status_bar_print ("Print previewing ..."); #: ../src/gyrus-report.c:431 msgid "Preview" msgstr "Ulhada" #: ../src/gyrus-report.c:459 msgid "User" msgstr "Utilizaire" #: ../src/gyrus-session.c:164 msgid "Edit session" msgstr "" #: ../src/gyrus-session.c:178 msgid "New session" msgstr "" #: ../src/gyrus-session.c:357 msgid "A session name is required." msgstr "" #: ../src/gyrus-session.c:368 #, c-format msgid "Session named \"%s\" already exists." msgstr "" #: ../src/gyrus-session.c:465 msgid "Autodetect" msgstr "Deteccion automatica" #: ../src/gyrus-session.c:550 msgid "Session" msgstr "Sesilha" #: ../src/gyrus-session.c:702 msgid "No host specified." msgstr "" #: ../tests/gyrus-talk.glade.h:1 msgid "Connection" msgstr "Connexion" #: ../tests/gyrus-talk.glade.h:2 msgid "Command:" msgstr "Comanda :" #: ../tests/gyrus-talk.glade.h:5 msgid "Talk - Echo client" msgstr "" #: ../tests/gyrus-talk.glade.h:8 msgid "_Send" msgstr "_Enviar" gyrus-0.4.2/po/pl.po000066400000000000000000000324771426522072200142760ustar00rootroot00000000000000# -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- # Aviary.pl # Jeśli masz jakiekolwiek uwagi odnoszące się do tłumaczenia lub chcesz # pomóc w jego rozwijaniu i pielęgnowaniu, napisz do nas: # gnomepl@aviary.pl # -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- # Piotr Drąg , 2010-2015. # Aviary.pl , 2010-2015. msgid "" msgstr "" "Project-Id-Version: gyrus\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2015-09-03 02:12+0200\n" "PO-Revision-Date: 2015-09-03 02:13+0200\n" "Last-Translator: Piotr Drąg \n" "Language-Team: Polish \n" "Language: pl\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 " "|| n%100>=20) ? 1 : 2);\n" "X-Poedit-Language: Polish\n" "X-Poedit-Country: Poland\n" #: ../gyrus.desktop.in.in.h:1 msgid "Gyrus IMAP Cyrus Administrator" msgstr "Administrator IMAP Gyrus" #: ../gyrus.desktop.in.in.h:2 msgid "Administer the mailboxes of your IMAP Cyrus servers" msgstr "Administracja skrzynkami pocztowymi serwerów Cyrus protokołu IMAP" #: ../src/ui/create_mailbox.xml.h:1 msgid "Name:" msgstr "Nazwa:" #: ../src/ui/create_mailbox.xml.h:2 msgid "Quota (MB):" msgstr "Limit dyskowy (MB):" #: ../src/ui/create_mailbox.xml.h:3 msgid "Assign quota" msgstr "Dodaj limit dyskowy" #: ../src/ui/find.xml.h:1 msgid "Search for:" msgstr "Wyszukiwanie:" #: ../src/ui/find.xml.h:2 msgid "Match _entire word only" msgstr "Dopasowanie tylko _całych słów" #: ../src/ui/find.xml.h:3 msgid "_Wrap around" msgstr "Za_wijanie wierszy" #: ../src/ui/page.xml.h:1 msgid "Free space:" msgstr "Wolne miejsce:" #: ../src/ui/page.xml.h:2 msgid "Assigned space:" msgstr "Przydzielone miejsce:" #: ../src/ui/page.xml.h:3 msgid "Owner:" msgstr "Właściciel:" #: ../src/ui/page.xml.h:4 msgid "New quota (MB)" msgstr "Nowy limit dyskowy (MB)" #: ../src/ui/page.xml.h:5 msgid "Modify quota" msgstr "Modyfikuj limit dyskowy" #: ../src/ui/page.xml.h:6 msgid "Access control list" msgstr "Lista kontroli dostępu" #: ../src/ui/page.xml.h:7 ../src/ui/sessions_edit.xml.h:5 #: ../tests/gyrus-talk.xml.h:2 msgid "Host:" msgstr "Komputer:" #: ../src/ui/page.xml.h:8 msgid "User:" msgstr "Użytkownik:" #: ../src/ui/page.xml.h:9 ../src/ui/sessions_edit.xml.h:4 #: ../tests/gyrus-talk.xml.h:4 msgid "Port:" msgstr "Port:" #: ../src/ui/password.xml.h:1 msgid "Password" msgstr "Hasło" #: ../src/ui/password.xml.h:2 msgid "Enter your password" msgstr "Proszę wprowadzić hasło" #: ../src/ui/report.xml.h:1 msgid "Report" msgstr "Zgłoś" #: ../src/ui/report.xml.h:3 #, no-c-format msgid "Over (%)" msgstr "Ponad (%)" #: ../src/ui/sessions.xml.h:1 msgid "Open session" msgstr "Otwórz sesję" #: ../src/ui/sessions_edit.xml.h:1 msgid "Session name:" msgstr "Nazwa sesji:" #: ../src/ui/sessions_edit.xml.h:2 msgid "Password:" msgstr "Hasło:" #: ../src/ui/sessions_edit.xml.h:3 msgid "Username:" msgstr "Nazwa użytkownika:" #: ../src/ui/sessions_edit.xml.h:6 msgid "Session details" msgstr "Informacje o sesji" #: ../src/ui/sessions_edit.xml.h:7 ../tests/gyrus-talk.xml.h:3 msgid "Use a secure connection" msgstr "Bezpieczne połączenie" #: ../src/ui/sessions_edit.xml.h:8 msgid "Mailbox hierarchy separator:" msgstr "Odstęp hierarchii skrzynki pocztowej:" #: ../src/ui/sessions_edit.xml.h:9 msgid "Options" msgstr "Opcje" #: ../src/gyrus-admin-acl.c:53 ../src/gyrus-admin-acl.c:102 #, c-format msgid "Mailbox '%s' does not exist." msgstr "Skrzynka pocztowa „%s” nie istnieje." #: ../src/gyrus-admin-acl.c:75 msgid "Invalid identifier." msgstr "Nieprawidłowy identyfikator." #: ../src/gyrus-admin-acl.c:81 msgid "Empty entry name." msgstr "Pusta nazwa wpisu." #: ../src/gyrus-admin-acl.c:86 msgid "Empty mailbox name." msgstr "Pusta nazwa skrzynki pocztowej." #: ../src/gyrus-admin-acl.c:106 msgid "Missing required argument to Setacl" msgstr "Brak wymaganego parametru dla setacl" #: ../src/gyrus-admin-acl.c:142 ../src/gyrus-admin-mailbox.c:79 msgid "Permission denied" msgstr "Brak uprawnień" #: ../src/gyrus-admin-acl.c:174 msgid "Empty access control list." msgstr "Pusta lista kontroli dostępu." #: ../src/gyrus-admin-mailbox.c:77 msgid "Quota does not exist" msgstr "Limit dyskowy nie istnieje" #: ../src/gyrus-admin-mailbox.c:171 #, c-format msgid "Quota overloaded" msgstr "Przekroczono limit dyskowy" #: ../src/gyrus-admin-mailbox.c:229 msgid "Quota not valid. Please try again." msgstr "Limit dyskowy jest nieprawidłowy. Proszę spróbować ponownie." #: ../src/gyrus-admin-mailbox.c:243 msgid "" "Unable to change quota. Are you sure do you have the appropriate permissions?" msgstr "" "Nie można zmienić limitu dyskowego. Na pewno posiadane uprawnienia są " "odpowiednie?" #: ../src/gyrus-admin-mailbox.c:323 #, c-format msgid "'%s' is not a valid mailbox name. Please try a different one." msgstr "" "„%s” nie jest prawidłową nazwą skrzynki pocztowej. Proszę spróbować innej." #: ../src/gyrus-admin-mailbox.c:331 #, c-format msgid "" "Parent mailbox '%s' does not exist. Please refresh the mailboxes list and " "try again." msgstr "" "Nadrzędna skrzynka pocztowa „%s” nie istnieje. Proszę odświeżyć listę " "skrzynek pocztowych i spróbować ponownie." #: ../src/gyrus-admin-mailbox.c:341 #, c-format msgid "Mailbox '%s' already exists. Please try a different name." msgstr "Skrzynka pocztowa „%s” już istnieje. Proszę spróbować innej nazwy." #: ../src/gyrus-admin-mailbox.c:354 msgid "" "Unable to create the mailbox. Are you sure do you have the appropriate " "permissions?" msgstr "" "Nie można utworzyć skrzynki pocztowej. Na pewno posiadane uprawnienia są " "odpowiednie?" #: ../src/gyrus-admin-mailbox.c:365 msgid "Mailbox created, but could not set quota." msgstr "Utworzono skrzynkę pocztową, ale nie można ustawić limitu dyskowego." #: ../src/gyrus-admin-mailbox.c:432 #, c-format msgid "Unable to delete '%s'. Permission denied." msgstr "Nie można usunąć „%s”. Brak uprawnień." #: ../src/gyrus-admin-mailbox.c:633 msgid "new entry" msgstr "nowy wpis" #: ../src/gyrus-admin.c:446 ../src/gyrus-report.c:286 #, c-format msgid "Users (%d)" msgstr "Użytkownicy (%d)" #: ../src/gyrus-admin.c:452 #, c-format msgid "Orphaned mailboxes (%d)" msgstr "Porzucone skrzynki pocztowe (%d)" #: ../src/gyrus-admin.c:496 ../src/gyrus-admin.c:851 msgid "Orphaned mailboxes" msgstr "Porzucone skrzynki pocztowe" #: ../src/gyrus-admin.c:496 ../src/gyrus-admin.c:849 ../src/gyrus-report.c:167 msgid "Users" msgstr "Użytkownicy" #: ../src/gyrus-admin.c:564 msgid "lookup" msgstr "wyszukanie" #: ../src/gyrus-admin.c:565 msgid "read" msgstr "odczytanie" #: ../src/gyrus-admin.c:566 msgid "seen" msgstr "przeczytanie" #: ../src/gyrus-admin.c:567 msgid "write" msgstr "zapisanie" #: ../src/gyrus-admin.c:568 msgid "insert" msgstr "wstawienie" #: ../src/gyrus-admin.c:569 msgid "post" msgstr "opublikowanie" #: ../src/gyrus-admin.c:570 msgid "create" msgstr "utworzenie" #: ../src/gyrus-admin.c:571 msgid "delete" msgstr "usunięcie" #: ../src/gyrus-admin.c:572 msgid "admin" msgstr "administrowanie" #: ../src/gyrus-admin.c:580 msgid "Identifier" msgstr "Identyfikator" #: ../src/gyrus-admin.c:650 msgid "Couldn't create the client socket." msgstr "Nie można utworzyć gniazda klienta." #: ../src/gyrus-admin.c:658 msgid "Couldn't parse the server address." msgstr "Nie można przetworzyć adresu serwera." #: ../src/gyrus-admin.c:667 #, c-format msgid "Could not connect to %s, port %d." msgstr "Nie można połączyć się z %s, na porcie %d." #: ../src/gyrus-admin.c:997 msgid "Unable to connect with empty passwords. Please introduce your password." msgstr "Nie można łączyć się za pomocą pustych haseł. Proszę wprowadzić hasło." #: ../src/gyrus-admin.c:1004 msgid "Incorrect login/password" msgstr "Niepoprawny login/hasło" #: ../src/gyrus-admin.c:1360 msgid "Could not change permission. Server error: " msgstr "Nie można zmienić uprawnień. Błąd serwera: " #: ../src/gyrus-admin.c:1403 #, c-format msgid "An entry called '%s' already exists. Overwrite it?" msgstr "Wpis o nazwie „%s” już istnieje. Zastąpić go?" #: ../src/gyrus-dialog-find-mailbox.c:170 #, c-format msgid "The text '%s' was not found in the mailbox list." msgstr "Tekst „%s” nie został odnaleziony na liście skrzynek pocztowych." #: ../src/gyrus-dialog-find-mailbox.c:274 msgid "Find mailbox" msgstr "Wyszukiwanie skrzynki pocztowej" #: ../src/gyrus-dialog-mailbox-new.c:92 msgid "Quota not valid" msgstr "Limit dyskowy jest nieprawidłowy" #: ../src/gyrus-dialog-mailbox-new.c:219 msgid "New mailbox" msgstr "Nowa skrzynka pocztowa" #: ../src/gyrus-main-app.c:145 #, c-format msgid "Really delete mailbox '%s' and all of its submailboxes?" msgstr "" "Na pewno usunąć skrzynkę pocztową „%s” i wszystkie jej skrzynki podrzędne?" #: ../src/gyrus-main-app.c:260 ../src/gyrus-main-app.c:406 #: ../src/gyrus-main-app.c:702 msgid "Cyrus IMAP Administrator" msgstr "Administrator serwerów Cyrus protokołu IMAP" #: ../src/gyrus-main-app.c:274 #, c-format msgid "%s - Cyrus IMAP Administrator" msgstr "%s — administrator serwerów Cyrus protokołu IMAP" #: ../src/gyrus-main-app.c:353 msgid "_File" msgstr "_Plik" #: ../src/gyrus-main-app.c:354 msgid "_Edit" msgstr "_Edycja" #: ../src/gyrus-main-app.c:355 msgid "_ACL" msgstr "_ACL" #: ../src/gyrus-main-app.c:356 msgid "_View" msgstr "_Widok" #: ../src/gyrus-main-app.c:357 msgid "_Help" msgstr "Pomo_c" #: ../src/gyrus-main-app.c:358 msgid "Go to server..." msgstr "Przejdź do serwera…" #: ../src/gyrus-main-app.c:359 msgid "Show the list of servers" msgstr "Wyświetla listę serwerów" #: ../src/gyrus-main-app.c:367 msgid "Add mailbox" msgstr "Dodaj skrzynkę pocztową" #: ../src/gyrus-main-app.c:368 msgid "Add a mailbox under the one selected" msgstr "Dodaje skrzynkę pocztową pod zaznaczoną" #: ../src/gyrus-main-app.c:370 msgid "Search for a mailbox in current server" msgstr "Wyszukuje skrzynkę pocztową w bieżącym serwerze" #: ../src/gyrus-main-app.c:372 msgid "Refresh the mailbox list" msgstr "Odświeża listę skrzynek pocztowych" #: ../src/gyrus-main-app.c:373 msgid "Create report..." msgstr "Utwórz raport…" #: ../src/gyrus-main-app.c:374 msgid "Create report of users with quota problems" msgstr "Tworzy raport użytkowników z problemami z limitem dyskowym" #: ../src/gyrus-main-app.c:378 msgid "New entry" msgstr "Nowy wpis" #: ../src/gyrus-main-app.c:379 msgid "Create a new ACL entry in current mailbox" msgstr "Tworzy nowy wpis ACL w bieżącej skrzynce pocztowej" #: ../src/gyrus-main-app.c:380 msgid "Remove mailbox" msgstr "Usuń skrzynkę pocztową" #: ../src/gyrus-main-app.c:381 msgid "Remove current mailbox from the server" msgstr "Usuwa bieżącą skrzynkę pocztową z serwera" #: ../src/gyrus-main-app.c:386 msgid "Rename entry" msgstr "Zmień nazwę wpisu" #: ../src/gyrus-main-app.c:387 msgid "Rename selected ACL entry" msgstr "Zmienia nazwę zaznaczonego wpisu ACL" #: ../src/gyrus-main-app.c:388 msgid "Delete entry" msgstr "Usuń wpis" #: ../src/gyrus-main-app.c:389 msgid "Delete selected ACL entry" msgstr "Usuwa zaznaczony wpis ACL" #: ../src/gyrus-main-app.c:522 msgid "translators-credits" msgstr "" "Piotr Drąg , 2010-2015\n" "Aviary.pl , 2010-2015" #: ../src/gyrus-main-app.c:532 msgid "GNOME Cyrus Administrator" msgstr "Administrator serwerów Cyrus dla środowiska GNOME" #: ../src/gyrus-main-app.c:534 msgid "" "(c) 2003-2005 GNOME Foundation\n" "(c) 2004-2005 Claudio Saavedra" msgstr "" "© 2003-2005 Fundacja GNOME\n" "© 2004-2005 Claudio Saavedra" #: ../src/gyrus-main-app.c:536 msgid "Administration tool for Cyrus IMAP servers." msgstr "Narzędzie administracji serwerów Cyrus protokołu IMAP." #. set title #: ../src/gyrus-report.c:104 #, c-format msgid "Mailbox space usage report for %s" msgstr "Raport użycia miejsca skrzynki pocztowej dla %s" #: ../src/gyrus-report.c:188 ../src/gyrus-report.c:489 msgid "Quota (%)" msgstr "Limit dyskowy (%)" #: ../src/gyrus-report.c:201 ../src/gyrus-report.c:493 msgid "Assigned (KB)" msgstr "Przydzielone (KB)" #: ../src/gyrus-report.c:212 ../src/gyrus-report.c:497 msgid "Used (KB)" msgstr "Użyte (KB)" #. Translators: this represents the number of pages being printed. #: ../src/gyrus-report.c:462 #, c-format msgid "%d/%d" msgstr "%d/%d" #: ../src/gyrus-report.c:485 msgid "User" msgstr "Użytkownik" #: ../src/gyrus-session.c:163 msgid "Edit session" msgstr "Modyfikuj sesję" #: ../src/gyrus-session.c:177 msgid "New session" msgstr "Nowa sesja" #: ../src/gyrus-session.c:356 msgid "A session name is required." msgstr "Wymagana jest nazwa sesji." #: ../src/gyrus-session.c:367 #, c-format msgid "Session named \"%s\" already exists." msgstr "Sesja o nazwie „%s” już istnieje." #: ../src/gyrus-session.c:463 ../src/gyrus-session.c:597 msgid "Autodetect" msgstr "Automatyczne wykrywanie" #: ../src/gyrus-session.c:548 msgid "Session" msgstr "Sesja" #: ../src/gyrus-session.c:717 msgid "No host specified." msgstr "Nie podano komputera." #: ../tests/gyrus-talk.xml.h:1 msgid "Talk - Echo client" msgstr "Talk — klient polecenia echo" #: ../tests/gyrus-talk.xml.h:5 msgid "_Connect" msgstr "Połą_cz" #: ../tests/gyrus-talk.xml.h:6 msgid "Connection" msgstr "Połączenie" #: ../tests/gyrus-talk.xml.h:7 msgid "Command:" msgstr "Polecenie:" #: ../tests/gyrus-talk.xml.h:8 msgid "_Send" msgstr "_Wyślij" gyrus-0.4.2/po/pt.po000066400000000000000000000316101426522072200142720ustar00rootroot00000000000000# Administrador Gyrus IMAP Cyrus # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # Pedro Albuquerque , 2015. # msgid "" msgstr "" "Project-Id-Version: Administrador Gyrus IMAP Cyrus\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" "product=gyrus&keywords=I18N+L10N&component=general\n" "POT-Creation-Date: 2015-08-13 10:14+0000\n" "PO-Revision-Date: 2015-09-28 13:13+0100\n" "Last-Translator: Pedro Albuquerque \n" "Language-Team: Português \n" "Language: pt\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\\n\n" "X-Generator: Gtranslator 2.91.6\n" "X-Project-Style: gnome\n" #: ../gyrus.desktop.in.in.h:1 msgid "Gyrus IMAP Cyrus Administrator" msgstr "Administrador Gyrus IMAP Cyrus" #: ../gyrus.desktop.in.in.h:2 msgid "Administer the mailboxes of your IMAP Cyrus servers" msgstr "Administre as caixas de correio dos seus servidores IMAP Cyrus" #: ../src/ui/create_mailbox.xml.h:1 msgid "Name:" msgstr "Nome:" #: ../src/ui/create_mailbox.xml.h:2 msgid "Quota (MB):" msgstr "Cota (MB):" #: ../src/ui/create_mailbox.xml.h:3 msgid "Assign quota" msgstr "Atribuir cota" #: ../src/ui/find.xml.h:1 msgid "Search for:" msgstr "Procurar por:" #: ../src/ui/find.xml.h:2 msgid "Match _entire word only" msgstr "_Comparar só palavra completa" #: ../src/ui/find.xml.h:3 msgid "_Wrap around" msgstr "_Dar a volta" #: ../src/ui/page.xml.h:1 msgid "Free space:" msgstr "Espaço livre:" #: ../src/ui/page.xml.h:2 msgid "Assigned space:" msgstr "Espaço atribuído:" #: ../src/ui/page.xml.h:3 msgid "Owner:" msgstr "Dono:" #: ../src/ui/page.xml.h:4 msgid "New quota (MB)" msgstr "Nova cota (MB)" #: ../src/ui/page.xml.h:5 msgid "Modify quota" msgstr "Modificar cota" #: ../src/ui/page.xml.h:6 msgid "Access control list" msgstr "Aceder à lista de controlo" #: ../src/ui/page.xml.h:7 ../src/ui/sessions_edit.xml.h:5 #: ../tests/gyrus-talk.xml.h:2 msgid "Host:" msgstr "Máquina:" #: ../src/ui/page.xml.h:8 msgid "User:" msgstr "Utilizador:" #: ../src/ui/page.xml.h:9 ../src/ui/sessions_edit.xml.h:4 #: ../tests/gyrus-talk.xml.h:4 msgid "Port:" msgstr "Porta:" #: ../src/ui/password.xml.h:1 msgid "Password" msgstr "Senha" #: ../src/ui/password.xml.h:2 msgid "Enter your password" msgstr "Insira a sua senha" #: ../src/ui/report.xml.h:1 msgid "Report" msgstr "Reportar" #: ../src/ui/report.xml.h:3 #, no-c-format msgid "Over (%)" msgstr "Sobre (%)" #: ../src/ui/sessions.xml.h:1 msgid "Open session" msgstr "Abrir sessão" #: ../src/ui/sessions_edit.xml.h:1 msgid "Session name:" msgstr "Nome da sessão:" #: ../src/ui/sessions_edit.xml.h:2 msgid "Password:" msgstr "Senha:" #: ../src/ui/sessions_edit.xml.h:3 msgid "Username:" msgstr "Utilizador:" #: ../src/ui/sessions_edit.xml.h:6 msgid "Session details" msgstr "Detalhes da sessão" #: ../src/ui/sessions_edit.xml.h:7 ../tests/gyrus-talk.xml.h:3 msgid "Use a secure connection" msgstr "Usar uma ligação segura" #: ../src/ui/sessions_edit.xml.h:8 msgid "Mailbox hierarchy separator:" msgstr "Separador hierárquico de caixa de correio:" #: ../src/ui/sessions_edit.xml.h:9 msgid "Options" msgstr "Opções" #: ../src/gyrus-admin-acl.c:53 ../src/gyrus-admin-acl.c:102 #, c-format msgid "Mailbox '%s' does not exist." msgstr "A caixa \"%s\" não existe." #: ../src/gyrus-admin-acl.c:75 msgid "Invalid identifier." msgstr "Identificador inválido." #: ../src/gyrus-admin-acl.c:81 msgid "Empty entry name." msgstr "Nome de entrada vazio." #: ../src/gyrus-admin-acl.c:86 msgid "Empty mailbox name." msgstr "Nome de caixa vazio." #: ../src/gyrus-admin-acl.c:106 msgid "Missing required argument to Setacl" msgstr "Argumento necessário em falta para Setacl" #: ../src/gyrus-admin-acl.c:142 ../src/gyrus-admin-mailbox.c:79 msgid "Permission denied" msgstr "Permissão negada" #: ../src/gyrus-admin-acl.c:174 msgid "Empty access control list." msgstr "Limpar acessos à lista de controlo." #: ../src/gyrus-admin-mailbox.c:77 msgid "Quota does not exist" msgstr "Cota não existe" #: ../src/gyrus-admin-mailbox.c:171 #, c-format msgid "Quota overloaded" msgstr "Cota sobrecarregada" #: ../src/gyrus-admin-mailbox.c:229 msgid "Quota not valid. Please try again." msgstr "Cota inválida. Por favor, tente de novo." #: ../src/gyrus-admin-mailbox.c:243 msgid "" "Unable to change quota. Are you sure do you have the appropriate permissions?" msgstr "" "Impossível alterar a cota. Tem a certeza que tem as permissões necessárias?" #: ../src/gyrus-admin-mailbox.c:323 #, c-format msgid "'%s' is not a valid mailbox name. Please try a different one." msgstr "" "\"%s\" não é um nome de caixa de correio válido. Por favor, tente um nome " "diferente." #: ../src/gyrus-admin-mailbox.c:331 #, c-format msgid "" "Parent mailbox '%s' does not exist. Please refresh the mailboxes list and " "try again." msgstr "" "Caixa-mãe \"%s\" não existe. Por favor, atualize a lista de caixas de " "correio e tente de novo." #: ../src/gyrus-admin-mailbox.c:341 #, c-format msgid "Mailbox '%s' already exists. Please try a different name." msgstr "Caixa-mãe \"%s\" já existe. Por favor, tente um nome diferente." #: ../src/gyrus-admin-mailbox.c:354 msgid "" "Unable to create the mailbox. Are you sure do you have the appropriate " "permissions?" msgstr "" "Impossível criar a caixa de correio. Tem a certeza que tem as permissões " "necessárias?" #: ../src/gyrus-admin-mailbox.c:365 msgid "Mailbox created, but could not set quota." msgstr "Caixa de correio criada, mas não foi possível definir a cota." #: ../src/gyrus-admin-mailbox.c:432 #, c-format msgid "Unable to delete '%s'. Permission denied." msgstr "Impossível eliminar \"%s\". Permissão negada." #: ../src/gyrus-admin-mailbox.c:633 msgid "new entry" msgstr "nova entrada" #: ../src/gyrus-admin.c:446 ../src/gyrus-report.c:286 #, c-format msgid "Users (%d)" msgstr "Utilizadores (%d)" #: ../src/gyrus-admin.c:452 #, c-format msgid "Orphaned mailboxes (%d)" msgstr "Caixas de correio orfãs (%d)" #: ../src/gyrus-admin.c:496 ../src/gyrus-admin.c:851 msgid "Orphaned mailboxes" msgstr "Caixas de correio orfãs" #: ../src/gyrus-admin.c:496 ../src/gyrus-admin.c:849 ../src/gyrus-report.c:167 msgid "Users" msgstr "Utilizadores" #: ../src/gyrus-admin.c:564 msgid "lookup" msgstr "procurar" #: ../src/gyrus-admin.c:565 msgid "read" msgstr "lidas" #: ../src/gyrus-admin.c:566 msgid "seen" msgstr "vistas" #: ../src/gyrus-admin.c:567 msgid "write" msgstr "escrever" #: ../src/gyrus-admin.c:568 msgid "insert" msgstr "inserir" #: ../src/gyrus-admin.c:569 msgid "post" msgstr "publicar" #: ../src/gyrus-admin.c:570 msgid "create" msgstr "criar" #: ../src/gyrus-admin.c:571 msgid "delete" msgstr "eliminar" #: ../src/gyrus-admin.c:572 msgid "admin" msgstr "admin" #: ../src/gyrus-admin.c:580 msgid "Identifier" msgstr "identificador" #: ../src/gyrus-admin.c:650 msgid "Couldn't create the client socket." msgstr "Impossível criar a socket de cliente." #: ../src/gyrus-admin.c:658 msgid "Couldn't parse the server address." msgstr "Impossível processar o endereço do servidor." #: ../src/gyrus-admin.c:667 #, c-format msgid "Could not connect to %s, port %d." msgstr "Impossível ligar a %s, porta %d." #: ../src/gyrus-admin.c:997 msgid "Unable to connect with empty passwords. Please introduce your password." msgstr "Impossível ligar com senhas vazias. Por favor, insira a sua senha." #: ../src/gyrus-admin.c:1004 msgid "Incorrect login/password" msgstr "Selha/Utilizador incorretos" #: ../src/gyrus-admin.c:1360 msgid "Could not change permission. Server error: " msgstr "Impossível alterar permissão. Erro de servidor: " #: ../src/gyrus-admin.c:1403 #, c-format msgid "An entry called '%s' already exists. Overwrite it?" msgstr "Já existe uma entrada chamada \"%s\". Sobrescrevê-la?" #: ../src/gyrus-dialog-find-mailbox.c:170 #, c-format msgid "The text '%s' was not found in the mailbox list." msgstr "O texto \"%s\" não foi encontrado na lista da caixa de correio." #: ../src/gyrus-dialog-find-mailbox.c:274 msgid "Find mailbox" msgstr "Localizar caixa de correio" #: ../src/gyrus-dialog-mailbox-new.c:92 msgid "Quota not valid" msgstr "Cota não válida" #: ../src/gyrus-dialog-mailbox-new.c:219 msgid "New mailbox" msgstr "Nova caixa de correio" #: ../src/gyrus-main-app.c:145 #, c-format msgid "Really delete mailbox '%s' and all of its submailboxes?" msgstr "Eliminar realmente a caixa \"%s\" e todas as suas subcaixas?" #: ../src/gyrus-main-app.c:260 ../src/gyrus-main-app.c:406 #: ../src/gyrus-main-app.c:702 msgid "Cyrus IMAP Administrator" msgstr "Administrador Cyrus IMAP" #: ../src/gyrus-main-app.c:274 #, c-format msgid "%s - Cyrus IMAP Administrator" msgstr "%s - administrador Cyrus IMAP" #: ../src/gyrus-main-app.c:353 msgid "_File" msgstr "_Ficheiro" #: ../src/gyrus-main-app.c:354 msgid "_Edit" msgstr "_Editar" #: ../src/gyrus-main-app.c:355 msgid "_ACL" msgstr "_ACL" #: ../src/gyrus-main-app.c:356 msgid "_View" msgstr "_Ver" #: ../src/gyrus-main-app.c:357 msgid "_Help" msgstr "A_Juda" #: ../src/gyrus-main-app.c:358 msgid "Go to server..." msgstr "Ir para servidor..." #: ../src/gyrus-main-app.c:359 msgid "Show the list of servers" msgstr "Mostrar lista de servidores" #: ../src/gyrus-main-app.c:367 msgid "Add mailbox" msgstr "Adicionar caixa de correio" #: ../src/gyrus-main-app.c:368 msgid "Add a mailbox under the one selected" msgstr "Adicionar uma caixa de correio sob a selecionada" #: ../src/gyrus-main-app.c:370 msgid "Search for a mailbox in current server" msgstr "Procurar uma caixa de correio no servidor atual" #: ../src/gyrus-main-app.c:372 msgid "Refresh the mailbox list" msgstr "Atualizar a lista de caixas de correio" #: ../src/gyrus-main-app.c:373 msgid "Create report..." msgstr "Criar relatório..." #: ../src/gyrus-main-app.c:374 msgid "Create report of users with quota problems" msgstr "Criar relatório de utilizadores com problemas de cota" #: ../src/gyrus-main-app.c:378 msgid "New entry" msgstr "Nova entrada" #: ../src/gyrus-main-app.c:379 msgid "Create a new ACL entry in current mailbox" msgstr "Criar uma nova entrada ACL na caixa de correio atual" #: ../src/gyrus-main-app.c:380 msgid "Remove mailbox" msgstr "Remover caixa de correio" #: ../src/gyrus-main-app.c:381 msgid "Remove current mailbox from the server" msgstr "Remover a caixa de correio atual do servidor" #: ../src/gyrus-main-app.c:386 msgid "Rename entry" msgstr "Renomear entrada" #: ../src/gyrus-main-app.c:387 msgid "Rename selected ACL entry" msgstr "Renomear a entrada ACL selecionada" #: ../src/gyrus-main-app.c:388 msgid "Delete entry" msgstr "Eliminar entrada" #: ../src/gyrus-main-app.c:389 msgid "Delete selected ACL entry" msgstr "Eliminar a entrada ACL selecionada" #: ../src/gyrus-main-app.c:522 msgid "translators-credits" msgstr "Pedro Albuquerque " #: ../src/gyrus-main-app.c:532 msgid "GNOME Cyrus Administrator" msgstr "Administrador GNOME Cyrus" #: ../src/gyrus-main-app.c:534 msgid "" "(c) 2003-2005 GNOME Foundation\n" "(c) 2004-2005 Claudio Saavedra" msgstr "" "(c) 2003-2005 GNOME Foundation\n" "(c) 2004-2005 Claudio Saavedra" #: ../src/gyrus-main-app.c:536 msgid "Administration tool for Cyrus IMAP servers." msgstr "Ferramenta de administração para servidores IMAP Cyrus." #. set title #: ../src/gyrus-report.c:104 #, c-format msgid "Mailbox space usage report for %s" msgstr "Relatório de uso de espaço de caixa de correio para %s" #: ../src/gyrus-report.c:188 ../src/gyrus-report.c:489 msgid "Quota (%)" msgstr "Cota (%)" #: ../src/gyrus-report.c:201 ../src/gyrus-report.c:493 msgid "Assigned (KB)" msgstr "Atribuída (KB)" #: ../src/gyrus-report.c:212 ../src/gyrus-report.c:497 msgid "Used (KB)" msgstr "Usada (KB)" #. Translators: this represents the number of pages being printed. #: ../src/gyrus-report.c:462 #, c-format msgid "%d/%d" msgstr "%d/%d" #: ../src/gyrus-report.c:485 msgid "User" msgstr "Utilizador" #: ../src/gyrus-session.c:163 msgid "Edit session" msgstr "Editar sessão" #: ../src/gyrus-session.c:177 msgid "New session" msgstr "Nova sessão" #: ../src/gyrus-session.c:356 msgid "A session name is required." msgstr "É necessário um nome de sessão." #: ../src/gyrus-session.c:367 #, c-format msgid "Session named \"%s\" already exists." msgstr "O nome de sessão \"%s\" já existe." #: ../src/gyrus-session.c:463 ../src/gyrus-session.c:597 msgid "Autodetect" msgstr "Deteção automática" #: ../src/gyrus-session.c:548 msgid "Session" msgstr "Sessão" #: ../src/gyrus-session.c:717 msgid "No host specified." msgstr "Sem máquina especificada." #: ../tests/gyrus-talk.xml.h:1 msgid "Talk - Echo client" msgstr "Falar - cliente Echo" #: ../tests/gyrus-talk.xml.h:5 msgid "_Connect" msgstr "_Ligar" #: ../tests/gyrus-talk.xml.h:6 msgid "Connection" msgstr "Ligação" #: ../tests/gyrus-talk.xml.h:7 msgid "Command:" msgstr "Comando:" #: ../tests/gyrus-talk.xml.h:8 msgid "_Send" msgstr "_Enviar" gyrus-0.4.2/po/pt_BR.po000066400000000000000000000346211426522072200146620ustar00rootroot00000000000000# Brazilian Portuguese translation of gyrus. # Copyright (C) 2005 Free Software Foundation, Inc. # This file is distributed under the same license as the gyrus package. # Raphael Higino , 2005. # Flamarion Jorge , 2008. # Rafael Ferreira , 2013. # msgid "" msgstr "" "Project-Id-Version: gyrus\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" "product=gyrus&keywords=I18N+L10N&component=general\n" "POT-Creation-Date: 2013-01-15 08:46+0000\n" "PO-Revision-Date: 2013-02-16 01:24-0300\n" "Last-Translator: Rafael Ferreira \n" "Language-Team: Brazilian Portuguese \n" "Language: pt_BR\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: Poedit 1.5.4\n" #: ../gyrus.desktop.in.in.h:1 msgid "Gyrus IMAP Cyrus Administrator" msgstr "Gyrus Administrador de IMAP Cyrus" #: ../gyrus.desktop.in.in.h:2 msgid "Administer the mailboxes of your IMAP Cyrus servers" msgstr "Administre as caixas de correio dos seus servidores Cyrus IMAP" #: ../src/ui/create_mailbox.xml.h:1 msgid "Name:" msgstr "Nome:" #: ../src/ui/create_mailbox.xml.h:2 msgid "Quota (MB):" msgstr "Cota (MB):" #: ../src/ui/create_mailbox.xml.h:3 msgid "Assign quota" msgstr "Atribuir cota" #: ../src/ui/find.xml.h:1 msgid "Search for:" msgstr "Pesquisar por:" #: ../src/ui/find.xml.h:2 msgid "Match _entire word only" msgstr "Coincidir apenas com palavra _inteira" #: ../src/ui/find.xml.h:3 msgid "_Wrap around" msgstr "_Ajuste" #: ../src/ui/page.xml.h:1 msgid "Free space:" msgstr "Espaço livre:" #: ../src/ui/page.xml.h:2 msgid "Assigned space:" msgstr "Espaço atribuído:" #: ../src/ui/page.xml.h:3 msgid "Owner:" msgstr "Proprietário:" #: ../src/ui/page.xml.h:4 msgid "New quota (MB)" msgstr "Nova cota (MB)" #: ../src/ui/page.xml.h:5 msgid "Modify quota" msgstr "Modificar cota" #: ../src/ui/page.xml.h:6 msgid "Access control list" msgstr "Lista de controle de acesso" #: ../src/ui/page.xml.h:7 ../src/ui/sessions_edit.xml.h:5 #: ../tests/gyrus-talk.xml.h:2 msgid "Host:" msgstr "Servidor:" #: ../src/ui/page.xml.h:8 msgid "User:" msgstr "Usuário:" #: ../src/ui/page.xml.h:9 ../src/ui/sessions_edit.xml.h:4 #: ../tests/gyrus-talk.xml.h:4 msgid "Port:" msgstr "Porta:" #: ../src/ui/password.xml.h:1 msgid "Password" msgstr "Senha" #: ../src/ui/password.xml.h:2 msgid "Enter your password" msgstr "Digite sua senha" #: ../src/ui/report.xml.h:1 msgid "Report" msgstr "Relatório" #: ../src/ui/report.xml.h:3 #, no-c-format msgid "Over (%)" msgstr "Excesso (%)" #: ../src/ui/sessions.xml.h:1 msgid "Open session" msgstr "Abrir sessão" #: ../src/ui/sessions_edit.xml.h:1 msgid "Session name:" msgstr "Nome da sessão:" #: ../src/ui/sessions_edit.xml.h:2 msgid "Password:" msgstr "Senha:" #: ../src/ui/sessions_edit.xml.h:3 msgid "Username:" msgstr "Nome de usuário:" #: ../src/ui/sessions_edit.xml.h:6 msgid "Session details" msgstr "Detalhes da sessão" #: ../src/ui/sessions_edit.xml.h:7 ../tests/gyrus-talk.xml.h:3 msgid "Use a secure connection" msgstr "Usar uma conexão segura" #: ../src/ui/sessions_edit.xml.h:8 msgid "Mailbox hierarchy separator:" msgstr "Separador de hierarquia da caixa de correio:" #: ../src/ui/sessions_edit.xml.h:9 msgid "Options" msgstr "Opções:" #: ../src/gyrus-admin-acl.c:54 ../src/gyrus-admin-acl.c:103 #, c-format msgid "Mailbox '%s' does not exist." msgstr "Caixa de correio \"%s\" não existe." #: ../src/gyrus-admin-acl.c:76 msgid "Invalid identifier." msgstr "Identificador inválido." #: ../src/gyrus-admin-acl.c:82 msgid "Empty entry name." msgstr "Nome da entrada vazio." #: ../src/gyrus-admin-acl.c:87 msgid "Empty mailbox name." msgstr "Nome da caixa de correio vazio." #: ../src/gyrus-admin-acl.c:107 msgid "Missing required argument to Setacl" msgstr "Faltando argumento requerido para Setacl" #: ../src/gyrus-admin-acl.c:143 ../src/gyrus-admin-mailbox.c:80 msgid "Permission denied" msgstr "Permissão negada" #: ../src/gyrus-admin-acl.c:175 msgid "Empty access control list." msgstr "Lista de controle de acesso vazia." #: ../src/gyrus-admin-mailbox.c:78 msgid "Quota does not exist" msgstr "Não existe cota" #: ../src/gyrus-admin-mailbox.c:172 #, c-format msgid "Quota overloaded" msgstr "Cota sobrecarregada" #: ../src/gyrus-admin-mailbox.c:230 msgid "Quota not valid. Please try again." msgstr "A cota não é válida. Por favor tente novamente." #: ../src/gyrus-admin-mailbox.c:244 msgid "" "Unable to change quota. Are you sure do you have the appropriate permissions?" msgstr "" "Não foi possível alterar a cota. Você tem certeza que tem uma permissão " "apropriada?" #: ../src/gyrus-admin-mailbox.c:324 #, c-format msgid "'%s' is not a valid mailbox name. Please try a different one." msgstr "" "\"%s\" não é um nome de caixa de correio válido. Por favor tente um nome " "diferente." #: ../src/gyrus-admin-mailbox.c:332 #, c-format msgid "" "Parent mailbox '%s' does not exist. Please refresh the mailboxes list and " "try again." msgstr "" "Caixa de correio \"%s\" pai não existe. Por favor atualize a lista de caixas " "de correio e tente novamente." #: ../src/gyrus-admin-mailbox.c:342 #, c-format msgid "Mailbox '%s' already exists. Please try a different name." msgstr "Caixa de correio \"%s\" já existe. Por favor tente um nome diferente." #: ../src/gyrus-admin-mailbox.c:355 msgid "" "Unable to create the mailbox. Are you sure do you have the appropriate " "permissions?" msgstr "" "Não foi possível criar a caixa de correio. Você tem certeza que tem a " "permissão apropriada?" #: ../src/gyrus-admin-mailbox.c:366 msgid "Mailbox created, but could not set quota." msgstr "Caixa de correio criada, mas não foi possível definir cota." #: ../src/gyrus-admin-mailbox.c:433 #, c-format msgid "Unable to delete '%s'. Permission denied." msgstr "Não foi possível excluir \"%s\". Permissão negada." #: ../src/gyrus-admin-mailbox.c:634 msgid "new entry" msgstr "nova entrada" #: ../src/gyrus-admin.c:447 ../src/gyrus-report.c:289 #, c-format msgid "Users (%d)" msgstr "Usuários (%d)" #: ../src/gyrus-admin.c:453 #, c-format msgid "Orphaned mailboxes (%d)" msgstr "Caixas de correios orfãs (%d)" #: ../src/gyrus-admin.c:497 ../src/gyrus-admin.c:855 msgid "Orphaned mailboxes" msgstr "Caixas de correios orfãs" #: ../src/gyrus-admin.c:497 ../src/gyrus-admin.c:853 ../src/gyrus-report.c:170 msgid "Users" msgstr "Usuários" #: ../src/gyrus-admin.c:565 msgid "lookup" msgstr "consulta" #: ../src/gyrus-admin.c:566 msgid "read" msgstr "lido" #: ../src/gyrus-admin.c:567 msgid "seen" msgstr "visto" #: ../src/gyrus-admin.c:568 msgid "write" msgstr "gravar" #: ../src/gyrus-admin.c:569 msgid "insert" msgstr "inserir" #: ../src/gyrus-admin.c:570 msgid "post" msgstr "enviar" #: ../src/gyrus-admin.c:571 msgid "create" msgstr "criar" #: ../src/gyrus-admin.c:572 msgid "delete" msgstr "excluir" #: ../src/gyrus-admin.c:573 msgid "admin" msgstr "administrar" #: ../src/gyrus-admin.c:581 msgid "Identifier" msgstr "Identificador" #: ../src/gyrus-admin.c:651 msgid "Couldn't create the client socket." msgstr "Não foi possível criar o soquete do cliente." #: ../src/gyrus-admin.c:659 msgid "Couldn't parse the server address." msgstr "Não foi possível analisar o endereço do servidor." #: ../src/gyrus-admin.c:668 #, c-format msgid "Could not connect to %s, port %d." msgstr "Não foi possível conectar %s porta %d." #: ../src/gyrus-admin.c:1001 msgid "Unable to connect with empty passwords. Please introduce your password." msgstr "" "Não é possível conectar com senhas em branco. Por favor informe a sua senha." #: ../src/gyrus-admin.c:1008 msgid "Incorrect login/password" msgstr "Login/senha incorreto" #: ../src/gyrus-admin.c:1364 msgid "Could not change permission. Server error: " msgstr "Não foi possível alterar a permissão. Erro do servidor: " #: ../src/gyrus-admin.c:1407 #, c-format msgid "An entry called '%s' already exists. Overwrite it?" msgstr "Uma entrada chamada \"%s\" já existe. Sobrescrevê-la?" #: ../src/gyrus-dialog-find-mailbox.c:171 #, c-format msgid "The text '%s' was not found in the mailbox list." msgstr "O texto \"%s\" não foi localizado na lista de caixa de correio." #: ../src/gyrus-dialog-find-mailbox.c:275 msgid "Find mailbox" msgstr "Localizar caixa de correio" #: ../src/gyrus-dialog-mailbox-new.c:93 msgid "Quota not valid" msgstr "Cota inválida" #: ../src/gyrus-dialog-mailbox-new.c:220 msgid "New mailbox" msgstr "Nova caixa de correio" #: ../src/gyrus-main-app.c:146 #, c-format msgid "Really delete mailbox '%s' and all of its submailboxes?" msgstr "" "Deseja mesmo excluir a caixa de correio \"%s\" e todas as suas sub-caixas de " "correio?" #: ../src/gyrus-main-app.c:261 ../src/gyrus-main-app.c:436 #: ../src/gyrus-main-app.c:732 msgid "Cyrus IMAP Administrator" msgstr "Cyrus - Administrador IMAP" #: ../src/gyrus-main-app.c:275 #, c-format msgid "%s - Cyrus IMAP Administrator" msgstr "%s - Cyrus Administrador IMAP" #: ../src/gyrus-main-app.c:383 msgid "_File" msgstr "_Arquivo" #: ../src/gyrus-main-app.c:384 msgid "_Edit" msgstr "_Editar" #: ../src/gyrus-main-app.c:385 msgid "_ACL" msgstr "A_CL" #: ../src/gyrus-main-app.c:386 msgid "_View" msgstr "_Ver" #: ../src/gyrus-main-app.c:387 msgid "_Help" msgstr "Aj_uda" #: ../src/gyrus-main-app.c:388 msgid "Go to server..." msgstr "Ir ao servidor..." #: ../src/gyrus-main-app.c:389 msgid "Show the list of servers" msgstr "Mostra a lista de servidores" #: ../src/gyrus-main-app.c:397 msgid "Add mailbox" msgstr "Adicionar caixa de correio" #: ../src/gyrus-main-app.c:398 msgid "Add a mailbox under the one selected" msgstr "Adiciona uma caixa de correio sob a caixa selecionada" #: ../src/gyrus-main-app.c:400 msgid "Search for a mailbox in current server" msgstr "Pesquisa por uma caixa de correio no servidor atual" #: ../src/gyrus-main-app.c:402 msgid "Refresh the mailbox list" msgstr "Atualiza a lista de caixas de correio" #: ../src/gyrus-main-app.c:403 msgid "Create report..." msgstr "Criar relatório..." #: ../src/gyrus-main-app.c:404 msgid "Create report of users with quota problems" msgstr "Cria relatório de usuários com problemas de cota" #: ../src/gyrus-main-app.c:408 msgid "New entry" msgstr "Nova entrada" #: ../src/gyrus-main-app.c:409 msgid "Create a new ACL entry in current mailbox" msgstr "Cria uma nova ACL na caixa de correio atual" #: ../src/gyrus-main-app.c:410 msgid "Remove mailbox" msgstr "Remover caixa de correio" #: ../src/gyrus-main-app.c:411 msgid "Remove current mailbox from the server" msgstr "Remove do servidor a caixa de correio atual" #: ../src/gyrus-main-app.c:416 msgid "Rename entry" msgstr "Renomear entrada" #: ../src/gyrus-main-app.c:417 msgid "Rename selected ACL entry" msgstr "Renomeia entrada da ACL selecionada" #: ../src/gyrus-main-app.c:418 msgid "Delete entry" msgstr "Excluir entrada" #: ../src/gyrus-main-app.c:419 msgid "Delete selected ACL entry" msgstr "Exclui entrada da ACL selecionada" #: ../src/gyrus-main-app.c:552 msgid "translators-credits" msgstr "" "Raphael Higino \n" "Flamarion Jorge " #: ../src/gyrus-main-app.c:562 msgid "GNOME Cyrus Administrator" msgstr "Administrador do GNOME Cyrus" #: ../src/gyrus-main-app.c:564 msgid "" "(c) 2003-2005 GNOME Foundation\n" "(c) 2004-2005 Claudio Saavedra" msgstr "" "(c) 2003-2005 GNOME Foundation\n" " (c) 2004-2005 Claudio Saavedra" #: ../src/gyrus-main-app.c:566 msgid "Administration tool for Cyrus IMAP servers." msgstr "Ferramenta de administração para servidores Cyrus IMAP." #. set title #: ../src/gyrus-report.c:107 #, c-format msgid "Mailbox space usage report for %s" msgstr "Relatório de uso da caixa de correio para %s" #: ../src/gyrus-report.c:191 ../src/gyrus-report.c:492 msgid "Quota (%)" msgstr "Cota (%)" #: ../src/gyrus-report.c:204 ../src/gyrus-report.c:496 msgid "Assigned (KB)" msgstr "Atribuído (KB)" #: ../src/gyrus-report.c:215 ../src/gyrus-report.c:500 msgid "Used (KB)" msgstr "Usado (KB)" #. Translators: this represents the number of pages being printed. #: ../src/gyrus-report.c:465 #, c-format msgid "%d/%d" msgstr "%d/%d" #: ../src/gyrus-report.c:488 msgid "User" msgstr "Usuário" #: ../src/gyrus-session.c:164 msgid "Edit session" msgstr "Editar sessão" #: ../src/gyrus-session.c:178 msgid "New session" msgstr "Nova sessão" #: ../src/gyrus-session.c:357 msgid "A session name is required." msgstr "Nome de sessão é requerido." #: ../src/gyrus-session.c:368 #, c-format msgid "Session named \"%s\" already exists." msgstr "O nome de sessão \"%s\" já existe." #: ../src/gyrus-session.c:464 ../src/gyrus-session.c:598 msgid "Autodetect" msgstr "Detectar automaticamente" #: ../src/gyrus-session.c:549 msgid "Session" msgstr "Sessão" #: ../src/gyrus-session.c:718 msgid "No host specified." msgstr "Nenhum servidor especificado." #: ../tests/gyrus-talk.xml.h:1 msgid "Talk - Echo client" msgstr "Talk - Cliente Echo" #: ../tests/gyrus-talk.xml.h:5 msgid "_Connect" msgstr "_Conectar" #: ../tests/gyrus-talk.xml.h:6 msgid "Connection" msgstr "Conexão" #: ../tests/gyrus-talk.xml.h:7 msgid "Command:" msgstr "Comando:" #: ../tests/gyrus-talk.xml.h:8 msgid "_Send" msgstr "_Enviar" #~ msgid "Name:" #~ msgstr "Nome:" #~ msgid "Quota (MB):" #~ msgstr "Cota (MB):" #~ msgid "Host:" #~ msgstr "Servidor:" #~ msgid "Port:" #~ msgstr "Porta:" #~ msgid "User:" #~ msgstr "Usuário:" #~ msgid "Connection" #~ msgstr "Conexão" #~ msgid "*" #~ msgstr "*" #~ msgid "Create mailbox" #~ msgstr "Criar caixa de correio" #~ msgid "Find" #~ msgstr "Localizar" #~ msgid "Mailbox quota:" #~ msgstr "Cota da caixa de correio:" #~ msgid "Mailboxes tree:" #~ msgstr "Árvore de caixas de correio:" #~ msgid "Default suffix for changing quota:" #~ msgstr "Sufixo padrão para alterar cota:" #~ msgid "Preferences" #~ msgstr "Preferências" #~ msgid "View complete mailboxes tree" #~ msgstr "Ver árvore completa das caixas de correio" #~ msgid "" #~ ".\n" #~ "/\n" #~ "Autodetect" #~ msgstr "" #~ ".\n" #~ "/\n" #~ "Detectar automaticamente" #~ msgid "%s could not be found. Please check the name and try again." #~ msgstr "" #~ "%s não pode ser localizada. Por favor verifique o nome e tente novamente." #~ msgid "_Disconnect" #~ msgstr "_Desconectar" #~ msgid "(c) 2003 GNOME Foundation" #~ msgstr "(c) 2003 GNOME Foundation" #~ msgid "" #~ "B\n" #~ "KB\n" #~ "MB\n" #~ "GB\n" #~ "TB" #~ msgstr "" #~ "B\n" #~ "KB\n" #~ "MB\n" #~ "GB\n" #~ "TB" gyrus-0.4.2/po/ro.po000066400000000000000000000341641426522072200142760ustar00rootroot00000000000000# Romanian translation for gyrus. # Copyright (C) 2010 gyrus's COPYRIGHT HOLDER # This file is distributed under the same license as the gyrus package. # Alexandru Baicoianu , 2010. # Lucian Adrian Grijincu , 2011. msgid "" msgstr "" "Project-Id-Version: gyrus master\n" "Report-Msgid-Bugs-To: " "http://bugzilla.gnome.org/enter_bug.cgi?product=gyrus&component=general\n" "POT-Creation-Date: 2010-12-29 00:34+0000\n" "PO-Revision-Date: 2011-03-19 00:20+0200\n" "Last-Translator: Lucian Adrian Grijincu \n" "Language-Team: Romanian Gnome Team \n" "Language: ro\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n==1 ? 0 : (n==0 || (n%100 > 0 && n%100 < " "20)) ? 1 : 2);;\n" "X-Generator: Virtaal 0.6.1\n" #: ../gyrus.desktop.in.in.h:1 msgid "Administer the mailboxes of your IMAP Cyrus servers" msgstr "Administrează conturile de mail ale serverelor IMAP Cyrus" #: ../gyrus.desktop.in.in.h:2 msgid "Gyrus IMAP Cyrus Administrator" msgstr "Gyrus - administrator Cyrus IMAP" #: ../src/ui/create_mailbox.xml.h:1 msgid "Name:" msgstr "Nume:" #: ../src/ui/create_mailbox.xml.h:2 msgid "Quota (MB):" msgstr "Cotă (MB):" #: ../src/ui/create_mailbox.xml.h:3 msgid "Assign quota" msgstr "Atribuie cotă" #: ../src/ui/find.xml.h:1 msgid "Match _entire word only" msgstr "Potrivire _doar pentru cuvinte întregi" #: ../src/ui/find.xml.h:2 msgid "Search for:" msgstr "Caută după:" #: ../src/ui/find.xml.h:3 msgid "_Wrap around" msgstr "_Reia de la început" #: ../src/ui/page.xml.h:1 msgid "Assigned space:" msgstr "Spațiu atribuit:" #: ../src/ui/page.xml.h:2 msgid "Free space:" msgstr "Spațiu liber:" #: ../src/ui/page.xml.h:3 msgid "Host:" msgstr "Gazdă:" #: ../src/ui/page.xml.h:4 msgid "Owner:" msgstr "Proprietar:" #: ../src/ui/page.xml.h:5 msgid "Port:" msgstr "Port:" #: ../src/ui/page.xml.h:6 msgid "User:" msgstr "Utilizator:" #: ../src/ui/page.xml.h:7 msgid "Access control list" msgstr "Listă control acces" #: ../src/ui/page.xml.h:8 msgid "Modify quota" msgstr "Modifică cota" #: ../src/ui/page.xml.h:9 msgid "New quota (MB)" msgstr "Cotă nouă (MB)" #: ../src/ui/password.xml.h:1 msgid "Enter your password" msgstr "Introduceți parola" #: ../src/ui/password.xml.h:2 msgid "Password" msgstr "Parolă" #: ../src/ui/report.xml.h:2 #, no-c-format msgid "Over (%)" msgstr "Peste (%)" #: ../src/ui/report.xml.h:3 msgid "Report" msgstr "Raport" #: ../src/ui/sessions.xml.h:1 msgid "Open session" msgstr "Deschide sesiune" #: ../src/ui/sessions_edit.xml.h:1 msgid "Options" msgstr "Opțiuni" #: ../src/ui/sessions_edit.xml.h:2 msgid "Session details" msgstr "Detalii sesiune" #: ../src/ui/sessions_edit.xml.h:3 ../tests/gyrus-talk.xml.h:3 msgid "Host:" msgstr "Gazdă:" #: ../src/ui/sessions_edit.xml.h:4 msgid "Mailbox hierarchy separator:" msgstr "Separator în ierarhia căsuțelor poștale:" #: ../src/ui/sessions_edit.xml.h:5 msgid "Password:" msgstr "Parolă:" #: ../src/ui/sessions_edit.xml.h:6 ../tests/gyrus-talk.xml.h:4 msgid "Port:" msgstr "Port:" #: ../src/ui/sessions_edit.xml.h:7 msgid "Session name:" msgstr "Nume sesiune:" #: ../src/ui/sessions_edit.xml.h:8 ../tests/gyrus-talk.xml.h:6 msgid "Use a secure connection" msgstr "Utilizează o conexiune sigură" #: ../src/ui/sessions_edit.xml.h:9 msgid "Username:" msgstr "Nume utilizator:" #: ../src/gyrus-admin-acl.c:54 ../src/gyrus-admin-acl.c:103 #, c-format msgid "Mailbox '%s' does not exist." msgstr "Căsuța poștală „%s” nu există." #: ../src/gyrus-admin-acl.c:76 msgid "Invalid identifier." msgstr "Identificator nevalid." #: ../src/gyrus-admin-acl.c:82 msgid "Empty entry name." msgstr "Câmpul nume este gol." #: ../src/gyrus-admin-acl.c:87 msgid "Empty mailbox name." msgstr "Lipsă nume căsuță poștală." #: ../src/gyrus-admin-acl.c:107 msgid "Missing required argument to Setacl" msgstr "Un argument necesar pentru Setacl lipsește lipsește" #: ../src/gyrus-admin-acl.c:143 ../src/gyrus-admin-mailbox.c:80 msgid "Permission denied" msgstr "Acces refuzat" #: ../src/gyrus-admin-acl.c:175 msgid "Empty access control list." msgstr "Lista de control acces este goală." #: ../src/gyrus-admin-mailbox.c:78 msgid "Quota does not exist" msgstr "Cota nu există" #: ../src/gyrus-admin-mailbox.c:172 #, c-format msgid "Quota overloaded" msgstr "Cota este supra-încărcată" #: ../src/gyrus-admin-mailbox.c:230 msgid "Quota not valid. Please try again." msgstr "Cota este nevalidă. Încercați din nou." #: ../src/gyrus-admin-mailbox.c:244 msgid "" "Unable to change quota. Are you sure do you have the appropriate permissions?" msgstr "Nu se poate schimba cota. Sigur aveți permisiunile necesare?" #: ../src/gyrus-admin-mailbox.c:324 #, c-format msgid "'%s' is not a valid mailbox name. Please try a different one." msgstr "„%s” nu este un nume valid pentru o căsuță poștală. Încercați alt nume." #: ../src/gyrus-admin-mailbox.c:332 #, c-format msgid "" "Parent mailbox '%s' does not exist. Please refresh the mailboxes list and " "try again." msgstr "" "Căsuța poștală părinte „%s” nu există. Reîmprospătați lista căsuțelor " "poștale și încercați din nou." #: ../src/gyrus-admin-mailbox.c:342 #, c-format msgid "Mailbox '%s' already exists. Please try a different name." msgstr "Căsuța poștală „%s” deja există. Încercați un nume diferit." #: ../src/gyrus-admin-mailbox.c:355 msgid "" "Unable to create the mailbox. Are you sure do you have the appropriate " "permissions?" msgstr "Nu se poate crea căsuța poștală. Sigur aveți permisiunile necesare?" #: ../src/gyrus-admin-mailbox.c:366 msgid "Mailbox created, but could not set quota." msgstr "Căsuța poștală a fost creată, dar nu s-a putut configura cota." #: ../src/gyrus-admin-mailbox.c:433 #, c-format msgid "Unable to delete '%s'. Permission denied." msgstr "Nu se poate șterge „%s”. Acces refuzat." #: ../src/gyrus-admin-mailbox.c:634 msgid "new entry" msgstr "intrare nouă" #: ../src/gyrus-admin.c:447 ../src/gyrus-report.c:289 #, c-format msgid "Users (%d)" msgstr "Utilizatori (%d)" #: ../src/gyrus-admin.c:453 #, c-format msgid "Orphaned mailboxes (%d)" msgstr "Căsuțe poștale părăsite (%d)" #: ../src/gyrus-admin.c:497 ../src/gyrus-admin.c:855 msgid "Orphaned mailboxes" msgstr "Căsuțe poștale părăsite" #: ../src/gyrus-admin.c:497 ../src/gyrus-admin.c:853 ../src/gyrus-report.c:170 msgid "Users" msgstr "Utilizatori" #: ../src/gyrus-admin.c:565 msgid "lookup" msgstr "căutare" #: ../src/gyrus-admin.c:566 msgid "read" msgstr "citire" #: ../src/gyrus-admin.c:567 msgid "seen" msgstr "văzut" #: ../src/gyrus-admin.c:568 msgid "write" msgstr "scriere" #: ../src/gyrus-admin.c:569 msgid "insert" msgstr "introducere" #: ../src/gyrus-admin.c:570 msgid "post" msgstr "publicare" #: ../src/gyrus-admin.c:571 msgid "create" msgstr "creare" #: ../src/gyrus-admin.c:572 msgid "delete" msgstr "ștergere" #: ../src/gyrus-admin.c:573 msgid "admin" msgstr "admin" #: ../src/gyrus-admin.c:581 msgid "Identifier" msgstr "Identificator" #: ../src/gyrus-admin.c:651 msgid "Couldn't create the client socket." msgstr "Nu s-a putut crea socket-ul client." #: ../src/gyrus-admin.c:659 msgid "Couldn't parse the server address." msgstr "Nu s-a putut parsa adresa serverului." #: ../src/gyrus-admin.c:668 #, c-format msgid "Could not connect to %s, port %d." msgstr "Nu s-a putut realiza conexiunea la %s, port %d." #: ../src/gyrus-admin.c:1001 msgid "Unable to connect with empty passwords. Please introduce your password." msgstr "Nu se poate conecta fără parolă. Introduceți parola." #: ../src/gyrus-admin.c:1008 msgid "Incorrect login/password" msgstr "Autentificare incorectă" #: ../src/gyrus-admin.c:1364 msgid "Could not change permission. Server error: " msgstr "Nu se pot schimba permisiunile. Eroare de server: " #: ../src/gyrus-admin.c:1407 #, c-format msgid "An entry called '%s' already exists. Overwrite it?" msgstr "O intrare numită „%s” deja există. Suprascrieți?" #: ../src/gyrus-dialog-find-mailbox.c:171 #, c-format msgid "The text '%s' was not found in the mailbox list." msgstr "Textul „%s” nu a fost găsit în lista căsuțelor poștale." #: ../src/gyrus-dialog-find-mailbox.c:275 msgid "Find mailbox" msgstr "Caută căsuță poștală" #: ../src/gyrus-dialog-mailbox-new.c:93 msgid "Quota not valid" msgstr "Cota este nevalidă" #: ../src/gyrus-dialog-mailbox-new.c:220 msgid "New mailbox" msgstr "Căsuță poștală nouă" #: ../src/gyrus-main-app.c:146 #, c-format msgid "Really delete mailbox '%s' and all of its submailboxes?" msgstr "Sigur ștergeți căsuța poștală „%s” și toate sub-căsuțele acesteia?" #: ../src/gyrus-main-app.c:261 ../src/gyrus-main-app.c:436 #: ../src/gyrus-main-app.c:732 msgid "Cyrus IMAP Administrator" msgstr "Administrator IMAP Cyrus" #: ../src/gyrus-main-app.c:275 #, c-format msgid "%s - Cyrus IMAP Administrator" msgstr "%s - Administrator IMAP Cyrus" #: ../src/gyrus-main-app.c:383 msgid "_File" msgstr "_Fișier" #: ../src/gyrus-main-app.c:384 msgid "_Edit" msgstr "_Editare" #: ../src/gyrus-main-app.c:385 msgid "_ACL" msgstr "_ACL" #: ../src/gyrus-main-app.c:386 msgid "_View" msgstr "_Vizualizează" #: ../src/gyrus-main-app.c:387 msgid "_Help" msgstr "_Ajutor" #: ../src/gyrus-main-app.c:388 msgid "Go to server..." msgstr "Navighează la server..." #: ../src/gyrus-main-app.c:389 msgid "Show the list of servers" msgstr "Arată lista serverelor" #: ../src/gyrus-main-app.c:397 msgid "Add mailbox" msgstr "Adaugă căsuță poștală" #: ../src/gyrus-main-app.c:398 msgid "Add a mailbox under the one selected" msgstr "Adaugă o căsuță poștală sub cea selectată" #: ../src/gyrus-main-app.c:400 msgid "Search for a mailbox in current server" msgstr "Caută o căsuță poștală în serverul curent" #: ../src/gyrus-main-app.c:402 msgid "Refresh the mailbox list" msgstr "Reîmprospătați lista conturilor de mail" #: ../src/gyrus-main-app.c:403 msgid "Create report..." msgstr "Creează raport..." #: ../src/gyrus-main-app.c:404 msgid "Create report of users with quota problems" msgstr "Creează un raport cu utilizatorii care au probleme legate de cote." #: ../src/gyrus-main-app.c:408 msgid "New entry" msgstr "Intrare nouă" #: ../src/gyrus-main-app.c:409 msgid "Create a new ACL entry in current mailbox" msgstr "Creează o nouă intrare ACL în căsuța poștală curentă" #: ../src/gyrus-main-app.c:410 msgid "Remove mailbox" msgstr "Șterge căsuță poștală" #: ../src/gyrus-main-app.c:411 msgid "Remove current mailbox from the server" msgstr "Șterge căsuța poștală curentă din server" #: ../src/gyrus-main-app.c:416 msgid "Rename entry" msgstr "Redenumește intrarea" #: ../src/gyrus-main-app.c:417 msgid "Rename selected ACL entry" msgstr "Redenumește intrarea ACL selectată" #: ../src/gyrus-main-app.c:418 msgid "Delete entry" msgstr "Șterge intrarea" #: ../src/gyrus-main-app.c:419 msgid "Delete selected ACL entry" msgstr "Redenumește intrările ACL selectate" #: ../src/gyrus-main-app.c:552 msgid "translators-credits" msgstr "Alexandru Baicoianu " #: ../src/gyrus-main-app.c:562 msgid "GNOME Cyrus Administrator" msgstr "GNOME, administrator Cyrus IMAP" #: ../src/gyrus-main-app.c:564 msgid "" "(c) 2003-2005 GNOME Foundation\n" "(c) 2004-2005 Claudio Saavedra" msgstr "" "(c) 2003-2005 GNOME Foundation\n" "(c) 2004-2005 Claudio Saavedra" #: ../src/gyrus-main-app.c:566 msgid "Administration tool for Cyrus IMAP servers." msgstr "Unelte pentru administrarea serverelor IMAP Cyrus." #. set title #: ../src/gyrus-report.c:107 #, c-format msgid "Mailbox space usage report for %s" msgstr "Raport utilizare căsuță poștală pentru %s" #: ../src/gyrus-report.c:191 ../src/gyrus-report.c:492 msgid "Quota (%)" msgstr "Cotă (%)" #: ../src/gyrus-report.c:204 ../src/gyrus-report.c:496 msgid "Assigned (KB)" msgstr "Atribuiți (KB)" #: ../src/gyrus-report.c:215 ../src/gyrus-report.c:500 msgid "Used (KB)" msgstr "Utilizați (KB)" #. Translators: this represents the number of pages being printed. #: ../src/gyrus-report.c:465 #, c-format msgid "%d/%d" msgstr "%d/%d" #: ../src/gyrus-report.c:488 msgid "User" msgstr "Utilizator" #: ../src/gyrus-session.c:164 msgid "Edit session" msgstr "Editare sesiune" #: ../src/gyrus-session.c:178 msgid "New session" msgstr "Sesiune nouă" #: ../src/gyrus-session.c:357 msgid "A session name is required." msgstr "Un nume pentru sesiune este necesar." #: ../src/gyrus-session.c:368 #, c-format msgid "Session named \"%s\" already exists." msgstr "Sesiunea numită „%s\" există deja." #: ../src/gyrus-session.c:464 ../src/gyrus-session.c:598 msgid "Autodetect" msgstr "Detectare automată" #: ../src/gyrus-session.c:549 msgid "Session" msgstr "Sesiune" #: ../src/gyrus-session.c:718 msgid "No host specified." msgstr "Nicio gazdă specificată." #: ../tests/gyrus-talk.xml.h:1 msgid "Connection" msgstr "Conexiune" #: ../tests/gyrus-talk.xml.h:2 msgid "Command:" msgstr "Comandă:" #: ../tests/gyrus-talk.xml.h:5 msgid "Talk - Echo client" msgstr "Vorbește - Client Echo" #: ../tests/gyrus-talk.xml.h:7 msgid "_Connect" msgstr "_Conectare" #: ../tests/gyrus-talk.xml.h:8 msgid "_Send" msgstr "_Trimite" #~ msgid "*" #~ msgstr "*" #~ msgid "Create mailbox" #~ msgstr "Creează o căsuță poștală" #~ msgid "Find" #~ msgstr "Caută" #~ msgid "Mailbox quota:" #~ msgstr "Cotă căsuță poștală:" #~ msgid "Mailboxes tree:" #~ msgstr "Arborele căsuțelor poștale:" #~ msgid "Default suffix for changing quota:" #~ msgstr "Sufixul implicit pentru schimbarea cotei:" #~ msgid "Preferences" #~ msgstr "Preferințe" #~ msgid "View complete mailboxes tree" #~ msgstr "Vizualizează arborele căsuțelor poștale" #~ msgid "" #~ ".\n" #~ "/\n" #~ "Autodetect" #~ msgstr "" #~ ".\n" #~ "/\n" #~ "Detectare automată" #~ msgid "%s could not be found. Please check the name and try again." #~ msgstr "%s nu a fost găsit. Verificați denumirea și încercați din nou." #~ msgid "_Disconnect" #~ msgstr "_Deconectare" gyrus-0.4.2/po/sl.po000066400000000000000000000352111426522072200142660ustar00rootroot00000000000000# Slovenian translations for gyrus. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the gyrus package. # # Andrej Žnidaršič , 2010. # Matej Urbančič , 2012. # msgid "" msgstr "" "Project-Id-Version: gyrus master\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gyrus&keywords=I18N+L10N&component=general\n" "POT-Creation-Date: 2012-11-09 23:33+0000\n" "PO-Revision-Date: 2012-11-10 08:52+0100\n" "Last-Translator: Matej Urbančič \n" "Language-Team: Slovenian GNOME Translation Team \n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=4; plural=(n%100==1 ? 1 : n%100==2 ? 2 : n%100==3 || n%100==4 ? 3 : 0);\n" "X-Poedit-Country: SLOVENIA\n" "X-Poedit-Language: Slovenian\n" "X-Poedit-SourceCharset: utf-8\n" #: ../gyrus.desktop.in.in.h:1 msgid "Gyrus IMAP Cyrus Administrator" msgstr "Skrbniški program Gyrus za Cyrus IMAP" #: ../gyrus.desktop.in.in.h:2 msgid "Administer the mailboxes of your IMAP Cyrus servers" msgstr "Skrbništvo poštnih predalov strežnikov IMAP Cyrus" #: ../src/ui/create_mailbox.xml.h:1 msgid "Name:" msgstr "Ime:" #: ../src/ui/create_mailbox.xml.h:2 msgid "Quota (MB):" msgstr "Omejitev (MB):" #: ../src/ui/create_mailbox.xml.h:3 msgid "Assign quota" msgstr "Dodeli omejitev" #: ../src/ui/find.xml.h:1 msgid "Search for:" msgstr "Poišči:" #: ../src/ui/find.xml.h:2 msgid "Match _entire word only" msgstr "Poišči le _cele besede" #: ../src/ui/find.xml.h:3 msgid "_Wrap around" msgstr "_Prelomi vrstice" #: ../src/ui/page.xml.h:1 msgid "Free space:" msgstr "Nezaseden prostor:" #: ../src/ui/page.xml.h:2 msgid "Assigned space:" msgstr "Dodeljen prostor:" #: ../src/ui/page.xml.h:3 msgid "Owner:" msgstr "Lastnik:" #: ../src/ui/page.xml.h:4 msgid "New quota (MB)" msgstr "Nova omejitev (MB)" #: ../src/ui/page.xml.h:5 msgid "Modify quota" msgstr "Sprememba omejitve" #: ../src/ui/page.xml.h:6 msgid "Access control list" msgstr "Seznam nadzora dostopa" #: ../src/ui/page.xml.h:7 #: ../src/ui/sessions_edit.xml.h:5 #: ../tests/gyrus-talk.xml.h:2 msgid "Host:" msgstr "Gostitelj:" #: ../src/ui/page.xml.h:8 msgid "User:" msgstr "Uporabnik:" #: ../src/ui/page.xml.h:9 #: ../src/ui/sessions_edit.xml.h:4 #: ../tests/gyrus-talk.xml.h:4 msgid "Port:" msgstr "Vrata:" #: ../src/ui/password.xml.h:1 msgid "Password" msgstr "Geslo" #: ../src/ui/password.xml.h:2 msgid "Enter your password" msgstr "Vnos gesla" #: ../src/ui/report.xml.h:1 msgid "Report" msgstr "Poročilo" #: ../src/ui/report.xml.h:3 #, no-c-format msgid "Over (%)" msgstr "Nad (%)" #: ../src/ui/sessions.xml.h:1 msgid "Open session" msgstr "Odpri sejo" #: ../src/ui/sessions_edit.xml.h:1 msgid "Session name:" msgstr "Ime seje:" #: ../src/ui/sessions_edit.xml.h:2 msgid "Password:" msgstr "Geslo:" #: ../src/ui/sessions_edit.xml.h:3 msgid "Username:" msgstr "Uporabniško ime:" #: ../src/ui/sessions_edit.xml.h:6 msgid "Session details" msgstr "Podrobnosti seje" #: ../src/ui/sessions_edit.xml.h:7 #: ../tests/gyrus-talk.xml.h:3 msgid "Use a secure connection" msgstr "Uporabi varno povezavo" #: ../src/ui/sessions_edit.xml.h:8 msgid "Mailbox hierarchy separator:" msgstr "Ločilnik hierarhije poštnega predala:" #: ../src/ui/sessions_edit.xml.h:9 msgid "Options" msgstr "Možnosti" #: ../src/gyrus-admin-acl.c:54 #: ../src/gyrus-admin-acl.c:103 #, c-format msgid "Mailbox '%s' does not exist." msgstr "Poštni predal '%s' ne obstaja." #: ../src/gyrus-admin-acl.c:76 msgid "Invalid identifier." msgstr "Neveljaven določilnik." #: ../src/gyrus-admin-acl.c:82 msgid "Empty entry name." msgstr "Prazno ime vnosa." #: ../src/gyrus-admin-acl.c:87 msgid "Empty mailbox name." msgstr "Prazno ime poštnega predala." #: ../src/gyrus-admin-acl.c:107 msgid "Missing required argument to Setacl" msgstr "Manjka zahtevani argument za Setacl" #: ../src/gyrus-admin-acl.c:143 #: ../src/gyrus-admin-mailbox.c:80 msgid "Permission denied" msgstr "Dovoljenje je zavrnjeno" #: ../src/gyrus-admin-acl.c:175 msgid "Empty access control list." msgstr "Prazen seznam nadzora dostopa." #: ../src/gyrus-admin-mailbox.c:78 msgid "Quota does not exist" msgstr "Omejitev ni določena" #: ../src/gyrus-admin-mailbox.c:172 #, c-format msgid "Quota overloaded" msgstr "Omejitev je presežena" #: ../src/gyrus-admin-mailbox.c:230 msgid "Quota not valid. Please try again." msgstr "Omejitev ni veljavna. Poskusite znova." #: ../src/gyrus-admin-mailbox.c:244 msgid "Unable to change quota. Are you sure do you have the appropriate permissions?" msgstr "Omejitve ni mogoče spremeniti. Ali ste prepričani, da imate ustrezna dovoljenja?" #: ../src/gyrus-admin-mailbox.c:324 #, c-format msgid "'%s' is not a valid mailbox name. Please try a different one." msgstr "'%s' ni veljavno ime poštnega predala. Poskusite z drugim imenom." #: ../src/gyrus-admin-mailbox.c:332 #, c-format msgid "Parent mailbox '%s' does not exist. Please refresh the mailboxes list and try again." msgstr "Nadrejeni poštni predal '%s' ne obstaja. Osvežite seznam poštnih predalov in poskusite ponovno." #: ../src/gyrus-admin-mailbox.c:342 #, c-format msgid "Mailbox '%s' already exists. Please try a different name." msgstr "Poštni predal '%s' že obstaja. Poskusite drugo ime." #: ../src/gyrus-admin-mailbox.c:355 msgid "Unable to create the mailbox. Are you sure do you have the appropriate permissions?" msgstr "Poštnega predala ni mogoče ustvariti. Ali ste prepričani, da imate primerna dovoljenja?" #: ../src/gyrus-admin-mailbox.c:366 msgid "Mailbox created, but could not set quota." msgstr "Poštni predal je ustvarjen, toda ni mogoče ustvariti omejitve." #: ../src/gyrus-admin-mailbox.c:433 #, c-format msgid "Unable to delete '%s'. Permission denied." msgstr "Ni mogoče izbrisati '%s'. Dovoljenje je zavrnjeno." #: ../src/gyrus-admin-mailbox.c:634 msgid "new entry" msgstr "nov vnos" #: ../src/gyrus-admin.c:447 #: ../src/gyrus-report.c:289 #, c-format msgid "Users (%d)" msgstr "Uporabniki (%d)" #: ../src/gyrus-admin.c:453 #, c-format msgid "Orphaned mailboxes (%d)" msgstr "Osiroteli poštni predali (%d)" #: ../src/gyrus-admin.c:497 #: ../src/gyrus-admin.c:855 msgid "Orphaned mailboxes" msgstr "Osiroteli poštni predali" #: ../src/gyrus-admin.c:497 #: ../src/gyrus-admin.c:853 #: ../src/gyrus-report.c:170 msgid "Users" msgstr "Uporabniki" #: ../src/gyrus-admin.c:565 msgid "lookup" msgstr "iskanje" #: ../src/gyrus-admin.c:566 msgid "read" msgstr "prebrano" #: ../src/gyrus-admin.c:567 msgid "seen" msgstr "pregledano" #: ../src/gyrus-admin.c:568 msgid "write" msgstr "zapiši" #: ../src/gyrus-admin.c:569 msgid "insert" msgstr "vstavi" #: ../src/gyrus-admin.c:570 msgid "post" msgstr "objavi" #: ../src/gyrus-admin.c:571 msgid "create" msgstr "ustvari" #: ../src/gyrus-admin.c:572 msgid "delete" msgstr "izbriši" #: ../src/gyrus-admin.c:573 msgid "admin" msgstr "skrbnik" #: ../src/gyrus-admin.c:581 msgid "Identifier" msgstr "Določilnik" #: ../src/gyrus-admin.c:651 msgid "Couldn't create the client socket." msgstr "Vtiča odjemalca ni mogoče ustvariti." #: ../src/gyrus-admin.c:659 msgid "Couldn't parse the server address." msgstr "Naslova strežnika ni mogoče razčleniti." #: ../src/gyrus-admin.c:668 #, c-format msgid "Could not connect to %s, port %d." msgstr "Ni se mogoče povezati z %s, vrata %d" #: ../src/gyrus-admin.c:1001 msgid "Unable to connect with empty passwords. Please introduce your password." msgstr "Brez geslel se ni mogoče povezati." #: ../src/gyrus-admin.c:1008 msgid "Incorrect login/password" msgstr "Napačno uporabniško ime/geslo" #: ../src/gyrus-admin.c:1364 msgid "Could not change permission. Server error: " msgstr "Dovoljenja ni mogoče spremeniti. Napaka strežnika:" #: ../src/gyrus-admin.c:1407 #, c-format msgid "An entry called '%s' already exists. Overwrite it?" msgstr "Vnos z imenom '%s' že obstaja. Ali naj se prepiše?" #: ../src/gyrus-dialog-find-mailbox.c:171 #, c-format msgid "The text '%s' was not found in the mailbox list." msgstr "Besedila '%s' ni mogoče najti v seznamu poštnih predalov." #: ../src/gyrus-dialog-find-mailbox.c:275 msgid "Find mailbox" msgstr "Najdi poštni predal" #: ../src/gyrus-dialog-mailbox-new.c:93 msgid "Quota not valid" msgstr "Omejitev ni veljavna" #: ../src/gyrus-dialog-mailbox-new.c:220 msgid "New mailbox" msgstr "Nov poštni predal" #: ../src/gyrus-main-app.c:146 #, c-format msgid "Really delete mailbox '%s' and all of its submailboxes?" msgstr "Ali res želite izbrisati poštni predal '%s' in vse podrejene poštne predale?" #: ../src/gyrus-main-app.c:261 #: ../src/gyrus-main-app.c:436 #: ../src/gyrus-main-app.c:732 msgid "Cyrus IMAP Administrator" msgstr "Skrbnik Cyrus IMAP" #: ../src/gyrus-main-app.c:275 #, c-format msgid "%s - Cyrus IMAP Administrator" msgstr "%s - skrbnik Cyrus IMAP" #: ../src/gyrus-main-app.c:383 msgid "_File" msgstr "_Datoteka" #: ../src/gyrus-main-app.c:384 msgid "_Edit" msgstr "_Uredi" #: ../src/gyrus-main-app.c:385 msgid "_ACL" msgstr "_ACL" #: ../src/gyrus-main-app.c:386 msgid "_View" msgstr "_Pogled" #: ../src/gyrus-main-app.c:387 msgid "_Help" msgstr "Pomo_č" #: ../src/gyrus-main-app.c:388 msgid "Go to server..." msgstr "Pojdi na strežnik ..." #: ../src/gyrus-main-app.c:389 msgid "Show the list of servers" msgstr "Pokaži seznam strežnikov" #: ../src/gyrus-main-app.c:397 msgid "Add mailbox" msgstr "Dodaj poštni predal" #: ../src/gyrus-main-app.c:398 msgid "Add a mailbox under the one selected" msgstr "Dodajanje poštnega predala pod izbrani poštni predal" #: ../src/gyrus-main-app.c:400 msgid "Search for a mailbox in current server" msgstr "Iskanje poštnega predala na trenutnem strežniku" #: ../src/gyrus-main-app.c:402 msgid "Refresh the mailbox list" msgstr "Osveži seznam poštnih predalov" #: ../src/gyrus-main-app.c:403 msgid "Create report..." msgstr "Ustvari poročilo ..." #: ../src/gyrus-main-app.c:404 msgid "Create report of users with quota problems" msgstr "Ustvarjanje poročila o uporabnikih, ki imajo težave z omejitvami" #: ../src/gyrus-main-app.c:408 msgid "New entry" msgstr "Nov vnos" #: ../src/gyrus-main-app.c:409 msgid "Create a new ACL entry in current mailbox" msgstr "Ustvarjanje novega vnosa ACL v trenutni poštni predal" #: ../src/gyrus-main-app.c:410 msgid "Remove mailbox" msgstr "Odstrani poštni predal" #: ../src/gyrus-main-app.c:411 msgid "Remove current mailbox from the server" msgstr "Odstranitev trenutnega poštnega predala s strežnika" #: ../src/gyrus-main-app.c:416 msgid "Rename entry" msgstr "Preimenuj vnos" #: ../src/gyrus-main-app.c:417 msgid "Rename selected ACL entry" msgstr "Preimenovanje izbranega vnosa ACL" #: ../src/gyrus-main-app.c:418 msgid "Delete entry" msgstr "Izbriši vnos" #: ../src/gyrus-main-app.c:419 msgid "Delete selected ACL entry" msgstr "Izbris izbranega vnosa ACL" #: ../src/gyrus-main-app.c:552 msgid "translators-credits" msgstr "Andrej Žnidaršič " #: ../src/gyrus-main-app.c:562 msgid "GNOME Cyrus Administrator" msgstr "GNOME Cyrus skrbništvo" #: ../src/gyrus-main-app.c:564 msgid "" "(c) 2003-2005 GNOME Foundation\n" "(c) 2004-2005 Claudio Saavedra" msgstr "" "(c) 2003-2005 GNOME Foundation\n" "(c) 2004-2005 Claudio Saavedra" #: ../src/gyrus-main-app.c:566 msgid "Administration tool for Cyrus IMAP servers." msgstr "Skrbniško orodje za Cyrus IMAP strežnike." #. set title #: ../src/gyrus-report.c:107 #, c-format msgid "Mailbox space usage report for %s" msgstr "Poročilo zasedenosti poštnega predala za %s" #: ../src/gyrus-report.c:191 #: ../src/gyrus-report.c:492 msgid "Quota (%)" msgstr "Omejitev (%)" #: ../src/gyrus-report.c:204 #: ../src/gyrus-report.c:496 msgid "Assigned (KB)" msgstr "Dodeljeno (KB)" #: ../src/gyrus-report.c:215 #: ../src/gyrus-report.c:500 msgid "Used (KB)" msgstr "Porabljeno (KB)" #. Translators: this represents the number of pages being printed. #: ../src/gyrus-report.c:465 #, c-format msgid "%d/%d" msgstr "%d/%d" #: ../src/gyrus-report.c:488 msgid "User" msgstr "Uporabnik" #: ../src/gyrus-session.c:164 msgid "Edit session" msgstr "Urejanje seje" #: ../src/gyrus-session.c:178 msgid "New session" msgstr "Nova seja" #: ../src/gyrus-session.c:357 msgid "A session name is required." msgstr "Zahtevano je ime seje." #: ../src/gyrus-session.c:368 #, c-format msgid "Session named \"%s\" already exists." msgstr "Seja z imenom \"%s\" že obstaja." #: ../src/gyrus-session.c:464 #: ../src/gyrus-session.c:598 msgid "Autodetect" msgstr "Samodejno zaznavanje" #: ../src/gyrus-session.c:549 msgid "Session" msgstr "Seja" #: ../src/gyrus-session.c:718 msgid "No host specified." msgstr "Gostitelj ni določen." #: ../tests/gyrus-talk.xml.h:1 msgid "Talk - Echo client" msgstr "Govor - odmev odjemalca" #: ../tests/gyrus-talk.xml.h:5 msgid "_Connect" msgstr "_Poveži" #: ../tests/gyrus-talk.xml.h:6 msgid "Connection" msgstr "Povezava" #: ../tests/gyrus-talk.xml.h:7 msgid "Command:" msgstr "Ukaz:" #: ../tests/gyrus-talk.xml.h:8 msgid "_Send" msgstr "_Pošlji" #~ msgid "Name:" #~ msgstr "Ime:" #~ msgid "Quota (MB):" #~ msgstr "Omejitev (MB):" #~ msgid "Host:" #~ msgstr "Gostitelj:" #~ msgid "Port:" #~ msgstr "Vrata:" #~ msgid "User:" #~ msgstr "Uporabnik:" #~ msgid "Connection" #~ msgstr "Povezava" #~ msgid "*" #~ msgstr "*" #~ msgid "Create mailbox" #~ msgstr "Ustvari poštni predal" #~ msgid "Find" #~ msgstr "Najdi" #~ msgid "Mailbox quota:" #~ msgstr "Omejitev poštnega predala:" #~ msgid "Mailboxes tree:" #~ msgstr "Drevo poštnih predalov:" #~ msgid "Default suffix for changing quota:" #~ msgstr "Privzeta predpona za spreminjanje omejitve:" #~ msgid "Preferences" #~ msgstr "Možnosti" #~ msgid "View complete mailboxes tree" #~ msgstr "Pogled celotnega drevesa poštnih predalov" #~ msgid "" #~ ".\n" #~ "/\n" #~ "Autodetect" #~ msgstr "" #~ ".\n" #~ "/\n" #~ "Samodejno zaznavanje" #~ msgid "%s could not be found. Please check the name and try again." #~ msgstr "%s ni mogoče najti. Preverite ime in poskusite znova." #~ msgid "_Disconnect" #~ msgstr "_Prekini povezavo" gyrus-0.4.2/po/sr.po000066400000000000000000000356171426522072200143060ustar00rootroot00000000000000# Serbian translation for gyrus. # Copyright (C) 2013 gyrus's COPYRIGHT HOLDER # This file is distributed under the same license as the gyrus package. # Мирослав Николић , 2013. msgid "" msgstr "" "Project-Id-Version: gyrus master\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gyrus&" "keywords=I18N+L10N&component=general\n" "POT-Creation-Date: 2012-11-12 01:22+0000\n" "PO-Revision-Date: 2013-01-15 09:44+0200\n" "Last-Translator: Мирослав Николић \n" "Language-Team: Serbian \n" "Language: sr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=4; plural=n==1? 3 : n%10==1 && n%100!=11 ? 0 : " "n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" "X-Project-Style: gnome\n" #: ../gyrus.desktop.in.in.h:1 msgid "Gyrus IMAP Cyrus Administrator" msgstr "Гирус ИМАП Цирус администратор" #: ../gyrus.desktop.in.in.h:2 msgid "Administer the mailboxes of your IMAP Cyrus servers" msgstr "Администрирајте сандучиће вашег ИМАП Цирус сервера" #: ../src/ui/create_mailbox.xml.h:1 msgid "Name:" msgstr "Име:" #: ../src/ui/create_mailbox.xml.h:2 msgid "Quota (MB):" msgstr "Квота (MB):" #: ../src/ui/create_mailbox.xml.h:3 msgid "Assign quota" msgstr "Доделите квоту" #: ../src/ui/find.xml.h:1 msgid "Search for:" msgstr "Потражи:" #: ../src/ui/find.xml.h:2 msgid "Match _entire word only" msgstr "Упореди само _целе речи" #: ../src/ui/find.xml.h:3 msgid "_Wrap around" msgstr "_Преламај около" #: ../src/ui/page.xml.h:1 msgid "Free space:" msgstr "Слободан простор:" #: ../src/ui/page.xml.h:2 msgid "Assigned space:" msgstr "Додељени простор:" #: ../src/ui/page.xml.h:3 msgid "Owner:" msgstr "Власник:" #: ../src/ui/page.xml.h:4 msgid "New quota (MB)" msgstr "Нова квота (MB)" #: ../src/ui/page.xml.h:5 msgid "Modify quota" msgstr "Измените квоту" #: ../src/ui/page.xml.h:6 msgid "Access control list" msgstr "Списак управљања приступом" #: ../src/ui/page.xml.h:7 ../src/ui/sessions_edit.xml.h:5 #: ../tests/gyrus-talk.xml.h:2 msgid "Host:" msgstr "Домаћин:" #: ../src/ui/page.xml.h:8 msgid "User:" msgstr "Корисник:" #: ../src/ui/page.xml.h:9 ../src/ui/sessions_edit.xml.h:4 #: ../tests/gyrus-talk.xml.h:4 msgid "Port:" msgstr "Прикључник:" #: ../src/ui/password.xml.h:1 msgid "Password" msgstr "Лозинка" #: ../src/ui/password.xml.h:2 msgid "Enter your password" msgstr "Унесите вашу лозинку" #: ../src/ui/report.xml.h:1 msgid "Report" msgstr "Извештај" #: ../src/ui/report.xml.h:3 #, no-c-format msgid "Over (%)" msgstr "Преко (%)" #: ../src/ui/sessions.xml.h:1 msgid "Open session" msgstr "Отворите сесију" #: ../src/ui/sessions_edit.xml.h:1 msgid "Session name:" msgstr "Назив сесије:" #: ../src/ui/sessions_edit.xml.h:2 msgid "Password:" msgstr "Лозинка:" #: ../src/ui/sessions_edit.xml.h:3 msgid "Username:" msgstr "Корисничко име:" #: ../src/ui/sessions_edit.xml.h:6 msgid "Session details" msgstr "Појединости сесије" #: ../src/ui/sessions_edit.xml.h:7 ../tests/gyrus-talk.xml.h:3 msgid "Use a secure connection" msgstr "Користи безбедну везу" #: ../src/ui/sessions_edit.xml.h:8 msgid "Mailbox hierarchy separator:" msgstr "Раздвојник редоследа сандучића:" #: ../src/ui/sessions_edit.xml.h:9 msgid "Options" msgstr "Могућности" #: ../src/gyrus-admin-acl.c:54 ../src/gyrus-admin-acl.c:103 #, c-format msgid "Mailbox '%s' does not exist." msgstr "Сандуче „%s“ не постоји." #: ../src/gyrus-admin-acl.c:76 msgid "Invalid identifier." msgstr "Неисправан одредник." #: ../src/gyrus-admin-acl.c:82 msgid "Empty entry name." msgstr "Назив уноса је празан." #: ../src/gyrus-admin-acl.c:87 msgid "Empty mailbox name." msgstr "Назив сандучета је празан." #: ../src/gyrus-admin-acl.c:107 msgid "Missing required argument to Setacl" msgstr "Недостаје потребан аргумент за подешавање списка управљања приступом" #: ../src/gyrus-admin-acl.c:143 ../src/gyrus-admin-mailbox.c:80 msgid "Permission denied" msgstr "Приступ је одбијен" #: ../src/gyrus-admin-acl.c:175 msgid "Empty access control list." msgstr "Празан списак управљања приступом." #: ../src/gyrus-admin-mailbox.c:78 msgid "Quota does not exist" msgstr "Квота не постоји" #: ../src/gyrus-admin-mailbox.c:172 #, c-format msgid "Quota overloaded" msgstr "Квота је премашена" #: ../src/gyrus-admin-mailbox.c:230 msgid "Quota not valid. Please try again." msgstr "Квота није исправна. Молим покушајте поново." #: ../src/gyrus-admin-mailbox.c:244 msgid "" "Unable to change quota. Are you sure do you have the appropriate permissions?" msgstr "" "Не могу да изменим квоту. Да ли сте сигурни да имате одговарајућа овлашћења?" #: ../src/gyrus-admin-mailbox.c:324 #, c-format msgid "'%s' is not a valid mailbox name. Please try a different one." msgstr "„%s“ није исправан назив сандучета. Молим покушајте неко друго." #: ../src/gyrus-admin-mailbox.c:332 #, c-format msgid "" "Parent mailbox '%s' does not exist. Please refresh the mailboxes list and " "try again." msgstr "" "Полазно сандуче „%s“ не постоји. Молим освежите списак сандучића и покушајте " "опет." #: ../src/gyrus-admin-mailbox.c:342 #, c-format msgid "Mailbox '%s' already exists. Please try a different name." msgstr "Сандуче „%s“ већ постоји. Молим покушајте други назив." #: ../src/gyrus-admin-mailbox.c:355 msgid "" "Unable to create the mailbox. Are you sure do you have the appropriate " "permissions?" msgstr "" "Не могу да направим сандуче. Да ли сте сигурни да имате одговарајућа " "овлашћења?" #: ../src/gyrus-admin-mailbox.c:366 msgid "Mailbox created, but could not set quota." msgstr "Направио сам сандуче, али не могу да подесим квоту." #: ../src/gyrus-admin-mailbox.c:433 #, c-format msgid "Unable to delete '%s'. Permission denied." msgstr "Не могу да обришем „%s“. Овлашћење је одбијено." #: ../src/gyrus-admin-mailbox.c:634 msgid "new entry" msgstr "нови унос" #: ../src/gyrus-admin.c:447 ../src/gyrus-report.c:289 #, c-format msgid "Users (%d)" msgstr "Корисници (%d)" #: ../src/gyrus-admin.c:453 #, c-format msgid "Orphaned mailboxes (%d)" msgstr "Напуштени сандучићи (%d)" #: ../src/gyrus-admin.c:497 ../src/gyrus-admin.c:855 msgid "Orphaned mailboxes" msgstr "Напуштени сандучићи" #: ../src/gyrus-admin.c:497 ../src/gyrus-admin.c:853 ../src/gyrus-report.c:170 msgid "Users" msgstr "Корисници" #: ../src/gyrus-admin.c:565 msgid "lookup" msgstr "претражује" #: ../src/gyrus-admin.c:566 msgid "read" msgstr "чита" #: ../src/gyrus-admin.c:567 msgid "seen" msgstr "гледа" #: ../src/gyrus-admin.c:568 msgid "write" msgstr "пише" #: ../src/gyrus-admin.c:569 msgid "insert" msgstr "умеће" #: ../src/gyrus-admin.c:570 msgid "post" msgstr "уписује" #: ../src/gyrus-admin.c:571 msgid "create" msgstr "ствара" #: ../src/gyrus-admin.c:572 msgid "delete" msgstr "брише" #: ../src/gyrus-admin.c:573 msgid "admin" msgstr "администрира" #: ../src/gyrus-admin.c:581 msgid "Identifier" msgstr "Одредник" #: ../src/gyrus-admin.c:651 msgid "Couldn't create the client socket." msgstr "Не могу да направим утичницу клијента." #: ../src/gyrus-admin.c:659 msgid "Couldn't parse the server address." msgstr "Не могу да обрадим адресу сервера." #: ../src/gyrus-admin.c:668 #, c-format msgid "Could not connect to %s, port %d." msgstr "Не могу да се повежем на „%s“, прикључник %d." #: ../src/gyrus-admin.c:1001 msgid "Unable to connect with empty passwords. Please introduce your password." msgstr "Не могу да се повежем са празном лозинком. Молим упишите вашу лозинку." #: ../src/gyrus-admin.c:1008 msgid "Incorrect login/password" msgstr "Неисправна пријава/лозинка" #: ../src/gyrus-admin.c:1364 msgid "Could not change permission. Server error: " msgstr "Не могу да изменим овлашћења. Грешка сервера: " #: ../src/gyrus-admin.c:1407 #, c-format msgid "An entry called '%s' already exists. Overwrite it?" msgstr "Унос под називом „%s“ већ постоји. Да га препишем?" #: ../src/gyrus-dialog-find-mailbox.c:171 #, c-format msgid "The text '%s' was not found in the mailbox list." msgstr "Нисам пронашао текст „%s“ на списку сандучића." #: ../src/gyrus-dialog-find-mailbox.c:275 msgid "Find mailbox" msgstr "Нађи сандуче" #: ../src/gyrus-dialog-mailbox-new.c:93 msgid "Quota not valid" msgstr "Квота није исправна" #: ../src/gyrus-dialog-mailbox-new.c:220 msgid "New mailbox" msgstr "Ново сандуче" #: ../src/gyrus-main-app.c:146 #, c-format msgid "Really delete mailbox '%s' and all of its submailboxes?" msgstr "Да обришем сандуче „%s“ и све његове садржане сандучиће?" #: ../src/gyrus-main-app.c:261 ../src/gyrus-main-app.c:436 #: ../src/gyrus-main-app.c:732 msgid "Cyrus IMAP Administrator" msgstr "Цирус ИМАП администратор" #: ../src/gyrus-main-app.c:275 #, c-format msgid "%s - Cyrus IMAP Administrator" msgstr "%s — Цирус ИМАП администратор" #: ../src/gyrus-main-app.c:383 msgid "_File" msgstr "_Датотека" #: ../src/gyrus-main-app.c:384 msgid "_Edit" msgstr "_Уређивање" #: ../src/gyrus-main-app.c:385 msgid "_ACL" msgstr "_СУП" #: ../src/gyrus-main-app.c:386 msgid "_View" msgstr "_Преглед" #: ../src/gyrus-main-app.c:387 msgid "_Help" msgstr "По_моћ" #: ../src/gyrus-main-app.c:388 msgid "Go to server..." msgstr "Иди на сервер..." #: ../src/gyrus-main-app.c:389 msgid "Show the list of servers" msgstr "Прикажите списак сервера" #: ../src/gyrus-main-app.c:397 msgid "Add mailbox" msgstr "Додај сандуче" #: ../src/gyrus-main-app.c:398 msgid "Add a mailbox under the one selected" msgstr "Додај сандуче под једним изабраним" #: ../src/gyrus-main-app.c:400 msgid "Search for a mailbox in current server" msgstr "Потражи сандуче на текућем серверу" #: ../src/gyrus-main-app.c:402 msgid "Refresh the mailbox list" msgstr "Освежи списак сандучића" #: ../src/gyrus-main-app.c:403 msgid "Create report..." msgstr "Направи извештај..." #: ../src/gyrus-main-app.c:404 msgid "Create report of users with quota problems" msgstr "Направите извештај о корисницима са проблемима са квотом" #: ../src/gyrus-main-app.c:408 msgid "New entry" msgstr "Нови унос" #: ../src/gyrus-main-app.c:409 msgid "Create a new ACL entry in current mailbox" msgstr "Направите нови СУП унос у текућем сандучету" #: ../src/gyrus-main-app.c:410 msgid "Remove mailbox" msgstr "Уклони сандуче" #: ../src/gyrus-main-app.c:411 msgid "Remove current mailbox from the server" msgstr "Уклоните текуће сандуче са сервера" #: ../src/gyrus-main-app.c:416 msgid "Rename entry" msgstr "Преименуј унос" #: ../src/gyrus-main-app.c:417 msgid "Rename selected ACL entry" msgstr "Преименујте изабрани СУП унос" #: ../src/gyrus-main-app.c:418 msgid "Delete entry" msgstr "Обриши унос" #: ../src/gyrus-main-app.c:419 msgid "Delete selected ACL entry" msgstr "Обришите изабрани СУП унос" #: ../src/gyrus-main-app.c:552 msgid "translators-credits" msgstr "" " Мирослав Николић\n" "\n" " http://prevod.org — превод на српски језик" #: ../src/gyrus-main-app.c:562 msgid "GNOME Cyrus Administrator" msgstr "Гномов Цирус администратор" #: ../src/gyrus-main-app.c:564 msgid "" "(c) 2003-2005 GNOME Foundation\n" "(c) 2004-2005 Claudio Saavedra" msgstr "" "(c) 2003-2005 Гномова задужбина\n" "(c) 2004-2005 Клаудио Саведра" #: ../src/gyrus-main-app.c:566 msgid "Administration tool for Cyrus IMAP servers." msgstr "Алат за администрацију Цирус ИМАП сервера." #. set title #: ../src/gyrus-report.c:107 #, c-format msgid "Mailbox space usage report for %s" msgstr "Извештај о коришћењу простора сандучета за %s" #: ../src/gyrus-report.c:191 ../src/gyrus-report.c:492 msgid "Quota (%)" msgstr "Квота (%)" #: ../src/gyrus-report.c:204 ../src/gyrus-report.c:496 msgid "Assigned (KB)" msgstr "Додељено (KB)" #: ../src/gyrus-report.c:215 ../src/gyrus-report.c:500 msgid "Used (KB)" msgstr "Искоришћено (KB)" #. Translators: this represents the number of pages being printed. #: ../src/gyrus-report.c:465 #, c-format msgid "%d/%d" msgstr "%d/%d" #: ../src/gyrus-report.c:488 msgid "User" msgstr "Корисник" #: ../src/gyrus-session.c:164 msgid "Edit session" msgstr "Уреди сесију" #: ../src/gyrus-session.c:178 msgid "New session" msgstr "Нова сесија" #: ../src/gyrus-session.c:357 msgid "A session name is required." msgstr "Потребан је назив сесије." #: ../src/gyrus-session.c:368 #, c-format msgid "Session named \"%s\" already exists." msgstr "Већ постоји сесија „%s“." #: ../src/gyrus-session.c:464 ../src/gyrus-session.c:598 msgid "Autodetect" msgstr "Сам препознај" #: ../src/gyrus-session.c:549 msgid "Session" msgstr "Сесија" #: ../src/gyrus-session.c:718 msgid "No host specified." msgstr "Није наведен домаћин." #: ../tests/gyrus-talk.xml.h:1 msgid "Talk - Echo client" msgstr "Ток — Клијент одјека" #: ../tests/gyrus-talk.xml.h:5 msgid "_Connect" msgstr "_Повежи се" #: ../tests/gyrus-talk.xml.h:6 msgid "Connection" msgstr "Веза" #: ../tests/gyrus-talk.xml.h:7 msgid "Command:" msgstr "Наредба:" #: ../tests/gyrus-talk.xml.h:8 msgid "_Send" msgstr "_Пошаљи" gyrus-0.4.2/po/sr@latin.po000066400000000000000000000314521426522072200154270ustar00rootroot00000000000000# Serbian translation for gyrus. # Copyright (C) 2013 gyrus's COPYRIGHT HOLDER # This file is distributed under the same license as the gyrus package. # Miroslav Nikolić , 2013. msgid "" msgstr "" "Project-Id-Version: gyrus master\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gyrus&" "keywords=I18N+L10N&component=general\n" "POT-Creation-Date: 2012-11-12 01:22+0000\n" "PO-Revision-Date: 2013-01-15 09:44+0200\n" "Last-Translator: Miroslav Nikolić \n" "Language-Team: Serbian \n" "Language: sr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=4; plural=n==1? 3 : n%10==1 && n%100!=11 ? 0 : " "n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" "X-Project-Style: gnome\n" #: ../gyrus.desktop.in.in.h:1 msgid "Gyrus IMAP Cyrus Administrator" msgstr "Girus IMAP Cirus administrator" #: ../gyrus.desktop.in.in.h:2 msgid "Administer the mailboxes of your IMAP Cyrus servers" msgstr "Administrirajte sandučiće vašeg IMAP Cirus servera" #: ../src/ui/create_mailbox.xml.h:1 msgid "Name:" msgstr "Ime:" #: ../src/ui/create_mailbox.xml.h:2 msgid "Quota (MB):" msgstr "Kvota (MB):" #: ../src/ui/create_mailbox.xml.h:3 msgid "Assign quota" msgstr "Dodelite kvotu" #: ../src/ui/find.xml.h:1 msgid "Search for:" msgstr "Potraži:" #: ../src/ui/find.xml.h:2 msgid "Match _entire word only" msgstr "Uporedi samo _cele reči" #: ../src/ui/find.xml.h:3 msgid "_Wrap around" msgstr "_Prelamaj okolo" #: ../src/ui/page.xml.h:1 msgid "Free space:" msgstr "Slobodan prostor:" #: ../src/ui/page.xml.h:2 msgid "Assigned space:" msgstr "Dodeljeni prostor:" #: ../src/ui/page.xml.h:3 msgid "Owner:" msgstr "Vlasnik:" #: ../src/ui/page.xml.h:4 msgid "New quota (MB)" msgstr "Nova kvota (MB)" #: ../src/ui/page.xml.h:5 msgid "Modify quota" msgstr "Izmenite kvotu" #: ../src/ui/page.xml.h:6 msgid "Access control list" msgstr "Spisak upravljanja pristupom" #: ../src/ui/page.xml.h:7 ../src/ui/sessions_edit.xml.h:5 #: ../tests/gyrus-talk.xml.h:2 msgid "Host:" msgstr "Domaćin:" #: ../src/ui/page.xml.h:8 msgid "User:" msgstr "Korisnik:" #: ../src/ui/page.xml.h:9 ../src/ui/sessions_edit.xml.h:4 #: ../tests/gyrus-talk.xml.h:4 msgid "Port:" msgstr "Priključnik:" #: ../src/ui/password.xml.h:1 msgid "Password" msgstr "Lozinka" #: ../src/ui/password.xml.h:2 msgid "Enter your password" msgstr "Unesite vašu lozinku" #: ../src/ui/report.xml.h:1 msgid "Report" msgstr "Izveštaj" #: ../src/ui/report.xml.h:3 #, no-c-format msgid "Over (%)" msgstr "Preko (%)" #: ../src/ui/sessions.xml.h:1 msgid "Open session" msgstr "Otvorite sesiju" #: ../src/ui/sessions_edit.xml.h:1 msgid "Session name:" msgstr "Naziv sesije:" #: ../src/ui/sessions_edit.xml.h:2 msgid "Password:" msgstr "Lozinka:" #: ../src/ui/sessions_edit.xml.h:3 msgid "Username:" msgstr "Korisničko ime:" #: ../src/ui/sessions_edit.xml.h:6 msgid "Session details" msgstr "Pojedinosti sesije" #: ../src/ui/sessions_edit.xml.h:7 ../tests/gyrus-talk.xml.h:3 msgid "Use a secure connection" msgstr "Koristi bezbednu vezu" #: ../src/ui/sessions_edit.xml.h:8 msgid "Mailbox hierarchy separator:" msgstr "Razdvojnik redosleda sandučića:" #: ../src/ui/sessions_edit.xml.h:9 msgid "Options" msgstr "Mogućnosti" #: ../src/gyrus-admin-acl.c:54 ../src/gyrus-admin-acl.c:103 #, c-format msgid "Mailbox '%s' does not exist." msgstr "Sanduče „%s“ ne postoji." #: ../src/gyrus-admin-acl.c:76 msgid "Invalid identifier." msgstr "Neispravan odrednik." #: ../src/gyrus-admin-acl.c:82 msgid "Empty entry name." msgstr "Naziv unosa je prazan." #: ../src/gyrus-admin-acl.c:87 msgid "Empty mailbox name." msgstr "Naziv sandučeta je prazan." #: ../src/gyrus-admin-acl.c:107 msgid "Missing required argument to Setacl" msgstr "Nedostaje potreban argument za podešavanje spiska upravljanja pristupom" #: ../src/gyrus-admin-acl.c:143 ../src/gyrus-admin-mailbox.c:80 msgid "Permission denied" msgstr "Pristup je odbijen" #: ../src/gyrus-admin-acl.c:175 msgid "Empty access control list." msgstr "Prazan spisak upravljanja pristupom." #: ../src/gyrus-admin-mailbox.c:78 msgid "Quota does not exist" msgstr "Kvota ne postoji" #: ../src/gyrus-admin-mailbox.c:172 #, c-format msgid "Quota overloaded" msgstr "Kvota je premašena" #: ../src/gyrus-admin-mailbox.c:230 msgid "Quota not valid. Please try again." msgstr "Kvota nije ispravna. Molim pokušajte ponovo." #: ../src/gyrus-admin-mailbox.c:244 msgid "" "Unable to change quota. Are you sure do you have the appropriate permissions?" msgstr "" "Ne mogu da izmenim kvotu. Da li ste sigurni da imate odgovarajuća ovlašćenja?" #: ../src/gyrus-admin-mailbox.c:324 #, c-format msgid "'%s' is not a valid mailbox name. Please try a different one." msgstr "„%s“ nije ispravan naziv sandučeta. Molim pokušajte neko drugo." #: ../src/gyrus-admin-mailbox.c:332 #, c-format msgid "" "Parent mailbox '%s' does not exist. Please refresh the mailboxes list and " "try again." msgstr "" "Polazno sanduče „%s“ ne postoji. Molim osvežite spisak sandučića i pokušajte " "opet." #: ../src/gyrus-admin-mailbox.c:342 #, c-format msgid "Mailbox '%s' already exists. Please try a different name." msgstr "Sanduče „%s“ već postoji. Molim pokušajte drugi naziv." #: ../src/gyrus-admin-mailbox.c:355 msgid "" "Unable to create the mailbox. Are you sure do you have the appropriate " "permissions?" msgstr "" "Ne mogu da napravim sanduče. Da li ste sigurni da imate odgovarajuća " "ovlašćenja?" #: ../src/gyrus-admin-mailbox.c:366 msgid "Mailbox created, but could not set quota." msgstr "Napravio sam sanduče, ali ne mogu da podesim kvotu." #: ../src/gyrus-admin-mailbox.c:433 #, c-format msgid "Unable to delete '%s'. Permission denied." msgstr "Ne mogu da obrišem „%s“. Ovlašćenje je odbijeno." #: ../src/gyrus-admin-mailbox.c:634 msgid "new entry" msgstr "novi unos" #: ../src/gyrus-admin.c:447 ../src/gyrus-report.c:289 #, c-format msgid "Users (%d)" msgstr "Korisnici (%d)" #: ../src/gyrus-admin.c:453 #, c-format msgid "Orphaned mailboxes (%d)" msgstr "Napušteni sandučići (%d)" #: ../src/gyrus-admin.c:497 ../src/gyrus-admin.c:855 msgid "Orphaned mailboxes" msgstr "Napušteni sandučići" #: ../src/gyrus-admin.c:497 ../src/gyrus-admin.c:853 ../src/gyrus-report.c:170 msgid "Users" msgstr "Korisnici" #: ../src/gyrus-admin.c:565 msgid "lookup" msgstr "pretražuje" #: ../src/gyrus-admin.c:566 msgid "read" msgstr "čita" #: ../src/gyrus-admin.c:567 msgid "seen" msgstr "gleda" #: ../src/gyrus-admin.c:568 msgid "write" msgstr "piše" #: ../src/gyrus-admin.c:569 msgid "insert" msgstr "umeće" #: ../src/gyrus-admin.c:570 msgid "post" msgstr "upisuje" #: ../src/gyrus-admin.c:571 msgid "create" msgstr "stvara" #: ../src/gyrus-admin.c:572 msgid "delete" msgstr "briše" #: ../src/gyrus-admin.c:573 msgid "admin" msgstr "administrira" #: ../src/gyrus-admin.c:581 msgid "Identifier" msgstr "Odrednik" #: ../src/gyrus-admin.c:651 msgid "Couldn't create the client socket." msgstr "Ne mogu da napravim utičnicu klijenta." #: ../src/gyrus-admin.c:659 msgid "Couldn't parse the server address." msgstr "Ne mogu da obradim adresu servera." #: ../src/gyrus-admin.c:668 #, c-format msgid "Could not connect to %s, port %d." msgstr "Ne mogu da se povežem na „%s“, priključnik %d." #: ../src/gyrus-admin.c:1001 msgid "Unable to connect with empty passwords. Please introduce your password." msgstr "Ne mogu da se povežem sa praznom lozinkom. Molim upišite vašu lozinku." #: ../src/gyrus-admin.c:1008 msgid "Incorrect login/password" msgstr "Neispravna prijava/lozinka" #: ../src/gyrus-admin.c:1364 msgid "Could not change permission. Server error: " msgstr "Ne mogu da izmenim ovlašćenja. Greška servera: " #: ../src/gyrus-admin.c:1407 #, c-format msgid "An entry called '%s' already exists. Overwrite it?" msgstr "Unos pod nazivom „%s“ već postoji. Da ga prepišem?" #: ../src/gyrus-dialog-find-mailbox.c:171 #, c-format msgid "The text '%s' was not found in the mailbox list." msgstr "Nisam pronašao tekst „%s“ na spisku sandučića." #: ../src/gyrus-dialog-find-mailbox.c:275 msgid "Find mailbox" msgstr "Nađi sanduče" #: ../src/gyrus-dialog-mailbox-new.c:93 msgid "Quota not valid" msgstr "Kvota nije ispravna" #: ../src/gyrus-dialog-mailbox-new.c:220 msgid "New mailbox" msgstr "Novo sanduče" #: ../src/gyrus-main-app.c:146 #, c-format msgid "Really delete mailbox '%s' and all of its submailboxes?" msgstr "Da obrišem sanduče „%s“ i sve njegove sadržane sandučiće?" #: ../src/gyrus-main-app.c:261 ../src/gyrus-main-app.c:436 #: ../src/gyrus-main-app.c:732 msgid "Cyrus IMAP Administrator" msgstr "Cirus IMAP administrator" #: ../src/gyrus-main-app.c:275 #, c-format msgid "%s - Cyrus IMAP Administrator" msgstr "%s — Cirus IMAP administrator" #: ../src/gyrus-main-app.c:383 msgid "_File" msgstr "_Datoteka" #: ../src/gyrus-main-app.c:384 msgid "_Edit" msgstr "_Uređivanje" #: ../src/gyrus-main-app.c:385 msgid "_ACL" msgstr "_SUP" #: ../src/gyrus-main-app.c:386 msgid "_View" msgstr "_Pregled" #: ../src/gyrus-main-app.c:387 msgid "_Help" msgstr "Po_moć" #: ../src/gyrus-main-app.c:388 msgid "Go to server..." msgstr "Idi na server..." #: ../src/gyrus-main-app.c:389 msgid "Show the list of servers" msgstr "Prikažite spisak servera" #: ../src/gyrus-main-app.c:397 msgid "Add mailbox" msgstr "Dodaj sanduče" #: ../src/gyrus-main-app.c:398 msgid "Add a mailbox under the one selected" msgstr "Dodaj sanduče pod jednim izabranim" #: ../src/gyrus-main-app.c:400 msgid "Search for a mailbox in current server" msgstr "Potraži sanduče na tekućem serveru" #: ../src/gyrus-main-app.c:402 msgid "Refresh the mailbox list" msgstr "Osveži spisak sandučića" #: ../src/gyrus-main-app.c:403 msgid "Create report..." msgstr "Napravi izveštaj..." #: ../src/gyrus-main-app.c:404 msgid "Create report of users with quota problems" msgstr "Napravite izveštaj o korisnicima sa problemima sa kvotom" #: ../src/gyrus-main-app.c:408 msgid "New entry" msgstr "Novi unos" #: ../src/gyrus-main-app.c:409 msgid "Create a new ACL entry in current mailbox" msgstr "Napravite novi SUP unos u tekućem sandučetu" #: ../src/gyrus-main-app.c:410 msgid "Remove mailbox" msgstr "Ukloni sanduče" #: ../src/gyrus-main-app.c:411 msgid "Remove current mailbox from the server" msgstr "Uklonite tekuće sanduče sa servera" #: ../src/gyrus-main-app.c:416 msgid "Rename entry" msgstr "Preimenuj unos" #: ../src/gyrus-main-app.c:417 msgid "Rename selected ACL entry" msgstr "Preimenujte izabrani SUP unos" #: ../src/gyrus-main-app.c:418 msgid "Delete entry" msgstr "Obriši unos" #: ../src/gyrus-main-app.c:419 msgid "Delete selected ACL entry" msgstr "Obrišite izabrani SUP unos" #: ../src/gyrus-main-app.c:552 msgid "translators-credits" msgstr "" " Miroslav Nikolić\n" "\n" " http://prevod.org — prevod na srpski jezik" #: ../src/gyrus-main-app.c:562 msgid "GNOME Cyrus Administrator" msgstr "Gnomov Cirus administrator" #: ../src/gyrus-main-app.c:564 msgid "" "(c) 2003-2005 GNOME Foundation\n" "(c) 2004-2005 Claudio Saavedra" msgstr "" "(c) 2003-2005 Gnomova zadužbina\n" "(c) 2004-2005 Klaudio Savedra" #: ../src/gyrus-main-app.c:566 msgid "Administration tool for Cyrus IMAP servers." msgstr "Alat za administraciju Cirus IMAP servera." #. set title #: ../src/gyrus-report.c:107 #, c-format msgid "Mailbox space usage report for %s" msgstr "Izveštaj o korišćenju prostora sandučeta za %s" #: ../src/gyrus-report.c:191 ../src/gyrus-report.c:492 msgid "Quota (%)" msgstr "Kvota (%)" #: ../src/gyrus-report.c:204 ../src/gyrus-report.c:496 msgid "Assigned (KB)" msgstr "Dodeljeno (KB)" #: ../src/gyrus-report.c:215 ../src/gyrus-report.c:500 msgid "Used (KB)" msgstr "Iskorišćeno (KB)" #. Translators: this represents the number of pages being printed. #: ../src/gyrus-report.c:465 #, c-format msgid "%d/%d" msgstr "%d/%d" #: ../src/gyrus-report.c:488 msgid "User" msgstr "Korisnik" #: ../src/gyrus-session.c:164 msgid "Edit session" msgstr "Uredi sesiju" #: ../src/gyrus-session.c:178 msgid "New session" msgstr "Nova sesija" #: ../src/gyrus-session.c:357 msgid "A session name is required." msgstr "Potreban je naziv sesije." #: ../src/gyrus-session.c:368 #, c-format msgid "Session named \"%s\" already exists." msgstr "Već postoji sesija „%s“." #: ../src/gyrus-session.c:464 ../src/gyrus-session.c:598 msgid "Autodetect" msgstr "Sam prepoznaj" #: ../src/gyrus-session.c:549 msgid "Session" msgstr "Sesija" #: ../src/gyrus-session.c:718 msgid "No host specified." msgstr "Nije naveden domaćin." #: ../tests/gyrus-talk.xml.h:1 msgid "Talk - Echo client" msgstr "Tok — Klijent odjeka" #: ../tests/gyrus-talk.xml.h:5 msgid "_Connect" msgstr "_Poveži se" #: ../tests/gyrus-talk.xml.h:6 msgid "Connection" msgstr "Veza" #: ../tests/gyrus-talk.xml.h:7 msgid "Command:" msgstr "Naredba:" #: ../tests/gyrus-talk.xml.h:8 msgid "_Send" msgstr "_Pošalji" gyrus-0.4.2/po/sv.po000066400000000000000000000357651426522072200143160ustar00rootroot00000000000000# Swedish messages for gyrus. # Copyright © 2005, 2006, 2008, 2010, 2015 Free Software Foundation, Inc. # Christian Rose , 2005. # Daniel Nylander , 2006, 2008, 2010. # Anders Jonsson , 2015. # # msgid "" msgstr "" "Project-Id-Version: gyrus\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" "product=gyrus&keywords=I18N+L10N&component=general\n" "POT-Creation-Date: 2013-12-19 14:26+0000\n" "PO-Revision-Date: 2015-05-07 10:59+0100\n" "Last-Translator: Anders Jonsson \n" "Language-Team: Swedish \n" "Language: sv\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: Poedit 1.7.6\n" #: ../gyrus.desktop.in.in.h:1 msgid "Gyrus IMAP Cyrus Administrator" msgstr "Gyrus IMAP Cyrus-administratör" #: ../gyrus.desktop.in.in.h:2 msgid "Administer the mailboxes of your IMAP Cyrus servers" msgstr "Administrera postlådorna för dina IMAP Cyrus-servrar" #: ../src/ui/create_mailbox.xml.h:1 msgid "Name:" msgstr "Namn:" #: ../src/ui/create_mailbox.xml.h:2 msgid "Quota (MB):" msgstr "Kvot (MB):" #: ../src/ui/create_mailbox.xml.h:3 msgid "Assign quota" msgstr "Tilldela kvot" #: ../src/ui/find.xml.h:1 msgid "Search for:" msgstr "Sök efter:" #: ../src/ui/find.xml.h:2 msgid "Match _entire word only" msgstr "Matcha _endast hela ord" #: ../src/ui/find.xml.h:3 msgid "_Wrap around" msgstr "_Börja om från början" #: ../src/ui/page.xml.h:1 msgid "Free space:" msgstr "Ledigt utrymme:" #: ../src/ui/page.xml.h:2 msgid "Assigned space:" msgstr "Tilldelat utrymme:" #: ../src/ui/page.xml.h:3 msgid "Owner:" msgstr "Ägare:" #: ../src/ui/page.xml.h:4 msgid "New quota (MB)" msgstr "Ny kvot (MB)" #: ../src/ui/page.xml.h:5 msgid "Modify quota" msgstr "Ändra kvot" #: ../src/ui/page.xml.h:6 msgid "Access control list" msgstr "Åtkomstkontrollista" #: ../src/ui/page.xml.h:7 ../src/ui/sessions_edit.xml.h:5 #: ../tests/gyrus-talk.xml.h:2 msgid "Host:" msgstr "Värd:" #: ../src/ui/page.xml.h:8 msgid "User:" msgstr "Användare:" #: ../src/ui/page.xml.h:9 ../src/ui/sessions_edit.xml.h:4 #: ../tests/gyrus-talk.xml.h:4 msgid "Port:" msgstr "Port:" #: ../src/ui/password.xml.h:1 msgid "Password" msgstr "Lösenord" #: ../src/ui/password.xml.h:2 msgid "Enter your password" msgstr "Ange ditt lösenord" #: ../src/ui/report.xml.h:1 msgid "Report" msgstr "Rapport" #: ../src/ui/report.xml.h:3 #, no-c-format msgid "Over (%)" msgstr "Över (%)" #: ../src/ui/sessions.xml.h:1 msgid "Open session" msgstr "Öppna session" #: ../src/ui/sessions_edit.xml.h:1 msgid "Session name:" msgstr "Sessionsnamn:" #: ../src/ui/sessions_edit.xml.h:2 msgid "Password:" msgstr "Lösenord:" #: ../src/ui/sessions_edit.xml.h:3 msgid "Username:" msgstr "Användarnamn:" #: ../src/ui/sessions_edit.xml.h:6 msgid "Session details" msgstr "Sessionsdetaljer" #: ../src/ui/sessions_edit.xml.h:7 ../tests/gyrus-talk.xml.h:3 msgid "Use a secure connection" msgstr "Använd en säker anslutning" #: ../src/ui/sessions_edit.xml.h:8 msgid "Mailbox hierarchy separator:" msgstr "Avgränsare för postlådehierarki:" #: ../src/ui/sessions_edit.xml.h:9 msgid "Options" msgstr "Alternativ" #: ../src/gyrus-admin-acl.c:54 ../src/gyrus-admin-acl.c:103 #, c-format msgid "Mailbox '%s' does not exist." msgstr "Postlådan ”%s” finns inte." #: ../src/gyrus-admin-acl.c:76 msgid "Invalid identifier." msgstr "Ogiltig identifierare." #: ../src/gyrus-admin-acl.c:82 msgid "Empty entry name." msgstr "Blankt postnamn." #: ../src/gyrus-admin-acl.c:87 msgid "Empty mailbox name." msgstr "Blankt postlådenamn." #: ../src/gyrus-admin-acl.c:107 msgid "Missing required argument to Setacl" msgstr "Saknar nödvändigt argument till Setacl" #: ../src/gyrus-admin-acl.c:143 ../src/gyrus-admin-mailbox.c:80 msgid "Permission denied" msgstr "Åtkomst nekas" #: ../src/gyrus-admin-acl.c:175 msgid "Empty access control list." msgstr "Tom åtkomstkontrollista." #: ../src/gyrus-admin-mailbox.c:78 msgid "Quota does not exist" msgstr "Kvoten finns inte" #: ../src/gyrus-admin-mailbox.c:172 #, c-format msgid "Quota overloaded" msgstr "Kvoten överskriden" #: ../src/gyrus-admin-mailbox.c:230 msgid "Quota not valid. Please try again." msgstr "Kvoten är inte giltig. Försök igen." #: ../src/gyrus-admin-mailbox.c:244 msgid "" "Unable to change quota. Are you sure do you have the appropriate permissions?" msgstr "" "Kunde inte ändra kvoten. Är du säker på att du har de lämpliga rättigheterna?" #: ../src/gyrus-admin-mailbox.c:324 #, c-format msgid "'%s' is not a valid mailbox name. Please try a different one." msgstr "”%s” är inte ett giltigt postlådenamn. Försök med ett annat namn." #: ../src/gyrus-admin-mailbox.c:332 #, c-format msgid "" "Parent mailbox '%s' does not exist. Please refresh the mailboxes list and " "try again." msgstr "" "Föräldrapostlådan ”%s” finns inte. Uppdatera postlådelistan och försök igen." #: ../src/gyrus-admin-mailbox.c:342 #, c-format msgid "Mailbox '%s' already exists. Please try a different name." msgstr "Postlådan ”%s” finns redan. Försök med ett annat namn." #: ../src/gyrus-admin-mailbox.c:355 msgid "" "Unable to create the mailbox. Are you sure do you have the appropriate " "permissions?" msgstr "" "Kunde inte skapa postlådan. Är du säker på att du har de lämpliga " "rättigheterna?" #: ../src/gyrus-admin-mailbox.c:366 msgid "Mailbox created, but could not set quota." msgstr "Postlåda skapad men kunde inte ställa in kvot." #: ../src/gyrus-admin-mailbox.c:433 #, c-format msgid "Unable to delete '%s'. Permission denied." msgstr "Kunde inte ta bort ”%s”. Åtkomst nekad." #: ../src/gyrus-admin-mailbox.c:634 msgid "new entry" msgstr "ny post" #: ../src/gyrus-admin.c:447 ../src/gyrus-report.c:287 #, c-format msgid "Users (%d)" msgstr "Användare (%d)" #: ../src/gyrus-admin.c:453 #, c-format msgid "Orphaned mailboxes (%d)" msgstr "Föräldralösa postlådor (%d)" #: ../src/gyrus-admin.c:497 ../src/gyrus-admin.c:852 msgid "Orphaned mailboxes" msgstr "Föräldralösa postlådor" #: ../src/gyrus-admin.c:497 ../src/gyrus-admin.c:850 ../src/gyrus-report.c:168 msgid "Users" msgstr "Användare" #: ../src/gyrus-admin.c:565 msgid "lookup" msgstr "slå upp" #: ../src/gyrus-admin.c:566 msgid "read" msgstr "läs" #: ../src/gyrus-admin.c:567 msgid "seen" msgstr "läst" #: ../src/gyrus-admin.c:568 msgid "write" msgstr "skriv" #: ../src/gyrus-admin.c:569 msgid "insert" msgstr "infoga" #: ../src/gyrus-admin.c:570 msgid "post" msgstr "post" #: ../src/gyrus-admin.c:571 msgid "create" msgstr "skapa" #: ../src/gyrus-admin.c:572 msgid "delete" msgstr "ta bort" #: ../src/gyrus-admin.c:573 msgid "admin" msgstr "administrera" #: ../src/gyrus-admin.c:581 msgid "Identifier" msgstr "Identifierare" #: ../src/gyrus-admin.c:651 msgid "Couldn't create the client socket." msgstr "Kunde inte skapa klientuttaget." #: ../src/gyrus-admin.c:659 msgid "Couldn't parse the server address." msgstr "Kunde inte tolka serveradressen." #: ../src/gyrus-admin.c:668 #, c-format msgid "Could not connect to %s, port %d." msgstr "Kunde inte ansluta till %s, port %d." #: ../src/gyrus-admin.c:998 msgid "Unable to connect with empty passwords. Please introduce your password." msgstr "Kunde inte anslut med blanka lösenord. Ange ditt lösenord." #: ../src/gyrus-admin.c:1005 msgid "Incorrect login/password" msgstr "Felaktigt inloggningsnamn/lösenord" #: ../src/gyrus-admin.c:1361 msgid "Could not change permission. Server error: " msgstr "Kunde inte ändra rättighet. Serverfel: " #: ../src/gyrus-admin.c:1404 #, c-format msgid "An entry called '%s' already exists. Overwrite it?" msgstr "En post kallad ”%s” finns redan. Skriva över den?" #: ../src/gyrus-dialog-find-mailbox.c:171 #, c-format msgid "The text '%s' was not found in the mailbox list." msgstr "Texten ”%s” hittades inte i postlådelistan." #: ../src/gyrus-dialog-find-mailbox.c:275 msgid "Find mailbox" msgstr "Sök postlåda" #: ../src/gyrus-dialog-mailbox-new.c:93 msgid "Quota not valid" msgstr "Kvoten är inte giltig" #: ../src/gyrus-dialog-mailbox-new.c:220 msgid "New mailbox" msgstr "Ny postlåda" #: ../src/gyrus-main-app.c:146 #, c-format msgid "Really delete mailbox '%s' and all of its submailboxes?" msgstr "Vill du verkligen ta bort postlådan ”%s” och alla dess underpostlådor?" #: ../src/gyrus-main-app.c:261 ../src/gyrus-main-app.c:407 #: ../src/gyrus-main-app.c:703 msgid "Cyrus IMAP Administrator" msgstr "Cyrus IMAP-administratör" #: ../src/gyrus-main-app.c:275 #, c-format msgid "%s - Cyrus IMAP Administrator" msgstr "%s - Cyrus IMAP-administratör" #: ../src/gyrus-main-app.c:354 msgid "_File" msgstr "_Arkiv" #: ../src/gyrus-main-app.c:355 msgid "_Edit" msgstr "_Redigera" #: ../src/gyrus-main-app.c:356 msgid "_ACL" msgstr "_ACL" #: ../src/gyrus-main-app.c:357 msgid "_View" msgstr "_Visa" #: ../src/gyrus-main-app.c:358 msgid "_Help" msgstr "_Hjälp" #: ../src/gyrus-main-app.c:359 msgid "Go to server..." msgstr "Gå till server…" #: ../src/gyrus-main-app.c:360 msgid "Show the list of servers" msgstr "Visa listan på servrar" #: ../src/gyrus-main-app.c:368 msgid "Add mailbox" msgstr "Lägg till postlåda" #: ../src/gyrus-main-app.c:369 msgid "Add a mailbox under the one selected" msgstr "Lägg till en postlåda under den markerade" #: ../src/gyrus-main-app.c:371 msgid "Search for a mailbox in current server" msgstr "Sök efter en postlåda på aktuell server" #: ../src/gyrus-main-app.c:373 msgid "Refresh the mailbox list" msgstr "Uppdatera postlådelistan" #: ../src/gyrus-main-app.c:374 msgid "Create report..." msgstr "Skapa rapport…" #: ../src/gyrus-main-app.c:375 msgid "Create report of users with quota problems" msgstr "Skapa rapport på användare med kvotproblem" #: ../src/gyrus-main-app.c:379 msgid "New entry" msgstr "Ny post" #: ../src/gyrus-main-app.c:380 msgid "Create a new ACL entry in current mailbox" msgstr "Skapa en ny ACL-post i aktuell postlåda" #: ../src/gyrus-main-app.c:381 msgid "Remove mailbox" msgstr "Ta bort postlåda" #: ../src/gyrus-main-app.c:382 msgid "Remove current mailbox from the server" msgstr "Ta bort aktuell postlåda från servern" #: ../src/gyrus-main-app.c:387 msgid "Rename entry" msgstr "Byt namn på post" #: ../src/gyrus-main-app.c:388 msgid "Rename selected ACL entry" msgstr "Byt namn på markerad ACL-post" #: ../src/gyrus-main-app.c:389 msgid "Delete entry" msgstr "Ta bort post" #: ../src/gyrus-main-app.c:390 msgid "Delete selected ACL entry" msgstr "Ta bort markerad ACL-post" #: ../src/gyrus-main-app.c:523 msgid "translators-credits" msgstr "" "Daniel Nylander \n" "Christian Rose\n" "Anders Jonsson \n" "\n" "Skicka synpunkter på översättningen till\n" "." #: ../src/gyrus-main-app.c:533 msgid "GNOME Cyrus Administrator" msgstr "GNOME Cyrus-administratör" #: ../src/gyrus-main-app.c:535 msgid "" "(c) 2003-2005 GNOME Foundation\n" "(c) 2004-2005 Claudio Saavedra" msgstr "" "© 2003-2005 GNOME Foundation\n" "© 2004-2005 Claudio Saavedra" #: ../src/gyrus-main-app.c:537 msgid "Administration tool for Cyrus IMAP servers." msgstr "Administrationsverktyg för Cyrus IMAP-servrar." #. set title #: ../src/gyrus-report.c:105 #, c-format msgid "Mailbox space usage report for %s" msgstr "Användningsrapport för postlådeutrymme för %s" #: ../src/gyrus-report.c:189 ../src/gyrus-report.c:490 msgid "Quota (%)" msgstr "Kvot (%)" #: ../src/gyrus-report.c:202 ../src/gyrus-report.c:494 msgid "Assigned (KB)" msgstr "Tilldelat (KB)" #: ../src/gyrus-report.c:213 ../src/gyrus-report.c:498 msgid "Used (KB)" msgstr "Använt (KB)" #. Translators: this represents the number of pages being printed. #: ../src/gyrus-report.c:463 #, c-format msgid "%d/%d" msgstr "%d/%d" #: ../src/gyrus-report.c:486 msgid "User" msgstr "Användare" #: ../src/gyrus-session.c:164 msgid "Edit session" msgstr "Redigera session" #: ../src/gyrus-session.c:178 msgid "New session" msgstr "Ny session" #: ../src/gyrus-session.c:357 msgid "A session name is required." msgstr "Ett sessionsnamn krävs." #: ../src/gyrus-session.c:368 #, c-format msgid "Session named \"%s\" already exists." msgstr "En session med namnet ”%s” finns redan." #: ../src/gyrus-session.c:464 ../src/gyrus-session.c:598 msgid "Autodetect" msgstr "Identifiera automatiskt" #: ../src/gyrus-session.c:549 msgid "Session" msgstr "Session" #: ../src/gyrus-session.c:718 msgid "No host specified." msgstr "Ingen värd angiven." #: ../tests/gyrus-talk.xml.h:1 msgid "Talk - Echo client" msgstr "Talk - Ekoklient" #: ../tests/gyrus-talk.xml.h:5 msgid "_Connect" msgstr "_Anslut" #: ../tests/gyrus-talk.xml.h:6 msgid "Connection" msgstr "Anslutning" #: ../tests/gyrus-talk.xml.h:7 msgid "Command:" msgstr "Kommando:" #: ../tests/gyrus-talk.xml.h:8 msgid "_Send" msgstr "_Skicka" #~ msgid "Name:" #~ msgstr "Namn:" #~ msgid "Quota (MB):" #~ msgstr "Kvot (MB):" #~ msgid "Free space:" #~ msgstr "Ledigt utrymme:" #~ msgid "Host:" #~ msgstr "Värd:" #~ msgid "Owner:" #~ msgstr "Ägare:" #~ msgid "Port:" #~ msgstr "Port:" #~ msgid "User:" #~ msgstr "Användare:" #~ msgid "Connection" #~ msgstr "Anslutning" #~ msgid "*" #~ msgstr "*" #~ msgid "Create mailbox" #~ msgstr "Skapa postlåda" #~ msgid "Find" #~ msgstr "Sök" #~ msgid "Mailbox quota:" #~ msgstr "Postlådekvot:" #~ msgid "Mailboxes tree:" #~ msgstr "Påstlådeträd:" #~ msgid "Default suffix for changing quota:" #~ msgstr "Standardändelse för ändring av kvot:" #~ msgid "Preferences" #~ msgstr "Inställningar" #~ msgid "View complete mailboxes tree" #~ msgstr "Visa komplett träd över postlådor" #~ msgid "" #~ ".\n" #~ "/\n" #~ "Autodetect" #~ msgstr "" #~ ".\n" #~ "/\n" #~ "Identifiera automatiskt" #~ msgid "%s could not be found. Please check the name and try again." #~ msgstr "%s kunde inte hittas. Kontrollera namnet och försök igen." #~ msgid "_Disconnect" #~ msgstr "_Koppla ned" #~ msgid "Report: %s" #~ msgstr "Rapport: %s" #~ msgid "Print Report" #~ msgstr "Skriv ut rapport" #~ msgid "Preview" #~ msgstr "Förhandsgranska" #~ msgid "Note: Uses a hostname or IP address" #~ msgstr "" #~ "Notera: Använder ett värdnamn eller IP-adress" #~ msgid "Save as:" #~ msgstr "Spara som:" #~ msgid "_Quit" #~ msgstr "_Avsluta" #~ msgid "Quit the program" #~ msgstr "Avsluta programmet" #~ msgid "_About" #~ msgstr "_Om" #~ msgid "_Find" #~ msgstr "_Sök" #~ msgid "_Refresh" #~ msgstr "_Uppdatera" #~ msgid "Host (or IP address)" #~ msgstr "Värd (eller IP-adress)" #~ msgid "(c) 2003 GNOME Foundation" #~ msgstr "© 2003 GNOME Foundation" #~ msgid "" #~ "B\n" #~ "KB\n" #~ "MB\n" #~ "GB\n" #~ "TB" #~ msgstr "" #~ "B\n" #~ "kB\n" #~ "MB\n" #~ "GB\n" #~ "TB" #~ msgid "Could not change quota." #~ msgstr "Kunde inte ändra kvot." #, fuzzy #~ msgid "Mailbox '%s' does not exists." #~ msgstr "Filen %s finns inte" #~ msgid "© 2003 GNOME Foundation" #~ msgstr "© 2003 GNOME Foundation" gyrus-0.4.2/po/tr.po000066400000000000000000000316031426522072200142760ustar00rootroot00000000000000# Kaan Özdinçer , 2015. # Gökhan Gurbetoğlu , 2016. # msgid "" msgstr "" "Project-Id-Version: gyrus master\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" "product=gyrus&keywords=I18N+L10N&component=general\n" "POT-Creation-Date: 2015-06-01 10:04+0000\n" "PO-Revision-Date: 2016-03-19 16:59+0200\n" "Last-Translator: Gökhan Gurbetoğlu \n" "Language-Team: Türkçe \n" "Language: tr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" "X-Generator: Gtranslator 2.91.6\n" "X-POOTLE-MTIME: 1429362635.000000\n" #: ../gyrus.desktop.in.in.h:1 msgid "Gyrus IMAP Cyrus Administrator" msgstr "Gyrus IMAP Cyrus Yöneticisi" #: ../gyrus.desktop.in.in.h:2 msgid "Administer the mailboxes of your IMAP Cyrus servers" msgstr "IMAP Cyrus sunucularınızın posta kutularını yönetin" #: ../src/ui/create_mailbox.xml.h:1 msgid "Name:" msgstr "İsim:" #: ../src/ui/create_mailbox.xml.h:2 msgid "Quota (MB):" msgstr "Kota (MB):" #: ../src/ui/create_mailbox.xml.h:3 msgid "Assign quota" msgstr "Kota ata" #: ../src/ui/find.xml.h:1 msgid "Search for:" msgstr "Şunu ara:" #: ../src/ui/find.xml.h:2 msgid "Match _entire word only" msgstr "Sadece tüm k_elimeyi eşleştir" #: ../src/ui/find.xml.h:3 msgid "_Wrap around" msgstr "Etrafını _sar" #: ../src/ui/page.xml.h:1 msgid "Free space:" msgstr "Boş alan:" #: ../src/ui/page.xml.h:2 msgid "Assigned space:" msgstr "Atanmış alan:" #: ../src/ui/page.xml.h:3 msgid "Owner:" msgstr "Sahibi:" #: ../src/ui/page.xml.h:4 msgid "New quota (MB)" msgstr "Yeni kota (MB)" #: ../src/ui/page.xml.h:5 msgid "Modify quota" msgstr "Kotayı değiştir" #: ../src/ui/page.xml.h:6 msgid "Access control list" msgstr "Erişim denetim listesi" #: ../src/ui/page.xml.h:7 ../src/ui/sessions_edit.xml.h:5 #: ../tests/gyrus-talk.xml.h:2 msgid "Host:" msgstr "Makine:" #: ../src/ui/page.xml.h:8 msgid "User:" msgstr "Kullanıcı:" #: ../src/ui/page.xml.h:9 ../src/ui/sessions_edit.xml.h:4 #: ../tests/gyrus-talk.xml.h:4 msgid "Port:" msgstr "Bağlantı Noktası:" #: ../src/ui/password.xml.h:1 msgid "Password" msgstr "Parola" #: ../src/ui/password.xml.h:2 msgid "Enter your password" msgstr "Parolanızı girin" #: ../src/ui/report.xml.h:1 msgid "Report" msgstr "Rapor" #: ../src/ui/report.xml.h:3 #, no-c-format msgid "Over (%)" msgstr "Dolu (%)" #: ../src/ui/sessions.xml.h:1 msgid "Open session" msgstr "Oturum aç" #: ../src/ui/sessions_edit.xml.h:1 msgid "Session name:" msgstr "Oturum adı:" #: ../src/ui/sessions_edit.xml.h:2 msgid "Password:" msgstr "Parola:" #: ../src/ui/sessions_edit.xml.h:3 msgid "Username:" msgstr "Kullanıcı adı:" #: ../src/ui/sessions_edit.xml.h:6 msgid "Session details" msgstr "Oturum ayrıntıları" #: ../src/ui/sessions_edit.xml.h:7 ../tests/gyrus-talk.xml.h:3 msgid "Use a secure connection" msgstr "Güvenli bir bağlantı kullan" #: ../src/ui/sessions_edit.xml.h:8 msgid "Mailbox hierarchy separator:" msgstr "Mailbox sıradüzeni ayırıcı:" #: ../src/ui/sessions_edit.xml.h:9 msgid "Options" msgstr "Seçenekler" #: ../src/gyrus-admin-acl.c:53 ../src/gyrus-admin-acl.c:102 #, c-format msgid "Mailbox '%s' does not exist." msgstr "'%s' posta kutusu mevcut değil." #: ../src/gyrus-admin-acl.c:75 msgid "Invalid identifier." msgstr "Geçersiz tanımlayıcı." #: ../src/gyrus-admin-acl.c:81 msgid "Empty entry name." msgstr "Boş girdi adı." #: ../src/gyrus-admin-acl.c:86 msgid "Empty mailbox name." msgstr "Boş posta kutusu adı." #: ../src/gyrus-admin-acl.c:106 msgid "Missing required argument to Setacl" msgstr "Setacl için gerekli bir argüman eksik" #: ../src/gyrus-admin-acl.c:142 ../src/gyrus-admin-mailbox.c:79 msgid "Permission denied" msgstr "İzin verilmedi" #: ../src/gyrus-admin-acl.c:174 msgid "Empty access control list." msgstr "Boş erişim denetim listesi." #: ../src/gyrus-admin-mailbox.c:77 msgid "Quota does not exist" msgstr "Kota mevcut değil" #: ../src/gyrus-admin-mailbox.c:171 #, c-format msgid "Quota overloaded" msgstr "Kota aşılmış" #: ../src/gyrus-admin-mailbox.c:229 msgid "Quota not valid. Please try again." msgstr "Kota geçerli değil. Lütfen yeniden deneyin." #: ../src/gyrus-admin-mailbox.c:243 msgid "" "Unable to change quota. Are you sure do you have the appropriate permissions?" msgstr "Kota değiştirilemiyor. Uygun izinlere sahip olduğunuzdan emin misiniz?" #: ../src/gyrus-admin-mailbox.c:323 #, c-format msgid "'%s' is not a valid mailbox name. Please try a different one." msgstr "" "'%s' geçerli bir posta kutusu adı değil. Lütfen farklı bir tane deneyin." #: ../src/gyrus-admin-mailbox.c:331 #, c-format msgid "" "Parent mailbox '%s' does not exist. Please refresh the mailboxes list and " "try again." msgstr "" "Üst posta kutusu '%s' mevcut değil. Lütfen posta kutuları listesini " "yenileyin ve tekrardan deneyin." #: ../src/gyrus-admin-mailbox.c:341 #, c-format msgid "Mailbox '%s' already exists. Please try a different name." msgstr "'%s' posta kutusu zaten mevcut. Lütfen farklı bir isim deneyin." #: ../src/gyrus-admin-mailbox.c:354 msgid "" "Unable to create the mailbox. Are you sure do you have the appropriate " "permissions?" msgstr "" "Posta kutusu oluşturulamıyor. Uygun izinlere sahip olduğunuzdan emin misiniz?" #: ../src/gyrus-admin-mailbox.c:365 msgid "Mailbox created, but could not set quota." msgstr "Posta kutusu oluşturuldu, ancak kotası ayarlanamadı." #: ../src/gyrus-admin-mailbox.c:432 #, c-format msgid "Unable to delete '%s'. Permission denied." msgstr "'%s' silinemiyor. İzin verilmedi." #: ../src/gyrus-admin-mailbox.c:633 msgid "new entry" msgstr "yeni girdi" #: ../src/gyrus-admin.c:446 ../src/gyrus-report.c:286 #, c-format msgid "Users (%d)" msgstr "Kullanıcılar (%d)" #: ../src/gyrus-admin.c:452 #, c-format msgid "Orphaned mailboxes (%d)" msgstr "Sahipsiz bırakılmış posta kutuları (%d)" #: ../src/gyrus-admin.c:496 ../src/gyrus-admin.c:851 msgid "Orphaned mailboxes" msgstr "Sahipsiz bırakılmış posta kutuları" #: ../src/gyrus-admin.c:496 ../src/gyrus-admin.c:849 ../src/gyrus-report.c:167 msgid "Users" msgstr "Kullanıcılar" #: ../src/gyrus-admin.c:564 msgid "lookup" msgstr "ara" #: ../src/gyrus-admin.c:565 msgid "read" msgstr "oku" #: ../src/gyrus-admin.c:566 msgid "seen" msgstr "okunmuş" #: ../src/gyrus-admin.c:567 msgid "write" msgstr "yaz" #: ../src/gyrus-admin.c:568 msgid "insert" msgstr "ekle" #: ../src/gyrus-admin.c:569 msgid "post" msgstr "gönder" #: ../src/gyrus-admin.c:570 msgid "create" msgstr "oluştur" #: ../src/gyrus-admin.c:571 msgid "delete" msgstr "sil" #: ../src/gyrus-admin.c:572 msgid "admin" msgstr "yönetici" #: ../src/gyrus-admin.c:580 msgid "Identifier" msgstr "Tanımlayıcı" #: ../src/gyrus-admin.c:650 msgid "Couldn't create the client socket." msgstr "İstemci yuvası oluşturulamadı." #: ../src/gyrus-admin.c:658 msgid "Couldn't parse the server address." msgstr "Sunucu adresi ayrıştırılamadı." #: ../src/gyrus-admin.c:667 #, c-format msgid "Could not connect to %s, port %d." msgstr "%s adresi, %d bağlantı noktasına bağlanılamadı." #: ../src/gyrus-admin.c:997 msgid "Unable to connect with empty passwords. Please introduce your password." msgstr "Boş parolalar ile bağlanılamıyor. Lütfen parolanızı belirtin." #: ../src/gyrus-admin.c:1004 msgid "Incorrect login/password" msgstr "Yanlış giriş/parola" #: ../src/gyrus-admin.c:1360 msgid "Could not change permission. Server error: " msgstr "İzin değiştirilemedi. Sunucu hatası: " #: ../src/gyrus-admin.c:1403 #, c-format msgid "An entry called '%s' already exists. Overwrite it?" msgstr "'%s' isimli bir girdi zaten mevcut. Üstüne yazılsın mı?" #: ../src/gyrus-dialog-find-mailbox.c:170 #, c-format msgid "The text '%s' was not found in the mailbox list." msgstr "'%s' metni, posta kutusu listesinde bulunamadı." #: ../src/gyrus-dialog-find-mailbox.c:274 msgid "Find mailbox" msgstr "Posta kutusu bul" #: ../src/gyrus-dialog-mailbox-new.c:92 msgid "Quota not valid" msgstr "Kota geçersiz" #: ../src/gyrus-dialog-mailbox-new.c:219 msgid "New mailbox" msgstr "Yeni posta kutusu" #: ../src/gyrus-main-app.c:145 #, c-format msgid "Really delete mailbox '%s' and all of its submailboxes?" msgstr "'%s' posta kutusu ve tüm alt posta kutuları gerçekten silinsin mi?" #: ../src/gyrus-main-app.c:260 ../src/gyrus-main-app.c:406 #: ../src/gyrus-main-app.c:702 msgid "Cyrus IMAP Administrator" msgstr "Cyrus IMAP Yöneticisi" #: ../src/gyrus-main-app.c:274 #, c-format msgid "%s - Cyrus IMAP Administrator" msgstr "%s - Cyrus IMAP Yöneticisi" #: ../src/gyrus-main-app.c:353 msgid "_File" msgstr "_Dosya" #: ../src/gyrus-main-app.c:354 msgid "_Edit" msgstr "Düz_enle" # Bu çeviri aslen "Access Control List, ACL" olarak kullanılsa da Türkçe kaynaklarda ve yazılım firmalarında "Erişim Denetim Listesi, EDL" olarak kullanıldığından çevirilmesi doğru oluyor. İleride bu dizgeyi değiştirmeden önce bunu göz önünde bulunduralım. #: ../src/gyrus-main-app.c:355 msgid "_ACL" msgstr "_EDL" #: ../src/gyrus-main-app.c:356 msgid "_View" msgstr "_Görünüm" #: ../src/gyrus-main-app.c:357 msgid "_Help" msgstr "_Yardım" #: ../src/gyrus-main-app.c:358 msgid "Go to server..." msgstr "Sunucuya git..." #: ../src/gyrus-main-app.c:359 msgid "Show the list of servers" msgstr "Sunucuların listesini göster" #: ../src/gyrus-main-app.c:367 msgid "Add mailbox" msgstr "Posta kutusu ekle" #: ../src/gyrus-main-app.c:368 msgid "Add a mailbox under the one selected" msgstr "Seçili olanın altına posta kutusu ekle" #: ../src/gyrus-main-app.c:370 msgid "Search for a mailbox in current server" msgstr "Mevcut sunucuda bir posta kutusunu ara" #: ../src/gyrus-main-app.c:372 msgid "Refresh the mailbox list" msgstr "Posta kutusu listesini tazele" #: ../src/gyrus-main-app.c:373 msgid "Create report..." msgstr "Rapor oluştur..." #: ../src/gyrus-main-app.c:374 msgid "Create report of users with quota problems" msgstr "Kota sorunu olan kullanıcılar için bir rapor oluştur" #: ../src/gyrus-main-app.c:378 msgid "New entry" msgstr "Yeni girdi" #: ../src/gyrus-main-app.c:379 msgid "Create a new ACL entry in current mailbox" msgstr "Mevcut posta kutusunda yeni bir EDL oluştur" #: ../src/gyrus-main-app.c:380 msgid "Remove mailbox" msgstr "Posta kutusunu kaldır" #: ../src/gyrus-main-app.c:381 msgid "Remove current mailbox from the server" msgstr "Mevcut posta kutusunu sunucudan kaldır" #: ../src/gyrus-main-app.c:386 msgid "Rename entry" msgstr "Girdiyi yeniden adlandır" #: ../src/gyrus-main-app.c:387 msgid "Rename selected ACL entry" msgstr "Seçilmiş EDL girdilerini yeniden adlandır" #: ../src/gyrus-main-app.c:388 msgid "Delete entry" msgstr "Girdiyi sil" #: ../src/gyrus-main-app.c:389 msgid "Delete selected ACL entry" msgstr "Seçilmiş EDL girdisini sil" #: ../src/gyrus-main-app.c:522 msgid "translators-credits" msgstr "Kaan Özdinçer " #: ../src/gyrus-main-app.c:532 msgid "GNOME Cyrus Administrator" msgstr "GNOME Cyrus Yöneticisi" #: ../src/gyrus-main-app.c:534 msgid "" "(c) 2003-2005 GNOME Foundation\n" "(c) 2004-2005 Claudio Saavedra" msgstr "" "(c) 2003-2005 GNOME Vakfı\n" "(c) 2004-2005 Claudio Saavedra" #: ../src/gyrus-main-app.c:536 msgid "Administration tool for Cyrus IMAP servers." msgstr "Cyrus IMAP sunucuları için yönetim aracı." #. set title #: ../src/gyrus-report.c:104 #, c-format msgid "Mailbox space usage report for %s" msgstr "%s için posta kutusu alan kullanımı raporu" #: ../src/gyrus-report.c:188 ../src/gyrus-report.c:489 msgid "Quota (%)" msgstr "Kota (%)" #: ../src/gyrus-report.c:201 ../src/gyrus-report.c:493 msgid "Assigned (KB)" msgstr "Atanmış (KB)" #: ../src/gyrus-report.c:212 ../src/gyrus-report.c:497 msgid "Used (KB)" msgstr "Kullanılan (KB)" #. Translators: this represents the number of pages being printed. #: ../src/gyrus-report.c:462 #, c-format msgid "%d/%d" msgstr "%d/%d" #: ../src/gyrus-report.c:485 msgid "User" msgstr "Kullanıcı" #: ../src/gyrus-session.c:163 msgid "Edit session" msgstr "Oturumu düzenle" #: ../src/gyrus-session.c:177 msgid "New session" msgstr "Yeni oturum" #: ../src/gyrus-session.c:356 msgid "A session name is required." msgstr "Oturum adı gerekli." #: ../src/gyrus-session.c:367 #, c-format msgid "Session named \"%s\" already exists." msgstr "\"%s\" isimli bir oturum zaten mevcut." #: ../src/gyrus-session.c:463 ../src/gyrus-session.c:597 msgid "Autodetect" msgstr "Otomatik Algılama" #: ../src/gyrus-session.c:548 msgid "Session" msgstr "Oturum" #: ../src/gyrus-session.c:717 msgid "No host specified." msgstr "Makine belirtilmemiş." #: ../tests/gyrus-talk.xml.h:1 msgid "Talk - Echo client" msgstr "Konuşma - Echo istemcisi" #: ../tests/gyrus-talk.xml.h:5 msgid "_Connect" msgstr "_Bağlan" #: ../tests/gyrus-talk.xml.h:6 msgid "Connection" msgstr "Bağlantı" #: ../tests/gyrus-talk.xml.h:7 msgid "Command:" msgstr "Komut:" #: ../tests/gyrus-talk.xml.h:8 msgid "_Send" msgstr "_Gönder" gyrus-0.4.2/po/uk.po000066400000000000000000000324041426522072200142700ustar00rootroot00000000000000# Ukrainian translation of gyris # Copyright (C) 2005 Free Software Foundation, Inc. # Maxim Dziumanenko , 2005 msgid "" msgstr "" "Project-Id-Version: gyrus\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2005-08-08 13:20+0200\n" "PO-Revision-Date: 2004-08-07 11:46+0300\n" "Last-Translator: Maxim Dziumanenko \n" "Language-Team: Ukrainian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%" "10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" #: ../gyrus.desktop.in.h:1 msgid "Administrate the mailboxes of your IMAP Cyrus servers" msgstr "Адміністрування поштових скриньок серверів IMAP Cyrus" #: ../gyrus.desktop.in.h:2 msgid "Gyrus IMAP Cyrus Administrator" msgstr "Адміністратор IMAP Cyrus" #: ../src/glade/create_mailbox.glade.h:1 msgid "*" msgstr "*" #: ../src/glade/create_mailbox.glade.h:2 msgid "Name:" msgstr "Назва:" #: ../src/glade/create_mailbox.glade.h:3 msgid "Quota (MB):" msgstr "Квота (Мб):" #: ../src/glade/create_mailbox.glade.h:4 msgid "Assign quota" msgstr "Призначити квоту" #: ../src/glade/create_mailbox.glade.h:5 msgid "Create mailbox" msgstr "Створити поштову скриньку" #: ../src/glade/find.glade.h:1 msgid "Find" msgstr "Знайти" #: ../src/glade/find.glade.h:2 msgid "Match _entire word only" msgstr "Збігається _ціле слово" #: ../src/glade/find.glade.h:3 msgid "Search for:" msgstr "Шукати:" #: ../src/glade/find.glade.h:4 msgid "_Wrap around" msgstr "Збігається _регістр" #: ../src/glade/page.glade.h:1 msgid "Assigned space:" msgstr "Призначений простір:" #: ../src/glade/page.glade.h:2 msgid "Enter your password" msgstr "Введіть пароль" #: ../src/glade/page.glade.h:3 msgid "Free space:" msgstr "Вільний простір:" #: ../src/glade/page.glade.h:4 msgid "Host:" msgstr "Вузол:" #: ../src/glade/page.glade.h:5 msgid "Owner:" msgstr "Власник:" #: ../src/glade/page.glade.h:6 msgid "Port:" msgstr "Порт:" #: ../src/glade/page.glade.h:7 msgid "User:" msgstr "Користувач:" #: ../src/glade/page.glade.h:8 msgid "Access control list" msgstr "Список контролю доступу" #: ../src/glade/page.glade.h:9 msgid "Modify quota" msgstr "Змінити квоту" #: ../src/glade/page.glade.h:10 msgid "New quota (MB)" msgstr "Нова квота (МБ)" #: ../src/glade/page.glade.h:11 ../src/glade/sessions.glade.h:3 msgid "Password" msgstr "Пароль" #: ../src/glade/preferences.glade.h:1 msgid "Mailbox quota:" msgstr "Квота скриньки:" #: ../src/glade/preferences.glade.h:2 msgid "Mailboxes tree:" msgstr "Дерево скриньок:" #: ../src/glade/preferences.glade.h:3 msgid "Default suffix for changing quota:" msgstr "Типовий суфікс для зміни квоти:" #: ../src/glade/preferences.glade.h:4 msgid "Preferences" msgstr "Параметри" #: ../src/glade/preferences.glade.h:5 msgid "View complete mailboxes tree" msgstr "Переглянути повне дерево скриньок" #: ../src/glade/report.glade.h:2 #, no-c-format msgid "Over (%)" msgstr "Понад (%)" #: ../src/glade/report.glade.h:3 ../src/schemas/gyrus.xml.h:9 msgid "Report" msgstr "Звіт" #: ../src/glade/sessions.glade.h:1 msgid "Host (or IP address)" msgstr "Вузол (чи адреса IP)" #: ../src/glade/sessions.glade.h:2 msgid "Open session" msgstr "Відкрити сеанс" #: ../src/glade/sessions.glade.h:4 msgid "Port" msgstr "Порт" #: ../src/glade/sessions.glade.h:5 msgid "Save session as" msgstr "Зберегти сеанс як" #: ../src/glade/sessions.glade.h:6 msgid "Username" msgstr "Ім'я користувача" #: ../src/gyrus-admin-acl.c:51 ../src/gyrus-admin-acl.c:99 #, c-format msgid "Mailbox '%s' does not exist." msgstr "Скринька '%s' не існує." #: ../src/gyrus-admin-acl.c:72 msgid "Invalid identifier." msgstr "Неправильний ідентифікатор." #: ../src/gyrus-admin-acl.c:78 msgid "Empty entry name." msgstr "Порожнє поле імені." #: ../src/gyrus-admin-acl.c:83 msgid "Empty mailbox name." msgstr "Порожня назва скриньки." #: ../src/gyrus-admin-acl.c:103 msgid "Missing required argument to Setacl" msgstr "Відсутній обов'язковий аргумент до Setacl" #: ../src/gyrus-admin-acl.c:139 ../src/gyrus-admin-mailbox.c:78 msgid "Permission denied" msgstr "Доступ заборонено" #: ../src/gyrus-admin-acl.c:171 msgid "Empty access control list." msgstr "Порожній список контролю доступу." #: ../src/gyrus-admin-mailbox.c:76 msgid "Quota does not exists" msgstr "Квота не існує" #: ../src/gyrus-admin-mailbox.c:170 msgid "Quota overloaded" msgstr "Квота перевищена" #: ../src/gyrus-admin-mailbox.c:226 msgid "Quota not valid. Please try again." msgstr "Квота неправильна. Спробуйте ще раз." #: ../src/gyrus-admin-mailbox.c:240 msgid "" "Unable to change quota. Are you sure do you have the appropiate permissions?" msgstr "" "Не вдається змінити квоту. Ви впевнені, що маєте відповідні права доступу?" #: ../src/gyrus-admin-mailbox.c:324 #, c-format msgid "'%s' is not a valid mailbox name. Please try a different one." msgstr "'%s' не є правильною назвою скриньки. Спробуйте іншу назву." #: ../src/gyrus-admin-mailbox.c:332 #, c-format msgid "" "Parent mailbox '%s' does not exists. Please refresh the mailboxes list and " "try again." msgstr "" "Батьківська скринька '%s' не існує. Поновіть список скриньок та спробуйте ще раз." #: ../src/gyrus-admin-mailbox.c:341 #, c-format msgid "Mailbox '%s' already exists. Please try a different name." msgstr "Скринька '%s' вже існує. Спробуйте іншу назву." #: ../src/gyrus-admin-mailbox.c:354 msgid "" "Unable to create the mailbox. Are you sure do you have the appropiate " "permissions?" msgstr "" "Не вдається створити поштову скриньку. Ви впевнені що маєте відповідні права доступу?" #: ../src/gyrus-admin-mailbox.c:364 msgid "Mailbox created, but could not set quota." msgstr "Скриньку створено, але квоту не встановлено." #: ../src/gyrus-admin-mailbox.c:423 #, c-format msgid "Unable to delete '%s'. Permission denied." msgstr "Не вдається видалити '%s'. Доступ заборонено." #: ../src/gyrus-admin-mailbox.c:624 msgid "new entry" msgstr "новий елемент" #: ../src/gyrus-admin.c:368 ../src/gyrus-report.c:233 #, c-format msgid "Users (%d)" msgstr "Користувач (%d)" #: ../src/gyrus-admin.c:386 ../src/gyrus-admin.c:654 ../src/gyrus-report.c:127 msgid "Users" msgstr "Користувачі" #: ../src/gyrus-admin.c:452 msgid "lookup" msgstr "огляд" #: ../src/gyrus-admin.c:453 msgid "read" msgstr "читання" #: ../src/gyrus-admin.c:454 msgid "seen" msgstr "перегляд" #: ../src/gyrus-admin.c:455 msgid "write" msgstr "запис" #: ../src/gyrus-admin.c:456 msgid "insert" msgstr "вставка" #: ../src/gyrus-admin.c:457 msgid "post" msgstr "надсилання" #: ../src/gyrus-admin.c:458 msgid "create" msgstr "створення" #: ../src/gyrus-admin.c:459 msgid "delete" msgstr "видалення" #: ../src/gyrus-admin.c:460 msgid "admin" msgstr "адміністрування" #: ../src/gyrus-admin.c:466 msgid "Identifier" msgstr "Ідентифікатор" #: ../src/gyrus-admin.c:536 #, c-format msgid "%s could not be found. Please check the name and try again." msgstr "Не вдається знайти %s. Перевірте назву та спробуйте ще раз." #: ../src/gyrus-admin.c:547 #, c-format msgid "Could not connect to %s, port %d." msgstr "Не вдається з'єднатись з %s, порт %d." #: ../src/gyrus-admin.c:764 msgid "Unable to connect with empty passwords. Please introduce your password." msgstr "Не вдається з'єднатись з порожнім паролем. Вкажіть ваш пароль." #: ../src/gyrus-admin.c:771 msgid "Incorrect login/password" msgstr "Неправильні ім'я/пароль" #: ../src/gyrus-admin.c:1131 msgid "Could not change permission. Server error: " msgstr "Не вдається змінити права. Помилка сервера: " #: ../src/gyrus-admin.c:1172 #, c-format msgid "An entry called '%s' already exists. Overwrite it?" msgstr "Елемент з навою '%s' вже існує. Перезаписати?" #: ../src/gyrus-dialog-find-mailbox.c:156 #, c-format msgid "The text '%s' was not found in the mailbox list." msgstr "Текст '%s' не знайдено у списку скриньок." #: ../src/gyrus-dialog-find-mailbox.c:257 msgid "Find mailbox" msgstr "Пошук скриньки" #: ../src/gyrus-dialog-mailbox-new.c:80 msgid "Quota not valid" msgstr "Неправильна квота" #: ../src/gyrus-dialog-mailbox-new.c:236 msgid "New mailbox" msgstr "Нова скринька" #: ../src/gyrus-main-app.c:134 #, c-format msgid "Really delete mailbox '%s' and all of its submailboxes?" msgstr "Дійсно видалити скриньку '%s' та усі вкладені скриньки?" #: ../src/gyrus-main-app.c:278 ../src/gyrus-main-app.c:416 msgid "Cyrus IMAP Administrator" msgstr "Адміністратор Cyrus IMAP" #: ../src/gyrus-main-app.c:294 #, c-format msgid "%s - Cyrus IMAP Administrator" msgstr "Адміністратор Cyrus IMAP - %s" #: ../src/gyrus-main-app.c:491 msgid "translators-credits" msgstr "Максим Дзюманенко " #: ../src/gyrus-main-app.c:505 msgid "GNOME Cyrus Administrator" msgstr "Адміністратор GNOME Cyrus" #: ../src/gyrus-main-app.c:507 msgid "" "(c) 2003-2005 GNOME Foundation\n" "(c) 2004-2005 Claudio Saavedra" msgstr "" "(c) 2003-2005 Фонд GNOME\n" "(c) 2004-2005 Claudio Saavedra" #: ../src/gyrus-main-app.c:509 msgid "Administration tool for Cyrus IMAP servers." msgstr "Програма адміністрування серверів Cyrus IMAP." #. set title #: ../src/gyrus-report.c:84 #, c-format msgid "Report: %s" msgstr "Звіт: %s" #: ../src/gyrus-report.c:145 ../src/gyrus-report.c:421 msgid "Quota (%)" msgstr "Квота (%)" #: ../src/gyrus-report.c:156 ../src/gyrus-report.c:424 msgid "Assigned (KB)" msgstr "Призначено (кб)" #: ../src/gyrus-report.c:167 ../src/gyrus-report.c:427 msgid "Used (KB)" msgstr "Використано (кб)" #: ../src/gyrus-report.c:346 msgid "Print Report" msgstr "Друкувати звіт" #. /my_status_bar_print ("Print previewing ..."); #: ../src/gyrus-report.c:390 msgid "Preview" msgstr "Попередній перегляд" #: ../src/gyrus-report.c:418 msgid "User" msgstr "Користувач" #: ../src/gyrus-session.c:149 msgid "Edit session" msgstr "Правка сеансу" #: ../src/gyrus-session.c:163 msgid "New session" msgstr "Новий сеанс" #: ../src/gyrus-session.c:301 msgid "A session name is required." msgstr "Треба вказати назву сеансу." #: ../src/gyrus-session.c:312 #, c-format msgid "Session named \"%s\" already exists." msgstr "Сеанс з назвою \"%s\" вже існує." #: ../src/gyrus-session.c:344 msgid "Session saved" msgstr "Сеанс збережено" #: ../src/gyrus-session.c:469 msgid "Session" msgstr "Сеанс" #: ../src/gyrus-session.c:598 msgid "No host specified." msgstr "Не вказано вузол." #: ../src/schemas/gyrus.xml.h:1 msgid "Add a mailbox under selected one" msgstr "Додати скриньку у виділену скриньку" #: ../src/schemas/gyrus.xml.h:2 msgid "Add mailbox" msgstr "Додати скриньку" #: ../src/schemas/gyrus.xml.h:3 msgid "Delete entry" msgstr "Видалити елемент" #: ../src/schemas/gyrus.xml.h:4 msgid "Go to server..." msgstr "З'єднатись з сервером..." #: ../src/schemas/gyrus.xml.h:5 msgid "New entry" msgstr "Новий елемент" #: ../src/schemas/gyrus.xml.h:6 msgid "Remove current mailbox from the server" msgstr "Видалити поточну скриньку з сервера" #: ../src/schemas/gyrus.xml.h:7 msgid "Remove mailbox" msgstr "Видалити скриньку" #: ../src/schemas/gyrus.xml.h:8 msgid "Rename entry" msgstr "Перейменувати запис" #: ../src/schemas/gyrus.xml.h:10 msgid "Shows the list of servers" msgstr "Показує список серверів" #: ../src/schemas/gyrus.xml.h:11 msgid "_ACL" msgstr "_ACL" #: ../src/schemas/gyrus.xml.h:12 msgid "_Edit" msgstr "_Правка" #: ../src/schemas/gyrus.xml.h:13 msgid "_File" msgstr "_Файл" #: ../src/schemas/gyrus.xml.h:14 msgid "_Help" msgstr "_Довідка" #: ../src/schemas/gyrus.xml.h:15 msgid "_View" msgstr "_Правка" gyrus-0.4.2/po/vi.po000066400000000000000000000346221426522072200142730ustar00rootroot00000000000000# Vietnamese translation for Gyrus. # Copyright © 2006 Gnome i18n Project for Vietnamese. # Clytie Siddall , 2005-2006. # msgid "" msgstr "" "Project-Id-Version: gyrus Gnome HEAD\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-04-24 13:42-0400\n" "PO-Revision-Date: 2007-04-24 13:42-0400\n" "Last-Translator: Clytie Siddall \n" "Language-Team: Vietnamese \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" "X-Generator: LocFactoryEditor 1.6fc1\n" #: ../gyrus.desktop.in.in.h:1 msgid "Administer the mailboxes of your IMAP Cyrus servers" msgstr "Quản lý các hộp thư trên trình phục vụ IMAP Cyrus của bạn" #: ../gyrus.desktop.in.in.h:2 msgid "Gyrus IMAP Cyrus Administrator" msgstr "Bộ quản trị Cyrus IMAP Gyrus" #: ../src/glade/create_mailbox.glade.h:1 msgid "*" msgstr "*" #: ../src/glade/create_mailbox.glade.h:2 msgid "Name:" msgstr "Tên:" #: ../src/glade/create_mailbox.glade.h:3 msgid "Quota (MB):" msgstr "Chỉ tiêu (MB):" #: ../src/glade/create_mailbox.glade.h:4 msgid "Assign quota" msgstr "Gán chỉ tiêu" #: ../src/glade/create_mailbox.glade.h:5 msgid "Create mailbox" msgstr "Tạo hộp thư" #: ../src/glade/find.glade.h:1 msgid "Find" msgstr "Tìm" #: ../src/glade/find.glade.h:2 msgid "Match _entire word only" msgstr "Chỉ khớp với t_oàn bộ từ" #: ../src/glade/find.glade.h:3 msgid "Search for:" msgstr "Tìm kiếm:" #: ../src/glade/find.glade.h:4 msgid "_Wrap around" msgstr "Cuộn _vòng" #: ../src/glade/page.glade.h:1 msgid "Assigned space:" msgstr "Chỗ đã gán:" #: ../src/glade/page.glade.h:2 msgid "Enter your password" msgstr "Gõ mật khẩu của bạn" #: ../src/glade/page.glade.h:3 msgid "Free space:" msgstr "Chỗ còn rảnh:" #: ../src/glade/page.glade.h:4 msgid "Host:" msgstr "Máy:" #: ../src/glade/page.glade.h:5 msgid "Owner:" msgstr "Chủ :" #: ../src/glade/page.glade.h:6 msgid "Port:" msgstr "Cổng:" #: ../src/glade/page.glade.h:7 msgid "User:" msgstr "Người dùng:" #: ../src/glade/page.glade.h:8 msgid "Access control list" msgstr "Danh sách điều khiển truy cập" #: ../src/glade/page.glade.h:9 msgid "Modify quota" msgstr "Sửa đổi chỉ tiêu" #: ../src/glade/page.glade.h:10 msgid "New quota (MB)" msgstr "Chỉ tiêu mới (MB)" #: ../src/glade/page.glade.h:11 msgid "Password" msgstr "Mật khẩu" #: ../src/glade/page.glade.h:12 ../src/gyrus-admin.c:842 #: ../tests/gyrus-talk.glade.h:7 msgid "_Connect" msgstr "_Kết nối" #: ../src/glade/preferences.glade.h:1 msgid "Mailbox quota:" msgstr "Chỉ tiêu hộp thư :" #: ../src/glade/preferences.glade.h:2 msgid "Mailboxes tree:" msgstr "Cây hộp thư :" #: ../src/glade/preferences.glade.h:3 msgid "Default suffix for changing quota:" msgstr "Hậu tố mặc định để sửa đổi chỉ tiêu :" #: ../src/glade/preferences.glade.h:4 msgid "Preferences" msgstr "Tùy thích" #: ../src/glade/preferences.glade.h:5 msgid "View complete mailboxes tree" msgstr "Xem toàn bộ cây hộp thư" #: ../src/glade/report.glade.h:2 #, no-c-format msgid "Over (%)" msgstr "Trên (%)" #: ../src/glade/report.glade.h:3 msgid "Report" msgstr "Thông báo" #. Translate only Autodetect please. #: ../src/glade/sessions.glade.h:2 msgid "" ".\n" "/\n" "Autodetect" msgstr "" ".\n" "/\n" "Phát hiện tự động" #: ../src/glade/sessions.glade.h:5 msgid "Options" msgstr "Tùy chọn" #: ../src/glade/sessions.glade.h:6 msgid "Session details" msgstr "Chi tiết phiên chạy" #: ../src/glade/sessions.glade.h:7 ../tests/gyrus-talk.glade.h:3 msgid "Host:" msgstr "Máy:" #: ../src/glade/sessions.glade.h:8 msgid "Mailbox hierarchy separator:" msgstr "Bộ ngăn cách cây hộp thư :" #: ../src/glade/sessions.glade.h:9 msgid "Open session" msgstr "Mở phiên chạy" #: ../src/glade/sessions.glade.h:10 msgid "Password:" msgstr "Mật khẩu :" #: ../src/glade/sessions.glade.h:11 ../tests/gyrus-talk.glade.h:4 msgid "Port:" msgstr "Cổng:" #: ../src/glade/sessions.glade.h:12 msgid "Session name:" msgstr "Tên phiên chạy:" #: ../src/glade/sessions.glade.h:13 ../tests/gyrus-talk.glade.h:6 msgid "Use a secure connection" msgstr "Dùng kết nối bảo mật" #: ../src/glade/sessions.glade.h:14 msgid "Username:" msgstr "Tên người dùng:" #: ../src/gyrus-admin-acl.c:53 ../src/gyrus-admin-acl.c:101 #, c-format msgid "Mailbox '%s' does not exist." msgstr "Không có hộp thư « %s »." #: ../src/gyrus-admin-acl.c:74 msgid "Invalid identifier." msgstr "Bộ nhận diện không hợp lệ." #: ../src/gyrus-admin-acl.c:80 msgid "Empty entry name." msgstr "Tên mục nhập rỗng." #: ../src/gyrus-admin-acl.c:85 msgid "Empty mailbox name." msgstr "Tên hộp thư rỗng." #: ../src/gyrus-admin-acl.c:105 msgid "Missing required argument to Setacl" msgstr "Thiếu đối số cần thiết tới « Setacl »" #: ../src/gyrus-admin-acl.c:141 ../src/gyrus-admin-mailbox.c:80 msgid "Permission denied" msgstr "Không đủ quyền" #: ../src/gyrus-admin-acl.c:173 msgid "Empty access control list." msgstr "Danh sách điều khiển truy cập rỗng." #: ../src/gyrus-admin-mailbox.c:78 msgid "Quota does not exist" msgstr "Không có chỉ tiêu" #: ../src/gyrus-admin-mailbox.c:172 msgid "Quota overloaded" msgstr "Vượt quá chỉ tiêu" #: ../src/gyrus-admin-mailbox.c:228 msgid "Quota not valid. Please try again." msgstr "Chỉ tiêu không hợp lệ. Hãy thử lại." #: ../src/gyrus-admin-mailbox.c:242 msgid "" "Unable to change quota. Are you sure do you have the appropriate permissions?" msgstr "" "Không thể thay đổi chỉ tiêu. Bạn có chắc có quyền truy cập thích hợp không?" #: ../src/gyrus-admin-mailbox.c:326 #, c-format msgid "'%s' is not a valid mailbox name. Please try a different one." msgstr "« %s » không phải là tên hộp thư hợp lệ. Hãy dùng tên khác." #: ../src/gyrus-admin-mailbox.c:334 #, c-format msgid "" "Parent mailbox '%s' does not exist. Please refresh the mailboxes list and " "try again." msgstr "" "Không có hộp thư mẹ « %s ». Bạn hãy cập nhật danh sách các hộp thư, rồi thử " "lại." #: ../src/gyrus-admin-mailbox.c:344 #, c-format msgid "Mailbox '%s' already exists. Please try a different name." msgstr "Hộp thư « %s » đã có. Hãy chọn tên khác." #: ../src/gyrus-admin-mailbox.c:357 msgid "" "Unable to create the mailbox. Are you sure do you have the appropriate " "permissions?" msgstr "Không thể tạo hộp thư. Bạn có chắc có quyền truy cập thích hợp không?" #: ../src/gyrus-admin-mailbox.c:367 msgid "Mailbox created, but could not set quota." msgstr "Mới tạo hộp thư, còn không thể đặt chỉ tiêu." #: ../src/gyrus-admin-mailbox.c:423 #, c-format msgid "Unable to delete '%s'. Permission denied." msgstr "Không thể xóa bỏ « %s » vì không đủ quyền." #: ../src/gyrus-admin-mailbox.c:624 msgid "new entry" msgstr "mục nhập mới" #: ../src/gyrus-admin.c:484 ../src/gyrus-report.c:266 #, c-format msgid "Users (%d)" msgstr "Người dùng (%d)" #: ../src/gyrus-admin.c:490 #, c-format msgid "Orphaned mailboxes (%d)" msgstr "Hộp thư mồ côi (%d)" #: ../src/gyrus-admin.c:534 ../src/gyrus-admin.c:851 msgid "Orphaned mailboxes" msgstr "Hộp thư mồ côi" #: ../src/gyrus-admin.c:534 ../src/gyrus-admin.c:849 ../src/gyrus-report.c:150 msgid "Users" msgstr "Người dùng" #: ../src/gyrus-admin.c:605 msgid "lookup" msgstr "tra tìm" #: ../src/gyrus-admin.c:606 msgid "read" msgstr "đọc" #: ../src/gyrus-admin.c:607 msgid "seen" msgstr "đã thấy" #: ../src/gyrus-admin.c:608 msgid "write" msgstr "ghi" #: ../src/gyrus-admin.c:609 msgid "insert" msgstr "chèn" #: ../src/gyrus-admin.c:610 msgid "post" msgstr "gởi bài" #: ../src/gyrus-admin.c:611 msgid "create" msgstr "tạo" #: ../src/gyrus-admin.c:612 msgid "delete" msgstr "xóa bỏ" #: ../src/gyrus-admin.c:613 msgid "admin" msgstr "quản trị" #: ../src/gyrus-admin.c:619 msgid "Identifier" msgstr "Bộ nhận diện" #: ../src/gyrus-admin.c:689 #, c-format msgid "%s could not be found. Please check the name and try again." msgstr "Không tìm thấy « %s ». Hãy kiểm tra lại tên rồi thử lại." #: ../src/gyrus-admin.c:700 #, c-format msgid "Could not connect to %s, port %d." msgstr "Không thể kết nối tới %s, cổng %d." #: ../src/gyrus-admin.c:997 msgid "Unable to connect with empty passwords. Please introduce your password." msgstr "" "Không thể kết nối bằng mặt khẩu rỗng. Bạn hãy giới thiệu mật khẩu của mình." #: ../src/gyrus-admin.c:1004 msgid "Incorrect login/password" msgstr "Tên đăng nhập/mật khẩu sai" #: ../src/gyrus-admin.c:1012 msgid "_Disconnect" msgstr "N_gắt kết nối" #: ../src/gyrus-admin.c:1359 msgid "Could not change permission. Server error: " msgstr "Không thể thay đổi quyền hạn vì gặp lỗi trình phục vụ : " #: ../src/gyrus-admin.c:1400 #, c-format msgid "An entry called '%s' already exists. Overwrite it?" msgstr "Mục nhập tên « %s » đã có. Ghi đè không?" #: ../src/gyrus-dialog-find-mailbox.c:158 #, c-format msgid "The text '%s' was not found in the mailbox list." msgstr "Không tìm thấy đoạn « %s » trong danh sách hộp thư." #: ../src/gyrus-dialog-find-mailbox.c:259 msgid "Find mailbox" msgstr "Tìm hộp thư" #: ../src/gyrus-dialog-mailbox-new.c:82 msgid "Quota not valid" msgstr "Chỉ tiêu không hợp lệ" #: ../src/gyrus-dialog-mailbox-new.c:238 msgid "New mailbox" msgstr "Hộp thư mới" #: ../src/gyrus-main-app.c:125 #, c-format msgid "Really delete mailbox '%s' and all of its submailboxes?" msgstr "Thật sự xóa bỏ hộp thư « %s » và mọi hộp thư con của nó không?" #: ../src/gyrus-main-app.c:247 ../src/gyrus-main-app.c:422 msgid "Cyrus IMAP Administrator" msgstr "Bộ quản trị IMAP Cyrus" #: ../src/gyrus-main-app.c:261 #, c-format msgid "%s - Cyrus IMAP Administrator" msgstr "%s — bộ quản trị IMAP Cyrus" #: ../src/gyrus-main-app.c:368 msgid "_File" msgstr "_Tập tin" #: ../src/gyrus-main-app.c:369 msgid "_Edit" msgstr "_Sửa" #: ../src/gyrus-main-app.c:370 msgid "_ACL" msgstr "_ACL" #: ../src/gyrus-main-app.c:371 msgid "_View" msgstr "_Xem" #: ../src/gyrus-main-app.c:372 msgid "_Help" msgstr "Trợ _giúp" #: ../src/gyrus-main-app.c:373 msgid "Go to server..." msgstr "Tới máy phục vụ..." #: ../src/gyrus-main-app.c:374 msgid "Show the list of servers" msgstr "Hiện danh sách máy phục vụ" #: ../src/gyrus-main-app.c:384 msgid "Add mailbox" msgstr "Thêm hộp thư" #: ../src/gyrus-main-app.c:385 msgid "Add a mailbox under the one selected" msgstr "Thêm hộp thư nằm dưới hộp đã chọn" #: ../src/gyrus-main-app.c:387 msgid "Search for a mailbox in current server" msgstr "Tìm kiếm hộp thư trên máy phục vụ hiện thời" #: ../src/gyrus-main-app.c:389 msgid "Refresh the mailbox list" msgstr "Cập nhật danh sách hộp thư" #: ../src/gyrus-main-app.c:390 msgid "Create report..." msgstr "Tạo báo cáo..." #: ../src/gyrus-main-app.c:391 msgid "Create report of users with quota problems" msgstr "Tạo báo cáo về các người dùng gặp vấn đề chỉ tiêu" #: ../src/gyrus-main-app.c:395 msgid "New entry" msgstr "Mục nhập mới" #: ../src/gyrus-main-app.c:396 msgid "Create a new ACL entry in current mailbox" msgstr "Tạo mục nhập ACL mới trong hộp thư hiện thời" #: ../src/gyrus-main-app.c:397 msgid "Remove mailbox" msgstr "Gỡ bỏ hộp thư" #: ../src/gyrus-main-app.c:398 msgid "Remove current mailbox from the server" msgstr "Gỡ bỏ hộp thư hiện thời khỏi máy phục vụ" #: ../src/gyrus-main-app.c:403 msgid "Rename entry" msgstr "Thay tên mục nhập" #: ../src/gyrus-main-app.c:404 msgid "Rename selected ACL entry" msgstr "Thay đổi tên mục nhập ACL đã chọn" #: ../src/gyrus-main-app.c:405 msgid "Delete entry" msgstr "Xóa bỏ mục nhập" #: ../src/gyrus-main-app.c:406 msgid "Delete selected ACL entry" msgstr "Xóa bỏ mục nhập ACL đã chọn" #: ../src/gyrus-main-app.c:546 msgid "translators-credits" msgstr "Nhóm Việt hóa Gnome " #: ../src/gyrus-main-app.c:556 msgid "GNOME Cyrus Administrator" msgstr "Bộ quản trị Cyrus GNOME" #: ../src/gyrus-main-app.c:558 msgid "" "(c) 2003-2005 GNOME Foundation\n" "(c) 2004-2005 Claudio Saavedra" msgstr "" "Tác quyền © năm 2003-2005 của Tổ Chức GNOME\n" "Tác quyền © năm 2004-2005 của Claudio Saavedra" #: ../src/gyrus-main-app.c:560 msgid "Administration tool for Cyrus IMAP servers." msgstr "Công cụ quản lý cho trình phục vụ IMAP Cyrus." #. set title #: ../src/gyrus-report.c:86 #, c-format msgid "Report: %s" msgstr "Báo cáo : %s" #: ../src/gyrus-report.c:171 ../src/gyrus-report.c:458 msgid "Quota (%)" msgstr "Chỉ tiêu (%)" #: ../src/gyrus-report.c:184 ../src/gyrus-report.c:461 msgid "Assigned (KB)" msgstr "Đã gán (KB)" #: ../src/gyrus-report.c:195 ../src/gyrus-report.c:464 msgid "Used (KB)" msgstr "Đã dùng (KB)" #: ../src/gyrus-report.c:384 msgid "Print Report" msgstr "In báo cáo" #. /my_status_bar_print ("Print previewing ..."); #: ../src/gyrus-report.c:427 msgid "Preview" msgstr "Xem thử" #: ../src/gyrus-report.c:455 msgid "User" msgstr "Người dùng" #: ../src/gyrus-session.c:164 msgid "Edit session" msgstr "Sửa phiên chạy" #: ../src/gyrus-session.c:178 msgid "New session" msgstr "Phiên chạy mới" #: ../src/gyrus-session.c:357 msgid "A session name is required." msgstr "Cần thiết tên phiên chạy." #: ../src/gyrus-session.c:368 #, c-format msgid "Session named \"%s\" already exists." msgstr "Phiên chạy tên « %s » đã có." #: ../src/gyrus-session.c:465 msgid "Autodetect" msgstr "Phát hiện tự động" #: ../src/gyrus-session.c:550 msgid "Session" msgstr "Phiên chạy" #: ../src/gyrus-session.c:700 msgid "No host specified." msgstr "Chưa ghi rõ máy." #: ../tests/gyrus-talk.glade.h:1 msgid "Connection" msgstr "Kết nối" #: ../tests/gyrus-talk.glade.h:2 msgid "Command:" msgstr "Lệnh:" #: ../tests/gyrus-talk.glade.h:5 msgid "Talk - Echo client" msgstr "Talk - ứng dụng khách Echo" #: ../tests/gyrus-talk.glade.h:8 msgid "_Send" msgstr "_Gởi" gyrus-0.4.2/po/zh_CN.po000066400000000000000000000333731426522072200146600ustar00rootroot00000000000000# Simplified Chinese translation of gyrus # Copyright (C) 2005, 2010 Free Software Foundation, Inc. # This file is distributed under the same license as the gyrus package. # Funda Wang , 2005 # du baodao , 2010. # msgid "" msgstr "" "Project-Id-Version: gyrus master\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" "product=gyrus&component=general\n" "POT-Creation-Date: 2010-06-16 19:00+0000\n" "PO-Revision-Date: 2010-07-31 12:10+0800\n" "Last-Translator: du baodao \n" "Language-Team: Chinese (simplified) \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../gyrus.desktop.in.in.h:1 msgid "Administer the mailboxes of your IMAP Cyrus servers" msgstr "您的 Cyrus IMAP 服务器的邮箱管理员" #: ../gyrus.desktop.in.in.h:2 msgid "Gyrus IMAP Cyrus Administrator" msgstr "Cyrus IMAP 管理员" #: ../src/glade/create_mailbox.glade.h:1 msgid "*" msgstr "*" #: ../src/glade/create_mailbox.glade.h:2 msgid "Name:" msgstr "名称:" #: ../src/glade/create_mailbox.glade.h:3 msgid "Quota (MB):" msgstr "配额(MB):" #: ../src/glade/create_mailbox.glade.h:4 msgid "Assign quota" msgstr "指派配额" #: ../src/glade/create_mailbox.glade.h:5 msgid "Create mailbox" msgstr "创建邮箱" #: ../src/glade/find.glade.h:1 msgid "Find" msgstr "查找" #: ../src/glade/find.glade.h:2 msgid "Match _entire word only" msgstr "匹配整个单词(_E)" #: ../src/glade/find.glade.h:3 msgid "Search for:" msgstr "搜索:" #: ../src/glade/find.glade.h:4 msgid "_Wrap around" msgstr "" #: ../src/glade/page.glade.h:1 msgid "Assigned space:" msgstr "指派的空间:" #: ../src/glade/page.glade.h:2 msgid "Enter your password" msgstr "输入您的密码" #: ../src/glade/page.glade.h:3 msgid "Free space:" msgstr "剩余空间:" #: ../src/glade/page.glade.h:4 msgid "Host:" msgstr "主机:" #: ../src/glade/page.glade.h:5 msgid "Owner:" msgstr "所有者:" #: ../src/glade/page.glade.h:6 msgid "Port:" msgstr "端口:" #: ../src/glade/page.glade.h:7 msgid "User:" msgstr "用户:" #: ../src/glade/page.glade.h:8 msgid "Access control list" msgstr "访问控制列表" #: ../src/glade/page.glade.h:9 msgid "Modify quota" msgstr "修改配额" #: ../src/glade/page.glade.h:10 msgid "New quota (MB)" msgstr "新配额(MB)" #: ../src/glade/page.glade.h:11 msgid "Password" msgstr "密码" #: ../src/glade/page.glade.h:12 ../src/gyrus-admin.c:825 #: ../tests/gyrus-talk.glade.h:7 msgid "_Connect" msgstr "连接(_C)" #: ../src/glade/preferences.glade.h:1 msgid "Mailbox quota:" msgstr "邮箱配额:" #: ../src/glade/preferences.glade.h:2 msgid "Mailboxes tree:" msgstr "邮箱树:" #: ../src/glade/preferences.glade.h:3 msgid "Default suffix for changing quota:" msgstr "更改配额的默认后缀:" #: ../src/glade/preferences.glade.h:4 msgid "Preferences" msgstr "首选项" #: ../src/glade/preferences.glade.h:5 msgid "View complete mailboxes tree" msgstr "查看完整的邮箱树" #: ../src/glade/report.glade.h:2 #, no-c-format msgid "Over (%)" msgstr "超过(%d)" #: ../src/glade/report.glade.h:3 msgid "Report" msgstr "报告" #. Translate only Autodetect please. #: ../src/glade/sessions.glade.h:2 msgid "" ".\n" "/\n" "Autodetect" msgstr "" ".\n" "/\n" "自动检测" #: ../src/glade/sessions.glade.h:5 msgid "Options" msgstr "选项" #: ../src/glade/sessions.glade.h:6 msgid "Session details" msgstr "会话细节" #: ../src/glade/sessions.glade.h:7 ../tests/gyrus-talk.glade.h:3 msgid "Host:" msgstr "主机:" #: ../src/glade/sessions.glade.h:8 msgid "Mailbox hierarchy separator:" msgstr "邮箱等级分隔符:" #: ../src/glade/sessions.glade.h:9 msgid "Open session" msgstr "打开会话" #: ../src/glade/sessions.glade.h:10 msgid "Password:" msgstr "密码:" #: ../src/glade/sessions.glade.h:11 ../tests/gyrus-talk.glade.h:4 msgid "Port:" msgstr "端口:" #: ../src/glade/sessions.glade.h:12 msgid "Session name:" msgstr "会话名称:" #: ../src/glade/sessions.glade.h:13 ../tests/gyrus-talk.glade.h:6 msgid "Use a secure connection" msgstr "使用安全连接" #: ../src/glade/sessions.glade.h:14 msgid "Username:" msgstr "用户名:" #: ../src/gyrus-admin-acl.c:54 ../src/gyrus-admin-acl.c:103 #, c-format msgid "Mailbox '%s' does not exist." msgstr "邮箱“%s”不存在。" #: ../src/gyrus-admin-acl.c:76 msgid "Invalid identifier." msgstr "无效的标识符。" #: ../src/gyrus-admin-acl.c:82 msgid "Empty entry name." msgstr "清空输入的名称。" #: ../src/gyrus-admin-acl.c:87 msgid "Empty mailbox name." msgstr "清空邮箱名称。" #: ../src/gyrus-admin-acl.c:107 msgid "Missing required argument to Setacl" msgstr "Setacl 缺少所需的参数" #: ../src/gyrus-admin-acl.c:143 ../src/gyrus-admin-mailbox.c:82 msgid "Permission denied" msgstr "权限被禁止" #: ../src/gyrus-admin-acl.c:175 msgid "Empty access control list." msgstr "清空访问控制列表。" #: ../src/gyrus-admin-mailbox.c:80 msgid "Quota does not exist" msgstr "配额不存在" #: ../src/gyrus-admin-mailbox.c:174 #, c-format msgid "Quota overloaded" msgstr "配额超载" #: ../src/gyrus-admin-mailbox.c:232 msgid "Quota not valid. Please try again." msgstr "配额无效。请重试" #: ../src/gyrus-admin-mailbox.c:246 msgid "" "Unable to change quota. Are you sure do you have the appropriate permissions?" msgstr "无法改变配额。您确定您有合适的权限?" #: ../src/gyrus-admin-mailbox.c:332 #, c-format msgid "'%s' is not a valid mailbox name. Please try a different one." msgstr "“%s”不是有效的邮箱名称。请尝试不同的名称。" #: ../src/gyrus-admin-mailbox.c:340 #, c-format msgid "" "Parent mailbox '%s' does not exist. Please refresh the mailboxes list and " "try again." msgstr "父邮箱“%s”不存在。请刷新邮箱列表并重试。" #: ../src/gyrus-admin-mailbox.c:350 #, c-format msgid "Mailbox '%s' already exists. Please try a different name." msgstr "邮箱“%s”已存在。请试用不同的名称。" #: ../src/gyrus-admin-mailbox.c:363 msgid "" "Unable to create the mailbox. Are you sure do you have the appropriate " "permissions?" msgstr "无法创建邮箱。您确定您有合适的权限吗?" #: ../src/gyrus-admin-mailbox.c:373 msgid "Mailbox created, but could not set quota." msgstr "邮箱已创建,但无法设定配额。" #: ../src/gyrus-admin-mailbox.c:437 #, c-format msgid "Unable to delete '%s'. Permission denied." msgstr "无法删除“%s”。权限禁止。" #: ../src/gyrus-admin-mailbox.c:638 msgid "new entry" msgstr "新建项" #: ../src/gyrus-admin.c:468 ../src/gyrus-report.c:288 #, c-format msgid "Users (%d)" msgstr "用户数(%d)" #: ../src/gyrus-admin.c:474 #, c-format msgid "Orphaned mailboxes (%d)" msgstr "孤儿邮箱(%d)" #: ../src/gyrus-admin.c:518 ../src/gyrus-admin.c:834 #, fuzzy #| msgid "Create mailbox" msgid "Orphaned mailboxes" msgstr "创建邮箱" #: ../src/gyrus-admin.c:518 ../src/gyrus-admin.c:832 ../src/gyrus-report.c:169 msgid "Users" msgstr "用户数" #: ../src/gyrus-admin.c:586 msgid "lookup" msgstr "查阅" #: ../src/gyrus-admin.c:587 msgid "read" msgstr "读取" #: ../src/gyrus-admin.c:588 msgid "seen" msgstr "可见" #: ../src/gyrus-admin.c:589 msgid "write" msgstr "写入" #: ../src/gyrus-admin.c:590 msgid "insert" msgstr "插入" #: ../src/gyrus-admin.c:591 msgid "post" msgstr "发表" #: ../src/gyrus-admin.c:592 msgid "create" msgstr "创建" #: ../src/gyrus-admin.c:593 msgid "delete" msgstr "删除" #: ../src/gyrus-admin.c:594 msgid "admin" msgstr "管理" #: ../src/gyrus-admin.c:602 msgid "Identifier" msgstr "标识符" #: ../src/gyrus-admin.c:672 #, c-format msgid "%s could not be found. Please check the name and try again." msgstr "找不到 %s。请检查名称后再试一次。" #: ../src/gyrus-admin.c:683 #, c-format msgid "Could not connect to %s, port %d." msgstr "无法连接到 %s 端口 %d。" #: ../src/gyrus-admin.c:982 msgid "Unable to connect with empty passwords. Please introduce your password." msgstr "无法使用空密码进行连接。请输入您的密码。" #: ../src/gyrus-admin.c:989 msgid "Incorrect login/password" msgstr "登录名/密码不正确" #: ../src/gyrus-admin.c:997 msgid "_Disconnect" msgstr "断开连接(_D)" #: ../src/gyrus-admin.c:1350 msgid "Could not change permission. Server error: " msgstr "无法更改权限。服务器错误:" #: ../src/gyrus-admin.c:1393 #, c-format msgid "An entry called '%s' already exists. Overwrite it?" msgstr "已经存在名为“%s”的项。覆盖吗?" #: ../src/gyrus-dialog-find-mailbox.c:172 #, c-format msgid "The text '%s' was not found in the mailbox list." msgstr "在邮箱列表中没有发现“%s”" #: ../src/gyrus-dialog-find-mailbox.c:275 msgid "Find mailbox" msgstr "查找邮箱" #: ../src/gyrus-dialog-mailbox-new.c:94 msgid "Quota not valid" msgstr "配额无效" #: ../src/gyrus-dialog-mailbox-new.c:216 msgid "New mailbox" msgstr "新建邮箱" #: ../src/gyrus-main-app.c:148 #, c-format msgid "Really delete mailbox '%s' and all of its submailboxes?" msgstr "确定要删除邮箱 “%s” 和它的子邮箱吗?" #: ../src/gyrus-main-app.c:270 ../src/gyrus-main-app.c:449 #: ../src/gyrus-main-app.c:745 msgid "Cyrus IMAP Administrator" msgstr "Cyrus IMAP 管理员" #: ../src/gyrus-main-app.c:284 #, c-format msgid "%s - Cyrus IMAP Administrator" msgstr "%s - Cyrus IMAP 管理员" #: ../src/gyrus-main-app.c:394 msgid "_File" msgstr "文件(_F)" #: ../src/gyrus-main-app.c:395 msgid "_Edit" msgstr "编辑(_E)" #: ../src/gyrus-main-app.c:396 msgid "_ACL" msgstr "_ACL" #: ../src/gyrus-main-app.c:397 msgid "_View" msgstr "查看(_V)" #: ../src/gyrus-main-app.c:398 msgid "_Help" msgstr "帮助(_H)" #: ../src/gyrus-main-app.c:399 msgid "Go to server..." msgstr "转到服务器..." #: ../src/gyrus-main-app.c:400 msgid "Show the list of servers" msgstr "显示服务器列表" #: ../src/gyrus-main-app.c:410 msgid "Add mailbox" msgstr "添加邮箱" #: ../src/gyrus-main-app.c:411 msgid "Add a mailbox under the one selected" msgstr "在选择的邮箱下创建新邮箱" #: ../src/gyrus-main-app.c:413 msgid "Search for a mailbox in current server" msgstr "在当前服务器中搜索邮箱" #: ../src/gyrus-main-app.c:415 msgid "Refresh the mailbox list" msgstr "刷新邮箱列表" #: ../src/gyrus-main-app.c:416 msgid "Create report..." msgstr "创建报告..." #: ../src/gyrus-main-app.c:417 msgid "Create report of users with quota problems" msgstr "创建有配额问题的用户的报告" #: ../src/gyrus-main-app.c:421 msgid "New entry" msgstr "新建项" #: ../src/gyrus-main-app.c:422 msgid "Create a new ACL entry in current mailbox" msgstr "在当前邮箱内创建新 ACL 项" #: ../src/gyrus-main-app.c:423 msgid "Remove mailbox" msgstr "删除邮箱" #: ../src/gyrus-main-app.c:424 msgid "Remove current mailbox from the server" msgstr "从服务器删除当前邮箱" #: ../src/gyrus-main-app.c:429 msgid "Rename entry" msgstr "重命名项" #: ../src/gyrus-main-app.c:430 msgid "Rename selected ACL entry" msgstr "重命名选定的 ACL 项" #: ../src/gyrus-main-app.c:431 msgid "Delete entry" msgstr "删除项" #: ../src/gyrus-main-app.c:432 msgid "Delete selected ACL entry" msgstr "删除选定的 ACL 条目" #: ../src/gyrus-main-app.c:565 msgid "translators-credits" msgstr "翻译者-致谢" #: ../src/gyrus-main-app.c:575 msgid "GNOME Cyrus Administrator" msgstr "GNOME Cyrus 管理员" #: ../src/gyrus-main-app.c:577 msgid "" "(c) 2003-2005 GNOME Foundation\n" "(c) 2004-2005 Claudio Saavedra" msgstr "" "(c) 2003-2005 GNOME 基金会\n" "(c) 2004-2005 Claudio Saavedra" #: ../src/gyrus-main-app.c:579 msgid "Administration tool for Cyrus IMAP servers." msgstr "Cyrus IMAP 服务器的管理工具。" #. set title #: ../src/gyrus-report.c:106 #, c-format msgid "Mailbox space usage report for %s" msgstr "%s 的邮箱空间使用报告" #: ../src/gyrus-report.c:190 ../src/gyrus-report.c:490 msgid "Quota (%)" msgstr "配额(%)" #: ../src/gyrus-report.c:203 ../src/gyrus-report.c:494 msgid "Assigned (KB)" msgstr "分配的(KB)" #: ../src/gyrus-report.c:214 ../src/gyrus-report.c:498 msgid "Used (KB)" msgstr "已使用(KB)" #. Translators: this represents the number of pages being printed. #: ../src/gyrus-report.c:463 #, c-format msgid "%d/%d" msgstr "%d/%d" #: ../src/gyrus-report.c:486 msgid "User" msgstr "用户" #: ../src/gyrus-session.c:164 msgid "Edit session" msgstr "编辑会话" #: ../src/gyrus-session.c:178 msgid "New session" msgstr "新建会话" #: ../src/gyrus-session.c:357 msgid "A session name is required." msgstr "需要会话名称。" #: ../src/gyrus-session.c:368 #, c-format msgid "Session named \"%s\" already exists." msgstr "已经存在名为“%s”的会话。" #: ../src/gyrus-session.c:465 msgid "Autodetect" msgstr "自动检测" #: ../src/gyrus-session.c:550 msgid "Session" msgstr "会话" #: ../src/gyrus-session.c:702 msgid "No host specified." msgstr "未指定主机。" #: ../tests/gyrus-talk.glade.h:1 msgid "Connection" msgstr "连接" #: ../tests/gyrus-talk.glade.h:2 msgid "Command:" msgstr "命令:" #: ../tests/gyrus-talk.glade.h:5 msgid "Talk - Echo client" msgstr "" #: ../tests/gyrus-talk.glade.h:8 msgid "_Send" msgstr "发送(_S)" #~ msgid "Host (or IP address)" #~ msgstr "主机(或 IP 地址)" #~ msgid "Save session as" #~ msgstr "会话另存为" #~ msgid "(c) 2003 GNOME Foundation" #~ msgstr "(c) 2003 GNOME 基金会" #~ msgid "" #~ "B\n" #~ "KB\n" #~ "MB\n" #~ "GB\n" #~ "TB" #~ msgstr "" #~ "B\n" #~ "KB\n" #~ "MB\n" #~ "GB\n" #~ "TB" #~ msgid "Could not change quota." #~ msgstr "无法更改配额。" #~ msgid "Mailbox '%s' does not exists." #~ msgstr "邮箱“%s”不存在。" gyrus-0.4.2/src/000077500000000000000000000000001426522072200134575ustar00rootroot00000000000000gyrus-0.4.2/src/gyrus-admin-acl.c000066400000000000000000000135351426522072200166260ustar00rootroot00000000000000/* gyrus-admin-acl.c GYRUS -- GNOME Cyrus Administrator. ACL support. Copyright (C) 2004-2005 Claudio Saavedra V. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, see . */ #include #include #include #include #include "glib/gi18n.h" #include "gyrus-main-app.h" #include "gyrus-admin.h" #include "gyrus-admin-acl.h" #include "gyrus-common.h" gboolean gyrus_admin_acl_delete_entry (GyrusAdmin *admin, const gchar *mailbox, const gchar *identifier, gchar **error) { GyrusImapStatus status; gchar *msg = g_strdup_printf (". deleteacl \"%s\" \"%s\"\n", mailbox, identifier); gyrus_admin_write_channel (admin, msg); g_free (msg); status = gyrus_admin_listen_channel (admin, &msg, NULL); g_free (msg); if (error != NULL) switch (status) { case GYRUS_IMAP_STATUS_NO: *error = g_strdup_printf (_("Mailbox '%s' does not exist."), mailbox); break; case GYRUS_IMAP_STATUS_BAD: case GYRUS_IMAP_STATUS_BYE: case GYRUS_IMAP_STATUS_LIST: case GYRUS_IMAP_STATUS_OK: break; default: break; } return (status == GYRUS_IMAP_STATUS_OK); } gboolean gyrus_admin_acl_set_entry (GyrusAdmin *admin, const gchar *mailbox, const gchar* user, const gchar* permissions, gchar **error) { GyrusImapStatus status; gchar *msg; if (!gyrus_common_str_is_ascii (user)) { if (error != NULL) *error = g_strdup(_("Invalid identifier.")); return FALSE; } if (strlen (user) == 0) { if (error != NULL) *error = g_strdup(_("Empty entry name.")); return FALSE; } else if (strlen (mailbox) == 0) { if (error != NULL) *error = g_strdup(_("Empty mailbox name.")); return FALSE; } msg = g_strdup_printf (". setacl \"%s\" \"%s\" %s\n", mailbox, user, permissions); gyrus_admin_write_channel (admin, msg); g_free (msg); status = gyrus_admin_listen_channel (admin, &msg, NULL); g_free (msg); if (error != NULL) switch (status) { case GYRUS_IMAP_STATUS_NO: *error = g_strdup_printf (_("Mailbox '%s' does not exist."), mailbox); break; case GYRUS_IMAP_STATUS_BAD: *error = g_strdup (_("Missing required argument to Setacl")); case GYRUS_IMAP_STATUS_BYE: case GYRUS_IMAP_STATUS_LIST: case GYRUS_IMAP_STATUS_OK: break; default: break; } return (status == GYRUS_IMAP_STATUS_OK); } static gint gyrus_admin_acl_sort_func (gconstpointer a, gconstpointer b) { return (strcmp (GYRUS_IMAP_ACL_ENTRY (a)->identifier, GYRUS_IMAP_ACL_ENTRY (b)->identifier)); } GList * gyrus_admin_acl_get (GyrusAdmin *admin, const gchar *mailbox, gchar **error) { GList *list = NULL; GyrusImapStatus status; GyrusImapAclEntry *entry; gchar *iter, *iter2; gchar *msg = g_strdup_printf (". getacl \"%s\"\n", mailbox); gyrus_admin_write_channel (admin, msg); g_free (msg); status = gyrus_admin_listen_channel (admin, &msg, NULL); if (status == GYRUS_IMAP_STATUS_NO) { if (strcmp (msg, ". NO Permission denied\n") && error != NULL) *error = g_strdup (_("Permission denied")); g_free (msg); return NULL; } /* we need to parse the message because of its horrible format. Following code is the most ugly code ever written in earth. It's not difficult to get better, so please if bored, do it. */ /* skips "* ACL " */ iter = (gchar *)&msg[strlen ("* ACL ")]; /* skips user.mailbox or "user.my mailbox" */ if (*iter == '"') { do ++iter; while (*iter != '"'); iter ++; if (*iter == ' ') iter ++; } else { do ++iter; while (*iter != ' ' && *iter != '\r'); if (*iter == ' ') iter ++; } if (*iter == '\r') { g_free (msg); status = gyrus_admin_listen_channel (admin, &msg, NULL); g_free (msg); if (error != NULL) *error = g_strdup (_("Empty access control list.")); return NULL; } do { entry = g_new (GyrusImapAclEntry, 1); iter2 = iter; /* gets the identifier, if it is sorrounded by spaces, or not. */ if (*iter2 == '"') { iter++; /* skip the '"' */ do ++iter2; while (*iter2 != '"'); } else { do ++iter2; while (*iter2 != ' '); } /* we got the identifier, duplicate it */ entry->identifier = g_strndup (iter, iter2 - iter); /* gets the rights */ do iter2++; while (*iter2 == ' '); iter = iter2; do ++iter2; while (!isspace (*iter2)); /* we got the rights, duply it */ entry->rights = g_strndup (iter, iter2 - iter); do (iter2++); while (*iter2 == ' '); iter = iter2; /* g_print ("identifier: %s.\n", entry->identifier); g_print ("rights: %s.\n", entry->rights); */ list = g_list_prepend (list, entry); } while (*iter2 != '\0'); /* GList *l_iter; for (l_iter = list; l_iter != NULL; l_iter = g_list_next (l_iter)) g_print ("identifier: %s\nrights: %s\n", GYRUS_IMAP_ACL_ENTRY (l_iter->data)->identifier, GYRUS_IMAP_ACL_ENTRY (l_iter->data)->rights); */ list = g_list_sort (list, gyrus_admin_acl_sort_func); g_free (msg); status = gyrus_admin_listen_channel (admin, &msg, NULL); g_free (msg); return list; } void gyrus_admin_acl_list_free (GList *list) { GList *l_iter; for (l_iter = list; l_iter != NULL; l_iter = g_list_next (l_iter)) { g_free (GYRUS_IMAP_ACL_ENTRY(l_iter->data)->identifier); g_free (GYRUS_IMAP_ACL_ENTRY(l_iter->data)->rights); g_free (GYRUS_IMAP_ACL_ENTRY(l_iter->data)); } g_list_free (list); } gyrus-0.4.2/src/gyrus-admin-acl.h000066400000000000000000000032771426522072200166350ustar00rootroot00000000000000/* gyrus-admin-acl.h GYRUS -- GNOME Cyrus Administrator. ACL support. Copyright (C) 2004 Claudio Saavedra V. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, see . */ #ifndef GYRUS_ADMIN_ACL_H #define GYRUS_ADMIN_ACL_H typedef struct { gchar *identifier; gchar *rights; } GyrusImapAclEntry; #define GYRUS_IMAP_ACL_ENTRY(a) ((GyrusImapAclEntry*)(a)) gboolean gyrus_admin_acl_set_entry (GyrusAdmin *admin, const gchar *mailbox, const gchar* user, const gchar* permissions, gchar **error); /* Returns a GList with GyrusImapAclEntry elements. The list must be freed, and also it's elements. */ GList * gyrus_admin_acl_get (GyrusAdmin *admin, const gchar *mailbox, gchar **error); /* * Free the list created with gyrus_admin_acl_get */ void gyrus_admin_acl_list_free (GList *list); /* Deletes the entry of @identifier in @mailbox. If something goes * wrong returns FALSE and allocate a error message in @error. */ gboolean gyrus_admin_acl_delete_entry (GyrusAdmin *admin, const gchar *mailbox, const gchar *identifier, gchar **error); #endif /* GYRUS_ADMIN_ACL_H */ gyrus-0.4.2/src/gyrus-admin-mailbox.c000066400000000000000000000434711426522072200175240ustar00rootroot00000000000000/* gyrus-admin-mailbox.c GYRUS -- GNOME Cyrus Administrator. Administrator Mailboxes Modules. Copyright (C) 2003-2004 Alejandro Valdés Jiménez Copyright (C) 2003-2004 Jorge Bustos Bustos Copyright (C) 2003-2005 Claudio Saavedra Valdés This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, see . */ #include #include #include #include #include "glib/gi18n.h" #include "gyrus-main-app.h" #include "gyrus-admin.h" #include "gyrus-common.h" #include "gyrus-admin-private.h" #include "gyrus-admin-mailbox.h" #include "gyrus-admin-acl.h" #define BUFFER_SIZE 1024 void gyrus_admin_acl_set_tree_view (GyrusAdmin *admin, const gchar *mailbox_path); gboolean gyrus_admin_mailbox_get_quota (GyrusAdmin *admin, const gchar *mailbox_path, gint *quota_limit, gint *quota_used, gchar **error) { gchar *msg, **parts; GyrusImapStatus status; msg = g_strdup_printf (". getquota \"%s\"\n", mailbox_path); gyrus_admin_write_channel (admin, msg); g_free (msg); *error = NULL; status = gyrus_admin_listen_channel (admin, &msg, NULL); if (status == GYRUS_IMAP_STATUS_BYE) { g_free (msg); return FALSE; } parts = g_strsplit (msg, " ", -1); if (g_ascii_strcasecmp (parts[1], "QUOTA") == 0) { g_strfreev (parts); parts = g_strsplit (msg, "(", -1); sscanf (parts[1], "STORAGE %d %d)", quota_used, quota_limit); g_free (msg); gyrus_admin_listen_channel (admin, &msg, NULL); } else if (g_ascii_strcasecmp (parts[1], "NO") == 0) { *quota_used = -1; *quota_limit = -1; if (strcmp (parts [2], "Quota") == 0) *error = g_strdup (_("Quota does not exist")); else if (strcmp (parts [2], "Permission") == 0) *error = g_strdup (_("Permission denied")); } g_free (msg); g_strfreev (parts); return TRUE; } static void gyrus_admin_mailbox_get_human_quota (gint quota, gchar *str_quota) { const gchar* prefix; gdouble f_quota = quota; gint iter = 0; while (f_quota > 1024.0 && iter < 4) { f_quota /= 1024.0; iter ++; } switch (iter) { case 0: prefix = "K"; break; case 1: prefix = "M"; break; case 2: prefix = "G"; break; default: prefix = "T"; } g_sprintf (str_quota, "%.1f %sB", f_quota, prefix); } gboolean gyrus_admin_mailbox_set_quota (GyrusAdmin *admin, const gchar *mailbox_path, gint new_quota) { GyrusImapStatus status; gchar *msg; msg = g_strdup_printf (". setquota \"%s\" (STORAGE %d)\n", mailbox_path, new_quota); gyrus_admin_write_channel (admin, msg); g_free (msg); status = gyrus_admin_listen_channel (admin, &msg, NULL); g_free (msg); return (status == GYRUS_IMAP_STATUS_OK); } void gyrus_admin_mailbox_set_sensitive (GyrusAdmin *admin, gboolean status) { gtk_widget_set_sensitive (admin->priv->expander_modify_quota, status); gtk_widget_set_sensitive (admin->priv->expander_modify_acl, status); } void gyrus_admin_mailbox_show_info (GyrusAdmin *admin, const gchar *user, const gchar *mailbox_path) { gint quota_limit, quota_used, quota_free; gchar str_quota_limit[BUFFER_SIZE], str_quota_free[BUFFER_SIZE]; gchar *msg; /* shows the name of the current mailbox */ gtk_label_set_text (GTK_LABEL (admin->priv->label_mailbox_name), mailbox_path); if (!gyrus_admin_mailbox_get_quota (admin, mailbox_path, "a_limit, "a_used, &msg)) { gyrus_admin_logged_out (admin); return; } quota_free = quota_limit - quota_used; /* sets the quota info in the screen */ if (quota_limit < 0) g_sprintf (str_quota_limit, "%s", msg); else gyrus_admin_mailbox_get_human_quota (quota_limit, str_quota_limit); if (quota_free < 0) g_sprintf (str_quota_free, _("Quota overloaded")); else gyrus_admin_mailbox_get_human_quota (quota_free, str_quota_free); gtk_label_set_text (GTK_LABEL (admin->priv->label_mailbox_owner), user); gtk_label_set_text (GTK_LABEL (admin->priv->label_quota_limit), str_quota_limit); gtk_label_set_text (GTK_LABEL (admin->priv->label_quota_free), str_quota_free); gyrus_admin_acl_set_tree_view (admin, mailbox_path); /* gyrus_admin_acl_get (admin, mailbox_path, NULL); */ if (msg != NULL) g_free (msg); } void gyrus_admin_mailbox_clear_info (GyrusAdmin *admin) { GtkListStore *store; gtk_label_set_text (GTK_LABEL (admin->priv->label_mailbox_name), ""); gtk_label_set_text (GTK_LABEL (admin->priv->label_mailbox_owner), ""); gtk_label_set_text (GTK_LABEL (admin->priv->label_quota_limit), ""); gtk_label_set_text (GTK_LABEL (admin->priv->label_quota_free), ""); store = GTK_LIST_STORE (gtk_tree_view_get_model (admin->priv->treeview_acl)); gtk_list_store_clear (store); } void gyrus_admin_mailbox_on_button_quota_apply_clicked (GtkButton *button, gpointer userdata) { GyrusAdmin * admin = GYRUS_ADMIN (userdata); gchar **tokens; const gchar *new_quota_str; gint new_quota; gchar *new_quota_invalid; gchar *mailbox_path; new_quota_str = gtk_entry_get_text (GTK_ENTRY (admin->priv->entry_quota_new)); if (!g_ascii_strcasecmp (new_quota_str, "")) return; mailbox_path = g_strdup (gtk_label_get_text (GTK_LABEL (admin->priv->label_mailbox_name))); new_quota = 1024 * g_strtod (new_quota_str, &new_quota_invalid); if (*new_quota_invalid) { gyrus_common_show_message (NULL, GTK_MESSAGE_ERROR, _("Quota not valid. Please try again.")); g_free (mailbox_path); return; } if (gyrus_admin_mailbox_set_quota (admin, mailbox_path, new_quota)) { gtk_entry_set_text (GTK_ENTRY (admin->priv->entry_quota_new), ""); tokens = g_strsplit (mailbox_path, gyrus_admin_get_separator_char (admin), 3); gyrus_admin_mailbox_show_info (admin, tokens[1], mailbox_path); g_strfreev (tokens); } else gyrus_common_show_message (NULL, GTK_MESSAGE_ERROR, _("Unable to change quota. " "Are you sure do you have the appropriate permissions?")); g_free (mailbox_path); } void gyrus_admin_mailbox_on_entry_quota_new_activate (GtkEntry *entry, gpointer user_data) { GtkButton *button = GTK_BUTTON (user_data); gtk_button_clicked (button); } static gboolean gyrus_admin_mailbox_exists (GyrusAdmin *admin, const gchar *mailbox) { GyrusImapStatus status; gchar *msg = g_strdup_printf (". list \"\" \"%s\"\n", mailbox); gyrus_admin_write_channel (admin, msg); g_free (msg); status = gyrus_admin_listen_channel (admin, &msg, NULL); g_free (msg); if (status == GYRUS_IMAP_STATUS_LIST) { gyrus_admin_listen_channel (admin, &msg, NULL); g_free (msg); return TRUE; } return FALSE; } static gboolean gyrus_admin_mailbox_name_is_valid (GyrusAdmin *admin, const gchar *mailbox) { return (/*!g_strrstr (mailbox, " ") &&*/ !g_strrstr (mailbox, gyrus_admin_get_separator_char (admin))); } /* Create a new mailbox in server managed by @admin. If @quota is not negative, the maximun amount of space that can be used by the mailbox is @quota KB. The root for the mailbox is @path. If there is any error and the mailbox can not be created, returns FALSE and a error message is allocated in @error. @admin: The #GyrusAdmin related to the server where the mailbox must be created. @mailbox: The name of the mailbox. Must be a valid mailbox name for IMAP standard. @path: The base path for the new mailbox. Must be existent. @quota: The quota limit in KB, or a negative value for unquoted mailboxes. @error: If gyrus_admin_new_mailbox () returns FALSE, a newly allocated error message. Returns: TRUE if successful, FALSE in any other case. */ gboolean gyrus_admin_mailbox_new (GyrusAdmin *admin, const gchar *mailbox, const gchar *path, gint quota, gchar **error) { GyrusImapStatus status; gchar *new_mailbox; gchar *msg; if (!gyrus_admin_mailbox_name_is_valid (admin, mailbox)) { *error = g_strdup_printf (_("'%s' is not a valid " "mailbox name. Please try a different one."), mailbox); return FALSE; } if (strcmp (path, "user") != 0 && !gyrus_admin_mailbox_exists (admin, path)) { *error = g_strdup_printf (_("Parent mailbox '%s' does not exist. " "Please refresh the mailboxes list and try again."), path); return FALSE; } new_mailbox = g_strconcat (path, gyrus_admin_get_separator_char (admin), mailbox, NULL); if (gyrus_admin_mailbox_exists (admin, new_mailbox)) { *error = g_strdup_printf (_("Mailbox '%s' already exists. " "Please try a different name."), new_mailbox); return FALSE; } msg = g_strdup_printf (". create \"%s\"\n", new_mailbox); gyrus_admin_write_channel (admin, msg); g_free (msg); status = gyrus_admin_listen_channel (admin, &msg, NULL); if (status != GYRUS_IMAP_STATUS_OK) { g_free (msg); *error = g_strdup (_("Unable to create the mailbox. " "Are you sure do you have the appropriate permissions?")); g_free (new_mailbox); return FALSE; } g_free (msg); if (quota >= 0) { if (!gyrus_admin_mailbox_set_quota (admin, new_mailbox, quota)) { *error = g_strdup (_("Mailbox created, " "but could not set quota.")); g_free (new_mailbox); return FALSE; } } g_free (new_mailbox); return TRUE; } /* Returns a GList of all the mailboxes under a given mailbox. This list must be freed, and also it's elements. */ static GList * gyrus_admin_get_submailboxes (GyrusAdmin *admin, const gchar *mailbox) { GList *list = NULL; gchar *c_mailbox; gchar *msg; g_assert (GYRUS_IS_ADMIN (admin)); msg = g_strdup_printf (". list \"%s\" *\n", mailbox); gyrus_admin_write_channel (admin, msg); g_free (msg); while (gyrus_admin_listen_channel (admin, &msg, NULL) == GYRUS_IMAP_STATUS_LIST) { /* this cuts the name of the mailbox of the readed buffer, being the buffer of the form: * LIST () "." "user.mymailbox"\n\0 */ c_mailbox = gyrus_admin_get_mailbox_from_list_message (msg); list = g_list_prepend (list, c_mailbox); g_free (msg); } g_free (msg); return list; } static gboolean gyrus_admin_mailbox_delete (GyrusAdmin *admin, const gchar *mailbox, gchar **error) { GyrusImapStatus status; gchar *msg; g_assert (GYRUS_IS_ADMIN (admin)); msg = g_strdup_printf (". delete \"%s\"\n", mailbox); gyrus_admin_write_channel (admin, msg); g_free (msg); status = gyrus_admin_listen_channel (admin, &msg, NULL); g_free (msg); if (status == GYRUS_IMAP_STATUS_NO) { *error = g_strdup_printf (_("Unable to delete '%s'. Permission denied."), mailbox); return FALSE; } return TRUE; } void gyrus_admin_mailbox_delete_all (GyrusAdmin *admin, const gchar *mailbox) { GList *list; GList *iter = NULL; gchar *error; g_assert (GYRUS_IS_ADMIN (admin)); list = gyrus_admin_get_submailboxes (admin, mailbox); #ifdef GYRUS_DELETE_AUTO_ACL const gchar *user = gyrus_admin_get_current_user (admin); #endif for (iter = list; iter != NULL; iter = g_list_next (iter)) { #ifdef GYRUS_DELETE_AUTO_ACL if (!gyrus_admin_acl_set_entry (admin, (gchar *)iter->data, user, "+d", &error)) { gyrus_common_show_message (NULL, GTK_MESSAGE_ERROR, error); g_free (error); } #endif if (!gyrus_admin_mailbox_delete (admin, (gchar *)iter->data, &error)) { gyrus_common_show_message (NULL, GTK_MESSAGE_ERROR, error); g_free (error); } } for (iter = list; iter != NULL; iter = g_list_next (iter)) g_free (iter->data); g_list_free (list); } gboolean gyrus_admin_acl_rights_have_right (const gchar *rights, const gchar right) { return (strchr (rights, right) != NULL) ? TRUE : FALSE; } void gyrus_admin_acl_set_tree_view (GyrusAdmin *admin, const gchar *mailbox_path) { GtkTreeIter iter; GList *list = NULL; GList *l_iter; GtkTreeModel *model; gchar *error; model = gtk_tree_view_get_model (admin->priv->treeview_acl); gtk_list_store_clear (GTK_LIST_STORE (model)); list = gyrus_admin_acl_get (admin, mailbox_path, &error); /* if (GYRUS_IS_MAIN_APP (admin->priv->parent_app)) gyrus_main_app_menu_item_set_sensitive (GYRUS_MAIN_APP (admin->priv->parent_app), "EntryNew", list != NULL); */ if (list == NULL) { gtk_label_set_text (GTK_LABEL (admin->priv->label_acl), error); gtk_widget_hide (GTK_WIDGET (admin->priv->scrolled_acl)); gtk_widget_show (admin->priv->label_acl); g_free (error); return; } gtk_widget_hide (admin->priv->label_acl); gtk_widget_show (GTK_WIDGET (admin->priv->scrolled_acl)); for (l_iter = list; l_iter != NULL; l_iter = g_list_next (l_iter)) { gtk_list_store_append (GTK_LIST_STORE (model), &iter); gtk_list_store_set (GTK_LIST_STORE (model), &iter, COL_ACL_IDENTIFIER, GYRUS_IMAP_ACL_ENTRY (l_iter->data)->identifier, COL_ACL_RIGHT_L, gyrus_admin_acl_rights_have_right (GYRUS_IMAP_ACL_ENTRY(l_iter->data)->rights, 'l'), COL_ACL_RIGHT_R, gyrus_admin_acl_rights_have_right (GYRUS_IMAP_ACL_ENTRY(l_iter->data)->rights, 'r'), COL_ACL_RIGHT_S, gyrus_admin_acl_rights_have_right (GYRUS_IMAP_ACL_ENTRY(l_iter->data)->rights, 's'), COL_ACL_RIGHT_W, gyrus_admin_acl_rights_have_right (GYRUS_IMAP_ACL_ENTRY(l_iter->data)->rights, 'w'), COL_ACL_RIGHT_I, gyrus_admin_acl_rights_have_right (GYRUS_IMAP_ACL_ENTRY(l_iter->data)->rights, 'i'), COL_ACL_RIGHT_P, gyrus_admin_acl_rights_have_right (GYRUS_IMAP_ACL_ENTRY(l_iter->data)->rights, 'p'), COL_ACL_RIGHT_C, gyrus_admin_acl_rights_have_right (GYRUS_IMAP_ACL_ENTRY(l_iter->data)->rights, 'c'), COL_ACL_RIGHT_D, gyrus_admin_acl_rights_have_right (GYRUS_IMAP_ACL_ENTRY(l_iter->data)->rights, 'd'), COL_ACL_RIGHT_A, gyrus_admin_acl_rights_have_right (GYRUS_IMAP_ACL_ENTRY(l_iter->data)->rights, 'a'), COL_ACL_MODIFIED, FALSE, -1); /* GYRUS_IMAP_ACL_ENTRY (l_iter->data)->rights); */ } gyrus_admin_acl_list_free (list); } inline gboolean gyrus_admin_acl_has_selection (GyrusAdmin *admin) { GtkTreeSelection *selection; selection = gtk_tree_view_get_selection (admin->priv->treeview_acl); return gtk_tree_selection_get_selected (selection, NULL, NULL); } void gyrus_admin_delete_selected_acl_entry (GyrusAdmin *admin) { GtkTreeIter iter; gchar *mailbox, *identifier, *error; GtkTreeModel *model; GtkTreeSelection *selection; mailbox = g_strdup (gtk_label_get_text (GTK_LABEL (admin->priv->label_mailbox_name))); selection = gtk_tree_view_get_selection (admin->priv->treeview_acl); /* model = gtk_tree_view_get_model (admin->priv->treeview_acl); */ if (!gtk_tree_selection_get_selected (selection, &model, &iter)) return; gtk_tree_model_get (model, &iter, COL_ACL_IDENTIFIER, &identifier, -1); if (gyrus_admin_acl_delete_entry (admin, mailbox, identifier, &error)) { selection = gtk_tree_view_get_selection (admin->priv->treeview_acl); gtk_list_store_remove (GTK_LIST_STORE (model), &iter); } else { gyrus_common_show_message (NULL, GTK_MESSAGE_ERROR, error); g_free (error); } g_free (mailbox); g_free (identifier); } void gyrus_admin_start_editing_selected_acl (GyrusAdmin *admin) { GtkTreeSelection *selection; GtkTreeModel *model; GtkTreeIter iter; GtkTreePath *path; GtkTreeViewColumn * column; selection = gtk_tree_view_get_selection (admin->priv->treeview_acl); if (!gtk_tree_selection_get_selected (selection, &model, &iter)) return; path = gtk_tree_model_get_path (model, &iter); column = GTK_TREE_VIEW_COLUMN (g_object_get_data (G_OBJECT (admin->priv->treeview_acl), "column-identifier")); gtk_tree_view_set_cursor (admin->priv->treeview_acl, path, column, TRUE); gtk_tree_path_free (path); } void gyrus_admin_add_acl_entry (GyrusAdmin *admin) { GtkTreeModel *model; GtkTreeIter iter; GtkTreeViewColumn *column; GtkTreePath *path; gboolean duplicated = FALSE; GyrusImapAclEntry *entry; GList *l_iter; gint i; const gchar* mailbox = gtk_label_get_text (GTK_LABEL (admin->priv->label_mailbox_name)); gchar *default_entry_name = g_strdup (_("new entry")); gchar *entry_name = g_strdup (default_entry_name); GList *acl = gyrus_admin_acl_get (admin, mailbox, NULL); if (acl == NULL) { gtk_widget_show (GTK_WIDGET (admin->priv->scrolled_acl)); gtk_widget_hide (GTK_WIDGET (admin->priv->label_acl)); } /* check it the new name already exists. */ i = 0; do { if (i > 0) { g_free (entry_name); entry_name = g_strdup_printf ("%s %i", default_entry_name, i); duplicated = FALSE; } l_iter = acl; while (l_iter != NULL && !duplicated) { entry = GYRUS_IMAP_ACL_ENTRY (l_iter->data); if (strcmp (entry->identifier, entry_name) == 0) duplicated = TRUE; l_iter = g_list_next (l_iter); } if (duplicated) i++; } while (duplicated); gyrus_admin_acl_list_free (acl); model = gtk_tree_view_get_model (admin->priv->treeview_acl); gtk_list_store_append (GTK_LIST_STORE (model), &iter); gtk_list_store_set (GTK_LIST_STORE (model), &iter, COL_ACL_IDENTIFIER, entry_name, COL_ACL_RIGHT_L, TRUE, -1); gyrus_admin_acl_set_entry (admin, mailbox, entry_name, "l", NULL); g_free (default_entry_name); g_free (entry_name); path = gtk_tree_model_get_path (model, &iter); column = GTK_TREE_VIEW_COLUMN (g_object_get_data (G_OBJECT (admin->priv->treeview_acl), "column-identifier")); gtk_tree_view_set_cursor (admin->priv->treeview_acl, path, column, TRUE); gtk_tree_path_free (path); } gyrus-0.4.2/src/gyrus-admin-mailbox.h000066400000000000000000000117031426522072200175220ustar00rootroot00000000000000/* gyrus-admin-mailbox.h GYRUS -- GNOME Cyrus Administrator. Administrator Mailboxes Modules. Copyright (C) 2003-2004 Alejandro Valdés Jiménez Copyright (C) 2003-2004 Jorge Bustos Bustos Copyright (C) 2003-2004 Claudio Saavedra Valdés This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, see . */ #ifndef GYRUS_ADMIN_MAILBOX_H #define GYRUS_ADMIN_MAILBOX_H /** Gets the Quota of @mailbox_path in @admin. A Quota is composed of two values, the limit of the mailbox and the currently used space. Both values are in KBytes. If @mailbox_path does not have a quota defined, then both @quota_limit and @quota_used are set to -1. @admin: A @GyrusAdmin instance. @mailbox_path: The path to the mailbox to check for the quota. @quota_limit: The limit of space of the mailbox for the mailbox. @quota_used: The currently used space. @error: If non NULL, a error message of the server, if any. Returns: TRUE on all ok. If anything goes wrong returns FALSE and allocates a error message in @error. */ gboolean gyrus_admin_mailbox_get_quota (GyrusAdmin *admin, const gchar *mailbox_path, gint *quota_limit, gint *quota_used, gchar **message); /** Sets the quota of @mailbox_path in @admin to @new_quota. @new_quota is in KBytes. */ gboolean gyrus_admin_mailbox_set_quota (GyrusAdmin *admin, const gchar *mailbox_path, gint new_quota); /** When a mailbox is selected in the treeview, some usefull information is displayed by gyrus_admin_show_info (). Use this function to clear that information. */ void gyrus_admin_mailbox_clear_info (GyrusAdmin *admin); /** Shows usefull information of @mailbox_path in @admin. @admin: A instance of #GyrusAdmin. @user: The user that owns @mailbox_path. @mailbox_path: The path to the mailbox whose info is to be shown. */ void gyrus_admin_mailbox_show_info (GyrusAdmin *admin, const gchar *user, const gchar *mailbox_path); /** Updates the sensitivity of the items related to the Mailbox. Useful when user selects/deselects a mailbox row in the Treeview. */ void gyrus_admin_mailbox_set_sensitive (GyrusAdmin *admin, gboolean status); /** Creates a mailbox in the server. This function will create @mailbox in the given @path, setting a maximun storage space of @quota. If @quota is negative, doesn't set a quota. @admin: A instance of #GyrusAdmin. @mailbox: The mailbox name to create. @path: The path where to create the mailbox. @quota: If non negative, the maximun storage space for the mailbox in KB. @error: If non NULL, allocates a error message. Returns: TRUE if sucessfull, else returns FALSE and allocates and error message in @error. */ gboolean gyrus_admin_mailbox_new (GyrusAdmin *admin, const gchar *mailbox, const gchar *path, gint quota, gchar **error); /** Deletes a mailbox and recursivly deletes all of its submailboxes. If the user administrator doesn't have the permission 'd', doesn't delete the mailboxes. @admin: An instance of #GyrusAdmin. @mailbox: The mailbox to delete. */ void gyrus_admin_mailbox_delete_all (GyrusAdmin *admin, const gchar *mailbox); /** Deletes the selected entry of the ACL. The selected entry is the selected row in the ACL TreeView. @admin: An instance of #GyrusAdmin. */ void gyrus_admin_delete_selected_acl_entry (GyrusAdmin *admin); /** Starts editing the selected ACL entry name in the ACL TreeView. The selected entry is the selected row in the ACL TreeView. @admin: An instance of #GyrusAdmin. */ void gyrus_admin_start_editing_selected_acl (GyrusAdmin *admin); /** Checks if the ACL TreeView has any element selected. @admin: An instance of #GyrusAdmin. Returns: TRUE if any row is selected, FALSE otherwise. */ gboolean gyrus_admin_acl_has_selection (GyrusAdmin *admin); /** Adds a row in the ACL TreeView, so user can start editing the name of the entry. The entry will have a default name acording to the locale. @admin: An instance of #GyrusAdmin. */ void gyrus_admin_add_acl_entry (GyrusAdmin *admin); /* Callbacks */ void gyrus_admin_mailbox_on_button_quota_apply_clicked (GtkButton *button, gpointer userdata); void gyrus_admin_mailbox_on_entry_quota_new_activate (GtkEntry *entry, gpointer user_data); #endif /* GYRUS_ADMIN_MAILBOX_H */ gyrus-0.4.2/src/gyrus-admin-private.h000066400000000000000000000036511426522072200175440ustar00rootroot00000000000000/* gyrus-admin-private.c GYRUS -- GNOME Cyrus Administrator. Administrator Class. Copyright (C) 2007 Claudio Saavedra This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, see . */ #ifndef __GYRUS_ADMIN_PRIVATE__ #define __GYRUS_ADMIN_PRIVATE__ #include "gyrus-admin.h" G_BEGIN_DECLS /*** Gyrus Administrator Private Data ***/ struct _GyrusAdminPrivate { GtkWidget *label_host; GtkWidget *label_user; GtkWidget *label_port; /* GtkWidget *entry_pass; */ GtkWidget *button_connect; GtkWidget *label_mailbox_owner; GtkWidget *label_quota_limit; GtkWidget *label_quota_free; GtkWidget *entry_quota_new; GtkWidget *button_quota_apply; GtkWidget *entry_find_account; GtkWidget *window_find_account; GtkWidget *button_acl_apply; GtkWidget *button_acl_add; GtkWidget *button_acl_remove; GtkWidget *button_close_page; GtkWidget *button_user_create; GtkWidget *button_user_remove; GtkWidget *label_mailbox_name; GtkWidget *label_page; GtkWidget *expander_modify_quota; GtkWidget *expander_modify_acl; GtkTreeView *treeview_users; GtkTreeView *treeview_acl; GtkTreeView *treeview_corrupt_mailbox; GtkWidget *label_acl; GtkWidget *scrolled_acl; GSocketConnection *connection; GSocketClient *tcp_socket; gchar *buffer; GyrusSession *session; }; G_END_DECLS #endif /* __GYRUS_ADMIN_PRIVATE_H__ */ gyrus-0.4.2/src/gyrus-admin.c000066400000000000000000001202511426522072200160630ustar00rootroot00000000000000/* gyrus-admin.c GYRUS -- GNOME Cyrus Administrator. Administrator Class. Copyright (C) 2004-2005 Claudio Saavedra Valdés This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, see . */ #include #include #include #include #include #include "gyrus-main-app.h" #include "gyrus-admin.h" #include "gyrus-common.h" #include "gyrus-session.h" #include "gyrus-admin-private.h" #include "gyrus-admin-mailbox.h" #include "gyrus-admin-acl.h" G_DEFINE_TYPE_WITH_PRIVATE (GyrusAdmin, gyrus_admin, GTK_TYPE_BOX) /* #define DEBUG_PLAIN_CHANNEL */ enum { CONNECTED, DISCONNECTED, ACL_SELECTION_CHANGED, MAILBOX_SELECTION_CHANGED, SIGNAL_LAST }; static gint admin_signals [SIGNAL_LAST]; static void gyrus_admin_finalize (GObject *object); static void gyrus_admin_initialize_mailbox_tree_view (GyrusAdmin *admin, gboolean is_orphaned); static void gyrus_admin_initialize_acl_tree_view (GyrusAdmin *admin); GtkTreeModel * gyrus_admin_mailbox_tree_model_new (void); GtkListStore * gyrus_admin_acl_tree_model_new (void); void gyrus_admin_on_button_connect_clicked (GtkButton *button, gpointer user_data); /*void gyrus_admin_on_entry_pass_activate (GtkEntry *entry, gpointer user_data);*/ void gyrus_admin_on_treeview_users_cursor_changed (GtkTreeView *treeview, gpointer *data); void gyrus_admin_on_acl_selection_changed (GtkTreeSelection *selection, gpointer user_data); void gyrus_admin_on_users_selection_changed (GtkTreeSelection *selection, gpointer user_data); void gyrus_admin_on_renderer_toggled (GtkCellRendererToggle *renderer, gchar *path, gpointer user_data); void gyrus_admin_on_acl_identifier_edited (GtkCellRendererText *cellrenderertext, gchar *arg1, gchar *arg2, gpointer user_data); gboolean gyrus_admin_logout (GyrusAdmin *admin); #define BUFFER_SIZE 10240 /*** private methods ****/ static void gyrus_admin_class_init (GyrusAdminClass *class) { GObjectClass *gobject_class = G_OBJECT_CLASS (class); GType selection_changed_types [1] = { G_TYPE_BOOLEAN }; gyrus_admin_parent_class = g_type_class_peek_parent (class); gobject_class->finalize = gyrus_admin_finalize; admin_signals [CONNECTED] = g_signal_newv ("connected", G_TYPE_FROM_CLASS (class), G_SIGNAL_RUN_LAST | G_SIGNAL_NO_RECURSE | G_SIGNAL_NO_HOOKS, NULL /* class closure */, NULL /* accumulator */, NULL /* accu_data */, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE /* return_type */, 0 /* n_params */, NULL /* param_types */); admin_signals [DISCONNECTED] = g_signal_newv ("disconnected", G_TYPE_FROM_CLASS (class), G_SIGNAL_RUN_LAST | G_SIGNAL_NO_RECURSE | G_SIGNAL_NO_HOOKS, NULL /* class closure */, NULL /* accumulator */, NULL /* accu_data */, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE /* return_type */, 0 /* n_params */, NULL /* param_types */); admin_signals [ACL_SELECTION_CHANGED] = g_signal_newv ("acl-selection-changed", G_TYPE_FROM_CLASS (class), G_SIGNAL_RUN_LAST | G_SIGNAL_NO_RECURSE | G_SIGNAL_NO_HOOKS, NULL /* class closure */, NULL /* accumulator */, NULL /* accu_data */, g_cclosure_marshal_VOID__BOOLEAN, G_TYPE_NONE /* return_type */, 1 /* n_params */, selection_changed_types /* param_types */); admin_signals [MAILBOX_SELECTION_CHANGED] = g_signal_newv ("mailbox-selection-changed", G_TYPE_FROM_CLASS (class), G_SIGNAL_RUN_LAST | G_SIGNAL_NO_RECURSE | G_SIGNAL_NO_HOOKS, NULL /* class closure */, NULL /* accumulator */, NULL /* accu_data */, g_cclosure_marshal_VOID__BOOLEAN, G_TYPE_NONE /* return_type */, 1 /* n_params */, selection_changed_types /* param_types */); } static void gyrus_admin_init_get_widgets (GyrusAdmin *admin) { GyrusAdminPrivate *priv = admin->priv; GtkWidget *table; GtkBuilder *builder; builder = gtk_builder_new (); gtk_builder_add_from_resource (builder, "/org/gnome/gyrus/page.xml", NULL); priv->treeview_users = GTK_TREE_VIEW (gtk_builder_get_object (builder,"treeview_users")); priv->treeview_corrupt_mailbox = GTK_TREE_VIEW (gtk_builder_get_object (builder,"treeview_corrupt_mailbox")); priv->treeview_acl = GTK_TREE_VIEW (gtk_builder_get_object (builder,"treeview_acl")); priv->label_acl = GTK_WIDGET (gtk_builder_get_object (builder, "label_acl")); priv->scrolled_acl = GTK_WIDGET (gtk_builder_get_object (builder, "scrolled_acl")); priv->label_host = GTK_WIDGET (gtk_builder_get_object (builder, "label_host")); priv->label_user = GTK_WIDGET (gtk_builder_get_object (builder, "label_user")); priv->label_port = GTK_WIDGET (gtk_builder_get_object (builder, "label_port")); priv->button_connect = GTK_WIDGET (gtk_builder_get_object (builder, "button_connect")); priv->label_mailbox_owner = GTK_WIDGET (gtk_builder_get_object (builder, "label_mailbox_owner")); priv->label_quota_limit = GTK_WIDGET (gtk_builder_get_object (builder, "label_assigned")); priv->label_quota_free = GTK_WIDGET (gtk_builder_get_object (builder, "label_free")); priv->entry_quota_new = GTK_WIDGET (gtk_builder_get_object (builder, "entry_quota_new")); priv->button_quota_apply = GTK_WIDGET (gtk_builder_get_object (builder, "button_quota_apply")); priv->button_user_create = GTK_WIDGET (gtk_builder_get_object (builder, "button_create_user")); priv->button_user_remove = GTK_WIDGET (gtk_builder_get_object (builder, "button_remove_user")); priv->label_mailbox_name = GTK_WIDGET (gtk_builder_get_object (builder, "label_mailbox_name")); priv->expander_modify_quota = GTK_WIDGET (gtk_builder_get_object (builder, "expander_modify_quota")); priv->expander_modify_acl = GTK_WIDGET (gtk_builder_get_object (builder, "expander_modify_acl")); table = GTK_WIDGET (gtk_builder_get_object (builder , "table_page")); gtk_box_pack_start (GTK_BOX (admin), table, TRUE, TRUE, 0); g_object_unref (builder); admin->priv = priv; } static void gyrus_admin_init_connect_signals (GyrusAdmin *admin) { g_signal_connect (G_OBJECT (admin->priv->button_connect), "clicked", G_CALLBACK (gyrus_admin_on_button_connect_clicked), admin); /* g_signal_connect (G_OBJECT (admin->priv->entry_pass), "activate", G_CALLBACK (gyrus_admin_on_entry_pass_activate), admin->priv->button_connect); */ g_signal_connect (G_OBJECT (admin->priv->button_quota_apply), "clicked", G_CALLBACK (gyrus_admin_mailbox_on_button_quota_apply_clicked), admin); g_signal_connect (G_OBJECT (admin->priv->entry_quota_new), "activate", G_CALLBACK (gyrus_admin_mailbox_on_entry_quota_new_activate), admin->priv->button_quota_apply); } static void gyrus_admin_init (GyrusAdmin *admin) { admin->priv = gyrus_admin_get_instance_private (admin); admin->priv->session = NULL; admin->priv->buffer = NULL; gtk_orientable_set_orientation (GTK_ORIENTABLE (admin), GTK_ORIENTATION_VERTICAL); gyrus_admin_init_get_widgets (admin); gyrus_admin_initialize_mailbox_tree_view (admin, FALSE); gyrus_admin_initialize_acl_tree_view (admin); gyrus_admin_initialize_mailbox_tree_view (admin, TRUE); gyrus_admin_init_connect_signals (admin); gyrus_admin_mailbox_set_sensitive (admin, FALSE); gtk_widget_show (GTK_WIDGET (admin)); } static void gyrus_admin_finalize (GObject *object) { GyrusAdmin *admin; g_return_if_fail (GYRUS_IS_ADMIN(object)); admin = GYRUS_ADMIN (object); if (gyrus_admin_is_connected (admin)) gyrus_admin_logout (admin); gyrus_session_free (admin->priv->session); if (admin->priv->buffer) { g_free (admin->priv->buffer); admin->priv->buffer = NULL; } G_OBJECT_CLASS (gyrus_admin_parent_class)->finalize (object); } GtkTreeModel * gyrus_admin_mailbox_tree_model_new (void) { GtkTreeModel *model; model = GTK_TREE_MODEL( gtk_tree_store_new (COL_MAILBOX_NUMBER, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING)); return model; } gchar * gyrus_admin_get_mailbox_from_list_message (gchar *msg) { int k, large; gchar *mb_name; gchar *iterator = msg; for (k = 0; k < 4; k++) { while (*iterator != ' ') iterator++; iterator ++; } /* to remove the "\0" */ large = strlen (iterator) - 1; if (*iterator == '\"') { iterator ++; large -= 2; /* remove the '"' */ } mb_name = g_strndup (iterator, large); return mb_name; } static void gyrus_admin_set_separator_char_auto (GyrusAdmin *admin) { gchar **str_v; gchar *msg = g_strdup (". list \"\" \"\"\n"); gyrus_admin_write_channel (admin, msg); g_free (msg); gyrus_admin_listen_channel (admin, &msg, NULL); str_v = g_strsplit (msg, " ", -1); g_free (msg); gyrus_admin_listen_channel (admin, &msg, NULL); g_free (admin->priv->session->sep_char); admin->priv->session->sep_char = g_strdup_printf ("%c", str_v[3][1]); g_free (msg); g_strfreev (str_v); } static void gyrus_admin_get_users_list (GyrusAdmin *admin) { GtkTreeStore *store; GtkTreeStore *store_corrupt; gchar *msg; gchar **current_mailbox; gboolean success; gint depth, old_depth = 1; GtkTreeIter iter_new, iter_parent, iter_child, iter_corrupt; gboolean is_valid; gint n_users, n_orphaned; GtkTreeViewColumn *column; GyrusImapStatus status; gchar *mb_name; const gchar *sep_char = gyrus_admin_get_separator_char (admin); store = GTK_TREE_STORE (gtk_tree_view_get_model (admin->priv->treeview_users)); store_corrupt = GTK_TREE_STORE (gtk_tree_view_get_model (admin->priv->treeview_corrupt_mailbox)); gtk_tree_store_clear (store); gtk_tree_store_clear (store_corrupt); msg = g_strdup (". list * *\n"); success = gyrus_admin_write_channel (admin, msg); g_free (msg); g_return_if_fail (success == TRUE); while ((status = gyrus_admin_listen_channel (admin, &msg, NULL)) == GYRUS_IMAP_STATUS_LIST) { mb_name = gyrus_admin_get_mailbox_from_list_message (msg); current_mailbox = g_strsplit (mb_name, sep_char, -1); depth = 0; /* this mailbox is fucked up */ if (current_mailbox [1] == NULL) { /* add it somewhere */ gtk_tree_store_append (store_corrupt, &iter_corrupt, NULL); gtk_tree_store_set (store_corrupt, &iter_corrupt, COL_MAILBOX_ICON, "folder", COL_MAILBOX_NAME, mb_name, -1); g_strfreev (current_mailbox); g_free (msg); g_free (mb_name); continue; } is_valid = FALSE; while (current_mailbox [depth + 1] != NULL) depth ++; /* current folder is at same level than previous one */ if (depth == old_depth) { gtk_tree_store_append (store, &iter_child, (depth == 1 ? NULL : &iter_parent)); is_valid = TRUE; } /* current folder is child of the previous one */ else if (depth == old_depth + 1) { gtk_tree_store_append (store, &iter_new, &iter_child); iter_parent = iter_child; iter_child = iter_new; old_depth ++; is_valid = TRUE; } /* current folder is at a parent level of the previous one */ else if (depth < old_depth) { while (depth < old_depth) { gtk_tree_model_iter_parent (GTK_TREE_MODEL (store), &iter_new, &iter_child); iter_child = iter_new; old_depth --; } gtk_tree_model_iter_parent (GTK_TREE_MODEL (store), &iter_parent, &iter_child); gtk_tree_store_append (store, &iter_child, (depth == 1 ? NULL : &iter_parent)); is_valid = TRUE; } if (is_valid) { gtk_tree_store_set (store, &iter_child, COL_MAILBOX_ICON, "folder", COL_MAILBOX_BASENAME, current_mailbox [depth], COL_MAILBOX_NAME, mb_name, -1); old_depth = depth; } else { gtk_tree_store_append (store_corrupt, &iter_corrupt, NULL); gtk_tree_store_set (store_corrupt, &iter_corrupt, COL_MAILBOX_ICON, "folder", COL_MAILBOX_NAME, mb_name, -1); } g_strfreev (current_mailbox); g_free (msg); g_free (mb_name); } g_free (msg); if (status == GYRUS_IMAP_STATUS_BYE) { gyrus_admin_logged_out (admin); return; } /* get the number of users in the tree */ n_users = gtk_tree_model_iter_n_children (GTK_TREE_MODEL(store), NULL); column = gtk_tree_view_get_column (GTK_TREE_VIEW(admin->priv->treeview_users), 0); msg = g_strdup_printf (_("Users (%d)"), n_users); gtk_tree_view_column_set_title (column, msg); g_free (msg); n_orphaned = gtk_tree_model_iter_n_children (GTK_TREE_MODEL(store_corrupt), NULL); column = gtk_tree_view_get_column (GTK_TREE_VIEW(admin->priv->treeview_corrupt_mailbox), 0); msg = g_strdup_printf (_("Orphaned mailboxes (%d)"), n_orphaned); gtk_tree_view_column_set_title (column, msg); g_free (msg); } static gboolean gyrus_admin_on_treeview_focused (GtkWidget *widget, GtkDirectionType arg1, gpointer data) { GyrusAdmin *admin = GYRUS_ADMIN (data); GtkTreeSelection *selection; g_object_set_data (G_OBJECT (admin), "selected-treeview", widget); selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (widget)); gyrus_admin_on_users_selection_changed (selection, data); return FALSE; } static void gyrus_admin_initialize_mailbox_tree_view (GyrusAdmin *admin, gboolean is_orphaned) { GtkTreeView *treeview; GtkTreeModel *model; GtkTreeViewColumn* column; GtkCellRenderer *renderer; GtkTreeSelection *selection; g_return_if_fail (GYRUS_IS_ADMIN (admin)); if (is_orphaned) { treeview = admin->priv->treeview_corrupt_mailbox; } else { treeview = admin->priv->treeview_users; } gtk_tree_view_set_reorderable (treeview, FALSE); column = gtk_tree_view_column_new (); gtk_tree_view_column_set_title (column, is_orphaned ? _("Orphaned mailboxes") : _("Users")); renderer = gtk_cell_renderer_pixbuf_new (); gtk_tree_view_column_pack_start (column, renderer, FALSE); g_object_set (G_OBJECT (renderer), "stock-size", GTK_ICON_SIZE_LARGE_TOOLBAR, NULL); gtk_tree_view_column_set_attributes (column, renderer, "icon-name", COL_MAILBOX_ICON, NULL); renderer = gtk_cell_renderer_text_new (); gtk_tree_view_column_pack_start (column, renderer, TRUE); gtk_tree_view_column_set_attributes (column, renderer, "text", is_orphaned ? COL_MAILBOX_NAME : COL_MAILBOX_BASENAME, NULL); gtk_tree_view_append_column (treeview, column); model = gyrus_admin_mailbox_tree_model_new (); gtk_tree_view_set_model (treeview, model); selection = gtk_tree_view_get_selection (treeview); g_signal_connect (G_OBJECT (selection), "changed", G_CALLBACK (gyrus_admin_on_users_selection_changed), admin); g_signal_connect (G_OBJECT (treeview), "focus-in-event", G_CALLBACK (gyrus_admin_on_treeview_focused), admin); } GtkListStore * gyrus_admin_acl_tree_model_new (void) { GtkListStore *model; GtkTreeSortable *sortable; model = gtk_list_store_new (COL_ACL_NUMBER, G_TYPE_STRING, G_TYPE_BOOLEAN, G_TYPE_BOOLEAN, G_TYPE_BOOLEAN, G_TYPE_BOOLEAN, G_TYPE_BOOLEAN, G_TYPE_BOOLEAN, G_TYPE_BOOLEAN, G_TYPE_BOOLEAN, G_TYPE_BOOLEAN, G_TYPE_BOOLEAN); sortable = GTK_TREE_SORTABLE (model); gtk_tree_sortable_set_sort_column_id (sortable, COL_ACL_IDENTIFIER, GTK_SORT_ASCENDING); return model; } static void gyrus_admin_initialize_acl_tree_view (GyrusAdmin *admin) { GtkCellRenderer *renderer; GtkTreeViewColumn *column; GtkTreeSelection *selection; GtkListStore *model; GtkTreeView *view; gint i; gchar *perms[9] = { _("lookup"), _("read"), _("seen"), _("write"), _("insert"), _("post"), _("create"), _("delete"), _("admin") }; g_return_if_fail (GYRUS_IS_ADMIN (admin)); view = admin->priv->treeview_acl; column = gtk_tree_view_column_new (); gtk_tree_view_column_set_title (column, _("Identifier")); gtk_tree_view_column_set_resizable (column, TRUE); gtk_tree_view_append_column (view, column); renderer = gtk_cell_renderer_text_new (); g_object_set (renderer, "editable", TRUE, NULL); g_signal_connect (G_OBJECT(renderer), "edited", G_CALLBACK (gyrus_admin_on_acl_identifier_edited), admin); gtk_tree_view_column_pack_start (column, renderer, TRUE); gtk_tree_view_column_set_attributes (column, renderer, "text", COL_ACL_IDENTIFIER, NULL); g_object_set_data (G_OBJECT (view), "column-identifier", column); /* create ACLs columns */ for (i = 0; i < 9; i++) { column = gtk_tree_view_column_new (); /* This may be obvlious or maybe not. We need to know wich permission correspond to each column, so we can later recover it in a clean way. */ g_object_set_data (G_OBJECT (column), "permission", GINT_TO_POINTER (COL_ACL_RIGHT_L + i)); g_object_set_data (G_OBJECT (column), "parent-admin", admin); gtk_tree_view_column_set_title (column, perms[i]); gtk_tree_view_column_set_resizable(column, TRUE); gtk_tree_view_append_column (view, column); renderer = gtk_cell_renderer_toggle_new (); gtk_cell_renderer_set_fixed_size (renderer, 30, -1); gtk_tree_view_column_pack_start (column, renderer, TRUE); gtk_tree_view_column_set_attributes (column, renderer, "active", i+1, NULL); g_signal_connect (G_OBJECT (renderer), "toggled", G_CALLBACK (gyrus_admin_on_renderer_toggled), column); } selection = gtk_tree_view_get_selection (view); g_signal_connect (G_OBJECT (selection), "changed", G_CALLBACK (gyrus_admin_on_acl_selection_changed), admin); /* gtk_tree_selection_set_mode (selection, GTK_SELECTION_MULTIPLE); gtk_tree_selection_set_select_function (selection, gyrus_acl_selection_func, admin->button_acl_remove, NULL); */ model = gyrus_admin_acl_tree_model_new (); gtk_tree_view_set_model (view, GTK_TREE_MODEL (model)); } static GSocketClient * gyrus_admin_create_socket_from_session (GyrusAdmin *admin, GyrusSession *session) { GSocketClient *sock; GSocketConnectable *connectable; gchar *msg; g_return_val_if_fail (session, NULL); sock = g_socket_client_new (); if (sock == NULL) { msg = g_strdup (_("Couldn't create the client socket.")); gyrus_common_show_message (NULL, GTK_MESSAGE_ERROR, msg); g_free (msg); return NULL; } connectable = g_network_address_parse (session->host, session->port, NULL); if (connectable == NULL) { msg = g_strdup (_("Couldn't parse the server address.")); gyrus_common_show_message (NULL, GTK_MESSAGE_ERROR, msg); g_free (msg); g_object_unref (sock); return NULL; } admin->priv->connection = g_socket_client_connect (sock, connectable, NULL, NULL); if (admin->priv->connection == NULL) { msg = g_strdup_printf (_("Could not connect to %s, port %d."), session->host, session->port); gyrus_common_show_message (NULL, GTK_MESSAGE_ERROR, msg); g_free (msg); g_object_unref (sock); return NULL; } g_object_unref (connectable); return sock; } static gchar * socket_readline (GyrusAdmin *admin, gsize *len) { GInputStream *stream; gchar *retval; gchar **toks; gchar *n_buffer; stream = g_io_stream_get_input_stream (G_IO_STREAM (admin->priv->connection)); if (admin->priv->buffer == NULL) { admin->priv->buffer = g_malloc0 (BUFFER_SIZE * sizeof (gchar)); g_input_stream_read (stream, admin->priv->buffer, BUFFER_SIZE - 1, NULL, NULL); } toks = g_strsplit (admin->priv->buffer, "\n", 2); g_free (admin->priv->buffer); /* "Someth". We need to feed the buffer. */ while (toks[0] != NULL && toks[1] == NULL) { admin->priv->buffer = g_malloc0 (BUFFER_SIZE * sizeof (gchar)); g_input_stream_read (stream, admin->priv->buffer, BUFFER_SIZE - 1, NULL, NULL); n_buffer = g_strconcat (toks[0], admin->priv->buffer, NULL); g_free (admin->priv->buffer); g_strfreev (toks); toks = g_strsplit (n_buffer, "\n", 2); g_free (n_buffer); } retval = toks[0]; admin->priv->buffer = toks[1]; g_free (toks); if (admin->priv->buffer && strcmp (admin->priv->buffer, "") == 0) { g_free (admin->priv->buffer); admin->priv->buffer = NULL; } *len = strlen (retval); return retval; } /* Allocates @msg_len bytes of memory to store the message. Returns the kind of message read */ GyrusImapStatus gyrus_admin_listen_channel (GyrusAdmin *admin, gchar **message, gint *msg_len) { gsize bytes_read; gchar **tokens = NULL; GyrusImapStatus imap_status; *message = NULL; /* Trick to ignore the ALERTs */ do { g_free (*message); g_strfreev (tokens); imap_status = GYRUS_IMAP_STATUS_OK; *message = socket_readline (admin, &bytes_read); #ifdef DEBUG_PLAIN_CHANNEL g_print ("read: %s", *message); #endif tokens = g_strsplit (*message, " ", 0); if (msg_len != NULL) *msg_len = bytes_read; /* Displays a popup with the alert. As the user is not supposed to decide if displays or not the alert, we do it always */ if (g_ascii_strcasecmp (tokens [2], "[ALERT]") == 0) { gyrus_common_show_message (NULL, GTK_MESSAGE_INFO, *message + strlen ("* OK ")); } } while (g_ascii_strcasecmp (tokens [2], "[ALERT]") == 0); if (g_ascii_strcasecmp (tokens[1], "BYE") == 0) imap_status = GYRUS_IMAP_STATUS_BYE; else if (g_ascii_strcasecmp (tokens[1], "OK") == 0) imap_status = GYRUS_IMAP_STATUS_OK; else if (g_ascii_strcasecmp (tokens[1], "BAD") == 0) imap_status = GYRUS_IMAP_STATUS_BAD; else if (g_ascii_strcasecmp (tokens[1], "NO") == 0) imap_status = GYRUS_IMAP_STATUS_NO; else if (g_ascii_strcasecmp (tokens [1], "LIST") == 0) imap_status = GYRUS_IMAP_STATUS_LIST; g_strfreev (tokens); return imap_status; } gboolean gyrus_admin_write_channel (GyrusAdmin *admin, gchar *message) { GOutputStream *stream; guint msg_len; GError *error = NULL; msg_len = g_utf8_strlen (message, -1); stream = g_io_stream_get_output_stream (G_IO_STREAM (admin->priv->connection)); g_output_stream_write (stream, message, msg_len, NULL, &error); #ifdef DEBUG_PLAIN_CHANNEL g_print ("written: %s", message); #endif if (error) { g_error_free (error); return FALSE; } else { return TRUE; } } gboolean gyrus_admin_logout (GyrusAdmin *admin) { gchar *msg = g_strdup (". logout\n"); GyrusImapStatus status; gyrus_admin_write_channel (admin, msg); g_free (msg); status = gyrus_admin_listen_channel (admin, &msg, NULL); if (status == GYRUS_IMAP_STATUS_BYE) { g_io_stream_close (G_IO_STREAM (admin->priv->connection), NULL, NULL); g_object_unref (admin->priv->connection); admin->priv->connection = NULL; g_object_unref (admin->priv->tcp_socket); admin->priv->tcp_socket = NULL; g_free (admin->priv->buffer); admin->priv->buffer = NULL; g_free (msg); } return (status == GYRUS_IMAP_STATUS_BYE); } static void gyrus_admin_clean_mailbox_treeview (GtkTreeView *treeview, const gchar *title) { GtkTreeStore *store; GtkTreeViewColumn *column; g_return_if_fail (GTK_IS_TREE_VIEW (treeview)); store = GTK_TREE_STORE (gtk_tree_view_get_model (GTK_TREE_VIEW (treeview))); gtk_tree_store_clear (store); column = gtk_tree_view_get_column (GTK_TREE_VIEW (treeview), 0); gtk_tree_view_column_set_title (column, title); } void gyrus_admin_logged_out (GyrusAdmin *admin) { gtk_button_set_label (GTK_BUTTON (admin->priv->button_connect), "gtk-connect"); gyrus_admin_clean_mailbox_treeview (GTK_TREE_VIEW (admin->priv->treeview_users), _("Users")); gyrus_admin_clean_mailbox_treeview (GTK_TREE_VIEW (admin->priv->treeview_corrupt_mailbox), _("Orphaned mailboxes")); gyrus_admin_mailbox_clear_info (admin); gyrus_admin_mailbox_set_sensitive (admin, FALSE); g_signal_emit (admin, admin_signals [ACL_SELECTION_CHANGED], 0, NULL); g_signal_emit (admin, admin_signals [DISCONNECTED], 0, NULL); } /* This function was taken from camel. Copyright 2000 Ximian, Inc. (www.ximian.com) */ /** * imap_quote_string: * @str: the string to quote, which must not contain CR or LF * * Return value: an IMAP "quoted" corresponding to the string, which * the caller must free. **/ static char * imap_quote_string (const char *str) { const char *p; char *quoted, *q; int len; g_assert (strchr (str, '\r') == NULL); len = strlen (str); p = str; while ((p = strpbrk (p, "\"\\"))) { len++; p++; } quoted = q = g_malloc (len + 3); *q++ = '"'; for (p = str; *p; ) { if (strchr ("\"\\", *p)) *q++ = '\\'; *q++ = *p++; } *q++ = '"'; *q = '\0'; return quoted; } /* returns whether the conection can be established or not. */ static GyrusAdminLoginError gyrus_admin_login (GyrusAdmin *admin) { GSocketClient *socket; gchar *msg; gchar *q_password; GyrusImapStatus status; GyrusAdminLoginError error = GYRUS_ADMIN_LOGIN_OK; socket = gyrus_admin_create_socket_from_session (admin, admin->priv->session); if (!socket) return GYRUS_ADMIN_LOGIN_NO_HOST; admin->priv->tcp_socket = socket; status = gyrus_admin_listen_channel (admin, &msg, NULL); g_free (msg); g_return_val_if_fail (status == GYRUS_IMAP_STATUS_OK, FALSE); q_password = imap_quote_string (gyrus_admin_get_current_passwd (admin)); msg = g_strdup_printf (". login \"%s\" %s\n", gyrus_admin_get_current_user (admin), q_password); g_free (q_password); gyrus_admin_write_channel (admin, msg); g_free (msg); status = gyrus_admin_listen_channel (admin, &msg, NULL); g_free (msg); switch (status) { case GYRUS_IMAP_STATUS_BAD: { error = GYRUS_ADMIN_LOGIN_NO_PASS; break; } case GYRUS_IMAP_STATUS_NO: { error = GYRUS_ADMIN_LOGIN_BAD_LOGIN; break; } case GYRUS_IMAP_STATUS_OK: { error = GYRUS_ADMIN_LOGIN_OK; break; } case GYRUS_IMAP_STATUS_BYE: case GYRUS_IMAP_STATUS_LIST: break; default: break; } return error; } static void gyrus_admin_post_login (GyrusAdmin *admin) { if (strcmp (gyrus_admin_get_separator_char (admin), "auto") == 0) gyrus_admin_set_separator_char_auto (admin); g_signal_emit (admin, admin_signals [CONNECTED], 0, NULL); gyrus_admin_get_users_list (admin); } static void gyrus_admin_pre_logout (GyrusAdmin *admin) { gyrus_admin_logout (admin); gyrus_admin_logged_out (admin); } static void gyrus_admin_pre_login (GyrusAdmin *admin) { GyrusAdminLoginError error; gboolean keep_asking = TRUE; while (keep_asking) { if (admin->priv->session->passwd) { g_free (admin->priv->session->passwd); admin->priv->session->passwd = NULL; } admin->priv->session->passwd = gyrus_dialog_password_new (); if (admin->priv->session->passwd == NULL) /* user canceled */ keep_asking = FALSE; else { error = gyrus_admin_login (admin); if (error == GYRUS_ADMIN_LOGIN_NO_PASS) { gyrus_admin_logout (admin); gyrus_common_show_message (NULL, GTK_MESSAGE_ERROR, _("Unable to connect with empty " "passwords. Please introduce your " "password.")); } else if (error == GYRUS_ADMIN_LOGIN_BAD_LOGIN) { gyrus_admin_logout (admin); gyrus_common_show_message (NULL, GTK_MESSAGE_ERROR, _("Incorrect login/password")); } else if (error == GYRUS_ADMIN_LOGIN_NO_HOST) { /* do something useful here */ } else { gtk_button_set_label (GTK_BUTTON (admin->priv->button_connect), "gtk-disconnect"); gyrus_admin_post_login (admin); /* correctly logged in */ keep_asking = FALSE; return; } } } } /*** Public Methods ****/ static gboolean gyrus_admin_select_foreach_func (GtkTreeModel *model, GtkTreePath *path, GtkTreeIter *iter, gpointer data) { GyrusAdmin *admin = GYRUS_ADMIN (data); gchar *this_mailbox; gtk_tree_model_get (model, iter, COL_MAILBOX_NAME, &this_mailbox, -1); if (!strcmp (gtk_label_get_text (GTK_LABEL (admin->priv->label_mailbox_name)), this_mailbox)) { GtkTreeSelection *selection = gtk_tree_view_get_selection (admin->priv->treeview_users); gtk_tree_view_expand_to_path (admin->priv->treeview_users, path); gtk_tree_selection_select_iter (selection, iter); g_free (this_mailbox); return TRUE; } g_free (this_mailbox); return FALSE; } void gyrus_admin_select_mailbox (GyrusAdmin *admin, const gchar *mailbox) { GtkTreeModel *model = gtk_tree_view_get_model (admin->priv->treeview_users); gtk_tree_model_foreach (model, gyrus_admin_select_foreach_func, admin); } /* return the path of the currently selected mailbox in the treeview of users */ gchar * gyrus_admin_get_selected_mailbox (GyrusAdmin *admin) { GtkTreeSelection *selection; GtkTreeView *treeview; GtkTreeModel *model; GtkTreeIter iter; gchar *current_mailbox = NULL; treeview = GTK_TREE_VIEW (g_object_get_data (G_OBJECT (admin), "selected-treeview")); /* case we haven't already set it */ if (treeview == NULL) return NULL; selection = gtk_tree_view_get_selection (treeview); if (gtk_tree_selection_get_selected (selection, &model, &iter)) { gtk_tree_model_get (model, &iter, COL_MAILBOX_NAME, ¤t_mailbox, -1); } return current_mailbox; } gboolean gyrus_admin_is_connected (GyrusAdmin *admin) { g_return_val_if_fail (GYRUS_IS_ADMIN (admin), FALSE); g_return_val_if_fail (admin != NULL, FALSE); return (admin->priv->connection != NULL); } const gchar* gyrus_admin_get_current_host (GyrusAdmin *admin) { g_return_val_if_fail (GYRUS_IS_ADMIN (admin), NULL); g_return_val_if_fail (admin->priv && admin->priv->session, NULL); return admin->priv->session->host; } const gchar* gyrus_admin_get_current_user (GyrusAdmin *admin) { g_return_val_if_fail (GYRUS_IS_ADMIN (admin), NULL); g_return_val_if_fail (admin->priv && admin->priv->session, NULL); return admin->priv->session->user; } gint gyrus_admin_get_current_port (GyrusAdmin *admin) { g_return_val_if_fail (GYRUS_IS_ADMIN (admin), -1); g_return_val_if_fail (admin->priv && admin->priv->session, -1); return admin->priv->session->port; } const gchar* gyrus_admin_get_current_session_name (GyrusAdmin *admin) { g_return_val_if_fail (GYRUS_IS_ADMIN (admin), NULL); g_return_val_if_fail (admin->priv && admin->priv->session, NULL); return admin->priv->session->name; } const gchar* gyrus_admin_get_current_passwd (GyrusAdmin *admin) { g_return_val_if_fail (GYRUS_IS_ADMIN (admin), NULL); g_return_val_if_fail (admin->priv && admin->priv->session, NULL); return admin->priv->session->passwd; } const gchar* gyrus_admin_get_separator_char (GyrusAdmin *admin) { g_return_val_if_fail (GYRUS_IS_ADMIN (admin), NULL); g_return_val_if_fail (admin->priv && admin->priv->session, NULL); return admin->priv->session->sep_char; } gboolean gyrus_admin_has_current_acl_access (GyrusAdmin *admin) { gboolean is_visible; g_object_get (G_OBJECT (admin->priv->label_acl), "visible", &is_visible, NULL); return !is_visible; } static void gyrus_admin_load_session_info (GyrusAdmin *admin, GyrusSession *session) { gchar *port; g_return_if_fail (GYRUS_IS_ADMIN (admin)); if (session == NULL) return; port = g_strdup_printf ("%d", session->port); if (!admin->priv->session) { admin->priv->session = g_new0 (GyrusSession, 1); } else { g_free (admin->priv->session->host); g_free (admin->priv->session->user); g_free (admin->priv->session->name); } /** store in the private structure GyrusSession **/ admin->priv->session->host = g_strdup (session->host); admin->priv->session->user = g_strdup (session->user); admin->priv->session->name = g_strdup (session->name); admin->priv->session->port = session->port; admin->priv->session->sep_char = g_strdup (session->sep_char); /* set the interface */ gtk_label_set_label (GTK_LABEL (admin->priv->label_host), session->host); gtk_label_set_label (GTK_LABEL (admin->priv->label_port), port); gtk_label_set_label (GTK_LABEL (admin->priv->label_user), session->user); g_free (port); } void gyrus_admin_refresh_users_list (GyrusAdmin *admin) { gyrus_admin_get_users_list (admin); } GtkTreeView * gyrus_admin_get_users_treeview (GyrusAdmin *admin) { g_return_val_if_fail (GYRUS_IS_ADMIN (admin), NULL); return g_object_ref (admin->priv->treeview_users); } GtkWidget * gyrus_admin_new (GyrusSession *session) { GyrusAdmin *admin; admin = g_object_new (GYRUS_TYPE_ADMIN, NULL); gyrus_admin_load_session_info (GYRUS_ADMIN (admin), session); /* gtk_widget_grab_focus (GTK_WIDGET (admin->priv->entry_pass));*/ return GTK_WIDGET (admin); } /** callbacks ***/ void gyrus_admin_on_button_connect_clicked (GtkButton *button, gpointer user_data) { GyrusAdmin *admin; g_return_if_fail (GYRUS_ADMIN (user_data)); admin = GYRUS_ADMIN (user_data); if (gyrus_admin_is_connected (admin)) { gyrus_admin_pre_logout (admin); } else { gyrus_admin_pre_login (admin); } } /* void gyrus_admin_on_entry_pass_activate (GtkEntry *entry, gpointer user_data) { GtkButton *button = GTK_BUTTON (user_data); gtk_button_clicked (button); } */ void gyrus_admin_on_acl_selection_changed (GtkTreeSelection *selection, gpointer user_data) { GyrusAdmin *admin = GYRUS_ADMIN (user_data); GtkTreeModel *model; GtkTreeIter iter; g_signal_emit (admin, admin_signals [ACL_SELECTION_CHANGED], 0, gtk_tree_selection_get_selected (selection, &model, &iter), NULL); } void gyrus_admin_on_users_selection_changed (GtkTreeSelection *selection, gpointer user_data) { GtkTreeIter iter; GtkTreeModel *model; gchar *mailbox_path; gchar **tokens; gboolean is_selected; GyrusAdmin *admin = GYRUS_ADMIN (user_data); if (!gyrus_admin_is_connected (admin)) return; is_selected = gtk_tree_selection_get_selected (selection, &model, &iter); if (is_selected) { gtk_tree_model_get (model, &iter, COL_MAILBOX_NAME, &mailbox_path, -1); tokens = g_strsplit (mailbox_path, gyrus_admin_get_separator_char (admin), 3); gyrus_admin_mailbox_show_info (admin, tokens[1], mailbox_path); g_strfreev (tokens); g_free (mailbox_path); gyrus_admin_mailbox_set_sensitive (admin, TRUE); } else { gyrus_admin_mailbox_clear_info (admin); gyrus_admin_mailbox_set_sensitive (admin, FALSE); } g_signal_emit (admin, admin_signals [MAILBOX_SELECTION_CHANGED], 0, is_selected, NULL); } /*************************************** + On editing permissions. * * */ void gyrus_admin_on_renderer_toggled (GtkCellRendererToggle *renderer, gchar *path, gpointer user_data) { GyrusAdmin *admin; GyrusColumnAcl col; GtkListStore *store; GtkTreeIter iter; gboolean has_permission; GtkTreeViewColumn *column; const gchar *permissions = "lrswipcda"; gchar *user; gchar *perm; gchar *mailbox; gchar *error; g_return_if_fail (GTK_IS_TREE_VIEW_COLUMN (user_data)); column = GTK_TREE_VIEW_COLUMN (user_data); admin = g_object_get_data (G_OBJECT (column), "parent-admin"); col = GPOINTER_TO_INT ( g_object_get_data (G_OBJECT (column), "permission")); store = GTK_LIST_STORE ( gtk_tree_view_get_model (admin->priv->treeview_acl)); gtk_tree_model_get_iter_from_string (GTK_TREE_MODEL (store), &iter, path); gtk_tree_model_get (GTK_TREE_MODEL (store), &iter, COL_ACL_IDENTIFIER, &user, col, &has_permission, -1); perm = g_strdup_printf ("%c%c", (has_permission)? '-' : '+', permissions[col - 1]); mailbox = g_strdup (gtk_label_get_text (GTK_LABEL (admin->priv->label_mailbox_name))); if (gyrus_admin_acl_set_entry (admin, mailbox, user, perm, &error)) { gtk_list_store_set (store, &iter, col, !has_permission, -1); } else { gchar *display_error = g_strconcat (_("Could not change permission. Server error: "), error, NULL); gyrus_common_show_message (NULL, GTK_MESSAGE_ERROR, display_error); g_free (display_error); g_free (error); } g_free (user); g_free (perm); g_free (mailbox); } static gboolean gyrus_admin_acl_eliminate_model_entry (GtkTreeModel *model, GtkTreePath *path, GtkTreeIter *iter, gpointer data) { gchar *target_identifier = (gchar *)data; gchar *this_identifier; gtk_tree_model_get (model, iter, COL_ACL_IDENTIFIER, &this_identifier, -1); if (strcmp (this_identifier, target_identifier) == 0) { gtk_list_store_remove (GTK_LIST_STORE (model), iter); g_free (this_identifier); return TRUE; } g_free (this_identifier); return FALSE; } static gboolean gyrus_admin_ask_user_if_overwrite (GyrusAdmin *admin, gchar *entry_name) { GtkWidget *dialog; int result; dialog = gtk_message_dialog_new (NULL, GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_QUESTION, GTK_BUTTONS_YES_NO, _("An entry called '%s' already exists. Overwrite it?"), entry_name); result = gtk_dialog_run (GTK_DIALOG (dialog)); gtk_widget_destroy (dialog); return (result == GTK_RESPONSE_YES); } void gyrus_admin_on_acl_identifier_edited (GtkCellRendererText *cellrenderertext, gchar *path_string, gchar *newname, gpointer user_data) { GtkTreeIter iter; GyrusImapAclEntry *entry; gboolean duplicated = FALSE; GtkTreeModel *model; gchar *oldname; gchar *error; gchar *mailbox; GList *acl, *l_iter; gchar *rights; GyrusAdmin *admin = GYRUS_ADMIN (user_data); model = gtk_tree_view_get_model (admin->priv->treeview_acl); if (!gtk_tree_model_get_iter_from_string (model, &iter, path_string)) { return; } gtk_tree_model_get (model, &iter, COL_ACL_IDENTIFIER, &oldname, -1); /* If oldname == newname, there is nothing to rename */ if (strcmp (oldname, newname) == 0) { g_free (oldname); return; } mailbox = g_strdup (gtk_label_get_text (GTK_LABEL (admin->priv->label_mailbox_name))); acl = gyrus_admin_acl_get (admin, mailbox, NULL); /* check it the new name already exists. */ l_iter = acl; while (l_iter != NULL && !duplicated) { entry = GYRUS_IMAP_ACL_ENTRY (l_iter->data); if (strcmp (entry->identifier, newname) == 0) duplicated = TRUE; l_iter = g_list_next (l_iter); } /* Obtain the rights of the entry to be renamed */ rights = NULL; l_iter = acl; while (l_iter != NULL && rights == NULL) { entry = GYRUS_IMAP_ACL_ENTRY (l_iter->data); if (strcmp (entry->identifier, oldname) == 0) rights = g_strdup (entry->rights); l_iter = g_list_next (l_iter); } if (!duplicated) { if (!gyrus_admin_acl_set_entry (admin, mailbox, newname, rights, &error)) { g_warning ("%s", error); g_free (error); } else if (!gyrus_admin_acl_delete_entry (admin, mailbox, oldname, &error)) { g_warning ("%s", error); g_free (error); } else { gtk_list_store_set (GTK_LIST_STORE (model), &iter, COL_ACL_IDENTIFIER, newname, -1); } } else if (gyrus_admin_ask_user_if_overwrite (admin, newname)) { /* DELETE EXISTING ONE */ if (!gyrus_admin_acl_delete_entry (admin, mailbox, newname, &error)) { g_warning ("%s", error); g_free (error); } else if (!gyrus_admin_acl_set_entry (admin, mailbox, newname, rights, &error)) { g_warning ("%s", error); g_free (error); } else if (!gyrus_admin_acl_delete_entry (admin, mailbox, oldname, &error)) { g_warning ("%s", error); g_free (error); } else { /* All OK! */ gtk_tree_model_foreach (model, gyrus_admin_acl_eliminate_model_entry, newname); gtk_list_store_set (GTK_LIST_STORE (model), &iter, COL_ACL_IDENTIFIER, newname, -1); } } g_free (oldname); g_free (mailbox); g_free (rights); gyrus_admin_acl_list_free (acl); } /*** Following code intents to show the flexibility of GyrusAdmin objects. ***/ /* int main (int argc, char *argv[]) { GtkWidget *admin; GtkWidget *window; gtk_init (&argc, &argv); gnome_program_init ("gyrus", VERSION, LIBGNOMEUI_MODULE, argc, argv, GNOME_PARAM_APP_DATADIR, GYRUS_DATA_DIR, NULL); admin = gyrus_admin_new (); window = gtk_window_new (GTK_WINDOW_TOPLEVEL); gtk_container_add (GTK_CONTAINER (window), admin); gtk_widget_show (window); gtk_main (); return 0; } */ gyrus-0.4.2/src/gyrus-admin.h000066400000000000000000000127021426522072200160710ustar00rootroot00000000000000/* gyrus-admin.h GYRUS -- GNOME Cyrus Administrator. Administrator Object. Copyright (C) 2004-2005 Claudio Saavedra V. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, see . */ #ifndef GYRUS_ADMIN_H #define GYRUS_ADMIN_H #include #include "gyrus-session.h" #define GYRUS_TYPE_ADMIN (gyrus_admin_get_type ()) #define GYRUS_ADMIN(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GYRUS_TYPE_ADMIN, GyrusAdmin)) #define GYRUS_ADMIN_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GYRUS_TYPE_ADMIN, GyrusAdminClass)) #define GYRUS_IS_ADMIN(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GYRUS_TYPE_ADMIN)) #define GYRUS_IS_ADMIN_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GYRUS_TYPE_ADMIN)) #define GYRUS_ADMIN_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GYRUS_TYPE_ADMIN, GyrusAdminClass)) typedef struct _GyrusAdminPrivate GyrusAdminPrivate; typedef struct _GyrusAdmin GyrusAdmin; typedef struct _GyrusAdminClass GyrusAdminClass; /*** Gyrus Main Application Data ***/ struct _GyrusAdmin { GtkVBox vbox; GyrusAdminPrivate *priv; }; /*** Gyrus Main Application Class Data ***/ /*** derived from GtkVboxClass ***/ struct _GyrusAdminClass { GtkVBoxClass vbox_class; }; typedef enum { COL_MAILBOX_ICON, COL_MAILBOX_BASENAME, COL_MAILBOX_NAME, COL_MAILBOX_NUMBER } GyrusColumnMailbox; typedef enum { COL_ACL_IDENTIFIER, COL_ACL_RIGHT_L, COL_ACL_RIGHT_R, COL_ACL_RIGHT_S, COL_ACL_RIGHT_W, COL_ACL_RIGHT_I, COL_ACL_RIGHT_P, COL_ACL_RIGHT_C, COL_ACL_RIGHT_D, COL_ACL_RIGHT_A, COL_ACL_MODIFIED, COL_ACL_NUMBER } GyrusColumnAcl; typedef enum { GYRUS_IMAP_STATUS_BAD, GYRUS_IMAP_STATUS_BYE, GYRUS_IMAP_STATUS_NO, GYRUS_IMAP_STATUS_OK, GYRUS_IMAP_STATUS_LIST } GyrusImapStatus; typedef enum { GYRUS_ADMIN_LOGIN_NO_PASS, /* it is supposed this never happens */ GYRUS_ADMIN_LOGIN_BAD_LOGIN, /* wrong user or password */ GYRUS_ADMIN_LOGIN_NO_HOST, /* Problems when connecting to host */ GYRUS_ADMIN_LOGIN_OK /* logged in */ } GyrusAdminLoginError; GType gyrus_admin_get_type (void); /** Creates a new instance of #GyrusAdmin. This admin will be set to work with the #GyrusSession that you must provide as argument. @session: A previously initialized #GyrusSession. Returns: A new #GyrusAdmin. */ GtkWidget * gyrus_admin_new (GyrusSession *session); /** Gets the @host where the #GyrusAdmin is connected. */ const gchar *gyrus_admin_get_current_host (GyrusAdmin *admin); /** Gets the @user that is connected in #GyrusAdmin. */ const gchar *gyrus_admin_get_current_user (GyrusAdmin *admin); /** Gets the name of the session. */ const gchar *gyrus_admin_get_current_session_name (GyrusAdmin *admin); /** Gets the password that the #GyrusAdmin is using to connect to the server. */ const gchar *gyrus_admin_get_current_passwd (GyrusAdmin *admin); /** Gets the port where the #GyrusAdmin is connected. */ int gyrus_admin_get_current_port (GyrusAdmin *admin); /** Gets the separator character of the administrator of the server. */ const gchar* gyrus_admin_get_separator_char (GyrusAdmin *admin); /** Returns whether @admin is or not connected to the server. */ gboolean gyrus_admin_is_connected (GyrusAdmin *admin); /** * Returns TRUE if the user that is connected has access to the * ACL of currently selected mailbox. If there is no mailbox * selected, then returns FALSE. */ gboolean gyrus_admin_has_current_acl_access (GyrusAdmin *admin); void gyrus_admin_logged_out (GyrusAdmin *admin); void gyrus_admin_refresh_users_list (GyrusAdmin *admin); gchar *gyrus_admin_get_selected_mailbox (GyrusAdmin *admin); void gyrus_admin_select_mailbox (GyrusAdmin *admin, const gchar *mailbox); /** Listen the channel of @admin and allocates the message in @message. If @msg_len is not NULL, will store there the size of the allocated message. @admin: A #GyrusAdmin object. @message: Allocated message. @msg_len: If not NULL, the size of the allocated message. Returns: The status of the connection. */ GyrusImapStatus gyrus_admin_listen_channel (GyrusAdmin *admin, gchar **message, gint *msg_len); /** Write @message in the channel of @admin. @message should be a valid IMAP command, following the RFC. To read the response of the server, use gyrus_admin_listen_channel (). Returns: %TRUE if successful, %FALSE otherwise */ gboolean gyrus_admin_write_channel (GyrusAdmin *admin, gchar *message); /** Parses a LIST server message and get the mailbox name from it. @msg: The message returned by the server. Returns: a newly allocated mailbox name. */ gchar * gyrus_admin_get_mailbox_from_list_message (gchar *msg); /** Returns the treeview with the mailboxes. You need to unref it once you are done with it. */ GtkTreeView * gyrus_admin_get_users_treeview (GyrusAdmin *admin); #endif /* GYRUS_ADMIN_H */ gyrus-0.4.2/src/gyrus-common.c000066400000000000000000000046511426522072200162700ustar00rootroot00000000000000/* gyrus-common.c - Common modules. GYRUS -- GNOME Cyrus Administrator. Copyright (C) 2003-2004 Claudio Saavedra V. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, see . */ #include #include #include #include "glib/gi18n.h" #include "gyrus-common.h" void gyrus_common_show_message (GtkWindow *parent, GtkMessageType type, const gchar* message) { GtkWidget *dialog; dialog = gtk_message_dialog_new (parent, GTK_DIALOG_MODAL, type, GTK_BUTTONS_OK, "%s", message); gtk_dialog_run (GTK_DIALOG (dialog)); gtk_widget_destroy (dialog); } gboolean gyrus_gtk_entry_has_text (GtkEntry *entry) { const gchar *text; const gchar *start; gboolean has_text; g_return_val_if_fail (GTK_IS_ENTRY (entry), FALSE); text = gtk_entry_get_text (entry); start = text; while (*start != '\0' && g_ascii_isspace (*start)) start ++; has_text = (start && start[0]); return (has_text); } gchar * gyrus_dialog_password_new (void) { GtkWidget *dialog; GtkWidget *entry_password; gchar *password = NULL; gint result; GtkBuilder *builder; builder = gtk_builder_new (); gtk_builder_add_from_resource (builder, "/org/gnome/gyrus/password.xml", NULL); dialog = GTK_WIDGET (gtk_builder_get_object (builder, "dialog_password")); entry_password = GTK_WIDGET (gtk_builder_get_object (builder, "entry_password")); result = gtk_dialog_run (GTK_DIALOG (dialog)); switch (result) { case GTK_RESPONSE_OK: password = g_strdup (gtk_entry_get_text (GTK_ENTRY (entry_password))); break; default: password = NULL; break; } gtk_widget_destroy (dialog); g_object_unref (builder); return password; } gboolean gyrus_common_str_is_ascii (const gchar *str) { while (*str) { if ((guchar)*str >= 128) return FALSE; str++; } return TRUE; } gyrus-0.4.2/src/gyrus-common.h000066400000000000000000000030241426522072200162660ustar00rootroot00000000000000/* gyrus-common.h - Common modules. GYRUS -- GNOME Cyrus Administrator. Copyright (C) 2003-2004 Alejandro Valdes J. Copyright (C) 2003-2004 Jorge Bustos B. Copyright (C) 2003-2004 Claudio Saavedra V. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, see . */ #ifndef GYRUS_COMMON_H #define GYRUS_COMMON_H void gyrus_common_show_message (GtkWindow *parent, GtkMessageType type, const gchar* message); /** Returns true if the given #GtkEntry has text. It has special care with text composed only of spaces. */ gboolean gyrus_gtk_entry_has_text (GtkEntry *entry); /** Asks the user for a password. Returns a newly allocated string with the password, or NULL if the user cancel the login. */ gchar *gyrus_dialog_password_new (void); /** Returns TRUE if @str is a valid ASCII string. A valid ASCII string is composed of chars under the 128 value. */ gboolean gyrus_common_str_is_ascii (const gchar *str); #endif /* GYRUS_COMMON_H */ gyrus-0.4.2/src/gyrus-connection.c000066400000000000000000000425621426522072200171420ustar00rootroot00000000000000/* gyrus-connection.c - Abstract connection object with TLS support GYRUS -- GNOME Cyrus Administrator. Copyright (C) 2005 Mario Fuentes This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, see . */ #include #include #ifdef HAVE_GNUTLS #include #endif #include #include "gyrus-connection.h" #include "gyrus-marshal.h" #define COMMAND_ID "GyrusCommand" #define MAX_BUFFER_SIZE 8192 #define GYRUS_CONNECTION_GET_PRIVATE(object) \ (G_TYPE_INSTANCE_GET_PRIVATE ((object), GYRUS_TYPE_CONNECTION, GyrusConnectionPrivate)) G_DEFINE_TYPE (GyrusConnection, gyrus_connection, G_TYPE_OBJECT) struct _GyrusConnectionPrivate { GConn *gconn; GInetAddrNewAsyncID addr_id; #ifdef HAVE_GNUTLS gnutls_session *session; /* TRUE while TLS is handshaking */ gboolean handshaking; #endif /* Data received */ gchar *data; gsize data_length; /* Buffer received */ GString *buffer; /* Data sending on the data_received Callback */ GString *ubuffer; /* End of data indicator */ gboolean eod; /* Request string */ GString *command; /* Object properties */ gchar *host; gint port; gboolean connected; gboolean tls; }; enum { PROP_0, PROP_HOST, PROP_PORT, PROP_CONNECTED, PROP_TLS }; enum { DATA_RECEIVED, CONNECT_RESPONSE, CONNECTION_CLOSE, LAST_SIGNAL }; /* Private API Prototypes */ /* Fields */ static guint signals[LAST_SIGNAL] = { 0 }; /*** Private API ***/ static void gyrus_connection_receive (GyrusConnection *conn) { g_return_if_fail (GYRUS_IS_CONNECTION (conn)); gnet_conn_read (conn->priv->gconn); } /* This callback is called for Decode data. * buffer: a buffer to copy the first "size" bytes. */ #ifdef HAVE_GNUTLS static gssize gyrus_connection_tls_read (GyrusConnection *conn, gchar *buffer, gsize size) { g_return_val_if_fail (GYRUS_IS_CONNECTION (conn), 0); /* GnuTLS is handshaking for the secure connection */ if (conn->priv->handshaking) { gssize bytes; g_io_channel_read_chars (conn->priv->gconn->iochannel, buffer, size, &bytes, NULL); return bytes; } /* GnuTLS requests the buffer in blocks. */ /* EOF */ if (conn->priv->data_length == 0) return 0; g_print ("Decoding data, %d bytes of Encoded data...\n", conn->priv->data_length); gsize len = (size > conn->priv->data_length) ? conn->priv->data_length : size; /* Error */ if (len == 0) { g_print ("LENGTH 0!!!\n"); return -1; } /*g_memmove*/ memcpy (buffer, conn->priv->data, len); /* If the block request is less than the real buffer, then remove * all bytes already readed. */ if (len < conn->priv->data_length) { conn->priv->data_length -= len; gchar *tmp_buf = g_memdup (conn->priv->data + len, conn->priv->data_length); g_free (conn->priv->data); conn->priv->data = tmp_buf; } else if (len == conn->priv->data_length) { conn->priv->data_length = 0; g_free (conn->priv->data); conn->priv->data = NULL; } g_print ("Decoded %d bytes...\n", len); return len; } /* This callback is called to send Encoded data. */ gssize gyrus_connection_tls_write (GyrusConnection *conn, const gchar *buffer, gsize size) { gchar *buf; g_return_val_if_fail (GYRUS_IS_CONNECTION (conn), 0); if (conn->priv->handshaking) { gssize bytes; g_io_channel_write_chars (conn->priv->gconn->iochannel, buffer, size, &bytes, NULL); return bytes; } /* This copy is only for non warnings, because gnet_conn_write * receive a char * and buffer is const char *. */ buf = (gchar *) g_memdup (buffer, size); gnet_conn_write (conn->priv->gconn, buf, size); g_free (buf); return size; } #endif /* Writes in conn->priv->ubuffer the data to send to the application, without the COMMAND_ID prefix. */ static void gyrus_connection_prepare_ubuffer (GyrusConnection *conn) { gchar *buf; GString *line; g_return_if_fail (GYRUS_IS_CONNECTION (conn)); g_return_if_fail (conn->priv->buffer != NULL); buf = conn->priv->buffer->str; line = g_string_new (""); g_string_set_size (conn->priv->ubuffer, 0); g_print ("pure buffer:\n%s\n", buf); while (*buf) { g_string_append_c (line, *buf); if (*buf == '\n') { /* End of buffer, check for command id */ if (!(*(buf + 1))) { gchar **token = g_strsplit (line->str, " ", 0); /* End of Data */ if (g_ascii_strcasecmp (token[0], COMMAND_ID) == 0) { gint jump = strlen (COMMAND_ID) + 1; gchar *lf = g_strdup (line->str + jump); conn->priv->eod = TRUE; g_string_assign (line, lf); g_free (lf); } g_strfreev (token); } g_string_append (conn->priv->ubuffer, line->str); g_string_assign (line, ""); } buf++; } /* Save non-complete line */ if (line->len > 0) g_string_assign (conn->priv->buffer, line->str); else g_string_assign (conn->priv->buffer, ""); g_string_free (line, TRUE); } static void gyrus_connection_conn_cb (GConn *gconn, GConnEvent *event, gpointer data) { GyrusConnection *conn; g_return_if_fail (GYRUS_IS_CONNECTION (data)); conn = GYRUS_CONNECTION (data); switch (event->type) { case GNET_CONN_ERROR: { g_print ("GyrusConnection:: GNET_CONN_ERROR\n"); break; } case GNET_CONN_CONNECT: { #ifdef HAVE_GNUTLS if (conn->priv->tls) { gint priority [] = {GNUTLS_KX_RSA, 0}; gnutls_certificate_credentials credentials; gint error; if (conn->priv->session) gnutls_deinit (*(conn->priv->session)); conn->priv->session = g_malloc0 (sizeof (gnutls_session)); /* Initialize a GnuTLS session */ gnutls_init (conn->priv->session, GNUTLS_CLIENT); /* Setup user pointer to pass in callback, like gpointer data */ gnutls_transport_set_ptr (*(conn->priv->session), conn); /* Set the push and pull functions, called when a event * is occured, like g_signal_connect. */ gnutls_transport_set_pull_function (*(conn->priv->session), (gnutls_pull_func) gyrus_connection_tls_read); gnutls_transport_set_push_function (*(conn->priv->session), (gnutls_push_func) gyrus_connection_tls_write); /* Priority */ gnutls_set_default_priority (*(conn->priv->session)); /* Protocol priority */ gnutls_kx_set_priority (*(conn->priv->session), priority); /* Create credentials */ gnutls_certificate_allocate_credentials (&credentials); /*gnutls_certificate_set_x509_trust_file (credentials, _GYRUS_CAFILE, GNUTLS_X509_FMT_PEM); */ /* Set the credentials to the session */ gnutls_credentials_set (*(conn->priv->session), GNUTLS_CRD_CERTIFICATE, credentials); if ((error = gnutls_handshake (*(conn->priv->session))) < 0) { /* TODO: manage the error */ g_critical ("GyrusConnection::connect: %s\n", gnutls_alert_get_name ( gnutls_alert_get (*(conn->priv->session)))); g_signal_emit (conn, signals[CONNECT_RESPONSE], 0, GYRUS_CONN_FAILED); return; } else { conn->priv->handshaking = FALSE; } } #endif conn->priv->connected = TRUE; g_signal_emit (conn, signals[CONNECT_RESPONSE], 0, GYRUS_CONN_DONE); gyrus_connection_receive (conn); break; } case GNET_CONN_CLOSE: { g_signal_emit (conn, signals[CONNECTION_CLOSE], 0, NULL); break; } case GNET_CONN_TIMEOUT: { break; } case GNET_CONN_READ: { conn->priv->data_length = event->length; #ifdef HAVE_GNUTLS /* If the connection uses a TLS session, then decode * received data. */ if (conn->priv->tls) { conn->priv->data = g_memdup (event->buffer, event->length); g_print ("size: %i\n", event->length); /* A dynamic buffer */ gchar *buf = (gchar *) g_malloc0 (MAX_BUFFER_SIZE); gssize len; len = gnutls_record_recv (*(conn->priv->session), buf, MAX_BUFFER_SIZE); if ((len == GNUTLS_E_AGAIN) || (len == GNUTLS_E_INTERRUPTED)) { /* The gnutls decoder needs more data to finish decoding. */ gyrus_connection_receive (conn); return; } /* g_free (conn->priv->data); */ if (len < 0) { g_debug ("GnuTLS error"); /* TODO: manage GnuTLS fatal errors */ if (gnutls_error_is_fatal (len) == 1) { g_error ("GnuTLS fatal error: %s\n", gnutls_strerror (len)); } conn->priv->data = NULL; } conn->priv->data = g_strndup (buf, len); conn->priv->data_length = len; g_free (buf); } else #endif { conn->priv->data = g_strndup (event->buffer, event->length); } if (conn->priv->data != NULL) { /* Append new data to the buffer */ g_string_append (conn->priv->buffer, conn->priv->data); g_free (conn->priv->data); conn->priv->data = NULL; gyrus_connection_prepare_ubuffer (conn); g_signal_emit (conn, signals[DATA_RECEIVED], 0, conn->priv->ubuffer->str, conn->priv->eod); } if (!conn->priv->eod) gyrus_connection_receive (conn); else { conn->priv->eod = FALSE; g_string_set_size (conn->priv->buffer, 0); g_string_set_size (conn->priv->ubuffer, 0); } break; } case GNET_CONN_WRITE: { gyrus_connection_receive (conn); break; } /* */ case GNET_CONN_READABLE: { break; } case GNET_CONN_WRITABLE: { break; } } } static void gyrus_connection_inetaddr_cb (GInetAddr *inetaddr, gpointer data) { GyrusConnection *conn; g_return_if_fail (GYRUS_IS_CONNECTION (data)); conn = GYRUS_CONNECTION (data); if (inetaddr == NULL) { g_signal_emit (conn, signals[CONNECT_RESPONSE], 0, GYRUS_CONN_FAILED); return; } conn->priv->gconn = gnet_conn_new_inetaddr (inetaddr, gyrus_connection_conn_cb, data); gnet_conn_set_watch_error (conn->priv->gconn, TRUE); /*gnet_conn_set_watch_readable (conn->priv->gconn, TRUE);*/ gnet_conn_connect (conn->priv->gconn); } static void gyrus_connection_class_finalize (GObject *obj) { GyrusConnection *conn; g_return_if_fail (GYRUS_IS_CONNECTION (obj)); conn = GYRUS_CONNECTION (obj); } static void gyrus_connection_set_property (GObject *object, guint property_id, const GValue *value, GParamSpec *pspec) { GyrusConnectionPrivate *priv = GYRUS_CONNECTION_GET_PRIVATE (object); switch (property_id) { case PROP_HOST: { g_free (priv->host); priv->host = g_value_dup_string (value); break; } case PROP_PORT: { priv->port = g_value_get_int (value); break; } case PROP_CONNECTED: { priv->connected = g_value_get_boolean (value); break; } case PROP_TLS: { priv->tls = g_value_get_boolean (value); break; } default: { G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec); break; } } } static void gyrus_connection_get_property (GObject *object, guint property_id, GValue *value, GParamSpec *pspec) { GyrusConnection *conn = GYRUS_CONNECTION (object); switch (property_id) { case PROP_HOST: { g_value_set_string (value, conn->priv->host); break; } case PROP_PORT: { g_value_set_int (value, conn->priv->port); break; } case PROP_CONNECTED: { g_value_set_boolean (value, conn->priv->connected); break; } case PROP_TLS: { g_value_set_boolean (value, conn->priv->tls); break; } default: { G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec); break; } } } static void gyrus_connection_class_init (GyrusConnectionClass *klass) { GObjectClass *gobject_class = G_OBJECT_CLASS (klass); GType data_received_param_types[2]; GType connect_response_param_types[1]; gyrus_connection_parent_class = g_type_class_peek_parent (klass); gobject_class->set_property = gyrus_connection_set_property; gobject_class->get_property = gyrus_connection_get_property; gobject_class->finalize = gyrus_connection_class_finalize; /* Properties */ g_object_class_install_property (gobject_class, PROP_HOST, g_param_spec_string ("host", "Host Name", "Host of the server", "127.0.0.1", G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY)); g_object_class_install_property (gobject_class, PROP_PORT, g_param_spec_int ("port", "Port number", "Port of the server", 0, 65535, 143, G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY)); g_object_class_install_property (gobject_class, PROP_CONNECTED, g_param_spec_boolean ("connected", "Connection status", "Is connected?", FALSE, G_PARAM_READWRITE)); g_object_class_install_property (gobject_class, PROP_TLS, g_param_spec_boolean ("tls", "TLS Connection", "Is using a secure connection", FALSE, G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY)); /* Signals */ data_received_param_types[0] = G_TYPE_STRING; data_received_param_types[1] = G_TYPE_BOOLEAN; signals[DATA_RECEIVED] = g_signal_newv ("data_received", G_TYPE_FROM_CLASS (klass), G_SIGNAL_RUN_LAST | G_SIGNAL_NO_RECURSE | G_SIGNAL_NO_HOOKS, NULL, NULL, NULL, gyrus_VOID__STRING_BOOLEAN, /*g_cclosure_marshal_VOID__STRING,*/ G_TYPE_NONE, 2, data_received_param_types); connect_response_param_types[0] = G_TYPE_INT; signals[CONNECT_RESPONSE] = g_signal_newv ("connect_response", G_TYPE_FROM_CLASS (klass), G_SIGNAL_RUN_LAST | G_SIGNAL_NO_RECURSE | G_SIGNAL_NO_HOOKS, NULL, NULL, NULL, g_cclosure_marshal_VOID__INT, G_TYPE_NONE, 1, connect_response_param_types); signals[CONNECTION_CLOSE] = g_signal_newv ("connection_close", G_TYPE_FROM_CLASS (klass), G_SIGNAL_RUN_LAST | G_SIGNAL_NO_RECURSE | G_SIGNAL_NO_HOOKS, NULL, NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0, NULL); g_type_class_add_private (klass, sizeof (GyrusConnectionPrivate)); } static void gyrus_connection_init (GyrusConnection *conn) { conn->priv = GYRUS_CONNECTION_GET_PRIVATE (conn); conn->priv->gconn = NULL; #ifdef HAVE_GNUTLS conn->priv->session = NULL; conn->priv->handshaking = TRUE; #endif conn->priv->data = NULL; /* Crate the buffer for the request results */ conn->priv->buffer = g_string_new (""); conn->priv->ubuffer = g_string_new (""); conn->priv->command = NULL; conn->priv->eod = FALSE; } /*** Public API ***/ GyrusConnection * gyrus_connection_new (gchar *host, gint port, gboolean use_tls) { GyrusConnection *conn; conn = g_object_new (GYRUS_TYPE_CONNECTION, "host", host, "port", port, "tls", use_tls, NULL); return conn; } void gyrus_connection_destroy (GyrusConnection *conn) { /* TODO: free all memory allocated and close connection if it's open */ } void gyrus_connection_connect (GyrusConnection *conn) { #ifdef HAVE_GNUTLS static gboolean gnutls_initialized = FALSE; #endif g_return_if_fail (GYRUS_IS_CONNECTION (conn)); if (gyrus_connection_get_connected (conn) == TRUE) return; #ifdef HAVE_GNUTLS if (!gnutls_initialized) { gnutls_global_init (); gnutls_initialized = TRUE; } #endif conn->priv->addr_id = gnet_inetaddr_new_async ( gyrus_connection_get_host (conn), gyrus_connection_get_port (conn), gyrus_connection_inetaddr_cb, conn); } void gyrus_connection_disconnect (GyrusConnection *conn) { g_return_if_fail (GYRUS_IS_CONNECTION (conn)); g_return_if_fail (gyrus_connection_get_connected (conn)); gnet_conn_disconnect (conn->priv->gconn); } void gyrus_connection_send (GyrusConnection *conn, const gchar *buffer) { GString *cmd; g_return_if_fail (GYRUS_IS_CONNECTION (conn)); g_return_if_fail (buffer != NULL); g_return_if_fail (gyrus_connection_get_connected (conn)); /* Clean the buffer for save the answer */ g_string_set_size (conn->priv->buffer, 0); /* Prepare the request string */ cmd = conn->priv->command = g_string_new (""); g_string_printf (cmd, "%s %s\n", COMMAND_ID, buffer); g_print ("Sending command <%s> %d bytes\n", cmd->str, cmd->len); #ifdef HAVE_GNUTLS if (conn->priv->tls) gnutls_record_send (*(conn->priv->session), cmd->str, cmd->len); else #endif gnet_conn_write (conn->priv->gconn, cmd->str, cmd->len); } gboolean gyrus_connection_get_connected (GyrusConnection *conn) { g_return_val_if_fail (GYRUS_IS_CONNECTION (conn), FALSE); return conn->priv->connected; } G_CONST_RETURN gchar * gyrus_connection_get_host (GyrusConnection *conn) { g_return_val_if_fail (GYRUS_IS_CONNECTION (conn), NULL); return conn->priv->host; } gint gyrus_connection_get_port (GyrusConnection *conn) { g_return_val_if_fail (GYRUS_IS_CONNECTION (conn), -1); return conn->priv->port; } gyrus-0.4.2/src/gyrus-connection.h000066400000000000000000000061631426522072200171440ustar00rootroot00000000000000/* gyrus-connection.h - Abstract connection object with TLS support GYRUS -- GNOME Cyrus Administrator. Copyright (C) 2005 Mario Fuentes This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, see . */ #ifndef GYRUS_CONNECTION_H #define GYRUS_CONNECTION_H #include #ifdef __cplusplus extern "C" { #endif /* __cplusplus */ #define GYRUS_TYPE_CONNECTION (gyrus_connection_get_type ()) #define GYRUS_CONNECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GYRUS_TYPE_CONNECTION, GyrusConnection)) #define GYRUS_CONNECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GYRUS_TYPE_CONNECTION, GyrusConnectionClass)) #define GYRUS_IS_CONNECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GYRUS_TYPE_CONNECTION)) #define GYRUS_IS_CONNECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GYRUS_TYPE_CONNECTION)) #define GYRUS_CONNECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GYRUS_TYPE_CONNECTION, GyrusConnection)) typedef enum { GYRUS_CONN_FAILED, GYRUS_CONN_DONE } GyrusConnectionStatus; typedef struct _GyrusConnection GyrusConnection; typedef struct _GyrusConnectionPrivate GyrusConnectionPrivate; typedef struct _GyrusConnectionClass GyrusConnectionClass; struct _GyrusConnection { GObject parent; GyrusConnectionPrivate *priv; }; struct _GyrusConnectionClass { GObjectClass parent_class; /* Signal : "connect_response" * Prototype: void func (GyrusConnection *conn, * GyrusConnectionStatus status, * gpointer user_data); */ /* Signal : "data_received" * Prototype: void func (GyrusConnection *conn, * const gchar *data, * gpointer user_data); */ }; GType gyrus_connection_get_type (void) G_GNUC_CONST; GyrusConnection *gyrus_connection_new (gchar *host, gint port, gboolean usetls); void gyrus_connection_destroy (GyrusConnection *conn); void gyrus_connection_connect (GyrusConnection *conn); void gyrus_connection_disconnect (GyrusConnection *conn); void gyrus_connection_send (GyrusConnection *conn, const gchar *buffer); gboolean gyrus_connection_get_connected (GyrusConnection *conn); G_CONST_RETURN gchar * gyrus_connection_get_host (GyrusConnection *conn); gint gyrus_connection_get_port (GyrusConnection *conn); #ifdef __cplusplus } #endif /* __cplusplus */ #endif /* GYRUS_CONNECTION_H */ gyrus-0.4.2/src/gyrus-dialog-find-mailbox.c000066400000000000000000000244051426522072200206050ustar00rootroot00000000000000/* gyrus-dialog-find-mailbox.h GYRUS -- GNOME Cyrus Administrator. Find mailbox dialog and engine. Copyright (C) 2004 Claudio Saavedra V. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, see . */ #include #include #include #include #include #include "glib/gi18n.h" #include "gyrus-common.h" #include "gyrus-dialog-find-mailbox.h" #include "gyrus-main-app.h" #include "gyrus-admin.h" #include "gyrus-admin-mailbox.h" struct _GyrusDialogFindMailboxPrivate { GtkWidget *comboboxentry_mailbox; GtkWidget *checkbutton_entire_word; GtkWidget *checkbutton_wrap_around; GtkWidget *button_find; GtkWidget *button_close; GyrusAdmin *admin; }; G_DEFINE_TYPE_WITH_PRIVATE (GyrusDialogFindMailbox, gyrus_dialog_find_mailbox, GTK_TYPE_DIALOG); static void gyrus_dialog_find_mailbox_finalize (GObject *object); /* Callbacks */ static gboolean gyrus_dialog_find_mailbox_kp (GtkWidget *widget, GdkEventKey *event, gpointer user_data) { GyrusDialogFindMailbox *dialog; dialog = GYRUS_DIALOG_FIND_MAILBOX (user_data); switch (event->keyval) { case GDK_KEY_Return: case GDK_KEY_KP_Enter: gtk_button_clicked (GTK_BUTTON (dialog->priv->button_find)); return TRUE; default: break; } return FALSE; } typedef enum { GYRUS_FIND_MODE_ENTIRE_WORD, GYRUS_FIND_MODE_PREFIX, GYRUS_FIND_MODE_ANY } GyrusFindMode; static gboolean gyrus_dialog_find_mailbox_compare_with_method (const gchar *haystack, const gchar *needle, GyrusFindMode mode) { switch (mode) { case GYRUS_FIND_MODE_ENTIRE_WORD: return (strcmp (haystack, needle) == 0); case GYRUS_FIND_MODE_PREFIX: return g_str_has_prefix (haystack, needle); case GYRUS_FIND_MODE_ANY: return (strstr (haystack, needle) != NULL); default: break; } return FALSE; } static void gyrus_dialog_find_mailbox_on_button_find_clicked (GtkButton *button, gpointer user_data) { GtkTreeSelection *selection; GtkTreeView *treeview; GtkTreeModel *model; GtkTreeIter iter; GtkTreePath *path; gchar *mailbox; gboolean found, more_mailboxes, wrap_around, search_from_beginning; const gchar *key; GyrusFindMode mode; GyrusDialogFindMailbox *dialog = GYRUS_DIALOG_FIND_MAILBOX (user_data); GyrusAdmin *admin = GYRUS_ADMIN (dialog->priv->admin); if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (dialog->priv->checkbutton_entire_word))) { mode = GYRUS_FIND_MODE_ENTIRE_WORD; } else mode = GYRUS_FIND_MODE_ANY; wrap_around = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (dialog->priv->checkbutton_wrap_around)); key = gtk_entry_get_text (GTK_ENTRY (gtk_bin_get_child (GTK_BIN (GYRUS_DIALOG_FIND_MAILBOX (user_data)->priv->comboboxentry_mailbox)))); treeview = gyrus_admin_get_users_treeview (admin); selection = gtk_tree_view_get_selection (treeview); /* If no item is selected, start the search from the begin */ if (!gtk_tree_selection_get_selected (selection, &model, &iter)) { gtk_tree_model_get_iter_first (model, &iter); search_from_beginning = TRUE; } else { gtk_tree_model_iter_next (model, &iter); search_from_beginning = FALSE; } do { gtk_tree_model_get (model, &iter, COL_MAILBOX_BASENAME, &mailbox, -1); if ((found = gyrus_dialog_find_mailbox_compare_with_method (mailbox, key, mode)) == TRUE) { gtk_tree_selection_select_iter (selection, &iter); path = gtk_tree_model_get_path(model, &iter); gtk_tree_view_set_cursor (treeview, path, NULL, FALSE); } g_free (mailbox); /* if 'wrap around' mode is selected allows starting over again */ more_mailboxes = gtk_tree_model_iter_next (model, &iter); if (!more_mailboxes && wrap_around && !search_from_beginning) { gtk_tree_model_get_iter_first (model, &iter); more_mailboxes = TRUE; search_from_beginning = TRUE; } } while (!found && more_mailboxes); if (!found) { gchar *msg = g_strdup_printf (_("The text '%s' was not found " "in the mailbox list."), key); gyrus_common_show_message (GTK_WINDOW (dialog), GTK_MESSAGE_INFO, msg); g_free (msg); } g_object_unref (treeview); } static void gyrus_dialog_find_mailbox_on_entry_changed (GtkComboBox *combo_box, gpointer user_data) { GyrusDialogFindMailbox *dialog = GYRUS_DIALOG_FIND_MAILBOX (user_data); gboolean sensitive = gyrus_gtk_entry_has_text (GTK_ENTRY (gtk_bin_get_child (GTK_BIN (dialog->priv->comboboxentry_mailbox)))); gtk_widget_set_sensitive (dialog->priv->button_find, sensitive); } /* Private Methods */ static void gyrus_dialog_find_mailbox_class_init (GyrusDialogFindMailboxClass *class) { GObjectClass *gobject_class = G_OBJECT_CLASS (class); gyrus_dialog_find_mailbox_parent_class = g_type_class_peek_parent (class); gobject_class->finalize = gyrus_dialog_find_mailbox_finalize; } static void gyrus_dialog_find_mailbox_init_get_widgets (GyrusDialogFindMailbox *dialog) { GtkWidget *vbox_find; GtkBuilder *builder; builder = gtk_builder_new (); gtk_builder_add_from_resource (builder, "/org/gnome/gyrus/find.xml", NULL); vbox_find = GTK_WIDGET (gtk_builder_get_object (builder, "vbox_find")); gtk_container_add (GTK_CONTAINER (gtk_dialog_get_content_area (GTK_DIALOG (dialog))), vbox_find); dialog->priv->button_close = gtk_dialog_add_button (GTK_DIALOG (dialog), _("_Close"), GTK_RESPONSE_CANCEL); gtk_button_set_image (GTK_BUTTON (dialog->priv->button_close), gtk_image_new_from_icon_name ("window-close", GTK_ICON_SIZE_BUTTON)); gtk_button_set_always_show_image (GTK_BUTTON (dialog->priv->button_close), TRUE); dialog->priv->button_find = gtk_dialog_add_button (GTK_DIALOG (dialog), _("_Find"), GTK_RESPONSE_ACCEPT); gtk_button_set_image (GTK_BUTTON (dialog->priv->button_find), gtk_image_new_from_icon_name ("edit-find", GTK_ICON_SIZE_BUTTON)); gtk_button_set_always_show_image (GTK_BUTTON (dialog->priv->button_find), TRUE); dialog->priv->checkbutton_entire_word = GTK_WIDGET (gtk_builder_get_object (builder, "checkbutton_entire_word")); dialog->priv->checkbutton_wrap_around = GTK_WIDGET (gtk_builder_get_object (builder, "checkbutton_wrap_around")); dialog->priv->comboboxentry_mailbox = GTK_WIDGET (gtk_builder_get_object (builder, "comboboxentry_mailbox")); } static void gyrus_dialog_find_mailbox_init_connect_signals (GyrusDialogFindMailbox *dialog) { g_signal_connect (G_OBJECT (dialog->priv->button_find), "clicked", G_CALLBACK (gyrus_dialog_find_mailbox_on_button_find_clicked), dialog); g_signal_connect (gtk_bin_get_child (GTK_BIN (dialog->priv->comboboxentry_mailbox)), "key-press-event", G_CALLBACK (gyrus_dialog_find_mailbox_kp), dialog); g_signal_connect_swapped (G_OBJECT (dialog->priv->button_close), "clicked", G_CALLBACK (gtk_widget_destroy), dialog); /* g_signal_connect (G_OBJECT (dialog->priv->checkbutton_quota), "toggled", G_CALLBACK (gyrus_dialog_find_mailbox_on_checkbutton_toggled), dialog); */ g_signal_connect (dialog->priv->comboboxentry_mailbox, "changed", G_CALLBACK (gyrus_dialog_find_mailbox_on_entry_changed), dialog); /* g_signal_connect (G_OBJECT (dialog->priv->entry_quota), "changed", G_CALLBACK (gyrus_dialog_find_mailbox_on_entry_changed), dialog); */ } static void gyrus_dialog_find_mailbox_init (GyrusDialogFindMailbox *dialog) { GtkListStore *model; dialog->priv = g_new0 (GyrusDialogFindMailboxPrivate, 1); dialog->priv->admin = NULL; gtk_window_set_titlebar (GTK_WINDOW (dialog), NULL); gtk_window_set_title (GTK_WINDOW (dialog), _("Find mailbox")); gtk_window_set_resizable (GTK_WINDOW (dialog), FALSE); gtk_window_set_modal (GTK_WINDOW (dialog), TRUE); gyrus_dialog_find_mailbox_init_get_widgets (dialog); gyrus_dialog_find_mailbox_init_connect_signals (dialog); model = gtk_list_store_new (1, G_TYPE_STRING); gtk_combo_box_set_model (GTK_COMBO_BOX (dialog->priv->comboboxentry_mailbox), GTK_TREE_MODEL (model)); gtk_combo_box_set_entry_text_column (GTK_COMBO_BOX (dialog->priv->comboboxentry_mailbox), 0); /* if we implement history for the search, here we must add the previous searched items. Is necesary to add the model to GyrusDialogFindMailboxPrivate? */ /* gtk_combo_box_append_text (GTK_COMBO_BOX (dialog->priv->comboboxentry_mailbox), "Foo.Bar"); */ gtk_widget_set_can_default (dialog->priv->button_find, TRUE); gtk_widget_grab_default (dialog->priv->button_find); gtk_widget_set_sensitive (dialog->priv->button_find, FALSE); gtk_widget_show_all (GTK_WIDGET (dialog)); } static void gyrus_dialog_find_mailbox_finalize (GObject *object) { GyrusDialogFindMailbox *dialog_find_mailbox; g_return_if_fail (GYRUS_IS_DIALOG_FIND_MAILBOX(object)); dialog_find_mailbox = GYRUS_DIALOG_FIND_MAILBOX (object); g_object_unref (G_OBJECT (dialog_find_mailbox->priv->admin)); G_OBJECT_CLASS (gyrus_dialog_find_mailbox_parent_class)->finalize (object); } GtkWidget * gyrus_dialog_find_mailbox_new (void) { GyrusDialogFindMailbox *dialog; dialog = g_object_new (GYRUS_TYPE_DIALOG_FIND_MAILBOX, NULL); return GTK_WIDGET (dialog); } /* Public Methods */ void gyrus_dialog_find_mailbox_set_admin (GyrusDialogFindMailbox *dialog, GyrusAdmin *admin) { if (dialog->priv->admin) g_object_unref (G_OBJECT (dialog->priv->admin)); dialog->priv->admin = g_object_ref (admin); } gyrus-0.4.2/src/gyrus-dialog-find-mailbox.h000066400000000000000000000046331426522072200206130ustar00rootroot00000000000000/* gyrus-dialog-find-mailbox.h GYRUS -- GNOME Cyrus Administrator. Find mailbox dialog and engine. Copyright (C) 2004 Claudio Saavedra V. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, see . */ #ifndef GYRUS_DIALOG_FIND_MAILBOX_H #include "gyrus-admin.h" #define GYRUS_DIALOG_FIND_MAILBOX_H #define GYRUS_TYPE_DIALOG_FIND_MAILBOX (gyrus_dialog_find_mailbox_get_type ()) #define GYRUS_DIALOG_FIND_MAILBOX(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GYRUS_TYPE_DIALOG_FIND_MAILBOX, GyrusDialogFindMailbox)) #define GYRUS_DIALOG_FIND_MAILBOX_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GYRUS_TYPE_DIALOG_FIND_MAILBOX, GyrusDialogFindMailboxClass)) #define GYRUS_IS_DIALOG_FIND_MAILBOX(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GYRUS_TYPE_DIALOG_FIND_MAILBOX)) #define GYRUS_IS_DIALOG_FIND_MAILBOX_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GYRUS_TYPE_DIALOG_FIND_MAILBOX)) #define GYRUS_DIALOG_FIND_MAILBOX_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GYRUS_TYPE_DIALOG_FIND_MAILBOX, GyrusDialogFindMailbox)) typedef struct _GyrusDialogFindMailboxPrivate GyrusDialogFindMailboxPrivate; typedef struct _GyrusDialogFindMailbox GyrusDialogFindMailbox; typedef struct _GyrusDialogFindMailboxClass GyrusDialogFindMailboxClass; struct _GyrusDialogFindMailbox { GtkDialog dialog; GyrusDialogFindMailboxPrivate *priv; }; struct _GyrusDialogFindMailboxClass { GtkDialogClass dialog_class; }; GType gyrus_dialog_find_mailbox_get_type (void); /** Create a dialog to search mailboxes. */ GtkWidget *gyrus_dialog_find_mailbox_new (void); /** Sets the administrator where the dialog should look for the requested mailboxes. */ void gyrus_dialog_find_mailbox_set_admin (GyrusDialogFindMailbox *dialog, GyrusAdmin *admin); #endif /* GYRUS_DIALOG_FIND_MAILBOX_H */ gyrus-0.4.2/src/gyrus-dialog-mailbox-new.c000066400000000000000000000162611426522072200204570ustar00rootroot00000000000000/* gyrus-dialog-mailbox-new.c GYRUS -- GNOME Cyrus Administrator. Dialog New Mailbox. Copyright (C) 2004 Claudio Saavedra Valdés This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, see . */ #include #include #include #include "glib/gi18n.h" #include "gyrus-common.h" #include "gyrus-dialog-mailbox-new.h" #include "gyrus-main-app.h" #include "gyrus-admin.h" #include "gyrus-admin-mailbox.h" struct _GyrusDialogMailboxNewPrivate { GtkWidget *entry_mailbox; GtkWidget *entry_quota; GtkWidget *label_mailbox; GtkWidget *label_quota; GtkWidget *checkbutton_quota; GtkWidget *button_ok; GtkWidget *button_cancel; }; G_DEFINE_TYPE_WITH_PRIVATE (GyrusDialogMailboxNew, gyrus_dialog_mailbox_new, GTK_TYPE_DIALOG); /* Callbacks */ static void gyrus_dialog_mailbox_new_on_button_ok_clicked (GtkButton *button, gpointer user_data) { GyrusDialogMailboxNew *dialog; GyrusMainApp *app; gchar *current_path; const gchar *mailbox; gint quota; gchar *error; gchar *quota_invalid; GyrusAdmin *admin; dialog = GYRUS_DIALOG_MAILBOX_NEW (user_data); app = GYRUS_MAIN_APP (g_application_get_default ()); admin = gyrus_main_app_get_current_admin (app); current_path = gyrus_admin_get_selected_mailbox (admin); if (!current_path) current_path = g_strdup ("user"); mailbox = gtk_entry_get_text (GTK_ENTRY (dialog->priv->entry_mailbox)); if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (dialog->priv->checkbutton_quota))) { quota = 1024 * g_strtod (gtk_entry_get_text (GTK_ENTRY (dialog->priv->entry_quota)), "a_invalid); } else quota = -1; if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (dialog->priv->checkbutton_quota)) && *quota_invalid) { gyrus_common_show_message (NULL, GTK_MESSAGE_ERROR, _("Quota not valid")); gtk_editable_select_region (GTK_EDITABLE (dialog->priv->entry_quota), 0, -1); } else if (gyrus_admin_mailbox_new (admin, mailbox, current_path, quota, &error)) { gyrus_admin_refresh_users_list (admin); gyrus_admin_select_mailbox (admin, current_path); gtk_widget_destroy (GTK_WIDGET (dialog)); } else { gyrus_common_show_message (GTK_WINDOW (dialog), GTK_MESSAGE_ERROR, error); gtk_editable_select_region (GTK_EDITABLE (dialog->priv->entry_mailbox), 0, -1); g_free (error); } g_free (current_path); } static void gyrus_dialog_mailbox_new_on_checkbutton_toggled (GtkToggleButton *toggle, gpointer user_data) { GyrusDialogMailboxNew *dialog = GYRUS_DIALOG_MAILBOX_NEW (user_data); gboolean sensitive = gtk_toggle_button_get_active (toggle); gtk_widget_set_sensitive (dialog->priv->label_quota, sensitive); gtk_widget_set_sensitive (dialog->priv->entry_quota, sensitive); sensitive = gyrus_gtk_entry_has_text (GTK_ENTRY (dialog->priv->entry_mailbox)) && (!gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (dialog->priv->checkbutton_quota)) || gyrus_gtk_entry_has_text (GTK_ENTRY (dialog->priv->entry_quota))); gtk_widget_set_sensitive (dialog->priv->button_ok, sensitive); } static void gyrus_dialog_mailbox_new_on_entry_changed (GtkEditable *editable, gpointer user_data) { GyrusDialogMailboxNew *dialog = GYRUS_DIALOG_MAILBOX_NEW (user_data); gboolean sensitive = gyrus_gtk_entry_has_text (GTK_ENTRY (dialog->priv->entry_mailbox)) && (!gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (dialog->priv->checkbutton_quota)) || gyrus_gtk_entry_has_text (GTK_ENTRY (dialog->priv->entry_quota))); gtk_widget_set_sensitive (dialog->priv->button_ok, sensitive); } static void gyrus_dialog_mailbox_new_class_init (GyrusDialogMailboxNewClass *class) { gyrus_dialog_mailbox_new_parent_class = g_type_class_peek_parent (class); } static void gyrus_dialog_mailbox_new_init_get_widgets (GyrusDialogMailboxNew *dialog) { GtkWidget *table; GtkBuilder *builder; builder = gtk_builder_new (); gtk_builder_add_from_resource (builder, "/org/gnome/cyrus/create_mailbox.xml", NULL); table = GTK_WIDGET (gtk_builder_get_object (builder, "table_dialog")); gtk_container_add (GTK_CONTAINER (gtk_dialog_get_content_area (GTK_DIALOG (dialog))), table); dialog->priv->button_cancel = gtk_dialog_add_button (GTK_DIALOG (dialog), _("_Close"), GTK_RESPONSE_CANCEL); dialog->priv->button_ok = gtk_dialog_add_button (GTK_DIALOG (dialog), _("_OK"), GTK_RESPONSE_ACCEPT); dialog->priv->checkbutton_quota = GTK_WIDGET (gtk_builder_get_object (builder, "checkbutton_quota")); dialog->priv->entry_mailbox = GTK_WIDGET (gtk_builder_get_object (builder, "entry_mailbox")); dialog->priv->entry_quota = GTK_WIDGET (gtk_builder_get_object (builder, "entry_quota")); dialog->priv->label_mailbox = GTK_WIDGET (gtk_builder_get_object (builder, "label_mailbox")); dialog->priv->label_quota = GTK_WIDGET (gtk_builder_get_object (builder, "label_quota")); g_object_unref (builder); } static void gyrus_dialog_mailbox_new_init_connect_signals (GyrusDialogMailboxNew *dialog) { g_signal_connect (G_OBJECT (dialog->priv->button_ok), "clicked", G_CALLBACK (gyrus_dialog_mailbox_new_on_button_ok_clicked), dialog); g_signal_connect (G_OBJECT (dialog->priv->checkbutton_quota), "toggled", G_CALLBACK (gyrus_dialog_mailbox_new_on_checkbutton_toggled), dialog); g_signal_connect_swapped (G_OBJECT (dialog->priv->button_cancel), "clicked", G_CALLBACK (gtk_widget_destroy), dialog); g_signal_connect (G_OBJECT (dialog->priv->entry_mailbox), "changed", G_CALLBACK (gyrus_dialog_mailbox_new_on_entry_changed), dialog); g_signal_connect (G_OBJECT (dialog->priv->entry_quota), "changed", G_CALLBACK (gyrus_dialog_mailbox_new_on_entry_changed), dialog); } static void gyrus_dialog_mailbox_new_init (GyrusDialogMailboxNew *dialog) { dialog->priv = gyrus_dialog_mailbox_new_get_instance_private (dialog); gtk_window_set_titlebar (GTK_WINDOW (dialog), NULL); gtk_window_set_title (GTK_WINDOW (dialog), _("New mailbox")); gtk_window_set_resizable (GTK_WINDOW (dialog), FALSE); gtk_window_set_modal (GTK_WINDOW (dialog), TRUE); gyrus_dialog_mailbox_new_init_get_widgets (dialog); gyrus_dialog_mailbox_new_init_connect_signals (dialog); gtk_widget_set_sensitive (dialog->priv->button_ok, FALSE); gtk_widget_show_all (GTK_WIDGET (dialog)); } GtkWidget * gyrus_dialog_mailbox_new_new (void) { GyrusDialogMailboxNew *dialog; dialog = g_object_new (GYRUS_TYPE_DIALOG_MAILBOX_NEW, NULL); return GTK_WIDGET (dialog); } gyrus-0.4.2/src/gyrus-dialog-mailbox-new.h000066400000000000000000000043451426522072200204640ustar00rootroot00000000000000/* gyrus-dialog-mailbox-new.h GYRUS -- GNOME Cyrus Administrator. Dialog New Mailbox. Copyright (C) 2004 Claudio Saavedra Valdés This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, see . */ #ifndef GYRUS_DIALOG_MAILBOX_NEW_H #define GYRUS_DIALOG_MAILBOX_NEW_H #define GYRUS_TYPE_DIALOG_MAILBOX_NEW (gyrus_dialog_mailbox_new_get_type ()) #define GYRUS_DIALOG_MAILBOX_NEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GYRUS_TYPE_DIALOG_MAILBOX_NEW, GyrusDialogMailboxNew)) #define GYRUS_DIALOG_MAILBOX_NEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GYRUS_TYPE_DIALOG_MAILBOX_NEW, GyrusDialogMailboxNewClass)) #define GYRUS_IS_DIALOG_MAILBOX_NEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GYRUS_TYPE_DIALOG_MAILBOX_NEW)) #define GYRUS_IS_DIALOG_MAILBOX_NEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GYRUS_TYPE_DIALOG_MAILBOX_NEW)) #define GYRUS_DIALOG_MAILBOX_NEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GYRUS_TYPE_DIALOG_MAILBOX_NEW, GyrusDialogMailboxNew)) typedef struct _GyrusDialogMailboxNewPrivate GyrusDialogMailboxNewPrivate; typedef struct _GyrusDialogMailboxNew GyrusDialogMailboxNew; typedef struct _GyrusDialogMailboxNewClass GyrusDialogMailboxNewClass; struct _GyrusDialogMailboxNew { GtkDialog dialog; GyrusDialogMailboxNewPrivate *priv; }; struct _GyrusDialogMailboxNewClass { GtkDialogClass dialog_class; }; GType gyrus_dialog_mailbox_new_get_type (void); /** Creates a dialog to allow the creation of new mailbox. Returns: The dialog for creating new mailboxes. */ GtkWidget *gyrus_dialog_mailbox_new_new (void); #endif /* GYRUS_DIALOG_MAILBOX_NEW_H */ gyrus-0.4.2/src/gyrus-main-app.c000066400000000000000000000567301426522072200165070ustar00rootroot00000000000000/* gyrus-main-app.c GYRUS -- GNOME Cyrus Administrator Main Application Class. Copyright (C) 2003-2004 Alejandro Valdes J. Copyright (C) 2003-2004 Jorge Bustos B. Copyright (C) 2003-2004 Claudio Saavedra V. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, see . */ #include #include #include #include "glib/gi18n.h" #include "gyrus-dialog-mailbox-new.h" #include "gyrus-dialog-find-mailbox.h" #include "gyrus-main-app.h" #include "gyrus-session.h" #include "gyrus-admin-mailbox.h" #include "gyrus-report.h" /*** Gyrus Main Application Private Data ***/ struct _GyrusMainAppPrivate { AmtkActionInfoStore *info_store; GtkWidget *notebook; GtkWidget *window; }; G_DEFINE_TYPE_WITH_PRIVATE (GyrusMainApp, gyrus_main_app, GTK_TYPE_APPLICATION) static void gyrus_main_app_about (void); /*** Class Callbacks ***/ static void gyrus_main_app_on_file_open_session (GSimpleAction *action, GVariant *param, gpointer user_data) { gyrus_session_show_sessions (NULL, user_data); } static void gyrus_main_app_on_file_exit (GSimpleAction *action, GVariant *param, gpointer user_data) { g_application_quit (G_APPLICATION (user_data)); } static void gyrus_main_app_on_edit_find (GSimpleAction *action, GVariant *param, gpointer user_data) { GyrusMainApp *app = GYRUS_MAIN_APP (user_data); GtkWidget *dialog = gyrus_dialog_find_mailbox_new (); gtk_window_set_transient_for (GTK_WINDOW (dialog), GTK_WINDOW (app->priv->window)); gyrus_dialog_find_mailbox_set_admin (GYRUS_DIALOG_FIND_MAILBOX (dialog), gyrus_main_app_get_current_admin (app)); gtk_widget_show (dialog); } static void gyrus_main_app_on_edit_mailbox_add (GSimpleAction *action, GVariant *param, gpointer user_data) { GyrusMainApp *app = GYRUS_MAIN_APP (user_data); GtkWidget *dialog = gyrus_dialog_mailbox_new_new (); gtk_widget_show (dialog); gtk_window_set_transient_for (GTK_WINDOW (dialog), GTK_WINDOW (app->priv->window)); } static void gyrus_admin_delete_dialog_on_response (GtkDialog *dialog, gint result, gpointer user_data) { GyrusAdmin * admin = GYRUS_ADMIN (user_data); if (result == GTK_RESPONSE_YES) { gchar *mailbox = gyrus_admin_get_selected_mailbox (admin); gyrus_admin_mailbox_delete_all (admin, mailbox); gyrus_admin_refresh_users_list (admin); gyrus_admin_mailbox_clear_info (admin); g_free (mailbox); } gtk_widget_destroy (GTK_WIDGET (dialog)); } static void gyrus_main_app_on_edit_mailbox_remove (GSimpleAction *action, GVariant *param, gpointer user_data) { GyrusMainApp *app = GYRUS_MAIN_APP (user_data); GyrusAdmin * admin = gyrus_main_app_get_current_admin (app); gchar *mailbox = gyrus_admin_get_selected_mailbox (admin); GtkWidget *dialog = gtk_message_dialog_new (GTK_WINDOW (app->priv->window), GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_QUESTION, GTK_BUTTONS_YES_NO, _("Really delete mailbox '%s' and all of its submailboxes?"), mailbox); g_signal_connect (G_OBJECT (dialog), "response", G_CALLBACK (gyrus_admin_delete_dialog_on_response), admin); gtk_dialog_run (GTK_DIALOG (dialog)); g_free (mailbox); } static void gyrus_main_app_on_acl_entry_delete (GSimpleAction *action, GVariant *param, gpointer user_data) { GyrusMainApp *app = GYRUS_MAIN_APP (user_data); GyrusAdmin * admin = gyrus_main_app_get_current_admin (app); gyrus_admin_delete_selected_acl_entry (admin); } static void gyrus_main_app_on_acl_entry_rename (GSimpleAction *action, GVariant *param, gpointer user_data) { GyrusMainApp *app = GYRUS_MAIN_APP (user_data); GyrusAdmin * admin = gyrus_main_app_get_current_admin (app); gyrus_admin_start_editing_selected_acl (admin); } static void gyrus_main_app_on_acl_entry_new (GSimpleAction *action, GVariant *param, gpointer user_data) { GyrusMainApp *app = GYRUS_MAIN_APP (user_data); GyrusAdmin * admin = gyrus_main_app_get_current_admin (app); gyrus_admin_add_acl_entry (admin); } static void gyrus_main_app_on_view_refresh (GSimpleAction *action, GVariant *param, gpointer user_data) { GyrusMainApp *app = GYRUS_MAIN_APP (user_data); GyrusAdmin * admin = gyrus_main_app_get_current_admin (app); gyrus_admin_refresh_users_list (admin); } static void gyrus_main_app_on_view_report (GSimpleAction *action, GVariant *param, gpointer user_data) { GyrusMainApp *app = GYRUS_MAIN_APP (user_data); GyrusAdmin *admin = gyrus_main_app_get_current_admin (app); gyrus_report_show_report(admin); } static void gyrus_main_app_on_help_about (GSimpleAction *action, GVariant *param, gpointer user_data) { gyrus_main_app_about(); } static const char *server_actions[] = { "addmbox", "find", "refresh", "report", NULL }; static const char *mbox_actions[] = { "new", "rmmbox", NULL }; static const char *acl_actions[] = { "rename", "delete", NULL }; static void enable_actions (GyrusMainApp *app, const char **actions, gboolean enabled) { GAction *action; guint i; for (i = 0; i < g_strv_length ((gchar **) actions); i++) { action = g_action_map_lookup_action (G_ACTION_MAP (app), actions[i]); g_simple_action_set_enabled (G_SIMPLE_ACTION (action), enabled); } } static void gyrus_main_app_make_sensitivity_consistent (GyrusMainApp *app) { gint n_page; GyrusAdmin *admin; n_page = gtk_notebook_get_current_page (GTK_NOTEBOOK (app->priv->notebook)); /* If there are no pages left in Notebook */ if (n_page < 0) { enable_actions (app, server_actions, FALSE); enable_actions (app, mbox_actions, FALSE); enable_actions (app, acl_actions, FALSE); return; } admin = GYRUS_ADMIN (gtk_notebook_get_nth_page (GTK_NOTEBOOK (app->priv->notebook), n_page)); if (gyrus_admin_is_connected (admin)) { enable_actions (app, server_actions, TRUE); enable_actions (app, acl_actions, gyrus_admin_acl_has_selection (admin)); } else enable_actions (app, server_actions, FALSE); } static void gyrus_main_app_on_button_close_page_clicked (GtkButton *button, gpointer data) { gint page_number; GtkWidget *admin = GTK_WIDGET (data); gpointer app_data = g_object_get_data (G_OBJECT (button), "parent-app"); GyrusMainApp *app = GYRUS_MAIN_APP (app_data); page_number = gtk_notebook_page_num (GTK_NOTEBOOK (app->priv->notebook), admin); gtk_notebook_remove_page (GTK_NOTEBOOK (app->priv->notebook), page_number); gyrus_main_app_make_sensitivity_consistent (app); if (gtk_notebook_get_n_pages (GTK_NOTEBOOK (app->priv->notebook)) == 0) gtk_window_set_title (GTK_WINDOW (app->priv->window), _("Cyrus IMAP Administrator")); } static void gyrus_main_app_on_switch_page (GtkNotebook *notebook, gpointer *page, guint page_num, gpointer user_data) { GyrusMainApp *app = GYRUS_MAIN_APP (user_data); GyrusAdmin *admin = GYRUS_ADMIN (gtk_notebook_get_nth_page (notebook, page_num)); const gchar *session_name = gyrus_admin_get_current_session_name (admin); gchar *title = g_strdup_printf (_("%s - Cyrus IMAP Administrator"), session_name); gchar *mailbox; gtk_window_set_title (GTK_WINDOW (app->priv->window), title); g_free (title); if (gyrus_admin_is_connected (admin)) enable_actions (app, server_actions, TRUE); else enable_actions (app, server_actions, FALSE); if ((mailbox = gyrus_admin_get_selected_mailbox (admin)) != NULL) { enable_actions (app, mbox_actions, TRUE); if (gyrus_admin_has_current_acl_access (admin) == FALSE) { /* TODO: entry_new to false */ ; } g_free (mailbox); } else { enable_actions (app, mbox_actions, FALSE); } enable_actions (app, acl_actions, gyrus_admin_acl_has_selection (admin)); } const AmtkActionInfoEntry acl_entries[] = { { "app.new", NULL, N_("New entry"), "n", N_("Create a new ACL entry in current mailbox") }, { "app.rename", NULL, N_("Rename entry"), "r", N_("Rename selected ACL entry") }, { "app.delete", NULL, N_("Delete entry"), "d", N_("Delete selected ACL entry") }, { NULL } }; static void gyrus_main_app_startup (GApplication *application) { const AmtkActionInfoEntry amtk_entries[] = { { "app.open", "document-open", N_("Go to server..."), "o", N_("Show the list of servers") }, { "app.quit", "application-exit", N_("_Quit"), "q" }, { "app.find", "edit-find", N_("_Find"), "f", N_("Search for a mailbox in current server") }, { "app.refresh", "view-refresh", N_("_Refresh"), "r", N_("Refresh the mailbox list") }, { "app.report", NULL, N_("Create report..."), NULL, N_("Create report of users with quota problems") }, { "app.about", "help-about", N_("_About") }, { "app.addmbox", "list-add", N_("Add mailbox"), NULL, N_("Add a mailbox under the one selected") }, { "app.rmmbox", "list-remove", N_("Remove mailbox"), NULL, N_("Remove current mailbox from the server") }, { NULL } }; const GActionEntry entries[] = { { "open", gyrus_main_app_on_file_open_session }, { "quit", gyrus_main_app_on_file_exit }, { "find", gyrus_main_app_on_edit_find }, { "new", gyrus_main_app_on_acl_entry_new }, { "rename", gyrus_main_app_on_acl_entry_rename }, { "delete", gyrus_main_app_on_acl_entry_delete }, { "refresh", gyrus_main_app_on_view_refresh }, { "report", gyrus_main_app_on_view_report }, { "about", gyrus_main_app_on_help_about }, { "addmbox", gyrus_main_app_on_edit_mailbox_add }, { "rmmbox", gyrus_main_app_on_edit_mailbox_remove }, { NULL } }; GyrusMainApp *app = GYRUS_MAIN_APP (application); if (G_APPLICATION_CLASS (gyrus_main_app_parent_class)->startup) G_APPLICATION_CLASS (gyrus_main_app_parent_class)->startup (application); g_assert (app->priv->info_store == NULL); app->priv->info_store = amtk_action_info_store_new (); amtk_action_info_store_add_entries (app->priv->info_store, amtk_entries, -1, GETTEXT_PACKAGE); amtk_action_info_store_add_entries (app->priv->info_store, acl_entries, -1, GETTEXT_PACKAGE); amtk_action_map_add_action_entries_check_dups (G_ACTION_MAP (app), entries, -1, app); } static void gyrus_main_app_activate (GApplication *application) { AmtkFactory *factory; AmtkApplicationWindow *win; GtkWidget *main_vbox; GtkWidget *menubar; GtkWidget *menu; GtkWidget *submenu; GtkWidget *toolbar; GtkWidget *statusbar; GyrusMainApp *app = GYRUS_MAIN_APP (application); app->priv->window = gtk_application_window_new (GTK_APPLICATION (application)); gtk_window_set_default_size (GTK_WINDOW (app->priv->window), 600, 400); gtk_window_set_title (GTK_WINDOW (app->priv->window), _("Cyrus IMAP Administrator")); main_vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0); factory = amtk_factory_new_with_default_application (); menubar = gtk_menu_bar_new (); menu = gtk_menu_item_new_with_mnemonic (_("_File")); submenu = gtk_menu_new (); gtk_menu_item_set_submenu (GTK_MENU_ITEM (menu), submenu); gtk_menu_shell_append (GTK_MENU_SHELL (submenu), amtk_factory_create_menu_item (factory, "app.open")); gtk_menu_shell_append (GTK_MENU_SHELL (submenu), gtk_separator_menu_item_new ()); gtk_menu_shell_append (GTK_MENU_SHELL (submenu), amtk_factory_create_menu_item (factory, "app.quit")); gtk_menu_shell_append (GTK_MENU_SHELL (menubar), menu); menu = gtk_menu_item_new_with_mnemonic (_("_Edit")); submenu = gtk_menu_new (); gtk_menu_item_set_submenu (GTK_MENU_ITEM (menu), submenu); gtk_menu_shell_append (GTK_MENU_SHELL (submenu), amtk_factory_create_menu_item (factory, "app.find")); gtk_menu_shell_append (GTK_MENU_SHELL (menubar), menu); menu = gtk_menu_item_new_with_mnemonic (_("_ACL")); gtk_menu_item_set_submenu (GTK_MENU_ITEM (menu), amtk_factory_create_simple_menu (factory, acl_entries, -1)); gtk_menu_shell_append (GTK_MENU_SHELL (menubar), menu); menu = gtk_menu_item_new_with_mnemonic (_("View")); submenu = gtk_menu_new (); gtk_menu_item_set_submenu (GTK_MENU_ITEM (menu), submenu); gtk_menu_shell_append (GTK_MENU_SHELL (submenu), amtk_factory_create_menu_item (factory, "app.refresh")); gtk_menu_shell_append (GTK_MENU_SHELL (submenu), gtk_separator_menu_item_new ()); gtk_menu_shell_append (GTK_MENU_SHELL (submenu), amtk_factory_create_menu_item (factory, "app.report")); gtk_menu_shell_append (GTK_MENU_SHELL (menubar), menu); menu = gtk_menu_item_new_with_mnemonic (_("_Help")); submenu = gtk_menu_new (); gtk_menu_item_set_submenu (GTK_MENU_ITEM (menu), submenu); gtk_menu_shell_append (GTK_MENU_SHELL (submenu), amtk_factory_create_menu_item (factory, "app.about")); gtk_menu_shell_append (GTK_MENU_SHELL (menubar), menu); gtk_box_pack_start (GTK_BOX (main_vbox), menubar, FALSE, FALSE, 0); toolbar = gtk_toolbar_new (); gtk_toolbar_insert (GTK_TOOLBAR (toolbar), amtk_factory_create_tool_button (factory, "app.open"), -1); gtk_toolbar_insert (GTK_TOOLBAR (toolbar), gtk_separator_tool_item_new (), -1); gtk_toolbar_insert (GTK_TOOLBAR (toolbar), amtk_factory_create_tool_button (factory, "app.addmbox"), -1); gtk_toolbar_insert (GTK_TOOLBAR (toolbar), amtk_factory_create_tool_button (factory, "app.rmmbox"), -1); gtk_toolbar_insert (GTK_TOOLBAR (toolbar), gtk_separator_tool_item_new (), -1); gtk_toolbar_insert (GTK_TOOLBAR (toolbar), amtk_factory_create_tool_button (factory, "app.find"), -1); gtk_toolbar_insert (GTK_TOOLBAR (toolbar), gtk_separator_tool_item_new (), -1); gtk_toolbar_insert (GTK_TOOLBAR (toolbar), amtk_factory_create_tool_button (factory, "app.refresh"), -1); gtk_box_pack_start (GTK_BOX (main_vbox), toolbar, FALSE, FALSE, 0); g_object_unref (factory); app->priv->notebook = gtk_notebook_new (); g_signal_connect (G_OBJECT (app->priv->notebook), "switch-page", G_CALLBACK (gyrus_main_app_on_switch_page), app); gtk_box_pack_start (GTK_BOX (main_vbox), app->priv->notebook, TRUE, TRUE, 0); statusbar = gtk_statusbar_new (); win = amtk_application_window_get_from_gtk_application_window (GTK_APPLICATION_WINDOW (app->priv->window)); amtk_application_window_set_statusbar (win, GTK_STATUSBAR (statusbar)); amtk_application_window_connect_menu_to_statusbar (win, GTK_MENU_SHELL (menubar)); gtk_box_pack_start (GTK_BOX (main_vbox), statusbar, FALSE, FALSE, 0); gtk_container_add (GTK_CONTAINER (app->priv->window), main_vbox); gtk_widget_show_all (app->priv->window); gyrus_main_app_make_sensitivity_consistent (app); amtk_action_info_store_check_all_used (app->priv->info_store); } /*** Private Methods ***/ static void gyrus_main_app_dispose (GObject *object) { GyrusMainApp *app = GYRUS_MAIN_APP (object); g_clear_object (&app->priv->info_store); G_OBJECT_CLASS (gyrus_main_app_parent_class)->dispose (object); } static void gyrus_main_app_class_init (GyrusMainAppClass *class) { GObjectClass *object_class = G_OBJECT_CLASS (class); GApplicationClass *app_class = G_APPLICATION_CLASS (class); gyrus_main_app_parent_class = g_type_class_peek_parent (class); object_class->dispose = gyrus_main_app_dispose; app_class->startup = gyrus_main_app_startup; app_class->activate = gyrus_main_app_activate; } static void gyrus_main_app_init (GyrusMainApp *app) { /* get a private struct */ app->priv = gyrus_main_app_get_instance_private (app); g_set_application_name (_("Cyrus IMAP Administrator")); } GyrusAdmin * gyrus_main_app_get_current_admin (GyrusMainApp *app) { GyrusAdmin *admin; gint n; n = gtk_notebook_get_current_page (GTK_NOTEBOOK (app->priv->notebook)); admin = GYRUS_ADMIN (gtk_notebook_get_nth_page (GTK_NOTEBOOK (app->priv->notebook), n)); return admin; } static void gyrus_main_app_about (void) { GdkPixbuf *pixbuf; // gchar *logo_gyrus; const gchar *authors[] = { "Alejandro Vald" "\xC3\xA9" "s Jim" "\xC3\xA9" "nez ", "Jorge Bustos Bustos ", "Claudio Saavedra " "", "Francisco Rojas ", NULL }; const gchar *translators = _("translators-credits"); // logo_gyrus = g_strdup_printf ("%s%c%s", GYRUS_PIXMAPS_DIR, // G_DIR_SEPARATOR, "logo_gyrus.png"); // pixbuf = gdk_pixbuf_new_from_file(logo_gyrus, NULL); pixbuf = gdk_pixbuf_new_from_resource ("/org/gnome/gyrus/logo_gyrus.png", NULL); // g_free (logo_gyrus); gtk_show_about_dialog (NULL, "name", _("GNOME Cyrus Administrator"), "version", VERSION, "copyright", _("(c) 2003-2005 GNOME Foundation\n" "(c) 2004-2005 Claudio Saavedra"), "comments", _("Administration tool for Cyrus IMAP servers."), "authors", authors, "translator-credits", strcmp (translators, "translators-credits") != 0 ? translators : NULL, "logo", pixbuf, "website", "https://www.gitlab.com/wvdakker/gyrus", NULL); g_object_unref(pixbuf); } static GtkWidget * gyrus_main_app_create_label_from_admin (GyrusMainApp *app, GyrusAdmin *admin) { GtkWidget *hbox; GtkWidget *image; GtkWidget *button; GtkWidget *label; const gchar *session_name; /* create a text label */ session_name = gyrus_admin_get_current_session_name (admin); label = gtk_label_new (session_name ? session_name : ""); /* create a button with a close icon */ image = gtk_image_new_from_icon_name ("window-close", GTK_ICON_SIZE_MENU); button = gtk_button_new (); gtk_button_set_relief (GTK_BUTTON (button), GTK_RELIEF_NONE); gtk_widget_set_size_request (button, 20, 20); gtk_container_add (GTK_CONTAINER (button), image); g_object_set_data (G_OBJECT (button), "parent-app", app); /* create the container for both widgets*/ hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 5); gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX (hbox), button, TRUE, TRUE, 0); gtk_widget_show_all (hbox); g_signal_connect (G_OBJECT (button), "clicked", G_CALLBACK (gyrus_main_app_on_button_close_page_clicked), admin); return hbox; } /*** Public Methods ****/ GyrusMainApp * gyrus_main_app_new (void) { GyrusMainApp *app; app = g_object_new (GYRUS_TYPE_MAIN_APP, "application-id", "org.gnome.gyrus", "flags", G_APPLICATION_FLAGS_NONE, NULL); return app; } static void main_app_on_admin_connected (GyrusAdmin *admin, gpointer *data) { GyrusMainApp *app = GYRUS_MAIN_APP (data); enable_actions (app, server_actions, TRUE); } static void main_app_on_admin_disconnected (GyrusAdmin *admin, gpointer *data) { GyrusMainApp *app = GYRUS_MAIN_APP (data); enable_actions (app, server_actions, FALSE); enable_actions (app, mbox_actions, FALSE); } static void main_app_on_acl_selection_changed (GyrusAdmin *admin, gboolean selected, gpointer *data) { GyrusMainApp *app = GYRUS_MAIN_APP (data); enable_actions (app, acl_actions, selected); } static void main_app_on_mailbox_selection_changed (GyrusAdmin *admin, gboolean selected, gpointer *data) { GyrusMainApp *app = GYRUS_MAIN_APP (data); enable_actions (app, mbox_actions, selected); } GtkWidget * gyrus_main_app_append_page (GyrusMainApp *app, GyrusSession *session) { GtkWidget *hbox_label; gint page_num; GtkWidget *admin; g_return_val_if_fail (GYRUS_IS_MAIN_APP (app), NULL); admin = gyrus_admin_new (session); g_signal_connect (G_OBJECT (admin), "connected", G_CALLBACK (main_app_on_admin_connected), app); g_signal_connect (G_OBJECT (admin), "disconnected", G_CALLBACK (main_app_on_admin_disconnected), app); g_signal_connect (G_OBJECT (admin), "acl-selection-changed", G_CALLBACK (main_app_on_acl_selection_changed), app); g_signal_connect (G_OBJECT (admin), "mailbox-selection-changed", G_CALLBACK (main_app_on_mailbox_selection_changed), app); gtk_notebook_append_page (GTK_NOTEBOOK (app->priv->notebook), admin, NULL); hbox_label = gyrus_main_app_create_label_from_admin (app, GYRUS_ADMIN (admin)); gtk_notebook_set_tab_label (GTK_NOTEBOOK (app->priv->notebook), admin, hbox_label); page_num = gtk_notebook_page_num (GTK_NOTEBOOK (app->priv->notebook), admin); gtk_notebook_set_current_page (GTK_NOTEBOOK (app->priv->notebook), page_num); return admin; } void gyrus_main_app_menu_set_sensitive (GyrusMainApp *app, gboolean sens) { g_return_if_fail (GYRUS_IS_MAIN_APP (app)); enable_actions (app, server_actions, sens); } /***** Above functions doesnt belong this file ******/ int main (int argc, char *argv[]) { GyrusMainApp *app; int status; bindtextdomain (GETTEXT_PACKAGE, GNOME_LOCALE_DIR); bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8"); textdomain (GETTEXT_PACKAGE); amtk_init (); app = gyrus_main_app_new (); status = g_application_run (G_APPLICATION (app), argc, argv); amtk_finalize (); g_object_unref (app); return status; } gyrus-0.4.2/src/gyrus-main-app.h000066400000000000000000000074421426522072200165100ustar00rootroot00000000000000/* gyrus-main-app.h GYRUS -- GNOME Cyrus Administrator Main Application Class header definitions. Copyright (C) 2004 Claudio Saavedra Valdés This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, see . */ #ifdef HAVE_CONFIG_H # include #endif #ifndef GYRUS_MAIN_APP_H #define GYRUS_MAIN_APP_H /* #include */ #include #define GYRUS_TYPE_MAIN_APP (gyrus_main_app_get_type ()) #define GYRUS_MAIN_APP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GYRUS_TYPE_MAIN_APP, GyrusMainApp)) #define GYRUS_MAIN_APP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GYRUS_TYPE_MAIN_APP, GyrusMainAppClass)) #define GYRUS_IS_MAIN_APP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GYRUS_TYPE_MAIN_APP)) #define GYRUS_IS_MAIN_APP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GYRUS_TYPE_MAIN_APP)) #define GYRUS_MAIN_APP_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GYRUS_TYPE_MAIN_APP, GyrusMainApp)) typedef struct _GyrusMainAppPrivate GyrusMainAppPrivate; typedef struct _GyrusMainApp GyrusMainApp; typedef struct _GyrusMainAppClass GyrusMainAppClass; /*** Gyrus Main Application Data ***/ struct _GyrusMainApp { GtkApplication parent_instance; GyrusMainAppPrivate *priv; }; /*** Gyrus Main Application Class Data ***/ /*** derived from GtkApplicationClass ***/ struct _GyrusMainAppClass { GtkApplicationClass parent_class; }; #include "gyrus-session.h" #include "gyrus-admin.h" GType gyrus_main_app_get_type (void); /** Creates a new instance of the main application. Normally, you would want to run this just once. Returns: A new main application window. */ GyrusMainApp * gyrus_main_app_new (void); /** Loads a session in the main application. Loads the given @session in the @app, by opening a new tab and selecting it. This will create a new instance of #GyrusAdmin so it can be manipulated. @app: A #GyrusMainApp instance. @session: The #GyrusSession to load. Returns: The new #GyrusAdmin instance that is loaded in. */ GtkWidget * gyrus_main_app_append_page (GyrusMainApp *app, GyrusSession *session); /** Changes the sensitivity of items in the menu. The menu items that get affected to the sensitivity change are those related to the connected/desconnected status of the GyrusAdmin. Use it when changing the page and when (des)connecting a GyrusAdmin. @app: A #GyrusMainApp instance. @sens: TRUE to set the sensitivity FALSE to unset it. */ void gyrus_main_app_menu_set_sensitive (GyrusMainApp *app, gboolean sens); /** Gets the currently selected #GyrusAdmin, i.e. the #GyrusAdmin that is visible in the application. @app: A #GyrusMainApp instance. Returns: The currently selected #GyrusAdmin. */ GyrusAdmin *gyrus_main_app_get_current_admin (GyrusMainApp *app); /** Toggles the sensitivity of a item in the menu of @app. You need to pass the path to the item according to the schema. @app: A #GyrusMainApp instance. @command: The path to the item. @sensitive: */ void gyrus_main_app_menu_item_set_sensitive (GyrusMainApp *app, const gchar *command, gboolean sensitive); #endif /* GYRUS_MAIN_APP_H */ gyrus-0.4.2/src/gyrus-marshal.list000066400000000000000000000000241426522072200171460ustar00rootroot00000000000000VOID:STRING,BOOLEAN gyrus-0.4.2/src/gyrus-report.c000066400000000000000000000427751426522072200163240ustar00rootroot00000000000000/* gyrus-report.c GYRUS -- GNOME Cyrus Administrator. Copyright (C) 2005 Alejandro Valdés This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, see . */ #include #include "gyrus-report.h" #include "glib/gi18n.h" #include #include "gyrus-admin-mailbox.h" #include "gyrus-common.h" #include #include #define HEADER_HEIGHT (10*72/25.4) #define HEADER_GAP (3*72/25.4) #define TITLE_HEIGHT (8*72/25.4) #define TITLE_GAP (3*72/25.4) typedef struct _GyrusReportData { GyrusAdmin *admin; gdouble n_percen; gint num_users; gchar *mailbox_temp; GtkWidget *button_print; GtkWidget *window_report; GtkWidget *spin_report; GtkTreeView *treeview_report; gdouble font_size; gint lines_per_page; gint num_pages; gint num_lines; gchar *title; } GyrusReportData; typedef enum { COLUMN_FOLDER = 0, COLUMN_MAILBOX, COLUMN_PERCENTAGE, COLUMN_QUOTA_LIMIT, COLUMN_QUOTA_USED, NUM_COLUMN } GyrusReportColumn; static void gyrus_report_on_button_cancel_clicked (GtkWidget *widget, GyrusReportData *report); static void gyrus_report_on_button_update_clicked (GtkWidget *widget, GyrusReportData *report); static gboolean gyrus_report_evaluate_quota (GtkTreeModel *model, GtkTreePath *path, GtkTreeIter *iter, gpointer data); static GtkTreeView * gyrus_report_initialize_tree_view (GtkTreeView *treeview_report); static void gyrus_report_on_delete_event_window_report (GtkWidget *widget, GdkEvent *event, GyrusReportData *report); static void gyrus_report_on_button_print_clicked(GtkWidget *widget, GyrusReportData *report); /* read glade file, connect signal and show window */ void gyrus_report_show_report (GyrusAdmin *admin) { GtkBuilder *builder; GtkWidget *button_cancel; GtkWidget *button_update; GyrusReportData *report; report = g_new0 (GyrusReportData,1); report->mailbox_temp = NULL; report->admin = admin; builder = gtk_builder_new (); gtk_builder_add_from_resource (builder, "/org/gnome/gyrus/report.xml", NULL); report->window_report = GTK_WIDGET (gtk_builder_get_object (builder, "window-report")); button_cancel = GTK_WIDGET (gtk_builder_get_object (builder, "button-cancel")); button_update = GTK_WIDGET (gtk_builder_get_object (builder, "button-update")); report->spin_report = GTK_WIDGET (gtk_builder_get_object (builder, "spinbutton-percentage")); report->treeview_report = GTK_TREE_VIEW (gtk_builder_get_object (builder,"treeview-report")); report->button_print = GTK_WIDGET (gtk_builder_get_object (builder, "button-print")); gtk_widget_set_sensitive (report->button_print, FALSE); /* set title */ report->title = g_strdup_printf (_("Mailbox space usage report for %s"), gyrus_admin_get_current_session_name (admin)); gtk_window_set_title (GTK_WINDOW (report->window_report), report->title); /* initialize treeview_report */ report->treeview_report = gyrus_report_initialize_tree_view (report->treeview_report); /* signal */ g_signal_connect (G_OBJECT (report->window_report), "delete_event", G_CALLBACK (gyrus_report_on_delete_event_window_report), report); g_signal_connect (G_OBJECT (button_cancel), "clicked", G_CALLBACK (gyrus_report_on_button_cancel_clicked), report); g_signal_connect (G_OBJECT (button_update), "clicked", G_CALLBACK (gyrus_report_on_button_update_clicked), report); g_signal_connect (G_OBJECT (report->button_print), "clicked", G_CALLBACK (gyrus_report_on_button_print_clicked), report); gtk_widget_show_all (report->window_report); g_object_unref (builder); } static void gyrus_report_cell_data_func (GtkTreeViewColumn *tree_column, GtkCellRenderer *renderer, GtkTreeModel *tree_model, GtkTreeIter *iter, gpointer data) { gdouble perc; gchar buf[20]; gtk_tree_model_get(tree_model, iter, COLUMN_PERCENTAGE, &perc, -1); g_snprintf(buf, sizeof(buf), "%.1f", perc); g_object_set(renderer, "text", buf, NULL); } /* initialize treeview report*/ static GtkTreeView * gyrus_report_initialize_tree_view (GtkTreeView *treeview_report) { GtkTreeViewColumn* column; GtkCellRenderer *renderer; GtkTreeModel *model; gtk_tree_view_set_reorderable (treeview_report, FALSE); /* new column user and cell with pixbuf */ column = gtk_tree_view_column_new (); gtk_tree_view_column_set_title (column, _("Users")); renderer = gtk_cell_renderer_pixbuf_new (); gtk_tree_view_column_pack_start (column, renderer, FALSE); g_object_set (G_OBJECT (renderer), "stock-size", GTK_ICON_SIZE_LARGE_TOOLBAR, NULL); gtk_tree_view_column_set_attributes (column, renderer, "icon-name", COLUMN_FOLDER, NULL); renderer = gtk_cell_renderer_text_new (); gtk_tree_view_column_pack_start (column, renderer, FALSE); gtk_tree_view_column_set_attributes (column, renderer, "text", COLUMN_MAILBOX, NULL); gtk_tree_view_append_column (treeview_report, column); /* new column quota */ column = gtk_tree_view_column_new (); gtk_tree_view_column_set_title (column, _("Quota (%)")); renderer = gtk_cell_renderer_text_new (); gtk_tree_view_column_pack_start (column, renderer, FALSE); gtk_tree_view_column_set_cell_data_func(column, renderer, gyrus_report_cell_data_func, NULL, NULL); gtk_tree_view_column_set_attributes (column, renderer, "text", COLUMN_PERCENTAGE, NULL); gtk_tree_view_append_column (treeview_report, column); /* new column assigned */ column = gtk_tree_view_column_new (); gtk_tree_view_column_set_title (column, _("Assigned (KB)")); renderer = gtk_cell_renderer_text_new (); gtk_tree_view_column_pack_start (column, renderer, FALSE); gtk_tree_view_column_set_attributes (column, renderer, "text", COLUMN_QUOTA_LIMIT, NULL); gtk_tree_view_append_column (treeview_report, column); /* new column used */ column = gtk_tree_view_column_new (); gtk_tree_view_column_set_title (column, _("Used (KB)")); renderer = gtk_cell_renderer_text_new (); gtk_tree_view_column_pack_start (column, renderer, FALSE); gtk_tree_view_column_set_attributes (column, renderer, "text", COLUMN_QUOTA_USED, NULL); gtk_tree_view_append_column (treeview_report, column); /* create model */ model = GTK_TREE_MODEL (gtk_list_store_new (NUM_COLUMN, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_INT, G_TYPE_INT, G_TYPE_INT)); gtk_tree_view_set_model (treeview_report, model); return treeview_report; } /* close window */ static void gyrus_report_on_delete_event_window_report (GtkWidget *widget, GdkEvent *event, GyrusReportData *report) { gyrus_report_on_button_cancel_clicked (NULL,report); } /* close window */ static void gyrus_report_on_button_cancel_clicked (GtkWidget *widget, GyrusReportData *report) { gtk_widget_destroy (report->window_report); g_free (report->title); g_free (report); } /* compare each mailbox */ static void gyrus_report_on_button_update_clicked (GtkWidget *widget, GyrusReportData *report) { GtkListStore *store; GtkTreeViewColumn *column; GtkTreeView *treeview; gchar *msg; GyrusAdmin *admin; GtkTreeModel *model; admin = report->admin; /* get value */ report->n_percen = gtk_spin_button_get_value (GTK_SPIN_BUTTON(report->spin_report)); /* clear store */ store = GTK_LIST_STORE (gtk_tree_view_get_model (report->treeview_report)); gtk_list_store_clear (store); /* get model of treeview users */ treeview = gyrus_admin_get_users_treeview (admin); model = gtk_tree_view_get_model (treeview); /* for each user */ gtk_tree_model_foreach (model, gyrus_report_evaluate_quota, report); /* get the number of users in the tree */ report->num_users = gtk_tree_model_iter_n_children (GTK_TREE_MODEL(store), NULL); column = gtk_tree_view_get_column (GTK_TREE_VIEW(report->treeview_report), 0); msg = g_strdup_printf (_("Users (%d)"), report->num_users); gtk_tree_view_column_set_title (column, msg); /* enable/disable button print */ if (report->num_users > 0){ gtk_widget_set_sensitive (report->button_print, TRUE); }else{ gtk_widget_set_sensitive (report->button_print, FALSE); } g_free (msg); g_object_unref (treeview); } /* evaluate percentage */ static gboolean gyrus_report_evaluate_quota (GtkTreeModel *model, GtkTreePath *path, GtkTreeIter *iter, gpointer data) { GyrusReportData *report = data; GyrusAdmin *admin = report->admin; gchar *mailbox; gint quota_limit, quota_used; gint per_user; gchar *msg; gfloat temp_per; gchar **v_mailbox; GtkListStore *store; GtkTreeIter iter_new; gint per = report->n_percen; gboolean passed = TRUE; store = GTK_LIST_STORE (gtk_tree_view_get_model (report->treeview_report)); /* get mailbox */ gtk_tree_model_get (model, iter, COL_MAILBOX_NAME, &mailbox, -1); /* get quota of mailbox */ if (gyrus_admin_mailbox_get_quota (admin, mailbox, "a_limit, "a_used, &msg) && quota_limit > 0) { #define ALEJANDRO_FILTER #ifdef ALEJANDRO_FILTER /* filter for main folder */ v_mailbox = g_strsplit (mailbox, gyrus_admin_get_separator_char (admin), -1); /* first mailbox */ if (report->mailbox_temp==NULL){ report->mailbox_temp = v_mailbox[1]; passed = TRUE; }else{ /* same mailbox? */ if (strcmp(report->mailbox_temp,v_mailbox[1])==0){ passed = FALSE; }else{ /* other mailbox */ report->mailbox_temp = v_mailbox[1]; passed = TRUE; } } if (passed){ temp_per = ((quota_used * 100 )/ quota_limit); per_user = (gint) temp_per; if (per_user >= per){ /* add user to treeview */ gtk_list_store_append (store, &iter_new); gtk_list_store_set (store, &iter_new, COLUMN_FOLDER, "folder", COLUMN_MAILBOX, v_mailbox[1], COLUMN_PERCENTAGE, per_user, COLUMN_QUOTA_LIMIT, quota_limit, COLUMN_QUOTA_USED, quota_used, -1); } } g_strfreev (v_mailbox); #else temp_per = ((quota_used * 100 )/ quota_limit); per_user = (gint) temp_per; if (per_user >= per){ /* add user to treeview */ gtk_list_store_append (store, &iter_new); gtk_list_store_set (store, &iter_new, COLUMN_FOLDER, "folder", COLUMN_MAILBOX, mailbox, COLUMN_PERCENTAGE, per_user, COLUMN_QUOTA_LIMIT, quota_limit, COLUMN_QUOTA_USED, quota_used, -1); } #endif } else { g_free (msg); } g_free (mailbox); return FALSE; } static void begin_print (GtkPrintOperation *operation, GtkPrintContext *context, gpointer user_data) { GyrusReportData *report; double height; report = (GyrusReportData *) user_data; height = gtk_print_context_get_height (context) - HEADER_HEIGHT - HEADER_GAP - TITLE_HEIGHT - TITLE_GAP; report->lines_per_page = floor (height / report->font_size); report->num_pages = (report->num_users - 1) / report->lines_per_page + 1; gtk_print_operation_set_n_pages (operation, report->num_pages); } static void draw_page (GtkPrintOperation *operation, GtkPrintContext *context, gint page_nr, gpointer user_data) { cairo_t *cr; PangoLayout *layout; gint text_width, text_height; gdouble width; gint line, i; PangoFontDescription *desc; gchar *page_str; GyrusReportData *report; GtkTreeModel *model; GtkTreeIter iter; report = (GyrusReportData *)user_data; cr = gtk_print_context_get_cairo_context (context); width = gtk_print_context_get_width (context); cairo_rectangle (cr, 0, 0, width, HEADER_HEIGHT); cairo_set_source_rgb (cr, 0.8, 0.8, 0.8); cairo_fill_preserve (cr); cairo_set_source_rgb (cr, 0, 0, 0); cairo_set_line_width (cr, 1); cairo_stroke (cr); layout = gtk_print_context_create_pango_layout (context); desc = pango_font_description_from_string ("sans 14"); pango_layout_set_font_description (layout, desc); pango_font_description_free (desc); pango_layout_set_text (layout, report->title, -1); pango_layout_get_pixel_size (layout, &text_width, &text_height); if (text_width > width) { pango_layout_set_width (layout, width); pango_layout_set_ellipsize (layout, PANGO_ELLIPSIZE_START); pango_layout_get_pixel_size (layout, &text_width, &text_height); } cairo_move_to (cr, (width - text_width) / 2, (HEADER_HEIGHT - text_height) / 2); pango_cairo_show_layout (cr, layout); /* Translators: this represents the number of pages being printed. */ page_str = g_strdup_printf (_("%d/%d"), page_nr + 1, report->num_pages); pango_layout_set_text (layout, page_str, -1); g_free (page_str); pango_layout_set_width (layout, -1); pango_layout_get_pixel_size (layout, &text_width, &text_height); cairo_move_to (cr, width - text_width - 4, (HEADER_HEIGHT - text_height) / 2); pango_cairo_show_layout (cr, layout); g_object_unref (layout); layout = gtk_print_context_create_pango_layout (context); desc = pango_font_description_from_string ("sans"); pango_font_description_set_size (desc, report->font_size * PANGO_SCALE); pango_layout_set_font_description (layout, desc); pango_font_description_free (desc); model = gtk_tree_view_get_model (report->treeview_report); pango_layout_get_pixel_size (layout, &text_width, &text_height); cairo_move_to (cr, 0, HEADER_HEIGHT + HEADER_GAP + (TITLE_HEIGHT - text_height)/2); pango_layout_set_text (layout, _("User"), -1); pango_cairo_show_layout (cr, layout); cairo_rel_move_to (cr, 130, 0); pango_layout_set_text (layout, _("Quota (%)"), -1); pango_cairo_show_layout (cr, layout); cairo_rel_move_to (cr, 120, 0); pango_layout_set_text (layout, _("Assigned (KB)"), -1); pango_cairo_show_layout (cr, layout); cairo_rel_move_to (cr, 120, 0); pango_layout_set_text (layout, _("Used (KB)"), -1); pango_cairo_show_layout (cr, layout); g_object_unref (layout); cairo_set_source_rgb (cr, 0, 0, 0); cairo_move_to (cr, 0, HEADER_HEIGHT + HEADER_GAP + TITLE_HEIGHT); cairo_rel_line_to (cr, width, 0); cairo_set_line_width (cr, 1); cairo_stroke (cr); layout = gtk_print_context_create_pango_layout (context); desc = pango_font_description_from_string ("sans"); pango_font_description_set_size (desc, report->font_size * PANGO_SCALE); pango_layout_set_font_description (layout, desc); pango_font_description_free (desc); pango_layout_get_pixel_size (layout, &text_width, &text_height); cairo_move_to (cr, 0, HEADER_HEIGHT + HEADER_GAP + TITLE_HEIGHT + TITLE_GAP); gtk_tree_model_get_iter_first (model, &iter); line = page_nr * report->lines_per_page; for (i = 0; i < report->lines_per_page && line < report->num_users; i++) { gint quota; gint assigned; gint used; gchar *str; gchar *mailbox; gtk_tree_model_get (model, &iter, COLUMN_MAILBOX, &mailbox, COLUMN_PERCENTAGE, "a, COLUMN_QUOTA_LIMIT, &assigned, COLUMN_QUOTA_USED, &used, -1); pango_layout_set_text (layout, mailbox, -1); pango_cairo_show_layout (cr, layout); cairo_rel_move_to (cr, 130, 0); g_free (mailbox); str = g_strdup_printf ("%d", quota); pango_layout_set_text (layout, str, -1); g_free (str); pango_cairo_show_layout (cr, layout); cairo_rel_move_to (cr, 120, 0); str = g_strdup_printf ("%d", assigned); pango_layout_set_text (layout, str, -1); g_free (str); pango_cairo_show_layout (cr, layout); cairo_rel_move_to (cr, 120, 0); str = g_strdup_printf ("%d", used); pango_layout_set_text (layout, str, -1); g_free (str); pango_cairo_show_layout (cr, layout); cairo_rel_move_to (cr, -370, report->font_size); line++; gtk_tree_model_iter_next (model, &iter); } g_object_unref (layout); } /* show print dialog */ static void gyrus_report_on_button_print_clicked(GtkWidget *widget, GyrusReportData *report) { GtkPrintOperation *operation; GtkWidget *window; GtkWidget *dialog; GError *error = NULL; /* Create the objects */ operation = gtk_print_operation_new (); window = gtk_widget_get_toplevel (widget); report->font_size = 12.0; g_signal_connect (G_OBJECT (operation), "begin-print", G_CALLBACK (begin_print), report); g_signal_connect (G_OBJECT (operation), "draw-page", G_CALLBACK (draw_page), report); /* g_signal_connect (G_OBJECT (operation), "end-print", */ /* G_CALLBACK (end_print), report); */ gtk_print_operation_set_use_full_page (operation, FALSE); gtk_print_operation_set_unit (operation, GTK_UNIT_POINTS); gtk_print_operation_run (operation, GTK_PRINT_OPERATION_ACTION_PRINT_DIALOG, GTK_WINDOW (window), &error); if (error) { dialog = gtk_message_dialog_new (GTK_WINDOW (window), GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_ERROR, GTK_BUTTONS_CLOSE, "%s", error->message); g_error_free (error); gtk_dialog_run (GTK_DIALOG (dialog)); gtk_widget_destroy (dialog); } } gyrus-0.4.2/src/gyrus-report.h000066400000000000000000000016071426522072200163160ustar00rootroot00000000000000/* gyrus-report.h GYRUS -- GNOME Cyrus Administrator. Copyright (C) 2005 Alejandro Valdés This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, see . */ #ifndef GYRUS_REPORT_H #define GYRUS_REPORT_H #include "gyrus-admin.h" void gyrus_report_show_report (GyrusAdmin *admin); #endif /* GYRUS_REPORT_H */ gyrus-0.4.2/src/gyrus-session.c000066400000000000000000000632371426522072200164700ustar00rootroot00000000000000/* gyrus-session.c GYRUS -- GNOME Cyrus Administrator GConf sessions storage. Copyright (C) 2003-2004 Alejandro Valdes J. Copyright (C) 2003-2004 Jorge Bustos B. Copyright (C) 2003-2005 Claudio Saavedra V. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, see . */ #include #include #include #include #include #include "glib/gi18n.h" #include "gyrus-common.h" #include "gyrus-main-app.h" #include "gyrus-admin.h" #include "gyrus-session.h" enum { COLUMN_NAME, COLUMN_HOST, COLUMN_USER, COLUMN_PORT, COLUMN_SEP_CHAR, COLUMN_USETLS, NUM_COLUMN }; /* Function Prototypes */ static void gyrus_session_add_session_to_treeview (GyrusSession *); static void gyrus_session_set_defaults_from_session (GyrusSession *); GyrusSession * gyrus_session_new_from_interface (void); static void gyrus_session_set_treeview (void); static GyrusSession * gyrus_session_get_selected_session (gboolean remove); static void gyrus_session_open (GyrusSession *session, gpointer user_data); static void gyrus_session_list_set_sensitive (gboolean sensitive); static void gyrus_session_edit_load_interface (gpointer user_data); void gyrus_session_load_gconf_settings (void); static void gyrus_session_edit_session (GyrusSession *session); static void gyrus_session_append_session (GyrusSession *session); static void gyrus_session_select_session (GyrusSession *session); static GSettings *settings = NULL; static GtkWidget *window = NULL; static GtkWidget *window_edit = NULL; static GtkWidget *checkbutton_secure; static GtkWidget *entry_host; static GtkWidget *entry_user; static GtkWidget *entry_passwd; static GtkWidget *combobox_sep_char; static GtkWidget *button_new; static GtkWidget *button_open; static GtkWidget *button_delete; static GtkWidget *button_cancel; static GtkWidget *button_properties; static GtkWidget *spinbutton_port; static GtkWidget *entry_name; static GtkWidget *treeview_sessions; static GtkTreeModel *model_sessions; static GtkListStore *model_separator; static GtkWidget *button_session_edit_ok; static GtkWidget *button_session_edit_cancel; /* static void gyrus_session_debug_print_stored_sessions (GSList *sessions) { GSList *iter; gchar *tmp; for (iter = sessions; iter != NULL; iter = g_slist_next (iter)) { tmp = iter->data; g_print (": %s\n", tmp); } } */ static void gyrus_session_list_free (GSList *sessions) { GSList *iter; for (iter = sessions; iter != NULL; iter = g_slist_next (iter)) { g_free (iter->data); } g_slist_free (sessions); sessions = NULL; } /*** module callbacks ***/ static void gyrus_session_checkbutton_secure_toggled (GtkWidget *widget, gpointer data) { g_return_if_fail (GTK_IS_SPIN_BUTTON (data)); gtk_spin_button_set_value (GTK_SPIN_BUTTON (data), gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (widget)) ? 993 : 143); } static void gyrus_session_edit_on_button_cancel_clicked (GtkWidget *widget, gpointer user_data) { gtk_widget_destroy (window_edit); } static void gyrus_session_edit_on_button_ok_clicked (GtkWidget *widget, gpointer user_data) { void (*GyrusSessionEditedFunc)(GyrusSession *) = user_data; GyrusSession *session; session = gyrus_session_new_from_interface (); GyrusSessionEditedFunc (session); gtk_widget_destroy (window_edit); gyrus_session_select_session (session); gtk_widget_grab_focus (button_open); gyrus_session_free (session); } static void gyrus_session_on_button_properties_clicked (GtkWidget *widget, gpointer user_data) { GyrusSession *session = gyrus_session_get_selected_session (FALSE); gyrus_session_edit_load_interface (user_data); gtk_window_set_title (GTK_WINDOW (window_edit), _("Edit session")); gtk_widget_set_sensitive (entry_name, FALSE); g_signal_connect (G_OBJECT (button_session_edit_ok), "clicked", G_CALLBACK (gyrus_session_edit_on_button_ok_clicked), gyrus_session_edit_session); gyrus_session_set_defaults_from_session (session); gyrus_session_free (session); } static void gyrus_session_on_button_new_clicked (GtkWidget *widget, gpointer user_data) { gyrus_session_edit_load_interface (user_data); gtk_window_set_title (GTK_WINDOW (window_edit), _("New session")); g_signal_connect (G_OBJECT (button_session_edit_ok), "clicked", G_CALLBACK (gyrus_session_edit_on_button_ok_clicked), gyrus_session_append_session); } static void gyrus_session_on_button_open_clicked (GtkWidget *widget, gpointer user_data) { GyrusSession *session = gyrus_session_get_selected_session (FALSE); gyrus_session_open (session, user_data); gyrus_session_free (session); } static void gyrus_session_on_button_delete_session_clicked (GtkWidget *widget, gpointer user_data) { gchar *path; GyrusSession *session = gyrus_session_get_selected_session (TRUE); GSettings *psettings; GVariant *var, *item; GVariantIter *iter; GVariantBuilder builder; GSList *sessions = NULL, *element; var = g_settings_get_value (settings, "stored-sessions"); g_variant_get (var, "as", &iter); while ((item = g_variant_iter_next_value (iter))) { g_variant_get (item, "s", &path); sessions = g_slist_append (sessions, g_strdup (path)); g_free (path); g_variant_unref (item); } g_variant_iter_free (iter); g_variant_unref (var); element = g_slist_find_custom (sessions, session->name, (GCompareFunc) g_ascii_strcasecmp); if (element) { g_free (element->data); sessions = g_slist_delete_link (sessions, element); } g_variant_builder_init (&builder, G_VARIANT_TYPE ("as")); for (element = sessions; element; element = element->next) g_variant_builder_add (&builder, "s", (gchar *) element->data); g_settings_set_value (settings, "stored-sessions", g_variant_builder_end (&builder)); gyrus_session_list_free (sessions); path = g_strconcat (PATH_SESSIONS, session->name, "/", NULL); psettings = g_settings_new_with_path (SCHEMA, path); g_settings_delay (psettings); g_settings_reset (psettings, "host"); g_settings_reset (psettings, "port"); g_settings_reset (psettings, "user"); g_settings_reset (psettings, "separator-char"); g_settings_reset (psettings, "use-tls"); g_settings_apply (psettings); g_free (path); g_object_unref (psettings); gyrus_session_list_set_sensitive (FALSE); gyrus_session_free (session); } static void gyrus_session_on_button_cancel_clicked (GtkWidget *widget, gpointer user_data) { gtk_widget_destroy (window); } static void gyrus_session_on_row_activated (GtkTreeView *tree_view, GtkTreePath *path, GtkTreeViewColumn *column, gpointer user_data) { GyrusSession *session = gyrus_session_get_selected_session (FALSE); gyrus_session_open (session, user_data); gyrus_session_free (session); } static void gyrus_session_list_set_sensitive (gboolean sensitive) { gtk_widget_set_sensitive (button_open, sensitive); gtk_widget_set_sensitive (button_delete, sensitive); gtk_widget_set_sensitive (button_properties, sensitive); } static void gyrus_session_on_entry_changed (GtkEditable *editable, gpointer user_data) { GtkWidget *widget = GTK_WIDGET (user_data); gboolean sensitive = gyrus_gtk_entry_has_text (GTK_ENTRY (entry_name)) && gyrus_gtk_entry_has_text (GTK_ENTRY (entry_host)) && /* gyrus_gtk_entry_has_text (GTK_ENTRY (entry_passwd) && */ gyrus_gtk_entry_has_text (GTK_ENTRY (entry_user)); gtk_widget_set_sensitive (widget, sensitive); } /* save changes in @session in gconf */ static void gyrus_session_edit_session (GyrusSession *session) { gchar *path; GSettings *psettings; path = g_strconcat (PATH_SESSIONS, session->name, "/", NULL); psettings = g_settings_new_with_path (SCHEMA, path); g_settings_delay (psettings); g_settings_set_string (psettings, "host", session->host); g_settings_set_int (psettings, "port", session->port); g_settings_set_string (psettings, "user", session->user); g_settings_set_string (psettings, "separator-char", session->sep_char); g_settings_set_boolean (psettings, "use-tls", session->usetls); g_settings_apply (psettings); g_free (path); g_object_unref (psettings); gyrus_session_load_gconf_settings(); } static void gyrus_session_append_session (GyrusSession *new) { gchar *path; gchar *name; GSList *sessions = NULL, *element; GSettings *psettings; GVariant *var, *item; GVariantIter *iter; GVariantBuilder builder; g_return_if_fail (new != NULL); if (new->name == NULL) { gyrus_common_show_message (GTK_WINDOW (window), GTK_MESSAGE_ERROR, _("A session name is required.")); return; } var = g_settings_get_value (settings, "stored-sessions"); g_variant_get (var, "as", &iter); while ((item = g_variant_iter_next_value (iter))) { g_variant_get (item, "s", &name); sessions = g_slist_append (sessions, g_strdup (name)); g_free (name); g_variant_unref (item); } g_variant_iter_free (iter); g_variant_unref (var); element = g_slist_find_custom (sessions, new->name, (GCompareFunc) g_ascii_strcasecmp); if (element) { gchar * msg = g_strdup_printf (_("Session named \"%s\" already exists."), new->name); gyrus_common_show_message(GTK_WINDOW (window), GTK_MESSAGE_ERROR, msg); g_free (msg); gyrus_session_list_free (sessions); return; } name = g_strdup (new->name); sessions = g_slist_append (sessions, (gpointer) name); g_variant_builder_init (&builder, G_VARIANT_TYPE ("as")); for (element = sessions; element; element = element->next) g_variant_builder_add (&builder, "s", (gchar *) element->data); g_settings_set_value (settings, "stored-sessions", g_variant_builder_end (&builder)); gyrus_session_list_free (sessions); path = g_strconcat (PATH_SESSIONS, new->name, "/", NULL); psettings = g_settings_new_with_path (SCHEMA, path); g_settings_delay (psettings); g_settings_set_string (psettings, "host", new->host); g_settings_set_int (psettings, "port", new->port); g_settings_set_string (psettings, "user", new->user); g_settings_set_string (psettings, "separator-char", new->sep_char); g_settings_set_boolean (psettings, "use-tls", new->usetls); g_settings_apply (psettings); g_free (path); g_object_unref (psettings); gyrus_session_load_gconf_settings(); } static void gyrus_session_set_defaults_from_session (GyrusSession *session) { gint value = 0; g_return_if_fail (session); gtk_entry_set_text (GTK_ENTRY (entry_host), session->host); gtk_spin_button_set_value (GTK_SPIN_BUTTON (spinbutton_port), (gdouble) session->port); gtk_entry_set_text (GTK_ENTRY (entry_user), session->user); gtk_entry_set_text (GTK_ENTRY (entry_name), session->name); if (strcmp (session->sep_char, ".") == 0) value = 0; else if (strcmp (session->sep_char, "/") == 0) value = 1; else if (strcmp (session->sep_char, "auto") == 0) value = 2; gtk_combo_box_set_active (GTK_COMBO_BOX (combobox_sep_char), value); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (checkbutton_secure), session->usetls); } GyrusSession * gyrus_session_new_from_interface (void) { GyrusSession *session = g_new (GyrusSession, 1); if (g_utf8_strlen (gtk_entry_get_text (GTK_ENTRY (entry_host)), -1)) session->host = g_strdup (gtk_entry_get_text (GTK_ENTRY (entry_host))); else session->host = NULL; session->port = gtk_spin_button_get_value_as_int (GTK_SPIN_BUTTON (spinbutton_port)); if (g_utf8_strlen (gtk_entry_get_text (GTK_ENTRY (entry_user)), -1)) session->user = g_strdup (gtk_entry_get_text (GTK_ENTRY (entry_user))); else session->user = NULL; if (g_utf8_strlen (gtk_entry_get_text (GTK_ENTRY (entry_name)), -1)) session->name = g_strdup (gtk_entry_get_text (GTK_ENTRY (entry_name))); else session->name = NULL; if (g_utf8_strlen (gtk_entry_get_text (GTK_ENTRY (entry_passwd)), -1)) session->passwd = g_strdup (gtk_entry_get_text (GTK_ENTRY (entry_passwd))); else session->passwd = NULL; session->sep_char = gtk_combo_box_text_get_active_text (GTK_COMBO_BOX_TEXT (combobox_sep_char)); if (!g_utf8_strlen (session->sep_char, -1)) session->sep_char = g_strdup ("."); else if (strcmp (session->sep_char, _("Autodetect")) == 0) { g_free (session->sep_char); session->sep_char = g_strdup ("auto"); } session->usetls = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (checkbutton_secure)); return session; } /* adds a session to the list and to the treeview */ static void gyrus_session_add_session_to_treeview (GyrusSession *session) { GtkTreeIter iter; gtk_list_store_append (GTK_LIST_STORE (model_sessions), &iter); gtk_list_store_set (GTK_LIST_STORE (model_sessions), &iter, COLUMN_NAME, session->name, COLUMN_HOST, session->host, COLUMN_USER, session->user, COLUMN_PORT, session->port, COLUMN_SEP_CHAR, session->sep_char, COLUMN_USETLS, session->usetls, -1); } static gboolean gyrus_session_on_selection_changed (GtkTreeSelection *selection, GtkTreeModel *model, GtkTreePath *path, gboolean path_currently_selected, gpointer data) { gyrus_session_list_set_sensitive (!path_currently_selected); return TRUE; } static gboolean gyrus_session_treeview_on_key_press_event (GtkWidget *widget, GdkEventKey *event, gpointer user_data) { GtkTreeSelection *selection; GtkTreeView *treeview = GTK_TREE_VIEW (widget); selection = gtk_tree_view_get_selection (treeview); if (gtk_tree_selection_count_selected_rows (selection) == 0) return FALSE; switch (event->keyval) { case GDK_KEY_Delete: gtk_button_clicked (GTK_BUTTON (button_delete)); return TRUE; default: break; } return FALSE; } static gboolean gyrus_session_on_key_press_event (GtkWidget *widget, GdkEventKey *event, gpointer user_data) { /* I've used a switch/case here because I am thinking in possible future key events */ switch (event->keyval) { case GDK_KEY_Escape: gtk_button_clicked (GTK_BUTTON (button_cancel)); return TRUE; default: break; } return FALSE; } static void gyrus_session_set_treeview (void) { GtkCellRenderer *renderer; GtkTreeViewColumn *column; GtkTreeSelection *selection; renderer = gtk_cell_renderer_text_new (); column = gtk_tree_view_column_new_with_attributes (_("Session"), renderer, "text", COLUMN_NAME, NULL); gtk_tree_view_column_set_sort_column_id (column, COLUMN_NAME); gtk_tree_view_append_column (GTK_TREE_VIEW (treeview_sessions), column); selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (treeview_sessions)); gtk_tree_selection_set_select_function (selection, gyrus_session_on_selection_changed, NULL, NULL); g_signal_connect (G_OBJECT (treeview_sessions), "key-press-event", G_CALLBACK (gyrus_session_treeview_on_key_press_event), NULL); } static void gyrus_session_create_model_sessions (void) { GtkListStore *model; model = gtk_list_store_new (NUM_COLUMN, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_INT, G_TYPE_STRING, G_TYPE_BOOLEAN); model_sessions = GTK_TREE_MODEL (model); } static void gyrus_session_create_model_separator (void) { GtkTreeIter iter; model_separator = gtk_list_store_new (1,G_TYPE_STRING); gtk_list_store_append(GTK_LIST_STORE(model_separator), &iter); gtk_list_store_set (GTK_LIST_STORE(model_separator), &iter,0,".", -1); gtk_list_store_append(GTK_LIST_STORE(model_separator), &iter); gtk_list_store_set (GTK_LIST_STORE(model_separator), &iter,0,"/", -1); gtk_list_store_append(GTK_LIST_STORE(model_separator), &iter); gtk_list_store_set (GTK_LIST_STORE(model_separator), &iter,0, _("Autodetect"), -1); } /* If remove is TRUE, the selected item is removed from the array */ static GyrusSession * gyrus_session_get_selected_session (gboolean remove) { GtkTreeIter iter; GtkTreeSelection *selection; GyrusSession *session = g_new0 (GyrusSession, 1); selection = gtk_tree_view_get_selection(GTK_TREE_VIEW (treeview_sessions)); if (!gtk_tree_selection_get_selected (selection, NULL, &iter)) return NULL; gtk_tree_model_get (model_sessions, &iter, COLUMN_NAME, &(session->name), COLUMN_HOST, &(session->host), COLUMN_USER, &(session->user), COLUMN_PORT, &(session->port), COLUMN_SEP_CHAR, &(session->sep_char), COLUMN_USETLS, &(session->usetls), -1); if (remove) { gtk_list_store_remove (GTK_LIST_STORE (model_sessions), &iter); } return session; } static GyrusSession * gyrus_session_get_with_name (const gchar *name) { GyrusSession *aux = NULL; GSettings *psettings; gchar *path; aux = g_new0 (GyrusSession, 1); path = g_strconcat (PATH_SESSIONS, name, "/", NULL); psettings = g_settings_new_with_path (SCHEMA, path); aux->name = g_strdup (name); aux->host = g_settings_get_string (psettings, "host"); aux->port = g_settings_get_int (psettings, "port"); aux->user = g_settings_get_string (psettings, "user"); aux->sep_char = g_settings_get_string (psettings, "separator-char"); aux->usetls = g_settings_get_boolean (psettings, "use-tls"); g_free (path); g_object_unref (psettings); return aux; } void gyrus_session_load_gconf_settings (void) { gchar *key; GyrusSession *session = NULL; GSList *sessions = NULL, *aux; GVariant *var, *item; GVariantIter *iter; gtk_tree_view_set_model (GTK_TREE_VIEW (treeview_sessions), model_sessions); var = g_settings_get_value (settings, "stored-sessions"); g_variant_get (var, "as", &iter); while ((item = g_variant_iter_next_value (iter))) { g_variant_get (item, "s", &key); sessions = g_slist_append (sessions, g_strdup (key)); g_free (key); g_variant_unref (item); } g_variant_iter_free (iter); g_variant_unref (var); if (sessions != NULL) { gtk_list_store_clear (GTK_LIST_STORE (model_sessions)); aux = sessions; do { session = gyrus_session_get_with_name ((gchar *) aux->data); gyrus_session_add_session_to_treeview (session); gyrus_session_free (session); aux = g_slist_next (aux); } while (aux != NULL); } gyrus_session_list_free (sessions); } static void gyrus_session_open (GyrusSession *session, gpointer user_data) { GyrusMainApp *app; g_return_if_fail (GYRUS_IS_MAIN_APP (user_data)); app = GYRUS_MAIN_APP (user_data); if (!session->host || !strlen (session->host)) { gyrus_common_show_message(GTK_WINDOW (window), GTK_MESSAGE_ERROR, _("No host specified.")); return; } gyrus_main_app_append_page (GYRUS_MAIN_APP (app), session); gtk_widget_destroy (GTK_WIDGET (window)); } static void gyrus_session_load_interface (gpointer user_data) { GtkBuilder *builder; builder = gtk_builder_new (); gtk_builder_add_from_resource (builder, "/org/gnome/gyrus/sessions.xml", NULL); window = GTK_WIDGET (gtk_builder_get_object (builder, "dialog_sessions")); treeview_sessions = GTK_WIDGET (gtk_builder_get_object (builder, "treeview_sessions")); button_new = GTK_WIDGET (gtk_builder_get_object (builder, "button_new")); button_open = GTK_WIDGET (gtk_builder_get_object (builder, "button_open")); button_delete = GTK_WIDGET (gtk_builder_get_object (builder, "button_delete")); button_cancel = GTK_WIDGET (gtk_builder_get_object (builder, "button_cancel")); button_properties = GTK_WIDGET (gtk_builder_get_object (builder, "button_properties")); /* connect signals */ g_signal_connect (G_OBJECT (window), "delete_event", G_CALLBACK (gtk_widget_destroy), NULL); g_signal_connect (G_OBJECT (button_open), "clicked", G_CALLBACK (gyrus_session_on_button_open_clicked), user_data); g_signal_connect (G_OBJECT (button_properties), "clicked", G_CALLBACK (gyrus_session_on_button_properties_clicked), user_data); g_signal_connect (G_OBJECT (button_new), "clicked", G_CALLBACK (gyrus_session_on_button_new_clicked), user_data); g_signal_connect (G_OBJECT (button_delete), "clicked", G_CALLBACK (gyrus_session_on_button_delete_session_clicked), NULL); g_signal_connect (G_OBJECT (button_cancel), "clicked", G_CALLBACK (gyrus_session_on_button_cancel_clicked), NULL); g_signal_connect (G_OBJECT (window), "key-press-event", G_CALLBACK (gyrus_session_on_key_press_event), NULL); g_signal_connect (G_OBJECT (treeview_sessions), "row-activated", G_CALLBACK (gyrus_session_on_row_activated), user_data); gyrus_session_set_treeview (); gyrus_session_list_set_sensitive (FALSE); gyrus_session_create_model_sessions (); gyrus_session_create_model_separator (); } static void gyrus_session_edit_load_interface (gpointer user_data) { GtkBuilder *builder; GtkCellRenderer *cell; builder = gtk_builder_new (); gtk_builder_add_from_resource (builder, "/org/gnome/gyrus/sessions_edit.xml", NULL); window_edit = GTK_WIDGET (gtk_builder_get_object (builder, "dialog_session_edit")); checkbutton_secure = GTK_WIDGET (gtk_builder_get_object (builder, "checkbutton_secure")); entry_host = GTK_WIDGET (gtk_builder_get_object (builder, "entry_host")); entry_user = GTK_WIDGET (gtk_builder_get_object (builder, "entry_user")); entry_passwd = GTK_WIDGET (gtk_builder_get_object (builder, "entry_passwd")); combobox_sep_char = GTK_WIDGET (gtk_builder_get_object (builder, "combobox_sep_char")); spinbutton_port = GTK_WIDGET (gtk_builder_get_object (builder, "spinbutton_port")); button_session_edit_ok = GTK_WIDGET (gtk_builder_get_object (builder, "button_session_edit_ok")); button_session_edit_cancel = GTK_WIDGET (gtk_builder_get_object (builder, "button_session_edit_cancel")); entry_name = GTK_WIDGET (gtk_builder_get_object (builder, "entry_name")); g_object_unref (builder); /* set model to combobox of mailbox hierarchy separator */ gtk_combo_box_set_model (GTK_COMBO_BOX (combobox_sep_char), GTK_TREE_MODEL (model_separator)); cell = gtk_cell_renderer_text_new(); gtk_cell_layout_pack_start(GTK_CELL_LAYOUT (combobox_sep_char), cell, TRUE); gtk_cell_layout_set_attributes(GTK_CELL_LAYOUT (combobox_sep_char), cell, "text", 0, NULL); gtk_spin_button_set_value (GTK_SPIN_BUTTON (spinbutton_port), 143); g_signal_connect (G_OBJECT (button_session_edit_cancel), "clicked", G_CALLBACK (gyrus_session_edit_on_button_cancel_clicked), NULL); g_signal_connect (G_OBJECT (checkbutton_secure), "toggled", G_CALLBACK (gyrus_session_checkbutton_secure_toggled), (gpointer) spinbutton_port); g_signal_connect (G_OBJECT (entry_host), "changed", G_CALLBACK (gyrus_session_on_entry_changed), button_session_edit_ok); g_signal_connect (G_OBJECT (entry_user), "changed", G_CALLBACK (gyrus_session_on_entry_changed), button_session_edit_ok); g_signal_connect (G_OBJECT (entry_passwd), "changed", G_CALLBACK (gyrus_session_on_entry_changed), button_session_edit_ok); g_signal_connect (G_OBJECT (entry_name), "changed", G_CALLBACK (gyrus_session_on_entry_changed), button_session_edit_ok); gtk_widget_set_sensitive (button_session_edit_ok, FALSE); gtk_combo_box_set_active (GTK_COMBO_BOX (combobox_sep_char), 0); gtk_window_set_modal (GTK_WINDOW (window_edit), TRUE); gtk_window_set_transient_for (GTK_WINDOW (window_edit), GTK_WINDOW (window)); gtk_widget_grab_default (button_session_edit_ok); } /* show window sessions */ void gyrus_session_show_sessions (GtkWidget *widget G_GNUC_UNUSED, gpointer user_data) { GtkTreeIter iter; if (!settings) settings = g_settings_new ("org.gnome.gyrus"); gyrus_session_load_interface (user_data); gtk_window_set_modal (GTK_WINDOW (window), TRUE); gyrus_session_load_gconf_settings (); gtk_tree_sortable_set_sort_column_id (GTK_TREE_SORTABLE(model_sessions), COLUMN_NAME, GTK_SORT_ASCENDING); if (gtk_tree_model_get_iter_first (model_sessions, &iter)) { GtkTreeSelection *selection; selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (treeview_sessions)); gtk_tree_selection_select_iter (selection, &iter); gtk_widget_grab_focus (button_open); } else { gtk_widget_grab_focus (button_new); } gtk_widget_show (window); } static gboolean gyrus_session_seek_session (GtkTreeModel *model, GtkTreePath *path, GtkTreeIter *iter, gpointer user_data) { GyrusSession *session = (GyrusSession *) user_data; gchar *session_name; gtk_tree_model_get (model, iter, COLUMN_NAME, &session_name, -1); if (strcmp (session_name, session->name) == 0) { GtkTreeSelection *selection; selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (treeview_sessions)); gtk_tree_selection_select_iter (selection, iter); g_free (session_name); return TRUE; } else { g_free (session_name); return FALSE; } } /* Selects the given #GyrusSession in the list of the Sessions Dialog. */ static void gyrus_session_select_session (GyrusSession *session) { gtk_tree_model_foreach (model_sessions, gyrus_session_seek_session, session); } /* frees memory used for the GyrusSession structure */ void gyrus_session_free (GyrusSession *session) { g_return_if_fail (session); if (session->name) g_free (session->name); if (session->user) g_free (session->user); if (session->host) g_free (session->host); if (session->passwd) g_free (session->passwd); if (session->sep_char) g_free (session->sep_char); g_free (session); session = NULL; } gyrus-0.4.2/src/gyrus-session.h000066400000000000000000000026131426522072200164640ustar00rootroot00000000000000/* gyrus-session.h GYRUS -- GNOME Cyrus Administrator. Session manager header file. Copyright (C) 2004 Claudio Saavedra V. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, see . */ #ifndef GYRUS_SESSION_H #define GYRUS_SESSION_H #define SCHEMA "org.gnome.gyrus.sessions" #define PATH_SESSIONS "/org/gnome/gyrus/sessions/" typedef struct _GyrusSession GyrusSession; struct _GyrusSession { gchar *name; gchar *host; guint port; gchar *user; gchar *passwd; gchar *sep_char; gboolean usetls; }; /** Callback to load the interface of the sessions system. */ void gyrus_session_show_sessions (GtkWidget *widget G_GNUC_UNUSED, gpointer user_data); /** Frees the memory used for a GyrusSession object. */ void gyrus_session_free (GyrusSession *session); #endif /* GYRUS_SESSION_H */ gyrus-0.4.2/src/meson.build000066400000000000000000000011071426522072200156200ustar00rootroot00000000000000gyrus_sources = [ 'gyrus-admin-acl.c', 'gyrus-main-app.c', 'gyrus-session.c', 'gyrus-dialog-find-mailbox.c', 'gyrus-admin.c', 'gyrus-common.c', 'gyrus-dialog-mailbox-new.c', 'gyrus-report.c', 'gyrus-admin-mailbox.c', gresources ] gnome = import('gnome') marshal_files = gnome.genmarshal('gyrus_marshal', sources: 'gyrus-marshal.list', internal: true, ) m_dep = cc.find_library('m', required : true) executable( 'gyrus', [gyrus_sources], [marshal_files], export_dynamic : true, dependencies : [ gtk_deps, amtk_deps, m_dep, config, ], install : true ) gyrus-0.4.2/tests/000077500000000000000000000000001426522072200140325ustar00rootroot00000000000000gyrus-0.4.2/tests/gyrus-talk.c000066400000000000000000000143161426522072200163050ustar00rootroot00000000000000#include #include #include #include "gyrus-connection.h" #include #define UI_FILE "gyrus-talk.xml" /* Local prototypes */ void init_cb (gpointer a, gpointer b); void reading_data_cb (gpointer a, gpointer b, gchar *g, gint i); void make_connection (void); void disconnect (void); gboolean progress_bar_pulse_func (gpointer data); void wait_response (void); void response_done (void); void send_command (void); void log_append_text (const gchar *text); /* For signals */ void on_window_main_delete_event (GtkWidget *w, gpointer data); #ifdef HAVE_GNUTLS void on_checkbutton_usetls_toggled (GtkWidget *w, gpointer data); #endif void on_button_connect_clicked (GtkButton *b, gpointer data); void on_entry_cmd_activate (GtkWidget *w, gpointer data); void on_button_send_clicked (GtkWidget *w, gpointer data); /* Widgets */ GtkWidget *window_main; GtkEntry *entry_host; GtkCheckButton *checkbutton_usetls; GtkSpinButton *spinbutton_port; GtkButton *button_connect; GtkHBox *hbox_inputs; GtkEntry *entry_cmd; GtkTextView *textview_log; GtkProgressBar *progressbar; guint pulse_func_id; /* Connection data */ gboolean connected = FALSE; /*gboolean gnutls_initialized = FALSE; */ GyrusConnection *conn = NULL; /* Implementation */ void on_window_main_delete_event (GtkWidget *w, gpointer data) { gtk_main_quit (); } #ifdef HAVE_GNUTLS void on_checkbutton_usetls_toggled (GtkWidget *w, gpointer data) { gtk_spin_button_set_value (spinbutton_port, gtk_toggle_button_get_active ( GTK_TOGGLE_BUTTON (checkbutton_usetls)) ? 993 : 143); } #endif void on_button_connect_clicked (GtkButton *b, gpointer data) { if (connected) disconnect (); else make_connection (); } void on_entry_cmd_activate (GtkWidget *w, gpointer data) { send_command (); } void on_button_send_clicked (GtkWidget *w, gpointer data) { send_command (); } void on_connect_response (GyrusConnection *conn, GyrusConnectionStatus status, gpointer user_data) { gchar *str = g_strdup_printf ("*** Connection %s ! ***\n", (status == GYRUS_CONN_DONE) ? "done" : "failed"); log_append_text (str); g_free (str); response_done (); gtk_widget_set_sensitive (GTK_WIDGET (button_connect), FALSE); } void on_data_received (GyrusConnection *conn, const gchar *data, gboolean eod, gpointer user_data) { if (data) log_append_text (data); if (eod) response_done (); } void on_connection_close (GyrusConnection *conn, gpointer user_data) { GtkTextBuffer *buf = gtk_text_view_get_buffer (textview_log); /*gtk_text_buffer_set_text (buf, "", -1);*/ log_append_text ("*** Connection close ***\n"); gtk_widget_set_sensitive (GTK_WIDGET (button_connect), TRUE); } /* Application functions */ void log_append_text (const gchar *text) { GtkTextBuffer *buf = gtk_text_view_get_buffer (textview_log); GtkTextIter iter; gtk_text_buffer_get_end_iter (buf, &iter); gtk_text_buffer_insert (buf, &iter, text, -1); gtk_text_buffer_get_end_iter (buf, &iter); gtk_text_view_scroll_to_iter (textview_log, &iter, 0, FALSE, 0, 0); } void make_connection (void) { gchar *host; wait_response (); host = g_strdup (gtk_entry_get_text (entry_host)); conn = gyrus_connection_new (host, gtk_spin_button_get_value_as_int (spinbutton_port), gtk_toggle_button_get_active ( GTK_TOGGLE_BUTTON (checkbutton_usetls))); g_free (host); /* Connect GyrusConnection signals */ g_signal_connect (conn, "connect_response", G_CALLBACK (on_connect_response), NULL); g_signal_connect (conn, "data_received", G_CALLBACK (on_data_received), NULL); g_signal_connect (conn, "connection_close", G_CALLBACK (on_connection_close), NULL); /* if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (checkbutton_usetls)) && (!gnutls_initialized)) { gnutls_global_init (); gnutls_initialized = TRUE; } */ gyrus_connection_connect (conn); } void disconnect (void) { } /* Callback to move the progressbar while is waiting response */ gboolean progress_bar_pulse_func (gpointer data) { if (pulse_func_id == 0) { gtk_progress_bar_set_fraction (progressbar, 0.0); return FALSE; } gtk_progress_bar_pulse (progressbar); return TRUE; } /* Waiting for server response */ void wait_response (void) { gtk_widget_set_sensitive (GTK_WIDGET (hbox_inputs), FALSE); pulse_func_id = g_timeout_add (125, progress_bar_pulse_func, NULL); g_print ("pulse_func_id = %d\n", pulse_func_id); } void response_done (void) { gtk_widget_set_sensitive (GTK_WIDGET (hbox_inputs), TRUE); pulse_func_id = 0; gtk_window_set_focus (GTK_WINDOW (window_main), GTK_WIDGET (entry_cmd)); } void send_command (void) { gyrus_connection_send (conn, gtk_entry_get_text (entry_cmd)); gtk_entry_set_text (entry_cmd, ""); wait_response (); } int main (int argc, char *argv[]) { GtkBuilder *builder; GError *error = NULL; gnet_init (); gtk_init (&argc, &argv); builder = gtk_builder_new (); if (!gtk_builder_add_from_file (builder, UI_FILE, &error)) { g_warning ("Couldn't load builder file: %s", error->message); g_error_free (error); error = NULL; return 1; } window_main = GTK_WIDGET (gtk_builder_get_object (builder, "window_main")); entry_host = GTK_ENTRY (gtk_builder_get_object (builder, "entry_host")); checkbutton_usetls = GTK_CHECK_BUTTON (gtk_builder_get_object (builder, "checkbutton_usetls")); #ifdef HAVE_GNUTLS g_signal_connect (checkbutton_usetls, "toggled", G_CALLBACK (on_checkbutton_usetls_toggled), NULL); #endif spinbutton_port = GTK_SPIN_BUTTON (gtk_builder_get_object (builder, "spinbutton_port")); button_connect = GTK_BUTTON (gtk_builder_get_object (builder, "button_connect")); textview_log = GTK_TEXT_VIEW (gtk_builder_get_object (builder, "textview_log")); hbox_inputs = GTK_HBOX (gtk_builder_get_object (builder, "hbox_inputs")); entry_cmd = GTK_ENTRY (gtk_builder_get_object (builder, "entry_cmd")); progressbar = GTK_PROGRESS_BAR (gtk_builder_get_object (builder, "progressbar")); gtk_progress_bar_set_text (progressbar, "Ready"); gtk_builder_connect_signals (builder, NULL); g_object_unref (G_OBJECT (builder)); gtk_widget_show_all (window_main); #ifndef HAVE_GNUTLS gtk_widget_hide (GTK_WIDGET (checkbutton_usetls)); #endif gtk_main (); return 0; } gyrus-0.4.2/tests/gyrus-talk.xml000066400000000000000000000727011426522072200166650ustar00rootroot00000000000000 64000 1 10 1 0 143 12 True Talk - Echo client GTK_WINDOW_TOPLEVEL GTK_WIN_POS_NONE False True False gtk-dialog-info True False False GDK_WINDOW_TYPE_HINT_NORMAL GDK_GRAVITY_NORTH_WEST True True False 6 True 0 0.5 GTK_SHADOW_NONE True 0.5 0.5 1 1 6 0 12 0 True 4 2 False 3 3 True Host: False False GTK_JUSTIFY_LEFT False False 0 0.5 0 0 PANGO_ELLIPSIZE_NONE -1 False 0 0 1 0 1 fill True True True True 0 True * False 1 2 0 1 True True Use a secure connection True GTK_RELIEF_NORMAL True False False True 1 2 1 2 fill True Port: False False GTK_JUSTIFY_LEFT False False 0 0.5 0 0 PANGO_ELLIPSIZE_NONE -1 False 0 0 1 2 3 fill True False 0 True True 1 0 False GTK_UPDATE_ALWAYS False False adjustment1 0 False False True False False GTK_JUSTIFY_LEFT False False 0 0.5 0 0 PANGO_ELLIPSIZE_NONE -1 False 0 0 True True 1 2 2 3 fill fill True False 0 True False False GTK_JUSTIFY_LEFT False False 0 0.5 0 0 PANGO_ELLIPSIZE_NONE -1 False 0 0 True True True True GTK_RELIEF_NORMAL True True 0.5 0.5 0 0 0 0 0 0 True False 2 True gtk-connect 4 0.5 0.5 0 0 0 False False True _Connect True False GTK_JUSTIFY_LEFT False False 0.5 0.5 0 0 PANGO_ELLIPSIZE_NONE -1 False 0 0 False False 0 False False 1 2 3 4 fill fill True Connection False GTK_JUSTIFY_LEFT False False 0.5 0.5 0 0 PANGO_ELLIPSIZE_NONE -1 False 0 0 False False True True GTK_POLICY_NEVER GTK_POLICY_ALWAYS GTK_SHADOW_IN GTK_CORNER_TOP_LEFT True True False False True GTK_JUSTIFY_LEFT GTK_WRAP_WORD True 0 0 0 0 0 0 0 True True True False 3 True Command: False False GTK_JUSTIFY_LEFT False False 0.5 0.5 0 0 PANGO_ELLIPSIZE_NONE -1 False 0 0 False False True True True True 0 True * False 0 True True True True GTK_RELIEF_NORMAL True True 0.5 0.5 0 0 0 0 0 0 True False 2 True gtk-jump-to 4 0.5 0.5 0 0 0 False False True _Send True False GTK_JUSTIFY_LEFT False False 0.5 0.5 0 0 PANGO_ELLIPSIZE_NONE -1 False 0 0 False False 0 False False 0 False False True GTK_PROGRESS_LEFT_TO_RIGHT 0 0.10000000149 PANGO_ELLIPSIZE_NONE 0 False False