phamm-0.6.5/0000755000175300017530000000000012643161400010572 5ustar phammphamm-0.6.5/.gitignore0000644000175300017530000000011712643155515012573 0ustar phammconfig.inc.php public/css/bootstrap-theme.css.map public/css/bootstrap.css.map phamm-0.6.5/CHANGELOG0000644000175300017530000001326612643155515012026 0ustar phamm;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;; Phamm - CHANGELOG ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Copyright (c) 2005-2016 Alessandro De Zorzi, Mirko Grava http://www.phamm.org/ Project sponsored by RHX Srl - www.rhx.it Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 0.6.5 20160106 * Bump to Bootstrap v3.3.1 * Improved getttex tools * Added max* attribute support for non BOOL attributes * Improved cleaner.sh 0.6.4 20141206 r.58 * Added random_password() function * Updated phamm.schema * Use max* attribute if exists * Fix minor bugs 0.6.3 20141112 r.53 * Added attribute on Phamm schema ( maxSmtpAuth, maxAntivirus, maxAntiSpam, maxGreyList ) * Modified objectClass VirtualDomain * use of the max* attribute 0.6.2 20140314 r.46 * use of the maxMail attribute * fix minor bugs 0.6.1 20131226 r.41 * fix Alerts and Labels style * renamed password_hash() function for PHP >= 5.5.0 compatibility 0.6.0 20131226 r.36 * Rebuild PHP code in Class * Bootstrap front-end * SVG Phamm Logo 0.5.20 20131007 * Added script vacation.py, this is useful to active vacation (thanks Michele Baldessari) * Added new attribute in phamm-vacation.schema (thanks Mauricio Tavares) * Hide PHP E_DEPRECATED in default ERROR_LEVEL 0.5.19 20111226 * Fixed minor bugs * Added Portuguese translation thanks to Rafael Domingues * Replaced some Deprecated PHP functions (thx to Claudio Strizzolo) 0.5.18 20100331 * Updated OID on phamm-vacation.schema * Updated examples file postfix/main.cf 0.5.17 20091109 * Modified OID 1.3.6.1.4.1.22339.1.1.33 vacationActive (Thanks to jonhattan at faita dot net) * added Jabber and Davical plugins (Thanks to Viva Perversia) * added perversia.net.schema * update French Translations (Thanks to Aldo Reset) * added Danish Translation (Thanks to Alice Kaerast) 0.5.16 20090528 * modify ACL (postmaster may change uid) * added attribute bypassGreyListing on phamm.schema * Add 3 rows for TLS in example for slapd.conf * Added Hungarian translation thanks to Zsolt Jonas * Fixed some minor bugs (Thanks to kabe - jp) * Improve UTF-8 support for welcome message (Thanks to Zsolt Jonas hu) * Fixed VacationStart and VacationEnd data format (Thanks to Zsolt Jonas hu) 0.5.15 20090108 * Changed back-end database fot Slapd from bdb to hdb (example conf) * defined expand to ruleset in the slapd ACL * Added French translation thanks to Aldo Reset * Fixed quota format in domain view * Updated documentations * Added TLS support 0.5.14 20081221 * Improved error messages * Fixed minor bugs * Added Russian translation thanks to Yuri Kozlov * Added Polish translation thanks to Sławomir Paszkiewicz 0.5.13 20081005 * Added phamm-vacation.schema * Clean up config file * Improved select actions "...execute a command" * Added givenName value instead cn * [plugins] added prettyName attribute * [plugins] templates updated * Fix minor bug (Delete attribute values from current attributes with many plugins active) * Translations updated (switch to gettext) - German - thanks to Jan Dankert - Spanish - thanks to jonhattan - Vietnamese - thanks to Clytie Siddall - Italian - thanks to Phamm Team 0.5.12 20080719 Added visible Amavis Spam level control New feature: checking for existing mail (and alias) CSS recoded DTD updated XML plugin templates updated Italian translation updated Added useful static warnings for non correct account configuration Modified postfix transport from virtual to maildrop in sample ldif 0.5.11 20080426 updated ACL, examples and configuration files to Debian standard (rootdn admin instead manager) improved welcome message Headers (From and Return-path) updated ACL files to use only per mail service added ACL examples updated DTD and mail.xml fixed accounts filter by initial updated sample to use LDAP bind v3 added checkAll js function 0.5.10 20080206 fixed md5 hash function updated Dovecot examples updated en_GB.php 0.5.9 20071224 fixed some PHP Notice and Warning fixed XHTML syntax added attribute Autoreply for objectClass VirtualMailAccount in phamm.schema for Vacation and VacationForward without script fork.pl Added sample footer.txt and header.txt for gnarwl Updated gnarwl.cfg, postfix transport, main.cf, master.cf samples moved AUTHORS to COPYRIGHT updated INSTALL and README removed schema/contrib/*schema 0.5.8 20071218 Changes required by Debian License Policy 0.5.7 20071211 removed restrictive images license added documentation 0.5.6 20071201 account uid creation defined in mail.xml plugin added count for domains and accounts updated mail.xml plugin fixed login with username and domain uppercase updated ACL 0.5.5 20071020 update mail.xml (domainActive attribute) fixed update action for values_multi fixed plugin integration in form view update logo (white background) 0.5.4 20071006 added catch all feature added DEFAULT_DOMAIN login feature fixed XHTML syntax sort accounts results improved log function 0.5.3 20070930 added textarea input box (ex. Vacation Info...) added date input box (ex. vacationStart, vacationEnd...) exception vacationActive to delete VacationForward if exists language support 0.5.2 20070929 a usable release 0.5.1 20070911 (island) a working release 0.5.0 20060516 (alfamatta) initial alpha release add some sample for samba phamm-0.6.5/COPYRIGHT0000644000175300017530000000111412643155515012074 0ustar phamm;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;; Phamm - COPYRIGHT ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Copyright (c) 2004-2016 Alessandro De Zorzi, Mirko Grava http://www.phamm.org/ Project sponsored by RHX Srl - www.rhx.it License: This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License version 2 or any later version as published by the Free Software Foundation. The complete text of the GNU General in LICENSE file. phamm-0.6.5/DTD/0000755000175300017530000000000012643155515011217 5ustar phammphamm-0.6.5/DTD/phamm-plugins.dtd0000644000175300017530000000547112643155515014504 0ustar phamm phamm-0.6.5/INSTALL0000644000175300017530000001465712643155515011652 0ustar phamm;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;; Phamm - INSTALL ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Copyright (c) 2005-2016 Alessandro De Zorzi, Mirko Grava http://www.phamm.org/ Project sponsored by RHX Srl - www.rhx.it Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; SECTIONS 0. PRELIMINARY 0.1 Prepare the files 0.2 Requirements 0.2.1 optional requirements required for email 0.2.2 optional requirements for ftp 0.3 Contents 1. LDAP 1.1 Schema 1.2 Change phamm password 1.3 Populate 1.3.1 populate plugin support 2. PHAMM CONFIGURATION 2.1 Config files 3. MAIL SERVICES 3.1 config postfix 3.2 config courier 3.3 config amavis 3.4 config gnarwl 3.5 cleaner.sh script 0. PRELIMINARY ^^^^^^^^^^^^^^ 0.1 Prepare the files Untar the archive tar xvfz phamm-X.X.X.tar.gz Put the directory phamm-X.X.X in a web accessible directory: (Example: mv phamm /var/www/) or configure httpd to use Alias. You can obtain for make accessible from web only the sub-directory phamm/www-data. 0.2 Requirements web server (tested with Apache) php4 or php5 with ldap extension enable (php-ldap php4-ldap...) OpenLDAP (recommend openldap 2.1 or 2.2) Webbrowser (doh!) 0.2.1 optional requirements required for email postfix email server pop3/imap: severs (that support ldap) examples: cyrus,courier. (tested with apache) gnarwl: for autoresponding:(to first user email) amavisd: for anti-virus/anti-spam: spamassassain clam-av or similar av-software (tested with Clam-AV) net::ldap cpan modules 0.2.2 optional requirements for ftp pure-ftpd pure-ftpd-ldap-backend 0.3 Contents In the examples folder you can find examples of all the configuration files for each server section outlined below. Please remember these are examples and they will have to be edited to suit your own personal requirements. 1. LDAP ^^^^^^^ 1.1 Schema Copy schema/phamm.schema file in your schema directory (ex. /etc/ldap/schema/ for Debian). Probably you need other schema files, you can copy they from respective projects or from http://open.rhx.it/phamm/schema/ amavis.schema dnsdomain2.schema ISPEnv2.schema pureftpd.schema radius.schema samba.schema Copy examples/conf/slapd/slapd.conf to override your slapd.conf (ex. /etc/ldap/ for Debian or /etc/openldap). Add YOUR password for the cn admin with the command slappasswd. The slapd.conf has the loglevel set to 0. For debugging set it to 128 or start slapd with /usr/sbin/slapd -d1 as this will display to screen and save you the trouble of searching your log files for problems. For improve security we suggest to use Phamm LDAP ACL definition if you do not use already ACL please copy examples/conf/phamm/phamm.acl in the same place of the slapd.conf (ex. /etc/ldap/ for Debian or /etc/openldap) otherwise comment the line below in your slapd.conf # include /etc/ldap/phamm.acl restart LDAP service 1.2 Change phamm password Create the password you want for the cn phamm with slappasswd and amend it in the examples/ldif/sample-mail.ldif (the default is rhx) with cut & paste :). 1.3 Populate ldapadd -v -x -D "cn=admin,dc=example,dc=tld" -W -h localhost -f examples/ldif/sample-main.ldif The password is the first one you created. 1.3.1 populate plugin support If you wish to use mail and DNS plugin: ldapadd -v -x -D "cn=admin,dc=example,dc=tld" -W -h localhost -f examples/ldif/sample-mail.ldif 2. PHAMM CONFIGURATION ^^^^^^^^^^^^^^^^^^^^^^^ 2.1 Config files Create the main config file in phamm directory from the sample: cp config.inc.example.php config.inc.php Then edit config.inc.php. 2.1.1 Config file (plugin support) If you wish to use the plugin, please decomment each line you want in $plugins[] lines Example: $plugins = array(); $plugins[] = "mail"; $plugins[] = "alias"; //$plugins[] = "ftp"; 3. SETTING MAIL SERVICES ^^^^^^^^^^^^^^^^^^^^^^^^^^ There are a couple of excellent general examples of how to setup postfix and courier below these should assist with a more detailed discription of what you find below. http://www.postfix.org/addon.html http://www.faqs.org/docs/Linux-HOWTO/LDAP-Implementation-HOWTO.html#AEN747 http://alinux.washcoll.edu/docs/plc/postfix-courier-howto.html 3.1 config postfix install postfix as a full internet email server, and then add the snips that are in the samples directory to the relevent parts of the postfix configuration files, remember to reload postfix after making the changes (most postfix configuration files are found in /etc/postfix) ensure the user vmail and the group vmail have been added. if not add them and remember the gid and uid as you need it here and in courier config don't forget to update your transport file and the transport.db file this is required. postmap /etc/postfix/transport test this by logging into smtp and sending a mail to yourself (then when you set up courier you should have the mail awaiting you) log with /etc/init.d/postfix start; tail -f /var/log/mail.log 3.2 config courier check that authdaemonrc is using ldap as a method to authenicate ie (authmodulelist=ldap), add the snips from the samples folder to the relevent file (normally found in /etc/courier) these files are authldap (configuration of ldap server) test by logging into your pop or imap server and collecting the mail that you sent to your self in setting up postfix. /etc/init.d/courier-authdaemonrc start; tail -f /var/log/mail.log 3.3 config amavis add the amavis sample data to your amavis.conf file. restart the services and check the logs for dependancies) 3.4 config gnarwl add the sample gnarwl.cfg snip to you gnarwl.cfg. (this normally lives in /etc/gnarwl.cfg) set debug to 3 and test. don't forget to set debug back again when working. 3.5 cleaner.sh script Edit the cleaner.sh script to reflect the your ldap layout. Phamm does not really delete accounts. Phamm mark them as "Deleting". You can use tools/cleaner.sh to do this with crond. phamm-0.6.5/LIB_FUNCTIONS0000644000175300017530000000266412643155515012575 0ustar phamm**************************************** ../lib/ldap.php static function phamm_connect () static function phamm_list ($base_dn,$filter,$attributes=null,$sort=null) static function phamm_search ($base_dn,$filter,$attributes=null,$sort=null) static function phamm_add ($dn,$entry) static function phamm_modify ($dn,$entry) static function phamm_self_values ($dn, $filter="(cn=*)") static function phamm_mod_add ($dn,$entry) static function phamm_mod_del ($dn,$entry) static function phamm_delete($dn,$recursive=false) static function phamm_error () --------------------------------------------------------- ../lib/locale.php function __construct() public function change_language($new_language) public function get_language() --------------------------------------------------------- ../lib/login.php function login_dn_costructor($login_username) function login_try($connect, $proposed, $login_password,$login_username) function bind_try($connect, $dn, $password) function login_check() function logout() --------------------------------------------------------- ../lib/log.php public function __construct() public function phamm_log ($pn,$user,$operation,$result) --------------------------------------------------------- ../lib/plugin.php public function plugins_load() private function xml2array ($file) --------------------------------------------------------- phamm-0.6.5/LICENSE0000644000175300017530000004315312643155515011617 0ustar phammGNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 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 Lesser 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. {description} Copyright (C) {year} {fullname} 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 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. {signature of Ty Coon}, 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 Lesser General Public License instead of this License. phamm-0.6.5/PHAMM-LOGO-USE.POLICY0000644000175300017530000000105712643155515013562 0ustar phamm;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;; Phamm - LOGO USE POLICY ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Phamm logo created by Alessandro De Zorzi Copyright (c) 2004 Alessandro De Zorzi - - www.rhx.it PHAMM USE LOGO POLICY Phamm logo or a modified version may be used by anyone to refer to the Phamm project, but does not indicate endorsement by the project. Note: we would appreciate that you make the image a link to http://www.phamm.org/ if you use it on a web page. phamm-0.6.5/README0000644000175300017530000000176112643155515011471 0ustar phamm;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;; Phamm - README ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Copyright (c) 2005-2016 Alessandro De Zorzi, Mirko Grava http://www.phamm.org/ Project sponsored by RHX Srl - www.rhx.it Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Phamm provides an useful PHP front-end with multi-role access to manage virtual services using a LDAP back-end. Phamm works with a plug-in system, the typical service is a mail server with virtual mail domain support but other plug-ins are available (ftp, proxy...). It is easy create or customize existing plug-ins for Phamm using XML descriptor files. Phamm back-end require own phamm.schema and custom ACL. phamm-0.6.5/README.PLUGINS0000644000175300017530000000155112643155515012606 0ustar phamm;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;; Phamm - README.PLUGINS ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Copyright (c) 2006 Alessandro De Zorzi, Mirko Grava http://www.phamm.org/ Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Create a file .xml inside plugins directory .xml Take a look at DTD/phamm-plugins.dtd To validate a XML plugin description file use on-line or other tools http://validator.w3.org/ http://www.stg.brown.edu/service/xmlvalid/ Enable plugin with a new entry in config.inc.php $plugins[] = ""; phamm-0.6.5/README.locales0000644000175300017530000000262112643155515013106 0ustar phamm;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;; Phamm - README.translations ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Copyright (c) 2005-2009 Phamm Team Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; A copy of the license in DOCS.LICENSE file. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Phamm uge gettext to support locale translations. Howto create a new translation ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 1- enter in po directory and copy phamm.pot (Phamm po Template) in your new ll_CC.po file or from SVN repository http://cvs.savannah.gnu.org/viewvc/*checkout*/phamm/phamm05/po/phamm.pot ll = indicate the language (en, fr, de, it...) CC = indicate the country code (GB, CH, DE...) 2- edit your ll_CC.po and edit header informations 3- fill all msgstr messages (preserve variable like %s or %d) Note that you can provide partial translation, the words not available in your translation will be displayed in English. 4- (optional) try compile your translation with msgfmt -v ll_CC.po 5- Submit you translation as patch using https://savannah.nongnu.org/projects/phamm or send a e-mail attach to Thanks! phamm-0.6.5/README.md0000644000175300017530000000151012643155515012060 0ustar phammPHP LDAP Virtual Hosting Manager ================================ Copyright (c) 2005-2016 Alessandro De Zorzi, Mirko Grava http://www.phamm.org/ Project sponsored by RHX Srl - www.rhx.it Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; Phamm provides an useful PHP front-end with multi-role access to manage virtual services using a LDAP back-end. Phamm works with a plug-in system, the typical service is a mail server with virtual mail domain support but other plug-ins are available (ftp, proxy...). It is easy create or customize existing plug-ins for Phamm using XML descriptor files. Phamm back-end require own phamm.schema and custom ACL. phamm-0.6.5/THANKS0000644000175300017530000000323412643155515011521 0ustar phamm;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;; Phamm - THANKS ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Copyright (c) 2005-2016 Alessandro De Zorzi, Mirko Grava http://www.phamm.org/ Project sponsored by RHX Srl - www.rhx.it Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Translators ^^^^^^^^^^^ Renato Ben (Italiano) Tristan Defert (Francais) Jan Dankert (Deutsch) Ronaldo Fabricio Reis Silva (Portugues Brasileiro) Zoltan Gyula Beck (Magyar) Ari Widodo (Indonesian) Igor V. Gots (Russian) Javier Enrique Tiá Marí (Spanish) Alice Kaerast (Danish) Fabio Tranchitella: phpLDAPAdmin Maintainer http://www.kobold.it/ for Debian Package Support Pierangelo Masarati: OpenLDAP Core Team http://www.sys-net.it for ACL suggestions and more Michele Baldessari: Interesting suggestions Alan Walters: Interesting suggestions abount schema extensions. Documentation review Tristan Defert: Interesting suggestions about front-end Tiziano D'Inca': Radius plugins Marco Sanson: Initial idea of perl transport script Ricardo Amaro: Perl transport script improvements. Iliana Comina: for Phamm Logo restyling Bruno Pelaia: Interesting suggestions Zsolt Jonas: patchs and bugs fix kabe: patchs and bugs fix Sebastian: patchs and bugs fix Jim Creason: patch Holger Thon: patch And many others, whose names are lost in the changelog. Thank you. phamm-0.6.5/TODO0000644000175300017530000000310512643155515011273 0ustar phamm/************************ * Phamm 0.6 * ************************/ * CSS2 and XHTML Strict * AJAX search functions * PHP5 and OOP /************************ * Phamm 0.5 * ************************/ - enable deault filter view (high number of domain...) - immediate delete for account and domain (see recursive fix) - header mail "Phamm" - fix error with multi windows open/different domain in session - attribute hidden in cration only (es. postmaster can write but not modify uid) - attribute hidden does not work with field 1 - Meta attribute (SPAM protetion level for user interface) - Manager/Postmaster attribute direct input (no select...) - Log http://it.php.net/manual/en/function.syslog.php http://it.php.net/manual/en/function.openlog.php - php5-mcrypt http://www.webmasterworld.com/forum88/157.htm - multi-select option template engine - error form if Domain Property update missing data - alias require 1 destination - mail plugin not required - remind lost password - rename attribute "delete" when phamm.schema change - random password - VirtualBackupMail dn: vd=example.com,o=hosting,dc=x4w,dc=it objectClass: top objectClass: VirtualDomain vd: example.com accountActive: TRUE lastChange: 1098956723 delete: FALSE postfixTransport: smtp:[192.168.10.10]:25 dn: mail=@example.com,vd=example.com,o=hosting,dc=x4w,dc=it objectClass: top objectClass: VirtualBackupMail mail: @example.com accountActive: TRUE lastChange: 1132572757 description: MX secondario dominio - avoid alias destination with the same address phamm-0.6.5/config.inc.example.php0000644000175300017530000001205412643155515014766 0ustar phamm * Copyright (C) 2004-2016 Alessandro De Zorzi and Mirko Grava * Project sponsored by RHX Srl - www.rhx.it * * Phamm 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. * * Phamm 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 */ /** * The main Phamm config file * * @package Phamm * @subpackage configuration * @author Alessandro De Zorzi **/ // *============================* // *=== LDAP Server Settings ===* // *============================* // The server address (To use ldapssl change to ldaps://localhost) define ('LDAP_HOST_NAME','localhost'); // The protocol version [2,3] define ('LDAP_PROTOCOL_VERSION','3'); // The server port (To use ldapssl change to 636) define ('LDAP_PORT','389'); // Set LDAP_TLS to 1 if you want to use TLS define ('LDAP_TLS',0); // The container define ('SUFFIX','dc=example,dc=tld'); // The admin bind dn (could be rootdn) define ('BINDDN','cn=admin,dc=example,dc=tld'); // Another additional bind dn (optional) define ('BINDDN_EXTRA','cn=adminplus,dc=example,dc=tld'); // The Phamm container define ('LDAP_BASE','o=hosting,dc=example,dc=tld'); // *============================* // *=== Layout Settings ===* // *============================* // Page title define('ORG_TITLE','Phamm'); // URL define('ORG_URL','http://www.phamm.org'); // Logo define('ORG_LOGO', './img/phamm_logo.svg'); // CSS Style $style = 'phamm'; // Default language define ('DEFAULT_LANGUAGE','en_GB'); // The languages available $supported_languages = array(); $supported_languages["de_DE"] = "Deutsch"; $supported_languages["en_GB"] = "English"; $supported_languages["es_ES"] = "Español"; $supported_languages["fr_FR"] = "French"; $supported_languages["hu_HU"] = "Hungarian"; $supported_languages["it_IT"] = "Italiano"; $supported_languages["pl_PL"] = "Polish"; $supported_languages["ru_RU"] = "Russian"; $supported_languages["vi_VN"] = "Tiếng Việt"; // Vietnamese $supported_languages["da_DK"] = "Dansk"; // Danish $supported_languages["pt_BR"] = "Portuguese"; // $supported_languages["ll_CC"] = "Your language here"; // This TLDs menu $tld = array(); $tld[] = ".com"; $tld[] = ".org"; $tld[] = ".net"; // $tld[] = ".biz"; // $tld[] = ".info"; // $tld[] = ".eu"; // $tld[] = ".it"; // $tld[] = ".fr"; // $tld[] = ".de"; // *============================* // *=== Plugins Settings ===* // *============================* // The default plugin define ('DEFAULT_PLUGIN','mail'); // This array contains the active plugins // NOTE the display order reflect this order $plugins = array(); $plugins[] = "mail"; $plugins[] = "alias"; //$plugins[] = "dns"; //$plugins[] = "ftp"; //$plugins[] = "proxy"; //$plugins[] = "radius"; //$plugins[] = "radius_stats"; //$plugins[] = "rates"; //$plugins[] = "person"; //$plugins[] = "jabber"; //$plugins[] = "davical"; // Account can be mail OR alias $plugins_exclusion = array("mail","alias"); // *============================* // *=== System Settings ===* // *============================* // Phamm Version (+ indicate a SVN version) define ('VERSION','0.6.5'); // Useful if you want hide the version [0,1] define ('HIDE_VERSION',0); // Useful if you wish force SSL through PHP [0,1] define ('FORCE_SSL',0); // Min password length define ('PASSWORD_MIN_LENGHT',3); // Seconds after refresh page define ('REFRESH_TIME',1); // A Domain administrator (example: postmaster) define ('PHAMM_DOMAIN_ADMIN_NAME','postmaster'); // Welcome message define ('SEND_WELCOME',0); $welcome_msg = '../welcome_message.txt'; $welcome_subject = 'Welcome!'; # $welcome_sender = 'postmaster@localhost'; # $welcome_bcc = 'postmaster@localhost'; // *============================* // *=== Advanced Settings ===* // *============================* // Debug level [0,1] define ('DEBUG',0); // PHP Error Level [0,1,2,10] define ('ERROR_LEVEL',2); // Log level 0->don't log [0,1,2] define ('PHAMM_LOG',0); // Log file path define ('LOG_FILE','/var/log/phamm.log'); // Standard LDAP encryption type [CRYPT,MD5,CLEAR] define ('ENC_TYPE','CRYPT'); // Standard Crypt salt [RANDOM, PASSWORD, SALT] // RANDOM - Choose a random salt // PASSWORD - Guess salt by password // Anything else - Use this phrase as a salt define ('CRYPT_SALT', 'RANDOM'); // Phamm autogenerate UID from e-mail // set char used instead @ (default=.) // i.e. info@example.com produce UID=info.example.com define ('CHR_UID_ACCOUNT','.'); // Permit login without @domain (use it with carefull) // define ('DEFAULT_DOMAIN','example.tld'); phamm-0.6.5/controllers/0000755000175300017530000000000012643155515013152 5ustar phammphamm-0.6.5/controllers/helpers.php0000644000175300017530000001762712643155515015342 0ustar phamm * Copyright (C) 2004,2008 Alessandro De Zorzi and Mirko Grava * * This file is part of Phamm. * * 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 */ /* * Execute a command to multiple accounts/domains * * @param string $command The command * @param array $values Lists of accounts/domains */ function group_actions ($command,$values) { // Set initial return value $r = false; $ga = explode(';',$command); $mode = $ga[0]; switch ($mode) : case "account" : foreach ($values as $key => $value) { // key contains mail $key1 = explode ('@',$key); // Create right DN for account and domain $dn = 'mail='.$key.',vd='.$key1[1].','.LDAP_BASE; $dn_domain = 'vd='.$key1[1].','.LDAP_BASE; // Pre-load values for account adn domain $self_values = PhammLdap::phamm_self_values ($dn, $filter="(objectClass=*)"); $domain_values = PhammLdap::phamm_self_values ($dn_domain, $filter="(objectClass=*)"); // (string) needed for TRUE and FALSE not real boolean... $entry[$ga[1]] = (string)$ga[2]; $is_alias = (in_array('VirtualMailAlias',($self_values[0]["objectclass"])) ? true : false); foreach ($entry as $k_entry => $v_entry) { if ($v_entry == 'TRUE') : $max_key = strtolower('max'.$k_entry); if (isset ($domain_values[0][$max_key][0])) { $max_val = $domain_values[0][$max_key][0]; $active_val = PhammLdap::phamm_self_values ($dn_domain,'(&(objectClass=*)('.$k_entry.'=TRUE))'); if ($active_val["count"] >= $max_val) { phamm_print_message('warning',sprintf(_("The maximum number of attribute %s (%s) has been reached or exceeded!"), $k_entry, $max_val)); return false; } } endif; } // Delete immediate if VirtualMailAlias if (isset($entry["delete"]) && $is_alias) $r = PhammLdap::phamm_delete($dn,$recursive=false); // Change single value else $r = PhammLdap::phamm_modify ($dn,$entry); } break; case "domain" : foreach ($values as $key => $value) { // Create right DN // $dn = 'cn=postmaster,vd='.$key.','.LDAP_BASE; $dn = 'vd='.$key.','.LDAP_BASE; // (string) needed for TRUE and FALSE not real boolean... $entry[$ga[1]] = (string)$ga[2]; // Change single value $r = PhammLdap::phamm_modify ($dn,$entry); } break; case "postmaster" : foreach ($values as $key => $value) { // Create right DN // $dn = 'cn=postmaster,vd='.$key.','.LDAP_BASE; $dn = 'cn=postmaster,vd='.$key.','.LDAP_BASE; // (string) needed for TRUE and FALSE not real boolean... $entry[$ga[1]] = (string)$ga[2]; // Change single value $r = PhammLdap::phamm_modify ($dn,$entry); } break; endswitch; return $r; } /** * Check if password do not match and... * * @param $password1 * @param $password2 * @return bool **/ function wrong_pw ($password1,$password2,$length=PASSWORD_MIN_LENGHT) { if ( $password1 != $password2 ) $error_msg = _("Passwords don't match!"); elseif ( strlen($password1) < $length ) $error_msg = _("Password too short!"); if (isset($error_msg)) return $error_msg; return false; } /** * Hashes a password and returns the hash based on the specified enc_type. * * Original function from phpLDAPadmin project. * * @author The phpLDAPadmin development team * * @param string $password_clear The password to hash in clear text. * @constant string $enc_type Standard LDAP encryption type which must be one of * crypt, md5 or clear. * @return string The hashed password. */ function phamm_password_hash($password_clear) { $enc_type = strtolower(ENC_TYPE); switch($enc_type) { case 'crypt': $salt = (defined(CRYPT_SALT) ? CRYPT_SALT : 'random'); switch (strtolower($salt)) { case 'password': $password_hash = '{CRYPT}'.crypt($password_clear, substr($password_clear,0,2)); break; case 'random': $password_hash = '{CRYPT}'.crypt($password_clear, random_password(2)); break; default: $password_hash = '{CRYPT}'.crypt($password_clear, $salt); } case 'md5': $password_hash = '{MD5}'.base64_encode(pack('H*',md5($password_clear))); break; case 'clear': $password_hash = $password_clear; break; default: $password_hash = '{CRYPT}'.crypt($password_clear); break; } return $password_hash; } /** * Purge empty values * * @param array $data * @param array $attribute * @return array $res **/ function purge_empty_values ($data,$attribute=null) { // Empty array $res = array(); if (is_array($data)) { foreach ($data as $key => $val) if ($val) { if (isset($attribute)) { // multiplies if (isset($attribute[$key]["MULTIPLIER"])) $val = ( $val * $attribute[$key]["MULTIPLIER"] ); // Append suffix if (isset($attribute[$key]["SUFFIX"])) $val = $val.$attribute[$key]["SUFFIX"]; } if (is_array($val)) $res[$key] = $val; else $res[$key] = strip_tags($val); } } return $res; } /** * Various syntax check (IP address, domain, email address...) * * @author Alessandro De Zorzi * @todo Check if IP 0 < number <255 * * @param string $type The kind of data * @param string $arg The value * @param int $length The min length of string * @todo name * @return bool **/ function check_syntax ($type,$arg,$length="0") { if (strlen($arg) < $length) { return false; } // IP Address if ($type == 'ip') { if (!ereg ("^([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})$", $arg)) { return FALSE; } /*$numbers = explode('.',$arg); foreach ($numbers as $number) { if ($number > 255) return FALSE; } */ else { return TRUE; } } // DOMAIN elseif ($type == 'domain') { if (!eregi("^([0-9a-z][0-9a-z-]+\.)+[a-z]{2,7}$", $arg)) { return FALSE; } else { return TRUE; } } // ALIAS and ACCOUNT elseif ($type == 'account') { if (!eregi("^[\._a-z0-9-]+$", $arg)) { return FALSE; } else { return TRUE; } } // Password elseif ($type == 'password') { if (!eregi("^[\._a-z0-9-]+$", $arg)) return false; return true; } // Email elseif ($type == 'email') { if (!eregi("^[_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.)+[a-z]{2,4}$", $arg)) return false; return true; } // Name elseif ($type == 'name') { return true; } } function random_password($length = 8) { $possibleChars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUWXYZ0123456789"; $password = ''; for($i = 0; $i < $length; $i++) { $rand = rand(0, strlen($possibleChars) - 1); $password .= substr($possibleChars, $rand, 1); } return $password; } phamm-0.6.5/docs/0000755000175300017530000000000012643155515011534 5ustar phammphamm-0.6.5/docs/install.pdf0000644000175300017530000031017512643155515013704 0ustar phamm%PDF-1.4 % 1 0 obj << /S /GoTo /D (1.0) >> endobj 4 0 obj (Phamm Install) endobj 5 0 obj << /S /GoTo /D (2.0) >> endobj 8 0 obj (Table of Contents) endobj 9 0 obj << /S /GoTo /D (3.0) >> endobj 12 0 obj (Chapter 1. Preliminary) endobj 13 0 obj << /S /GoTo /D (3.1.1) >> endobj 16 0 obj (1.1. Obtain Phamm) endobj 17 0 obj << /S /GoTo /D (3.2.1) >> endobj 20 0 obj (1.2. Prepare the files) endobj 21 0 obj << /S /GoTo /D (3.3.1) >> endobj 24 0 obj (1.3. Requirements) endobj 25 0 obj << /S /GoTo /D (3.3.1.2) >> endobj 28 0 obj (1.3.1. Optional requirements required for email) endobj 29 0 obj << /S /GoTo /D (3.3.2.2) >> endobj 32 0 obj (1.3.2. Optional requirements for ftp) endobj 33 0 obj << /S /GoTo /D (3.4.1) >> endobj 36 0 obj (1.4. Contents) endobj 37 0 obj << /S /GoTo /D (4.0) >> endobj 40 0 obj (Chapter 2. Configure LDAP Service) endobj 41 0 obj << /S /GoTo /D (4.5.1) >> endobj 44 0 obj (2.1. Schema) endobj 45 0 obj << /S /GoTo /D (4.6.1) >> endobj 48 0 obj (2.2. Change phamm password) endobj 49 0 obj << /S /GoTo /D (4.7.1) >> endobj 52 0 obj (2.3. Populate) endobj 53 0 obj << /S /GoTo /D (5.0) >> endobj 56 0 obj (Chapter 3. Phamm configuration) endobj 57 0 obj << /S /GoTo /D (5.8.1) >> endobj 60 0 obj (3.1. Config file) endobj 61 0 obj << /S /GoTo /D (5.8.3.2) >> endobj 64 0 obj (3.1.1. Config file \(plugin support\)) endobj 65 0 obj << /S /GoTo /D (6.0) >> endobj 68 0 obj (Chapter 4. Setting mail services) endobj 69 0 obj << /S /GoTo /D (6.9.1) >> endobj 72 0 obj (4.1. Config Postfix) endobj 73 0 obj << /S /GoTo /D (6.10.1) >> endobj 76 0 obj (4.2. Config Courier) endobj 77 0 obj << /S /GoTo /D (6.11.1) >> endobj 80 0 obj (4.3. Config Amavis) endobj 81 0 obj << /S /GoTo /D (6.12.1) >> endobj 84 0 obj (4.4. Config Gnarwl) endobj 85 0 obj << /S /GoTo /D (6.13.1) >> endobj 88 0 obj (4.5. cleaner.sh script) endobj 89 0 obj << /S /GoTo /D [90 0 R /Fit ] >> endobj 92 0 obj << /Length 148 /Filter /FlateDecode >> stream xeλ0 O1jl+eCH`bȆ*ehA_r|!h`Yѻ\M@"Q aPٜhVt8QFfv֓942&U)4a"ؽ\NEfYM[\=s1 endstream endobj 90 0 obj << /Type /Page /Contents 92 0 R /Resources 91 0 R /MediaBox [0 0 609.714 789.041] /Parent 97 0 R >> endobj 93 0 obj << /D [90 0 R /XYZ 71.731 729.265 null] >> endobj 94 0 obj << /D [90 0 R /XYZ 71.731 718.306 null] >> endobj 95 0 obj << /D [90 0 R /XYZ 71.731 718.306 null] >> endobj 2 0 obj << /D [90 0 R /XYZ 388.894 700.755 null] >> endobj 91 0 obj << /Font << /F27 96 0 R >> /ProcSet [ /PDF /Text ] >> endobj 100 0 obj << /Length 365 /Filter /FlateDecode >> stream x]KS ,aRIjmGG]X4ISV9|l *M, NlDGS "lu)Y:QU#,?FƔ3)>#D38&ܛQFmKS!WV4~j.~P WVF F1ErνV*xnh…MDs{ΨuChusUٸrHezm\JpWK#" w^mdce|AR(ͩSY7C`D(n svmV)[g'']~ g}=&ù endstream endobj 99 0 obj << /Type /Page /Contents 100 0 R /Resources 98 0 R /MediaBox [0 0 609.714 789.041] /Parent 97 0 R >> endobj 101 0 obj << /D [99 0 R /XYZ 71.731 729.265 null] >> endobj 98 0 obj << /Font << /F27 96 0 R /F34 102 0 R >> /ProcSet [ /PDF /Text ] >> endobj 145 0 obj << /Length 926 /Filter /FlateDecode >> stream xn@}%, 0/ӴTUxvAbܴw_~lL*?2`3Xqy'"4댂(0s#PzFJGȑ15ͩf|cy*ad<*Ukc 5x$F!Љg^踑l99)-/2U,.{7@6yvz!(3cH_tˌo8W+ݯ R#/M)83T٩WZ~sCN?7 ƍ/&)һ?lpk̍]VQ%y^^?mylUx㎹F[(ΫB[2[ђ=xWoLKO}N7$.iq!v^4?d`M+U'$3a-@‚|a?׏^͖jkSdhqaCѯ<8_٢)۱7z}WO孾A{E ]ýI^lҸR 0*>fncU?Tpʮy}!bUCԣY",_o"/Ǟv' 80 C'f\Jv> endobj 103 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [118.555 683.134 181.798 694.014] /Subtype /Link /A << /S /GoTo /D (0:preliminary) >> >> endobj 104 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [532.005 683.134 538.979 694.014] /Subtype /Link /A << /S /GoTo /D (0:preliminary) >> >> endobj 105 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [142.466 669.715 221.947 678.561] /Subtype /Link /A << /S /GoTo /D (0:15) >> >> endobj 106 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [532.005 669.715 538.979 678.561] /Subtype /Link /A << /S /GoTo /D (0:15) >> >> endobj 107 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [142.466 654.706 226.081 665.61] /Subtype /Link /A << /S /GoTo /D (0:18) >> >> endobj 108 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [532.005 654.706 538.979 665.61] /Subtype /Link /A << /S /GoTo /D (0:18) >> >> endobj 109 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [142.466 641.755 217.235 652.659] /Subtype /Link /A << /S /GoTo /D (0:23) >> >> endobj 110 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [532.005 641.755 538.979 652.659] /Subtype /Link /A << /S /GoTo /D (0:23) >> >> endobj 111 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [166.376 628.803 357.069 639.707] /Subtype /Link /A << /S /GoTo /D (0:26) >> >> endobj 112 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [532.005 628.803 538.979 639.707] /Subtype /Link /A << /S /GoTo /D (0:26) >> >> endobj 113 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [166.376 615.852 310.315 626.756] /Subtype /Link /A << /S /GoTo /D (0:41) >> >> endobj 114 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [532.005 615.852 538.979 626.756] /Subtype /Link /A << /S /GoTo /D (0:41) >> >> endobj 115 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [142.466 604.958 197.32 613.804] /Subtype /Link /A << /S /GoTo /D (0:48) >> >> endobj 116 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [532.005 604.958 538.979 613.804] /Subtype /Link /A << /S /GoTo /D (0:48) >> >> endobj 117 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [118.555 587.692 235.586 598.571] /Subtype /Link /A << /S /GoTo /D (0:ldap) >> >> endobj 118 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [532.005 587.692 538.979 598.571] /Subtype /Link /A << /S /GoTo /D (0:ldap) >> >> endobj 119 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [142.466 574.273 193.434 583.119] /Subtype /Link /A << /S /GoTo /D (0:53) >> >> endobj 120 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [532.005 574.273 538.979 583.119] /Subtype /Link /A << /S /GoTo /D (0:53) >> >> endobj 121 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [142.466 559.264 264.726 570.168] /Subtype /Link /A << /S /GoTo /D (0:61) >> >> endobj 122 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [532.005 559.264 538.979 570.168] /Subtype /Link /A << /S /GoTo /D (0:61) >> >> endobj 123 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [142.466 546.313 196.762 557.216] /Subtype /Link /A << /S /GoTo /D (0:64) >> >> endobj 124 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [532.005 546.313 538.979 557.216] /Subtype /Link /A << /S /GoTo /D (0:64) >> >> endobj 125 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [118.555 531.105 223.222 541.984] /Subtype /Link /A << /S /GoTo /D (0:configuration) >> >> endobj 126 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [532.005 531.105 538.979 541.984] /Subtype /Link /A << /S /GoTo /D (0:configuration) >> >> endobj 127 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [142.466 515.628 204.244 526.532] /Subtype /Link /A << /S /GoTo /D (0:70) >> >> endobj 128 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [532.005 515.628 538.979 526.532] /Subtype /Link /A << /S /GoTo /D (0:70) >> >> endobj 129 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [166.376 502.676 302.594 513.58] /Subtype /Link /A << /S /GoTo /D (0:75) >> >> endobj 130 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [532.005 502.676 538.979 513.58] /Subtype /Link /A << /S /GoTo /D (0:75) >> >> endobj 131 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [118.555 487.468 217.294 498.347] /Subtype /Link /A << /S /GoTo /D (0:mail) >> >> endobj 132 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [532.005 487.468 538.979 498.347] /Subtype /Link /A << /S /GoTo /D (0:mail) >> >> endobj 133 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [142.466 471.991 219.198 482.895] /Subtype /Link /A << /S /GoTo /D (0:83) >> >> endobj 134 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [532.005 471.991 538.979 482.895] /Subtype /Link /A << /S /GoTo /D (0:83) >> >> endobj 135 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [142.466 459.04 221.947 469.944] /Subtype /Link /A << /S /GoTo /D (0:89) >> >> endobj 136 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [532.005 459.04 538.979 469.944] /Subtype /Link /A << /S /GoTo /D (0:89) >> >> endobj 137 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [142.466 446.088 222.306 456.992] /Subtype /Link /A << /S /GoTo /D (0:93) >> >> endobj 138 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [532.005 446.088 538.979 456.992] /Subtype /Link /A << /S /GoTo /D (0:93) >> >> endobj 139 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [142.466 433.137 221.389 444.041] /Subtype /Link /A << /S /GoTo /D (0:96) >> >> endobj 140 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [532.005 433.137 538.979 444.041] /Subtype /Link /A << /S /GoTo /D (0:96) >> >> endobj 141 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [142.466 420.186 226.081 431.089] /Subtype /Link /A << /S /GoTo /D (0:99) >> >> endobj 142 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] /Rect [532.005 420.186 538.979 431.089] /Subtype /Link /A << /S /GoTo /D (0:99) >> >> endobj 146 0 obj << /D [144 0 R /XYZ 71.731 729.265 null] >> endobj 6 0 obj << /D [144 0 R /XYZ 244.332 703.236 null] >> endobj 143 0 obj << /Font << /F27 96 0 R /F40 147 0 R /F34 102 0 R /F41 148 0 R >> /ProcSet [ /PDF /Text ] >> endobj 171 0 obj << /Length 991 /Filter /FlateDecode >> stream xڵV[8~_T 6JUٛ:fmׯd*;RH_|4i]owT(^` J e>o2(*e뉞iu2K ΍4Ǎ"wvuV9˃%X0y q,uHCxZnTVGTH敕I zOQC03.kXK+n^#CrR$MI KjR3A+>[;+5J $hS:V*/F'"D}[HDT 3ْɾv%/j3¥:eNx,l^رI!]]o7!hY3pJ9B\x" :SEW+͢ziEIbwTڜ ʥ s &y+w'{F-#|3z'QP9nWjo kc'wW6^֥{0rXC٧N>Q|r!+RR٦Se U3;7W*ز݄uΐz|wQM_OiƛƟFؾ%ռiv 992gK cnǤ#1Gu>S6B+;aqw&`Y y@?~$O.)ǣMw|Z̲0d ȰnOTSĶ&TM|UQ0ƞ9O$#ɛF/H{ EP9fn5E})_Ѿ$HN+.s2r c<)_ ?SՒ.@7QZbɷj_H&[cu3l&>\OYGA7vU-%Lt#=O|Ql /-w~}?Q endstream endobj 170 0 obj << /Type /Page /Contents 171 0 R /Resources 169 0 R /MediaBox [0 0 609.714 789.041] /Parent 97 0 R >> endobj 149 0 obj << /D [170 0 R /XYZ 71.731 718.306 null] >> endobj 10 0 obj << /D [170 0 R /XYZ 291.225 703.236 null] >> endobj 150 0 obj << /D [170 0 R /XYZ 71.731 692.504 null] >> endobj 14 0 obj << /D [170 0 R /XYZ 226.72 651.526 null] >> endobj 172 0 obj << /D [170 0 R /XYZ 71.731 631.386 null] >> endobj 151 0 obj << /D [170 0 R /XYZ 71.731 602.296 null] >> endobj 18 0 obj << /D [170 0 R /XYZ 239.183 559.198 null] >> endobj 173 0 obj << /D [170 0 R /XYZ 71.731 535.709 null] >> endobj 174 0 obj << /D [170 0 R /XYZ 71.731 501.624 null] >> endobj 176 0 obj << /D [170 0 R /XYZ 71.731 437.255 null] >> endobj 152 0 obj << /D [170 0 R /XYZ 71.731 407.95 null] >> endobj 22 0 obj << /D [170 0 R /XYZ 220.023 364.853 null] >> endobj 177 0 obj << /D [170 0 R /XYZ 71.731 341.364 null] >> endobj 153 0 obj << /D [170 0 R /XYZ 71.731 316.868 null] >> endobj 26 0 obj << /D [170 0 R /XYZ 437.373 279.652 null] >> endobj 178 0 obj << /D [170 0 R /XYZ 71.731 276.683 null] >> endobj 179 0 obj << /D [170 0 R /XYZ 71.731 273.814 null] >> endobj 180 0 obj << /D [170 0 R /XYZ 129.514 255.981 null] >> endobj 181 0 obj << /D [170 0 R /XYZ 71.731 253.824 null] >> endobj 182 0 obj << /D [170 0 R /XYZ 129.514 238.048 null] >> endobj 183 0 obj << /D [170 0 R /XYZ 71.731 235.892 null] >> endobj 184 0 obj << /D [170 0 R /XYZ 129.514 220.116 null] >> endobj 185 0 obj << /D [170 0 R /XYZ 71.731 217.959 null] >> endobj 186 0 obj << /D [170 0 R /XYZ 129.514 202.183 null] >> endobj 187 0 obj << /D [170 0 R /XYZ 71.731 200.026 null] >> endobj 188 0 obj << /D [170 0 R /XYZ 129.514 184.25 null] >> endobj 189 0 obj << /D [170 0 R /XYZ 71.731 182.093 null] >> endobj 190 0 obj << /D [170 0 R /XYZ 129.514 166.317 null] >> endobj 154 0 obj << /D [170 0 R /XYZ 71.731 159.553 null] >> endobj 30 0 obj << /D [170 0 R /XYZ 357.623 121.964 null] >> endobj 191 0 obj << /D [170 0 R /XYZ 71.731 118.994 null] >> endobj 192 0 obj << /D [170 0 R /XYZ 71.731 116.125 null] >> endobj 193 0 obj << /D [170 0 R /XYZ 129.514 98.292 null] >> endobj 194 0 obj << /D [170 0 R /XYZ 71.731 96.136 null] >> endobj 169 0 obj << /Font << /F27 96 0 R /F34 102 0 R /F45 175 0 R /F41 148 0 R >> /ProcSet [ /PDF /Text ] >> endobj 197 0 obj << /Length 416 /Filter /FlateDecode >> stream xuS?s SPb! m2\u]rQ6r Τ`v#EmMkcQQp 9Ih9}iD:xa[};%IIZe3IYGa n R!ZO MD7J* endstream endobj 196 0 obj << /Type /Page /Contents 197 0 R /Resources 195 0 R /MediaBox [0 0 609.714 789.041] /Parent 97 0 R >> endobj 198 0 obj << /D [196 0 R /XYZ 129.514 708.344 null] >> endobj 155 0 obj << /D [196 0 R /XYZ 71.731 691.243 null] >> endobj 34 0 obj << /D [196 0 R /XYZ 179.826 648.145 null] >> endobj 199 0 obj << /D [196 0 R /XYZ 71.731 628.005 null] >> endobj 195 0 obj << /Font << /F41 148 0 R /F34 102 0 R /F27 96 0 R >> /ProcSet [ /PDF /Text ] >> endobj 202 0 obj << /Length 1092 /Filter /FlateDecode >> stream xڍW]&}_a$q>lgvV+5ZUm!16 q}0½{. ~~!AM͂)cqG)HMp@_6*ɷGQrn96 ߞhyo8Z/9 ' V*67$ >KeU tnl:$Viync*,ZBM b3'c33GB2~uYqxf!IJ)Mh/3'fzG6*<t#1 e6]0d /_.u,تm\l9V!wڐYΡZ VAR'w6Rh7'٠;pH{#2GX5*uaS((l &1ճYZjgs ݟe4Z2PqݥgHi/rEw!w5"FspF>%ޱUD) "@LE{>8NFHK?<GRW($%GE;RT:Fc{*ь .Y{tN.hȋ` wK*1͡- ҤR{ֻkiCU,<[ak2Q+\b5YCٓk&+ ؙj[=0i,CQ䔚KU?3Ji`:VQ1*e\KImgGL.Nm,hCLzCIN!0O0FYzֻ{/꺈}5zLu Tя>h$|+=]e0P j)⛛:r4jSDT>VSR!|o*zV $-Z9wh}]2<6{ִTLM7&RbW;>]QT|=;۱4#e%-̈oZTIr"7Mi,nQt47BI`m]j|H'_8\u endstream endobj 201 0 obj << /Type /Page /Contents 202 0 R /Resources 200 0 R /MediaBox [0 0 609.714 789.041] /Parent 97 0 R >> endobj 203 0 obj << /D [201 0 R /XYZ 71.731 729.265 null] >> endobj 156 0 obj << /D [201 0 R /XYZ 71.731 718.306 null] >> endobj 38 0 obj << /D [201 0 R /XYZ 416.642 703.236 null] >> endobj 157 0 obj << /D [201 0 R /XYZ 71.731 692.184 null] >> endobj 42 0 obj << /D [201 0 R /XYZ 171.08 651.526 null] >> endobj 204 0 obj << /D [201 0 R /XYZ 71.731 631.386 null] >> endobj 205 0 obj << /D [201 0 R /XYZ 71.731 596.567 null] >> endobj 206 0 obj << /D [201 0 R /XYZ 71.731 560.702 null] >> endobj 207 0 obj << /D [201 0 R /XYZ 71.731 472.856 null] >> endobj 208 0 obj << /D [201 0 R /XYZ 71.731 425.01 null] >> endobj 209 0 obj << /D [201 0 R /XYZ 71.731 379.182 null] >> endobj 158 0 obj << /D [201 0 R /XYZ 71.731 326.131 null] >> endobj 46 0 obj << /D [201 0 R /XYZ 318.736 283.034 null] >> endobj 210 0 obj << /D [201 0 R /XYZ 71.731 259.278 null] >> endobj 159 0 obj << /D [201 0 R /XYZ 71.731 233.803 null] >> endobj 50 0 obj << /D [201 0 R /XYZ 177.243 190.706 null] >> endobj 211 0 obj << /D [201 0 R /XYZ 71.731 177.18 null] >> endobj 212 0 obj << /D [201 0 R /XYZ 71.731 147.781 null] >> endobj 200 0 obj << /Font << /F27 96 0 R /F34 102 0 R /F45 175 0 R /F41 148 0 R >> /ProcSet [ /PDF /Text ] >> endobj 215 0 obj << /Length 475 /Filter /FlateDecode >> stream x}ˎ y uaK fcꦣjW]x73 d䋚}dɊs 9'AC~^? 4PԀc)QHh hV'Bݼݳގ )yFem{A^cRN5 rZdizL;޸b?55[9wHNTNᅈkE" Fr2s}ι-b6X·7oo>!Z%#ݺ>F8/z_1Brc4g0cE @/p endstream endobj 214 0 obj << /Type /Page /Contents 215 0 R /Resources 213 0 R /MediaBox [0 0 609.714 789.041] /Parent 222 0 R >> endobj 216 0 obj << /D [214 0 R /XYZ 71.731 729.265 null] >> endobj 160 0 obj << /D [214 0 R /XYZ 71.731 718.306 null] >> endobj 54 0 obj << /D [214 0 R /XYZ 390.84 703.236 null] >> endobj 161 0 obj << /D [214 0 R /XYZ 71.731 692.184 null] >> endobj 58 0 obj << /D [214 0 R /XYZ 189.397 651.526 null] >> endobj 217 0 obj << /D [214 0 R /XYZ 71.731 627.77 null] >> endobj 218 0 obj << /D [214 0 R /XYZ 71.731 606.53 null] >> endobj 219 0 obj << /D [214 0 R /XYZ 71.731 575.724 null] >> endobj 162 0 obj << /D [214 0 R /XYZ 71.731 561.997 null] >> endobj 62 0 obj << /D [214 0 R /XYZ 343.823 524.781 null] >> endobj 220 0 obj << /D [214 0 R /XYZ 71.731 501.664 null] >> endobj 221 0 obj << /D [214 0 R /XYZ 71.731 479.785 null] >> endobj 213 0 obj << /Font << /F27 96 0 R /F34 102 0 R /F45 175 0 R /F41 148 0 R >> /ProcSet [ /PDF /Text ] >> endobj 225 0 obj << /Length 1269 /Filter /FlateDecode >> stream xڵWn6+tQ `QF3-pݤM4:@MDHBRK=kDQ$sȻx<> %D3\yy }$w.v]G?~i!nuq?}iI}F YC7Џ]chhgS. wʍ|$EPHvQ<H`xH|y@q iߔ*h N)3B17^g1]"!N`Ja\khz(֝}yݩ~U/qavѿ,)hY4j' r?b?}3ϳ).*N+UtUnV.u(:uAƻ]T-_.q8KB 4RFSQN5W9ԼI.`czA:L$ 2uGp|٣Or@D,2; rd|ʨ3Tʞ6p2$9,Ӯ  &=#ԌthQ`Ij--SXnvu h)PԐ\-eQKBٹu4c9h?JY"14yDxrV Hpu5T%@TPU@ߢ&6\.n/ +4 buHTXJW"Y ׋퓡V wbrIz %-=Dш ?kEZ.rb{σavC/ )Bi[)JڜLٍ*5Euu#W~nKb[u絽jyiF; .yä}Z`Yv[]')Lbp@TP o@|AeAŹmPf3TԨj KZJXaʀ.YM  ƾ>DǃF#,ǖ}yuIq3U'rmVVѦ\W:הWBY+;=_ Sf`!nEKNJWmW>^GyLvmausBD66""bY)d Qה,S~Ƿ R#oW=j-,0 o9 j X`Y2c2 /p =Fu@R`57V3f#ރ4=yA<5doot endstream endobj 224 0 obj << /Type /Page /Contents 225 0 R /Resources 223 0 R /MediaBox [0 0 609.714 789.041] /Parent 222 0 R >> endobj 226 0 obj << /D [224 0 R /XYZ 71.731 729.265 null] >> endobj 163 0 obj << /D [224 0 R /XYZ 71.731 718.306 null] >> endobj 66 0 obj << /D [224 0 R /XYZ 384.228 703.236 null] >> endobj 227 0 obj << /D [224 0 R /XYZ 71.731 672.259 null] >> endobj 228 0 obj << /D [224 0 R /XYZ 71.731 628.87 null] >> endobj 164 0 obj << /D [224 0 R /XYZ 71.731 590.016 null] >> endobj 70 0 obj << /D [224 0 R /XYZ 221.229 546.918 null] >> endobj 229 0 obj << /D [224 0 R /XYZ 71.731 523.163 null] >> endobj 230 0 obj << /D [224 0 R /XYZ 71.731 450.116 null] >> endobj 231 0 obj << /D [224 0 R /XYZ 71.731 419.311 null] >> endobj 232 0 obj << /D [224 0 R /XYZ 71.731 382.669 null] >> endobj 165 0 obj << /D [224 0 R /XYZ 71.731 361.826 null] >> endobj 74 0 obj << /D [224 0 R /XYZ 225.739 317.953 null] >> endobj 233 0 obj << /D [224 0 R /XYZ 71.731 294.197 null] >> endobj 234 0 obj << /D [224 0 R /XYZ 71.731 234.102 null] >> endobj 166 0 obj << /D [224 0 R /XYZ 71.731 213.259 null] >> endobj 78 0 obj << /D [224 0 R /XYZ 225.498 169.386 null] >> endobj 235 0 obj << /D [224 0 R /XYZ 71.731 145.63 null] >> endobj 167 0 obj << /D [224 0 R /XYZ 71.731 120.156 null] >> endobj 223 0 obj << /Font << /F27 96 0 R /F34 102 0 R /F45 175 0 R /F41 148 0 R >> /ProcSet [ /PDF /Text ] >> endobj 238 0 obj << /Length 493 /Filter /FlateDecode >> stream xڍn0V.`^f#T\xW*o_IRNA E=l՛l_Pû>\3T7Orɓce$/}oې 7!+=u= (/*~JI|xߖ2ڳ==y8{*KF|ޓT6剌/QJIl76F%K^ TO]x>?/z~e&\Z ̫G=RhhHX#q?;9 qv7hX;[?]A>1rMP})]T|9O:̔}68bq/;jtvW1+Ж Woכ endstream endobj 237 0 obj << /Type /Page /Contents 238 0 R /Resources 236 0 R /MediaBox [0 0 609.714 789.041] /Parent 222 0 R >> endobj 239 0 obj << /D [237 0 R /XYZ 71.731 729.265 null] >> endobj 82 0 obj << /D [237 0 R /XYZ 222.881 705.748 null] >> endobj 240 0 obj << /D [237 0 R /XYZ 71.731 681.992 null] >> endobj 168 0 obj << /D [237 0 R /XYZ 71.731 656.517 null] >> endobj 86 0 obj << /D [237 0 R /XYZ 240.681 613.42 null] >> endobj 241 0 obj << /D [237 0 R /XYZ 71.731 589.931 null] >> endobj 236 0 obj << /Font << /F41 148 0 R /F27 96 0 R /F34 102 0 R >> /ProcSet [ /PDF /Text ] >> endobj 243 0 obj [600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600] endobj 244 0 obj [250 278 500 500 500 500 500 500 500 500 500 500 333 333 675 675 675 500 920 611 611 667 722 611 611 722 722 333 444 667 556 833 667 722 611 722 611 500 556 722 611 833 611 556 556 389 278 389 422 500 333 500 500 444 500 444 278 500 500 278 278 444 278 722 500 500 500 500 389 389 278 500 444 667 444 444] endobj 245 0 obj [556 556 167 333 667 278 333 333 0 333 570 0 667 444 333 278 0 0 0 0 0 0 0 0 0 0 0 0 333 278 250 333 555 500 500 1000 833 333 333 333 500 570 250 333 250 278 500 500 500 500 500 500 500 500 500 500 333 333 570 570 570 500 930 722 667 722 722 667 611 778 778 389 500 778 667 944 722 778 611 778 722 556 667 722 722 1000 722 722 667 333 278 333 581 500 333 500 556 444 556 444 333 500 556 278 333 556 278 833 556 500 556 556 444 389 333 556 500 722 500 500] endobj 246 0 obj [556 556 167 333 611 278 333 333 0 333 564 0 611 444 333 278 0 0 0 0 0 0 0 0 0 0 0 0 333 180 250 333 408 500 500 833 778 333 333 333 500 564 250 333 250 278 500 500 500 500 500 500 500 500 500 500 278 278 564 564 564 444 921 722 667 667 722 611 556 722 722 333 389 722 611 889 722 722 556 722 667 556 611 722 722 944 722 722 611 333 278 333 469 500 333 444 500 444 500 444 333 500 500 278 278 500 278 778 500 500 500 500 333 389 278 500 500 722 500 500 444 480 200 480 541 0 0 0 333 500 444 1000 500 500 333 1000 556 333 889 0 0 0 0 0 0 444 444 350 500 1000 333 980 389 333 722 0 0 722 0 333 500 500 500 500 200 500 333 760] endobj 247 0 obj [611 611 167 333 611 278 333 333 0 333 584 0 611 500 333 278 0 0 0 0 0 0 0 0 0 0 0 0 333 238 278 333 474 556 556 889 722 278 333 333 389 584 278 333 278 278 556 556 556 556 556 556 556 556 556 556 333 333 584 584 584 611 975 722 722 722 722 667 611 778 722 278 556 722 611 833 722 778 667 778 722 667 611 722 667 944 667 667 611 333 278 333 584 556 278 556 611 556 611 556 333 611 611 278 278 556 278 889 611 611 611 611 389 556 333 611 556 778 556 556] endobj 248 0 obj << /Length1 1612 /Length2 12064 /Length3 0 /Length 12897 /Filter /FlateDecode >> stream xڭweT]ݒ-{p= ܃;ݷ}?{U՚5f5+ \Ʈrvt sW qXۉ S( `D<,-\jT440ONgKs;Njdި\,@3K@DAQKJ^@)!فl6&YK3 `f`bogjWiXB#crtvxX:̝\>zb3q5oBN0E{gg'KGVEQt0r+`oijoWI>`>.Fv_ASKg#Ϗ`Npu3'ZWwY'Uo`n3ƌ#GnsK;8E@N7򯙡 adjog 01ۻ|PTo"E?qUvB~ ?. cu9_F6Æ GBv03h,n2Ut1|to)112Oֳ3W"MAE\HRH_Կ?wQt ٛ/ aa{WH`H?dk9#'KGɌL?Wz#fgbo׬ٙ~r:9}(?:2[]7 Jp74!1P֠Z\_cUiRB8x'M?҃iCѝ (!-D d/C8Ոz Ψ=_E0syOOVNvkVщ%'TֶOvxƀ.q -eq5@PX`p_ ޑ_a\T ةIQd<.LhMU@j Okٵ;K`d%Pg7 ˖kCEb|>J !2f7NIӥQ,NusO7HL^`cNP QP@ !j ErK7m?P"pzxq&#h˧x<EBjq+ *K6Aa,7o҂z+}oŇ:0 VA EO=8֕5p'/T :cBq'rLe__",r?D2g*~lF饵!;ȕ~]-(üo2o9S_ *X&Am+B ?& wfi2_hk %ۂW J3 }41 Q&Q<#-94[$e<(23 ބv:3X$2,ƹcr7z*]{^\,ftDe_`Tʦ6>w!99QiM2`Gqշ,lrOewCT=n.aOly6uyBG<-~՚јgYZoD93̗P"A,`$1d2 9Jwz!l+"5,HiU2D]XL|k*Li;BKh3}x(ܫjgrouI^nZ؏й'9xD;bLܷx+RW(ؔlw_MB):kpZD2 &^,s , oka#q-o(y?1[6GWQiuQ0xG3݊BE4C}sL fWrq ܌Dsub Q?_%*Tafn=K!ԱBT9H- 6&$,v{H$dP$qe9RT4ŀ2KB,BEe~-;9 f p&э0,X+>LI|>`n]֧]U~fΑ|Kﳮ4޼vx]xsd*0Hu`K\7YZ"\{Gؒok>k=)frc\֢/*Fe/Cv_%&~#1xLJ [<#MsCboryY"Jtt{\diUa;&6$g[Q\8lqF%?+alWj 9-/ÃgEU6hKm.xm B_'lɦwuФĎ9ufHd}ܸEj8pY˝-CEwE7Z**}4YSUx  Ž@6=7CwlHDPoc}m89{_,>nI'ͮHu L2.ozKŻo(+t/7рg 3C^䵤SRm}y/7/Ia*YL<rΧk;Ԧ.RoˊiYzLp'7w0lȑ3G[0V_{W(ʓ S{PS0a%g6.q CGpHDb4u. l{,/xH\2}iyRZFV\[:&);!= 1A=[w]nZA~K65C+RҸlUBESX:' `,LŐ5 YrMĨjt&A4#k*g?EZEVz{z7Rw7m^'Fw!'2T4=#S1]trL/w1mS_[@@#GJHmv=ꡓKhZw-dF[L80Nr|D1Րb+nNBjk\OyDocGb":(RZs9Tr\Zeo.- +p=f%d^\]u(9bW:@x׽|3Kahj ~8?5>6 olߩ湇3y{/=-SFɻϷ' 7=dvwԯePyڅDg H ][R^nz"̳a܀R^a֒7ȁa'S[hMc vfL$D-ؽ]-~4;'䷯VW?vp n&,-KsA@vh,ꫬ>씕{7GW߄£ d ":7OA81svx W`CTxBh7@gOf 7įv,5!)oE٢q3TӭnN434YB$luqۻdl3#rI96&PTBPoԌq0a!PH_paVw}Ŗ9C0+Lv.ay= ~Fa* Y GSlzueVZM{`]3 V5BI[rs}O8- f-(b5Ԣ{:6ޱiϑ׫Ri iⲟ%tmHzC*;Thz$e1_kHAG&lo9 r : S8ub2Po}L{X wfT&1fV1_Պg7[ њl!|&D]vZw2O^k=//J#twiV-JbQNNٛ70Uf>B\]9^wQ`Mg9ol`+U,Ê2oVUCora cJp"ˆ-nx5Ɋ:HF+ W)ݝnbpiAa-(ܿ}Ԕ4 u$B3s`U,!Uf 4pp 7u@#wW{K"C|NI]Y A{lE*{UֱڦDOV'3v ^ތP1ޕFj 5. %%yLZb^>`MqRWOnጦr*<2V WҨej%("KkR䐲dD ߸`4݊Zu[e*F+}~DӴ58;3K*hHwfΛĬfmwE}i|ܼ0|b֧a=&buXK92(2Gɦ66OΎ85^VvOK.}CR:ݳ괘+?6yaJTei+(B)rІcw#>UNǛf+Ra06O mG\Q_+O1qeRŴ:-p1L!+TX}1Ih 2}ZF<:n[ݗ剳*=/F("-/(ns[jv}h8ҼsDtI[3Q"l*CErƵ+Ώؔk%~{%њn*<]#zW(\[>T">Jç?k ; "umP~WENIϭ۴B|W%QAs6W:32guEF#q%rJ3 { t2YY0f"kdV͝>`ٶ 99 |Z&}Vroew+w7TnWR!.[vc?czCw> p}bJo0 l66;k:xw[,sFᕟm9(M-+NKd\͈.&GS+SEMJΨ/I6kbho+%@- ZZ{$ή2JtjV}H5Jh ?LJ|]MLJJ:P( p6@ln|oO cU8$+|vn1JGH#mN/B\oO:A p BnjF#;Ӣbgw3U+?vu:IO/cdz.[fۥޮq'f i:"Ԕ^uej&r sO¯i[nI?`Jk؂%ij7]PN*vyVBVttAdnQˮ(> u:Bo4%uUE~{w*KKUϦ}GUlR׈6\',JLz٘pN\ |p"!/Jsac'MWˠzEԏ\U?$h!4Dɚs}Imd;7n8E”ƪfi湙:y4 NLݎS &1)7diZ{BU0^pb]Pep!Wbk[Co F ƃ-͌ _9o^o4ݺ_s7'8,%e禼YL ~p&m>;.a/.&E"]Z/_hK#v΅pl "rˆq _N;,OAfpʽzs]ggT=3n, o}2E vC'¯PѮnȉhym/.#Tdêi^ۆ'ϏCAVCuFM"=B61ܯNd(ډ'ՙw^H-'$B쬱ɐjQ{8)(m*ol _/}W+ųLږ [ =xj.vͯ_, W v1cx_XSI8 HY~v0x :ҝ=؊nyr Iz L(g |g0'g!;Qŧ]L{oCۯQS~R ^z5* Gvq][籣W@pA>(O,ͫ^ d=fL 5Ǻ򼉉\Ŷ`AmgˑA.J:TIY@F5DBC=^wJuB-Ӂq9+JBlxAK_L^J9NwJ))͛h ގ1YO"ޅep2Y! )b2ӣ#,`C,$XLv&*b桊bл3&p6\3ig&qU~z?*rxm*XK{g[-asj'(܎j%J‡5ob|:OYQ1E?ة BꊍI`JlxAf-K^AZ*M1;q{vp]b2crS3eP↊blݥa=Ҿ(B>C*i0K.n"9ϩ=n}WM39RWS0}:&$?{~/HxjZ89rq~~z/#٧>Gf׎ѽ?Zu_ ւH%잷PǸ[m@hP,~yȬ yc|˽~ܓCl!R8Y 'Uea%e8xl!"E[hF N&[:gaDHdžC힗䒃N$@Ĝ@zK2LFAn^S9nM,aVyzQ'w|""M Mx\¹yiP#2F~[!G|d!:B'/":Q1[8nѬSm=s"؎/rh[0 u7[V:ģO9u1BP1իscov [KFz*Vu6njJ%֮썄ƮʯԞtE-F9N$,."$2~F~ֈsmV&ĵgUE+1xԿeEa2u^A9.\L ?Uw+Qp&q|@\2܃eG#|VZ?Gx!pwZ_){>ty xT S~g9 i¾=5iɫ H[= lR<*=ڼoM[wy3ZB.bzU d؉.@W07X};G~X)L%zoopFJ(<"5N]a.oVR#^|,*Wzpuswq+ (,cq`qqA'T[ F$)-EB\=wUNߺ4?mw]<6h0Lt\tC3#Qd75eѼ]x qF2p+]KvGHWᆱK(i5xWv{USӊ6ũHs#^x!@i&.|dSf!Շ=$O4Mv}B1>P@i*iGT[obˣco 5F'{vβ6eӅDbjS!Wҁɳ0).Gh $șNe ^P+3^(S2S͇tGVjO~Z?|[!֜r̕,ˢ$}Q&8EuCf{8|74̨0])yw9~9ʠr;|I] .ѷ#Z{lV-( ˦̲` (Ϣܴ0z|igzaI<-Ta°!}&gm$y|lOpUuDpՃkspNreiq> Q5ۨҡ)aҪRDP0/+#`<~DN"$sDS{l#6Fnʎ=eZȃ-mzy /dx1CU:_;lg?ﺗ?/-ng}B0# z8(C;^WsTO(~4._OhYl n7, k %~!Y׋ir6wKd%2]ߗ%B:[ƎA9>5S!uV>P܋]_Ӯ {:+,qhHaG;1ɟYh-9&[m 7W)ƓV &h7?E)gj&Wb,{>f JNhy ?>3Nag$e.EV++d5ʟjSjߖq&fe vd4%·C4_Q!0= 3Ǽlz@xm{13ȯ"8BPy CŚxq:h}p171S*{E_g,ej2)F'jEV$6T> endobj 250 0 obj << /Length1 1608 /Length2 9337 /Length3 0 /Length 10163 /Filter /FlateDecode >> stream xڭxUTђ5N ih-Hpw'!x XHpw ?ɝ;4szTٵvyh:ju-6 GsS 7wi$,OF>L::)(8:H`! \t)G'(`cbaaO?=O7a+Ӈ+__pk0bH(Tur`0hPw1fX:Bv8@?؟$` AA`?.Vj t?8\,x[:%u|=;0EZ8\!0 O4\`2`@V@{yӝ o:X69LJ{N*/snjhߡQ 7@^2v'p!*Gsy~ڱAƒA'슂EM&nSm^̕Y-CgqU2p4W nzߚG+6_:O~dFMqf9#]AmS8h\c7Wm`wz6Zsp藸Ar0s%q+ۺ`K_?чݱb"zs2_x%ma^xymldgupuk:q/ʲbw!>Fk,*_|[FEłcMsؗ΂d]'$'< LBfs-(kSlǹPcQ%0 )*i"L%1OZ;|PȈa˕:yP#)L &?^L|@ GX7FS_ <c:s(uc ψ`I7_>5kÅx$*t2`).(b@X0$Pܽ3_4d#. :cq OEz[iQ "^9y6~٨9e mB{F(ÛB,D/RM q9H<7z\Zɹ_+*HOFTlڛNw"zٵ>ۃ?=ayDN7cՍή# _ZRIs7ͳZȻ" B`'o4 ߞ8@3q^'1DbԢ8\s=wUD}5= d-Ҳ@aJPE';a43Π5wIāgق lKT8F3Ga1dE/EOr^% \O DGv/Eq ?ސؾ=?My2a,JW0_Dm?{ɜ\#v뽞hfaR=Z21OڌZ[/#j=qQ]' K'U4=M[?|,]ztF.mmSj(fyjVmR}sY ?ʎ"jdl,HC Bl%]rj0Z7Ȩ6>Ƿ/:QʳvgEnvjR9gcϼ;|9l&P#F)Ɋ<dȒ*Vԉ"7rJyGQ>ÓMUR7H[qBGוa.UOTR;H._o(m^uyRZzwol.[?0p ?4ϗ j IVzxȂ2V64fnQ&I)و|84vnT͛2w= [y9/v֩fVZ+wcxE9R> +j'dHZxv2DD}}c疷WԐrx8E,%cޙ kSO2ϏJB#ug~*5@Om䷘Y޻ ȚJ,$(2VH(!&T2ۃQQ+kwh0Us:5)gͬ?/VL~4S^CLrvZLHq&b{X$_o_>HwysnG*h T{;DLuxGծʿ<d[qZS#j' y61L]A"e%x2g tìeS20=2vu,sI{:;M b:gNDDjmxw-Ϝ H Jg3;JCvG)c<=Jdy Qk3i&r3L\U(W]2i4HXqEJ݊ Vzb5삳$kq>`WYvt3?&\UWm3a|] =k\]ZQ'a>R W1VZd2[!t;cmM?zH9uNȂ{Pmؘ BmaV;Kkk'Q4lrreLMK[yӶ'Qww¶ ~jItwνZh:V2DyצGۀͿ5RmPx0uwϗZJ.ºtHQ`rmCE>@6Q6!Rz@%Lg#5ϣ]ذP~t:۩[y`-e}*(y:wb 9vTS?hsI0\4p06 MKl*v'  +x}%f2 ? B Әy(-&8>Jׅe-}OtJ &xF2=(f55&El5b|7qV8-X–pa==|h3ċ"%:4aks=,#uǻX#5k'kYakڏӺsy9LW5dmCDm3ϴ,•Mwg$F*,qw u^M$+@=KṭN yð'1$eJ/*LLuH'00zxq8Vy۷hFPJoLC J _Sȥ׮ڵ@Fj[nTN (7Br)GKVjK\szk\޳+CUlU{TOflx1R)2Lb*V/3g]DQ!CC}o.D#trp4kPVFP _XhW~!B.m;2^+$L׹4qۖu? MqNJ,k-gb13'N0jx㈙o~gfF9XZ;$PP(@{78<]oENe#ԓ}WzpM8"[{.l{#V‹ugҷ%Կl짇\J~_8/cz#d7=SjyQ+u|U4x'-2K>Cx T8N Խw(0!X y#(H)×?@f,^7XOŷ9,L)ˉOKRTv,Ǎ|ozyJM  {r^;򥞎GSBFFDggUT#yWpiqmgMUЊ_+>_ 7(jt'fd^յ-inL`QF"2DS׎ pa7ۙGx MU1ݚ'/~[:JXIƮEY3/3!s[:ɖIdsFQR5~.1E ط$53-!>ӯB4ilVoMaǩJa/ H5?E c-\ ntX҄ ៿ To鎂~ R z3-*,1ꭒ)o9 U}XgڜWޅُ ៥ [=Yf2.Q)N+i|snFx^#?nE@B)-=8Z~ZyҙPNwMyQ5!z;KrVJn]DBGT5 9ПȘ"{4҇ cB#JsX@زAeI[ffluwg}^tliۺCjW- _P@ڥ]L~BBײC6iI]]_(Qs KEc@?eƆ͓SOՈJ~@^vy%U5zrjUK~`j~i/|wRvU56RLB F2Į1٧2mW@DDID"qS1/%Fɚgo`25s] ᴛfϻ_ͫ<w| @&ʺM: gn: 3\,w`K kCh7q@}c l.=3}s~Hn爒 }{|3d9$zzyrJZNp*wߥ oW_T ; b{x*MhB+z,)E3xgH uZWèyf<)~abbB7W(qxJp5"TgwyMx1Y /~EIYC52J'00sk倅λ^dđar /]0-q]<5h~^Hž "5 Xl,; 'Tq&@/rfj3( J H~1m:`}tϧ>Jp`KzقW6?Fy<0Dx4)@9jd)p9<|;ZQpK,OŶ(-­"k&{5^? R 5Xi>/n ~˘bCu=<\e;><anM[C&/R֑ٹVf :Weobz?5.1~kf :\ݓ^i&n} fpX$&cIu 6  趼נy9c10kTy^<4'f%̼4ɤf٠^VXIgČ۫^^G{p\16sMMncSFڐi#W.[ǦHG4Mt}BCƫ5tZLg.2c (3Fy;,o!;<4N:!Yk@Yg>/@֬gYz0q|9!0 Zs bxY@v}Ԇ6dC~{%L7)5!{\+RKd5>=ymy֮43EZ)Mes,. *zV{em+@͍p `J䌁~$jhx&/Cr/Zp/BFDUHjA 7&ro6F=BpYO PLuRkSK!6"ERNQB r1C6ĨP91icqX,:g[99[jz$JI x΍מC)K &NE2qz~f+ԛck8d?[rmZ֋L8FԜS=kg,޵zf?LnFuj-z6I̗*mlܞS>C'wNge;IVq/o8]fd1޵3V{6eVQxr?#qXaۙ_Sފ$L\pS!9"C>\_?/[on P T~Ux+ı,gY .#龻C#z">޶k!,s-vBDo D>;%ɠ l_ؠUj][%ވA+pu0*Z*!)LoCգR2F T1a.N[W2쉣vyzB@ }:u:l8Z;pe+V %-+ nn.؀IӐޜA%0F{e1f57rw%B94v GtCτ]1˘lϼg>??> endobj 252 0 obj << /Length1 1626 /Length2 9908 /Length3 0 /Length 10748 /Filter /FlateDecode >> stream xڭteT.޸;!@piqAK.!hpgfάs{~|k}oST&;Heb\5T텔T@@0U·BG'2!2P0@Ȁ.!!!: `ebaa/j^=+_;j@`?)U bf 6(Ag `U3kwSr79b8ί3}ۺ*ݫ53 fUN)W5hoWI^üj`3 r lM=^ssp  'V h rv~ Noo  `G~i}m p5+ {?@Թn_3 hA(ה> [Grߖw5^)zgʀbj9.hmSNvr`wP 5Xھo6rC@R'贬6 +W!?׿ ^?JQ0RR/6.~A/RoS`Z7'ϗῄM):i%KmJZyd0ko.h "1P\UWi.Tf=nLci[yg# tKCԕB"aTzu:ϩ1aT| ɏ5yrM4~+V NU!}5C`_oٛmRhd:Wt?,R }2!n\‡hI2ݫw])8_Po? &W8ҭQiֱN_$LB9md-jc^"7+J%F?$J`p$9Wlmb]%ʌ(_S=)Z U8P!3ď\c vfG*d  tTgu~#'}m\ ~ R*^}HbXE9^#{?ZVgbuF2o]{F||# RQE϶WC9^cid9&?U1[?bi=JzMZDd`F&}%5*)L'lZd$`t54zXqy "5:/hÑx}c 1,G Q1࡫x/E}$G\D>י1B>:Jg4u% Z.K\\^O 'D$H! I4adoqNS /paF:5{$Դ}5T ^+&{;Pѿ 2xevo*@RЩc['bE7?Jh͈y1g?b3'nal{Uuk' ,'SMp'D8f=4siO,UڸDG#NPq+BV8onQZO*Wqir{)X֨H^nCa5/G(Hew3DSE[;rYH.帬 CT^38;kBБ-Ĺ,!d2*x ! <;˴[8;UW$~|WȆ5ߢLI`)@8ǕֺV5/[t8юhGNc{ YdؓIoq(;:A`(Fc( zPb.^[z /9_h[?% CbωpJhIXx{얕4 奊&۷DpUNT ; ܮ߸0:yBzir"yW Bůcp=8f!mύV$3H/5i:LR~4TVv5('uRrchiGOT.y;k-|a8c!X,->cEwҤQ9m2\/jQ]i3j-j?=>diGJߺ˔4UP<-4eHh5kJcHDWDM%Dx<,f|{{YּǺH> v~A~ŧrt*dj)y@v#WQ8wtX5&ٱ@ pXŶje||@G גZJx!b;iJ kT;]Sjn$,T+]n׮@<y}Dd_w7/2MDumMhͯB HpU5=6G2)7 &oKo82WsLϝR8Jn`KY6˃bEx,4?osO蓘W$R7ͼK umQ>OR7!u Plo{O?;p @siLe$,bK<6W+LKIK'M&hh+# \E3cO.U\ͻeX{ST:?)u^0LkIXo^F}!}[,ܜ 6 Gu\(kyQiRƾPaE#vyt.]PcE*&4$NyI6>r!c_)\ΦVX`,wP 8-f%;NƷ<۫G;8ZqئPiV%J5pH>@Bad62LLf Ͽڝ,@|kR׵;d63dfvO U[{WmGlso(gazdZz}N?#P{ s|O-\}"s&t[2xsWt7{{eF{`gFߦ¨+0>z18eb5JIwXEZo}y iic ~ߊuru$h'cëEh7e=eh&Fc#bη]lcݭ.^V*JiS$/#{O4#:s> @EsSmqu0iRھ zCuXeXrKzfgn r?<0=-:2 Zm(3!oJHO \xfu$4gS2!VI^+UNKs[X[䢽{&M,fc)oXcrQS%0&>#|J% sOi!ni8BƟ$Տ}ubg>wb yM_T\?fb~Q\yh́WUTS㻾IGw`0Io2 ^r^W::4<&!Ydhe3.7a(lBpaO3waĐ &Xc.gAq'_YcR ;5E*#f1,`w1JBSӍ ǚ2aJa{X$DHWтrds"%s{{fvucn'KUXAנ m=9>> EMWp/5sF_Fy3K[FI"jZ/B떬5mxi[湧OM-&_ќA'|r՜|/uRGCXHA7R-sy)F_WAS&_ 7U?T}/϶\K*U^mQWsN =*^}ݎ/VZG4ȶ KR tߞ̀~Q={D. cCՋN%\yf|Dl)JC't;5H49~hi P"P ԗng+5 {A>4#ˇQ+l-@%ޙi7ljd3ܧ84:(;rB%y-'q/+EN<͔mՓ%DmYDs6Ο}?*TᗳBr6No2s!q+x2st Q(0B@s_JuD"DK?oYv oE3$8^p/jXɅbrk KK<#YTa=ڳ?|(DRL޵h.Vj8ٸ\N`jG0]>LTaoCeꨁ/ 銈n6JROل_eޓ(-i?"Y*jP䖬4GHKҸR*grE r`]=`[ 6Mء2!K!AQu۩Ua9٨\()dUH3g  '͐UyTdcxD>)h~P̀FZ!䓒^d9KЛ$wFy|+Q8VZV$ y{ƶg- 7K>Y8iys7ȀϽJvC&~vG|xdH$c65v ݾ) z3f(֯ݐ\ry4;Q ⶽ{y 0᎔fxϟ#ٺ0:i;S.իg⇢*w>I%x+Hedsx԰9۩&gnߺR+1+`nq0L/6W"4є0$ i[ u_ Ep<,(]~4 ֗>JG^k^&Wp$rZ<SWX+rG`ˍDYwټlI KrF;x]&.T*F5(= YhM7}RS ۣ),>NН$-d& ?2凎<\IvKq1I!HQL15'ӞJ>~-ǀ6 ů{b.t] xSGS&g!qO=$P:hi]}i~ZW`c =q]$!iF-Ɂ! 9IK z<s8blZs`l-*GTqj**xֶEXjфn:K_J&GH; i>ϘF DOUqk]hRltp׶;=Q1Ox1ՎST.f,4v8%57bZ[zkĢĕBǩ_L@y wL-i }ȞAM(-nfzl1t(T;ӥs놬Q b=u߶Nd1c4?w+B!DoOǪs-N3sc#Q-=c&oDl"x.x/Ld+W3Ey`bӠ ¯!6ѹRB *פ_2lJ2Fݾf(C}cPjV^)w`~ʌq1R5õG&qA =;{̕o=0 +څ'XQW$2_S\Q44CdEӤ}ǵ;\ 3՗>Ψ%'[שDriSB|M[~]v4M%Qܞ/tfB,aDFh46\~C  ' A%φ#UH+Mb2k/ 34B T(hq6y4oK{HeINGԺ?:Ang+i+*W LݔgeEi^Q.Wɱmdbv H2vۮ/F8y^+5#6f2I%Ȓ qC2d*=Ǣ@5Y}Fʲ~>mGR6Ҏx3s5Ed~miϣ010R4~p.󷷽1Fp d-R Oخs~xwawu;lD̫:A|}]!Vj=!&|`L V=ipg:~ )a,W|D1"#FRePċrt0?Ŭ FlQU;.?؛$wƷl3z';Bzdޛ+倬7[CJS='FKY7[5l/??ѭ|1rkGHzNS4r.vlv>GOr&2wJ <ʜ[(ҀəhПMe&]wnVT fh1CFor'`ӻ4 u JHȌ5=_J[_I @D3bADQFk-5nnT ﷌%jjP7 KQ~I>Z8LbkpaR0|Ic ϟWh=hjףZng:y~M|"Orzޙ'Qh.}*s g*j=' H+Mg*2AZY@J|"!zusQۄ]/<'KFZ+)%sG2 ~xw[r| hwz')șvuy1K5 >5MbqAkͭ@Xx?mg)լ&^Kym*E\lD^32cY01ۯHu֨vSe{f3Kܤva\?b6|ZtԤto=D8Ƒi8 t0wsu3!: OlM_- PXVvtY!J=Jvr'VAȏ ,6-˦k>=v)6z NfC`3zfo/QƨK@_nK/ԷsȻM|iݭ*>{PKʂ3b(ءkK" C [ [z!v)^GjW?Znfq=)chOQKh0uX}#|XCaՀ^C!WL|( WҍAިǕ:u([duө|ߣ^FroԊﭟŀ5aǔQ./)v,M6|eN6 ѐ>zeLbg܇$£Ę:r5F4~VDv$*F.g /Q^z,2 qB%4|Tk6?X|XHhY#'͋_"pÎs*RO^8wĘBkDbUE"{ |N5 _|LцV؎{46R9`+]D{~ObjNe҃ /KC _o ooBWX% yV_%V}0DTou**MqHfF=\&osiu/l&JG`!՝az*QoA#ȐIh'f\hBtg_ U/[қ)'\=b-WX$$z6i=6m9v\T*5-b]udЧHإ|Ka?QmšX#& rOj2H=`2x+u,N-qVĢHkLqm`BE봆z+oEd%7}x~J}U82Tv 8\(Nw8\D!psLL7J;u)6bF $}T%iYkƋyE]vw74xuaHgrC]HQ {τjL8cfc-~H,xL~JXָF)"gq euhNdFd5t!{>ԮK-n&u!jK/֐H zxtO?5ZcIoׄID.Zhzڍ=q|D **~ >c; (ըUܩ.Z>{"PՈr7?Cx;Y᳊ t{o_S-9y'jlIU5*+,'SSXKmt !!쟷Gj/ j)^Ri>O&=G7+SM n'௢{VJbP *.1i8ZMA/mpSiݱ`ܿx)ZNx endstream endobj 253 0 obj << /Type /FontDescriptor /FontName /BNHWSW+NimbusRomNo9L-Medi /Flags 4 /FontBBox [-168 -341 1000 960] /Ascent 690 /CapHeight 690 /Descent -209 /ItalicAngle 0 /StemV 140 /XHeight 461 /CharSet (/A/C/D/L/P/S/a/c/e/fi/five/four/g/h/i/l/m/n/o/one/period/r/s/t/three/two/u/v/y) /FontFile 252 0 R >> endobj 254 0 obj << /Length1 1630 /Length2 17223 /Length3 0 /Length 18070 /Filter /FlateDecode >> stream xڬc%͕mVm۶m۶mݧOǹϏN1Hil Elmhh92Ύ 2R4 Ʀ΀z(Ac}'s[!}'cN@`"ڹ99ȕT)S ?,#Mm?\lmB_*̌&VAY9uqQ2@A l`en274q4:- mmi͑/#@hglh757`owNsC+g 7WAv=::9:9fwNfNv4kؚ45t:8]e` 02ww/pv41 ƦFVƎab3togghy̝Lh4t]10[ol6c [NoJ˴}$7PB oWG+=26w X;bͭOQ[ĝ/5V;ə;L_ze#c+skzbS237mkWt¢ *T/Gfэux0hq02{oR ?ei}'sW߾_`m mYE'}? ƮƆPk˶-R3Ҝjs'4{@J }m{|RCw9*>jh9ܖ>%(F{Ѭzp(H;بtJ`.T#=nv4XU&t?q; n^(|\}Q ScP;j /HN_Fz~bSe@r%PF;?W=T$6;07.qŪmy.8D/L;ԗ۴T{F +ү%#y-`rҌ MMQ_Oڴ>j"vq1wXD.;$5NmdFG:ZμfBs Gtr7D0G[=%הVѦ._K+h&(E+k]W |]k\CB}6k'( }ݸ}-= AX<~ d|[l~~`_b[m!N,y B"[=|nÎ;seа>}*Z.=zJMzg/_Hz 5m}I(iziTaH 'uҖpl힥R)avɔ-֌ZV' iYHO w K@#֋F>Yүغ<ٟ3BYt՞ (őS <2(S괤f$-y.hIaA{q XOyXA4Q=&=P dp};2X"W ԀCkpz&~R.:sh`/p.[D8";Wc|Gbf(4?}6sT ;Ƭ`fЯ*Ӫ)+hЎRC$5Cx~+5{lT?,ApPG%ߠd'})q6mqHEgV9l19sOOB&>"C5I3Zf2NMڂU5HHX/gmW1H`괶3e!W>uHpn}ґ|v ڦ<= DTl{Y'ġiNldk?}I,ύ_!(qn%{@qd!Ĩ|\1i$ bZ+FfT2-)eJ8ܾd[%"Q_fzJp HF"X^=UbP͜Qc<{cer""wNJt\0,HxE'-ϸ0TVC%0ƀ8b=S„HŔ`Ƶ&l[ ^|@YbO%,.  HY/~/'ss^!v+1^ᑂ3\{B&*u<@N'%TX\!"36r[Lig%8z#{ĀãN / 7=qGBR[y2`&ߊpNg3E?L u_~xX` r,W~H8(&ߚ{A|:.|Ѝ[?PHi=Cum.}b4eՔoDcӐӓ'pNaX S\Eגu5T x+"*!#S6jj(0i\ }΁h':$`#'hٽt+RP{%ʢ _:/&9Dr|G }v@aĬ2*$.^^FȈY!E1}[,w̘=s7V&H(s֠ZfC AMSsW@jVdQ,zh6~BW+eM%vgV,;?=nMīNx'( J4c~ghsL4/ X]SqM 솦-]ZSR$Qe*!Xaqٴ!Aź~ tpiʋ@ٌ:>HoNu!A6NQkSuJwv?aHf~' u9A$x'>@&yI@8]udhNg? &=CXzX{ej/>YtjVo$S!@zvf*",ܶ JR]'񻘑I [O!"=y6Ԍ" z^-"& w7 DZPZ])mgקX{pKRRޔ}Gp |7~کT9 "Y9GZъUj%LnAݠH\~ps-@2D1G pkF .K"!U1YQhMD1Hl4Vwnk@a>lSIĘsv)6*hV*uYT*v$JBQ%pVN>ubdK h%y2 `J8GbF]sD}{ω#<ւdŒG Lę|'d$ )k{/LE;%(!&bPfL$^pXїľƑ2 hm{ea0k#εpPxe4VKsQ^81;dnWIZ uuELE$!Zx;ֿ [8Y%ɭIwDO$rD}466Fޗ@1z1Ph8fMDSMK_h8 v 䴅X;YRVtf_I[7AM0[HV.+yb|QD]+XJ$28 K̅7HfDZ?3 f|xG.L_<ق>ǁ썗 bRV(Aoj:: 9l4Țt0%Ya.U{H8o`3߿8Q^\ܓ#'f8"V Bqk+쁀Gڙ0}"*t^0Yl%K5Keh,-QG8'k]{U-ǔz/uoϕ~;Rv6iNY7Y,FhQ{k1:/)ČWX5/?=szX>ݒXSLPܸx*>kB(++wKMpUk3=!0/l'!|Q֢-aǘꑶ8fhn@d?gSL䡰_b>, lTLTT Ĵ?0C0[^?l@oFDz7E_G$|!WrMߣm^vJ m5TxJc&O-q2x+H}Y w6AjN͐,sof̎‹hӠq |13bH]~Wf018u·3[7i3PT)U[d;-yłѱ yDJ';C-R]qWg s>Tumg8kJ@;{ Q{䉞ߊ{xB/|>@: "l ԼE2M)+SQ&ac{Q;0FbEOsL8.P}:k 9pgK>2N9FlO4AL"isYw'6TAX1 3G)-u☡LȚl3smaȧf{LS }Q]P8K KVμ"Y̵>p/D:ld6Ҡ̂NjT9z=p9WҘcZ3U7Re<[H# ٻHĜyf2.إ< |MF$˶=G^(qJKaɼ3bo)u?/GB],nMIzVo(<nG Бs9E^cl4|^V;('/Pi}R,G0Mڿݿ!c^+ى%eHd V A^`}+Z|:uT D2 APeX" !B.1WR7My@\AIb qwA38K*=d<3'<~YL-9V2YE֓$I2򮽵]E$IP'WUuE>_K42 7u zdS'/FT2}WXEgV~{OJB6X 3 t kOjIALDvgu?4F9a @_"A!0G J׼hbپǭ*.0`rvQ^F}H [ߢ(vUUlpx3~%O(oc5@kWq/yVȆ})[˪\'_7%|VҿE 7'8K eK.cX:G`] ͂AU OէF[~Lh8GKWWǾPbR}<<7kusA7c%8퇅 > @ TH$J:?Ⱥr ^1DYNLj8Yb͉Yה aI6%jG!MG`?<8 SaՊfkBcoJ/O1iU##+3 91aw|JfB#`:I $|W6%WԎqUfj|%;3ظfAr? ãS$罽onDzbۃ2cvk`K J2seٯr^o w {fUvBM=4ܬk=<:W3rlߜ~Hr{OvtX ,3_Zj[f^3b0JLF+ΖҔ3NxϏ(($=YZvM0պis|`(] ",[6#dX*_pUJ(S\/B2bݑAwZ{PK4. ?sUvFd0J}|n|LT}ՃSglQ/ɧZHn3J[ ] u*#;'.4MF̮Dʄ@e~cƩWBj@zBYhn4![!є* };8}#j4_$>t}@ 6Ԑ^'-7oBr uEW}3y5\ U+s]pXbejiMh27eM{#kC։qV'K$!&?W(y~3>ampR'XP=< ?2iZXxpWP̖2-iV ``XC6  ?^P.y`^Т)|0X`M:C:THԺ~p2(Sk~lFy3I+A?;Q[1&2!REh%k_Y1 ȥ}ĽoM$Z3Xjy0xj?p9p$G,Z"<`l6a=+gt$GoKPgcUDgGCֶ,ldTUE^ȠV @x*sŵq#WfvCR@GfzC| 16A- -mtjC{p Qm/pYܺ)JYwBzid܋۬wl'/h;| VJnjv|*]6~\3bXw{+ޙ0snS'I%sfb.u< 3" & eWLq]{8t"DQ4pžm? [1Xjwz LMDT%3t@>^e3B`^Uiw̧泉nB׀Pe2m.E0RM7sNB7~CW!̆N%'Kt;yȽw6ʅw$R;vڙ6@cmY*J6{~S?$igm @wEqmI1(CL It~͖qtaNTAPG6u*F* knb'Q ;vZÐ+_SQ=J/jG!xrδ/,? a[^껢Uv_9>@͡8dT8/aD |p\:8x$BDST$øïm&j@ɗ i}6*Ӆ R[8J8FE}Q&yF{T ӥF8wra-!AȎwWF'3?⢈@R/lBW,džXObH &ȅ`hY i.d7̟tڒӦ,>p/ "NIm#<]gyKE;ݛCD$! |_t̵9B-A☟ۙ^p ݘȹ5, ]pbC= v(iV 0^"S+M5t5 V HMqVvl?]+*7.Y<=i>ne._GE-]fD;p6`_lN %8ڕ;0vq8a]xS\{1zUagvc@Y{?q{dy.^;As>99&(uʞ"uH-iC+\vze;a,mQgwV@F-Kk4km0Dm8=TN <"$&/uγrԑePGͅdKIuˬ=hS[CO(">$fDvyWxևl _"8|y" O(NNs!TF"L-JU5PyD \0i WeXJc<"!lvVH+hYwnA(haqiͲx;Y@__l>q<wW!0VGY:ɨl X*ۖFr#"b sb{$OgqaIMYZ籀4:Br3x(?elU箅Q֏4KͮFRǻabdˡ F^#hV4A`}`zJО>LX>XCm7YP2A/!)_av"7nO;4I }y-,npiJ HՉ7q^YuU {f|CR(A~\Mz0{L.LnRlc?Zsr% 0U.oIk ('Rxhb_,rX|' :G>g(?H2 cH}IF3<aJ AOM\R2M"hhSC Ko„ٕô9|=a1Bڐ8/ǪGkaN=gf(֯Kf|OPn3$z9R>W|%@cECF6BqZ\!2LcbHAQ1$T8+_HZ=v e[ӯAE6Kae*W i/8E&3 Qe4ǔ5r-`K)iwMݩ ˚wԻw2z^r)&6.v:2.rAY&ː\IP.V 15tΝF\y갼Ns_jk7-倀lKl1)h*7]o4%gFZ@Stp GA#dz,.:ؑ#Y}?,h ?֬#癳i<K9ݽWޢ}?PDC1PO0! DaD-?<|ƌ"gRm̦E{rӟ-CEZ)('߱W(A?"X/G:[I1Z@Fշ(`1h=WMRFV1zV QrE>l!nزNCR 'T.nI*ɤ`ȹw)qaQ"詄u^+ȿH>XLq`wZSH2'6{Kr:Gk.vtŶ4aA~Cbm3nV&.WpE{PTQύ`^<3!pc- a[şp&UQAoIJVpu(UhMmI_`1Ac׾@e0A jp[Ps&ҧj?6()hʣAclz2Ux©L;Untd >9C@bV쫿=KV$.T@@Ɛ dGʑJ:Q/e%bV2`bY{hg_,wO7jS%n /ͺ~&֚ 3M ˼6d4IQN >C3GĀ^|RFȾ2FN EIWBE=j!)˃42FydOu_mTN͆):4ڛy$OjVi9 0-E[髒xfqkAp;3':Da)`,f;I@% U?xĔE_;V ;?BFsx݋T } )qebsÿf(;Yo蔟5_o 鵘V6lI{n6@t>uB11ӱkaԓΝX:Wٵ"q!MmbR4"gkTASEfBFrRK\K)/}1OkiFjNV/DnO<}cF LZy\٨z"(\<~Q+;uu=mD!&bgL`손MTˣ] "2B%o[0: ΅7ٰVgS2"Ku`%'4/G ="$]ĩI7hb('[/wGIi8Ug"f`!]udlUűq U2(-^Wb@u8^N~A>a.pm?A9Cq-Jpij:. nM HP7Y=1;շf(LF~a9sJ4ʼn\T`>Ժ)]V9NoXufGWĵ?][ޙ KeV ZC !^+%0 A=%` MO]Wu,IX0?;$ɘK|u NՋMԌ Mؕ!k,>(/$#R~,$j?i{inQʌln8mmE|Vc\t+韝j= g%H_-PT|Hj\&匉*8Le˝QGvFN D09 O_C.9f&!(&鉄f|F vڶAbG;?h\\cBMF)/%IM\~=, ̄9dNǙ-s_i8umb|wD+S6'[v?'Yu&GK @}Vo- TqvtR4A4KBACFu۵2qQr‘ 5hǕ ynƙ-)#-kE$`<&ߨE땖ӾF /_h'Y7%EbSlۚCz|yxO#Nyl>hr;*#HG[0>?ȳ#OJiNh/TTMRj6w,3!lB: nC~Y&0Ke!Q,v )X]a&p-BX#)BK15=UILix\דvŽ]udS;9}+`cE nD6r78LWm7rzPmd,-]n곇QC_7ڄ~"j@oGt.C<9Ř{`!!YӌLVPhee!l&c]Q!OZ7'i-,H$(dFL0V9ii: e筇]qܣ܆3Ai"fsgE&hw >Y}y.adFL؄$!Q-ZYRtPsI{ 7,+TKKA>Nk MČJ}ڥf1S{K2*~G [ڒm)8x% 'Wx @ݿp/wί.Tʏ&DMUɔ#q.-MT2Tn'l%[mBj. P9֧,, W64$^ (+HVo7xC躌m"F^: 9CN] 5+[<!ypXF3jBe:@޺uq<'XD;wO*+B]~أ!i36Vxdԙ*{S0wnwQX = NE Ibi|B臺{{">R,V28: 3y ~ 'y*a ~aتY>NTiwG*fiK{% 7˒#'m@R#n;>w`\rǒ3,=1 ܞ(D LU`nmw HotiL$T;QZ?5 OsWmM~; 47*=WL@ttxR+"^0zAI Y7f1֚f~7 "F\~ЩQUIHx¶aeLN09ّ$ghי(A9FP~qw6`UEjH$> EFaj(xJ 3B% ˯Z{ ٙڔea[S84$kGFɕy/3c?\/Wº4ɢLUgnMy^['x9MIVveN6v.fBHT̖~-:+*z/\<1̪tم &nk*@I3!Yh%m-QtNLtΖx˯-c '-4:_lY$P3ÿt\gI] IY=qKZ3mJu yCy}I3Zerxr8iտ,20ҾP#WSBE裣)-xjlɦ8aN{eoL$O\uͰ?4nH߳?٨/փ꬛ԧo=]ihb |?-xͳ[ɹdJCœEmUZMR`M#fgQVPfè$P=e7L"!Jr|Dsb3:u<yGnܘQ5&4h7Q0sk}!\>!Sg,Eb{mf `)Z#LiP7XUiF7r*Smf@֣:$lHUN֥ꂂ%WGj: 9Xsy`% 9)d8E-7/6b Eޞϣ7 ulܳ}b_{T)B*ʜ9y};h Hgb֤d4E]nV3)g2445d7@9Yأ M[]^:kltܬTPnewuҤ+)$Ԍm6% SGƆ:~Fj茸df^?"53:4WNF7$Fp_GqFpeAt|E=-V䟇]Ep>,rsguΔ+]6FK 6ǏJJdw@d8&j= ^''.ʞf)Fv"V{|VaG_ ͈ Zf[Fr|z5]7xa[b$#UdZ$NceS~H$Zrc?8-4ٕ4,ߔW8xKrf+,S v.܉f ȿKIBe@ iǮ©Gʟt@jb7-་ #(VzE9Lؘ F U.3mƲTJ[`ٸh4HE/hd%uEWW0 Gq%4]]&[v$ɬEf1^|?یRP?}k}gh"^ވ(e$ҍ;[!SNI %WJȯ$|pZޑye]tܻeIF 9@ᡢ%jQV/M!ٴ^Y)?fd&4 M@E|B9 i9Ķ[V3{8PS xu"Ax>ށ^X"5fV;Ӵm]^ApTsA`ql2X{-4aS$u+dt8'!$۱<(*“j>:X~qbHt#[:GFRJ9 sdB1yI.VL2x pL  ;cOoN"#~3+HR Qhu\mn5f͜LBM%bs~hz1>[7DMe9!XP |pVĜ.3ae(|`:SA ߀wQ\,n6JM. DtutRa$ot/9  |ʩb췣 ?.d{ 1i+g2 Sig ?|"J}ѶljՆ{;4@( +_^4(OgI4Rp3^ ꃺ+CC 8wލ37tx.|RMGz,b E-rk!6'~%]g^}ư<UOYn@JVGlmTEN)7Bcj ޵- 5oȃ2:#s=Y рh ȋ3'>b/@,&l}~.}~|;6wI6aZ5iWVU xuR%-}Y^IM.6ޏDJ4(䷁kF)GpN9-qX۲Wmz#=H? dti([RI-ICMgMi:+qVmèdsV}ižNT*:deRC ﹒ӳE~'Wc@Koٶ32c$^I6|P)875ϔtZ }  !eOj R4⊲S?I^>7Pk-qrb![.!D(J)> endobj 256 0 obj << /Length1 1647 /Length2 8956 /Length3 0 /Length 9802 /Filter /FlateDecode >> stream xڭweTܲ6Z܂KRݭx @HRwhZŊ/n-)R]/}{|syfY+z2vP"h:xt.P1un]  xĄ܁pG(D@[_LL  uqwtlF윜\qy9:@,?<` _8wrZ&*J6%MtlBh PwB`@v=By䒁0Wc]aG8{)n Ww裇#H apcVmyſ넃raj񧥿GGn@o\6@#l2<`Vp:Xہ0##gֽ+h_^U#` <洅?vp`=' b33EXA!`W L `ߩ E7qU_=`Mk{5k?lpmPkGFON!qxT_Go#Lhbt;B"uA||m!BGPIIض9k?N\LFP:zEs g k7?OFb 3Gzpkl_z@7 V")=+^G;,o7̵ _\\J\ 0"~gznMc )# _@YH9zE^ƎQʰE-:H;{0ga3sW@w $늶wX7/Y{zvuQqc1Kxⱼ v˥zijPTCcdf$ O{Hl˨KsE-jk(~XXH "w6>b˶z A>r.,T~g[j28LӼWt@ &+um%1Y7'Rt8B>`P Ak !j;*-jPλΆ3X/)@veفYsn\(9d0gzٍjZlb~M*1bN+C߲*MQϬe2% {hM fr~q]Ï_f,*F̭Oc_O1ܔfj4f%zeN)bښQ~;B}2yzО1j-QLОclJb*W9؀U}oƌ>ԉ)QwQ[-g?)nZ rVlʻNE"\%|[>[Oun'FP~\9—1 xv0AƏW:;!W:`t#T \64h^).:X9Q< !O/VACz`BbTx_WÉ[A&T]øx盢l{yFe`_#Bo9O߀z3ۼ 2mmqhUu<1eY9}?hUd[J5xAO,ŊixpC&#O>N'4 ϰFru/&\uj|odBl8e3?mB45W R,]7hƟ'תpwQvW$NUkv-Q[=l0Ğ'y>@l W1OUz*h/qTg2`|؏ޏ__pqVC<{ ʪys%#3賢/`;vwĤΣ`e4 "hWe*J! jh5vZh5o.z"q@!ɲχGû'pm!oO/O1޸ɉke:]n) W@g:ӂBc_,5b]{T.9Mf]G"jY>ǤF}y"֫u{EY̺Q&xڡ%X)t1O5'\uq_2 xBvf|imgq ^u$tL\|gc|#&"2qנ\W99fISíCt7/?+Sr'1;; |ʝz$w#fӉ35ϐ9XTrM2\2+j3t+PuC4(˄⸌z%A!RWx QT}WqUakyk\}8nmj%>+Uit1PGh}HK @h(n-dÐj_xGf{N*@"^!UTP VZNC=}Or$Px\@)vڐke9(ofLŚw)d4]B~k⦵gIA˰#G:&0/4+k߬-zSJrMug![H.%e\Jyk눌[ρ{86F- -N}-gt^EU]y"! o0f%i9Tn78 ;x8G_XHaInj2{_W߿K4ע/+o5)F;ȖgM<aÌ=jd29o*@۵ OwՓBs'NY(őjL ܅:5ggbԙ9IbAQ$gl0eNж;ĽߤeMX0;=]jOH4IC_V Q*ϟP$+ܖ=B7]b-g@$֘ 2g!~i _,J.Ta̕Tcm6݄ *򭝂b5߇,B\>Wu 0hNj]p$zR:6n%3 /:mPݰ'7#7;ԋlpaӊG FogQXҐ+ZRnUbg[}҈jhp{J.'ں"dVQQN<1"(c^Byy?n(B8BfapJRRU$|@xTYXjS![{r&rQmRhesBpK<({eRZ$Lo B00!]&ޒ2r7 ʕvK*]GKˣf쵲/=4۽Fj LzgaTpbYɪo@cuOV %~cEnT NlŲIOn~j xؼoUjƋϤ]QOVj-O2UB3 v*"lѫ<Iޤ؝f:VN ,N3|Uhuky~VuF+%P:J N,4^B׍_gb= _fo+Cr}N#~H-2MFU b yIv %3@ Dx"S0h7HνÜ[XڳBlӸ47/}dkR c5U7iVāp`/aO]& >8uV :cJ%ڵ>-:JiЎ~[LIVcNwȘA4E=ս@F^A׾j ?W8o/̡ Zw෡k\-p(Q5o46 $j-*̾µ4y%>U =3a- f>k 'j٣략r.AkZ\4FJ6Y" ?ϻyMJQb`Ϝf]ƞnmpig4$y;&0<̽mSi]/yAjlk7|/k0=?vj' V hrڮqFhr:;mޜC\34ԽSǹKL=^Չ/fq֌>ɳv!2Cӎʕ$k޺h. >mhz"w"Q|cpFOxAS.]O?A77N9 { jTTF%ϻIJsBk#òÜսVfN7_] |=g0nw MF[pr+uȧ/s`[KeVl!S!v:  ?[ 84zۏPcF%[42z`*ʣͳ!4 YgٽkN܄ 71|S6E^nc?*ƌl ܣ.g"CSԪ|Uֽ+$Z{IF9I$ g~m)7 $]=+(#WRs[lГ-G{L|Kg#^X!#+9|0B8;ڪ6j>Lf46U+mCo` ܉A5@ W&:8()9K3U{+򏂾NTh3$VQ 0\8 xMmgDlHN򿢄9@OyGf<d;Hĸ?.tGS&}8ȝr**2pdGS@iaĚ; vRxBNzrjN(-^.9_@903хfw zyWQvBVC“Chl A,͆A-8^#y0ʽdPN_0!Lj1P֌}6!5ڵJq2iYA&snK<6e|‰P9yWc9r}UJSu-MM|sRhܯ=i]Aj-k-~#^ no1-Q>P`Rq9,!8װ6˶%Q32M [jRTgÐYO?`) RK1e\rIIaA~/Ts̺$>=w äY7- 9}! rZcHŇsCnd/1]֫Lz {Ҧe>yQBXWVNf4O1U!]sO7 RAb1m RۮL{_i.N_?{<RuR^l5wVih /)jĊ$ye徥im@&Sgo[l4be}RGj .Cb(LDγ%}ꅹNу17oc|;w# cp6lK\nJN{k'e},=u5O; 6UZCޔN`@^LR+*PV<| AU?^,o=؞-除۪E (\k!Ag}?ԙ*\Y 0UYX2fc0sTNuhx=xd |+%칕 o=c_BW>FyM̉cb%.[Ոuǩ}0cڅOΎ" fMRnF,:Ƈc4uGw?YGp|{XrAh, ۴KR}O77~?:A0f{r>v )qtE2{np1H& ?W>F8bRL)aAD48~dpKGdw3.[,ƒyy/z M*{xF+C6K C?Q]{GCVl|@,v҈YRM2{VSa@)HCш}He%I%CH]tkr}U|VNɏSLu gs  w~uIP436gB+[Rv)2"pAQLmKțXm+J]ѩߔ\7Bj2(I8 VzoCfEa3>7(Ry%Dp=U˔3e*r,uX}f5uuxqFxZ$5]!0",KE< dSe/n y}=(}ҙyiroT=y7ae^뉩e6;[~RUg svN}EyO1MI.XR׊%n w~9$61ot'RKeHOz.⮴r1 B@v>j)81I1#V*zZ-7Y)gNl-7Ăԡg>SۛYu+TD17['6K UC:.n6p0{m~A ۬KՍ;\ /sZwŮl^ ֝ԔG.lD%9Ou|* ިp>P#hXCK!Zm+lF6;2WXcc%}&P >Z}}mJDg*6l,\G$.XZY)t}5yRih ٶN9LTJEl4tldh{YZԍ $xȢ%TԶ\q.T>/IC8iڨ RkN:+ _.%d1t brS(tI5v8^p-㩣;&q1|?+4$S'+:`\6lԶbE%o#0WYb&̪qziNÛ .hxĹv֖K]Ե]-v_N3+cCp+ ,]gG߮abKXObMW>э`9:x]$AmI'^u.mO]-kdUJ`vX1itNv~#,n!=`p2m޷D[?z7ϵO^+ESK#zV|j3r c_v>ϬLK2IuOf"ͅwܣ92 "&@~uŚ+ʼnx':AQuPaU4\•(d:& n+d4P1g=Yj܂6̃L XLb"0T50u>(y7QuUk=r Iq!=^YiƏ%#g ok [N :l{(!h1\itސKT'ͬ2#u h\}R@K*'0/-JnmI^(w)mm|fG >Bm[DU203wllwC3q3_iT-3Z_ D2 e"9fCY졊QᨬfhT`b_2wUy0 ,!Hz@Is웢`ksOPg"5ӰB?0H;ZP?޲{g f` :]Œ~]5.宛\xjo-/*Rk8Rr [E ǧgFaˡt F/mK99S/`t3_JI"R1H\EFA'QՒ(QbgmסW3<XOg<)|VlڼFC9XhhM[X&RX} I|flu\IYq#?'<3{JX#'x0=Xq* +6zzHēG|f*o#.-ci"V;!F򮠸0;oK dissɾ#N*.#̺i-aN D."{ǹГ'Rhzc;%VXA^En endstream endobj 257 0 obj << /Type /FontDescriptor /FontName /YVGGEZ+NimbusRomNo9L-ReguItal /Flags 4 /FontBBox [-169 -270 1010 924] /Ascent 669 /CapHeight 669 /Descent -193 /ItalicAngle -15 /StemV 78 /XHeight 441 /CharSet (/C/P/S/a/c/e/five/four/g/h/i/l/m/n/one/p/period/r/s/six/t/three/two/v/y) /FontFile 256 0 R >> endobj 242 0 obj << /Type /Encoding /Differences [2/fi/fl 33/exclam/quotedbl/numbersign/dollar 39/quoteright/parenleft/parenright 44/comma/hyphen/period/slash/zero/one/two/three/four/five/six/seven/eight 58/colon/semicolon 61/equal 64/at/A 67/C/D/E/F/G/H/I 76/L/M/N/O/P 82/R/S/T/U/V/W/X/Y/Z/bracketleft 93/bracketright 97/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z 149/bullet 169/copyright] >> endobj 175 0 obj << /Type /Font /Subtype /Type1 /BaseFont /SFAHAV+NimbusMonL-Regu /FontDescriptor 249 0 R /FirstChar 34 /LastChar 122 /Widths 243 0 R /Encoding 242 0 R >> endobj 96 0 obj << /Type /Font /Subtype /Type1 /BaseFont /TEHGZT+NimbusSanL-Bold /FontDescriptor 251 0 R /FirstChar 2 /LastChar 121 /Widths 247 0 R /Encoding 242 0 R >> endobj 147 0 obj << /Type /Font /Subtype /Type1 /BaseFont /BNHWSW+NimbusRomNo9L-Medi /FontDescriptor 253 0 R /FirstChar 2 /LastChar 121 /Widths 245 0 R /Encoding 242 0 R >> endobj 102 0 obj << /Type /Font /Subtype /Type1 /BaseFont /EEEGRV+NimbusRomNo9L-Regu /FontDescriptor 255 0 R /FirstChar 2 /LastChar 169 /Widths 246 0 R /Encoding 242 0 R >> endobj 148 0 obj << /Type /Font /Subtype /Type1 /BaseFont /YVGGEZ+NimbusRomNo9L-ReguItal /FontDescriptor 257 0 R /FirstChar 46 /LastChar 121 /Widths 244 0 R /Encoding 242 0 R >> endobj 97 0 obj << /Type /Pages /Count 6 /Parent 258 0 R /Kids [90 0 R 99 0 R 144 0 R 170 0 R 196 0 R 201 0 R] >> endobj 222 0 obj << /Type /Pages /Count 3 /Parent 258 0 R /Kids [214 0 R 224 0 R 237 0 R] >> endobj 258 0 obj << /Type /Pages /Count 9 /Kids [97 0 R 222 0 R] >> endobj 259 0 obj << /Type /Outlines /First 3 0 R /Last 67 0 R /Count 6 >> endobj 87 0 obj << /Title 88 0 R /A 85 0 R /Parent 67 0 R /Prev 83 0 R >> endobj 83 0 obj << /Title 84 0 R /A 81 0 R /Parent 67 0 R /Prev 79 0 R /Next 87 0 R >> endobj 79 0 obj << /Title 80 0 R /A 77 0 R /Parent 67 0 R /Prev 75 0 R /Next 83 0 R >> endobj 75 0 obj << /Title 76 0 R /A 73 0 R /Parent 67 0 R /Prev 71 0 R /Next 79 0 R >> endobj 71 0 obj << /Title 72 0 R /A 69 0 R /Parent 67 0 R /Next 75 0 R >> endobj 67 0 obj << /Title 68 0 R /A 65 0 R /Parent 259 0 R /Prev 55 0 R /First 71 0 R /Last 87 0 R /Count -5 >> endobj 63 0 obj << /Title 64 0 R /A 61 0 R /Parent 59 0 R >> endobj 59 0 obj << /Title 60 0 R /A 57 0 R /Parent 55 0 R /First 63 0 R /Last 63 0 R /Count -1 >> endobj 55 0 obj << /Title 56 0 R /A 53 0 R /Parent 259 0 R /Prev 39 0 R /Next 67 0 R /First 59 0 R /Last 59 0 R /Count -1 >> endobj 51 0 obj << /Title 52 0 R /A 49 0 R /Parent 39 0 R /Prev 47 0 R >> endobj 47 0 obj << /Title 48 0 R /A 45 0 R /Parent 39 0 R /Prev 43 0 R /Next 51 0 R >> endobj 43 0 obj << /Title 44 0 R /A 41 0 R /Parent 39 0 R /Next 47 0 R >> endobj 39 0 obj << /Title 40 0 R /A 37 0 R /Parent 259 0 R /Prev 11 0 R /Next 55 0 R /First 43 0 R /Last 51 0 R /Count -3 >> endobj 35 0 obj << /Title 36 0 R /A 33 0 R /Parent 11 0 R /Prev 23 0 R >> endobj 31 0 obj << /Title 32 0 R /A 29 0 R /Parent 23 0 R /Prev 27 0 R >> endobj 27 0 obj << /Title 28 0 R /A 25 0 R /Parent 23 0 R /Next 31 0 R >> endobj 23 0 obj << /Title 24 0 R /A 21 0 R /Parent 11 0 R /Prev 19 0 R /Next 35 0 R /First 27 0 R /Last 31 0 R /Count -2 >> endobj 19 0 obj << /Title 20 0 R /A 17 0 R /Parent 11 0 R /Prev 15 0 R /Next 23 0 R >> endobj 15 0 obj << /Title 16 0 R /A 13 0 R /Parent 11 0 R /Next 19 0 R >> endobj 11 0 obj << /Title 12 0 R /A 9 0 R /Parent 259 0 R /Prev 7 0 R /Next 39 0 R /First 15 0 R /Last 35 0 R /Count -4 >> endobj 7 0 obj << /Title 8 0 R /A 5 0 R /Parent 259 0 R /Prev 3 0 R /Next 11 0 R >> endobj 3 0 obj << /Title 4 0 R /A 1 0 R /Parent 259 0 R /Next 7 0 R >> endobj 260 0 obj << /Names [(0:0) 95 0 R (0:101) 241 0 R (0:15) 150 0 R (0:17) 172 0 R (0:18) 151 0 R (0:20) 173 0 R] /Limits [(0:0) (0:20)] >> endobj 261 0 obj << /Names [(0:21) 174 0 R (0:22) 176 0 R (0:23) 152 0 R (0:25) 177 0 R (0:26) 153 0 R (0:28) 178 0 R] /Limits [(0:21) (0:28)] >> endobj 262 0 obj << /Names [(0:29) 179 0 R (0:30) 180 0 R (0:31) 181 0 R (0:32) 182 0 R (0:33) 183 0 R (0:34) 184 0 R] /Limits [(0:29) (0:34)] >> endobj 263 0 obj << /Names [(0:35) 185 0 R (0:36) 186 0 R (0:37) 187 0 R (0:38) 188 0 R (0:39) 189 0 R (0:40) 190 0 R] /Limits [(0:35) (0:40)] >> endobj 264 0 obj << /Names [(0:41) 154 0 R (0:43) 191 0 R (0:44) 192 0 R (0:45) 193 0 R (0:46) 194 0 R (0:47) 198 0 R] /Limits [(0:41) (0:47)] >> endobj 265 0 obj << /Names [(0:48) 155 0 R (0:50) 199 0 R (0:53) 157 0 R (0:55) 204 0 R (0:56) 205 0 R (0:57) 206 0 R] /Limits [(0:48) (0:57)] >> endobj 266 0 obj << /Names [(0:58) 207 0 R (0:59) 208 0 R (0:60) 209 0 R (0:61) 158 0 R (0:63) 210 0 R (0:64) 159 0 R] /Limits [(0:58) (0:64)] >> endobj 267 0 obj << /Names [(0:66) 211 0 R (0:67) 212 0 R (0:70) 161 0 R (0:72) 217 0 R (0:73) 218 0 R (0:74) 219 0 R] /Limits [(0:66) (0:74)] >> endobj 268 0 obj << /Names [(0:75) 162 0 R (0:77) 220 0 R (0:78) 221 0 R (0:81) 227 0 R (0:82) 228 0 R (0:83) 164 0 R] /Limits [(0:75) (0:83)] >> endobj 269 0 obj << /Names [(0:85) 229 0 R (0:86) 230 0 R (0:87) 231 0 R (0:88) 232 0 R (0:89) 165 0 R (0:91) 233 0 R] /Limits [(0:85) (0:91)] >> endobj 270 0 obj << /Names [(0:92) 234 0 R (0:93) 166 0 R (0:95) 235 0 R (0:96) 167 0 R (0:98) 240 0 R (0:99) 168 0 R] /Limits [(0:92) (0:99)] >> endobj 271 0 obj << /Names [(0:configuration) 160 0 R (0:ldap) 156 0 R (0:mail) 163 0 R (0:preliminary) 149 0 R (1.0) 2 0 R (2.0) 6 0 R] /Limits [(0:configuration) (2.0)] >> endobj 272 0 obj << /Names [(3.0) 10 0 R (3.1.1) 14 0 R (3.2.1) 18 0 R (3.3.1) 22 0 R (3.3.1.2) 26 0 R (3.3.2.2) 30 0 R] /Limits [(3.0) (3.3.2.2)] >> endobj 273 0 obj << /Names [(3.4.1) 34 0 R (4.0) 38 0 R (4.5.1) 42 0 R (4.6.1) 46 0 R (4.7.1) 50 0 R (5.0) 54 0 R] /Limits [(3.4.1) (5.0)] >> endobj 274 0 obj << /Names [(5.8.1) 58 0 R (5.8.3.2) 62 0 R (6.0) 66 0 R (6.10.1) 74 0 R (6.11.1) 78 0 R (6.12.1) 82 0 R] /Limits [(5.8.1) (6.12.1)] >> endobj 275 0 obj << /Names [(6.13.1) 86 0 R (6.9.1) 70 0 R (Doc-Start) 94 0 R (page.1) 93 0 R (page.2) 101 0 R (page.3) 203 0 R] /Limits [(6.13.1) (page.3)] >> endobj 276 0 obj << /Names [(page.4) 216 0 R (page.5) 226 0 R (page.6) 239 0 R (page.iii) 146 0 R] /Limits [(page.4) (page.iii)] >> endobj 277 0 obj << /Kids [260 0 R 261 0 R 262 0 R 263 0 R 264 0 R 265 0 R] /Limits [(0:0) (0:57)] >> endobj 278 0 obj << /Kids [266 0 R 267 0 R 268 0 R 269 0 R 270 0 R 271 0 R] /Limits [(0:58) (2.0)] >> endobj 279 0 obj << /Kids [272 0 R 273 0 R 274 0 R 275 0 R 276 0 R] /Limits [(3.0) (page.iii)] >> endobj 280 0 obj << /Kids [277 0 R 278 0 R 279 0 R] /Limits [(0:0) (page.iii)] >> endobj 281 0 obj << /Dests 280 0 R >> endobj 282 0 obj << /Type /Catalog /Pages 258 0 R /Outlines 259 0 R /Names 281 0 R /PageMode/UseOutlines/PageLabels << /Nums [0 << /P (1) >> 1 << /P (2) >> 2 << /P (iii) >> 3 << /P (1) >> 4 << /P (2) >> 5 << /P (3) >> 6 << /P (4) >> 7 << /P (5) >> 8 << /P (6) >> ] >> /OpenAction 89 0 R >> endobj 283 0 obj << /Author()/Title()/Subject()/Creator(LaTeX with hyperref package)/Producer(pdfTeX-1.40.3)/Keywords() /CreationDate (D:20081228120010+01'00') /ModDate (D:20081228120010+01'00') /Trapped /False /PTEX.Fullbanner (This is pdfTeX using libpoppler, Version 3.141592-1.40.3-2.2 (Web2C 7.5.6) kpathsea version 3.5.6) >> endobj xref 0 284 0000000000 65535 f 0000000015 00000 n 0000002419 00000 n 0000093056 00000 n 0000000054 00000 n 0000000085 00000 n 0000010694 00000 n 0000092972 00000 n 0000000124 00000 n 0000000159 00000 n 0000012116 00000 n 0000092849 00000 n 0000000198 00000 n 0000000239 00000 n 0000012238 00000 n 0000092775 00000 n 0000000281 00000 n 0000000317 00000 n 0000012420 00000 n 0000092688 00000 n 0000000359 00000 n 0000000400 00000 n 0000012724 00000 n 0000092564 00000 n 0000000442 00000 n 0000000478 00000 n 0000012907 00000 n 0000092490 00000 n 0000000522 00000 n 0000000588 00000 n 0000013827 00000 n 0000092416 00000 n 0000000632 00000 n 0000000687 00000 n 0000014980 00000 n 0000092342 00000 n 0000000729 00000 n 0000000761 00000 n 0000016613 00000 n 0000092217 00000 n 0000000801 00000 n 0000000853 00000 n 0000016735 00000 n 0000092143 00000 n 0000000895 00000 n 0000000925 00000 n 0000017221 00000 n 0000092056 00000 n 0000000967 00000 n 0000001012 00000 n 0000017404 00000 n 0000091982 00000 n 0000001054 00000 n 0000001086 00000 n 0000018494 00000 n 0000091857 00000 n 0000001126 00000 n 0000001175 00000 n 0000018615 00000 n 0000091759 00000 n 0000001217 00000 n 0000001252 00000 n 0000018918 00000 n 0000091698 00000 n 0000001296 00000 n 0000001352 00000 n 0000020803 00000 n 0000091586 00000 n 0000001392 00000 n 0000001443 00000 n 0000021046 00000 n 0000091512 00000 n 0000001485 00000 n 0000001523 00000 n 0000021412 00000 n 0000091425 00000 n 0000001566 00000 n 0000001604 00000 n 0000021656 00000 n 0000091338 00000 n 0000001647 00000 n 0000001684 00000 n 0000022703 00000 n 0000091251 00000 n 0000001727 00000 n 0000001764 00000 n 0000022886 00000 n 0000091177 00000 n 0000001807 00000 n 0000001848 00000 n 0000002126 00000 n 0000002478 00000 n 0000001898 00000 n 0000002242 00000 n 0000002301 00000 n 0000002360 00000 n 0000090135 00000 n 0000090828 00000 n 0000003171 00000 n 0000002994 00000 n 0000002548 00000 n 0000003111 00000 n 0000090477 00000 n 0000004712 00000 n 0000004868 00000 n 0000005024 00000 n 0000005171 00000 n 0000005318 00000 n 0000005464 00000 n 0000005610 00000 n 0000005757 00000 n 0000005904 00000 n 0000006051 00000 n 0000006198 00000 n 0000006345 00000 n 0000006492 00000 n 0000006638 00000 n 0000006785 00000 n 0000006934 00000 n 0000007083 00000 n 0000007230 00000 n 0000007377 00000 n 0000007524 00000 n 0000007671 00000 n 0000007818 00000 n 0000007965 00000 n 0000008123 00000 n 0000008281 00000 n 0000008428 00000 n 0000008575 00000 n 0000008721 00000 n 0000008867 00000 n 0000009016 00000 n 0000009165 00000 n 0000009312 00000 n 0000009459 00000 n 0000009605 00000 n 0000009751 00000 n 0000009898 00000 n 0000010045 00000 n 0000010192 00000 n 0000010339 00000 n 0000010486 00000 n 0000010754 00000 n 0000004261 00000 n 0000003254 00000 n 0000010633 00000 n 0000090304 00000 n 0000090650 00000 n 0000012055 00000 n 0000012177 00000 n 0000012359 00000 n 0000012664 00000 n 0000012846 00000 n 0000013766 00000 n 0000014919 00000 n 0000016552 00000 n 0000016674 00000 n 0000017160 00000 n 0000017343 00000 n 0000018433 00000 n 0000018554 00000 n 0000018857 00000 n 0000020742 00000 n 0000020985 00000 n 0000021351 00000 n 0000021595 00000 n 0000021777 00000 n 0000022825 00000 n 0000014131 00000 n 0000011936 00000 n 0000010864 00000 n 0000012298 00000 n 0000012481 00000 n 0000012542 00000 n 0000089964 00000 n 0000012603 00000 n 0000012785 00000 n 0000012968 00000 n 0000013029 00000 n 0000013090 00000 n 0000013152 00000 n 0000013213 00000 n 0000013275 00000 n 0000013336 00000 n 0000013398 00000 n 0000013459 00000 n 0000013521 00000 n 0000013582 00000 n 0000013643 00000 n 0000013704 00000 n 0000013888 00000 n 0000013949 00000 n 0000014010 00000 n 0000014071 00000 n 0000015102 00000 n 0000014738 00000 n 0000014241 00000 n 0000014857 00000 n 0000015041 00000 n 0000017586 00000 n 0000016372 00000 n 0000015199 00000 n 0000016491 00000 n 0000016795 00000 n 0000016856 00000 n 0000016917 00000 n 0000016978 00000 n 0000017039 00000 n 0000017099 00000 n 0000017282 00000 n 0000017465 00000 n 0000017525 00000 n 0000019101 00000 n 0000018252 00000 n 0000017696 00000 n 0000018372 00000 n 0000018676 00000 n 0000018736 00000 n 0000018796 00000 n 0000018979 00000 n 0000019040 00000 n 0000090942 00000 n 0000021838 00000 n 0000020561 00000 n 0000019211 00000 n 0000020681 00000 n 0000020864 00000 n 0000020925 00000 n 0000021107 00000 n 0000021168 00000 n 0000021229 00000 n 0000021290 00000 n 0000021473 00000 n 0000021534 00000 n 0000021717 00000 n 0000023007 00000 n 0000022522 00000 n 0000021948 00000 n 0000022642 00000 n 0000022764 00000 n 0000022946 00000 n 0000089561 00000 n 0000023104 00000 n 0000023479 00000 n 0000023802 00000 n 0000024275 00000 n 0000024917 00000 n 0000025388 00000 n 0000038406 00000 n 0000038800 00000 n 0000049083 00000 n 0000049438 00000 n 0000060306 00000 n 0000060616 00000 n 0000078807 00000 n 0000079331 00000 n 0000089253 00000 n 0000091035 00000 n 0000091103 00000 n 0000093127 00000 n 0000093271 00000 n 0000093417 00000 n 0000093563 00000 n 0000093709 00000 n 0000093855 00000 n 0000094001 00000 n 0000094147 00000 n 0000094293 00000 n 0000094439 00000 n 0000094585 00000 n 0000094731 00000 n 0000094905 00000 n 0000095055 00000 n 0000095197 00000 n 0000095349 00000 n 0000095509 00000 n 0000095641 00000 n 0000095743 00000 n 0000095845 00000 n 0000095943 00000 n 0000096025 00000 n 0000096063 00000 n 0000096353 00000 n trailer << /Size 284 /Root 282 0 R /Info 283 0 R /ID [<97AD9771D3233F41A2184F459653CAED> <97AD9771D3233F41A2184F459653CAED>] >> startxref 96684 %%EOF phamm-0.6.5/docs/install.txt0000644000175300017530000001672012643155515013751 0ustar phammPhamm Install Phamm Team Copyright 2008 Alessandro De Zorzi, Mirko Grava Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation. __________________________________________________________ Table of Contents 1. Preliminary 1.1. Obtain Phamm 1.2. Prepare the files 1.3. Requirements 1.3.1. Optional requirements required for email 1.3.2. Optional requirements for ftp 1.4. Contents 2. Configure LDAP Service 2.1. Schema 2.2. Change phamm password 2.3. Populate 3. Phamm configuration 3.1. Config file 3.1.1. Config file (plugin support) 4. Setting mail services 4.1. Config Postfix 4.2. Config Courier 4.3. Config Amavis 4.4. Config Gnarwl 4.5. cleaner.sh script __________________________________________________________ Chapter 1. Preliminary 1.1. Obtain Phamm To obtain last version of Phamm, please visit the web site www.phamm.org. Files can be download directly from http://open.rhx.it/phamm/ __________________________________________________________ 1.2. Prepare the files Untar the archive and put the directory phamm-X.X.X in a web accessible director (Example: /var/www/). tar xvfz phamm-X.X.X.tar.gz mv phamm /var/www/ You can obtain to configure httpd to use Alias and make accessible from web only the sub-directory phamm/www-data. __________________________________________________________ 1.3. Requirements Phamm should works any web server that support PHP. Phamm Team tested Phamm with Apache and lighttpd. You need a OpenLDAP server configured and a Webbrowser (doh!). __________________________________________________________ 1.3.1. Optional requirements required for email * postfix email server * pop3/imap: severs (that support ldap)examples: cyrus,courier. (tested with apache) * gnarwl: for autoresponding:(to first user email) * amavisd: for anti-virus/anti-spam: * spamassassain * clam-av or similar av-software (tested with Clam-AV) __________________________________________________________ 1.3.2. Optional requirements for ftp * pure-ftpd * pure-ftpd-ldap-backend __________________________________________________________ 1.4. Contents In the examples folder you can find examples of all the configuration files for each server section outlined below. Please relistitem these are examples and they will have to be edited to suit your own personal requirements. __________________________________________________________ Chapter 2. Configure LDAP Service 2.1. Schema Copy schema/phamm.schema file in your schema directory (ex. /etc/ldap/schema/ for Debian). Probably you need other schema files, you can copy they from respective projects or from http://open.rhx.it/phamm/schema/ amavis.schema dnsdomain2.schema ISPEnv2.schema pureftpd.schema radius.schema samba.schema Copy examples/conf/slapd/slapd.conf to override your slapd.conf (ex. /etc/ldap/ for Debian or /etc/openldap). Add YOUR password for the cn admin with the command slappasswd. The slapd.conf has the loglevel set to 0. For debugging set it to 128 or start slapd with /usr/sbin/slapd -d1 as this will display to screen and save you the trouble of searching your log files for problems. For improve security we suggest to use Phamm LDAP ACL definition if you do not use already ACL please copy examples/conf/phamm/phamm.acl in the same place of the slapd.conf (ex. /etc/ldap/ for Debian or /etc/openldap) otherwise comment the line below in your slapd.conf # include /etc/ldap/phamm.acl then restart LDAP service. __________________________________________________________ 2.2. Change phamm password Create the password you want for the cn phamm with slappasswd and amend it in the examples/ldif/sample-mail.ldif (the default is rhx) with cut and paste :). __________________________________________________________ 2.3. Populate ldapadd -v -x -D "cn=admin,dc=example,dc=tld" -W -h localhost -f example s/ldif/sample-main.ldif The password is the first one you created. __________________________________________________________ Chapter 3. Phamm configuration 3.1. Config file If not exists you need to create the main config file in phamm directory from the sample cp config.inc.example.php config.inc.php Then edit config.inc.php. __________________________________________________________ 3.1.1. Config file (plugin support) If you wish to use the plugin, please decomment each line you want in $plugins[] lines: $plugins = array(); $plugins[] = "mail"; $plugins[] = "alias"; //$plugins[] = "ftp"; //$plugins[] = "proxy"; __________________________________________________________ Chapter 4. Setting mail services There are a couple of excellent general examples of how to setup postfix and courier below these should assist with a more detailed discription of what you find below. http://www.postfix.org/addon.html http://www.faqs.org/docs/Linux-HOWTO/LDAP-Implementation-HOWTO. html#AEN747 http://alinux.washcoll.edu/docs/plc/postfix-courier-howto.html __________________________________________________________ 4.1. Config Postfix Install Postfix as a full internet email server, and then add the snips that are in the samples directory to the relevent parts of the Postfix configuration files, remember to reload postfix after making the changes (most postfix configuration files are found in /etc/postfix) ensure the user vmail and the group vmail have been added. if not add them and remember the gid and uid as you need it here and in courier config don't forget to update your transport file and the transport.db file this is required. postmap /etc/postfix/transport Test this by logging into smtp and sending a mail to yourself (then when you set up courier you should have the mail awaiting you) log with /etc/init.d/postfix start; tail -f /var/log/mail.log __________________________________________________________ 4.2. Config Courier check that authdaemonrc is using ldap as a method to authenicate ie (authmodulelist=ldap), add the snips from the samples folder to the relevent file (normally found in /etc/courier) these files are authldap (configuration of ldap server) test by logging into your pop or imap server and collecting the mail that you sent to your self in setting up postfix. /etc/init.d/courier-authdaemonrc start; tail -f /var/log/mail.log __________________________________________________________ 4.3. Config Amavis Add the amavis sample data to your amavis.conf file. restart the services and check the logs for dependancies) __________________________________________________________ 4.4. Config Gnarwl add the sample gnarwl.cfg snip to you gnarwl.cfg. (this normally lives in /etc/gnarwl.cfg) set debug to 3 and test. don't forget to set debug back again when working. __________________________________________________________ 4.5. cleaner.sh script Edit the cleaner.sh script to reflect the your ldap layout. Phamm does not really delete accounts. Phamm mark them as "Deleting". You can use tools/cleaner.sh to do this with crond. phamm-0.6.5/docs/install.xml0000644000175300017530000001670712643155515013737 0ustar phamm Phamm Install Phamm Team
team@phamm.org
24/09/2008 Copyright © 2008 Alessandro De Zorzi, Mirko Grava Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation.
Preliminary Obtain Phamm To obtain last version of Phamm, please visit the web site www.phamm.org. Files can be download directly from http://open.rhx.it/phamm/ Prepare the files Untar the archive and put the directory phamm-X.X.X in a web accessible director (Example: /var/www/). tar xvfz phamm-X.X.X.tar.gz mv phamm /var/www/ You can obtain to configure httpd to use Alias and make accessible from web only the sub-directory phamm/www-data. Requirements Phamm should works any web server that support PHP. Phamm Team tested Phamm with Apache and lighttpd. You need a OpenLDAP server configured and a Webbrowser (doh!). Optional requirements required for email postfix email server pop3/imap: severs (that support ldap)examples: cyrus,courier. (tested with apache) gnarwl: for autoresponding:(to first user email) amavisd: for anti-virus/anti-spam: spamassassain clam-av or similar av-software (tested with Clam-AV) Optional requirements for ftp pure-ftpd pure-ftpd-ldap-backend Contents In the examples folder you can find examples of all the configuration files for each server section outlined below. Please remember these are examples and they will have to be edited to suit your own personal requirements. Configure LDAP Service Schema Copy schema/phamm.schema file in your schema directory (ex. /etc/ldap/schema/ for Debian). Probably you need other schema files, you can copy they from respective projects or from http://open.rhx.it/phamm/schema/ amavis.schema dnsdomain2.schema ISPEnv2.schema pureftpd.schema radius.schema samba.schema Copy examples/conf/slapd/slapd.conf to override your slapd.conf (ex. /etc/ldap/ for Debian or /etc/openldap). Add YOUR password for the cn admin with the command slappasswd. The slapd.conf has the loglevel set to 0. For debugging set it to 128 or start slapd with /usr/sbin/slapd -d1 as this will display to screen and save you the trouble of searching your log files for problems. For improve security we suggest to use Phamm LDAP ACL definition if you do not use already ACL please copy examples/conf/phamm/phamm.acl in the same place of the slapd.conf (ex. /etc/ldap/ for Debian or /etc/openldap) otherwise comment the line below in your slapd.conf # include /etc/ldap/phamm.acl then restart LDAP service. Change phamm password Create the password you want for the cn phamm with slappasswd and amend it in the examples/ldif/sample-mail.ldif (the default is rhx) with cut and paste :). Populate ldapadd -v -x -D "cn=admin,dc=example,dc=tld" -W -h localhost -f examples/ldif/sample-main.ldif The password is the first one you created. Phamm configuration Config file If not exists you need to create the main config file in phamm directory from the sample cp config.inc.example.php config.inc.php Then edit config.inc.php. Config file (plugin support) If you wish to use the plugin, please decomment each line you want in $plugins[] lines: $plugins = array(); $plugins[] = "mail"; $plugins[] = "alias"; //$plugins[] = "ftp"; //$plugins[] = "proxy"; Setting mail services There are a couple of excellent general examples of how to setup postfix and courier below these should assist with a more detailed discription of what you find below. http://www.postfix.org/addon.html http://www.faqs.org/docs/Linux-HOWTO/LDAP-Implementation-HOWTO.html#AEN747 http://alinux.washcoll.edu/docs/plc/postfix-courier-howto.html Config Postfix Install Postfix as a full Internet email server, and then add the snips that are in the samples directory to the relevant parts of the Postfix configuration files, remember to reload postfix after making the changes (most postfix configuration files are found in /etc/postfix) ensure the user vmail and the group vmail have been added. if not add them and remember the gid and uid as you need it here and in courier config don't forget to update your transport file and the transport.db file this is required. postmap /etc/postfix/transport Test this by logging into smtp and sending a mail to yourself (then when you set up courier you should have the mail awaiting you) log with /etc/init.d/postfix start; tail -f /var/log/mail.log Config Courier check that authdaemonrc is using ldap as a method to authenticate ie (authmodulelist=ldap), add the snips from the samples folder to the relevent file (normally found in /etc/courier) these files are authldap (configuration of ldap server) test by logging into your pop or imap server and collecting the mail that you sent to your self in setting up postfix. /etc/init.d/courier-authdaemonrc start; tail -f /var/log/mail.log Config Amavis Add the amavis sample data to your amavis.conf file. restart the services and check the logs for dependancies) Config Gnarwl add the sample gnarwl.cfg snip to you gnarwl.cfg. (this normally lives in /etc/gnarwl.cfg) set debug to 3 and test. don't forget to set debug back again when working. cleaner.sh script Edit the cleaner.sh script to reflect the your ldap layout. Phamm does not really delete accounts. Phamm mark them as "Deleting". You can use tools/cleaner.sh to do this with crond.
phamm-0.6.5/docs/manpage.links0000644000175300017530000000000012643155515014174 0ustar phammphamm-0.6.5/docs/manpage.refs0000644000175300017530000000003312643155515014021 0ustar phamm{ '' => '', '' => '' } phamm-0.6.5/docs/phamm_history-it.pdf0000644000175300017530000015511712643155515015536 0ustar phamm%PDF-1.4 1 0 obj << /S /GoTo /D (0.1.1) >> endobj 4 0 obj (1. Storia del progetto) endobj 5 0 obj << /S /GoTo /D (0.1.1.2) >> endobj 8 0 obj (1.1. I plugin) endobj 9 0 obj << /S /GoTo /D (0.1.2.2) >> endobj 12 0 obj (1.2. phamm.schema) endobj 13 0 obj << /S /GoTo /D (0.1.3.2) >> endobj 16 0 obj (1.3. phamm04) endobj 17 0 obj << /S /GoTo /D (0.1.4.2) >> endobj 20 0 obj (1.4. phamm05) endobj 21 0 obj << /S /GoTo /D (0.1.5.2) >> endobj 24 0 obj (1.5. XML Temaple 4 Phamm) endobj 25 0 obj << /S /GoTo /D [26 0 R /Fit ] >> endobj 28 0 obj << /Length 1459 /Filter /FlateDecode >> stream xڍWɒ6W6RE\E؉csJ&dTH@2N@,\DR: 7~xS/,Mߡ>~J^IZ+_EV%!-7&?>޽97iTIa1=a${/ Hm4J_^8>i!tKV!LW!EJW7 PW&8|'8$?7 ~3Bi{шXJqIئa-g3X 슢|H{CXN>3 hֱV,]>EC6.G;_AeAȐbJ1OBgCdC(ĕxTHj;b7:Kq_m+adC=ZpORp tg@g$ @uS@$ݸti;~S B KOPʐI3@wY_#*blh _SV5p7D@S ~r{,bt.0ù[ٞ}tT>R>~1?T3W2O/@J^e"68z2+ 9ng 0kd.%nX61Zpmt6Ny#Bj? bCf #c(0)AnSj|n,po< I|%0iN$4_L,KN_ # @_K.E ZaT쒋%PE"F_:u̳ ZGS7 _%zB^hz xcZ=+BhaB3=bpǎTJX(/hg@\6og"f"7.oz½H)-ja>#rP.8܋9hǒ.6㛑3]#YJ#SMj JyڮZpf3luJA>S6 }h=ȕ.쐷%GMXd(z'V|o٥F'e-q]{/Qҹc s!h2](=(C; Tmm-nPbV@_-yQqT 9 Q^YfxzfH!w?=z's {O._ܹYi-Waendstream endobj 26 0 obj << /Type /Page /Contents 28 0 R /Resources 27 0 R /MediaBox [0 0 609.7136 789.0411] /Parent 51 0 R >> endobj 29 0 obj << /D [26 0 R /XYZ 71.731 729.2652 null] >> endobj 30 0 obj << /D [26 0 R /XYZ 71.731 718.3063 null] >> endobj 31 0 obj << /D [26 0 R /XYZ 71.731 718.3063 null] >> endobj 35 0 obj << /D [26 0 R /XYZ 71.731 578.3402 null] >> endobj 42 0 obj << /D [26 0 R /XYZ 76.7123 480.2881 null] >> endobj 2 0 obj << /D [26 0 R /XYZ 243.7455 435.0338 null] >> endobj 43 0 obj << /D [26 0 R /XYZ 71.731 411.2782 null] >> endobj 44 0 obj << /D [26 0 R /XYZ 71.731 341.2206 null] >> endobj 45 0 obj << /D [26 0 R /XYZ 71.731 282.4411 null] >> endobj 46 0 obj << /D [26 0 R /XYZ 71.731 197.7586 null] >> endobj 47 0 obj << /D [26 0 R /XYZ 71.731 138.979 null] >> endobj 27 0 obj << /Font << /F29 34 0 R /F32 38 0 R /F33 41 0 R /F34 50 0 R >> /ProcSet [ /PDF /Text ] >> endobj 54 0 obj << /Length 1672 /Filter /FlateDecode >> stream xڍXKs6W҉4c|43nNg@v_Av2:>vh/Z`#΂xƋ> ,"k+~=xlYm~ ̒tK`Fmӑj2LW~8& wR3 $Qip$d+T6aK*0 3BԌ_/(\i׫*87c4vQCdkW{J /Vђp,9ڗ\k7(4vx6qDv)ؙŒ?fȸy*Zq>v}D8܅izq$O( 5&w[.لHΠ4vAЎAspZdOHHz:3Fj̈́ 7bH *)eǍii_~c_e1:1.jKFReͫ88IN+q%E# {8(|tSiqm+k]Sؤ4@@b*Sڀ{TG5e .? Zj2d(-z^Eƚ4n I<%<;@+GT8*XI1!=n`$;%HR*3sB`o= Ζ|L;')z0H(U]᜸&U58uE)u+{YWk m6MU=Қ|?7mW21]4!j./?8};0 ⹷fc`j|Z1pS{3N ZfvTKg ՐaϘZo*'ʩf)Y m2O2sWY5vkYw(2@5Z:Y2(tES)h@$}fzƵYõ XzmLi~/SV04-\G.-|ͳLWWI˱(D\w83SJ^BU.uH8._"Sܲr]@IKðbj?<#l|mǶm^_\<>>2z!h<\nuyWC3mrhh6Ց9#Zc6ꩡ8mZٙaBͮ]oۊzv6SGo. %XB7RlG?\6!8{ !kqԢj'mF>l&9m+VU,#!,:Vv_bo`42bi'ddJ_x|[~x33cd쑻C?8tϋנ&: @r]L!JVL( TߌR=~_hKz6΂-bǼ 'Sx`LBItby39k]c@̍nKwȚ< \H%(\yGΡ…IS3u{] Xd|B"ʉxӖb;(3?MυF4dA[o>G> endobj 55 0 obj << /D [53 0 R /XYZ 71.731 729.2652 null] >> endobj 56 0 obj << /D [53 0 R /XYZ 71.731 718.3063 null] >> endobj 57 0 obj << /D [53 0 R /XYZ 71.731 660.3587 null] >> endobj 58 0 obj << /D [53 0 R /XYZ 71.731 610.6103 null] >> endobj 6 0 obj << /D [53 0 R /XYZ 198.4832 571.3375 null] >> endobj 59 0 obj << /D [53 0 R /XYZ 71.731 548.2203 null] >> endobj 60 0 obj << /D [53 0 R /XYZ 71.731 522.1072 null] >> endobj 10 0 obj << /D [53 0 R /XYZ 255.7527 484.8916 null] >> endobj 61 0 obj << /D [53 0 R /XYZ 71.731 461.9968 null] >> endobj 62 0 obj << /D [53 0 R /XYZ 71.731 391.0785 null] >> endobj 63 0 obj << /D [53 0 R /XYZ 71.731 350.9789 null] >> endobj 14 0 obj << /D [53 0 R /XYZ 214.4362 313.7634 null] >> endobj 64 0 obj << /D [53 0 R /XYZ 71.731 290.8685 null] >> endobj 65 0 obj << /D [53 0 R /XYZ 71.731 245.8531 null] >> endobj 66 0 obj << /D [53 0 R /XYZ 71.731 205.7535 null] >> endobj 18 0 obj << /D [53 0 R /XYZ 214.4362 168.538 null] >> endobj 67 0 obj << /D [53 0 R /XYZ 71.731 145.6431 null] >> endobj 52 0 obj << /Font << /F34 50 0 R /F33 41 0 R /F29 34 0 R >> /ProcSet [ /PDF /Text ] >> endobj 70 0 obj << /Length 1100 /Filter /FlateDecode >> stream xڅVKo6WV(uLvMD+(R;h0`p|$R"I'l_fQ?QѾ=feӟfe^%YkÁ|!uRE^M|U[I@Xg r%VSwKGQN_5M3IEϤ B1?k\Ҵ1MFu;3, b$YRpƲ2ؑ2F\]sȜRYD1 zzqSFi94XaZ+{pF6U. f*z** O[VG3WP-dO*_I.C!?8HO(X(ǣn2yYţj*tYE!BV?C@P/@9 L`KUX?/-۞U⡖~ F𚖩ಳt3 d ^IC0 q4 [y2BXnQQ/f!W+7 ˴i8(|ͧ(Ѯ'l4?C ]zՆ7JЩ T1Wj.9<'~Gh^\lqW˦y "CiW9%esjЩB7* JBmdjٖes>pflP 0my8$k⢴rŒj /vA^&cfȵ?i rּ tuH:xȶZulޘf c X"2 oZA#  ůM{n: VM UF K%m G(0$lDZp g!~f1Xܠqj'(2!p4ccX+8@[5䬀;);IəqX9\3O ַW|{cbn =DXWd/W3->ű25jsh+Û(pYaSTj&,&O83~MȾ{x9\y$-9776endstream endobj 69 0 obj << /Type /Page /Contents 70 0 R /Resources 68 0 R /MediaBox [0 0 609.7136 789.0411] /Parent 51 0 R >> endobj 71 0 obj << /D [69 0 R /XYZ 71.731 729.2652 null] >> endobj 72 0 obj << /D [69 0 R /XYZ 71.731 718.3063 null] >> endobj 73 0 obj << /D [69 0 R /XYZ 71.731 681.096 null] >> endobj 22 0 obj << /D [69 0 R /XYZ 306.8531 641.8231 null] >> endobj 74 0 obj << /D [69 0 R /XYZ 71.731 618.9283 null] >> endobj 75 0 obj << /D [69 0 R /XYZ 71.731 509.1557 null] >> endobj 68 0 obj << /Font << /F34 50 0 R /F33 41 0 R /F29 34 0 R >> /ProcSet [ /PDF /Text ] >> endobj 76 0 obj << /Type /Encoding /Differences [ 0 /.notdef 1/dotaccent/fi/fl/fraction/hungarumlaut/Lslash/lslash/ogonek/ring 10/.notdef 11/breve/minus 13/.notdef 14/Zcaron/zcaron/caron/dotlessi/dotlessj/ff/ffi/ffl/notequal/infinity/lessequal/greaterequal/partialdiff/summation/product/pi/grave/quotesingle/space/exclam/quotedbl/numbersign/dollar/percent/ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon/semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/asciicircum/underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z/braceleft/bar/braceright/asciitilde 127/.notdef 128/Euro/integral/quotesinglbase/florin/quotedblbase/ellipsis/dagger/daggerdbl/circumflex/perthousand/Scaron/guilsinglleft/OE/Omega/radical/approxequal 144/.notdef 147/quotedblleft/quotedblright/bullet/endash/emdash/tilde/trademark/scaron/guilsinglright/oe/Delta/lozenge/Ydieresis 160/.notdef 161/exclamdown/cent/sterling/currency/yen/brokenbar/section/dieresis/copyright/ordfeminine/guillemotleft/logicalnot/hyphen/registered/macron/degree/plusminus/twosuperior/threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior/ordmasculine/guillemotright/onequarter/onehalf/threequarters/questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE/Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex/Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis/multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn/germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla/egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis/eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash/ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis] >> endobj 49 0 obj << /Length1 1647 /Length2 6258 /Length3 532 /Length 7123 /Filter /FlateDecode >> stream xtgT.Mz#^B7   ЋAҫt  (D:J'Y߽9]7k%+<3̼ϼƤWnQÐ|R]!M.kqzP(>2BB0"08T `@PRR wC@NcCS. _.{ HO qA`H81@:CPW@YO:S]A&]`6 yBp 9@ɇR0CC<w z uH8 z9.ew)Gy0> F@ݑTV}D:s{BQ0t~CѠP$  !߹!+E掀) sW< ppxzhPܿo_}K wwW??^: rNP>yys;x \Br\G|~]8?S'Ayw]j^ 7gEP l\A 7woS_U'R(œP ezA}!P$rE]1p (/*H@o3_PDWl?@CTo*%%/ WPL+$.z()$IH_gX Pd7U{#A0{!(lT8y/3,$y`pTŲ `{EQiqH-iv̲du]$_mߧmuM(]93!EA,\=w7m*rvLf,L6VF mʯu #pθBXC)ސ6՗lﰧor tY'I{cLJx[W$hGcɮhC㬴]bZ.^c|ƻՉCko (8l(?8ćJ<o9 Ra/V=v$OL8 <,/3ǻpl/3~ެ`u8\I噜k?ME[6^9cI|J{V(I슌I\w\hK}(1Lz#J.(r* X MNr7JMXGDFmf_ |ˋەc`ʳoEyG4< iSrF#_8S3Bt.#;+#G:'{gQZ2Nh_b8D݇V"i(-/>Ңq09E:j+Mړbj;Jje9_]\{㻓Xx ]yŁeUqP[Q`%{+!nڈ+t: 2۶7;n=k%dURz`W3mKoJdi K:q=6Iz/^#@[fu4w {t#Ǒ׵+qfִy!JmjbvtE8 6m47c^;Z~I3pMfU@P<;&aV8+?b#^[6ܚ'Z ׇ霠MI.턙uŒ?H,}؏c|rbCD7gLU׏q]Ү*E0IV'9OH ]-n%O`6=fh1ѷ'{ƨX<(B3V9~_1x%1R5U+}VJI5z*!_Ġ5&X \ˇm`j{YP0)@|KsOjZEsꘈY<0X;yx0w28qL\MxH̠iA_ul8Th|Iɘo68TbYVW֦ynjL.n+Y0zn&$5MA=SC!3yt!50`92ܭ_L9˼"G_?ѭtڻ1}IXIzC|@nB.|ZAo=G2hEzR6lIk٩qMOK[t!? rs\VKf/kp1=R9fy@6b&;[#kjVc{Fxtz^ǫzOԀ狖m<_6c-"D}Ɓ_Cd%*$qU eӻF@bȤIFL~.oȵS D< <4c*q}GU*4/}lZDKG3vOI.7V}jgqSSWykw{a4bk3\?T'HJ>o:6M pXxOP*641~B{'7]9l`TXX\nAԢvNnorJ\+Y&sj5Y&>.hᅮD`-u\qM[I(3ڃs2IUfG'eafO?q" 2z8n}3;Eo8\~ݍa-1fڦJ ~X}F73.RlL"KZk MuwH4JÉ:mIr&GW̒{_[ Z3txt V5K C{MgB2?a6uRǵZ~3uA9W˜o$ȧn̯$>cܦEyڜ.V [l߫rԤ?ym8,QnͧNИvI):%>]`9ِKtGOKD(}|.vU9q!fm,[ ̌ʎD\svRy薴Uwip4N,EIݚT/UÈ);~Mɞ]=Q7l5̗klm&ġ:?žtfgG6u] DIT;68FTANfanHJ&cs2w.&[DR}[2ìٞwR}eM6쓟H4laHq4(b|Zji|%9MNmh=첧}LX!QEZYXd<-xZd/T~:Q٤d¨ULtO1 s*ʼiF&%sME5XyuspUCYAO8>/ٵtm|'}oD3~ugKb:lP;=ʍ (VD}.xbun'$y+:JgL klzmc3bpLA^qmg.nKt/n%d"Q2WjswdS2ZUȒѵY ?9®)Iӱn٬*mW/%ҥx^,sNkcw:! 8{$/k cm(bhJg&z _i"Ic=鰿6'GE*{ynAofm7ѓ nTZ ^}`>5ퟋ y U+ \)ŸHowQ[ ;]nRo304Q g89Ɩ" AxF]T- !sMc֡cǑ9 oBz}yY;1l{@j{d |†\t'_qɧ/^)upj(6% 5E! .K36X>ˮX.؝?^<b? 侑F&%r@Fu8#8E)D*Ua񹭨uӀM"(oѳ/G@q-Nµ_Y L^<7S>*I 艔ATA.r saM#`ۉN!Vxz鱻k+1ӋniDrW?r1-'5[Y::?6kӒi0V: O~V89豶(SmW2m v5c2:1[SE@0w⋍Ӂ]-iL0qTeJI><_re#:K#Dw)YFzL7fp^dZ|tՄ6Du+3R:tf'aֽk'e7@M~x`Be40v>gTfb{K\啞h5Ң]kꇡ*˓{:oGO_H.#SfedH%MIaH22*.}w8CGhNJ(Kc'-LO=Et>̗ }"i@g[߼,m"X]Czleb{168bQrx:wǚ_!M?U3ܒ9jP (/70ƖWw `ݸmi:~ܛ<Ųlw ABvjp@LRNqP(wօKcG2s˦2q+O)#nzk⣶ŢM.?J fF9oKMY?gиO<0S\~6LqzpeR˅ig~ˆ80VNrq 'kk'فb죄oO.4h/DƔO. b@7 +|JnWac6]M H{u;FBNE oah`vלpTFyX= PBtu{{IJrek4wvuf~w"UG'CIweGޒ",\Gë_§7mI􇥆[QſpD)A ܯ12{p}X[N1lc^=kvb"NjMw)!6dSBtZh|o: 0F[jc:P5G*SVHዚ\? Vj(ǥ?fOP @c΢5VqG]eƂR{lYAMʽg -<^ r-sN14o1O&r:A~btZU5+Z^^J<9GLp%,3hkK:xu1ߒ6Cz$>Rjm/̤\N|t '8XpWys^~Fg] VfvrvUk*M'l$xsUv2QuT@r؝NՇk&g&an;|j27dO1RWⲽ)X>nqcjjK|s3Yv<$pNa\/虃fН(o/ըInCwO(-xh.Orr0+lݦcEh;_O<0&W8+IZ=M?~4T 7^{$pW.o ss $`LUu+oq)_Qnq‹K)1v׳[$M FHբOӖt{|86~6-+ln_h\(վ(HڑӺ 7qa9QXyuqd)ՔS$ˣVj%e&7>-G>˿w^\VRUժ}$˻#ݎCp3 ﹩MS K&}{g<&N4Km7> endobj 48 0 obj << /Ascent 669 /CapHeight 669 /Descent -193 /FontName /VNDUXW+NimbusRomNo9L-ReguItal /ItalicAngle -15.5 /StemV 78 /XHeight 441 /FontBBox [-169 -270 1010 924] /Flags 4 /CharSet (/zero/one/two/three/five/P/a/h/m) /FontFile 49 0 R >> endobj 77 0 obj [500 500 500 500 0 500 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 611 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 500 0 0 0 0 0 0 500 0 0 0 0 722 ] endobj 40 0 obj << /Length1 1630 /Length2 16617 /Length3 532 /Length 17505 /Filter /FlateDecode >> stream xڬct]%۬m۶ܱJ۶mvRW|Ϗkk/̅XI^(`JP3qsQqSpWZEƮVbƮ@& 4^V*uMjZZc0_O+ {w/*p̭lQE%miI:@ht6(ZL.@j3?0v\V݀@TtG o\Vnf$WnZSrpqu1urt$&<]-]bW p0ki`OIu5w=]eY8{_iX[gtg-/_um/ ֜oLS׿-i{s3ӿfns:AT $mf@s8F׿!Tw,3@ -_9_.}n v;wEck1?yWkM?Im_j-r)YZ̍m_ru{3=/j+,Lm!*/]ʟQTL[IF`ew\ռ?w0`DD<>\z.oB,l7!gycWg+OߺU_`MUWc{?Mݜ8k@O)ꒃ)ouZfkv 1^f!jE5=?v+kC~M|y-9~bRRnRtp2"kF\/mCp0iN(CLu:\?Sc=9"6bvA+<;H J+%9A5,^הS@ƃVϒ:WG%/zڛ4 WN2p&ꏫ)K O΄n6]=.ISWHO>w~Ռ5ݕP}gfe\ AbC=4vy˂m-ǙH]hJ{xnioloYܣx> GIPJ߈@'B ͚ʢMJqbKCgi~eFn$.%._K±[0FRtAei&1+VՀ@IE z]7Þ `bM B3aޣɚy2[:8pka#Zwha 3c<"s sj:aH<7 ɼ"]+4XMKY"NǫmP@ oѡonC!wݓ `$J8* lЉuZiѓQ_S$Iߦ @ H|C^xβ(ڍP6?|crLi#+]OؑV1/md2457&gem oWШixN |ʞmeelVíZlyw ]BɑŴ]m}F; T#JŇ }9xt\yh]k}/_bm c( /\huHStJ (ŷ'h}{7ȟw/K/C#.N9M_i)Qk"Mm"" u;&+Ha 3E_ U%EÛ^ADK3 /16y=8G{^re(%Jل# X2Spӕ!I <腺{Mw=w[ޤjxma<ۦ345Nݭ}K +9Ψ)"(3]yM$D1K,y$9mKE\c5xd?bSHthU`%Oc#٣zJR3,$ un30ӿ/KV v(fc[XV l+[, *"Հ3tQ7E^*cQazVVM/d'asD'^א ʡU/ W6)mгyWhX GDYCgoK۵ C|9#߰>ZF}8ل'a;/!PY$& ߕ)Z UEp_d1+>ˈKWp4bh @cTr& {层a,w:-acps(C,AQh]roU C ͇d(Y +nXGVza#J;w-xCZǷn(L/^An5J%`O*`Q}f~p+>"y:%VW}i!E5}ך] &ʲ~)Q j&+ńrHU4_mUӯhav&j#9ŬETj,6SyLw>y "<s%Q>+9}{o'րEJ(1zt Y7K*Hehw* y&G]бiin&X_\+y5@g0:|kkrHMʘЏ .CwY: VOlU#B_SLWc7\PnS#uɦ{pzdΎU|Y50"0}_ŗc;,on[7;Dj'y_B8[e\D_Ń4,Bve ;V% (oB 2qq8f*eж, 6KXzF yFa51v'e"YTk rYZ%Ű?Ѹ")M3bg0 nzO6} P{tؠ土Xj,p5+s }ɆWg4R\*@Q R& /y.kc[ $/lnp| Xk2BޒZӏ7n9EY`d$āBJV1zĈ5"}l9]) rըx,j aSAel?ԢPhifDuMP 'tl#+\+pI z مsdG?`PDnW+SAg'#u|0\Nxd^űrnQ߄>t@d3;^4 *fa FkЧuHn2eK*б^i2bil&دd<]iϑ7 7fnm7  lYKAhϑDP=s $qR#󅐍ncǏ0hۦdJèsg .*3*!"A^oL -elE8#jkJ`.FTބHwNf3I%覎^~gWLkWkA#㤬?n]E(ÎCr+MF(z?;&qĘUw`m ᳠4Q Yr߲:Re;hY)\"m2j: Qz"P6ҩ޳m $Ԏ`A&FYc 8n5}G~BYciғ3l2`iy:56}_N> :h żVW`1a@waӔ=AxlU7@RˀÚLE瀰џ~We$ahs Lf;Doi[>'Lf-Gϧ+ɠu(v=BoS86 NBBvRΗg, b.3v}2VۀWq>CWܴ _C}[тZDa1TH/  GjMUA1 qZM㨎 ^ja* H[m'' v /,%MZd)&%Eh0(_Tu9?wa5&伇純/iިsHR|5kdVG:\}04o^#) 2oqfM`w/-Ͼ3,*Ǝan_EtGɽ C7 jxC6 “\-FvX/P*&vX}||g:˴`6 nVltz%TQ4w/<1 -\eXZ܉]t*kiB8rN7KY5JSbE'(0̿F}l<\1 ܠO _~\!X4@{JTK-RXs~ŘloJBcg@Ink~<@$s'EKfS7v"f!syZFcf{/!Z;P&@d8 >i}CAzDe ?kxeo01IyNҏʪd6Qǘc+´ +|$X!$@sAKPMbl-$u!e'v6 ~`Kh~,sC:aky^0TEEj cf}|D~'T"Q`tN]ET9<Qtu 7ƋGbTfFhP ro\ά <Ӿ)l[G1/8b gwġOnyt5ZU{s9t)ENu l-Mνht LWT#!%iScˑ{lu C#Qgk*hG`` &mkЎ9_'JL0_Ͱ of8 >~R/aMeƕPToɐqsnE@26ꔲw=_e E_:&y{7wi3s \~iJT7K~U!_G<+{?Z_a`CYЄm}az жvlyϪ-jf AƼf cY0ϝO)i98ۓرtGzOblT%?m;5}2Fn؇QTEl7G3KsoMAi^mB1XU Ea,PP PB o@kEFd7]|^^buࢮmS^Z(qB\d:8e08TdfN\ٚ u5ƁzJuhw6T~)7S*rb{TzV;9v\* *1;057_j3 :# ?}h"H-31 F~hNkaCr A1ֱ7nfζZ4 Pםyϕ:UZ.mShJ<.,ÁB7{Nyo;2m#$~L;81B۱à %Vҫ:}3n']%r%ݞT}4j ދMKEw`;?SL.^|7{1if$64$uǖ(ix歜,{FLf/D\QoӰۗx[;NkXm c[$)/be*a>:b2a\f!@1kk3敌}xmxwl[PlV}*is|;p # 0C>zH˜U_ 2.e ֳBBKU$ۣ[Ž>dK|z^n9NW;wv4jJ% $n}:YAZMvz`? c/>y<Uc-dSl6I}fT.l}߉>BhFQe nlkJ'5mq^iiW̨PL=[_e "ii"/<ʍ|Dd,H$S8,`k@i PP~1]$$G/gK.6$a[$9T՞o3(<ײl住ns%@c#됺ծgI9kxy'H.RrԲPwiTЯ0~$a.lMafܑf k1AiՃ _QFkQ#q 1|Oװ|px5҉bN2O갵?/G\z{s&5r%S- =9!8:(|9UiVd쏅PbK1Drw Hx 7 DlD&.mҾK# }!ec3]MP:~GS ΁ea(Р$̈wL Q+_M2ر6ӕɅڄS7c:>ACz9Nvގ?b FВj_oGנk3h`+mM!%_.چ @)oQuMo[zz5K'q"6ngmhUT Lb6'Ks򢹉`)ˠa)f'Yư'n< !F(cb٨0sKsy\"1Vmo.5Sj2csGHTG-r}r8#Ϛ5(͟My肄kJ>=15jL7@yg)V疝U/Xrs p'9)YitSL08pVNʄ1e'4]<8Tsq.0";"4x؉*R˃^~0J=1o؏g4z;eẩ9oAǹ0du=Q4Q5)?#'o%4Nvˆ\]grbV'8Jӆ;1=T"~#Nډ@ (T\DsPیWl2iaRök>ߋ}'R<<ٛ'͔*=侨gZ#Dr} !^h5:y=376M.^"|}rm)i8G=APlF6EOT|"Bwm5JB lô?JX WV_6xDzW(8'b}M >"xxLI|Y3N~by #%p6?5-Q21oSydyKm=$:eA", :rFNKxdWBO4Db*EJ_ ?ҙSÀu85J:|j[yv:tAKnWB{-hdc쌸sԵ`suxʨŕ`喬_|ﵠCsKH{)x$_Rqv-{;kF<˿+EN@p#<44՛S,d96-rɶ>Z%3ZUs3ޔ17_w.M6<}L\#C!v[gᘦr!B}qffW,Fp-b]F?8n GWVnq t)ĤVd4Qc"L4>0]{#6LĘ>nH8PR!NPCwcY~O󔺯|'杽m_\51A 4uXq/ . rl{ u CU0*b?sHec.ʱCK+aTkޠok_rI (5ՠhHEMxM% MfyaD ^)fNh3cr8X#o rLV0YmF#"ԉN}I Pa֕\CӿeD1Y:F>B_D,9)dIp!bYtgؓ$} jN|!R2@R56.㇥ wty&~ůjxёtǠ JY3y*CDhiRjEꬼzr,a'vy:/:gpvq4+LgiPDAӒfŨ*@~wi4~%N/q/7KpMxa?7pin]wfdBE~Q7ַþ"eyCξ] S"=q0!"Բ{_lE6F9jd3_Iay[B;n8Nš Oe z[p6bx\xt3o$\NBvUj?]nlEo^'Q|']ܧ][rT#_!KL1Ϫ…\FE^HϊT2|ֽ8PL "5U<ܱ=K5PǠLf\"=M/ܮ&R&ݠ%mXҘ#,-'n|f߱P~(7MðCZN;΃8𵋁nSn-ްTYA*0-1=ܽiiNFbE=cHT5 Vsv8/#Ӌ*&˲|Ek$!U|vIU,`4*w)tjnݍ Qh d2-{K;yLyzgk釤,J.kjh=/)0 ׉gxk!iS/-sמ|-RGThZ+KRŬb+m50U`5'↔hT/2(BVɪIﳗnV[n&AȄYyUK۶ vtAk+B'6gcc R[]D; b% R,_ؙ&'r%h Ѝ ZŧS O4xD4&{N^I˥UUdi.~3CR a@дksx>F8܂f{j,ԗ+⢓3쾩nM~l|.SDmDfdO`-ukm5/w!xtnuia ha~5:;hhLߘ}\"ʉ\Ye_}I9Ip޼el|Y![e dbMK$sDg:?c\# d}NBͿyr0F1J(__ 3RL?d({'k-hxG`׃ɛi&E~.l8{~dF#%;m[Lؒ˙ݐ؁>TFje̠j짯gkiyX7Jbuvze6ɜmɬ.ꇥ9I1m_ Y=*RS``*`"G > E?iT*.B)_?_Z# ~3l^鈹UDC]2r7=ms (-8B>a~75oCV̊z( tEӔfʆ?L/9k;6eĥ~ll?^nPeiucN6h/PUzmγ:[{kt& Ў\'yb2 n!~1rTNd.qpk0$2"; P0?ڔw4 .P2A7tRX|ҽ60HoqwewGTBvU6$# =(4&B4O5!ɾ!O9W_TWq'ͩБFJw8JE 0sKӯ _5.jQ6X+9D]9o7r HnxGꭷ\%fDp9%+$3Ҷcd$/fv٭;-wjX:D>Ӌ zi*7:ѷk.9x4Z)=_]Xa۪$t(zAEt9Y53T_:>~FV_fvH3+zmi ?ߜgG휺8O6}_bϡ3ZU9<{)d0W eikślee=gM-daʛfF_.]AYPP#- 9W/,^q|c*Ub-};W.cewEb$zEξ\ qg?Vݾ§gŲ$?nἄȿϿ|Ŷogo-h';{n>9%?fW3atW7>kִ_"+ 7O|L-2qK-/bryY%ۻ7Uamm:c~~hWnpˇi3_ΨSpGqRUXŧLֽѻ/OPa1Vs7\Gjт' 'y+1X!dEނS ޟ3YuA^wwOg=к(*~;?\Oz̓"Vֿ[S6]!ϴiB2ׇSm6$Ezvhn篒լ3JYebd!ڇ}gc_9\aƮ*CBhW+|Nb--g>f7?_ԂڞbM~;Wyk͘_!zxD+][TgM?7K{d7W:z\mZ]9)GJ81k#9SzA+sy{IA}Jf[Y~6vB= ͼb+m&lÿ paA]V ^iuV=O k@!5`XXTXendstream endobj 41 0 obj << /Type /Font /Subtype /Type1 /Encoding 76 0 R /FirstChar 2 /LastChar 249 /Widths 78 0 R /BaseFont /CDYPJK+NimbusRomNo9L-Regu /FontDescriptor 39 0 R >> endobj 39 0 obj << /Ascent 678 /CapHeight 651 /Descent -216 /FontName /CDYPJK+NimbusRomNo9L-Regu /ItalicAngle 0 /StemV 85 /XHeight 450 /FontBBox [-168 -281 1000 924] /Flags 4 /CharSet (/fi/percent/quoteright/parenleft/parenright/comma/hyphen/period/slash/zero/one/two/three/four/five/six/seven/nine/colon/A/C/D/G/H/I/J/L/M/N/O/P/Q/R/S/T/U/V/X/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z/agrave/egrave/eacute/ograve/ugrave) /FontFile 40 0 R >> endobj 78 0 obj [556 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 833 0 333 333 333 0 0 250 333 250 278 500 500 500 500 500 500 500 500 0 500 278 0 0 0 0 0 0 722 0 667 722 0 0 722 722 333 389 0 611 889 722 722 556 722 667 556 611 722 722 0 722 0 0 0 0 0 0 0 0 444 500 444 500 444 333 500 500 278 278 500 278 778 500 500 500 500 333 389 278 500 500 722 500 500 444 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 444 0 0 0 0 0 0 0 444 444 0 0 0 0 0 0 0 0 500 0 0 0 0 0 0 500 ] endobj 37 0 obj << /Length1 1166 /Length2 4316 /Length3 544 /Length 5117 /Filter /FlateDecode >> stream xXWXS[E4H! Kh J ! Ih"H( wDQ U 7zs=}o{?Ƙ{9ǚ!jl&#41h(X "=f0)@`4||P$M$pAD0 B5H@ 0!0wB: &y`($ncX/~X C~HGA㋇y"p`p"DF!7Ab y%(FnsC&P{+JUCHDeBT]//j CNߒ:hG @v>ْ''&@ ]C@:  H DG8X@~"x>#(07$?{%tt0A&$^鍀# ˟.}c KqPg+@Kvh'80/'u@w;""q|KehA Dީ$M4̼i%'əƯKo ЈrSm;Hɾ&V`ۤ|`p)5{Eͧ[{jў5 Y8%Ҳ%Ǖjq!9֣u#m r:%8"V͡ ڵ}F㝪µh2G΅MG}\)] [Ե\@T;祚" ]ϣiqqSl)u ≮ݴ* ܖN%o]dH20oWzfmp2aJ훷l[w|0B4M(x{!Kr6g1yoFU\;ƦZeQJ Wd͝oZA۽l%G%4X9K_{Dee5\D0AOsyrgg _p f|>Hw9*bwAWtc,(n301ޣ8%KRZrD3{R'b#үIC,lUcO"ֻ-os A|>EyRTh3,47pEwh9n i,>p[}iŗCbX!FCoG.q:3<(ho(=h*gVӠZJ6Bgv!+7$+ޮ͗o7ci.nw7lhKv<#,24wg߮ό[wPJ~@Z4yML5sķCtɪZ`I3',Ng䥧d~ϽxaN=Y\|wd_ f 7VpvEFKZ}q1>%LP]]=x.O@]:.]}sǹ3ɋ/yW?翦KE I-5#gnؽR~_fm^L~˻DpZJn-P Ui(NIч$ʨY!/k?Z7= 摇ph3 YeXY^ ɑE{) N $֧k62${sUYϬ&xϷYgo 3K.èI/Zc`-E$ѪU(Y/'$ǚnzzρX'w;jV/y(Qoh/- T و%|+y@{(FF$HW8x|JsYjo/|uux*lX`e\}yKVBnm~*n͍2RՌ Ut%'a?yPr&AΗ k%fMYO\ywyz$yOO[AޯgJc!]n6>?ANSZT,&M }DXDvKCE=sl΄iʱf1S~312*(P ҺR <\er2Ȟ*j)7$٩a7]E6޻e;}))ڸ@y#s+{TKhvy)pҷ8y~5?s(.z8芷^lPhye)1]Ssݳ[Q{|箷jWYD/怭Jn,HZ(\gN^ۧCe"(Câ>W=Hx=;-@wsQBUw\uχwP[䅇 }5`\/́ձܛ:74 VxRf-yxs6Z0yyӐZ4e?՜Z i6۰T4ΞBd/"G1G:'}Ÿhۚɇ8EIH^@"HVM4GUd8*VMyT2$z) WcH"|9򡄆=];c^XBpraˋ/*1˘ ennׯ3|EJ¥E9Kq +(͈3M>p#4Ufg#P"4b㝹Gxn?nB i>J%*'(Sn, /^64tޔo]$/uXS˃+VwZ/SLYy4M ;/M B(HODypn!ݩRxǛPDq:<\ݤ՛ݯ#=?1LR1e2a6>klWf lڊW~J S\i_ڐh_;(KUthhEҤtZ㕭|yv;Q63DTD"]|F=!Rn~ :/2M=6,oWF~N~n` U$mAEh ^udSn_.eFf|l\VV^|FUW0 Y;jȂwUrAu=400RMWMLcc ^wf^h½2G̝]w/L`{.*MO5qR=I?ovRxTaTL_r] č[zX*;ń'g]JFg;V2r%un3g_ <\nYeti"(q!SQȗ1S`dl Wjl\(?qQyJ޺=eWDcNƣ(g%jdLR)} ʍ:nr9}|/j]a^(obݩe^Z^blMи*骕飞f6Z8ڍ溣X혿`C{-3eٸQ#^eyn-Kf<> [Ō֪ y@=kـzy{}ϴZK5֝3ӢO׫e:{Vl&Op,8fau?@XawSqf<7Ng [orJLi(v5m dM~9GX);?:fV्yrKK gF2eZʵ}~N9lHukwEaJkP@UG a~z'urlfԺ.6N݇bS#+l`zmǹ` ̷xYl  2kt A˱5fw0/À#Xv ]76*HաQm"~?.P蓢nS,9@_X٤*>vwr!;hC:|SքJL+kDž5w|Tb$cH{dYo` 0.L=Ћ hVZ8OW C}]d,Yht"H~NYd:%{:CtyVN vj-<@PO;Cϝnj}޼KKdwɉcQ>Q݊JG~+ !M'J땼)cBgY(-f=~o'b_׍@Mr6/Ppm[;7կ͉|: "Xݰ#AN{p̅|ު?]6(OT nKFxga频*ETT,8:֤C<.Ci,ֵbY" #m\_)wuA+\DݘTLdtRF,"ȘKk悎 Rf29*0|9x=2!wp&qyčtFQgoV'XCº q9;%6hD@8$*Gt鹨RRڱCCEQ*$P2܃ ">yF=:Y΍21TDe-?L$:Λ[ȼY_/.9ч,ӤV鱖6i xwoEaPD.`7!mUrZKF5OiO-3aL)6k 4D>ќ즻prn Yj gItTLm *M"[b6UA;܅7aUYiv?jכs#OGq|٣+? ]R7%Q![l Q)e597‘#V0WD0( {i}i!ocp]&t+fR: \5/G]7+ԫۢs_;hzzX& g̤L0,OB]R0kI&uEtG\sY̔L!F'h\cZuuZC+ k1iWAJM>C=o#YYLw61 X~=koĘB&ޕEtЬ\AN%3&U)aYM]T{zu>Cւaa^79թk~OMp M癶ܗm'_oZ#I_ݶ"2S#zxk QƶcKN%N4NtO@Yv Wζ &*pcbhӁq^|tukjf 쏆yc,˕U&-(Js5 c2'Yfbg{7F򕿠vm"a~1⩲71(H,UւəkrE7P%@Ssx-]$BKlCWK~"gַvEO ,>XiթY B[T$()Zu^ pdNЮj ʴvz 06o#P=[˥aqgY;_ `]Tj;'t!5_^ӐʲW7[y[;?גy]an7JTGZQU|L$Hn‡q)Uuӝ  w졭"AgnUށGx( o|!"Ra6\i^;n,@+RB _S+Z? &.?w.aogf9ۙ 4d-3 rD<=r50՞OVثNDE$|#}fR{{khϮA|z K9}dL 㨁˯^)eV*Xf#W Oڗk1=ɭf$,+19˰ۯ N# ؛ǽDUdկ~΅dѻ.=VmkG-iVA 51lK3'nE1 hh<\+oGKMaVB$;Blz꡵Cq9G$% |i|*\ 5<>ˆ^,'@H=}5[4R*#E=%hm]bPG5w) oXO#݊a'/ GVKb_O:k+kuJ64TT]wia-b8`c屄! ]TjlEFnw dZox<>u+] %Hvo;';MNb´*C:(E|ʍ3@B"qok$ZR11tSMnUoB>4( 4jc9=40VGސȜ45_N/O0[= FA^uG-?RG>g ]ʙߠ%~o[4B7mUn-o3eVݒVB寸h|:]]@ؗ,RZ?f IԊRė|]OJ!dia/BË$#TuP֧˿ knd rk[s5ł$$#]9'Oxw8lE{,pwq!R<*=U<{::ō-)j2^`cm4$}M8=;eSac |I?Ue[B_(V{ױt}}?Vi<J2'Py*Q)h~w5rwC\JVHON%ih#_^V!Q,!OqՐ1}-4#~}_J$KF.mN%lXkdR F^!25ʘyuoS! ar3)FyZ۶2-FժSNHfLk3?،S(z f=gvXF7'{OwO'5|!zgz'4}s&x{A*D ?_%*V,;1Ϩ9-}f^R_,5߅'3Ō#tfۄ υo2T^\$fQ+/w>&?*TF%AvJM7MΉ_9{3fwȱuj2[j4)MTrB +Mks*z'7\Gh-sTRۂC g9W`CfVARnֳ087Q$L@Ĥ^sqB[n^ USO9% y6PnЄק옶._{>K+*Ϭ X9u6 SF{.zPū #blwUsk-1S|j{KB*`&ĴgRZ&[ &!jp3ʙ2 cr!Fa;LP'M~ɵLBא!#v=]xW l1/PrTIju\?@eXt=HE:AF>{{2QG9%*ڨpUez:vCNc_ч #s+MST ;uA[(s-ޞ?WCx)+Z95-h C1BV)säSt0OKH@TЕO||\8룐f]QǨXkY!50+ 1.p- '?M5COP7<ήP,yK9ֳZ?(/ /y\sk(U=g\c0gy@E_$D)  -=C[ӝC uL3B{Lc$x)z8~M[ LE_H8iNJ%sbGp0Gua,}7N"YY2wN lo2E,кw=L IQsy͹U ;ºorT.\k):7<ӱ,}n͵Dkch%#vmQ3TEPNKUyv37gBgˢ4_#q< y|4?kj& _0Y_U$ZTG}BǸe3.cd\B= F sWRuξ PUmh}ixew!BZWpS<e=²5˱@ZYbIs}󘥣?&$*B)WPYzpt5e~ T|NS },iʀtmAŀ3EuHy:Mq&^S!Kڐ4?]._ FC>@i2dVhBi m,a*,"Ml#AM7UܼnhV4)QE`yށ$s2˽lg -z}La-ڤ&GYz*Qd= ȯ|-\'1\D}zתF`D;VK3! ߔr-Г^uQRҾD@5u@yo?sl6~ 2a;6;[ !1!OHE.CZFV4[=3leK'\_f:Ӎ?&wXԃל+s-3Qv]"A9eT*uG^'] |5?}઱2 s+xAp")(UUƙ/jȓa2[hWtelş+P,%Ƀ'n)ay%JG) M{%b#A+pmpjz$uKٻδB%u *TϷo_xoi6f,maMI>(VmZ˾& +'"z Mfd邲d!Tq0$΅-޾_|ejFV!=@yᇗolW>gLŬ 6v`lڪR1z;}5 ?H8f80&!]l^I4}k-{ [GТ,^{9SP)`l~ 晬37|S).j3q%*~Xnf3C !5Ϣ0n )Sy+ia@Lc(K7L&_"9@.4RIr4p]>;<6IS눅{ٮ B'ݨiWGdO'Cz+dh{Q#}J^#)Pˈ *|{w!oF>T{e2{{ta}NOjtfa"Һ/J=Hѯ=c>PuV> endobj 32 0 obj << /Ascent 722 /CapHeight 722 /Descent -217 /FontName /OOCWCV+NimbusSanL-Bold /ItalicAngle 0 /StemV 141 /XHeight 532 /FontBBox [-173 -307 1003 949] /Flags 4 /CharSet (/period/zero/one/two/three/four/five/at/D/I/L/M/P/R/S/T/X/Z/a/c/d/e/g/h/i/l/m/n/o/p/r/s/t/u/v/z) /FontFile 33 0 R >> endobj 80 0 obj [278 0 556 556 556 556 556 556 0 0 0 0 0 0 0 0 0 0 975 0 0 0 722 0 0 0 0 278 0 0 611 833 0 0 667 0 722 667 611 0 0 0 667 0 611 0 0 0 0 0 0 556 0 556 611 556 0 611 611 278 0 0 278 889 611 611 611 0 389 556 333 611 556 0 0 0 500 ] endobj 51 0 obj << /Type /Pages /Count 3 /Kids [26 0 R 53 0 R 69 0 R] >> endobj 81 0 obj << /Type /Outlines /First 3 0 R /Last 3 0 R /Count 1 >> endobj 23 0 obj << /Title 24 0 R /A 21 0 R /Parent 3 0 R /Prev 19 0 R >> endobj 19 0 obj << /Title 20 0 R /A 17 0 R /Parent 3 0 R /Prev 15 0 R /Next 23 0 R >> endobj 15 0 obj << /Title 16 0 R /A 13 0 R /Parent 3 0 R /Prev 11 0 R /Next 19 0 R >> endobj 11 0 obj << /Title 12 0 R /A 9 0 R /Parent 3 0 R /Prev 7 0 R /Next 15 0 R >> endobj 7 0 obj << /Title 8 0 R /A 5 0 R /Parent 3 0 R /Next 11 0 R >> endobj 3 0 obj << /Title 4 0 R /A 1 0 R /Parent 81 0 R /First 7 0 R /Last 23 0 R /Count -5 >> endobj 82 0 obj << /Names [(0.1.1) 2 0 R (0.1.1.2) 6 0 R (0.1.2.2) 10 0 R (0.1.3.2) 14 0 R (0.1.4.2) 18 0 R (0.1.5.2) 22 0 R (0:0) 31 0 R (0:18) 43 0 R (0:19) 44 0 R (0:20) 45 0 R (0:21) 46 0 R (0:22) 47 0 R (0:23) 56 0 R (0:24) 57 0 R (0:27) 59 0 R (0:30) 61 0 R (0:31) 62 0 R (0:34) 64 0 R (0:35) 65 0 R (0:38) 67 0 R (0:39) 72 0 R (0:42) 74 0 R (0:43) 75 0 R (0:PHAMM.SCHEMA) 60 0 R (0:PHAMM04) 63 0 R (0:PHAMM05) 66 0 R (0:PLUGIN) 58 0 R (0:STORIA) 42 0 R (0:XMLTEMPLATE) 73 0 R (Doc-Start) 30 0 R (page.1) 29 0 R (page.2) 55 0 R (page.3) 71 0 R (table.1) 35 0 R] /Limits [(0.1.1) (table.1)] >> endobj 83 0 obj << /Kids [82 0 R] >> endobj 84 0 obj << /Dests 83 0 R >> endobj 85 0 obj << /Type /Catalog /Pages 51 0 R /Outlines 81 0 R /Names 84 0 R /PageMode /UseOutlines /OpenAction 25 0 R >> endobj 86 0 obj << /Author()/Title()/Subject()/Creator(LaTeX with hyperref package)/Producer(pdfTeX-1.21a)/Keywords() /CreationDate (D:20071229120025+01'00') /PTEX.Fullbanner (This is pdfeTeX using libpoppler, Version 3.141592-1.21a-2.2 (Web2C 7.5.4) kpathsea version 3.5.4) >> endobj xref 0 87 0000000000 65535 f 0000000009 00000 n 0000002487 00000 n 0000052821 00000 n 0000000050 00000 n 0000000090 00000 n 0000005062 00000 n 0000052751 00000 n 0000000133 00000 n 0000000164 00000 n 0000005243 00000 n 0000052667 00000 n 0000000207 00000 n 0000000243 00000 n 0000005485 00000 n 0000052581 00000 n 0000000287 00000 n 0000000318 00000 n 0000005727 00000 n 0000052495 00000 n 0000000362 00000 n 0000000393 00000 n 0000007418 00000 n 0000052422 00000 n 0000000437 00000 n 0000000480 00000 n 0000002068 00000 n 0000002847 00000 n 0000000530 00000 n 0000002186 00000 n 0000002246 00000 n 0000002306 00000 n 0000051732 00000 n 0000042203 00000 n 0000051565 00000 n 0000002366 00000 n 0000041709 00000 n 0000036305 00000 n 0000041542 00000 n 0000035201 00000 n 0000017406 00000 n 0000035032 00000 n 0000002426 00000 n 0000002548 00000 n 0000002608 00000 n 0000002668 00000 n 0000002728 00000 n 0000002788 00000 n 0000016998 00000 n 0000009581 00000 n 0000016824 00000 n 0000052277 00000 n 0000005848 00000 n 0000004704 00000 n 0000002953 00000 n 0000004822 00000 n 0000004882 00000 n 0000004942 00000 n 0000005002 00000 n 0000005123 00000 n 0000005183 00000 n 0000005305 00000 n 0000005365 00000 n 0000005425 00000 n 0000005547 00000 n 0000005607 00000 n 0000005667 00000 n 0000005788 00000 n 0000007600 00000 n 0000007121 00000 n 0000005942 00000 n 0000007239 00000 n 0000007299 00000 n 0000007359 00000 n 0000007480 00000 n 0000007540 00000 n 0000007694 00000 n 0000017245 00000 n 0000035652 00000 n 0000041984 00000 n 0000052032 00000 n 0000052350 00000 n 0000052915 00000 n 0000053514 00000 n 0000053551 00000 n 0000053587 00000 n 0000053712 00000 n trailer << /Size 87 /Root 85 0 R /Info 86 0 R /ID [ ] >> startxref 53990 %%EOF phamm-0.6.5/docs/phamm_history-it.sgml0000644000175300017530000001532712643155515015725 0ustar phamm
Phamm 05 De Zorzi
team@phamm.org
0.2 2014-12-06 dza Seconda versione Questo documento ... Phamm .
Storia del progetto Conoscevo Mirko Grava da neanche un anno e mi dimostr come nel 2002 installava e configurava server mail con domini virtuali utilizzando come base dati LDAP, certo un sistema all'avanguardia pensando che esso era totlamente basato su software open-source. Come front-end di gestione web Mirko usava Jamm, un software scritto in linguaggio JSP. Alle installazioni di base effettuate usando l'howto di Jamm Mirko aggiungeva via via sempre pi caratteristiche e novit, prima fra tutte il vacation e si present ben presto l'esigenza di avere a disposizione un software modificabile e velocemente adattabile alle nuove esigenze e qui fui interpellato. Non conoscendo il linguaggio JSP pensai che forse non sarebbe stato difficile riscrivere totalmente il front-end in PHP. L'idea piacque a Mirko in quanto l'installazione dell'esecutore di Java quasi sempre installato appositamente per il front-end Jamm poteva essere evitata adottando pi comodamente una installazione del server web con supporto PHP. Inoltre usando PHP si sarebbe usato solo software libero gi disponibili su tutte le distribuzioni Linux, un vantaggio non trascurabile. Non fu difficile dare le basi al progetto, in un pomeriggio c'era un qualcosa che fu la versione 0.0.1 che gestiva i dati in sola lettura. Inizialmente decidemmo di mantenere lo schema del progetto Jamm e di ricreare pezzo per pezzo tutte le caratteristiche di Jamm ma riscrivendo totalmente il codice in PHP. Il 04/06/2004 11:14 si annunciava sulla mailing list ufficiale di Phamm (che contava meno di cinque iscritti) la versione 0.0.2 destinata ai soli sviluppatori. Dalla versione 0.0.9 si cominciava a fare sul serio, Phamm a parte alcune feature mancante e qualche bug di giovinezza era usabile quanto Jamm, in sostanza la serie 0.1.x segna l'entrata di Phamm sui sistemi di produzione RHX (la nostra azienda). Gi da queste prime versioni alcuni temerari sistemisti iniziarono a usare Phamm e a fornire le prime traduzioni. Nello stesso periodo Mirko e io eravamo sorpresi ma carichi nel vedere che altre persone erano interessate al progetto, probabilmente per gli stessi motivi che avevano spinto noi alla scrittura iniziale di Phamm. I plugin L'idea dei plugin non nuova ed era un obiettivo a cui volevo arrivare, la versione 0.2.0 segna l'introduzione del supporto dei plugin. Il primo plugin a essere scritto fu il plugin pdns. phamm.schema Studiando pi a fondo LDAP e seguento una pianificazione mirata si decise di abbandonare jamm.schema questo non voleva essere una scelta per customizzare il progetto, anzi la idea di creare delle objectClass generiche che fossero sub di person dimostra il voler utilizzare quanto gi disponibile e aprire la strada per l'integrazione di nuove funzionalit: i plugin. La versione 0.3.0 segna l'entrata del phamm.schema. A breve fu richiesto a IANA e assegnato a RHX Studio Associato un OID utilizzato nel progetto. L'OID assegnato il numero 22339 ed pubblicato sulla URL http://www.iana.org/assignments/enterprise-numbers. phamm04 La versione 0.4.0 segna dei cambiamenti sostanziali alla struttura del file-system come la separazione della directory www-data per separare i file accessibili da web. Nel 2005 phamm04 era ormai utilizzato da molte persone si presentava tuttavia alcuni limiti derivanti dallo sviluppo precoce del progetto dettato dalla necessit di rimpiazzare in produzione Jamm. Si decise quindi di aprire non nuovo branch ma un nuovo modulo riscrivendo il codice al 100%. phamm05 Alla fine del 2005 buttai le basi per phamm05 il server CVS del progetto era ospitato Savannah (gnu.org) dopo essere transitato su diversi server cvs,svn di nostra propriet per dare un accesso pubblico al sorgente e pi in linea con le esigenze di un progetto open-source. Dopo una lunga gestazione durata quasi due anni, finalmente a settembre 2007 phamm05 era usabile. In breve periodo si sussegguirono alcune versioni che correggievano errori e introducevano le feature mancanti. Grazie all'aiuto di Fabio all'epoca manutentore di PHPLdapAdmin, a fine 2007 Phamm entra in Debian e risulta quindi facilitata la installazione e aggiornamento. phamm06 Fino all'inizio del 2013, si aggiunsero minor relase sopratrutto bug-fix, RHX continua a utilizzare Phamm sui propri sistemi. Nel 2013 in una giornata di tempo libero decisi di provare a modernizzare l'aspetto del front-end con Bootstrap, non fu difficile e decisi di iniziare a riorganizzare il codice per classi: nasceva Phamm06 XML Temaple 4 Phamm Parallelamente allo sviluppo di Phamm mi interesai al progetto PHPLdapAdmin che per sua natura (linguaggio PHP) era una montagna di codice che svolgeva raffinate funzioni di accesso in lettura/scrittura a diversi server LDAP. In particolare mi interessava il sistema di definizione dei Template che usava un file XML per la generazione di maschere di creazione di nuovi oggetti. Per un po' studiai il sistema e fornii anche alcune patch che furono accettate dagli sviluppatori perch tentavo di capire se PHPLdapAdmin avrebbe potuto essere un sistema che si prestava alla customizzazione, tramite appunto i template per le esigenze di Phamm. Dopo qualche mese decisi che PHPLdap admin i cui obiettivi erano quelli di fornire un frontedn generico di accesso ai server LDAP non erano compatibili con Phamm che doveva svolgere compiti molto pi precisi. Il lavoro effettuato con PLA fu comunque un buon punto di partenza per la creazione del nuovo sistema di template XML di Phamm.
phamm-0.6.5/examples/0000755000175300017530000000000012643155515012422 5ustar phammphamm-0.6.5/examples/conf/0000755000175300017530000000000012643155515013347 5ustar phammphamm-0.6.5/examples/conf/amavisd-new/0000755000175300017530000000000012643155515015562 5ustar phammphamm-0.6.5/examples/conf/amavisd-new/50-user0000644000175300017530000000140612643155515016706 0ustar phammuse strict; # # Place your configuration directives here. They will override those in # earlier files. # # See /usr/share/doc/amavisd-new/ for documentation and examples of # the directives you can use in this file # $warnvirusrecip = 1; @bypass_virus_checks_acl = qw("localhost.$mydomain"); # $enable_ldap = 1; $default_ldap = { hostname => [ 'localhost' ], port => 389, version => 3, timeout => 120, tls => 0, scope => 'sub', base => 'o=hosting,dc=example,dc=tld', bind_dn => 'cn=admin,dc=example,dc=tld', bind_password => 'rhx', query_filter => '(&(objectClass=amavisAccount)(mail=%m))' }; #------------ Do not modify anything below this line ------------- 1; # insure a defined return phamm-0.6.5/examples/conf/amavisd-new/amavisd.conf0000644000175300017530000000220212643155515020051 0ustar phamm# amavisd.conf specific for phamm # # Copyright (c) 2005 Alessandro De Zorzi, Mirko Grava # http://phamm.rhx.it/ # # Permission is granted to copy, distribute and/or modify this document # under the terms of the GNU Free Documentation License, Version 1.2 # or any later version published by the Free Software Foundation; # A copy of the license in DOCS.LICENSE file. # # I dont know why, but amavisd support binding only for the # rootdn, so "other" dont have to read the file # $mydomain = 'example.tld' @bypass_virus_checks_acl = qw("localhost.$mydomain"); # $enable_ldap = 1; $default_ldap = { hostname => 'localhost', tls => 0, base => 'o=hosting,dc=example,dc=tld', bind_dn => 'cn=admin,dc=example,dc=tld', bind_password => 'rhx', query_filter => '(&(objectClass=amavisAccount)(mail=%m))' }; # $bypass_virus_checks_ldap = {res_attr => 'amavisBypassVirusChecks'}; $bypass_spam_checks_ldap = {res_attr => 'amavisBypassSpamChecks'}; $spam_tag_level_ldap = {res_attr => 'amavisSpamTagLevel'}; $spam_tag2_level_ldap = {res_attr => 'amavisSpamTag2Level'}; $spam_kill_level_ldap = {res_attr => 'amavisSpamKillLevel'}; phamm-0.6.5/examples/conf/apache2.2/0000755000175300017530000000000012643155515015012 5ustar phammphamm-0.6.5/examples/conf/apache2.2/htaccess0000644000175300017530000000032612643155515016533 0ustar phammAuthType Basic AuthName "Admin Zone" AuthBasicProvider ldap AuthzLDAPAuthoritative on AuthLDAPURL ldap://localhost:389/o=hosting,dc=example,dc=tld?uid?sub? Require ldap-user "phamm" Require ldap-user "example.com" phamm-0.6.5/examples/conf/courier-authlib-ldap/0000755000175300017530000000000012643155515017363 5ustar phammphamm-0.6.5/examples/conf/courier-authlib-ldap/authldaprc0000644000175300017530000000162412643155515021440 0ustar phamm# Copyright (c) 2005 Alessandro De Zorzi, Mirko Grava # http://phamm.rhx.it/ # # Permission is granted to copy, distribute and/or modify this document # under the terms of the GNU Free Documentation License, Version 1.2 # or any later version published by the Free Software Foundation; # A copy of the license in DOCS.LICENSE file. LDAP_SERVER localhost # for new version of courier delete above # and remove comment on the next line ## LDAP_URI ldap://localhost LDAP_PORT 389 LDAP_PROTOCOL_VERSION 3 LDAP_BASEDN o=hosting,dc=example,dc=tld LDAP_BINDDN cn=phamm,o=hosting,dc=example,dc=tld LDAP_BINDPW rhx LDAP_TIMEOUT 5 LDAP_AUTHBIND 1 LDAP_MAIL mail LDAP_FILTER (accountActive=TRUE) LDAP_GLOB_UID vmail LDAP_GLOB_GID vmail LDAP_HOMEDIR vdHome LDAP_MAILDIR mailbox LDAP_MAILDIRQUOTA quota LDAP_FULLNAME cn LDAP_CRYPTPW userPassword LDAP_DEREF never LDAP_TLS 0 phamm-0.6.5/examples/conf/cron/0000755000175300017530000000000012643155515014310 5ustar phammphamm-0.6.5/examples/conf/cron/phamm0000644000175300017530000000057612643155515015345 0ustar phamm#! /bin/sh # phamm Cron script to rotate phamm log files daily. # phamm log do now work with syslogd # so is not important to restart syslogd # but could be a good idea have some days of # log to control your installation # set -e cd /var/log LOG="phamm.log" savelog -g adm -m 640 -u "www-data" -c 7 $LOG >/dev/null phamm-0.6.5/examples/conf/davical/0000755000175300017530000000000012643155515014752 5ustar phammphamm-0.6.5/examples/conf/davical/example.org-conf.php0000644000175300017530000003236712643155515020642 0ustar phammpg_connect[] = 'dbname=davical port=5432 user=general' * The application will attempt to * connect to the database, successively applying connection parameters from * the array in $c->pg_connect. * used in the web interface but also the caldav Server */ $c->pg_connect[] = "dbname=davical user=davical_app"; // $c->pg_connect[] = "dbname=davical user=davical_app port=5433 host=somehost password=mypass"; /**************************** ********* Desirable ********* *****************************/ /** * default : DAViCal CalDAV Server * Is used to specify the authentication realm of the server, as well as * being used as a name to display in various places. */ $c->system_name = "DAViCal CalDAV Server @ example.org"; /** * default is false * If true, then TODO requested from someone other than the admmin or owner * of a calendar will not get any answer. Often these todo are only relevant * to the owner, but in some shared calendar situations they might not be in * which case you should let this default to false. */ $c->hide_TODO = true; /** * The default is false for backward compatibility * If true, then calendars accessed via WebDAV will only be readonly. Any * changes to them must be applied via CalDAV. * * You may want to set this to false during your initial setup to make it * easier for people to PUT whole calendars as part of the conversion of * their data. After this it is recommended to turn it off so that clients * which have been misconfigured are readily identifiable. */ $c->readonly_webdav_collections = true; /*************************************************************************** * * * ADMIN web Interface * * * ***************************************************************************/ /** * Displayed on the login page to indicate who you should ask if you have * problems logging on. Also for the "From" of the email sent when a user * has lost his password and click on the login page * on "Help! I've forgotten my password" */ $c->admin_email ='webmaster@example.org'; /** * default=true * if true the admin web interface will * have link on name to access details *

The "enable_row_linking" option controls whether javascript is used * to make the entire row clickable in browse lists in the administration * pages. Since this doesn't work in Konqueror you may want to set this * to false if you expect people to be using Konqueror with the DAViCal * administration pages.

*/ $c->enable_row_linking = true; /** * These should be an array of style sheets with a path specified relative * to the root directory. Used for overriding display styles in the admin * interface. * e.g. : $c->local_styles = array('/css/my.css'); **/ // $c->local_styles = array(); // $c->print_styles = array(); /*************************************************************************** * * * Caldav Server * * * ***************************************************************************/ /** * The "collections_always_exist" value defines whether a MKCALENDAR * command is needed to create a calendar collection before calendar * resources can be stored in it. You will want to leave this to the * default (true) if people will be using Evolution or Sunbird / * Lightning against this because that software does not support the * creation of calendar collections. * Default: true */ $c->collections_always_exist = true; /** * The name of a user's "home" calendar. This will be created for each * new user. * Default: 'home' */ // $c->home_calendar_name = 'home'; /** * An array of groups / permissions which should be automatically added * for each new user created. This is a crude mechanism which we * will hopefully manage to work out some better approach for in the * future. For now, create an array that looks something like: * array( 9 => 'R', 4 => 'A' ) * to create a 'read' relationship to user_no 9 and an 'all' relation * with user_no 4. * Default: none */ // $c->default_relationships = array(); /** * An array of fields on the usr record which should be set to specific * values when the users are created. * Default: none */ // $c->template_usr = array( 'active' => true, // 'locale' => 'it_IT', // 'date_format_type' => 'E', // 'email_ok' => date('Y-m-d') // ); /*************************************************************************** * * * External Authentication Sources * * * ***************************************************************************/ /** * Allow specifying another way to control access of the user by authenticating * him against other drivers such has LDAP (the default is the PgSQL DB) * $c->authenticate_hook['call'] should be set to the name of the plugin and must * be a valid function that will be call like this: * call_user_func( $c->authenticate_hook['call'], $username, $password ) * * The login mecanism is made in 2 places: * - for the web interface in: index.php that calls RSCDSSession.php that extends * Session.php (from AWL libraries) * - for the caldav client in: caldav.php that calls BasicAuthSession.php * Both Session.php and BasicAuthSession.php check against the * authenticate_hook['call'], although for BasicAuthSession.php this will be for * each page. For Session.php this will only occur during login. * * $c->authenticate_hook['config'] should be set up with any configuration data * needed by the authenticate call for the moment used only in awl/inc/AuthPlugins.php * and he used to authenticate the user should be at least 'password,user_no' * awl/inc/AuthPlugins.php is a sample file not used by showing what could be * a hook */ /********************************/ /******* Other AWL hook *********/ /********************************/ // require_once('auth-functions.php'); // $c->authenticate_hook = array( // 'call' => 'AuthExternalAwl', // 'config' => array( // // A PgSQL database connection string for the database containing user records // 'connection' => 'dbname=wrms host=otherhost port=5433 user=general', // // Which columns should be fetched from the database // 'columns' => "user_no, active, email_ok, joined, last_update AS updated, last_used, username, password, fullname, email", // // a WHERE clause to limit the records returned. // 'where' => "active AND org_code=7" // ) // ); /********************************/ /*********** LDAP hook **********/ /********************************/ /* * For Active Directory go down to the next example. */ $c->authenticate_hook['call'] = 'LDAP_check'; $c->authenticate_hook['config'] = array( 'host' => 'localhost', //host name of your LDAP Server 'port' => '389', //port /* For the initial bind to be anonymous leave bindDN and passDN commented out */ // DN to bind to this server enabling to perform request 'bindDN'=> 'cn=admin,dc=example,dc=org', // Password of the previous bindDN to bind to this server enabling to perform request 'passDN'=> 'PASSWORD', 'protocolVersion' => '3', //Version of LDAP protocol to use 'baseDNUsers'=> 'o=hosting,dc=perversia,dc=net', //where to look at valid user // 'filterUsers' => 'objectClass=CalDavAccount', //filter which must validate a user according to RFC4515, i.e. surrounded by brackets 'filterUsers' => '(objectClass=CalDavAccount)(CalDavAccess=TRUE)', // 'baseDNGroups' => 'ou=divisions,dc=tennaxia,dc=net', //not used ATM // 'filterGroups' => 'objectClass=groupOfUniqueNames', //not used ATM /** /!\ "username" should be set and "updated" must be set **/ 'mapping_field' => array("username" => "mail", "updated" => "modifyTimestamp", "fullname" => "mail", "email" => "mail" ), //used to create the user based on his ldap properties /** used to set default value for all users, will be overcharged by ldap if defined also in mapping_field **/ // 'default_value' => array("date_format_type" => "E","locale" => "fr_FR"), /** foreach key set start and length in the string provided by ldap example for openLDAP timestamp : 20070503162215Z **/ 'format_updated'=> array('Y' => array(0,4),'m' => array(4,2),'d'=> array(6,2),'H' => array(8,2),'M'=>array(10,2),'S' => array(12,2)), // 'startTLS' => 'no', // Require that TLS is used for LDAP? // If ldap_start_tls is not working, it is probably // because php wants to validate the server's // certificate. Try adding "TLS_REQCERT never" to the // ldap configuration file that php uses (e.g. /etc/ldap.conf // or /etc/ldap/ldap.conf). Of course, this lessens security! 'scope' => 'subtree', // Search scope to use, defaults to subtree. // // Allowed values: base, onelevel, subtree. // ); // include('drivers_ldap.php'); /* * Use the following LDAP example if you are using Active Directory * * You will need to change host, passDN and DOMAIN in bindDN * and baseDNUsers. */ //$c->authenticate_hook['call'] = 'LDAP_check'; //$c->authenticate_hook['config'] = array( // 'host' => 'ldap://ldap.example.net', // 'bindDN' => 'auth@DOMAIN', // 'passDN' => 'secret', // 'baseDNUsers' => 'dc=DOMAIN,dc=local', // 'protocolVersion' => 3, // 'optReferrals' => 0, // 'filterUsers' => '(&(objectcategory=person)(objectclass=user)(givenname=*))', // 'mapping_field' => array("username" => "uid", // "fullname" => "cn" , // "email" => "mail"), // 'default_value' => array("date_format_type" => "E","locale" => "en_NZ"), // 'format_updated' => array('Y' => array(0,4),'m' => array(4,2),'d'=> array(6,2),'H' => array(8,2),'M'=>array(10,2),'S' => array(12,2)) // ); //include('drivers_ldap.php'); /** * Authentication against PAM using the Squid helper script. */ //$c->authenticate_hook = array( // 'call' => 'SQUID_PAM_check', // 'config' => array( 'script' => '/usr/bin/pam_auth', 'email_base' => 'example.com' ) // ); //include('drivers_squid_pam.php'); /** * The default locale will be "en_NZ"; * If you are in a non-English locale, you can set the default_locale * configuration to one of the supported locales. * * Supported Locales (at present, see: "select * from supported_locales ;" for a full list) * * "de_DE", "en_NZ", "es_AR", "fr_FR", "nl_NL", "ru_RU" * * If you want locale support you probably know more about configuring it than me, but * at this stage it should be noted that all translations are UTF-8, and pages are * served as UTF-8, so you will need to ensure that the UTF-8 versions of these locales * are supported on your system. * * People interested in providing new translations are directed to the Wiki: * http://rscds.sourceforge.net/moin/TranslatingRscds **/ $c->default_locale = "de_DE"; /** * Default will be $_SERVER['SERVER_NAME']; * This is used to construct URLs which are passed in the answers to the client. You may * want to force this to a specific domain in responses if your system is accessed by * multiple names, otherwise you probably won't need to change it. */ $c->domain_name = "example.org"; /** * Used as a fallback for the TZID of an event where one is not supplied as part * of a VEVENT. The local (server) time zone will be used as a default. */ // $c->local_tzid; /** * Many people want this, but it may be a security issue for you, so it is * disabled by default. If you enable it, then confidential / private events * will be visible to the 'organizer' or 'attendee' lists. The reason that * this becomes a security issue is that this identification needs to be based * on the user's e-mail address. The user's e-mail address is generally * something which they can set, so they could change it to be the address of * an attendee of a meeting and then would be able to read the meeting. * * Without this, the only person who can view/change PRIVATE or CONFIDENTIAL * events in a calendar is someone with full administrative rights to the calendar * usually the owner. * * If the only person that devious is your sysadmin then you probably already * enabled this option... */ // $c->allow_get_email_visibility = false; phamm-0.6.5/examples/conf/dovecot/0000755000175300017530000000000012643155515015012 5ustar phammphamm-0.6.5/examples/conf/dovecot/dovecot-ldap.conf0000644000175300017530000000157312643155515020250 0ustar phamm# dovecot-ldap.conf specific for phamm # Copyright (c) 2005 Alessandro De Zorzi, Mirko Grava # http://phamm.rhx.it/ # # Permission is granted to copy, distribute and/or modify this document # under the terms of the GNU Free Documentation License, Version 1.2 # or any later version published by the Free Software Foundation; # A copy of the license in DOCS.LICENSE file. hosts = localhost auth_bind = yes auth_bind_userdn = mail=%u,vd=%d,o=hosting,dc=example,dc=tld ldap_version = 3 base = o=hosting,dc=example,dc=tld deref = never scope = subtree user_filter = (&(objectClass=VirtualMailAccount)(accountActive=TRUE)(mail=%u)) pass_filter = (&(objectClass=VirtualMailAccount)(accountActive=TRUE)(mail=%u)) default_pass_scheme = CRYPT # the uid of your vmail user user_global_uid = 1002 # the guid of your vmail group user_global_gid = 1002 phamm-0.6.5/examples/conf/dovecot/dovecot.conf0000644000175300017530000000144612643155515017331 0ustar phamm# dovecot.conf specific for phamm # Copyright (c) 2005 Alessandro De Zorzi, Mirko Grava # http://phamm.rhx.it/ # # Permission is granted to copy, distribute and/or modify this document # under the terms of the GNU Free Documentation License, Version 1.2 # or any later version published by the Free Software Foundation; # A copy of the license in DOCS.LICENSE file. protocols = imap imaps client_workarounds = oe6-fetch-no-newmail outlook-idle log_timestamp = "%Y-%m-%d %H:%M:%S " mail_extra_groups = mail mail_debug = no mail_location = maildir:/home/vmail/domains/%d/%u # auth default { mechanisms = plain passdb ldap { args = /etc/dovecot/dovecot-ldap.conf } userdb ldap { args = /etc/dovecot/dovecot-ldap.conf } } phamm-0.6.5/examples/conf/gnarwl/0000755000175300017530000000000012643155515014641 5ustar phammphamm-0.6.5/examples/conf/gnarwl/footer.txt0000644000175300017530000000002712643155515016677 0ustar phamm -- $fullname <$reply> phamm-0.6.5/examples/conf/gnarwl/gnarwl.cfg0000644000175300017530000000217512643155515016621 0ustar phamm# # Copyright (c) 2005 Alessandro De Zorzi, Mirko Grava # http://phamm.rhx.it/ # # Permission is granted to copy, distribute and/or modify this document # under the terms of the GNU Free Documentation License, Version 1.2 # or any later version published by the Free Software Foundation; # A copy of the license in DOCS.LICENSE file. # map_sender $sender map_receiver $recepient map_subject $subject map_field $begin vacationStart map_field $end vacationEnd map_field $fullname cn map_field $deputy vacationForward map_field $reply mail server localhost port 389 scope sub login cn=phamm,o=hosting,dc=example,dc=tld password rhx protocol 0 base o=hosting,dc=example,dc=tld queryfilter (&(mailAutoreply=$recepient)(vacationActive=TRUE)) result vacationInfo blockfiles /var/lib/gnarwl/block/ umask 0644 blockexpire 48 mta /usr/sbin/sendmail -F $recepient -t $sender maxreceivers 64 maxheader 512 charset ISO8859-1 badheaders /var/lib/gnarwl/badheaders.db blacklist /var/lib/gnarwl/blacklist.db forceheader /var/lib/gnarwl/header.txt forcefooter /var/lib/gnarwl/footer.txt recvheader To Cc loglevel 1 phamm-0.6.5/examples/conf/gnarwl/header.txt0000644000175300017530000000026612643155515016636 0ustar phammFrom: $fullname <$reply> To: $sender X-mailer: GNARWL MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Subject: Re: $subject phamm-0.6.5/examples/conf/libnss-ldap/0000755000175300017530000000000012643155515015557 5ustar phammphamm-0.6.5/examples/conf/libnss-ldap/README0000644000175300017530000000013312643155515016434 0ustar phammFor Debian users please use dpkg-reconfigure libnss-ldap to create also libnss-ldap.secret phamm-0.6.5/examples/conf/libnss-ldap/libnss-ldap.conf0000644000175300017530000000176012643155515020642 0ustar phamm# The distinguished name of the search base. base dc=example,dc=tld # Another way to specify your LDAP server is to provide an uri ldap://127.0.0.1/ # The LDAP version to use (defaults to 3 # if supported by client library) ldap_version 3 # The distinguished name to bind to the server with. # Optional: default is to bind anonymously. # Please do not put double quotes around it as they # would be included literally. binddn cn=admin,dc=example,dc=tld # The credentials to bind with. # Optional: default is no credential. bindpw rhx # The distinguished name to bind to the server with # if the effective user ID is root. Password is # stored in /etc/libnss-ldap.secret (mode 600) # Use 'echo -n "mypassword" > /etc/libnss-ldap.secret' instead # of an editor to create the file. rootbinddn cn=admin,dc=example,dc=tld # Filter to AND with uid=%s #pam_filter objectclass=account pam_filter objectclass=sambaSamAccount # The user ID attribute (defaults to uid) #pam_login_attribute uid pam_login_attribute uid phamm-0.6.5/examples/conf/pdns-backend-ldap/0000755000175300017530000000000012643155515016616 5ustar phammphamm-0.6.5/examples/conf/pdns-backend-ldap/pdns.conf0000644000175300017530000000154612643155515020437 0ustar phamm# pdns.conf specific for phamm # Copyright (c) 2005 Alessandro De Zorzi, Mirko Grava # http://phamm.rhx.it/ # # Permission is granted to copy, distribute and/or modify this document # under the terms of the GNU Free Documentation License, Version 1.2 # or any later version published by the Free Software Foundation; # A copy of the license in DOCS.LICENSE file. # # view original sample from pdns package # this is a simple config for a LAN allow-recursion=127.0.0.1, 192.168.1.0/24 chroot=/var/spool/powerdns config-dir=/etc/powerdns daemon=yes disable-axfr=yes guardian=yes launch=ldap lazy-recursion=yes local-address=0.0.0.0 local-port=53 loglevel=3 master=yes module-dir=/usr/lib/powerdns recursor= 192.192.243.192 setgid=pdns setuid=pdns socket-dir=/var/run version-string=PHAMM DNS include=/etc/powerdns/pdns.d phamm-0.6.5/examples/conf/pdns-backend-ldap/pdns.local0000644000175300017530000000117012643155515020575 0ustar phamm# pdns.local specific for phamm # Copyright (c) 2005 Alessandro De Zorzi, Mirko Grava # http://phamm.rhx.it/ # # Permission is granted to copy, distribute and/or modify this document # under the terms of the GNU Free Documentation License, Version 1.2 # or any later version published by the Free Software Foundation; # A copy of the license in DOCS.LICENSE file. # # view original sample from pdns package # this is a simple config for a LAN ldap-basedn=ou=dns,dc=example,dc=tld ldap-binddn=cn=dnsldap,ou=dns,dc=example,dc=tld ldap-secret=yourdnsldappasswdhere ldap-method=simple phamm-0.6.5/examples/conf/phamm/0000755000175300017530000000000012643155515014451 5ustar phammphamm-0.6.5/examples/conf/phamm/addressbook.acl0000644000175300017530000000273012643155515017434 0ustar phamm# acl specific for address book # Copyright (c) 2005 Alessandro De Zorzi, Mirko Grava # http://phamm.rhx.it/ # # Permission is granted to copy, distribute and/or modify this document # under the terms of the GNU Free Documentation License, Version 1.2 # or any later version published by the Free Software Foundation; # A copy of the license in DOCS.LICENSE file. # account must read his name and all attribute of a person that is in his domain # postmaster with editAccounts=FALSE do the same thing for his domain # postmaster with editAccounts=TRUE can add account/alias and edit also amavisBypassVirusChecks, quota and smtpAuth # vadmin could do the same as postmaster with editAccounts=TRUE for some domains access to dn.regex=".+,vd=([^,]+),o=hosting,dc=example,dc=tld$" attrs=cn,sn,givenName,telephoneNumber,homePhone,mobile,fax,pager by dn="cn=admin,dc=example,dc=tld" write by self write by anonymous read by dn.exact="cn=phamm,o=hosting,dc=example,dc=tld" read by dn.exact,expand="cn=postmaster,vd=$1,o=hosting,dc=example,dc=tld" write by set.expand="user/vd & [$1]" write access to dn.regex=".+,vd=([^,]+),o=hosting,dc=example,dc=tld$" attrs=mail by dn="cn=admin,dc=example,dc=tld" write by self read by anonymous read by dn.exact="cn=phamm,o=hosting,dc=example,dc=tld" read by dn.exact,expand="cn=postmaster,vd=$1,o=hosting,dc=example,dc=tld" write by set.expand="user/vd & [$1]" write phamm-0.6.5/examples/conf/phamm/global.acl0000644000175300017530000001375712643155515016407 0ustar phamm# acl specific for phamm # Copyright (c) 2005 Alessandro De Zorzi, Mirko Grava # http://phamm.rhx.it/ # # Permission is granted to copy, distribute and/or modify this document # under the terms of the GNU Free Documentation License, Version 1.2 # or any later version published by the Free Software Foundation; # A copy of the license in DOCS.LICENSE file. # First of all # acl for pdns access to dn.regex="^(.+,)?cn=([^,]+),ou=dns,dc=example,dc=tld$" by dn="cn=admin,dc=example,dc=tld" write by anonymous auth by dn.exact="cn=dnsldap,ou=dns,dc=example,dc=tld" read by dn.exact,expand="cn=postmaster,vd=$2,o=hosting,dc=example,dc=tld" write access to dn.regex="^(.+,)?dc=([^,]+),ou=dns,dc=example,dc=tld$" by dn="cn=admin,dc=example,dc=tld" write by anonymous auth by dn.exact="cn=dnsldap,ou=dns,dc=example,dc=tld" read by dn.exact,expand="cn=postmaster,vd=$2,o=hosting,dc=example,dc=tld" write access to dn.regex="ou=dns,dc=example,dc=tld$" by dn="cn=admin,dc=example,dc=tld" write by anonymous auth by dn.exact="cn=dnsldap,ou=dns,dc=example,dc=tld" read # now mail service # account must edit his password, spam level, forward, vacation, his name # postmaster with editAccounts=FALSE do the same thing for his domain # postmaster with editAccounts=TRUE can add account/alias and edit also amavisBypassVirusChecks, quota and smtpAuth # vadmin could do the same as postmaster with editAccounts=TRUE for some domains access to dn.regex=".+,vd=([^,]+),o=hosting,dc=example,dc=tld$" attrs=userPassword,sambaNTPassword,sambaLMPassword by dn="cn=admin,dc=example,dc=tld" write by self write by anonymous auth by dn.exact,expand="cn=postmaster,vd=$1,o=hosting,dc=example,dc=tld" write by set.expand="user/vd & [$1]" write access to dn.regex=".+,vd=([^,]+),o=hosting,dc=example,dc=tld$" attrs=amavisBypassVirusChecks,quota,smtpAuth,accountActive by dn="cn=admin,dc=example,dc=tld" write by self read by dn.exact="cn=phamm,o=hosting,dc=example,dc=tld" read by set.expand="user/editAccounts & [TRUE]" write by dn.exact,expand="cn=postmaster,vd=$1,o=hosting,dc=example,dc=tld" read by set.expand="user/vd & [$1]" write access to dn.regex=".+,vd=([^,]+),o=hosting,dc=example,dc=tld$" attrs=cn,sn,forwardActive,vacationActive,vacationInfo,vacationStart,vacationEnd,vacationForward,amavisSpamTagLevel,amavisSpamTag2Level,amavisSpamKillLevel by dn="cn=admin,dc=example,dc=tld" write by self write by dn.exact="cn=phamm,o=hosting,dc=example,dc=tld" read by dn.exact,expand="cn=postmaster,vd=$1,o=hosting,dc=example,dc=tld" write by set.expand="user/vd & [$1]" write access to dn.regex="^.*,vd=([^,]+),o=hosting,dc=example,dc=tld$" attrs=editAccounts by dn="cn=admin,dc=example,dc=tld" write by self read by set.expand="user/editAccounts & [TRUE]" write by dn.exact="cn=phamm,o=hosting,dc=example,dc=tld" read by * none access to dn.regex=".+,vd=([^,]+),o=hosting,dc=example,dc=tld$" attrs=objectClass,entry by dn="cn=admin,dc=example,dc=tld" write by self write by anonymous read by dn.exact="cn=phamm,o=hosting,dc=example,dc=tld" read by set.expand="user/editAccounts & [TRUE]" write by dn.exact,expand="cn=postmaster,vd=$1,o=hosting,dc=example,dc=tld" read access to dn.regex=".+,vd=([^,]+),o=hosting,dc=example,dc=tld$" attrs=amavisBypassSpamChecks,accountActive,delete by dn="cn=admin,dc=example,dc=tld" write by self read by dn.exact="cn=phamm,o=hosting,dc=example,dc=tld" read by dn.exact,expand="cn=postmaster,vd=$1,o=hosting,dc=example,dc=tld" write by set.expand="user/vd & [$1]" write access to dn.regex=".+,vd=([^,]+),o=hosting,dc=example,dc=tld$" attrs=FTPQuotaMBytes,FTPStatus,FTPQuotaFiles,uid,otherPath by dn="cn=admin,dc=example,dc=tld" write by anonymous read by self read by dn.exact="cn=phamm,o=hosting,dc=example,dc=tld" read by dn.exact,expand="cn=postmaster,vd=$1,o=hosting,dc=example,dc=tld" read by set.expand="user/vd & [$1]" write access to dn.regex=".+,vd=([^,]+),o=hosting,dc=example,dc=tld$" attrs=uidNumber,gidNumber,createMaildir,vdHome,mailbox,otherTransport by dn="cn=admin,dc=example,dc=tld" write by self read by dn.exact="cn=phamm,o=hosting,dc=example,dc=tld" read by set.expand="user/vd & [$1]" read access to dn.regex="^(.+,)?vd=([^,]+),o=hosting,dc=example,dc=tld$" attrs=vd by dn="cn=admin,dc=example,dc=tld" write by self write by dn.exact="cn=phamm,o=hosting,dc=example,dc=tld" read by dn.exact,expand="cn=postmaster,vd=$2,o=hosting,dc=example,dc=tld" write by set.expand="user/vd & [$2]" write access to dn.regex="^(.+,)?vd=([^,]+),o=hosting,dc=example,dc=tld$" by dn="cn=admin,dc=example,dc=tld" write by self write by dn.exact="cn=phamm,o=hosting,dc=example,dc=tld" read by set.expand="user/editAccounts & [FALSE]" read by dn.exact,expand="cn=postmaster,vd=$2,o=hosting,dc=example,dc=tld" write by set.expand="user/vd & [$2]" write access to dn.regex=".+,o=hosting,dc=example,dc=tld$" by dn="cn=admin,dc=example,dc=tld" write by self write by dn.exact="cn=phamm,o=hosting,dc=example,dc=tld" read by anonymous auth access to dn.regex=".+,dc=tld$" by dn="cn=admin,dc=example,dc=tld" write by dn.exact="cn=phamm,o=hosting,dc=example,dc=tld" read by anonymous auth access to dn.regex=".+,ou=admin,dc=example,dc=tld$" attrs=userPassword by dn="cn=admin,dc=example,dc=tld" write by self write by anonymous auth access to dn.regex=".+,ou=admin,dc=example,dc=tld$" attrs=vd by dn="cn=admin,dc=example,dc=tld" write by self read access to dn.regex="ou=admin,dc=x4w,dc=it$" by dn="cn=admin,dc=example,dc=tld" write by self read phamm-0.6.5/examples/conf/phamm/phamm.acl0000644000175300017530000001224412643155515016237 0ustar phamm# acl specific for phamm # Copyright (c) 2005 Alessandro De Zorzi, Mirko Grava # http://phamm.rhx.it/ # # Permission is granted to copy, distribute and/or modify this document # under the terms of the GNU Free Documentation License, Version 1.2 # or any later version published by the Free Software Foundation; # A copy of the license in DOCS.LICENSE file. # # account must edit his password, spam level, forward, vacation, his name # postmaster with editAccounts=FALSE do the same thing for his domain # postmaster with editAccounts=TRUE can add account/alias and edit also amavisBypassVirusChecks, quota and smtpAuth # vadmin could do the same as postmaster with editAccounts=TRUE for some domains # IMPORTANT # this file was tested to be used on Debian Lenny with slapd 2.4.7-5 # Please remember that the rootdn is cn=admin,dc=example,dc=tld # access to dn.regex=".+,vd=([^,]+),o=hosting,dc=example,dc=tld$" attrs=userPassword by dn="cn=admin,dc=example,dc=tld" write by self write by anonymous auth by dn.exact,expand="cn=postmaster,vd=$1,o=hosting,dc=example,dc=tld" write by set.expand="user/vd & [$1]" write access to dn.regex=".+,vd=([^,]+),o=hosting,dc=example,dc=tld$" attrs=amavisBypassVirusChecks,quota,smtpAuth,accountActive by dn="cn=admin,dc=example,dc=tld" write by self read by dn.exact="cn=phamm,o=hosting,dc=example,dc=tld" read by set.expand="user/editAccounts & [TRUE]" write by dn.exact,expand="cn=postmaster,vd=$1,o=hosting,dc=example,dc=tld" read by set.expand="user/vd & [$1]" write access to dn.regex=".+,vd=([^,]+),o=hosting,dc=example,dc=tld$" attrs=cn,sn,uid,forwardActive,vacationActive,vacationInfo,vacationStart,vacationEnd,vacationForward,amavisSpamTagLevel,amavisSpamTag2Level,amavisSpamKillLevel by dn="cn=admin,dc=example,dc=tld" write by self write by dn.exact="cn=phamm,o=hosting,dc=example,dc=tld" read by dn.exact,expand="cn=postmaster,vd=$1,o=hosting,dc=example,dc=tld" write by set.expand="user/vd & [$1]" write access to dn.regex="^.*,vd=([^,]+),o=hosting,dc=example,dc=tld$" attrs=editAccounts by dn="cn=admin,dc=example,dc=tld" write by self read by set.expand="user/editAccounts & [TRUE]" write by dn.exact="cn=phamm,o=hosting,dc=example,dc=tld" read by * none access to dn.regex=".+,vd=([^,]+),o=hosting,dc=example,dc=tld$" attrs=objectClass,entry by dn="cn=admin,dc=example,dc=tld" write by self write by anonymous read by dn.exact="cn=phamm,o=hosting,dc=example,dc=tld" read by set.expand="user/editAccounts & [TRUE]" write by dn.exact,expand="cn=postmaster,vd=$1,o=hosting,dc=example,dc=tld" read access to dn.regex=".+,vd=([^,]+),o=hosting,dc=example,dc=tld$" attrs=amavisBypassSpamChecks,accountActive,delete by dn="cn=admin,dc=example,dc=tld" write by self read by dn.exact="cn=phamm,o=hosting,dc=example,dc=tld" read by dn.exact,expand="cn=postmaster,vd=$1,o=hosting,dc=example,dc=tld" write by set.expand="user/vd & [$1]" write access to dn.regex=".+,vd=([^,]+),o=hosting,dc=example,dc=tld$" attrs=otherPath by dn="cn=admin,dc=example,dc=tld" write by anonymous read by self read by dn.exact="cn=phamm,o=hosting,dc=example,dc=tld" read by dn.exact,expand="cn=postmaster,vd=$1,o=hosting,dc=example,dc=tld" read by set.expand="user/vd & [$1]" write access to dn.regex=".+,vd=([^,]+),o=hosting,dc=example,dc=tld$" attrs=createMaildir,vdHome,mailbox,otherTransport by dn="cn=admin,dc=example,dc=tld" write by self read by dn.exact="cn=phamm,o=hosting,dc=example,dc=tld" read by set.expand="user/vd & [$1]" read access to dn.regex="^(.+,)?vd=([^,]+),o=hosting,dc=example,dc=tld$" attrs=vd by dn="cn=admin,dc=example,dc=tld" write by self write by dn.exact="cn=phamm,o=hosting,dc=example,dc=tld" read by dn.exact,expand="cn=postmaster,vd=$2,o=hosting,dc=example,dc=tld" write by set.expand="user/vd & [$2]" write access to dn.regex="^(.+,)?vd=([^,]+),o=hosting,dc=example,dc=tld$" by dn="cn=admin,dc=example,dc=tld" write by self write by dn.exact="cn=phamm,o=hosting,dc=example,dc=tld" read by set.expand="user/editAccounts & [FALSE]" read by dn.exact,expand="cn=postmaster,vd=$2,o=hosting,dc=example,dc=tld" write by set.expand="user/vd & [$2]" write access to dn.regex=".+,o=hosting,dc=example,dc=tld$" by dn="cn=admin,dc=example,dc=tld" write by self write by dn.exact="cn=phamm,o=hosting,dc=example,dc=tld" read by anonymous auth access to dn.regex=".+,dc=tld$" by dn="cn=admin,dc=example,dc=tld" write by dn.exact="cn=phamm,o=hosting,dc=example,dc=tld" read by anonymous auth access to dn.regex=".+,ou=admin,dc=example,dc=tld$" attrs=userPassword by dn="cn=admin,dc=example,dc=tld" write by self write by anonymous auth access to dn.regex=".+,ou=admin,dc=example,dc=tld$" attrs=vd by dn="cn=admin,dc=example,dc=tld" write by self read access to dn.regex="ou=admin,dc=example,dc=tld$" by dn="cn=admin,dc=example,dc=tld" write by self read phamm-0.6.5/examples/conf/postfix/0000755000175300017530000000000012643155515015043 5ustar phammphamm-0.6.5/examples/conf/postfix/fork.pl0000644000175300017530000000506012643155515016342 0ustar phamm#!/usr/bin/perl # Copyright (c) 2005 Alessandro De Zorzi, Mirko Grava # http://phamm.rhx.it/ # # Permission is granted to copy, distribute and/or modify this document # under the terms of the GNU Free Documentation License, Version 1.2 # or any later version published by the Free Software Foundation; # A copy of the license in DOCS.LICENSE file. # many thanks to Marco Sanson for his time # IMPORTANT IMPORTANT # READ BEFORE USE IT!! # at the moment you MUST change the line above the description # CHANGE-THIS to set your correct parameters # like basedn, binddn and gnarwl path # Thanks to Pavol Luptak for some troubleshooting use Net::LDAP; use Getopt::Std; sub generate_random_string { my $length_of_randomstring=shift; my @chars=('a'..'z','A'..'Z','0'..'9','_'); my $random_string; foreach (1..$length_of_randomstring) { $random_string.=$chars[rand @chars]; } return $random_string; } my $random_string=&generate_random_string(32); #open (LOG,">>/tmp/forkpl.log") || die ("Can't open LOG"); $ldap = Net::LDAP->new("localhost"); $ldap->bind("cn=phamm,o=hosting,dc=example,dc=tld", password=>"rhx"); $in=""; while () { $in=join '',$in,$_; } chomp($in); #print LOG "BEFORE FORK: $in"; # due to the -m switch shift; while ($#ARGV >=0) { SWITCH: { $mail=$ARGV[0]; shift; $path = ''; $vforward = ''; $mesg = $ldap->search(filter=>"(mail=$mail)", base=>"dc=example,dc=tld", attrs=> ['vdHome', 'mailbox', 'vacationForward'] ); @entries = $mesg->entries; foreach $entry (@entries) { $path = $entry->get_value('vdHome') . "/" . $entry->get_value('mailbox'); $vforward = $entry->get_value('vacationForward'); } $cmd1="" . $path . "new/" . $random_string . ""; $cmd2="/usr/bin/gnarwl"; $cmd3="/usr/sbin/sendmail ". $vforward; open (MAIL,">$cmd1"); # Fork cmd1 # do not touch double fork!! unless ($pid = fork) { unless (fork) { # print LOG "AFTER FORK $cmd1: $in"; # exec ("echo '$in' > $cmd1"); print MAIL "$in"; close (MAIL); die "exec failed!"; } exit 0; } waitpid($pid,0); # Fork cmd2 unless ($pid = fork) { unless (fork) { exec ("cat '$cmd1' | $cmd2"); die "exec failed!"; } exit 0; } waitpid($pid,0); #Fork cmd3 # here we use the attribute VactionForward for the mail delivery # but the original destination receive the mail # only a copy will be sent if($vforward =~ /\@/){ unless ($pid = fork) { unless (fork) { exec ("cat '$cmd1' | $cmd3"); die "exec failed!"; } exit 0; } waitpid($pid,0); } } } exit; phamm-0.6.5/examples/conf/postfix/main.cf0000644000175300017530000001000312643155515016273 0ustar phamm# main.cf specific for phamm # Copyright (c) 2005 Alessandro De Zorzi, Mirko Grava # http://phamm.rhx.it/ # # Permission is granted to copy, distribute and/or modify this document # under the terms of the GNU Free Documentation License, Version 1.2 # or any later version published by the Free Software Foundation; # A copy of the license in DOCS.LICENSE file. ldap_bind_dn = cn=phamm,o=hosting,dc=example,dc=tld ldap_bind_pw = rhx ldap_search_base = o=hosting,dc=example,dc=tld ldap_domain = dc=example,dc=tld ldap_server_host = localhost ldap_server_port = 389 ldap_version = 3 # transports transport_server_host = $ldap_server_host transport_search_base = $ldap_search_base transport_query_filter = (&(&(vd=%s)(objectClass=VirtualDomain))(accountActive=TRUE)(delete=FALSE)) transport_result_attribute = postfixTransport transport_cache = no transport_bind = yes transport_scope = one transport_bind_dn = $ldap_bind_dn transport_bind_pw = $ldap_bind_pw transport_version = $ldap_version # aliases aliases_server_host = $ldap_server_host aliases_search_base = $ldap_search_base aliases_query_filter = (&(&(objectClass=VirtualMailAlias)(mail=%s))(accountActive=TRUE)) aliases_result_attribute = maildrop aliases_bind = yes aliases_cache = no aliases_bind_dn = $ldap_bind_dn aliases_bind_pw = $ldap_bind_pw aliases_version = $ldap_version # VirtualForward virtualforward_server_host = $ldap_server_host virtualforward_search_base = $ldap_search_base virtualforward_query_filter = (&(&(objectClass=VirtualMailAccount)(mail=%s))(vacationActive=FALSE)(forwardActive=TRUE)(accountActive=TRUE)(delete=FALSE)) virtualforward_result_attribute = maildrop virtualforward_bind = yes virtualforward_cache = no virtualforward_bind_dn = $ldap_bind_dn virtualforward_bind_pw = $ldap_bind_pw virtualforward_version = $ldap_version # Accounts accounts_server_host = $ldap_server_host accounts_search_base = $ldap_search_base accounts_query_filter = (&(&(objectClass=VirtualMailAccount)(mail=%s))(forwardActive=FALSE)(accountActive=TRUE)(delete=FALSE)) accounts_result_attribute = mailbox accounts_cache = no accounts_bind = yes accounts_bind_dn = $ldap_bind_dn accounts_bind_pw = $ldap_bind_pw accounts_version = $ldap_version accountsmap_server_host = $ldap_server_host accountsmap_search_base = $ldap_search_base accountsmap_query_filter = (&(&(objectClass=VirtualMailAccount)(mail=%s))(forwardActive=FALSE)(accountActive=TRUE)(delete=FALSE)) accountsmap_result_attribute = mail accountsmap_cache = no accountsmap_bind = yes accountsmap_bind_dn = $ldap_bind_dn accountsmap_bind_pw = $ldap_bind_pw accountsmap_version = $ldap_version # virtual quota quota_server_host = $ldap_server_host quota_search_base = $ldap_search_base quota_query_filter = (&(&(objectClass=VirtualMailAccount)(mail=%s))(accountActive=TRUE)(delete=FALSE)) quota_result_attribute = quota quota_cache = no quota_bind = yes quota_bind_dn = $ldap_bind_dn quota_bind_pw = $ldap_bind_pw quota_version = $ldap_version # Mail to reply for gnarwl and mail to forward during vacation recipient_bcc_maps = ldap:vma vma_server_host = $ldap_server_host vma_search_base = $ldap_search_base vma_query_filter = (&(&(objectClass=VirtualMailAccount)(mail=%s))(vacationActive=TRUE)(forwardActive=FALSE)(accountActive=TRUE)(delete=FALSE)) vma_result_attribute = mailAutoreply vma_cache = no vma_bind = yes vma_bind_dn = $ldap_bind_dn vma_bind_pw = $ldap_bind_pw vma_version = $ldap_version # transport_maps maildrop_destination_concurrency_limit = 2 maildrop_destination_recipient_limit = 1 transport_maps = hash:/etc/postfix/transport, ldap:transport mydestination = $transport_maps, localhost, $myhostname, localhost.$mydomain, $mydomain virtual_alias_maps = hash:/etc/postfix/virtual, ldap:virtualforward, ldap:aliases, ldap:accountsmap # virtual accounts for delivery virtual_mailbox_base = /home/vmail/domains virtual_mailbox_maps = ldap:accounts virtual_minimum_uid = 500 virtual_uid_maps = static:500 virtual_gid_maps = static:500 local_recipient_maps = proxy:unix:passwd.byname, $alias_maps, $virtual_mailbox_maps phamm-0.6.5/examples/conf/postfix/main.cf.mxbackup0000644000175300017530000000344412643155515020117 0ustar phamm# main.cf specific for phamm # on the mx backup # Copyright (c) 2005 Alessandro De Zorzi, Mirko Grava # http://phamm.rhx.it/ # # Permission is granted to copy, distribute and/or modify this document # under the terms of the GNU Free Documentation License, Version 1.2 # or any later version published by the Free Software Foundation; # A copy of the license in DOCS.LICENSE file. ldap_bind_dn = cn=phamm,o=hosting,dc=example,dc=tld ldap_bind_pw = rhx ldap_search_base = o=hosting,dc=example,dc=tld ldap_domain = dc=example,dc=tld ldap_server_host = localhost ldap_server_port = 389 ldap_version = 3 # MX Backup mxb_server_host = $ldap_server_host mxb_search_base = $ldap_search_base mxb_query_filter = (&(&(vd=%s)(objectClass=VirtualDomain))(accountActive=TRUE)(delete=FALSE)) mxb_result_attribute = vd mxb_cache = no mxb_bind = yes mxb_scope = one mxb_bind_dn = $ldap_bind_dn mxb_bind_pw = $ldap_bind_pw mxb_version = $ldap_version accountsmap_server_host = $ldap_server_host accountsmap_search_base = $ldap_search_base accountsmap_query_filter = (&(&(objectClass=VirtualMailAccount)(mail=%s))(accountActive=TRUE)(delete=FALSE)) accountsmap_result_attribute = mail accountsmap_cache = no accountsmap_bind = yes accountsmap_bind_dn = $ldap_bind_dn accountsmap_bind_pw = $ldap_bind_pw accountsmap_version = $ldap_version aliasmap_server_host = $ldap_server_host aliasmap_search_base = $ldap_search_base aliasmap_query_filter = (&(&(objectClass=VirtualMailAlias)(mail=%s))(accountActive=TRUE)) aliasmap_result_attribute = mail aliasmap_cache = no aliasmap_bind = yes aliasmap_bind_dn = $ldap_bind_dn aliasmap_bind_pw = $ldap_bind_pw aliasmap_version = $ldap_version relay_domains = $mydestination, ldap:mxb relay_recipient_maps = hash:/etc/postfix/relay_recipients, ldap:accountsmap, ldap:aliasmap phamm-0.6.5/examples/conf/postfix/main.cf.mxbackup.withoutprimary0000644000175300017530000000270412643155515023223 0ustar phamm# main.cf specific for phamm # on the primary mx for backup other domains # Copyright (c) 2005 Alessandro De Zorzi, Mirko Grava # http://phamm.rhx.it/ # # Permission is granted to copy, distribute and/or modify this document # under the terms of the GNU Free Documentation License, Version 1.2 # or any later version published by the Free Software Foundation; # A copy of the license in DOCS.LICENSE file. ldap_bind_dn = cn=phamm,o=hosting,dc=example,dc=tld ldap_bind_pw = rhx ldap_search_base = o=hosting,dc=example,dc=tld ldap_domain = dc=example,dc=tld ldap_server_host = localhost ldap_server_port = 389 ldap_version = 3 # MX Backup # find domain vbd_server_host = $ldap_server_host vbd_search_base = $ldap_search_base vbd_query_filter = (&(&(vd=%s)(objectClass=VirtualBackupDomain))(accountActive=TRUE)(delete=FALSE)) vbd_result_attribute = vd vbd_cache = no vbd_bind = yes vbd_scope = one vbd_bind_dn = $ldap_bind_dn vbd_bind_pw = $ldap_bind_pw vbd_version = $ldap_version # MX Backup # find account vbmmap_server_host = $ldap_server_host vbmmap_search_base = $ldap_search_base vbmmap_query_filter = (&(&(objectClass=VirtualBackupMail)(mail=%s))(accountActive=TRUE)) vbmmap_result_attribute = mail vbmmap_cache = no vbmmap_bind = yes vbmmap_bind_dn = $ldap_bind_dn vbmmap_bind_pw = $ldap_bind_pw vbmmap_version = $ldap_version relay_domains = $mydestination, ldap:vbd relay_recipient_maps = hash:/etc/postfix/relay_recipients, ldap:vbmmap phamm-0.6.5/examples/conf/postfix/master.cf0000644000175300017530000000233712643155515016655 0ustar phamm# master.cf specific for phamm # Copyright (c) 2005 Alessandro De Zorzi, Mirko Grava # http://phamm.rhx.it/ # # Permission is granted to copy, distribute and/or modify this document # under the terms of the GNU Free Documentation License, Version 1.2 # or any later version published by the Free Software Foundation; # A copy of the license in DOCS.LICENSE file. # change the line maildrop like this maildrop unix - n n - - pipe flags=Rhu user=daemon argv=/usr/bin/maildrop -w 91 -d ${recipient} # for autoresponder gnarwl unix - n n - - pipe flags=F user=vmail argv=/usr/bin/gnarwl -a ${user}@${nexthop} -s ${sender} # only if you use amavisd-new for content filtering #smtp-amavis unix - - n - 3 smtp # -o smtp_data_done_timeout=1200 # -o disable_dns_lookups=yes #127.0.0.1:10025 inet n - n - - smtpd # -o content_filter= # -o local_recipient_maps= # -o relay_recipient_maps= # -o smtpd_restriction_classes= # -o smtpd_client_restrictions= # -o smtpd_helo_restrictions= # -o smtpd_sender_restrictions= # -o smtpd_recipient_restrictions=permit_mynetworks,reject # -o mynetworks=127.0.0.0/8 # -o strict_rfc821_envelopes=yes phamm-0.6.5/examples/conf/postfix/transport0000644000175300017530000000002312643155515017015 0ustar phamm.autoreply gnarwl: phamm-0.6.5/examples/conf/pure-ftpd-ldap/0000755000175300017530000000000012643155515016173 5ustar phammphamm-0.6.5/examples/conf/pure-ftpd-ldap/pureftpd-ldap.conf0000644000175300017530000000023612643155515021612 0ustar phammLDAPServer localhost LDAPPort 389 LDAPBaseDN o=hosting,dc=example,dc=tld LDAPBindDN cn=admin,dc=example,dc=tld LDAPBindPW rhx # # look sample-pureftpd.ldif phamm-0.6.5/examples/conf/sasl/0000755000175300017530000000000012643155515014311 5ustar phammphamm-0.6.5/examples/conf/sasl/main.cf0000644000175300017530000000062112643155515015546 0ustar phamm# this is an add-on ONLY for SASL-AUTH # in your /etc/postfix/main.cf # remember to add permit_sasl_authenticated # where you need smtpd_sasl_auth_enable = yes smtpd_sasl_application_name = smtpd smtpd_sasl_security_options = noanonymous smtpd_sasl_local_domain = broken_sasl_auth_clients = yes smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, check_relay_domains, ..... phamm-0.6.5/examples/conf/sasl/master.cf0000644000175300017530000000026112643155515016115 0ustar phamm# could be some problem in some standard installation # smtpd is chrooted so you must do a simple change like this smtp inet n - n - - smtpd phamm-0.6.5/examples/conf/sasl/saslauthd0000644000175300017530000000055112643155515016225 0ustar phamm# On Debian this is in /etc/default/ # This needs to be uncommented before saslauthd will be run automatically START=yes # You must specify the authentication mechanisms you wish to use. # This defaults to "pam" for PAM support, but may also include # "shadow" or "sasldb", like this: # MECHANISMS="pam shadow" MECHANISMS="ldap" PARAMS="-O /etc/saslauthd.conf" phamm-0.6.5/examples/conf/sasl/saslauthd.conf0000644000175300017530000000135712643155515017156 0ustar phamm# This file must be in /etc # this is the default for ldap (see man saslauthd) # this is for fastbind # all your account o alias could do smtpauth ldap_servers: ldap://ldap.example.tld/ ldap_auth_method: fastbind ldap_filter: mail=%u,vd=%d,o=hosting,dc=example,dc=tld ldap_base: o=hosting,dc=example,dc=tld ldap_version: 3 # this is for simple bind # only smthAuth=TRUE could do relay ldap_servers: ldap://ldap.example.tld/ ldap_auth_method: bind ldap_bind_dn: cn=phamm,o=hosting,dc=example,dc=tld ldap_bind_pw: phammpasswordhere ldap_filter: (&(mail=%U@%d)(smtpAuth=TRUE)) ldap_base: o=hosting,dc=example,dc=tld ldap_version: 3 phamm-0.6.5/examples/conf/sasl/smtpd.conf0000644000175300017530000000034312643155515016307 0ustar phamm# with this postfix use SASL to permit # relay be sure that you use SMTP-AUTH over TLS # /etc/postfix/sasl/smtpd.conf pwcheck_method: saslauthd saslauthd_path: /var/run/saslauthd/mux saslauthd_version: 2 mech_list: PLAIN LOGIN phamm-0.6.5/examples/conf/slapd/0000755000175300017530000000000012643155515014452 5ustar phammphamm-0.6.5/examples/conf/slapd/indexing.Debian0000644000175300017530000000063512643155515017367 0ustar phamm# specific for mail index objectClass eq index cn,mail,givenname eq,subinitial index vd,delete eq,pres index accountActive,forwardActive eq,pres index smtpAuth eq,pres index sn,displayName pres,eq,sub index default sub phamm-0.6.5/examples/conf/slapd/slapd.conf0000644000175300017530000000372412643155515016432 0ustar phamm# this is a sample file # for debian etch # with slapd 2.3.25-1 include /etc/ldap/schema/core.schema include /etc/ldap/schema/cosine.schema include /etc/ldap/schema/inetorgperson.schema include /etc/ldap/schema/nis.schema include /etc/ldap/schema/phamm.schema include /etc/ldap/schema/ISPEnv2.schema include /etc/ldap/schema/amavis.schema include /etc/ldap/schema/dnsdomain2.schema include /etc/ldap/schema/pureftpd.schema include /etc/ldap/schema/samba.schema include /etc/ldap/schema/misc.schema # Only if you need to use address book # and only in a intranet #include /etc/ldap/addressbook.acl include /etc/ldap/phamm.acl pidfile /var/run/slapd/slapd.pid argsfile /var/run/slapd/slapd.args loglevel 0 modulepath /usr/lib/ldap moduleload back_hdb backend hdb database hdb directory "/var/lib/ldap" sizelimit 500 tool-threads 1 dbconfig set_cachesize 0 2097152 0 dbconfig set_lk_max_objects 1500 dbconfig set_lk_max_locks 1500 dbconfig set_lk_max_lockers 1500 # lastmod on suffix "dc=example,dc=tld" rootdn "cn=admin,dc=example,dc=tld" rootpw rhx checkpoint 512 30 # specific for mail index objectClass eq index cn,mail,givenname eq,subinitial index vd,delete eq,pres index accountActive,forwardActive eq,pres index smtpAuth eq,pres index associatedDomain pres,eq,sub index aAAARecord pres,eq index aRecord pres,eq index sn,displayName pres,eq,sub index uid,uidNumber,gidNumber,memberUid eq index default sub index sambaSID eq index sambaPrimaryGroupSID eq index sambaDomainName eq # added for TLS/SSL # see http://www.openldap.org/doc/admin24/tls.html # for more information TLSCACertificateFile /etc/ldap/ssl/server.pem TLSCertificateFile /etc/ldap/ssl/server.pem TLSCertificateKeyFile /etc/ldap/ssl/server.pem phamm-0.6.5/examples/conf/smbldap-tools/0000755000175300017530000000000012643155515016127 5ustar phammphamm-0.6.5/examples/conf/smbldap-tools/smbldap.conf0000644000175300017530000001725512643155515020432 0ustar phamm# $Source: /cvsroot/phamm/phamm05/examples/conf/smbldap-tools/smbldap.conf,v $ # $Id: smbldap.conf,v 1.2 2006/05/24 09:43:14 mgrava Exp $ # # smbldap-tools.conf : Q & D configuration file for smbldap-tools # This code was developped by IDEALX (http://IDEALX.org/) and # contributors (their names can be found in the CONTRIBUTORS file). # # Copyright (C) 2001-2002 IDEALX # # 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. # Purpose : # . be the configuration file for all smbldap-tools scripts ############################################################################## # # General Configuration # ############################################################################## # Put your own SID. To obtain this number do: "net getlocalsid". # If not defined, parameter is taking from "net getlocalsid" return ##SID="S-1-5-21-3869540645-2669363961-2494650606" # Domain name the Samba server is in charged. # If not defined, parameter is taking from smb.conf configuration file # Ex: sambaDomain="IDEALX-NT" sambaDomain="PHAMM" ############################################################################## # # LDAP Configuration # ############################################################################## # Notes: to use to dual ldap servers backend for Samba, you must patch # Samba with the dual-head patch from IDEALX. If not using this patch # just use the same server for slaveLDAP and masterLDAP. # Those two servers declarations can also be used when you have # . one master LDAP server where all writing operations must be done # . one slave LDAP server where all reading operations must be done # (typically a replication directory) # Slave LDAP server # Ex: slaveLDAP=127.0.0.1 # If not defined, parameter is set to "127.0.0.1" slaveLDAP="127.0.0.1" # Slave LDAP port # If not defined, parameter is set to "389" slavePort="389" # Master LDAP server: needed for write operations # Ex: masterLDAP=127.0.0.1 # If not defined, parameter is set to "127.0.0.1" masterLDAP="127.0.0.1" # Master LDAP port # If not defined, parameter is set to "389" masterPort="389" # Use TLS for LDAP # If set to 1, this option will use start_tls for connection # (you should also used the port 389) # If not defined, parameter is set to "1" ldapTLS="0" # How to verify the server's certificate (none, optional or require) # see "man Net::LDAP" in start_tls section for more details verify="require" # CA certificate # see "man Net::LDAP" in start_tls section for more details cafile="/etc/opt/IDEALX/smbldap-tools/ca.pem" # certificate to use to connect to the ldap server # see "man Net::LDAP" in start_tls section for more details clientcert="/etc/opt/IDEALX/smbldap-tools/smbldap-tools.pem" # key certificate to use to connect to the ldap server # see "man Net::LDAP" in start_tls section for more details clientkey="/etc/opt/IDEALX/smbldap-tools/smbldap-tools.key" # LDAP Suffix # Ex: suffix=dc=IDEALX,dc=ORG suffix="dc=example,dc=tld" # Where are stored Users # Ex: usersdn="ou=Users,dc=IDEALX,dc=ORG" # Warning: if 'suffix' is not set here, you must set the full dn for usersdn usersdn="vd=example.tld,o=hosting,${suffix}" # Where are stored Computers # Ex: computersdn="ou=Computers,dc=IDEALX,dc=ORG" # Warning: if 'suffix' is not set here, you must set the full dn for computersdn computersdn="ou=Computers,o=samba,${suffix}" # Where are stored Groups # Ex: groupsdn="ou=Groups,dc=IDEALX,dc=ORG" # Warning: if 'suffix' is not set here, you must set the full dn for groupsdn groupsdn="ou=Groups,o=samba,${suffix}" # Where are stored Idmap entries (used if samba is a domain member server) # Ex: groupsdn="ou=Idmap,dc=IDEALX,dc=ORG" # Warning: if 'suffix' is not set here, you must set the full dn for idmapdn idmapdn="ou=Idmap,o=samba,${suffix}" # Where to store next uidNumber and gidNumber available for new users and groups # If not defined, entries are stored in sambaDomainName object. # Ex: sambaUnixIdPooldn="sambaDomainName=${sambaDomain},${suffix}" # Ex: sambaUnixIdPooldn="cn=NextFreeUnixId,${suffix}" sambaUnixIdPooldn="sambaDomainName=PHAMM,o=samba,${suffix}" # Default scope Used scope="sub" # Unix password encryption (CRYPT, MD5, SMD5, SSHA, SHA, CLEARTEXT) hash_encrypt="SSHA" # if hash_encrypt is set to CRYPT, you may set a salt format. # default is "%s", but many systems will generate MD5 hashed # passwords if you use "$1$%.8s". This parameter is optional! crypt_salt_format="%s" ############################################################################## # # Unix Accounts Configuration # ############################################################################## # Login defs # Default Login Shell # Ex: userLoginShell="/bin/bash" userLoginShell="/bin/bash" # Home directory # Ex: userHome="/home/%U" userHome="/home/%U" # Default mode used for user homeDirectory userHomeDirectoryMode="700" # Gecos userGecos="System User" # Default User (POSIX and Samba) GID defaultUserGid="5013" # Default Computer (Samba) GID defaultComputerGid="5015" # Skel dir skeletonDir="/etc/skel" # Default password validation time (time in days) Comment the next line if # you don't want password to be enable for defaultMaxPasswordAge days (be # careful to the sambaPwdMustChange attribute's value) defaultMaxPasswordAge="45" ############################################################################## # # SAMBA Configuration # ############################################################################## # The UNC path to home drives location (%U username substitution) # Just set it to a null string if you want to use the smb.conf 'logon home' # directive and/or disable roaming profiles # Ex: userSmbHome="\\PDC-SMB3\%U" userSmbHome="\\PHAMM-PDC\%U" # The UNC path to profiles locations (%U username substitution) # Just set it to a null string if you want to use the smb.conf 'logon path' # directive and/or disable roaming profiles # Ex: userProfile="\\PDC-SMB3\profiles\%U" userProfile="\\PHAMM-PDC\profiles\%U" # The default Home Drive Letter mapping # (will be automatically mapped at logon time if home directory exist) # Ex: userHomeDrive="H:" userHomeDrive="H:" # The default user netlogon script name (%U username substitution) # if not used, will be automatically username.cmd # make sure script file is edited under dos # Ex: userScript="startup.cmd" # make sure script file is edited under dos userScript="logon.bat" # Domain appended to the users "mail"-attribute # when smbldap-useradd -M is used # Ex: mailDomain="idealx.com" mailDomain="example.tld" ############################################################################## # # SMBLDAP-TOOLS Configuration (default are ok for a RedHat) # ############################################################################## # Allows not to use smbpasswd (if with_smbpasswd == 0 in smbldap_conf.pm) but # prefer Crypt::SmbHash library with_smbpasswd="0" smbpasswd="/usr/bin/smbpasswd" # Allows not to use slappasswd (if with_slappasswd == 0 in smbldap_conf.pm) # but prefer Crypt:: libraries with_slappasswd="0" slappasswd="/usr/sbin/slappasswd" # comment out the following line to get rid of the default banner # no_banner="1" phamm-0.6.5/examples/conf/smbldap-tools/smbldap_bind.conf0000644000175300017530000000064412643155515021420 0ustar phamm############################ # Credential Configuration # ############################ # Notes: you can specify two differents configuration if you use a # master ldap for writing access and a slave ldap server for reading access # By default, we will use the same DN (so it will work for standard Samba # release) slaveDN="cn=admin,dc=example,dc=tld" slavePw="rhx" masterDN="cn=admin,dc=example,dc=tld" masterPw="rhx" phamm-0.6.5/examples/conf/squid/0000755000175300017530000000000012643155515014474 5ustar phammphamm-0.6.5/examples/conf/squid/squid.conf0000644000175300017530000000032312643155515016466 0ustar phammauth_param basic program /usr/lib/squid/ldap_auth -v 3 -b "o=hosting,dc=example,dc=tld" -f "(&(objectClass=proxyAccount)(webAccess=TRUE)(uid=%s))" -h localhost -D "cn=phamm,o=hosting,dc=example,dc=tld" -w "rhx" phamm-0.6.5/examples/ldif/0000755000175300017530000000000012643155515013340 5ustar phammphamm-0.6.5/examples/ldif/address-book.ldif0000644000175300017530000000163612643155515016563 0ustar phamm# LDIF Export for: mail=mirko@example.tld,vd=example.tld,o=hosting,dc=example,dc=tld # this is a sample entry for a complete account # it is only needed if you want a address book with Thunderbird dn: mail=mirko@example.tld,vd=example.tld,o=hosting,dc=example,dc=tld objectClass: top objectClass: VirtualMailAccount objectClass: Vacation objectClass: VirtualForward objectClass: amavisAccount mail: mirko@example.tld userPassword: {CRYPT}$1$1i1IhFKP$HYUi3KiRFLZNsFokvRuHF1 uid: mirko.example.tld lastChange: 1170928183 quota: 10 vdHome: /home/vmail/domains mailbox: example.tld/mirko delete: FALSE vacationActive: FALSE forwardActive: FALSE accountActive: TRUE smtpAuth: FALSE amavisBypassVirusChecks: TRUE amavisBypassSpamChecks: FALSE mobile: +39 0987654321 cn: Grava Mirko homePhone: +39 1234 56789 telephoneNumber: +39 4321 0987654 sn: Grava pager: +39 69 72437 givenName: Mirko facsimileTelephoneNumber: +39 2143 329012 phamm-0.6.5/examples/ldif/sample-hosting.ldif0000644000175300017530000000047312643155515017136 0ustar phammdn:o=hosting,dc=example,dc=tld objectClass: top objectClass: organization o: hosting description: mail.example.tld hosting root dn:cn=phamm,o=hosting,dc=example,dc=tld objectClass: top objectClass: organizationalRole objectClass: simpleSecurityObject cn: phamm userPassword: {SSHA}zCfpI3LEnzO0ZWJo8VeHes6TicnPJuME phamm-0.6.5/examples/ldif/sample-mail.ldif0000644000175300017530000000440512643155515016404 0ustar phammdn:vd=example.tld,o=hosting,dc=example,dc=tld objectClass: top objectClass: VirtualDomain postfixTransport: maildrop: lastChange: 1066742030 vd: example.tld delete: FALSE accountActive: TRUE adminID: cn=matrix,ou=admin,dc=example,dc=tld editAV: FALSE maxAlias: 20 maxMail: 10 maxQuota: 250 dn:cn=postmaster,vd=example.tld,o=hosting,dc=example,dc=tld objectClass: top objectClass: VirtualMailAlias mail: postmaster@example.tld lastChange: 1066742031 maildrop: postmaster accountActive: TRUE cn: postmaster sn: postmaster userPassword: {SSHA}G7vRIKNRvDQg0T0qarcMgbYaQ+iOLEgq editAccounts: FALSE dn:mail=abuse@example.tld,vd=example.tld,o=hosting,dc=example,dc=tld objectClass: top objectClass: VirtualMailAlias mail: abuse@example.tld lastChange: 1066742031 maildrop: postmaster accountActive: TRUE cn: abuse sn: abuse dn:mail=john.doe@example.tld,vd=example.tld,o=hosting,dc=example,dc=tld objectClass: top objectClass: VirtualMailAccount objectClass: Vacation objectClass: amavisAccount objectClass: VirtualForward mail: john.doe@example.tld vdHome: /home/vmail/domains mailbox: example.tld/john.doe/ delete: FALSE accountActive: TRUE sn: Doe userPassword: {SSHA}G7vRIKNRvDQg0T0qarcMgbYaQ+iOLEgq description: Vacation description vacationActive: FALSE vacationStart: 201001010000 vacationEnd: 201001010000 forwardActive: FALSE lastChange: 1108499016 cn: John quota: 52428800S amavisSpamKillLevel: 6.0 amavisSpamTag2Level: 5.5 amavisSpamTagLevel: 3.0 amavisBypassVirusChecks: FALSE amavisBypassSpamChecks: TRUE mailAutoreply: john.doe@example.tld.autoreply dn:mail=john.smith@example.tld,vd=example.tld,o=hosting,dc=example,dc=tld objectClass: top objectClass: VirtualMailAccount objectClass: Vacation objectClass: amavisAccount objectClass: VirtualForward mail: john.smith@example.tld vdHome: /home/vmail/domains mailbox: example.tld/john.smith/ delete: FALSE accountActive: TRUE sn: Smith userPassword: {SSHA}G7vRIKNRvDQg0T0qarcMgbYaQ+iOLEgq description: Vacation description vacationActive: FALSE vacationStart: 201001010000 vacationEnd: 201001010000 amavisBypassVirusChecks: TRUE amavisBypassSpamChecks: FALSE forwardActive: FALSE lastChange: 1108499023 cn: John quota: 52428800S amavisSpamKillLevel: 6.0 amavisSpamTag2Level: 5.5 amavisSpamTagLevel: 3.0 mailAutoreply: john.smith@example.tld.autoreply phamm-0.6.5/examples/ldif/sample-main.ldif0000644000175300017530000000024012643155515016377 0ustar phammdn:dc=example,dc=tld objectClass: top objectClass: domain dc: example dn:cn=admin,dc=example,dc=tld objectClass: top objectClass: organizationalRole cn: admin phamm-0.6.5/examples/ldif/sample-pdns.ldif0000644000175300017530000000242312643155515016424 0ustar phammdn: ou=dns,dc=example,dc=tld objectClass: top objectClass: organizationalUnit ou: dns description: dns zone on ldap dn: cn=dnsldap,ou=dns,dc=example,dc=tld objectClass: top objectClass: organizationalRole objectClass: simpleSecurityObject cn: dnsldap userPassword:: e1NTSEF9blFYSHpMeVVHK3VsNExmU2taU0NrdkwzeVAyTE03NUQ= dn: dc=example.tld,ou=dns,dc=example,dc=tld objectClass: top objectClass: dnsdomain2 objectClass: domainrelatedobject dc: example.tld associatedDomain: example.tld aRecord: 192.168.12.12 dn: dc=www,dc=example.tld,ou=dns,dc=example,dc=tld objectClass: top objectClass: dnsdomain2 objectClass: domainrelatedobject dc: www associatedDomain: www.example.tld aRecord: 192.168.12.12 dn: dc=mail,dc=example.tld,ou=dns,dc=example,dc=tld objectClass: top objectClass: dnsdomain2 objectClass: domainrelatedobject dc: mail associatedDomain: mail.example.tld aRecord: 192.168.12.12 dn: dc=mail2,dc=example.tld,ou=dns,dc=example,dc=tld objectClass: top objectClass: dnsdomain2 objectClass: domainrelatedobject dc: mail2 associatedDomain: mail2.example.tld aRecord: 192.168.12.12 dn: dc=webmail,dc=example.tld,ou=dns,dc=example,dc=tld objectClass: top objectClass: dnsdomain2 objectClass: domainrelatedobject dc: webmail associatedDomain: webmail.example.tld cNAMERecord: www.example.tld phamm-0.6.5/examples/ldif/sample-pureftpd.ldif0000644000175300017530000000225412643155515017313 0ustar phamm# IMPORTANT # the sample-mail.ldif must be already in the tree # to add this sample file use mod-ldap.sh in the tools directory # could be some problem with phpldapadmin dn: cn=postmaster,vd=example.tld,o=hosting,dc=example,dc=tld changetype: modify add: objectClass gidNumber: 5000 homeDirectory: /var/www/example.tld uid: example.tld uidNumber: 5000 objectClass: posixAccount FTPQuotaMBytes: 100 FTPStatus: enabled objectClass: PureFTPdUser # about FTPStatus # this is the documentation from # http://www.pureftpd.org/README.LDAP #--- #FTPStatus should be either "enabled" or "disabled". If the FTPStatus field #exists and is set to anything except "enabled", the user will not be #permitted to log in. If the FTPStatus field does not exist, the user *WILL* #be allowed to log in as normal, to allow LDAP users without the PureFTPdUser #objectClass. #--- # so could be a good thing have this attribute boolean in the schema but # the control is in the code so this MUST be like the original schema # attributetype ( 1.3.6.1.4.1.6981.11.3.7 NAME 'FTPStatus' # DESC 'Account status: enabled or disabled' # EQUALITY caseIgnoreIA5Match # SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE ) phamm-0.6.5/examples/ldif/sample-squid.ldif0000644000175300017530000000077012643155515016610 0ustar phamm# IMPORTANT # the sample-mail.ldif must be already in the tree # to add this sample file use mod-ldap.sh in the tools directory # could be some problem with phpldapadmin dn:mail=john.doe@example.tld,vd=example.tld,o=hosting,dc=example,dc=tld changetype: modify add: ObjectClass objectClass: proxyAccount uid: john.doe webAccess: TRUE dn:mail=john.smith@example.tld,vd=example.tld,o=hosting,dc=example,dc=tld changetype: modify add: ObjectClass objectClass: proxyAccount uid: john.smith webAccess: FALSE phamm-0.6.5/examples/ldif/smbldap-populate.ldif0000644000175300017530000001222212643155515017450 0ustar phamm# LDIF Export for: dc=example,dc=tld # Server: My LDAP Server (localhost) # IMPORTANT READ THIS FIRST # change the basedn and # change "THISISMYSID" with the SID obtained # by "net getlocalsid" by root # after this do the following command # smbldap-populate -i smbldap-populate.ldif -a Administrator # dn: uid=Administrator,vd=example.tld,o=hosting,dc=example,dc=tld cn: Administrator sn: Administrator objectClass: top objectClass: person objectClass: organizationalPerson objectClass: inetOrgPerson objectClass: sambaSamAccount objectClass: posixAccount objectClass: shadowAccount gidNumber: 0 uid: Administrator uidNumber: 0 homeDirectory: /home/Administrator sambaLogonTime: 0 sambaLogoffTime: 2147483647 sambaKickoffTime: 2147483647 sambaPwdCanChange: 0 sambaHomePath: \\PHAMM-PDC\Administrator sambaHomeDrive: H: sambaProfilePath: \\PHAMM-PDC\profiles\Administrator sambaPrimaryGroupSID: THISISMYSID-5012 sambaSID: THISISMYSID-5000 loginShell: /bin/false gecos: Netbios Domain Administrator sambaLMPassword: D58939F1B5DBE9DBAAD3B435B51404EE sambaAcctFlags: [U] sambaNTPassword: A107034C4767307F00FD68E3ED9330E6 sambaPwdLastSet: 1148320187 sambaPwdMustChange: 1152208187 userPassword: {SSHA}h5GQAerojC7lZfU3JYLZbKKXSCNndUxP dn: uid=nobody,vd=example.tld,o=hosting,dc=example,dc=tld cn: nobody sn: nobody objectClass: top objectClass: person objectClass: organizationalPerson objectClass: inetOrgPerson objectClass: sambaSamAccount objectClass: posixAccount objectClass: shadowAccount gidNumber: 5014 uid: nobody uidNumber: 999 homeDirectory: /dev/null sambaPwdLastSet: 0 sambaLogonTime: 0 sambaLogoffTime: 2147483647 sambaKickoffTime: 2147483647 sambaPwdCanChange: 0 sambaPwdMustChange: 2147483647 sambaHomePath: \\PHAMM-PDC\nobody sambaHomeDrive: H: sambaProfilePath: \\PHAMM-PDC\profiles\nobody sambaPrimaryGroupSID: THISISMYSID-5014 sambaLMPassword: NO PASSWORDXXXXXXXXXXXXXXXXXXXXX sambaNTPassword: NO PASSWORDXXXXXXXXXXXXXXXXXXXXX sambaAcctFlags: [NUD ] sambaSID: THISISMYSID-2998 loginShell: /bin/false dn: o=samba,dc=example,dc=tld objectClass: organization o: samba dn: ou=Computers,o=samba,dc=example,dc=tld objectClass: top objectClass: organizationalUnit ou: Computers dn: ou=Groups,o=samba,dc=example,dc=tld objectClass: top objectClass: organizationalUnit ou: Groups dn: cn=Account Operators,ou=Groups,o=samba,dc=example,dc=tld objectClass: top objectClass: posixGroup objectClass: sambaGroupMapping gidNumber: 5048 cn: Account Operators description: Netbios Domain Users to manipulate users accounts sambaSID: S-1-5-32-5048 sambaGroupType: 5 displayName: Account Operators dn: cn=Administrators,ou=Groups,o=samba,dc=example,dc=tld objectClass: top objectClass: posixGroup objectClass: sambaGroupMapping gidNumber: 5044 cn: Administrators description: Netbios Domain Members can fully administer the computer/sambaDomainName sambaSID: S-1-5-32-5044 sambaGroupType: 5 displayName: Administrators dn: cn=Backup Operators,ou=Groups,o=samba,dc=example,dc=tld objectClass: top objectClass: posixGroup objectClass: sambaGroupMapping gidNumber: 5051 cn: Backup Operators description: Netbios Domain Members can bypass file security to back up files sambaSID: S-1-5-32-5051 sambaGroupType: 5 displayName: Backup Operators dn: cn=Domain Admins,ou=Groups,o=samba,dc=example,dc=tld objectClass: top objectClass: posixGroup objectClass: sambaGroupMapping gidNumber: 5012 cn: Domain Admins memberUid: root description: Netbios Domain Administrators sambaSID: THISISMYSID-5012 sambaGroupType: 2 displayName: Domain Admins dn: cn=Domain Computers,ou=Groups,o=samba,dc=example,dc=tld objectClass: top objectClass: posixGroup objectClass: sambaGroupMapping gidNumber: 5015 cn: Domain Computers description: Netbios Domain Computers accounts sambaSID: THISISMYSID-5015 sambaGroupType: 2 displayName: Domain Computers dn: cn=Domain Guests,ou=Groups,o=samba,dc=example,dc=tld objectClass: top objectClass: posixGroup objectClass: sambaGroupMapping gidNumber: 5014 cn: Domain Guests description: Netbios Domain Guests Users sambaSID: THISISMYSID-5014 sambaGroupType: 2 displayName: Domain Guests dn: cn=Domain Users,ou=Groups,o=samba,dc=example,dc=tld objectClass: top objectClass: posixGroup objectClass: sambaGroupMapping gidNumber: 5013 cn: Domain Users description: Netbios Domain Users sambaSID: THISISMYSID-5013 sambaGroupType: 2 displayName: Domain Users dn: cn=Print Operators,ou=Groups,o=samba,dc=example,dc=tld objectClass: top objectClass: posixGroup objectClass: sambaGroupMapping gidNumber: 5050 cn: Print Operators description: Netbios Domain Print Operators sambaSID: S-1-5-32-5050 sambaGroupType: 5 displayName: Print Operators dn: cn=Replicators,ou=Groups,o=samba,dc=example,dc=tld objectClass: top objectClass: posixGroup objectClass: sambaGroupMapping gidNumber: 5052 cn: Replicators description: Netbios Domain Supports file replication in a sambaDomainName sambaSID: S-1-5-32-5052 sambaGroupType: 5 displayName: Replicators dn: ou=Idmap,o=samba,dc=example,dc=tld objectClass: top objectClass: organizationalUnit ou: Idmap dn: sambaDomainName=PHAMM,o=samba,dc=example,dc=tld gidNumber: 10000 uidNumber: 10000 objectClass: top objectClass: sambaDomain objectClass: sambaUnixIdPool sambaSID: THISISMYSID sambaDomainName: PHAMM phamm-0.6.5/index.php0000644000175300017530000000010612643155515012421 0ustar phamm **/ static function phamm_connect () { // Open LDAP connection to server $connect = @ldap_connect(LDAP_HOST_NAME,LDAP_PORT) or die ("LDAP connection Failed!"); ldap_set_option($connect,LDAP_OPT_PROTOCOL_VERSION,LDAP_PROTOCOL_VERSION); // Start TLS session if (LDAP_TLS == 1) { @ldap_start_tls($connect) or die ("Could not start TLS. Please check your LDAP server configuration."); } return $connect; } /** * Generic LDAP Single-level search * * @author Alessandro De Zorzi * * @todo add attrsonly, sizelimit, timelimit * * @param string $base_dn * @param string $filter * @param array $attributes * @param array $attributes * @param array $short Sort Attributes **/ static function phamm_list ($base_dn,$filter,$attributes=null,$sort=null) { global $connect; // Do a LDAP search if ($attributes) $search = ldap_list($connect,$base_dn,$filter,$attributes); else $search = ldap_list($connect,$base_dn,$filter); // Order the results if possible if (version_compare(phpversion(), "4.2.0", ">=")) ldap_sort($connect,$search,$sort); // Get entries $entries = ldap_get_entries($connect, $search); // Free the memory ldap_free_result($search); // Return the entry return $entries; } /** * Generic LDAP search * * @author Alessandro De Zorzi * * @todo add attrsonly, sizelimit, timelimit * * @param string $base_dn * @param string $filter * @param array $attributes * @return array $entries **/ static function phamm_search ($base_dn,$filter,$attributes=null,$sort=null) { global $connect; // Do a LDAP search if (isset($attributes)) $search = ldap_search($connect,$base_dn,$filter,$attributes); else $search = ldap_search($connect,$base_dn,$filter); // Order the results if possible if (version_compare(phpversion(), "4.2.0", ">=")) ldap_sort($connect, $search,$sort); // Get entries $entries = ldap_get_entries($connect, $search); // Free the memory ldap_free_result($search); // Return the entry return $entries; } /** * Create new LDAP entry * * @author Alessandro De Zorzi * * @param string $dn * @param array $entry The attributes info * @return bool $r **/ static function phamm_add ($dn,$entry) { global $connect; $r = ldap_add ($connect, $dn, $entry); return $r; } /** * Modify a LDAP entry * * @author Alessandro De Zorzi * * @param string $dn * @param array $entry The attributes info * @return bool $r **/ static function phamm_modify ($dn,$entry) { global $connect; $r = ldap_modify ($connect, $dn, $entry ); return $r; } /** * Get the values of a DN * * @author Alessandro De Zorzi * * @param string $dn * @param string $filter * @return array $results **/ static function phamm_self_values ($dn, $filter="(cn=*)") { global $connect; $search = ldap_search($connect,$dn,$filter); $results = ldap_get_entries($connect, $search); return $results; } /** * Add new attribute (multiple) * * @author Alessandro De Zorzi * * @param string $dn * @param array $entry The attributes info * @return bool $r **/ static function phamm_mod_add ($dn,$entry) { global $connect; $r = ldap_mod_add ($connect, $dn, $entry); return $r; } /** * Delete attribute (multiple) * * @author Alessandro De Zorzi * * @param string $dn * @param array $entry The attributes info * @return bool $r **/ static function phamm_mod_del ($dn,$entry) { global $connect; $r = ldap_mod_del ($connect, $dn, $entry); return $r; } /** * Delete LDAP entry recursive * * @author gabriel at hrz dot uni-marburg dot de * http://it2.php.net/manual/it/static function.ldap-delete.php * * @param $ds * @param string $dn The DN * @param bool $recursive * @return bool **/ static function phamm_delete($dn,$recursive=false) { global $connect; if($recursive == false) { return(ldap_delete($connect,$dn)); } else { //searching for sub entries $sr=ldap_list($connect,$dn,"ObjectClass=*",array("")); $info = ldap_get_entries($connect, $sr); for($i=0; $i<$info['count']; $i++) { //deleting recursively sub entries $result=myldap_delete($connect,$info[$i]['dn'],$recursive); if(!$result) { //return result code, if delete fails return($result); } } return(ldap_delete($connect,$dn)); } } /** * Simple LDAP error **/ static function phamm_error () { global $connect; return _("LDAP Error: ").ldap_error($connect).' ('._("Code ").ldap_errno($connect).')'; } // } phamm-0.6.5/lib/locale.php0000644000175300017530000000271612643155515013330 0ustar phamm * Copyright (C) 2004,2014 Alessandro De Zorzi and Mirko Grava * * This file is part of Phamm. * * 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 */ class PhammLocale { private $language; function __construct() { if (!isset($_SESSION["language"])) $this->language = DEFAULT_LANGUAGE; else $this->language = $_SESSION["language"]; } public function change_language($new_language) { global $supported_languages; if (array_key_exists($new_language, $supported_languages)) { $this->language = $new_language; $_SESSION["language"] = $new_language; return true; } else { return false; } } public function get_language() { return $this->language; } // } phamm-0.6.5/lib/log.php0000644000175300017530000000266212643155515012652 0ustar phammday = date('Y'.'-'.'m'.'-'.'d'); $this->hour = date ('H'.':'.'i'.':'.'s'); $this->ip = $_SERVER["REMOTE_ADDR"]; } /** * Write a log in to file * * TODO see: * Log the operations in to file * http://www.w3.org/Daemon/User/Config/Logging.html#common-logfile-format * * @package Phamm * @author Alessandro De Zorzi * * @param string $pn * @param string $user * @param string $operation * @param bool $result **/ public function phamm_log ($pn,$user,$operation,$result) { if (PHAMM_LOG == 1) { if (!$pn) $pn = 'phamm'; if ($result) $this->resultLabel = 'OK'; else $this->resultLabel = 'FAILED'; // Set the file in Append mode $this->logFile = fopen (LOG_FILE,'a'); // Prepare the log string $this->log_row = "$this->ip - $user [$this->day $this->hour] \"$pn : $operation\" $this->resultLabel\n"; // Write the log in to file fwrite ($this->logFile,$this->log_row); // Close the file fclose ($this->logFile); } return true; } // } phamm-0.6.5/lib/login.php0000644000175300017530000001125012643155515013172 0ustar phamm * Copyright (C) 2004,2014 Alessandro De Zorzi and Mirko Grava * * This file is part of Phamm. * * 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 */ class PhammLogin { /** * Try to generate DN from $login_username * * @author Alessandro De Zorzi * * @param string $login_username * @return string $dn **/ function login_dn_costructor($login_username) { // @todo $proposed will be real DN and level if (strpos($login_username, '=') && strpos($login_username, ',')) { $proposed["dn"] = $login_username; $proposed["login_username"] = $login_username; } elseif (strpos($login_username, '@')) { $login = explode ('@',$login_username); // Postmaster if ( $login[0] == PHAMM_DOMAIN_ADMIN_NAME ) { $proposed["dn"] = 'cn='.$login[0].',vd='.$login[1].','.LDAP_BASE; $proposed["level"] = 4; $proposed["domain"] = $login[1]; $proposed["login_username"] = $login_username; } // User else { $proposed["dn"] = 'mail='.$login_username.',vd='.$login[1].','.LDAP_BASE; $proposed["level"] = 2; $proposed["domain"] = $login[1]; $proposed["login_username"] = $login_username; } } // Manager elseif (in_array('cn='.$login_username.','.SUFFIX, array(BINDDN,BINDDN_EXTRA))) { $proposed["dn"] = 'cn='.$login_username.','.SUFFIX; $proposed["level"] = 10; $proposed["domain"] = ''; $proposed["login_username"] = $login_username; } // Login user without @DOMAIN elseif (defined('DEFAULT_DOMAIN')) { $proposed["dn"] = 'mail='.$login_username.'@'.DEFAULT_DOMAIN.',vd='.DEFAULT_DOMAIN.','.LDAP_BASE; $proposed["level"] = 2; $proposed["domain"] = DEFAULT_DOMAIN; $proposed["login_username"] = $login_username.'@'.DEFAULT_DOMAIN; } // Postmaster without postmaster@ else { $proposed["dn"] = 'cn=postmaster,vd='.$login_username.','.LDAP_BASE; $proposed["level"] = 4; $proposed["domain"] = $login_username; $proposed["login_username"] = 'postmaster@'.$login_username; } return $proposed; } /** * Try login * * @todo Clean values with special functions * * @param string $dn * @param string $login_password * @return mixed **/ function login_try($connect, $proposed, $login_password,$login_username) { $r = ldap_bind($connect, $proposed["dn"], $login_password); if ($r) { $_SESSION["login"]["dn"] = strtolower($proposed["dn"]); $_SESSION["phamm"]["domain"] = strtolower($proposed["domain"]); $_SESSION["login"]["username"] = strtolower($proposed["login_username"]); $_SESSION["login"]["level"] = $proposed["level"]; $_SESSION["login"]["password"] = $login_password; // @todo crypt it return true; } return false; } /** * Try bind * * @todo Clean values with special functions * * @param string $dn * @param string $password * @return bool $r **/ function bind_try($connect, $dn, $password) { //$r = @ldap_bind($connect, $proposed["dn"], $login_password); $r = ldap_bind($connect, $dn, $password); return $r; } /** * Check if user are logged * * @return mixed **/ function login_check() { if (isset($_SESSION["login"]["dn"])) return true; else return false; } /** * Destroy user session * * @return mixed **/ function logout() { session_destroy(); } // } phamm-0.6.5/lib/plugin.php0000644000175300017530000000614012643155515013362 0ustar phamm * Copyright (C) 2004,2014 Alessandro De Zorzi and Mirko Grava * * This file is part of Phamm. * * 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 */ class PhammPlugin { /** * Load plugins info from XML files into array * * @package Phamm * @author Alessandro De Zorzi * * @return array $p_values **/ public function plugins_load() { global $plugins; $pv = array(); foreach ($plugins as $plugin) { $file = '../plugins/'.$plugin.'.xml'; if (file_exists($file)) { $xml2array = $this->xml2array($file); $pv = array_merge($pv, $xml2array); } } return $pv; } /** * Return PHP array from XML file * * original code from * mmustafa at vsnl dot com http://php.net/xml_parser_create * * @param mixed $file * @return array $params **/ private function xml2array ($file) { $xml_parser = xml_parser_create(); if (!($fp = fopen($file, "r"))) { die("could not open XML input"); } $data = fread($fp, filesize($file)); fclose($fp); xml_parse_into_struct($xml_parser, $data, $vals, $index); xml_parser_free($xml_parser); $params = array(); $xml_elem = array(); $level = array(); foreach ($vals as $xml_elem) { if ($xml_elem['type'] == 'open') { if (array_key_exists('attributes',$xml_elem)) { $extra = array_values($xml_elem['attributes']); $level[$xml_elem['level']] = $extra[0]; } else { $level[$xml_elem['level']] = $xml_elem['tag']; } } if ($xml_elem['type'] == 'complete') { $start_level = 1; $php_stmt = '$params'; while($start_level < $xml_elem['level']) { $php_stmt .= '[$level['.$start_level.']]'; $start_level++; } $php_stmt .= '[$xml_elem[\'tag\']] = isset($xml_elem[\'value\']) ? $xml_elem[\'value\'] : "";'; eval($php_stmt); } } return $params; } // } phamm-0.6.5/locales/0000755000175300017530000000000012643155515012226 5ustar phammphamm-0.6.5/locales/da_DK/0000755000175300017530000000000012643155515013170 5ustar phammphamm-0.6.5/locales/da_DK/LC_MESSAGES/0000755000175300017530000000000012643155515014755 5ustar phammphamm-0.6.5/locales/da_DK/LC_MESSAGES/messages.mo0000644000175300017530000000333112643155515017121 0ustar phamm#4/L  (- >L S_f n {        $. 2U=      . 6 @J Ygw{       " !# AccountActiveAllAll domainsBye!Confirm PasswordCreation DateDeleteDestinationDomainError: FTP Quota MbFTP StatusGID numberGeneric Error: LoginLogout %sMailboxMax QuotaModify accountModify domainNONamePasswordQuotaSetSurnameTelephoneUIDUID NumberVer. %sWarning: YESclick hereProject-Id-Version: POT-Creation-Date: 2014-12-28 11:01+0100 PO-Revision-Date: 2009-09-09 16:34+0100 Last-Translator: Alice Kærast Language-Team: Language: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Poedit-Language: Danish Plural-Forms: nplurals=2; plural=(n!=1); KontoAktivAlleAlle domænerFarvel!Bekræft AdgangskodeOprettelsesdagSletDestinationDomæneFejl:FTP Kvote MbFTP StatusGID nummerGenerel Fejl:Log indLog ud %sPostkasseMaksimal KvoteRediger kontoRediger domæneNEJNavnAdgangskodeKvoteIndstilEfternavnTelefonUIDUID NummerVer. %sAdvarsel:JAklik herphamm-0.6.5/locales/de_DE/0000755000175300017530000000000012643155515013166 5ustar phammphamm-0.6.5/locales/de_DE/LC_MESSAGES/0000755000175300017530000000000012643155515014753 5ustar phammphamm-0.6.5/locales/de_DE/LC_MESSAGES/messages.mo0000644000175300017530000001367012643155515017126 0ustar phamm_  ,Jjq    1 7 C !T v           ) 8 C P V %a            0 6 ? _ s   &     0 M U 6j         ) 4 ~8  > 8.gZp),! #; @M^r) *) F S]b,i  '9H ` j)w$&!HNapuz#'*9J a'o3K:  %4 <HK$ FNKlSWC$2ZU%(P8J4T@/. +V:'"Y0AKH[!L,N\^5 _& 9F)3 =Q<B76 1-;R?#OGI*XM D>]E%s not added!...execute a commandAccount %s successfully addedAccount or Alias already existsActiveAdd catch-all addressAdd new accountAdd new domainAllAll domainsBye!Can edit AccountsCan edit Anti-VirusCan't contact LDAP serverCatch allCatch all activeChanges have not performedCode Common NameConfirm PasswordConnection to LDAP Server Failed!Creation DateDeleteDestinationDomainDomain %s successfully addedDomain propertyError: Execute commandFAXFTP Quota MbFTP StatusForward ActiveGID numberGeneric Error: Home DirectoryHome PhoneLDAP Error: LoginLogin NameLogin Username or Password not valid.Logout %sMail AutoreplyMailboxMaildropMax QuotaMax number of AliasMax number of MailMobileModify accountModify domainNONameName is not validOther TransportPagerPasswordPassword contains special charsPassword too short!Passwords don't match!Postfix TransportProxy HostQuotaSMTP AuthSPAM CheckSPAM Tags level are not set correctly!SetSpam Kill LevelSpam Tag LevelSpam Tag2 LevelSpecial Characters not Allowed in E-mail addressSurnameSurname is not validSyntax not valid or special chars found in domain nameTelephoneUIDUID NumberVacationVacation EndVacation ForwardVacation InfoVacation StartVer. %sVirtual HomeVirus CheckWarning: Web AccessYESYou will be automatically redirected to a new page within a few seconds.
If this does not happen, please follow the link:account %s not updated!click heredo not activate Forward and Vacation Forward in the same time!domain %s not added!please, insert a forward destination or disable Forward!Project-Id-Version: phamm 0.5.13 POT-Creation-Date: 2014-12-28 11:01+0100 PO-Revision-Date: 2008-09-22 15:50+0300 Last-Translator: Jan Dankert MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Plural-Forms: nplurals=2; plural=n != 1; %s nicht hinzugefügt...einen Befehl ausführenAccount %s wurde erfolgreich hinzugefügtDer Account oder der Alias existiert bereitsAktivNeue Catch-All-Adresse einrichtenNeuen Account einrichtenNeue Domain hinzufügenAlleAlle DomainsAuf Wiedersehen!Accounts bearbeitenBearbeite AntivirenprogrammKeine Verbindung zum LDAP-Server möglichCatch allCatch all aktivDie Änderungen wurden nicht durchgeführtCodeNameKennwort bestätigenKeine Verbindung zum LDAP-Server möglichAnlage-DatumEntfernenZielDomainDie Domain %s wurde erfolgreich hinzugefügtDomain-EigenschaftFehler: Befehl ausführenTelefaxFTP Speichergrenze (in MB)FTP-StatusWeiterleitung aktivGIDAllgemeiner Programmfehler: HeimatverzeichnisTelefon privatFehler bei LDAP-ZugriffAnmeldungBenutzernameBenutzername oder Kennwort nicht gültig.AbmeldenE-Mail automatische AntwortAnrufbeantworterMaildropMaximale Größe der Mailbox (Quota)Maximale Anzahl von AliasesMaximale Anzahl von E-Mail-NachrichtenMobilAccount bearbeitenDomain ändernNEINNameDer Name ist ungültigAnderer TransportPagerKennwortDas Kennwort enthält SonderzeichenDas Kennwort ist zu kurz!Die Kennwörter stimmen nicht überein!Postfix TransportProxy HostnameSpeicher (Quota)SMTP AuthentifizierungSPAM-PrüfungDie Spam Tags level sind nicht korrekt!SetSpam Ablehnungs-LevelSpam Markierungs-Level 1Spam Markierungslevel 2In E-Mail-Adressen sind keine Sonderzeichen erlaubtNachnameDer Nachname ist ungültigDie Syntax ist ungültig oder es befinden sich Sonderzeichen im DomainnamenTelefonUIDUID-NummerAbwesenheitAbwesenheit-EndeAbwesenheit-WeiterleitungAbwesenheits-InformationAbwesenheit-BeginnVer. %sVirtuelles HeimatverzeichnisVirus-PrüfungWarnungWeb-AdresseJASie werden in wenigen Sekunden automatisch auf die nächste Seite weiterleitet. Falls dies nicht geschieht, folgen Sie bitte diesem Link:Account %s wurde nicht aktualisiert!Hier klickenSie dürfen Weiterleitung und Abwesenheitsnachricht nicht kombinieren!Domain %s nicht hinzugefügt!Bitte ein Weiterleitungsziel einfügen oder die Weiterleitung deaktivieren!phamm-0.6.5/locales/es_ES/0000755000175300017530000000000012643155515013224 5ustar phammphamm-0.6.5/locales/es_ES/LC_MESSAGES/0000755000175300017530000000000012643155515015011 5ustar phammphamm-0.6.5/locales/es_ES/LC_MESSAGES/messages.mo0000644000175300017530000001236712643155515017166 0ustar phammPk 29O_n r~   ! >L S_f   % ( 7 ? I ] p w           && M 0Q   6     $ 1 = G R ~V  > 7 8L T   % /K#Rv ' %9Y bp+&"5 9FVh| ! /AHZ j t-  D G?R ]  %7Ni ~ r'C?SI ?8P. )I&G0H6E<+F4*'132$ L-=,(K@9/ 7AM: !5 ;DB#>NJ%"CO%s not added!...execute a commandAccountAccount %s successfully addedAccount or Alias already existsActiveAdd catch-all addressAdd new accountAdd new domainAllAll domainsBye!Can edit AccountsCan edit Anti-VirusCan't contact LDAP serverCatch allCatch all activeChanges have not performedCode Common NameConfirm PasswordConnection to LDAP Server Failed!Creation DateDeleteDestinationDomainDomain %s successfully addedDomain propertyError: Execute commandFAXFTP Quota MbForward ActiveGeneric Error: Home DirectoryHome PhoneLDAP Error: Login Username or Password not valid.Mail AutoreplyMailboxMax QuotaMax number of AliasMax number of MailMobileModify accountModify domainNameName is not validOther TransportPagerPasswordPassword contains special charsPassword too short!Passwords don't match!QuotaSPAM CheckSPAM Tags level are not set correctly!SetSpecial Characters not Allowed in E-mail addressSurnameSurname is not validSyntax not valid or special chars found in domain nameTelephoneVacationVacation EndVacation ForwardVacation InfoVacation StartVirtual HomeVirus CheckWarning: Web AccessYESYou will be automatically redirected to a new page within a few seconds.
If this does not happen, please follow the link:account %s not updated!click heredo not activate Forward and Vacation Forward in the same time!domain %s not added!please, insert a forward destination or disable Forward!Project-Id-Version: phamm 0.5.13 POT-Creation-Date: 2014-12-28 11:01+0100 PO-Revision-Date: 2008-09-22 17:57+0000 Last-Translator: jonhattan Language-Team: SPANISH Language: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: UTF-8Plural-Forms: nplurals=2; plural=n != 1; ¡%s no añadido!...ejecuta un comandoCuentaCuenta %s añadida satisfactoriamenteCuenta o Alias ya existenteActivoAñadir una dirección cógelo-todoAñadir nueva cuentaAñadir nuevo dominioTodoTodos los dominios¡Adiós!Puede editar CuentasPuede editar Anti-VirusNo puedo contactar con el servidor LDAPCógelo-todoCógelo-todo activoLos cambios no se han efectuadoCódigo Nombre ComúnConfirma Contraseña¡Ha Fallado la Conexión al Servidor LDAP!Fecha de CreaciónBorrarDestinoDominioDominio %s añadido satisfactoriamentePropiedades del dominioError: Ejecuta el comandoFAXFTP Cuota MbReenvío ActivoError Genérico: Directorio PersonalTeléfono de CasaError LDAP: Usuario o Contraseña no válido.Autorespuesta de CorreoBuzónMax CuotaNúmero máximo de AliasNúmero máximo de MailMóvilModificar cuentaModificar dominioNombreNombre no válidoOtro TransportePaginadorContraseñaLa contraseña contiene caracteres especiales¡Contraseña demasiado corta!¡Las contraseñas no coinciden!CuotaChequear SPAM¡el nivel de las etiquetas SPAM no se ha establecido correctamente!EstablecerNo se permiten caracteres especiales en la dirección de correoApellidosApellidos no válidosLa sintaxis no es válida, o se han encontrado caracteres especiales en el nombre del dominioTeléfonoVacacionesFin de VacacionesReenvío de VacacionesInformación de VacacionesInicio de VacacionesHome VirtualChequeo de VirusAlerta: Acceso WebSÍSerás redirigido a una nueva página en los próximos segundos.
Si esto no ocurre por favor sigue el enlace:¡cuenta %s no actualizada!haz click aquí¡no actives Reenvío y Reenvío de Vacaciones al mismo tiempo!¡dominio %s no añadido!¡por favor, inserta un destino para el reenvío o desactiva el Reenvío!phamm-0.6.5/locales/fr_FR/0000755000175300017530000000000012643155515013224 5ustar phammphamm-0.6.5/locales/fr_FR/LC_MESSAGES/0000755000175300017530000000000012643155515015011 5ustar phammphamm-0.6.5/locales/fr_FR/LC_MESSAGES/messages.mo0000644000175300017530000001366012643155515017163 0ustar phammb,<H IWlt 0/ 4 F Z t ~    !    ! > N V f j w     %  # + 4 > R e l {            * 0 : &E l p   0   6 $ . 2 = F S d r   ~ : R>]8.(@G"f9 #7%Nt}, ) ) 3?Ge|       * GQai r / :%Sy & F)pxH    + =H\ l w  ?(h0$V OPKNY:^!E`QT)\15R- ]%C 6D<#87'A&X.9+LS(UGMZI _4*;"2H[B 0@bJW>=Fa ?,/3%s not added!...execute a commandAccountAccount %s successfully addedAccount or Alias already existsActiveAdd catch-all addressAdd new accountAdd new domainAllAll domainsAn Unexpected Error Occurred during %s Addition!Bye!Can edit AccountsCan edit Anti-VirusCan't contact LDAP serverCatch allCatch all activeCatch-allChanges have not performedCode Common NameConfirm PasswordConnection to LDAP Server Failed!Creation DateDeleteDestinationDomainDomain %s successfully addedDomain propertyError: Execute commandFAXFTP Quota MbFTP StatusForward ActiveGID numberGeneric Error: Home DirectoryHome PhoneLDAP Error: LoginLogin NameLogin Username or Password not valid.Logout %sMail AutoreplyMailboxMaildropMax QuotaMax number of AliasMax number of MailMobileModify accountModify domainNONameName is not validOther TransportPagerPasswordPassword contains special charsPassword too short!Passwords don't match!Postfix TransportProxy HostQuotaSMTP AuthSPAM CheckSPAM Tags level are not set correctly!SetSpam Kill LevelSpam Tag LevelSpam Tag2 LevelSpecial Characters not Allowed in E-mail addressSurnameSurname is not validSyntax not valid or special chars found in domain nameTelephoneUIDUID NumberVacationVacation EndVacation ForwardVacation InfoVacation StartVer. %sVirtual HomeVirus CheckWarning: Web AccessYESYou will be automatically redirected to a new page within a few seconds.
If this does not happen, please follow the link:account %s not updated!click heredo not activate Forward and Vacation Forward in the same time!domain %s not added!please, insert a forward destination or disable Forward!Project-Id-Version: phamm 0.5.14 Report-Msgid-Bugs-To: POT-Creation-Date: 2014-12-28 11:01+0100 PO-Revision-Date: 2009-07-11 19:30+0100 Last-Translator: Aldo Reset Language-Team: Language: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit %s non ajouté...execute une commandeCompteCompte %s ajouté avec succèsLe compte ou l'alias existe déjàActifAjouter un CatchAllCréer un CompteCréer un domaineTousTous les domainesUne erreur inattendue est survenue lors de l'ajout de %s!Au Revoir !Peut Editer ComptesPeut Editer Anti-VirusImpossible de joindre le serveur LdapCatchAllCatchAll ActifCatchAllLes modifications n'ont pu être effectuéesCode Nom CommunConfirmer le mot de PasseLa Connection au serveur Ldap a échoué!Date de CréationSupprimerDestinationDomaineDomaine %s crée avec succèsPropriété du DomaineErreur:Execute commandeFAXQuota FTP en MoFTP StatusForward ActifNuméro GIDErreur Général: Répertoire RacineTéléphoneErreur LDAPLoginNom LoginNom utilisateur ou mot de passe non valideLogout %sMail RépondeurMailboxMaildropQuota MaximumNombre Max d'AliasNombre Max de MailPortableModifier compteModifier domaineNONNomNom pas valideAutre TransportPagerMot de PasseMot de passe contient des caractères spéciauxMot de passe trop court!Les Mot de passe ne correspondent pasTransport PostfixProxyQuotaSMTP AuthVérification SPAMLes Tags du SPAM ne sont pas corrects!InitialiserNiveau suprimer SPAMNiveau du TAG de SPAMNiveau de TAG2 du SPAMLes Caractères spéciaux ne sont pas autorisés dans une adresse mailPrénomPrénom non valideSyntax invalide ou caractères spéciaux trouvés dans le nom du domaineTéléphoneUIDNombre UIDRépondeurFin RépondeurRenvoi RépondeurInfo RépondeurDébut RépondeurVersion %sRépertoire virtuelVérifier VirusAttention:Accès WebOUIVous allez être rédirigé automatiquement vers une nouvelle page dans quelques secondes.
si cela n'arrivait pas, suivez ce lien:compte %s nonCliquez IciN'ctivez pas le Dorward en le Renvoi Répondeur en même temps!domain %s non ajouté!Inserer une destination ou desactiver le renvoi!phamm-0.6.5/locales/hu_HU/0000755000175300017530000000000012643155515013236 5ustar phammphamm-0.6.5/locales/hu_HU/LC_MESSAGES/0000755000175300017530000000000012643155515015023 5ustar phammphamm-0.6.5/locales/hu_HU/LC_MESSAGES/messages.mo0000644000175300017530000001415312643155515017173 0ustar phamma$,8 9G\d   3 = N X s y  !       % ) 6 A P [ k z  %      $ + : H K P b r x      & + / ? N 0^   6     # 1 @ H U a k v ~z  >[8p "-3,:g '.,@[)u? &+2Qel     +$P_ z   /M\.d   !& HRn: @GO S ]hy  \z YM#U NOJMX9] D_PS([04Q, \$B 5C;"76&@%W-8*KR'TFLYH ^3): !1GZA/?aIV=<E`>+.2%s not added!...execute a commandAccountAccount %s successfully addedAccount or Alias already existsActiveAdd catch-all addressAdd new accountAdd new domainAllAll domainsBye!Can edit AccountsCan edit Anti-VirusCan't contact LDAP serverCatch allCatch all activeCatch-allChanges have not performedCode Common NameConfirm PasswordConnection to LDAP Server Failed!Creation DateDeleteDestinationDomainDomain %s successfully addedDomain propertyError: Execute commandFAXFTP Quota MbFTP StatusForward ActiveGID numberGeneric Error: Home DirectoryHome PhoneLDAP Error: LoginLogin NameLogin Username or Password not valid.Logout %sMail AutoreplyMailboxMaildropMax QuotaMax number of AliasMax number of MailMobileModify accountModify domainNONameName is not validOther TransportPagerPasswordPassword contains special charsPassword too short!Passwords don't match!Postfix TransportProxy HostQuotaSMTP AuthSPAM CheckSPAM Tags level are not set correctly!SetSpam Kill LevelSpam Tag LevelSpam Tag2 LevelSpecial Characters not Allowed in E-mail addressSurnameSurname is not validSyntax not valid or special chars found in domain nameTelephoneUIDUID NumberVacationVacation EndVacation ForwardVacation InfoVacation StartVer. %sVirtual HomeVirus CheckWarning: Web AccessYESYou will be automatically redirected to a new page within a few seconds.
If this does not happen, please follow the link:account %s not updated!click heredo not activate Forward and Vacation Forward in the same time!domain %s not added!please, insert a forward destination or disable Forward!Project-Id-Version: phamm 0.5.14 POT-Creation-Date: 2014-12-28 11:01+0100 PO-Revision-Date: 2009-02-01 19:03+0100 Last-Translator: Zsolt Jonas MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit %s nincs hozzáadva!...parancs futtatásaPostafiók%s postafiók sikeresen hozzáadvaPostafiók vagy álnév (alias) már létezikAktívGyűjtő (catch-all) postafiók hozzáadásaÚj postafiók hozzáadásaÚj domain hozzáadásaMindÖsszes domainViszlát!Szerkeszthető postafiókokMódosítható az Anti-Vírus állapotaNem lehet kapcsolódni az LDAP kiszolgálóhozGyűjtő postafiókGyűjtó postafiók aktívGyűjtő postafiók címeA változások végrehajtása meghiusúltKód Megjelenített névJelszó megerősítéseHiba az LDAP kiszolgálóhoz történő kapcsolódása közben!LétrehozvaTörlésCélDomain%s domain sikeresen hozzáadvaDomain beállításHiba: Parancs futtatásaFAXFTP Kvóta (MB)FTP állapotTovábbítás aktívGID számÁltalános hiba: Home könyvtárOtthoni telefonszámLDAP hiba: BelépésBelépési azonosítóHibás belépési azonosító vagy jelszó.Kilépés (%s)Automatikus válaszüzenetPostaládaLevél kézbesítőMax kvótaMax álnevek (alias) számaMax postafiókok számaMobilPostafiók módosításaDomain módosításaNEMKeresztnévHibás keresztnévMás továbbító (transport)SzemélyhívóJelszóA jelszó speciális karaktereket is tartalmazA jelszó túl rövid!A beírt jelszavak nem egyeznek!Postfix továbbító (transport)Proxy kiszolgálóKvótaSMTP azonosításSPAM szűrésSPAM jelölési szint nem helyes!BeállítSpam eldobási szint (Kill)Spam jelölési szint (Tag)Spam megjelölési szint (Tag2)Speciális karakterek nem szerepelhetnek az e-mail címbenVezetéknévHibás vezetéknévHibás vagy nem megengedett karaktereket tartalmazó domain névTelefonUIDUID számTávollétTávollét végeTávollét alatti továbbításTávolléti üzenetTávollét kezdeteVáltozat: %sPostafiókok könyvtáraVírus ellenőrzésFigyelem: Web hozzáférésIGENPár másodperc múlva átirányítunk egy új oldalra
Ha ez nem történik meg, akkor %s postafiók nincs frissítve!kattints idene engedélyezd egyszerre a Továbbítás és a Távollét Alatti Továbbítás funkciót%s domain nincs hozzáadva!kérlek, állíts be továbbítási címet vagy kapcsold ki a Továbbítást!phamm-0.6.5/locales/it_IT/0000755000175300017530000000000012643155515013236 5ustar phammphamm-0.6.5/locales/it_IT/LC_MESSAGES/0000755000175300017530000000000012643155515015023 5ustar phammphamm-0.6.5/locales/it_IT/LC_MESSAGES/messages.mo0000644000175300017530000001600412643155515017170 0ustar phamml|0 1 ? T \ @z L  ( / E U d h 0t        * 0 < !M o }   J   & . > B O Z i t   %     $ 8 K R a o r w          &+RV^n}06 AE^b  , =KZ b o { ~ +>6u 8! ?,Kl*0=?}%  &+#=as {!J*3B F S] lw    7L bm~'$ 6A GQ3a;H*s4|/R4 8C LZk~   i9 T<_ C7Xj'bHZ8 /?;ieh)+A(>P!\aY]SO JR.03Mg#*4W,lLT ^_5N6FD1 K[@E%c"-:92C&BVfdU=$`GQk<I%s not added!...execute a commandAccountAccount %s successfully addedAccount %d/Accounts %d/Account %dAccounts %dAccount or Alias already existsActiveAdd catch-all addressAdd new accountAdd new domainAllAll domainsAn Unexpected Error Occurred during %s Addition!Bye!Can edit AccountsCan edit Anti-VirusCan't contact LDAP serverCatch allCatch all activeCatch-allChanges have not performedCode Common NameConfirm PasswordConnection to LDAP Server Failed!Creation DateDeleteDestinationDomainDomain %s successfully addedDomain %dDomains %dDomain propertyEnter domain or e-mailError: Execute commandFAXFTP Quota MbFTP StatusForward ActiveGID numberGeneric Error: Home DirectoryHome PhoneLDAP Error: LoginLogin NameLogin Username or Password not valid.Logout %sMail AutoreplyMailboxMaildropMax QuotaMax Smtp AuthMax number of AliasMax number of MailMobileModify accountModify domainNONameName is not validOther TransportPagerPasswordPassword contains special charsPassword too short!Passwords don't match!Postfix TransportProxy HostQuotaSMTP AuthSPAM CheckSPAM Tags level are not set correctly!SetSign inSpam Kill LevelSpam Tag LevelSpam Tag2 LevelSpecial Characters not Allowed in E-mail addressSurnameSurname is not validSyntax not valid or special chars found in domain nameTelephoneThe maximum number of accounts (%s) has been reached or exceeded!The maximum number of attribute %s (%s) has been reached or exceeded!The maximum number of attribute %s (%s) has been reached or exceeded. Attribute has been disabled!UIDUID NumberVacationVacation EndVacation ForwardVacation InfoVacation StartVer. %sVirtual HomeVirus CheckWarning: Web AccessYESYou will be automatically redirected to a new page within a few seconds.
If this does not happen, please follow the link:account %s not updated!click heredo not activate Forward and Vacation Forward in the same time!domain %s not added!modifying %splease, insert a forward destination or disable Forward!Project-Id-Version: phamm 0.6.4 POT-Creation-Date: 2014-12-28 11:13+0100 PO-Revision-Date: 2008-09-07 18:38+0300 Last-Translator: Alessandro De Zorzi MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Plural-Forms: nplurals=2; plural=n != 1; %n non aggiunto!...esegui comandoAccountAccount %s aggiunto correttamenteAccount %d/Account %d/Account %dAccount %dAccount o alias esistenteAttivoAggiungi indirizzo catch-allAggiungi un nuovo accountAggiungi un nuovo dominioTuttiTutti i dominiSi è verificato un errore inatteso durante l'aggiunta di %s!Ciao!Può modificare gli accountPuò modificare Anti-VirusImpossibile contattare il server LDAPCatch allCatch all attivoCatch allModifiche non effettuateCodice NomeConferma PasswordConnessione al server LDAP fallita!Data di creazioneEliminaDestinazioneDominioDominio %s aggiunto correttamenteDominio %dDomini %dProprietà dominioInserire dominio o e-mailErrore: Esegui comandoFAXFTP quota MbStato FTPForward attivoNumero GIDErrore generico: Home DirectoryTelefono (casa)Errore LDAP: AccediNome utenteNome utente o password errata.Esci %sMail AutoreplyMailboxDestinazioneMax QuotaNumero massimo Smtp AuthNumero massimo aliasNumero massimo e-mailTelefoninoModifica accountModifica dominioNONomeCognome non validoOther TransportPagerPasswordLa Password contiene caratteri specialiPassword troppo corta!Le Password non coincidono!Postfix TransportProxy HostQuotaSMTP AuthProtezione SPAMI livelli di SPAM non sono impostati correttamente!ImpostaAccediSpam Kill LevelSpam Tag LevelSpam Tag2 LevelI caratteri speciali non sono ammessi nell'indirizzo e-mailCognomeCognome non validoSintassi non valida oppure trovati caratteri speciali nel nome a dominioTelefonoMassimo numero di account (%s) raggiunto o superato!Massimo numero di %s (%s) raggiunto o superato!Massimo numero di %s (%s) raggiunto o superato. L'attributo è stato disabilitato!UIDNumero UIDVacationFine VacationVacation ForwardMessaggio VacationInizio VacationVer. %sVirtual HomeProtezione VirusAttenzione: Web AccessSISarai automaticamente indirizzato a una nuova pagina in alcuni secondi.
Se non accade, segui il link:account %s non aggiornato!clicca quinon attiavare Forward e Vacation Forward contemporaneamente!domain %s non aggiunto!modifica %sinserire una destinazione per il forward o disabilitare il Forward!phamm-0.6.5/locales/pl_PL/0000755000175300017530000000000012643155515013234 5ustar phammphamm-0.6.5/locales/pl_PL/LC_MESSAGES/0000755000175300017530000000000012643155515015021 5ustar phammphamm-0.6.5/locales/pl_PL/LC_MESSAGES/messages.mo0000644000175300017530000001361312643155515017171 0ustar phamma$,8 9G\d   3 = N X s y  !       % ) 6 A P [ k z  %      $ + : H K P b r x      & + / ? N 0^   6     # 1 @ H U a k v ~z  >[8p:# 1OWm~+  .8UYj$| %   -8 OYix 1   ):Umv& 8CIZ%l2>!`h lv~  " O1:P#U NOJMX9] D_PS([04Q, \$B 5C;"76&@%W-8*KR'TFLYH ^3): !1GZA/?aIV=<E`>+.2%s not added!...execute a commandAccountAccount %s successfully addedAccount or Alias already existsActiveAdd catch-all addressAdd new accountAdd new domainAllAll domainsBye!Can edit AccountsCan edit Anti-VirusCan't contact LDAP serverCatch allCatch all activeCatch-allChanges have not performedCode Common NameConfirm PasswordConnection to LDAP Server Failed!Creation DateDeleteDestinationDomainDomain %s successfully addedDomain propertyError: Execute commandFAXFTP Quota MbFTP StatusForward ActiveGID numberGeneric Error: Home DirectoryHome PhoneLDAP Error: LoginLogin NameLogin Username or Password not valid.Logout %sMail AutoreplyMailboxMaildropMax QuotaMax number of AliasMax number of MailMobileModify accountModify domainNONameName is not validOther TransportPagerPasswordPassword contains special charsPassword too short!Passwords don't match!Postfix TransportProxy HostQuotaSMTP AuthSPAM CheckSPAM Tags level are not set correctly!SetSpam Kill LevelSpam Tag LevelSpam Tag2 LevelSpecial Characters not Allowed in E-mail addressSurnameSurname is not validSyntax not valid or special chars found in domain nameTelephoneUIDUID NumberVacationVacation EndVacation ForwardVacation InfoVacation StartVer. %sVirtual HomeVirus CheckWarning: Web AccessYESYou will be automatically redirected to a new page within a few seconds.
If this does not happen, please follow the link:account %s not updated!click heredo not activate Forward and Vacation Forward in the same time!domain %s not added!please, insert a forward destination or disable Forward!Project-Id-Version: phamm 0.5.13 POT-Creation-Date: 2014-12-28 11:01+0100 PO-Revision-Date: 2008-12-12 11:46+0100 Last-Translator: Sławomir Paszkiewicz Language-Team: POLISH Language: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: utf-8 %s nie dodano!...wykonaj komendęKontoKonto %s zostało pomyślnie dodaneKonto lub Alias już istniejeAktywneDodaj adres catch-allDodaj nowe kontoDodaj nową domenęWszystkoWszystkie domenyŻegnaj!Może edytować KontaMoże edytować AntywirusaNie można połączyć się z serwerem LDAPCatch allCatch all aktywneCatch-allZmiany nie zostały wykonaneKodNazwa zwyczajowaPotwierdź hasłoŁączenie do serwera LDAP nieudane!Data utworzeniaUsunięteCelDomenaDomenta %s została pomyślnie dodanaWłaściwości domenyBłąd: Wykonaj komendęFAXFTP Quota MbStatus FTPPrzekierowanie aktywneNumer GIDTypowy Błąd: Katalog DomowyTelefon DomowyBłąd LDAP: ZalogujNazwa użytkownikaNazwa użytkownika lub Hasło jest nieprawidłoweWyloguj %sAutomatyczna odpowiedź na mailaSkrzynka pocztowaMaildropQuota maksymalnaMaksymalna liczba AliasówMaksymalna liczba MailiKomórkaModyfikuj kontoModyfikuj domenęNIEImięNazwa nie jest poprawnaInny TransportPagerHasłoHasło zawiera znaki specjalneHasło jest za krótkie!Hasło się nie zgadza!Transport PostfixHost ProxyQuotaAutoryzacja SMTPSprawdzanie SPAMuPoziom tagów SPAM nie jest poprawny!UstawPoziom Spam KillPoziom Spam TagPoziom Spam Tag2Znaki specjalne nie są dozwolone w adresie E-mailNazwiskoNazwisko nie jest poprawneSkładnia nie jest poprawna lub domena zawiera znaki specjalneTelefonUIDNumer UIDWakacjeKoniec WakacjiPrzekierowanie WakacjiInformacja WakacyjnaPoczątek WakacjiWersja %sVirtualny Katalog DomowySprawdzanie WirusówOstrzeżenie: Dostęp WWWTAKZostaniesz automatycznie przekierowany na nową strone w przeciągu kilku sekund.
Jeśli tak się nie stanie, kliknij proszę na poniższy link:konto %s nie uaktualnione!kliknij tutajnie włączaj Przekierowania ani Przekierowania wakacyjnego w tym samym czasie!domena %s nie została dodana!proszę, podaj adres docelowy lub wyłącz Przekierowanie!phamm-0.6.5/locales/pt_BR/0000755000175300017530000000000012643155515013234 5ustar phammphamm-0.6.5/locales/pt_BR/LC_MESSAGES/0000755000175300017530000000000012643155515015021 5ustar phammphamm-0.6.5/locales/pt_BR/LC_MESSAGES/messages.mo0000644000175300017530000001407112643155515017170 0ustar phamm`( )7LTr 0  & : T ^ o y   !     . 6 F J W b q |   %    ! 4 ; J X [ ` r        & ; ? O ^ 0n   6     " 3 A P X e q {  ~   !>,k8<Tg m 6<O.f  "2DKS"\    $/6Gd v "(,.[n @ 2O@n :  $8Jd~     \ zE K$T MNIW8\!C^OR)ZL3P- [%A 4B:#65'?&V.7+JQ(SEKXG ]2*9"0FY@ >`HU<;D_ =,/1%s not added!...execute a commandAccountAccount %s successfully addedAccount or Alias already existsActiveAdd catch-all addressAdd new accountAdd new domainAllAll domainsAn Unexpected Error Occurred during %s Addition!Bye!Can edit AccountsCan edit Anti-VirusCan't contact LDAP serverCatch allCatch all activeCatch-allChanges have not performedCode Common NameConfirm PasswordConnection to LDAP Server Failed!Creation DateDeleteDestinationDomainDomain %s successfully addedDomain propertyError: Execute commandFAXFTP Quota MbFTP StatusForward ActiveGID numberGeneric Error: Home DirectoryHome PhoneLDAP Error: LoginLogin NameLogin Username or Password not valid.Logout %sMail AutoreplyMax QuotaMax number of AliasMax number of MailMobileModify accountModify domainNONameName is not validOther TransportPagerPasswordPassword contains special charsPassword too short!Passwords don't match!Postfix TransportProxy HostQuotaSMTP AuthSPAM CheckSPAM Tags level are not set correctly!SetSpam Kill LevelSpam Tag LevelSpam Tag2 LevelSpecial Characters not Allowed in E-mail addressSurnameSurname is not validSyntax not valid or special chars found in domain nameTelephoneUIDUID NumberVacationVacation EndVacation ForwardVacation InfoVacation StartVer. %sVirtual HomeVirus CheckWarning: Web AccessYESYou will be automatically redirected to a new page within a few seconds.
If this does not happen, please follow the link:account %s not updated!click heredo not activate Forward and Vacation Forward in the same time!domain %s not added!please, insert a forward destination or disable Forward!Project-Id-Version: Phamm 0.5.18 POT-Creation-Date: 2014-12-28 11:01+0100 PO-Revision-Date: 2011-07-29 13:46-0300 Last-Translator: Rafael Domingues Language-Team: Rafael Domingues Language: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Poedit-Language: Portuguese X-Poedit-Country: BRAZIL %s não foi adicionado!execute um comandoContaConta %s adicionada com sucesso!Conta ou apelido já existe.AtivoAdicionar endereço recebe-tudoAdicionar nova contaAdicionar novo domínioTudoTodos os DomínosErro inesperado ao adicionar %s!Até!Pode editar contasPode editar antivírusNão foi possível comunicar com servidor LDAPConta Recebe-tudoConta recebe-tudo ativadaRecebe-tudoMudanças não foram feitasCódigoNome CompletoConfirmar SenhaConexão com servidor LDAP falhou!Data de CriaçãoApagarDestinoDomínioDomínio %s adicionado com sucessoPropriedade do DomínioErro:Executar ComandoFAXCota FTP (MB)Estado FTPRe-encaminhar mensagensNúmero GIDErro Genérico:Diretório HomeTelefone ResidencialErro LDAP:EntrarNome de UsuárioUsuário ou senha incorretosDesconectar de %sAuto-respostaCota máximaLimite máximo de apelidosLimite máximo de mensagensCelularModificar ContaModificar DomínioNãoNomeNome não é válidoOutro TransportPagerSenhaSenha não pode conter caracteres especiais.Senha muito curta!Senhas são diferentes!Postfix TransportServidor ProxyCotaAutenticação SMTPAnti-SPAMNíveis de marcação de SPAM não foram definidos corretamente!DefinirNível de eliminação de SPAMNível de marcação de SPAMNível 2 de marcação de SPAMCaracteres especiais não são permitidos no endereço de e-mailSobrenomeSobrenome é inválidoSintaxe inválida ou existem caracteres especiais no nome TelefoneUIDNúmero UIDMensagem de FériasFinal das FériasEncaminhamento de FériasInformações das FériasInício das FériasVersão %sHome VirtualAntivírusAtenção:Acesso WEBSimVocê será redirecionado automaticamente para uma nova página em alguns segundos.
. Se isto não acontecer, por favor clique no link: Conta %s não foi atualizada!clique aquiNão ative Encaminhamento e Encaminhamento de Férias ao mesmo tempo!Domínio %s não foi adicionado!Por favor, insira um destino para encaminhamento ou desmarque "Encaminhar"!phamm-0.6.5/locales/ru/0000755000175300017530000000000012643155515012654 5ustar phammphamm-0.6.5/locales/ru/LC_MESSAGES/0000755000175300017530000000000012643155515014441 5ustar phammphamm-0.6.5/locales/ru/LC_MESSAGES/messages.mo0000644000175300017530000001751012643155515016611 0ustar phammd<\    . > M Q ] b t      ! ' 5 < H O l          %+ Q [ j r {            ) = T f q w &     0   64 k u y      ~ >81$!&=d"s;D6&*]& 64 ?@-& 'DC / >!Mox#1 E%P8v$)#!;E/&F U4b-%  '1GP 1/4L:i /3'BCj9?E( n6y)(1~I$Z<Z$2C0GbH=_' LT6MJaF58X(E]A?![>9@B)4DO:\ ,/W-"7d SI&;Q`Y3U%P.1R KVcN#+^* %s modified%s not added!...execute a commandAccountAccount %s successfully addedAccount (%d)Accounts (%d)Account or Alias already existsActiveAdd catch-all addressAdd new accountAdd new domainAllAll domainsBye!Can edit AccountsCan edit Anti-VirusCan't contact LDAP serverCatch allCatch all activeCatch-allChanges have not performedCode Common NameConfirm PasswordConnection to LDAP Server Failed!Creation DateDeleteDestinationDomainDomain %s successfully addedDomain (%d)Domains (%d)Domain propertyError: Execute commandFAXFTP Quota MbFTP StatusForward ActiveGID numberGeneric Error: Home DirectoryHome PhoneLDAP Error: LoginLogin NameLogin Username or Password not valid.Logout %sMail AutoreplyMailboxMaildropMax QuotaMax number of AliasMax number of MailMobileModify accountModify domainNONameName is not validOther TransportPagerPasswordPassword contains special charsPassword too short!Passwords don't match!Postfix TransportProxy HostQuotaSMTP AuthSPAM CheckSPAM Tags level are not set correctly!SetSpam Kill LevelSpam Tag LevelSpam Tag2 LevelSpecial Characters not Allowed in E-mail addressSurnameSurname is not validSyntax not valid or special chars found in domain nameTelephoneUIDUID NumberVacationVacation EndVacation ForwardVacation InfoVacation StartVer. %sVirtual HomeVirus CheckWarning: Web AccessYESYou will be automatically redirected to a new page within a few seconds.
If this does not happen, please follow the link:account %s not updated!click heredo not activate Forward and Vacation Forward in the same time!domain %s not added!please, insert a forward destination or disable Forward!Project-Id-Version: phamm NEW POT-Creation-Date: 2008-10-15 09:56+0300 PO-Revision-Date: 2008-10-15 22:21+0400 Last-Translator: Yuri Kozlov Language-Team: Russian MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Generator: KBabel 1.11.4 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); Значение %s изменено%s не добавлено!...выполнение командыАккаунтАккаунт %s добавлен%d аккаунт%d аккаунта%d аккаунтовАккаунт или псевдоним уже существуютАктивенДобавить адрес для всей почтыДобавить новый аккаунтДобавить новый доменВсеВсе доменыПока!Может редактировать аккаунтыМожет управлять антивирусомНе удалось связаться с сервером LDAPПринимать всёПриём всей почты включёнВся почтаИзменения не внесеныКод Общее имяПодтверждение пароляНе удалось подключиться к серверу LDAP!Дата созданияУдалитьНазначениеДоменДомен %s добавлен%d домен%d домена%d доменовСвойства доменаОшибка: Выполнить командуФАКСFTP-квота (Mб)FTP-состояниеПересылка включенаGID-номерОбщая ошибка: Домашний каталогДомашний телефонОшибка LDAP: ЛогинРегистрационное имяНеправильный логин или пароль.Завершение работы %sПочтовый автоответчикПочтовый ящикMaildropМаксимальная квотаМаксимальное кол-во псевдонимовМаксимальное кол-во почтыМобильныйИзменить аккаунтИзменить доменНЕТИмяНеверное имяДругой транспортПейджерПарольПароль содержит спецсимволыПароль слишком короткий!Пароли не совпадают!Транспорт PostfixПрокси-хостКвотаSMTP AuthПроверка на спамНеправильно задан уровень меток спама!ЗаданУровень для удаления спамаУровень для пометки спамаУровень для 2-й пометки спамаВ почтовых адресах спецсимволы запрещеныФамилияНеверная фамилияНеверный синтаксис или в доменном имени есть спецсимволыТелефонUIDUID-номерВременное отсутствиеКонец периода временного отсутствияПересылать во время отсутствияИнформация о временном отсутствииНачало периода временного отсутствияВер. %sВиртуальный домашний каталогАнтивирусная проверкаПредупреждение: Доступ через вебДАЧерез несколько секунд вы будете автоматически перенаправлены на новую страницу.
Если это не происходит, пройдите по ссылке:аккаунт %s не обновлён!нажмите сюдане включайте Пересылку и Пересылку во время отсутствия одновременнодомен %s не добавлен!укажите адрес пересылки или выключите Пересылку!phamm-0.6.5/locales/ru_RU/0000755000175300017530000000000012643155515013262 5ustar phammphamm-0.6.5/locales/ru_RU/LC_MESSAGES/0000755000175300017530000000000012643155515015047 5ustar phammphamm-0.6.5/locales/ru_RU/LC_MESSAGES/messages.mo0000644000175300017530000001751012643155515017217 0ustar phammd<\    . > M Q ] b t      ! ' 5 < H O l          %+ Q [ j r {            ) = T f q w &     0   64 k u y      ~ >81$!&=d"s;D6&*]& 64 ?@-& 'DC / >!Mox#1 E%P8v$)#!;E/&F U4b-%  '1GP 1/4L:i /3'BCj9?E( n6y)(1~I$Z<Z$2C0GbH=_' LT6MJaF58X(E]A?![>9@B)4DO:\ ,/W-"7d SI&;Q`Y3U%P.1R KVcN#+^* %s modified%s not added!...execute a commandAccountAccount %s successfully addedAccount (%d)Accounts (%d)Account or Alias already existsActiveAdd catch-all addressAdd new accountAdd new domainAllAll domainsBye!Can edit AccountsCan edit Anti-VirusCan't contact LDAP serverCatch allCatch all activeCatch-allChanges have not performedCode Common NameConfirm PasswordConnection to LDAP Server Failed!Creation DateDeleteDestinationDomainDomain %s successfully addedDomain (%d)Domains (%d)Domain propertyError: Execute commandFAXFTP Quota MbFTP StatusForward ActiveGID numberGeneric Error: Home DirectoryHome PhoneLDAP Error: LoginLogin NameLogin Username or Password not valid.Logout %sMail AutoreplyMailboxMaildropMax QuotaMax number of AliasMax number of MailMobileModify accountModify domainNONameName is not validOther TransportPagerPasswordPassword contains special charsPassword too short!Passwords don't match!Postfix TransportProxy HostQuotaSMTP AuthSPAM CheckSPAM Tags level are not set correctly!SetSpam Kill LevelSpam Tag LevelSpam Tag2 LevelSpecial Characters not Allowed in E-mail addressSurnameSurname is not validSyntax not valid or special chars found in domain nameTelephoneUIDUID NumberVacationVacation EndVacation ForwardVacation InfoVacation StartVer. %sVirtual HomeVirus CheckWarning: Web AccessYESYou will be automatically redirected to a new page within a few seconds.
If this does not happen, please follow the link:account %s not updated!click heredo not activate Forward and Vacation Forward in the same time!domain %s not added!please, insert a forward destination or disable Forward!Project-Id-Version: phamm NEW POT-Creation-Date: 2008-10-15 09:56+0300 PO-Revision-Date: 2008-10-15 22:21+0400 Last-Translator: Yuri Kozlov Language-Team: Russian MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Generator: KBabel 1.11.4 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); Значение %s изменено%s не добавлено!...выполнение командыАккаунтАккаунт %s добавлен%d аккаунт%d аккаунта%d аккаунтовАккаунт или псевдоним уже существуютАктивенДобавить адрес для всей почтыДобавить новый аккаунтДобавить новый доменВсеВсе доменыПока!Может редактировать аккаунтыМожет управлять антивирусомНе удалось связаться с сервером LDAPПринимать всёПриём всей почты включёнВся почтаИзменения не внесеныКод Общее имяПодтверждение пароляНе удалось подключиться к серверу LDAP!Дата созданияУдалитьНазначениеДоменДомен %s добавлен%d домен%d домена%d доменовСвойства доменаОшибка: Выполнить командуФАКСFTP-квота (Mб)FTP-состояниеПересылка включенаGID-номерОбщая ошибка: Домашний каталогДомашний телефонОшибка LDAP: ЛогинРегистрационное имяНеправильный логин или пароль.Завершение работы %sПочтовый автоответчикПочтовый ящикMaildropМаксимальная квотаМаксимальное кол-во псевдонимовМаксимальное кол-во почтыМобильныйИзменить аккаунтИзменить доменНЕТИмяНеверное имяДругой транспортПейджерПарольПароль содержит спецсимволыПароль слишком короткий!Пароли не совпадают!Транспорт PostfixПрокси-хостКвотаSMTP AuthПроверка на спамНеправильно задан уровень меток спама!ЗаданУровень для удаления спамаУровень для пометки спамаУровень для 2-й пометки спамаВ почтовых адресах спецсимволы запрещеныФамилияНеверная фамилияНеверный синтаксис или в доменном имени есть спецсимволыТелефонUIDUID-номерВременное отсутствиеКонец периода временного отсутствияПересылать во время отсутствияИнформация о временном отсутствииНачало периода временного отсутствияВер. %sВиртуальный домашний каталогАнтивирусная проверкаПредупреждение: Доступ через вебДАЧерез несколько секунд вы будете автоматически перенаправлены на новую страницу.
Если это не происходит, пройдите по ссылке:аккаунт %s не обновлён!нажмите сюдане включайте Пересылку и Пересылку во время отсутствия одновременнодомен %s не добавлен!укажите адрес пересылки или выключите Пересылку!phamm-0.6.5/locales/vi/0000755000175300017530000000000012643155515012644 5ustar phammphamm-0.6.5/locales/vi/LC_MESSAGES/0000755000175300017530000000000012643155515014431 5ustar phammphamm-0.6.5/locales/vi/LC_MESSAGES/messages.mo0000644000175300017530000001406612643155515016604 0ustar phamm[ 29O_n r~ ! 2 @ G S Z w         % C M \ d m w           / A L R \ &g     0 6 ) 3 7 B K X i w   ~ ? W >b  8  ~ #"#6O b mz!6%;QU>n  +@Rq z  7& D OZn   * 7 Rs &%M=; %= Q _i|o- <nI \OSA$2Q%(L64>/. +R8'"U0?FP VW!H,JXZ5 [& 7D)3 ;M:@ 1-9N=#KEG*TIB<YC%s not added!...execute a commandAccountAccount %s successfully addedAccount or Alias already existsActiveAdd catch-all addressAdd new accountAdd new domainAllAll domainsBye!Can edit AccountsCan edit Anti-VirusCan't contact LDAP serverCatch allCatch all activeChanges have not performedCode Confirm PasswordConnection to LDAP Server Failed!Creation DateDeleteDestinationDomainDomain %s successfully addedDomain propertyError: Execute commandFAXFTP Quota MbFTP StatusForward ActiveGID numberGeneric Error: Home DirectoryHome PhoneLDAP Error: LoginLogin NameLogin Username or Password not valid.Logout %sMail AutoreplyMailboxMaildropMax QuotaMax number of AliasMax number of MailMobileModify accountModify domainNOOther TransportPagerPasswordPassword contains special charsPassword too short!Passwords don't match!Postfix TransportProxy HostQuotaSMTP AuthSPAM CheckSPAM Tags level are not set correctly!SetSpam Kill LevelSpam Tag LevelSpam Tag2 LevelSpecial Characters not Allowed in E-mail addressSyntax not valid or special chars found in domain nameTelephoneUIDUID NumberVacationVacation EndVacation ForwardVacation InfoVacation StartVer. %sVirtual HomeVirus CheckWarning: Web AccessYESYou will be automatically redirected to a new page within a few seconds.
If this does not happen, please follow the link:account %s not updated!click heredo not activate Forward and Vacation Forward in the same time!domain %s not added!please, insert a forward destination or disable Forward!Project-Id-Version: phamm 0.5.13 POT-Creation-Date: 2014-12-28 11:01+0100 PO-Revision-Date: 2008-06-26 23:45+0930 Last-Translator: Clytie Siddall Language-Team: Vietnamese Language: vi MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Plural-Forms: nplurals=1; plural=0; X-Generator: LocFactoryEditor 1.7b3 Chưa thêm %s !...thực thi một câu lệnhTài khoảnTài khoản %s đã được thêmTài khoản hay Bí danh đã cóHoạt độngThêm địa chỉ bắt tất cảThêm tài khoản mớiThêm miền mớiTất cảMọi miềnTạm biệt nhéCó quyền sửa tài khoảnCó quyền sửa Chống Vi-rútKhông thể liên lạc với trình phục vụ LDAPBắt tất cảBắt mọi cái vẫn hoạt độngChưa thay đổi gìMãXác nhận mật khẩuKhông thành công kết nối đến máy phục vụ LDAP !Ngày tạoXoáĐíchMiềnMiền %s đã được thêmThuộc tính miềnLỗi: Thực thi câu lệnhĐiện thưMB hạn ngạch FTPTrạng thái FTPChuyển tiếp hoạt độngSố GIDLỗi chung: Thư mục chínhĐiện thoại nhàLỗi LDAP: Đăng nhậpTên đăng nhậpSai đăng nhập tên người dùng hay mật khẩu.Đăng xuất %sThư tự động trả lờiHộp thưThả thưHạn ngạch trênSố tối đa các Bí danhSố tối đa các thưDi độngSửa tài khoảnSửa miềnKHÔNGCơ chế truyền khácMáy nhắn tinMật khẩuMật khẩu chứa ký tự đặc biệtMật khẩu quá ngắn !Hai mật khẩu không trùng !Truyền PostfixMáy ủy nhiệmHạn ngạchXác thực SMTPKiểm tra thư rácSai đặt mức các thẻ thư rác.ĐặtCấp giết thư rácMức thẻ thư rácMức thẻ thư rác 2Không cho phép địa chỉ thư điện tử chứa ký tự đặc biệtSai cú pháp hay tên miền chứa ký tự đặc biệtĐiện thoạiUIDSố UIDNghỉ phépCuối nghỉ phépChuyển tiếp do nghỉ phépThông tin nghỉ phépĐầu nghỉ phépPhạm vi. %sNhà ảoKiểm tra vi-rútCảnh báo : Truy cập WebCÓMột trang mới sẽ tự động nạp trong vòng vài giây.
Không thì nhấn vào liên kết này:tài khoản %s chưa được cập nhật !nhấn đâykhông nên kích hoạt đồng thời hai chức năng Chuyển tiếp và Chuyển tiếp do nghỉ phép !miền %s chưa được thêm !hãy nhập một đích đến chuyển tiếp, hoặc tắt chức năng Chuyển tiếp !phamm-0.6.5/locales/vi_VN/0000755000175300017530000000000012643155515013247 5ustar phammphamm-0.6.5/locales/vi_VN/LC_MESSAGES/0000755000175300017530000000000012643155515015034 5ustar phammphamm-0.6.5/locales/vi_VN/LC_MESSAGES/messages.mo0000644000175300017530000001406612643155515017207 0ustar phamm[ 29O_n r~ ! 2 @ G S Z w         % C M \ d m w           / A L R \ &g     0 6 ) 3 7 B K X i w   ~ ? W >b  8  ~ #"#6O b mz!6%;QU>n  +@Rq z  7& D OZn   * 7 Rs &%M=; %= Q _i|o- <nI \OSA$2Q%(L64>/. +R8'"U0?FP VW!H,JXZ5 [& 7D)3 ;M:@ 1-9N=#KEG*TIB<YC%s not added!...execute a commandAccountAccount %s successfully addedAccount or Alias already existsActiveAdd catch-all addressAdd new accountAdd new domainAllAll domainsBye!Can edit AccountsCan edit Anti-VirusCan't contact LDAP serverCatch allCatch all activeChanges have not performedCode Confirm PasswordConnection to LDAP Server Failed!Creation DateDeleteDestinationDomainDomain %s successfully addedDomain propertyError: Execute commandFAXFTP Quota MbFTP StatusForward ActiveGID numberGeneric Error: Home DirectoryHome PhoneLDAP Error: LoginLogin NameLogin Username or Password not valid.Logout %sMail AutoreplyMailboxMaildropMax QuotaMax number of AliasMax number of MailMobileModify accountModify domainNOOther TransportPagerPasswordPassword contains special charsPassword too short!Passwords don't match!Postfix TransportProxy HostQuotaSMTP AuthSPAM CheckSPAM Tags level are not set correctly!SetSpam Kill LevelSpam Tag LevelSpam Tag2 LevelSpecial Characters not Allowed in E-mail addressSyntax not valid or special chars found in domain nameTelephoneUIDUID NumberVacationVacation EndVacation ForwardVacation InfoVacation StartVer. %sVirtual HomeVirus CheckWarning: Web AccessYESYou will be automatically redirected to a new page within a few seconds.
If this does not happen, please follow the link:account %s not updated!click heredo not activate Forward and Vacation Forward in the same time!domain %s not added!please, insert a forward destination or disable Forward!Project-Id-Version: phamm 0.5.13 POT-Creation-Date: 2014-12-28 11:01+0100 PO-Revision-Date: 2008-06-26 23:45+0930 Last-Translator: Clytie Siddall Language-Team: Vietnamese Language: vi MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Plural-Forms: nplurals=1; plural=0; X-Generator: LocFactoryEditor 1.7b3 Chưa thêm %s !...thực thi một câu lệnhTài khoảnTài khoản %s đã được thêmTài khoản hay Bí danh đã cóHoạt độngThêm địa chỉ bắt tất cảThêm tài khoản mớiThêm miền mớiTất cảMọi miềnTạm biệt nhéCó quyền sửa tài khoảnCó quyền sửa Chống Vi-rútKhông thể liên lạc với trình phục vụ LDAPBắt tất cảBắt mọi cái vẫn hoạt độngChưa thay đổi gìMãXác nhận mật khẩuKhông thành công kết nối đến máy phục vụ LDAP !Ngày tạoXoáĐíchMiềnMiền %s đã được thêmThuộc tính miềnLỗi: Thực thi câu lệnhĐiện thưMB hạn ngạch FTPTrạng thái FTPChuyển tiếp hoạt độngSố GIDLỗi chung: Thư mục chínhĐiện thoại nhàLỗi LDAP: Đăng nhậpTên đăng nhậpSai đăng nhập tên người dùng hay mật khẩu.Đăng xuất %sThư tự động trả lờiHộp thưThả thưHạn ngạch trênSố tối đa các Bí danhSố tối đa các thưDi độngSửa tài khoảnSửa miềnKHÔNGCơ chế truyền khácMáy nhắn tinMật khẩuMật khẩu chứa ký tự đặc biệtMật khẩu quá ngắn !Hai mật khẩu không trùng !Truyền PostfixMáy ủy nhiệmHạn ngạchXác thực SMTPKiểm tra thư rácSai đặt mức các thẻ thư rác.ĐặtCấp giết thư rácMức thẻ thư rácMức thẻ thư rác 2Không cho phép địa chỉ thư điện tử chứa ký tự đặc biệtSai cú pháp hay tên miền chứa ký tự đặc biệtĐiện thoạiUIDSố UIDNghỉ phépCuối nghỉ phépChuyển tiếp do nghỉ phépThông tin nghỉ phépĐầu nghỉ phépPhạm vi. %sNhà ảoKiểm tra vi-rútCảnh báo : Truy cập WebCÓMột trang mới sẽ tự động nạp trong vòng vài giây.
Không thì nhấn vào liên kết này:tài khoản %s chưa được cập nhật !nhấn đâykhông nên kích hoạt đồng thời hai chức năng Chuyển tiếp và Chuyển tiếp do nghỉ phép !miền %s chưa được thêm !hãy nhập một đích đến chuyển tiếp, hoặc tắt chức năng Chuyển tiếp !phamm-0.6.5/plugins/0000755000175300017530000000000012643155515012265 5ustar phammphamm-0.6.5/plugins/alias.xml0000644000175300017530000000376112643155515014107 0ustar phamm 0.0.3 2006-09-22 2008-09-08 stable Alessandro De Zorzi De Zorzi team@phamm.org http://www.phamm.org GPL Plugin to manage e-mail alias Plugin to manage e-mail alias top FF4455 2 0 0 1 0 0 Destination 1
1
Active 1 1
TRUE 4
SMTP Auth 1 1
FALSE 4
Virus Check 1 1 TRUE 4 SPAM Check 1 1 TRUE 4
phamm-0.6.5/plugins/davical.xml0000644000175300017530000000227512643155515014420 0ustar phamm 0.0.1 2009-09-02 2009-09-02 beta viva perversia viva@perversia.net http://perversia.net GPL Plugin to manage DAViCal accounts Plugin to manage DAViCal accounts top FF4455 10 0 0 1 0 CalDav Access 1
1 1 TRUE
phamm-0.6.5/plugins/ftp.xml0000644000175300017530000000437412643155515013610 0ustar phamm 0.0.2 2005-02-19 2008-09-08 beta Alessandro De Zorzi De Zorzi team@phamm.org http://www.phamm.org GPL Plugin to manage pure-FTP Plugin to manage pure-FTP top FF4455 10 1 1 0 0 0 GID number 1 1 10 Home Directory 1 1 =php.Value(%domain%,/mnt/www/,+domain_new+) 10 UID 1 1 =php.Value(%domain%,,+domain_new+) 10 UID Number 1 1 10 FTP Status 1
enabled 10
FTP Quota Mb 4 4 500 10
phamm-0.6.5/plugins/jabber.xml0000644000175300017530000000260112643155515014233 0ustar phamm 0.0.1 2009-08-13 2009-08-13 beta viva perversia viva@perversia.net http://perversia.net GPL Plugin to manage jabber accounts Plugin to manage jabber accounts top FF4455 10 0 0 1 0 Jabber Access 1
1 1 TRUE
Jabber-ID 1 1 =php.Value(+account_new+,@,%domain%)
phamm-0.6.5/plugins/mail.xml0000644000175300017530000002067512643155515013743 0ustar phamm 0.0.4 2005-02-19 2008-09-08 stable Alessandro De Zorzi De Zorzi team@phamm.org http://www.phamm.org GPL Plugin to manage Virtual Domain, e-mail account and aliases Plugin to manage Virtual Domain, e-mail account and aliases top FF4455 2 1 1 1 Max number of Mail 4 1 4 100 Max number of Alias 1 4 4 100 Max Quota 4 1 4 100 Max Smtp Auth 4 1 4 -1 Active 1 1 1
TRUE
Can edit Anti-Virus 1 1 TRUE Delete 1 1
1 1 1 FALSE
Postfix Transport maildrop: 1
Can edit Accounts 1 1
TRUE 6
0 0 0 0 SMTP Auth 1 1
FALSE 4
Quota 1
1000 1048576 S 4
Active 1 1
1 TRUE 4
Virtual Home 1 1 /home/vmail/domains 4 Mailbox 1 1 =php.Value(%domain%,/,+account_new+,/) 4 UID 1 =php.Value(+account_new+,.,%domain%) 4 1 1 Mail Autoreply 1 =php.Value(+account_new+,@,%domain%,.autoreply) 4 Delete 1 1 1
FALSE 4 1
Other Transport 1 phamm: 4 Vacation FALSE 1 1 Vacation Info vacationActive Vacation Forward vacationActive 1 Vacation Start vacationActive 201001010000 1 Vacation End vacationActive 201001010000 1 Forward Active 1 FALSE 1 1
Maildrop forwardActive Virus Check 1 1
1 TRUE 4
SPAM Check 1 1
1 FALSE 4
Spam Kill Level amavisBypassSpamChecks 4 6.0 Spam Tag2 Level amavisBypassSpamChecks 4 5.5 Spam Tag Level amavisBypassSpamChecks 3.0 4 Creation Date 1
1
phamm-0.6.5/plugins/person.xml0000644000175300017530000000306212643155515014316 0ustar phamm 0.0.3 2006-05-25 2008-09-08 beta Alessandro De Zorzi De Zorzi team@phamm.org http://www.phamm.org GPL RFC2798: Internet Organizational Person RFC2798: Internet Organizational Person top FF4455 10 0 0 1 0 Telephone 1
Home Phone 1
Mobile 1
FAX 1
Pager 1
phamm-0.6.5/plugins/proxy.xml0000644000175300017530000000242512643155515014173 0ustar phamm 0.0.3 2005-02-19 2008-09-08 beta Alessandro De Zorzi De Zorzi team@phamm.org http://www.phamm.org GPL Plugin to manage proxy accounts Plugin to manage proxy accounts (Squid...) top FF4455 10 0 0 1 0 Web Access 1
1 TRUE
Proxy Host 1
phamm-0.6.5/plugins/sharing.xml0000644000175300017530000000254612643155515014451 0ustar phamm 0.0.1 2009-08-13 2009-08-13 beta viva perversia viva@perversia.net http://perversia.net GPL Plugin to manage jabber accounts Plugin to manage jabber accounts top FF4455 10 1 0 1 0 Share Access 1
1 1 FALSE
Share Quota (Gb) 1 1
phamm-0.6.5/po/0000755000175300017530000000000012643155515011222 5ustar phammphamm-0.6.5/po/Makefile0000644000175300017530000000137512643155515012670 0ustar phamm#!/bin/bash # Makefile to generate POT # LOCALDIR = ../../locale all: @echo Please, specify a target [pot,all-mo, all-po] all-mo: for lang in `ls -1 ??_??.po` ; do \ DESTDIR=`echo $$lang| cut -d \. -f 1`; \ msgfmt -v $$lang -o ../locales/$$DESTDIR/LC_MESSAGES/messages.mo; \ done all-po: for lang in `ls -1 ??_??.po` ; do \ msgmerge -vU $$lang phamm.pot; \ done pot: # Generate updated phamm.pot file # cp messages_header phamm.pot po4a-gettextize -o tags="" -o tagsonly=1 -f xml \ -m ../plugins/alias.xml \ -m ../plugins/ftp.xml \ -m ../plugins/mail.xml \ -m ../plugins/person.xml \ -m ../plugins/proxy.xml \ -p phamm.pot find ../ -name *.php -exec xgettext --keyword=_ -L PHP -j -o phamm.pot --omit-header -s {} \; phamm-0.6.5/po/da_DK.po0000644000175300017530000003603612643155515012534 0ustar phammmsgid "" msgstr "" "Project-Id-Version: \n" "POT-Creation-Date: 2014-12-28 11:01+0100\n" "PO-Revision-Date: 2009-09-09 16:34+0100\n" "Last-Translator: Alice Kærast \n" "Language-Team: \n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Poedit-Language: Danish\n" "Plural-Forms: nplurals=2; plural=(n!=1);\n" #: ../public/main.php:658 #, php-format msgid "%s not added!" msgstr "" #: ../views/helpers.php:1058 msgid "...execute a command" msgstr "" #: ../views/helpers.php:809 msgid "Account" msgstr "Konto" #: ../public/main.php:652 #, php-format msgid "Account %s successfully added" msgstr "" #: ../views/helpers.php:295 #, php-format msgid "Account %d/" msgid_plural "Accounts %d/" msgstr[0] "" msgstr[1] "" #: ../views/helpers.php:297 #, php-format msgid "Account %d" msgid_plural "Accounts %d" msgstr[0] "" msgstr[1] "" #: ../public/main.php:411 msgid "Account or Alias already exists" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/alias.xml:44 ../plugins/mail.xml:59 ../plugins/mail.xml:132 #, no-wrap msgid "Active" msgstr "Aktiv" #: ../views/helpers.php:1215 msgid "Add catch-all address" msgstr "" #: ../views/helpers.php:779 ../views/helpers.php:804 msgid "Add new account" msgstr "" #: ../views/helpers.php:399 ../views/helpers.php:707 msgid "Add new domain" msgstr "" #: ../views/helpers.php:917 msgid "All" msgstr "Alle" #: ../views/helpers.php:897 msgid "All domains" msgstr "Alle domæner" #: ../public/main.php:372 #, php-format msgid "An Unexpected Error Occurred during %s Addition!" msgstr "" #: ../public/main.php:113 msgid "Bye!" msgstr "Farvel!" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:91 #, no-wrap msgid "Can edit Accounts" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:66 #, no-wrap msgid "Can edit Anti-Virus" msgstr "" #: ../public/main.php:100 msgid "Can't contact LDAP server" msgstr "" #: ../public/main.php:471 msgid "Catch all" msgstr "" #: ../public/main.php:469 msgid "Catch all active" msgstr "" #: ../views/helpers.php:1202 msgid "Catch-all" msgstr "" #: ../public/main.php:240 msgid "Changes have not performed" msgstr "" #: ../lib/ldap.php:249 msgid "Code " msgstr "" #: ../views/helpers.php:299 msgid "Common Name" msgstr "" #: ../views/helpers.php:724 ../views/helpers.php:821 msgid "Confirm Password" msgstr "Bekræft Adgangskode" #: ../public/main.php:73 msgid "Connection to LDAP Server Failed!" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:298 #, no-wrap msgid "Creation Date" msgstr "Oprettelsesdag" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:72 ../plugins/mail.xml:168 #, no-wrap msgid "Delete" msgstr "Slet" # type: Content of: #. type: Content of: #: ../plugins/alias.xml:39 #, no-wrap msgid "Destination" msgstr "Destination" #: ../views/helpers.php:712 msgid "Domain" msgstr "Domæne" #: ../public/main.php:362 #, php-format msgid "Domain %s successfully added" msgstr "" #: ../views/helpers.php:167 #, php-format msgid "Domain %d" msgid_plural "Domains %d" msgstr[0] "" msgstr[1] "" #: ../public/main.php:457 msgid "Domain property" msgstr "" #: ../views/helpers.php:109 msgid "Enter domain or e-mail" msgstr "" #: ../views/helpers.php:1362 msgid "Error: " msgstr "Fejl:" #: ../views/helpers.php:1077 msgid "Execute command" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/person.xml:48 #, no-wrap msgid "FAX" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/ftp.xml:71 #, no-wrap msgid "FTP Quota Mb" msgstr "FTP Kvote Mb" # type: Content of: #. type: Content of: #: ../plugins/ftp.xml:65 #, no-wrap msgid "FTP Status" msgstr "FTP Status" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:211 #, no-wrap msgid "Forward Active" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/ftp.xml:39 #, no-wrap msgid "GID number" msgstr "GID nummer" #: ../public/main.php:102 msgid "Generic Error: " msgstr "Generel Fejl:" # type: Content of: #. type: Content of: #: ../plugins/ftp.xml:45 #, no-wrap msgid "Home Directory" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/person.xml:40 #, no-wrap msgid "Home Phone" msgstr "" #: ../lib/ldap.php:249 msgid "LDAP Error: " msgstr "" #: ../views/helpers.php:117 msgid "Login" msgstr "Log ind" #: ../views/helpers.php:108 msgid "Login Name" msgstr "" #: ../public/main.php:98 msgid "Login Username or Password not valid." msgstr "" #: ../public/main.php:184 #, php-format msgid "Logout %s" msgstr "Log ud %s" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:162 #, no-wrap msgid "Mail Autoreply" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:147 #, no-wrap msgid "Mailbox" msgstr "Postkasse" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:218 #, no-wrap msgid "Maildrop" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:45 #, no-wrap msgid "Max Quota" msgstr "Maksimal Kvote" #. type: Content of: #: ../plugins/mail.xml:52 #, no-wrap msgid "Max Smtp Auth" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:38 #, no-wrap msgid "Max number of Alias" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:31 #, no-wrap msgid "Max number of Mail" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/person.xml:44 #, no-wrap msgid "Mobile" msgstr "" #: ../views/helpers.php:802 msgid "Modify account" msgstr "Rediger konto" #: ../views/helpers.php:705 msgid "Modify domain" msgstr "Rediger domæne" #: ../views/helpers.php:979 ../views/helpers.php:980 msgid "NO" msgstr "NEJ" #: ../views/helpers.php:824 msgid "Name" msgstr "Navn" #: ../public/main.php:525 msgid "Name is not valid" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:177 #, no-wrap msgid "Other Transport" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/person.xml:52 #, no-wrap msgid "Pager" msgstr "" #: ../views/helpers.php:113 ../views/helpers.php:114 ../views/helpers.php:721 #: ../views/helpers.php:818 msgid "Password" msgstr "Adgangskode" #: ../controllers/helpers.php:159 msgid "Password contains special chars" msgstr "" #: ../controllers/helpers.php:156 msgid "Password too short!" msgstr "" #: ../controllers/helpers.php:153 msgid "Passwords don't match!" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:81 #, no-wrap msgid "Postfix Transport" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/proxy.xml:42 #, no-wrap msgid "Proxy Host" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:124 #, no-wrap msgid "Quota" msgstr "Kvote" # type: Content of: #. type: Content of: #: ../plugins/alias.xml:51 ../plugins/mail.xml:117 #, no-wrap msgid "SMTP Auth" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/alias.xml:65 ../plugins/mail.xml:230 #, no-wrap msgid "SPAM Check" msgstr "" #: ../public/main.php:437 msgid "SPAM Tags level are not set correctly!" msgstr "" #: ../views/helpers.php:1064 msgid "Set" msgstr "Indstil" #: ../views/helpers.php:117 msgid "Sign in" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:238 #, no-wrap msgid "Spam Kill Level" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:278 #, no-wrap msgid "Spam Tag Level" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:258 #, no-wrap msgid "Spam Tag2 Level" msgstr "" #: ../public/main.php:413 msgid "Special Characters not Allowed in E-mail address" msgstr "" #: ../views/helpers.php:827 msgid "Surname" msgstr "Efternavn" #: ../public/main.php:527 msgid "Surname is not valid" msgstr "" #: ../public/main.php:257 msgid "Syntax not valid or special chars found in domain name" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/person.xml:36 #, no-wrap msgid "Telephone" msgstr "Telefon" #: ../public/main.php:415 #, php-format msgid "The maximum number of accounts (%s) has been reached or exceeded!" msgstr "" #: ../controllers/helpers.php:84 #, php-format msgid "The maximum number of attribute %s (%s) has been reached or exceeded!" msgstr "" #: ../views/helpers.php:459 #, php-format msgid "" "The maximum number of attribute %s (%s) has been reached or exceeded. " "Attribute has been disabled!" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/ftp.xml:52 ../plugins/mail.xml:154 #, no-wrap msgid "UID" msgstr "UID" # type: Content of: #. type: Content of: #: ../plugins/ftp.xml:59 #, no-wrap msgid "UID Number" msgstr "UID Nummer" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:183 #, no-wrap msgid "Vacation" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:205 #, no-wrap msgid "Vacation End" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:194 #, no-wrap msgid "Vacation Forward" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:189 #, no-wrap msgid "Vacation Info" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:199 #, no-wrap msgid "Vacation Start" msgstr "" #: ../views/helpers.php:65 ../views/helpers.php:124 #, php-format msgid "Ver. %s" msgstr "Ver. %s" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:140 #, no-wrap msgid "Virtual Home" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/alias.xml:58 ../plugins/mail.xml:222 #, no-wrap msgid "Virus Check" msgstr "" #: ../views/helpers.php:1367 msgid "Warning: " msgstr "Advarsel:" # type: Content of: #. type: Content of: #: ../plugins/proxy.xml:36 #, no-wrap msgid "Web Access" msgstr "" #: ../views/helpers.php:979 ../views/helpers.php:980 msgid "YES" msgstr "JA" #: ../views/helpers.php:1433 msgid "" "You will be automatically redirected to a new page within a few seconds.
If this does not happen, please follow the link:" msgstr "" #: ../public/main.php:820 #, php-format msgid "account %s not updated!" msgstr "" #: ../views/helpers.php:1433 msgid "click here" msgstr "klik her" #: ../public/main.php:439 msgid "do not activate Forward and Vacation Forward in the same time!" msgstr "" #: ../public/main.php:367 #, php-format msgid "domain %s not added!" msgstr "" #: ../public/main.php:223 #, php-format msgid "modifying %s" msgstr "" #: ../public/main.php:441 msgid "please, insert a forward destination or disable Forward!" msgstr "" #~ msgid "Account (%d)" #~ msgid_plural "Brugerkonti (%d)" #~ msgstr[0] "Brugerkonti (%d)" #~ msgstr[1] "Brugerkonti (%d)" #~ msgid "Domain (%d)" #~ msgid_plural "Domæner (%d)" #~ msgstr[0] "Domæner (%d)" #~ msgstr[1] "Domæner (%d)" phamm-0.6.5/po/de_DE.po0000644000175300017530000004156312643155515012533 0ustar phamm# German Phamm Translation # Copyright (c) 2004,2008 Alessandro De Zorzi, Mirko Grava # This file is distributed under the same license as the Phamm package. # # Jan Dankert , 2008. # msgid "" msgstr "" "Project-Id-Version: phamm 0.5.13\n" "POT-Creation-Date: 2014-12-28 11:01+0100\n" "PO-Revision-Date: 2008-09-22 15:50+0300\n" "Last-Translator: Jan Dankert\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" #: ../public/main.php:658 #, php-format msgid "%s not added!" msgstr "%s nicht hinzugefügt" #: ../views/helpers.php:1058 msgid "...execute a command" msgstr "...einen Befehl ausführen" #: ../views/helpers.php:809 msgid "Account" msgstr "" #: ../public/main.php:652 #, php-format msgid "Account %s successfully added" msgstr "Account %s wurde erfolgreich hinzugefügt" #: ../views/helpers.php:295 #, php-format msgid "Account %d/" msgid_plural "Accounts %d/" msgstr[0] "" msgstr[1] "" #: ../views/helpers.php:297 #, php-format msgid "Account %d" msgid_plural "Accounts %d" msgstr[0] "" msgstr[1] "" #: ../public/main.php:411 msgid "Account or Alias already exists" msgstr "Der Account oder der Alias existiert bereits" # type: Content of: #. type: Content of: #: ../plugins/alias.xml:44 ../plugins/mail.xml:59 ../plugins/mail.xml:132 #, no-wrap msgid "Active" msgstr "Aktiv" #: ../views/helpers.php:1215 msgid "Add catch-all address" msgstr "Neue Catch-All-Adresse einrichten" #: ../views/helpers.php:779 ../views/helpers.php:804 msgid "Add new account" msgstr "Neuen Account einrichten" #: ../views/helpers.php:399 ../views/helpers.php:707 msgid "Add new domain" msgstr "Neue Domain hinzufügen" #: ../views/helpers.php:917 msgid "All" msgstr "Alle" #: ../views/helpers.php:897 msgid "All domains" msgstr "Alle Domains" #: ../public/main.php:372 #, php-format msgid "An Unexpected Error Occurred during %s Addition!" msgstr "" #: ../public/main.php:113 msgid "Bye!" msgstr "Auf Wiedersehen!" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:91 #, no-wrap msgid "Can edit Accounts" msgstr "Accounts bearbeiten" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:66 #, no-wrap msgid "Can edit Anti-Virus" msgstr "Bearbeite Antivirenprogramm" #: ../public/main.php:100 msgid "Can't contact LDAP server" msgstr "Keine Verbindung zum LDAP-Server möglich" #: ../public/main.php:471 msgid "Catch all" msgstr "Catch all" #: ../public/main.php:469 msgid "Catch all active" msgstr "Catch all aktiv" #: ../views/helpers.php:1202 #, fuzzy msgid "Catch-all" msgstr "Catch all" #: ../public/main.php:240 msgid "Changes have not performed" msgstr "Die Änderungen wurden nicht durchgeführt" #: ../lib/ldap.php:249 msgid "Code " msgstr "Code" #: ../views/helpers.php:299 msgid "Common Name" msgstr "Name" #: ../views/helpers.php:724 ../views/helpers.php:821 msgid "Confirm Password" msgstr "Kennwort bestätigen" #: ../public/main.php:73 msgid "Connection to LDAP Server Failed!" msgstr "Keine Verbindung zum LDAP-Server möglich" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:298 #, no-wrap msgid "Creation Date" msgstr "Anlage-Datum" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:72 ../plugins/mail.xml:168 #, no-wrap msgid "Delete" msgstr "Entfernen" # type: Content of: #. type: Content of: #: ../plugins/alias.xml:39 #, no-wrap msgid "Destination" msgstr "Ziel" #: ../views/helpers.php:712 msgid "Domain" msgstr "Domain" #: ../public/main.php:362 #, php-format msgid "Domain %s successfully added" msgstr "Die Domain %s wurde erfolgreich hinzugefügt" #: ../views/helpers.php:167 #, php-format msgid "Domain %d" msgid_plural "Domains %d" msgstr[0] "" msgstr[1] "" #: ../public/main.php:457 msgid "Domain property" msgstr "Domain-Eigenschaft" #: ../views/helpers.php:109 msgid "Enter domain or e-mail" msgstr "" #: ../views/helpers.php:1362 msgid "Error: " msgstr "Fehler: " #: ../views/helpers.php:1077 msgid "Execute command" msgstr "Befehl ausführen" # type: Content of: #. type: Content of: #: ../plugins/person.xml:48 #, no-wrap msgid "FAX" msgstr "Telefax" # type: Content of: #. type: Content of: #: ../plugins/ftp.xml:71 #, no-wrap msgid "FTP Quota Mb" msgstr "FTP Speichergrenze (in MB)" # type: Content of: #. type: Content of: #: ../plugins/ftp.xml:65 #, no-wrap msgid "FTP Status" msgstr "FTP-Status" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:211 #, no-wrap msgid "Forward Active" msgstr "Weiterleitung aktiv" # type: Content of: #. type: Content of: #: ../plugins/ftp.xml:39 #, no-wrap msgid "GID number" msgstr "GID" #: ../public/main.php:102 msgid "Generic Error: " msgstr "Allgemeiner Programmfehler: " # type: Content of: #. type: Content of: #: ../plugins/ftp.xml:45 #, no-wrap msgid "Home Directory" msgstr "Heimatverzeichnis" # type: Content of: #. type: Content of: #: ../plugins/person.xml:40 #, no-wrap msgid "Home Phone" msgstr "Telefon privat" #: ../lib/ldap.php:249 msgid "LDAP Error: " msgstr "Fehler bei LDAP-Zugriff" #: ../views/helpers.php:117 msgid "Login" msgstr "Anmeldung" #: ../views/helpers.php:108 msgid "Login Name" msgstr "Benutzername" #: ../public/main.php:98 msgid "Login Username or Password not valid." msgstr "Benutzername oder Kennwort nicht gültig." #: ../public/main.php:184 #, php-format msgid "Logout %s" msgstr "Abmelden" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:162 #, no-wrap msgid "Mail Autoreply" msgstr "E-Mail automatische Antwort" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:147 #, no-wrap msgid "Mailbox" msgstr "Anrufbeantworter" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:218 #, no-wrap msgid "Maildrop" msgstr "Maildrop" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:45 #, no-wrap msgid "Max Quota" msgstr "Maximale Größe der Mailbox (Quota)" #. type: Content of: #: ../plugins/mail.xml:52 #, no-wrap msgid "Max Smtp Auth" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:38 #, no-wrap msgid "Max number of Alias" msgstr "Maximale Anzahl von Aliases" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:31 #, no-wrap msgid "Max number of Mail" msgstr "Maximale Anzahl von E-Mail-Nachrichten" # type: Content of: #. type: Content of: #: ../plugins/person.xml:44 #, no-wrap msgid "Mobile" msgstr "Mobil" #: ../views/helpers.php:802 msgid "Modify account" msgstr "Account bearbeiten" #: ../views/helpers.php:705 msgid "Modify domain" msgstr "Domain ändern" #: ../views/helpers.php:979 ../views/helpers.php:980 msgid "NO" msgstr "NEIN" #: ../views/helpers.php:824 msgid "Name" msgstr "Name" #: ../public/main.php:525 msgid "Name is not valid" msgstr "Der Name ist ungültig" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:177 #, no-wrap msgid "Other Transport" msgstr "Anderer Transport" # type: Content of: #. type: Content of: #: ../plugins/person.xml:52 #, no-wrap msgid "Pager" msgstr "Pager" #: ../views/helpers.php:113 ../views/helpers.php:114 ../views/helpers.php:721 #: ../views/helpers.php:818 msgid "Password" msgstr "Kennwort" #: ../controllers/helpers.php:159 msgid "Password contains special chars" msgstr "Das Kennwort enthält Sonderzeichen" #: ../controllers/helpers.php:156 msgid "Password too short!" msgstr "Das Kennwort ist zu kurz!" #: ../controllers/helpers.php:153 msgid "Passwords don't match!" msgstr "Die Kennwörter stimmen nicht überein!" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:81 #, no-wrap msgid "Postfix Transport" msgstr "Postfix Transport" # type: Content of: #. type: Content of: #: ../plugins/proxy.xml:42 #, no-wrap msgid "Proxy Host" msgstr "Proxy Hostname" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:124 #, no-wrap msgid "Quota" msgstr "Speicher (Quota)" # type: Content of: #. type: Content of: #: ../plugins/alias.xml:51 ../plugins/mail.xml:117 #, no-wrap msgid "SMTP Auth" msgstr "SMTP Authentifizierung" # type: Content of: #. type: Content of: #: ../plugins/alias.xml:65 ../plugins/mail.xml:230 #, no-wrap msgid "SPAM Check" msgstr "SPAM-Prüfung" #: ../public/main.php:437 msgid "SPAM Tags level are not set correctly!" msgstr "Die Spam Tags level sind nicht korrekt!" #: ../views/helpers.php:1064 msgid "Set" msgstr "Set" #: ../views/helpers.php:117 msgid "Sign in" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:238 #, no-wrap msgid "Spam Kill Level" msgstr "Spam Ablehnungs-Level" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:278 #, no-wrap msgid "Spam Tag Level" msgstr "Spam Markierungs-Level 1" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:258 #, no-wrap msgid "Spam Tag2 Level" msgstr "Spam Markierungslevel 2" #: ../public/main.php:413 msgid "Special Characters not Allowed in E-mail address" msgstr "In E-Mail-Adressen sind keine Sonderzeichen erlaubt" #: ../views/helpers.php:827 msgid "Surname" msgstr "Nachname" #: ../public/main.php:527 msgid "Surname is not valid" msgstr "Der Nachname ist ungültig" #: ../public/main.php:257 msgid "Syntax not valid or special chars found in domain name" msgstr "" "Die Syntax ist ungültig oder es befinden sich Sonderzeichen im Domainnamen" # type: Content of: #. type: Content of: #: ../plugins/person.xml:36 #, no-wrap msgid "Telephone" msgstr "Telefon" #: ../public/main.php:415 #, php-format msgid "The maximum number of accounts (%s) has been reached or exceeded!" msgstr "" #: ../controllers/helpers.php:84 #, php-format msgid "The maximum number of attribute %s (%s) has been reached or exceeded!" msgstr "" #: ../views/helpers.php:459 #, php-format msgid "" "The maximum number of attribute %s (%s) has been reached or exceeded. " "Attribute has been disabled!" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/ftp.xml:52 ../plugins/mail.xml:154 #, no-wrap msgid "UID" msgstr "UID" # type: Content of: #. type: Content of: #: ../plugins/ftp.xml:59 #, no-wrap msgid "UID Number" msgstr "UID-Nummer" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:183 #, no-wrap msgid "Vacation" msgstr "Abwesenheit" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:205 #, no-wrap msgid "Vacation End" msgstr "Abwesenheit-Ende" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:194 #, no-wrap msgid "Vacation Forward" msgstr "Abwesenheit-Weiterleitung" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:189 #, no-wrap msgid "Vacation Info" msgstr "Abwesenheits-Information" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:199 #, no-wrap msgid "Vacation Start" msgstr "Abwesenheit-Beginn" #: ../views/helpers.php:65 ../views/helpers.php:124 #, php-format msgid "Ver. %s" msgstr "Ver. %s" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:140 #, no-wrap msgid "Virtual Home" msgstr "Virtuelles Heimatverzeichnis" # type: Content of: #. type: Content of: #: ../plugins/alias.xml:58 ../plugins/mail.xml:222 #, no-wrap msgid "Virus Check" msgstr "Virus-Prüfung" #: ../views/helpers.php:1367 msgid "Warning: " msgstr "Warnung" # type: Content of: #. type: Content of: #: ../plugins/proxy.xml:36 #, no-wrap msgid "Web Access" msgstr "Web-Adresse" #: ../views/helpers.php:979 ../views/helpers.php:980 msgid "YES" msgstr "JA" #: ../views/helpers.php:1433 msgid "" "You will be automatically redirected to a new page within a few seconds.
If this does not happen, please follow the link:" msgstr "" "Sie werden in wenigen Sekunden automatisch auf die nächste Seite " "weiterleitet. Falls dies nicht geschieht, folgen Sie bitte diesem Link:" #: ../public/main.php:820 #, php-format msgid "account %s not updated!" msgstr "Account %s wurde nicht aktualisiert!" #: ../views/helpers.php:1433 msgid "click here" msgstr "Hier klicken" #: ../public/main.php:439 msgid "do not activate Forward and Vacation Forward in the same time!" msgstr "Sie dürfen Weiterleitung und Abwesenheitsnachricht nicht kombinieren!" #: ../public/main.php:367 #, php-format msgid "domain %s not added!" msgstr "Domain %s nicht hinzugefügt!" #: ../public/main.php:223 #, php-format msgid "modifying %s" msgstr "" #: ../public/main.php:441 msgid "please, insert a forward destination or disable Forward!" msgstr "" "Bitte ein Weiterleitungsziel einfügen oder die Weiterleitung deaktivieren!" #~ msgid "%s modified" #~ msgstr "%s geändert" #~ msgid "...select an action" #~ msgstr "...eine Aktion auswählen" #~ msgid "Domain (%d)" #~ msgid_plural "Domains (%d)" #~ msgstr[0] "Domain (%d)" #~ msgstr[1] "Domains (%d)" phamm-0.6.5/po/es_ES.po0000644000175300017530000004143412643155515012566 0ustar phamm# Spanish Phamm Translation # Copyright (c) 2004,2008 Alessandro De Zorzi, Mirko Grava # This file is distributed under the same license as the Phamm package. # # FIRST jonhattan , 2008. # msgid "" msgstr "" "Project-Id-Version: phamm 0.5.13\n" "POT-Creation-Date: 2014-12-28 11:01+0100\n" "PO-Revision-Date: 2008-09-22 17:57+0000\n" "Last-Translator: jonhattan \n" "Language-Team: SPANISH \n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: UTF-8Plural-Forms: nplurals=2; plural=n != 1;\n" #: ../public/main.php:658 #, php-format msgid "%s not added!" msgstr "¡%s no añadido!" #: ../views/helpers.php:1058 msgid "...execute a command" msgstr "...ejecuta un comando" #: ../views/helpers.php:809 msgid "Account" msgstr "Cuenta" #: ../public/main.php:652 #, php-format msgid "Account %s successfully added" msgstr "Cuenta %s añadida satisfactoriamente" #: ../views/helpers.php:295 #, php-format msgid "Account %d/" msgid_plural "Accounts %d/" msgstr[0] "" msgstr[1] "" #: ../views/helpers.php:297 #, php-format msgid "Account %d" msgid_plural "Accounts %d" msgstr[0] "" msgstr[1] "" #: ../public/main.php:411 msgid "Account or Alias already exists" msgstr "Cuenta o Alias ya existente" # type: Content of: #. type: Content of: #: ../plugins/alias.xml:44 ../plugins/mail.xml:59 ../plugins/mail.xml:132 #, no-wrap msgid "Active" msgstr "Activo" #: ../views/helpers.php:1215 msgid "Add catch-all address" msgstr "Añadir una dirección cógelo-todo" #: ../views/helpers.php:779 ../views/helpers.php:804 msgid "Add new account" msgstr "Añadir nueva cuenta" #: ../views/helpers.php:399 ../views/helpers.php:707 msgid "Add new domain" msgstr "Añadir nuevo dominio" #: ../views/helpers.php:917 msgid "All" msgstr "Todo" #: ../views/helpers.php:897 msgid "All domains" msgstr "Todos los dominios" #: ../public/main.php:372 #, php-format msgid "An Unexpected Error Occurred during %s Addition!" msgstr "" #: ../public/main.php:113 msgid "Bye!" msgstr "¡Adiós!" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:91 #, no-wrap msgid "Can edit Accounts" msgstr "Puede editar Cuentas" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:66 #, no-wrap msgid "Can edit Anti-Virus" msgstr "Puede editar Anti-Virus" #: ../public/main.php:100 msgid "Can't contact LDAP server" msgstr "No puedo contactar con el servidor LDAP" #: ../public/main.php:471 msgid "Catch all" msgstr "Cógelo-todo" #: ../public/main.php:469 msgid "Catch all active" msgstr "Cógelo-todo activo" #: ../views/helpers.php:1202 #, fuzzy msgid "Catch-all" msgstr "Cógelo-todo" #: ../public/main.php:240 msgid "Changes have not performed" msgstr "Los cambios no se han efectuado" #: ../lib/ldap.php:249 msgid "Code " msgstr "Código " #: ../views/helpers.php:299 msgid "Common Name" msgstr "Nombre Común" #: ../views/helpers.php:724 ../views/helpers.php:821 msgid "Confirm Password" msgstr "Confirma Contraseña" #: ../public/main.php:73 msgid "Connection to LDAP Server Failed!" msgstr "¡Ha Fallado la Conexión al Servidor LDAP!" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:298 #, no-wrap msgid "Creation Date" msgstr "Fecha de Creación" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:72 ../plugins/mail.xml:168 #, no-wrap msgid "Delete" msgstr "Borrar" # type: Content of: #. type: Content of: #: ../plugins/alias.xml:39 #, no-wrap msgid "Destination" msgstr "Destino" #: ../views/helpers.php:712 msgid "Domain" msgstr "Dominio" #: ../public/main.php:362 #, php-format msgid "Domain %s successfully added" msgstr "Dominio %s añadido satisfactoriamente" #: ../views/helpers.php:167 #, php-format msgid "Domain %d" msgid_plural "Domains %d" msgstr[0] "" msgstr[1] "" #: ../public/main.php:457 msgid "Domain property" msgstr "Propiedades del dominio" #: ../views/helpers.php:109 msgid "Enter domain or e-mail" msgstr "" #: ../views/helpers.php:1362 msgid "Error: " msgstr "Error: " #: ../views/helpers.php:1077 msgid "Execute command" msgstr "Ejecuta el comando" # type: Content of: #. type: Content of: #: ../plugins/person.xml:48 #, no-wrap msgid "FAX" msgstr "FAX" # type: Content of: #. type: Content of: #: ../plugins/ftp.xml:71 #, no-wrap msgid "FTP Quota Mb" msgstr "FTP Cuota Mb" # type: Content of: #. type: Content of: #: ../plugins/ftp.xml:65 #, no-wrap msgid "FTP Status" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:211 #, no-wrap msgid "Forward Active" msgstr "Reenvío Activo" # type: Content of: #. type: Content of: #: ../plugins/ftp.xml:39 #, no-wrap msgid "GID number" msgstr "" #: ../public/main.php:102 msgid "Generic Error: " msgstr "Error Genérico: " # type: Content of: #. type: Content of: #: ../plugins/ftp.xml:45 #, no-wrap msgid "Home Directory" msgstr "Directorio Personal" # type: Content of: #. type: Content of: #: ../plugins/person.xml:40 #, no-wrap msgid "Home Phone" msgstr "Teléfono de Casa" #: ../lib/ldap.php:249 msgid "LDAP Error: " msgstr "Error LDAP: " #: ../views/helpers.php:117 msgid "Login" msgstr "" #: ../views/helpers.php:108 msgid "Login Name" msgstr "" #: ../public/main.php:98 msgid "Login Username or Password not valid." msgstr "Usuario o Contraseña no válido." #: ../public/main.php:184 #, php-format msgid "Logout %s" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:162 #, no-wrap msgid "Mail Autoreply" msgstr "Autorespuesta de Correo" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:147 #, no-wrap msgid "Mailbox" msgstr "Buzón" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:218 #, no-wrap msgid "Maildrop" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:45 #, no-wrap msgid "Max Quota" msgstr "Max Cuota" #. type: Content of: #: ../plugins/mail.xml:52 #, no-wrap msgid "Max Smtp Auth" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:38 #, no-wrap msgid "Max number of Alias" msgstr "Número máximo de Alias" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:31 #, no-wrap msgid "Max number of Mail" msgstr "Número máximo de Mail" # type: Content of: #. type: Content of: #: ../plugins/person.xml:44 #, no-wrap msgid "Mobile" msgstr "Móvil" #: ../views/helpers.php:802 msgid "Modify account" msgstr "Modificar cuenta" #: ../views/helpers.php:705 msgid "Modify domain" msgstr "Modificar dominio" #: ../views/helpers.php:979 ../views/helpers.php:980 msgid "NO" msgstr "" #: ../views/helpers.php:824 msgid "Name" msgstr "Nombre" #: ../public/main.php:525 msgid "Name is not valid" msgstr "Nombre no válido" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:177 #, no-wrap msgid "Other Transport" msgstr "Otro Transporte" # type: Content of: #. type: Content of: #: ../plugins/person.xml:52 #, no-wrap msgid "Pager" msgstr "Paginador" #: ../views/helpers.php:113 ../views/helpers.php:114 ../views/helpers.php:721 #: ../views/helpers.php:818 msgid "Password" msgstr "Contraseña" #: ../controllers/helpers.php:159 msgid "Password contains special chars" msgstr "La contraseña contiene caracteres especiales" #: ../controllers/helpers.php:156 msgid "Password too short!" msgstr "¡Contraseña demasiado corta!" #: ../controllers/helpers.php:153 msgid "Passwords don't match!" msgstr "¡Las contraseñas no coinciden!" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:81 #, no-wrap msgid "Postfix Transport" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/proxy.xml:42 #, no-wrap msgid "Proxy Host" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:124 #, no-wrap msgid "Quota" msgstr "Cuota" # type: Content of: #. type: Content of: #: ../plugins/alias.xml:51 ../plugins/mail.xml:117 #, no-wrap msgid "SMTP Auth" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/alias.xml:65 ../plugins/mail.xml:230 #, no-wrap msgid "SPAM Check" msgstr "Chequear SPAM" #: ../public/main.php:437 msgid "SPAM Tags level are not set correctly!" msgstr "¡el nivel de las etiquetas SPAM no se ha establecido correctamente!" #: ../views/helpers.php:1064 msgid "Set" msgstr "Establecer" #: ../views/helpers.php:117 msgid "Sign in" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:238 #, no-wrap msgid "Spam Kill Level" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:278 #, no-wrap msgid "Spam Tag Level" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:258 #, no-wrap msgid "Spam Tag2 Level" msgstr "" #: ../public/main.php:413 msgid "Special Characters not Allowed in E-mail address" msgstr "No se permiten caracteres especiales en la dirección de correo" #: ../views/helpers.php:827 msgid "Surname" msgstr "Apellidos" #: ../public/main.php:527 msgid "Surname is not valid" msgstr "Apellidos no válidos" #: ../public/main.php:257 msgid "Syntax not valid or special chars found in domain name" msgstr "" "La sintaxis no es válida, o se han encontrado caracteres especiales en el " "nombre del dominio" # type: Content of: #. type: Content of: #: ../plugins/person.xml:36 #, no-wrap msgid "Telephone" msgstr "Teléfono" #: ../public/main.php:415 #, php-format msgid "The maximum number of accounts (%s) has been reached or exceeded!" msgstr "" #: ../controllers/helpers.php:84 #, php-format msgid "The maximum number of attribute %s (%s) has been reached or exceeded!" msgstr "" #: ../views/helpers.php:459 #, php-format msgid "" "The maximum number of attribute %s (%s) has been reached or exceeded. " "Attribute has been disabled!" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/ftp.xml:52 ../plugins/mail.xml:154 #, no-wrap msgid "UID" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/ftp.xml:59 #, no-wrap msgid "UID Number" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:183 #, no-wrap msgid "Vacation" msgstr "Vacaciones" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:205 #, no-wrap msgid "Vacation End" msgstr "Fin de Vacaciones" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:194 #, no-wrap msgid "Vacation Forward" msgstr "Reenvío de Vacaciones" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:189 #, no-wrap msgid "Vacation Info" msgstr "Información de Vacaciones" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:199 #, no-wrap msgid "Vacation Start" msgstr "Inicio de Vacaciones" #: ../views/helpers.php:65 ../views/helpers.php:124 #, php-format msgid "Ver. %s" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:140 #, no-wrap msgid "Virtual Home" msgstr "Home Virtual" # type: Content of: #. type: Content of: #: ../plugins/alias.xml:58 ../plugins/mail.xml:222 #, no-wrap msgid "Virus Check" msgstr "Chequeo de Virus" #: ../views/helpers.php:1367 msgid "Warning: " msgstr "Alerta: " # type: Content of: #. type: Content of: #: ../plugins/proxy.xml:36 #, no-wrap msgid "Web Access" msgstr "Acceso Web" #: ../views/helpers.php:979 ../views/helpers.php:980 msgid "YES" msgstr "SÍ" #: ../views/helpers.php:1433 msgid "" "You will be automatically redirected to a new page within a few seconds.
If this does not happen, please follow the link:" msgstr "" "Serás redirigido a una nueva página en los próximos segundos.
Si esto " "no ocurre por favor sigue el enlace:" #: ../public/main.php:820 #, php-format msgid "account %s not updated!" msgstr "¡cuenta %s no actualizada!" #: ../views/helpers.php:1433 msgid "click here" msgstr "haz click aquí" #: ../public/main.php:439 msgid "do not activate Forward and Vacation Forward in the same time!" msgstr "¡no actives Reenvío y Reenvío de Vacaciones al mismo tiempo!" #: ../public/main.php:367 #, php-format msgid "domain %s not added!" msgstr "¡dominio %s no añadido!" #: ../public/main.php:223 #, php-format msgid "modifying %s" msgstr "" #: ../public/main.php:441 msgid "please, insert a forward destination or disable Forward!" msgstr "¡por favor, inserta un destino para el reenvío o desactiva el Reenvío!" #~ msgid "%s modified" #~ msgstr "%s modificado" #~ msgid "...select an action" #~ msgstr "...selecciona una acción" #~ msgid "Account (%d)" #~ msgid_plural "Accounts (%d)" #~ msgstr[0] "Cuenta (%d)" #~ msgstr[1] "Cuentas (%d)" #~ msgid "Domain (%d)" #~ msgid_plural "Domains (%d)" #~ msgstr[0] "Dominio (%d)" #~ msgstr[1] "Dominios (%d)" phamm-0.6.5/po/fr_FR.po0000644000175300017530000004133512643155515012566 0ustar phamm# French Phamm Translation # Copyright (C) 2008 Aldo Reset. # This file is distributed under the same license as the phamm package. # Aldo Reset , 2008. # # msgid "" msgstr "" "Project-Id-Version: phamm 0.5.14\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-12-28 11:01+0100\n" "PO-Revision-Date: 2009-07-11 19:30+0100\n" "Last-Translator: Aldo Reset \n" "Language-Team: \n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../public/main.php:658 #, php-format msgid "%s not added!" msgstr "%s non ajouté" #: ../views/helpers.php:1058 msgid "...execute a command" msgstr "...execute une commande" #: ../views/helpers.php:809 msgid "Account" msgstr "Compte" #: ../public/main.php:652 #, php-format msgid "Account %s successfully added" msgstr "Compte %s ajouté avec succès" #: ../views/helpers.php:295 #, php-format msgid "Account %d/" msgid_plural "Accounts %d/" msgstr[0] "" msgstr[1] "" #: ../views/helpers.php:297 #, php-format msgid "Account %d" msgid_plural "Accounts %d" msgstr[0] "" msgstr[1] "" #: ../public/main.php:411 msgid "Account or Alias already exists" msgstr "Le compte ou l'alias existe déjà" # type: Content of: #. type: Content of: #: ../plugins/alias.xml:44 ../plugins/mail.xml:59 ../plugins/mail.xml:132 #, no-wrap msgid "Active" msgstr "Actif" #: ../views/helpers.php:1215 msgid "Add catch-all address" msgstr "Ajouter un CatchAll" #: ../views/helpers.php:779 ../views/helpers.php:804 msgid "Add new account" msgstr "Créer un Compte" #: ../views/helpers.php:399 ../views/helpers.php:707 msgid "Add new domain" msgstr "Créer un domaine" #: ../views/helpers.php:917 msgid "All" msgstr "Tous" #: ../views/helpers.php:897 msgid "All domains" msgstr "Tous les domaines" #: ../public/main.php:372 #, php-format msgid "An Unexpected Error Occurred during %s Addition!" msgstr "Une erreur inattendue est survenue lors de l'ajout de %s!" #: ../public/main.php:113 msgid "Bye!" msgstr "Au Revoir !" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:91 #, no-wrap msgid "Can edit Accounts" msgstr "Peut Editer Comptes" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:66 #, no-wrap msgid "Can edit Anti-Virus" msgstr "Peut Editer Anti-Virus" #: ../public/main.php:100 msgid "Can't contact LDAP server" msgstr "Impossible de joindre le serveur Ldap" #: ../public/main.php:471 msgid "Catch all" msgstr "CatchAll" #: ../public/main.php:469 msgid "Catch all active" msgstr "CatchAll Actif" #: ../views/helpers.php:1202 msgid "Catch-all" msgstr "CatchAll" #: ../public/main.php:240 msgid "Changes have not performed" msgstr "Les modifications n'ont pu être effectuées" #: ../lib/ldap.php:249 msgid "Code " msgstr "Code " #: ../views/helpers.php:299 msgid "Common Name" msgstr "Nom Commun" #: ../views/helpers.php:724 ../views/helpers.php:821 msgid "Confirm Password" msgstr "Confirmer le mot de Passe" #: ../public/main.php:73 msgid "Connection to LDAP Server Failed!" msgstr "La Connection au serveur Ldap a échoué!" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:298 #, no-wrap msgid "Creation Date" msgstr "Date de Création" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:72 ../plugins/mail.xml:168 #, no-wrap msgid "Delete" msgstr "Supprimer" # type: Content of: #. type: Content of: #: ../plugins/alias.xml:39 #, no-wrap msgid "Destination" msgstr "Destination" #: ../views/helpers.php:712 msgid "Domain" msgstr "Domaine" #: ../public/main.php:362 #, php-format msgid "Domain %s successfully added" msgstr "Domaine %s crée avec succès" #: ../views/helpers.php:167 #, php-format msgid "Domain %d" msgid_plural "Domains %d" msgstr[0] "" msgstr[1] "" #: ../public/main.php:457 msgid "Domain property" msgstr "Propriété du Domaine" #: ../views/helpers.php:109 msgid "Enter domain or e-mail" msgstr "" #: ../views/helpers.php:1362 msgid "Error: " msgstr "Erreur:" #: ../views/helpers.php:1077 msgid "Execute command" msgstr "Execute commande" # type: Content of: #. type: Content of: #: ../plugins/person.xml:48 #, no-wrap msgid "FAX" msgstr "FAX" # type: Content of: #. type: Content of: #: ../plugins/ftp.xml:71 #, no-wrap msgid "FTP Quota Mb" msgstr "Quota FTP en Mo" # type: Content of: #. type: Content of: #: ../plugins/ftp.xml:65 #, no-wrap msgid "FTP Status" msgstr "FTP Status" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:211 #, no-wrap msgid "Forward Active" msgstr "Forward Actif" # type: Content of: #. type: Content of: #: ../plugins/ftp.xml:39 #, no-wrap msgid "GID number" msgstr "Numéro GID" #: ../public/main.php:102 msgid "Generic Error: " msgstr "Erreur Général: " # type: Content of: #. type: Content of: #: ../plugins/ftp.xml:45 #, no-wrap msgid "Home Directory" msgstr "Répertoire Racine" # type: Content of: #. type: Content of: #: ../plugins/person.xml:40 #, no-wrap msgid "Home Phone" msgstr "Téléphone" #: ../lib/ldap.php:249 msgid "LDAP Error: " msgstr "Erreur LDAP" #: ../views/helpers.php:117 msgid "Login" msgstr "Login" #: ../views/helpers.php:108 msgid "Login Name" msgstr "Nom Login" #: ../public/main.php:98 msgid "Login Username or Password not valid." msgstr "Nom utilisateur ou mot de passe non valide" #: ../public/main.php:184 #, php-format msgid "Logout %s" msgstr "Logout %s" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:162 #, no-wrap msgid "Mail Autoreply" msgstr "Mail Répondeur" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:147 #, no-wrap msgid "Mailbox" msgstr "Mailbox" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:218 #, no-wrap msgid "Maildrop" msgstr "Maildrop" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:45 #, no-wrap msgid "Max Quota" msgstr "Quota Maximum" #. type: Content of: #: ../plugins/mail.xml:52 #, no-wrap msgid "Max Smtp Auth" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:38 #, no-wrap msgid "Max number of Alias" msgstr "Nombre Max d'Alias" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:31 #, no-wrap msgid "Max number of Mail" msgstr "Nombre Max de Mail" # type: Content of: #. type: Content of: #: ../plugins/person.xml:44 #, no-wrap msgid "Mobile" msgstr "Portable" #: ../views/helpers.php:802 msgid "Modify account" msgstr "Modifier compte" #: ../views/helpers.php:705 msgid "Modify domain" msgstr "Modifier domaine" #: ../views/helpers.php:979 ../views/helpers.php:980 msgid "NO" msgstr "NON" #: ../views/helpers.php:824 msgid "Name" msgstr "Nom" #: ../public/main.php:525 msgid "Name is not valid" msgstr "Nom pas valide" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:177 #, no-wrap msgid "Other Transport" msgstr "Autre Transport" # type: Content of: #. type: Content of: #: ../plugins/person.xml:52 #, no-wrap msgid "Pager" msgstr "Pager" #: ../views/helpers.php:113 ../views/helpers.php:114 ../views/helpers.php:721 #: ../views/helpers.php:818 msgid "Password" msgstr "Mot de Passe" #: ../controllers/helpers.php:159 msgid "Password contains special chars" msgstr "Mot de passe contient des caractères spéciaux" #: ../controllers/helpers.php:156 msgid "Password too short!" msgstr "Mot de passe trop court!" #: ../controllers/helpers.php:153 msgid "Passwords don't match!" msgstr "Les Mot de passe ne correspondent pas" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:81 #, no-wrap msgid "Postfix Transport" msgstr "Transport Postfix" # type: Content of: #. type: Content of: #: ../plugins/proxy.xml:42 #, no-wrap msgid "Proxy Host" msgstr "Proxy" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:124 #, no-wrap msgid "Quota" msgstr "Quota" # type: Content of: #. type: Content of: #: ../plugins/alias.xml:51 ../plugins/mail.xml:117 #, no-wrap msgid "SMTP Auth" msgstr "SMTP Auth" # type: Content of: #. type: Content of: #: ../plugins/alias.xml:65 ../plugins/mail.xml:230 #, no-wrap msgid "SPAM Check" msgstr "Vérification SPAM" #: ../public/main.php:437 msgid "SPAM Tags level are not set correctly!" msgstr "Les Tags du SPAM ne sont pas corrects!" #: ../views/helpers.php:1064 msgid "Set" msgstr "Initialiser" #: ../views/helpers.php:117 msgid "Sign in" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:238 #, no-wrap msgid "Spam Kill Level" msgstr "Niveau suprimer SPAM" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:278 #, no-wrap msgid "Spam Tag Level" msgstr "Niveau du TAG de SPAM" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:258 #, no-wrap msgid "Spam Tag2 Level" msgstr "Niveau de TAG2 du SPAM" #: ../public/main.php:413 msgid "Special Characters not Allowed in E-mail address" msgstr "Les Caractères spéciaux ne sont pas autorisés dans une adresse mail" #: ../views/helpers.php:827 msgid "Surname" msgstr "Prénom" #: ../public/main.php:527 msgid "Surname is not valid" msgstr "Prénom non valide" #: ../public/main.php:257 msgid "Syntax not valid or special chars found in domain name" msgstr "Syntax invalide ou caractères spéciaux trouvés dans le nom du domaine" # type: Content of: #. type: Content of: #: ../plugins/person.xml:36 #, no-wrap msgid "Telephone" msgstr "Téléphone" #: ../public/main.php:415 #, php-format msgid "The maximum number of accounts (%s) has been reached or exceeded!" msgstr "" #: ../controllers/helpers.php:84 #, php-format msgid "The maximum number of attribute %s (%s) has been reached or exceeded!" msgstr "" #: ../views/helpers.php:459 #, php-format msgid "" "The maximum number of attribute %s (%s) has been reached or exceeded. " "Attribute has been disabled!" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/ftp.xml:52 ../plugins/mail.xml:154 #, no-wrap msgid "UID" msgstr "UID" # type: Content of: #. type: Content of: #: ../plugins/ftp.xml:59 #, no-wrap msgid "UID Number" msgstr "Nombre UID" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:183 #, no-wrap msgid "Vacation" msgstr "Répondeur" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:205 #, no-wrap msgid "Vacation End" msgstr "Fin Répondeur" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:194 #, no-wrap msgid "Vacation Forward" msgstr "Renvoi Répondeur" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:189 #, no-wrap msgid "Vacation Info" msgstr "Info Répondeur" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:199 #, no-wrap msgid "Vacation Start" msgstr "Début Répondeur" #: ../views/helpers.php:65 ../views/helpers.php:124 #, php-format msgid "Ver. %s" msgstr "Version %s" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:140 #, no-wrap msgid "Virtual Home" msgstr "Répertoire virtuel" # type: Content of: #. type: Content of: #: ../plugins/alias.xml:58 ../plugins/mail.xml:222 #, no-wrap msgid "Virus Check" msgstr "Vérifier Virus" #: ../views/helpers.php:1367 msgid "Warning: " msgstr "Attention:" # type: Content of: #. type: Content of: #: ../plugins/proxy.xml:36 #, no-wrap msgid "Web Access" msgstr "Accès Web" #: ../views/helpers.php:979 ../views/helpers.php:980 msgid "YES" msgstr "OUI" #: ../views/helpers.php:1433 msgid "" "You will be automatically redirected to a new page within a few seconds.
If this does not happen, please follow the link:" msgstr "" "Vous allez être rédirigé automatiquement vers une nouvelle page dans " "quelques secondes.
si cela n'arrivait pas, suivez ce lien:" #: ../public/main.php:820 #, php-format msgid "account %s not updated!" msgstr "compte %s non" #: ../views/helpers.php:1433 msgid "click here" msgstr "Cliquez Ici" #: ../public/main.php:439 msgid "do not activate Forward and Vacation Forward in the same time!" msgstr "N'ctivez pas le Dorward en le Renvoi Répondeur en même temps!" #: ../public/main.php:367 #, php-format msgid "domain %s not added!" msgstr "domain %s non ajouté!" #: ../public/main.php:223 #, php-format msgid "modifying %s" msgstr "" #: ../public/main.php:441 msgid "please, insert a forward destination or disable Forward!" msgstr "Inserer une destination ou desactiver le renvoi!" #~ msgid "%s modified" #~ msgstr "%s modifié" #~ msgid "Account (%d)" #~ msgid_plural "Accounts (%d)" #~ msgstr[0] "Compte (%d)" #~ msgstr[1] "Comptes (%d)" #~ msgid "Domain (%d)" #~ msgid_plural "Domains (%d)" #~ msgstr[0] "Domaine (%d)" #~ msgstr[1] "Domaines (%d)" phamm-0.6.5/po/hu_HU.po0000644000175300017530000004200212643155515012570 0ustar phamm# Hungarian Phamm Translation # Copyright (c) 2004,2009 Alessandro De Zorzi, Mirko Grava # This file is distributed under the same license as the Phamm package. # Zsolt Jonas # msgid "" msgstr "" "Project-Id-Version: phamm 0.5.14\n" "POT-Creation-Date: 2014-12-28 11:01+0100\n" "PO-Revision-Date: 2009-02-01 19:03+0100\n" "Last-Translator: Zsolt Jonas \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 7bit\n" #: ../public/main.php:658 #, php-format msgid "%s not added!" msgstr "%s nincs hozzáadva!" #: ../views/helpers.php:1058 msgid "...execute a command" msgstr "...parancs futtatása" #: ../views/helpers.php:809 msgid "Account" msgstr "Postafiók" #: ../public/main.php:652 #, php-format msgid "Account %s successfully added" msgstr "%s postafiók sikeresen hozzáadva" #: ../views/helpers.php:295 #, php-format msgid "Account %d/" msgid_plural "Accounts %d/" msgstr[0] "" msgstr[1] "" #: ../views/helpers.php:297 #, php-format msgid "Account %d" msgid_plural "Accounts %d" msgstr[0] "" msgstr[1] "" #: ../public/main.php:411 msgid "Account or Alias already exists" msgstr "Postafiók vagy álnév (alias) már létezik" # type: Content of: #. type: Content of: #: ../plugins/alias.xml:44 ../plugins/mail.xml:59 ../plugins/mail.xml:132 #, no-wrap msgid "Active" msgstr "Aktív" #: ../views/helpers.php:1215 msgid "Add catch-all address" msgstr "Gyűjtő (catch-all) postafiók hozzáadása" #: ../views/helpers.php:779 ../views/helpers.php:804 msgid "Add new account" msgstr "Új postafiók hozzáadása" #: ../views/helpers.php:399 ../views/helpers.php:707 msgid "Add new domain" msgstr "Új domain hozzáadása" #: ../views/helpers.php:917 msgid "All" msgstr "Mind" #: ../views/helpers.php:897 msgid "All domains" msgstr "Összes domain" #: ../public/main.php:372 #, php-format msgid "An Unexpected Error Occurred during %s Addition!" msgstr "" #: ../public/main.php:113 msgid "Bye!" msgstr "Viszlát!" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:91 #, no-wrap msgid "Can edit Accounts" msgstr "Szerkeszthető postafiókok" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:66 #, no-wrap msgid "Can edit Anti-Virus" msgstr "Módosítható az Anti-Vírus állapota" #: ../public/main.php:100 msgid "Can't contact LDAP server" msgstr "Nem lehet kapcsolódni az LDAP kiszolgálóhoz" #: ../public/main.php:471 msgid "Catch all" msgstr "Gyűjtő postafiók" #: ../public/main.php:469 msgid "Catch all active" msgstr "Gyűjtó postafiók aktív" #: ../views/helpers.php:1202 msgid "Catch-all" msgstr "Gyűjtő postafiók címe" #: ../public/main.php:240 msgid "Changes have not performed" msgstr "A változások végrehajtása meghiusúlt" #: ../lib/ldap.php:249 msgid "Code " msgstr "Kód " #: ../views/helpers.php:299 msgid "Common Name" msgstr "Megjelenített név" #: ../views/helpers.php:724 ../views/helpers.php:821 msgid "Confirm Password" msgstr "Jelszó megerősítése" #: ../public/main.php:73 msgid "Connection to LDAP Server Failed!" msgstr "Hiba az LDAP kiszolgálóhoz történő kapcsolódása közben!" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:298 #, no-wrap msgid "Creation Date" msgstr "Létrehozva" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:72 ../plugins/mail.xml:168 #, no-wrap msgid "Delete" msgstr "Törlés" # type: Content of: #. type: Content of: #: ../plugins/alias.xml:39 #, no-wrap msgid "Destination" msgstr "Cél" #: ../views/helpers.php:712 msgid "Domain" msgstr "Domain" #: ../public/main.php:362 #, php-format msgid "Domain %s successfully added" msgstr "%s domain sikeresen hozzáadva" #: ../views/helpers.php:167 #, php-format msgid "Domain %d" msgid_plural "Domains %d" msgstr[0] "" msgstr[1] "" #: ../public/main.php:457 msgid "Domain property" msgstr "Domain beállítás" #: ../views/helpers.php:109 msgid "Enter domain or e-mail" msgstr "" #: ../views/helpers.php:1362 msgid "Error: " msgstr "Hiba: " #: ../views/helpers.php:1077 msgid "Execute command" msgstr "Parancs futtatása" # type: Content of: #. type: Content of: #: ../plugins/person.xml:48 #, no-wrap msgid "FAX" msgstr "FAX" # type: Content of: #. type: Content of: #: ../plugins/ftp.xml:71 #, no-wrap msgid "FTP Quota Mb" msgstr "FTP Kvóta (MB)" # type: Content of: #. type: Content of: #: ../plugins/ftp.xml:65 #, no-wrap msgid "FTP Status" msgstr "FTP állapot" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:211 #, no-wrap msgid "Forward Active" msgstr "Továbbítás aktív" # type: Content of: #. type: Content of: #: ../plugins/ftp.xml:39 #, no-wrap msgid "GID number" msgstr "GID szám" #: ../public/main.php:102 msgid "Generic Error: " msgstr "Általános hiba: " # type: Content of: #. type: Content of: #: ../plugins/ftp.xml:45 #, no-wrap msgid "Home Directory" msgstr "Home könyvtár" # type: Content of: #. type: Content of: #: ../plugins/person.xml:40 #, no-wrap msgid "Home Phone" msgstr "Otthoni telefonszám" #: ../lib/ldap.php:249 msgid "LDAP Error: " msgstr "LDAP hiba: " #: ../views/helpers.php:117 msgid "Login" msgstr "Belépés" #: ../views/helpers.php:108 msgid "Login Name" msgstr "Belépési azonosító" #: ../public/main.php:98 msgid "Login Username or Password not valid." msgstr "Hibás belépési azonosító vagy jelszó." #: ../public/main.php:184 #, php-format msgid "Logout %s" msgstr "Kilépés (%s)" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:162 #, no-wrap msgid "Mail Autoreply" msgstr "Automatikus válaszüzenet" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:147 #, no-wrap msgid "Mailbox" msgstr "Postaláda" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:218 #, no-wrap msgid "Maildrop" msgstr "Levél kézbesítő" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:45 #, no-wrap msgid "Max Quota" msgstr "Max kvóta" #. type: Content of: #: ../plugins/mail.xml:52 #, no-wrap msgid "Max Smtp Auth" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:38 #, no-wrap msgid "Max number of Alias" msgstr "Max álnevek (alias) száma" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:31 #, no-wrap msgid "Max number of Mail" msgstr "Max postafiókok száma" # type: Content of: #. type: Content of: #: ../plugins/person.xml:44 #, no-wrap msgid "Mobile" msgstr "Mobil" #: ../views/helpers.php:802 msgid "Modify account" msgstr "Postafiók módosítása" #: ../views/helpers.php:705 msgid "Modify domain" msgstr "Domain módosítása" #: ../views/helpers.php:979 ../views/helpers.php:980 msgid "NO" msgstr "NEM" #: ../views/helpers.php:824 msgid "Name" msgstr "Keresztnév" #: ../public/main.php:525 msgid "Name is not valid" msgstr "Hibás keresztnév" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:177 #, no-wrap msgid "Other Transport" msgstr "Más továbbító (transport)" # type: Content of: #. type: Content of: #: ../plugins/person.xml:52 #, no-wrap msgid "Pager" msgstr "Személyhívó" #: ../views/helpers.php:113 ../views/helpers.php:114 ../views/helpers.php:721 #: ../views/helpers.php:818 msgid "Password" msgstr "Jelszó" #: ../controllers/helpers.php:159 msgid "Password contains special chars" msgstr "A jelszó speciális karaktereket is tartalmaz" #: ../controllers/helpers.php:156 msgid "Password too short!" msgstr "A jelszó túl rövid!" #: ../controllers/helpers.php:153 msgid "Passwords don't match!" msgstr "A beírt jelszavak nem egyeznek!" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:81 #, no-wrap msgid "Postfix Transport" msgstr "Postfix továbbító (transport)" # type: Content of: #. type: Content of: #: ../plugins/proxy.xml:42 #, no-wrap msgid "Proxy Host" msgstr "Proxy kiszolgáló" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:124 #, no-wrap msgid "Quota" msgstr "Kvóta" # type: Content of: #. type: Content of: #: ../plugins/alias.xml:51 ../plugins/mail.xml:117 #, no-wrap msgid "SMTP Auth" msgstr "SMTP azonosítás" # type: Content of: #. type: Content of: #: ../plugins/alias.xml:65 ../plugins/mail.xml:230 #, no-wrap msgid "SPAM Check" msgstr "SPAM szűrés" #: ../public/main.php:437 msgid "SPAM Tags level are not set correctly!" msgstr "SPAM jelölési szint nem helyes!" #: ../views/helpers.php:1064 msgid "Set" msgstr "Beállít" #: ../views/helpers.php:117 msgid "Sign in" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:238 #, no-wrap msgid "Spam Kill Level" msgstr "Spam eldobási szint (Kill)" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:278 #, no-wrap msgid "Spam Tag Level" msgstr "Spam jelölési szint (Tag)" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:258 #, no-wrap msgid "Spam Tag2 Level" msgstr "Spam megjelölési szint (Tag2)" #: ../public/main.php:413 msgid "Special Characters not Allowed in E-mail address" msgstr "Speciális karakterek nem szerepelhetnek az e-mail címben" #: ../views/helpers.php:827 msgid "Surname" msgstr "Vezetéknév" #: ../public/main.php:527 msgid "Surname is not valid" msgstr "Hibás vezetéknév" #: ../public/main.php:257 msgid "Syntax not valid or special chars found in domain name" msgstr "Hibás vagy nem megengedett karaktereket tartalmazó domain név" # type: Content of: #. type: Content of: #: ../plugins/person.xml:36 #, no-wrap msgid "Telephone" msgstr "Telefon" #: ../public/main.php:415 #, php-format msgid "The maximum number of accounts (%s) has been reached or exceeded!" msgstr "" #: ../controllers/helpers.php:84 #, php-format msgid "The maximum number of attribute %s (%s) has been reached or exceeded!" msgstr "" #: ../views/helpers.php:459 #, php-format msgid "" "The maximum number of attribute %s (%s) has been reached or exceeded. " "Attribute has been disabled!" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/ftp.xml:52 ../plugins/mail.xml:154 #, no-wrap msgid "UID" msgstr "UID" # type: Content of: #. type: Content of: #: ../plugins/ftp.xml:59 #, no-wrap msgid "UID Number" msgstr "UID szám" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:183 #, no-wrap msgid "Vacation" msgstr "Távollét" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:205 #, no-wrap msgid "Vacation End" msgstr "Távollét vége" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:194 #, no-wrap msgid "Vacation Forward" msgstr "Távollét alatti továbbítás" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:189 #, no-wrap msgid "Vacation Info" msgstr "Távolléti üzenet" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:199 #, no-wrap msgid "Vacation Start" msgstr "Távollét kezdete" #: ../views/helpers.php:65 ../views/helpers.php:124 #, php-format msgid "Ver. %s" msgstr "Változat: %s" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:140 #, no-wrap msgid "Virtual Home" msgstr "Postafiókok könyvtára" # type: Content of: #. type: Content of: #: ../plugins/alias.xml:58 ../plugins/mail.xml:222 #, no-wrap msgid "Virus Check" msgstr "Vírus ellenőrzés" #: ../views/helpers.php:1367 msgid "Warning: " msgstr "Figyelem: " # type: Content of: #. type: Content of: #: ../plugins/proxy.xml:36 #, no-wrap msgid "Web Access" msgstr "Web hozzáférés" #: ../views/helpers.php:979 ../views/helpers.php:980 msgid "YES" msgstr "IGEN" #: ../views/helpers.php:1433 msgid "" "You will be automatically redirected to a new page within a few seconds.
If this does not happen, please follow the link:" msgstr "" "Pár másodperc múlva átirányítunk egy új oldalra
Ha ez nem történik meg, " "akkor " #: ../public/main.php:820 #, php-format msgid "account %s not updated!" msgstr "%s postafiók nincs frissítve!" #: ../views/helpers.php:1433 msgid "click here" msgstr "kattints ide" #: ../public/main.php:439 msgid "do not activate Forward and Vacation Forward in the same time!" msgstr "" "ne engedélyezd egyszerre a Továbbítás és a Távollét Alatti Továbbítás " "funkciót" #: ../public/main.php:367 #, php-format msgid "domain %s not added!" msgstr "%s domain nincs hozzáadva!" #: ../public/main.php:223 #, php-format msgid "modifying %s" msgstr "" #: ../public/main.php:441 msgid "please, insert a forward destination or disable Forward!" msgstr "kérlek, állíts be továbbítási címet vagy kapcsold ki a Továbbítást!" #~ msgid "%s modified" #~ msgstr "%s módosítva" #~ msgid "Account (%d)" #~ msgid_plural "Accounts (%d)" #~ msgstr[0] "Postafiók (%d)" #~ msgstr[1] "Postafiókok (%d)" #~ msgid "Domain (%d)" #~ msgid_plural "Domains (%d)" #~ msgstr[0] "Domain (%d)" #~ msgstr[1] "Domain-ek (%d)" phamm-0.6.5/po/it_IT.po0000644000175300017530000004277312643155515012607 0ustar phamm# Italian Phamm Translation # Copyright (c) 2004,2008 Alessandro De Zorzi, Mirko Grava # This file is distributed under the same license as the Phamm package. # # Alessandro De Zorzi , 2008. # msgid "" msgstr "" "Project-Id-Version: phamm 0.6.4\n" "POT-Creation-Date: 2014-12-28 11:13+0100\n" "PO-Revision-Date: 2008-09-07 18:38+0300\n" "Last-Translator: Alessandro De Zorzi \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" #: ../public/main.php:658 #, php-format msgid "%s not added!" msgstr "%n non aggiunto!" #: ../views/helpers.php:1058 msgid "...execute a command" msgstr "...esegui comando" #: ../views/helpers.php:809 msgid "Account" msgstr "Account" #: ../public/main.php:652 #, php-format msgid "Account %s successfully added" msgstr "Account %s aggiunto correttamente" #: ../views/helpers.php:295 #, php-format msgid "Account %d/" msgid_plural "Accounts %d/" msgstr[0] "Account %d/" msgstr[1] "Account %d/" #: ../views/helpers.php:297 #, php-format msgid "Account %d" msgid_plural "Accounts %d" msgstr[0] "Account %d" msgstr[1] "Account %d" #: ../public/main.php:411 msgid "Account or Alias already exists" msgstr "Account o alias esistente" # type: Content of: #. type: Content of: #: ../plugins/alias.xml:44 ../plugins/mail.xml:59 ../plugins/mail.xml:132 #, no-wrap msgid "Active" msgstr "Attivo" #: ../views/helpers.php:1215 msgid "Add catch-all address" msgstr "Aggiungi indirizzo catch-all" #: ../views/helpers.php:779 ../views/helpers.php:804 msgid "Add new account" msgstr "Aggiungi un nuovo account" #: ../views/helpers.php:399 ../views/helpers.php:707 msgid "Add new domain" msgstr "Aggiungi un nuovo dominio" #: ../views/helpers.php:917 msgid "All" msgstr "Tutti" #: ../views/helpers.php:897 msgid "All domains" msgstr "Tutti i domini" #: ../public/main.php:372 #, php-format msgid "An Unexpected Error Occurred during %s Addition!" msgstr "Si è verificato un errore inatteso durante l'aggiunta di %s!" #: ../public/main.php:113 msgid "Bye!" msgstr "Ciao!" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:91 #, no-wrap msgid "Can edit Accounts" msgstr "Può modificare gli account" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:66 #, no-wrap msgid "Can edit Anti-Virus" msgstr "Può modificare Anti-Virus" #: ../public/main.php:100 msgid "Can't contact LDAP server" msgstr "Impossibile contattare il server LDAP" #: ../public/main.php:471 msgid "Catch all" msgstr "Catch all" #: ../public/main.php:469 msgid "Catch all active" msgstr "Catch all attivo" #: ../views/helpers.php:1202 msgid "Catch-all" msgstr "Catch all" #: ../public/main.php:240 msgid "Changes have not performed" msgstr "Modifiche non effettuate" #: ../lib/ldap.php:249 msgid "Code " msgstr "Codice " # type: Content of: #: ../views/helpers.php:299 msgid "Common Name" msgstr "Nome" #: ../views/helpers.php:724 ../views/helpers.php:821 msgid "Confirm Password" msgstr "Conferma Password" #: ../public/main.php:73 msgid "Connection to LDAP Server Failed!" msgstr "Connessione al server LDAP fallita!" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:298 #, no-wrap msgid "Creation Date" msgstr "Data di creazione" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:72 ../plugins/mail.xml:168 #, no-wrap msgid "Delete" msgstr "Elimina" # type: Content of: #. type: Content of: #: ../plugins/alias.xml:39 #, no-wrap msgid "Destination" msgstr "Destinazione" #: ../views/helpers.php:712 msgid "Domain" msgstr "Dominio" #: ../public/main.php:362 #, php-format msgid "Domain %s successfully added" msgstr "Dominio %s aggiunto correttamente" #: ../views/helpers.php:167 #, php-format msgid "Domain %d" msgid_plural "Domains %d" msgstr[0] "Dominio %d" msgstr[1] "Domini %d" #: ../public/main.php:457 msgid "Domain property" msgstr "Proprietà dominio" #: ../views/helpers.php:109 msgid "Enter domain or e-mail" msgstr "Inserire dominio o e-mail" #: ../views/helpers.php:1362 msgid "Error: " msgstr "Errore: " #: ../views/helpers.php:1077 msgid "Execute command" msgstr "Esegui comando" # type: Content of: #. type: Content of: #: ../plugins/person.xml:48 #, no-wrap msgid "FAX" msgstr "FAX" # type: Content of: #. type: Content of: #: ../plugins/ftp.xml:71 #, no-wrap msgid "FTP Quota Mb" msgstr "FTP quota Mb" # type: Content of: #. type: Content of: #: ../plugins/ftp.xml:65 #, no-wrap msgid "FTP Status" msgstr "Stato FTP" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:211 #, no-wrap msgid "Forward Active" msgstr "Forward attivo" # type: Content of: #. type: Content of: #: ../plugins/ftp.xml:39 #, no-wrap msgid "GID number" msgstr "Numero GID" #: ../public/main.php:102 msgid "Generic Error: " msgstr "Errore generico: " # type: Content of: #. type: Content of: #: ../plugins/ftp.xml:45 #, no-wrap msgid "Home Directory" msgstr "Home Directory" # type: Content of: #. type: Content of: #: ../plugins/person.xml:40 #, no-wrap msgid "Home Phone" msgstr "Telefono (casa)" #: ../lib/ldap.php:249 msgid "LDAP Error: " msgstr "Errore LDAP: " #: ../views/helpers.php:117 msgid "Login" msgstr "Accedi" # type: Content of: #: ../views/helpers.php:108 msgid "Login Name" msgstr "Nome utente" #: ../public/main.php:98 msgid "Login Username or Password not valid." msgstr "Nome utente o password errata." #: ../public/main.php:184 #, php-format msgid "Logout %s" msgstr "Esci %s" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:162 #, no-wrap msgid "Mail Autoreply" msgstr "Mail Autoreply" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:147 #, no-wrap msgid "Mailbox" msgstr "Mailbox" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:218 #, no-wrap msgid "Maildrop" msgstr "Destinazione" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:45 #, no-wrap msgid "Max Quota" msgstr "Max Quota" #. type: Content of: #: ../plugins/mail.xml:52 #, no-wrap msgid "Max Smtp Auth" msgstr "Numero massimo Smtp Auth" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:38 #, no-wrap msgid "Max number of Alias" msgstr "Numero massimo alias" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:31 #, no-wrap msgid "Max number of Mail" msgstr "Numero massimo e-mail" # type: Content of: #. type: Content of: #: ../plugins/person.xml:44 #, no-wrap msgid "Mobile" msgstr "Telefonino" #: ../views/helpers.php:802 msgid "Modify account" msgstr "Modifica account" #: ../views/helpers.php:705 msgid "Modify domain" msgstr "Modifica dominio" #: ../views/helpers.php:979 ../views/helpers.php:980 msgid "NO" msgstr "NO" #: ../views/helpers.php:824 msgid "Name" msgstr "Nome" #: ../public/main.php:525 msgid "Name is not valid" msgstr "Cognome non valido" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:177 #, no-wrap msgid "Other Transport" msgstr "Other Transport" # type: Content of: #. type: Content of: #: ../plugins/person.xml:52 #, no-wrap msgid "Pager" msgstr "Pager" #: ../views/helpers.php:113 ../views/helpers.php:114 ../views/helpers.php:721 #: ../views/helpers.php:818 msgid "Password" msgstr "Password" #: ../controllers/helpers.php:159 msgid "Password contains special chars" msgstr "La Password contiene caratteri speciali" #: ../controllers/helpers.php:156 msgid "Password too short!" msgstr "Password troppo corta!" #: ../controllers/helpers.php:153 msgid "Passwords don't match!" msgstr "Le Password non coincidono!" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:81 #, no-wrap msgid "Postfix Transport" msgstr "Postfix Transport" # type: Content of: #. type: Content of: #: ../plugins/proxy.xml:42 #, no-wrap msgid "Proxy Host" msgstr "Proxy Host" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:124 #, no-wrap msgid "Quota" msgstr "Quota" # type: Content of: #. type: Content of: #: ../plugins/alias.xml:51 ../plugins/mail.xml:117 #, no-wrap msgid "SMTP Auth" msgstr "SMTP Auth" # type: Content of: #. type: Content of: #: ../plugins/alias.xml:65 ../plugins/mail.xml:230 #, no-wrap msgid "SPAM Check" msgstr "Protezione SPAM" #: ../public/main.php:437 msgid "SPAM Tags level are not set correctly!" msgstr "I livelli di SPAM non sono impostati correttamente!" #: ../views/helpers.php:1064 msgid "Set" msgstr "Imposta" #: ../views/helpers.php:117 msgid "Sign in" msgstr "Accedi" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:238 #, no-wrap msgid "Spam Kill Level" msgstr "Spam Kill Level" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:278 #, no-wrap msgid "Spam Tag Level" msgstr "Spam Tag Level" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:258 #, no-wrap msgid "Spam Tag2 Level" msgstr "Spam Tag2 Level" #: ../public/main.php:413 msgid "Special Characters not Allowed in E-mail address" msgstr "I caratteri speciali non sono ammessi nell'indirizzo e-mail" #: ../views/helpers.php:827 msgid "Surname" msgstr "Cognome" #: ../public/main.php:527 msgid "Surname is not valid" msgstr "Cognome non valido" #: ../public/main.php:257 msgid "Syntax not valid or special chars found in domain name" msgstr "" "Sintassi non valida oppure trovati caratteri speciali nel nome a dominio" # type: Content of: #. type: Content of: #: ../plugins/person.xml:36 #, no-wrap msgid "Telephone" msgstr "Telefono" #: ../public/main.php:415 #, php-format msgid "The maximum number of accounts (%s) has been reached or exceeded!" msgstr "Massimo numero di account (%s) raggiunto o superato!" #: ../controllers/helpers.php:84 #, php-format msgid "The maximum number of attribute %s (%s) has been reached or exceeded!" msgstr "Massimo numero di %s (%s) raggiunto o superato!" #: ../views/helpers.php:459 #, php-format msgid "" "The maximum number of attribute %s (%s) has been reached or exceeded. " "Attribute has been disabled!" msgstr "" "Massimo numero di %s (%s) raggiunto o superato. L'attributo è stato " "disabilitato!" # type: Content of: #. type: Content of: #: ../plugins/ftp.xml:52 ../plugins/mail.xml:154 #, no-wrap msgid "UID" msgstr "UID" # type: Content of: #. type: Content of: #: ../plugins/ftp.xml:59 #, no-wrap msgid "UID Number" msgstr "Numero UID" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:183 #, no-wrap msgid "Vacation" msgstr "Vacation" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:205 #, no-wrap msgid "Vacation End" msgstr "Fine Vacation" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:194 #, no-wrap msgid "Vacation Forward" msgstr "Vacation Forward" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:189 #, no-wrap msgid "Vacation Info" msgstr "Messaggio Vacation" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:199 #, no-wrap msgid "Vacation Start" msgstr "Inizio Vacation" #: ../views/helpers.php:65 ../views/helpers.php:124 #, php-format msgid "Ver. %s" msgstr "Ver. %s" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:140 #, no-wrap msgid "Virtual Home" msgstr "Virtual Home" # type: Content of: #. type: Content of: #: ../plugins/alias.xml:58 ../plugins/mail.xml:222 #, no-wrap msgid "Virus Check" msgstr "Protezione Virus" #: ../views/helpers.php:1367 msgid "Warning: " msgstr "Attenzione: " # type: Content of: #. type: Content of: #: ../plugins/proxy.xml:36 #, no-wrap msgid "Web Access" msgstr "Web Access" #: ../views/helpers.php:979 ../views/helpers.php:980 msgid "YES" msgstr "SI" #: ../views/helpers.php:1433 msgid "" "You will be automatically redirected to a new page within a few seconds.
If this does not happen, please follow the link:" msgstr "" "Sarai automaticamente indirizzato a una nuova pagina in alcuni secondi.
Se non accade, segui il link:" #: ../public/main.php:820 #, php-format msgid "account %s not updated!" msgstr "account %s non aggiornato!" #: ../views/helpers.php:1433 msgid "click here" msgstr "clicca qui" #: ../public/main.php:439 msgid "do not activate Forward and Vacation Forward in the same time!" msgstr "non attiavare Forward e Vacation Forward contemporaneamente!" #: ../public/main.php:367 #, php-format msgid "domain %s not added!" msgstr "domain %s non aggiunto!" #: ../public/main.php:223 #, php-format msgid "modifying %s" msgstr "modifica %s" #: ../public/main.php:441 msgid "please, insert a forward destination or disable Forward!" msgstr "inserire una destinazione per il forward o disabilitare il Forward!" #~ msgid "%s modified" #~ msgstr "%s modificato" #~ msgid "...select an action" #~ msgstr "...seleziona una azione" #~ msgid "Account (%d)" #~ msgid_plural "Accounts (%d)" #~ msgstr[0] "Account (%d)" #~ msgstr[1] "Account (%d)" #~ msgid "Common Name is not valid" #~ msgstr "Nome non valido" #~ msgid "Domain (%d)" #~ msgid_plural "Domains (%d)" #~ msgstr[0] "Dominio (%d)" #~ msgstr[1] "Domini (%d)" # type: Content of: #~ msgid "Given Name" #~ msgstr "Given Name" phamm-0.6.5/po/phamm.pot0000644000175300017530000002734212643155515013060 0ustar phamm# SOME DESCRIPTIVE TITLE # Copyright (C) YEAR Free Software Foundation, Inc. # This file is distributed under the same license as the PACKAGE package. # FIRST AUTHOR , YEAR. # #, fuzzy msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "POT-Creation-Date: 2014-12-28 11:13+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../public/main.php:658 #, php-format msgid "%s not added!" msgstr "" #: ../views/helpers.php:1058 msgid "...execute a command" msgstr "" #: ../views/helpers.php:809 msgid "Account" msgstr "" #: ../public/main.php:652 #, php-format msgid "Account %s successfully added" msgstr "" #: ../views/helpers.php:295 #, php-format msgid "Account %d/" msgid_plural "Accounts %d/" msgstr[0] "" msgstr[1] "" #: ../views/helpers.php:297 #, php-format msgid "Account %d" msgid_plural "Accounts %d" msgstr[0] "" msgstr[1] "" #: ../public/main.php:411 msgid "Account or Alias already exists" msgstr "" #. type: Content of: #: ../plugins/alias.xml:44 ../plugins/mail.xml:59 ../plugins/mail.xml:132 #, no-wrap msgid "Active" msgstr "" #: ../views/helpers.php:1215 msgid "Add catch-all address" msgstr "" #: ../views/helpers.php:779 ../views/helpers.php:804 msgid "Add new account" msgstr "" #: ../views/helpers.php:399 ../views/helpers.php:707 msgid "Add new domain" msgstr "" #: ../views/helpers.php:917 msgid "All" msgstr "" #: ../views/helpers.php:897 msgid "All domains" msgstr "" #: ../public/main.php:372 #, php-format msgid "An Unexpected Error Occurred during %s Addition!" msgstr "" #: ../public/main.php:113 msgid "Bye!" msgstr "" #. type: Content of: #: ../plugins/mail.xml:91 #, no-wrap msgid "Can edit Accounts" msgstr "" #. type: Content of: #: ../plugins/mail.xml:66 #, no-wrap msgid "Can edit Anti-Virus" msgstr "" #: ../public/main.php:100 msgid "Can't contact LDAP server" msgstr "" #: ../public/main.php:471 msgid "Catch all" msgstr "" #: ../public/main.php:469 msgid "Catch all active" msgstr "" #: ../views/helpers.php:1202 msgid "Catch-all" msgstr "" #: ../public/main.php:240 msgid "Changes have not performed" msgstr "" #: ../lib/ldap.php:249 msgid "Code " msgstr "" #: ../views/helpers.php:299 msgid "Common Name" msgstr "" #: ../views/helpers.php:724 ../views/helpers.php:821 msgid "Confirm Password" msgstr "" #: ../public/main.php:73 msgid "Connection to LDAP Server Failed!" msgstr "" #. type: Content of: #: ../plugins/mail.xml:298 #, no-wrap msgid "Creation Date" msgstr "" #. type: Content of: #: ../plugins/mail.xml:72 ../plugins/mail.xml:168 #, no-wrap msgid "Delete" msgstr "" #. type: Content of: #: ../plugins/alias.xml:39 #, no-wrap msgid "Destination" msgstr "" #: ../views/helpers.php:712 msgid "Domain" msgstr "" #: ../public/main.php:362 #, php-format msgid "Domain %s successfully added" msgstr "" #: ../views/helpers.php:167 #, php-format msgid "Domain %d" msgid_plural "Domains %d" msgstr[0] "" msgstr[1] "" #: ../public/main.php:457 msgid "Domain property" msgstr "" #: ../views/helpers.php:109 msgid "Enter domain or e-mail" msgstr "" #: ../views/helpers.php:1362 msgid "Error: " msgstr "" #: ../views/helpers.php:1077 msgid "Execute command" msgstr "" #. type: Content of: #: ../plugins/person.xml:48 #, no-wrap msgid "FAX" msgstr "" #. type: Content of: #: ../plugins/ftp.xml:71 #, no-wrap msgid "FTP Quota Mb" msgstr "" #. type: Content of: #: ../plugins/ftp.xml:65 #, no-wrap msgid "FTP Status" msgstr "" #. type: Content of: #: ../plugins/mail.xml:211 #, no-wrap msgid "Forward Active" msgstr "" #. type: Content of: #: ../plugins/ftp.xml:39 #, no-wrap msgid "GID number" msgstr "" #: ../public/main.php:102 msgid "Generic Error: " msgstr "" #. type: Content of: #: ../plugins/ftp.xml:45 #, no-wrap msgid "Home Directory" msgstr "" #. type: Content of: #: ../plugins/person.xml:40 #, no-wrap msgid "Home Phone" msgstr "" #: ../lib/ldap.php:249 msgid "LDAP Error: " msgstr "" #: ../views/helpers.php:117 msgid "Login" msgstr "" #: ../views/helpers.php:108 msgid "Login Name" msgstr "" #: ../public/main.php:98 msgid "Login Username or Password not valid." msgstr "" #: ../public/main.php:184 #, php-format msgid "Logout %s" msgstr "" #. type: Content of: #: ../plugins/mail.xml:162 #, no-wrap msgid "Mail Autoreply" msgstr "" #. type: Content of: #: ../plugins/mail.xml:147 #, no-wrap msgid "Mailbox" msgstr "" #. type: Content of: #: ../plugins/mail.xml:218 #, no-wrap msgid "Maildrop" msgstr "" #. type: Content of: #: ../plugins/mail.xml:45 #, no-wrap msgid "Max Quota" msgstr "" #. type: Content of: #: ../plugins/mail.xml:52 #, no-wrap msgid "Max Smtp Auth" msgstr "" #. type: Content of: #: ../plugins/mail.xml:38 #, no-wrap msgid "Max number of Alias" msgstr "" #. type: Content of: #: ../plugins/mail.xml:31 #, no-wrap msgid "Max number of Mail" msgstr "" #. type: Content of: #: ../plugins/person.xml:44 #, no-wrap msgid "Mobile" msgstr "" #: ../views/helpers.php:802 msgid "Modify account" msgstr "" #: ../views/helpers.php:705 msgid "Modify domain" msgstr "" #: ../views/helpers.php:979 ../views/helpers.php:980 msgid "NO" msgstr "" #: ../views/helpers.php:824 msgid "Name" msgstr "" #: ../public/main.php:525 msgid "Name is not valid" msgstr "" #. type: Content of: #: ../plugins/mail.xml:177 #, no-wrap msgid "Other Transport" msgstr "" #. type: Content of: #: ../plugins/person.xml:52 #, no-wrap msgid "Pager" msgstr "" #: ../views/helpers.php:113 ../views/helpers.php:114 ../views/helpers.php:721 #: ../views/helpers.php:818 msgid "Password" msgstr "" #: ../controllers/helpers.php:159 msgid "Password contains special chars" msgstr "" #: ../controllers/helpers.php:156 msgid "Password too short!" msgstr "" #: ../controllers/helpers.php:153 msgid "Passwords don't match!" msgstr "" #. type: Content of: #: ../plugins/mail.xml:81 #, no-wrap msgid "Postfix Transport" msgstr "" #. type: Content of: #: ../plugins/proxy.xml:42 #, no-wrap msgid "Proxy Host" msgstr "" #. type: Content of: #: ../plugins/mail.xml:124 #, no-wrap msgid "Quota" msgstr "" #. type: Content of: #: ../plugins/alias.xml:51 ../plugins/mail.xml:117 #, no-wrap msgid "SMTP Auth" msgstr "" #. type: Content of: #: ../plugins/alias.xml:65 ../plugins/mail.xml:230 #, no-wrap msgid "SPAM Check" msgstr "" #: ../public/main.php:437 msgid "SPAM Tags level are not set correctly!" msgstr "" #: ../views/helpers.php:1064 msgid "Set" msgstr "" #: ../views/helpers.php:117 msgid "Sign in" msgstr "" #. type: Content of: #: ../plugins/mail.xml:238 #, no-wrap msgid "Spam Kill Level" msgstr "" #. type: Content of: #: ../plugins/mail.xml:278 #, no-wrap msgid "Spam Tag Level" msgstr "" #. type: Content of: #: ../plugins/mail.xml:258 #, no-wrap msgid "Spam Tag2 Level" msgstr "" #: ../public/main.php:413 msgid "Special Characters not Allowed in E-mail address" msgstr "" #: ../views/helpers.php:827 msgid "Surname" msgstr "" #: ../public/main.php:527 msgid "Surname is not valid" msgstr "" #: ../public/main.php:257 msgid "Syntax not valid or special chars found in domain name" msgstr "" #. type: Content of: #: ../plugins/person.xml:36 #, no-wrap msgid "Telephone" msgstr "" #: ../public/main.php:415 #, php-format msgid "The maximum number of accounts (%s) has been reached or exceeded!" msgstr "" #: ../controllers/helpers.php:84 #, php-format msgid "The maximum number of attribute %s (%s) has been reached or exceeded!" msgstr "" #: ../views/helpers.php:459 #, php-format msgid "" "The maximum number of attribute %s (%s) has been reached or exceeded. " "Attribute has been disabled!" msgstr "" #. type: Content of: #: ../plugins/ftp.xml:52 ../plugins/mail.xml:154 #, no-wrap msgid "UID" msgstr "" #. type: Content of: #: ../plugins/ftp.xml:59 #, no-wrap msgid "UID Number" msgstr "" #. type: Content of: #: ../plugins/mail.xml:183 #, no-wrap msgid "Vacation" msgstr "" #. type: Content of: #: ../plugins/mail.xml:205 #, no-wrap msgid "Vacation End" msgstr "" #. type: Content of: #: ../plugins/mail.xml:194 #, no-wrap msgid "Vacation Forward" msgstr "" #. type: Content of: #: ../plugins/mail.xml:189 #, no-wrap msgid "Vacation Info" msgstr "" #. type: Content of: #: ../plugins/mail.xml:199 #, no-wrap msgid "Vacation Start" msgstr "" #: ../views/helpers.php:65 ../views/helpers.php:124 #, php-format msgid "Ver. %s" msgstr "" #. type: Content of: #: ../plugins/mail.xml:140 #, no-wrap msgid "Virtual Home" msgstr "" #. type: Content of: #: ../plugins/alias.xml:58 ../plugins/mail.xml:222 #, no-wrap msgid "Virus Check" msgstr "" #: ../views/helpers.php:1367 msgid "Warning: " msgstr "" #. type: Content of: #: ../plugins/proxy.xml:36 #, no-wrap msgid "Web Access" msgstr "" #: ../views/helpers.php:979 ../views/helpers.php:980 msgid "YES" msgstr "" #: ../views/helpers.php:1433 msgid "" "You will be automatically redirected to a new page within a few seconds.
If this does not happen, please follow the link:" msgstr "" #: ../public/main.php:820 #, php-format msgid "account %s not updated!" msgstr "" #: ../views/helpers.php:1433 msgid "click here" msgstr "" #: ../public/main.php:439 msgid "do not activate Forward and Vacation Forward in the same time!" msgstr "" #: ../public/main.php:367 #, php-format msgid "domain %s not added!" msgstr "" #: ../public/main.php:223 #, php-format msgid "modifying %s" msgstr "" #: ../public/main.php:441 msgid "please, insert a forward destination or disable Forward!" msgstr "" phamm-0.6.5/po/pl_PL.po0000644000175300017530000004144012643155515012573 0ustar phamm# Polish Phamm Translation # Copyright (C) 2008 Free Software Foundation, Inc. # This file is distributed under the same license as the Phamm package. # Sławomir Paszkiewicz , 2008. # msgid "" msgstr "" "Project-Id-Version: phamm 0.5.13\n" "POT-Creation-Date: 2014-12-28 11:01+0100\n" "PO-Revision-Date: 2008-12-12 11:46+0100\n" "Last-Translator: Sławomir Paszkiewicz \n" "Language-Team: POLISH \n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: utf-8\n" #: ../public/main.php:658 #, php-format msgid "%s not added!" msgstr "%s nie dodano!" #: ../views/helpers.php:1058 msgid "...execute a command" msgstr "...wykonaj komendę" #: ../views/helpers.php:809 msgid "Account" msgstr "Konto" #: ../public/main.php:652 #, php-format msgid "Account %s successfully added" msgstr "Konto %s zostało pomyślnie dodane" #: ../views/helpers.php:295 #, php-format msgid "Account %d/" msgid_plural "Accounts %d/" msgstr[0] "" msgstr[1] "" #: ../views/helpers.php:297 #, php-format msgid "Account %d" msgid_plural "Accounts %d" msgstr[0] "" msgstr[1] "" #: ../public/main.php:411 msgid "Account or Alias already exists" msgstr "Konto lub Alias już istnieje" # type: Content of: #. type: Content of: #: ../plugins/alias.xml:44 ../plugins/mail.xml:59 ../plugins/mail.xml:132 #, no-wrap msgid "Active" msgstr "Aktywne" #: ../views/helpers.php:1215 msgid "Add catch-all address" msgstr "Dodaj adres catch-all" #: ../views/helpers.php:779 ../views/helpers.php:804 msgid "Add new account" msgstr "Dodaj nowe konto" #: ../views/helpers.php:399 ../views/helpers.php:707 msgid "Add new domain" msgstr "Dodaj nową domenę" #: ../views/helpers.php:917 msgid "All" msgstr "Wszystko" #: ../views/helpers.php:897 msgid "All domains" msgstr "Wszystkie domeny" #: ../public/main.php:372 #, php-format msgid "An Unexpected Error Occurred during %s Addition!" msgstr "" #: ../public/main.php:113 msgid "Bye!" msgstr "Żegnaj!" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:91 #, no-wrap msgid "Can edit Accounts" msgstr "Może edytować Konta" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:66 #, no-wrap msgid "Can edit Anti-Virus" msgstr "Może edytować Antywirusa" #: ../public/main.php:100 msgid "Can't contact LDAP server" msgstr "Nie można połączyć się z serwerem LDAP" #: ../public/main.php:471 msgid "Catch all" msgstr "Catch all" #: ../public/main.php:469 msgid "Catch all active" msgstr "Catch all aktywne" #: ../views/helpers.php:1202 msgid "Catch-all" msgstr "Catch-all" #: ../public/main.php:240 msgid "Changes have not performed" msgstr "Zmiany nie zostały wykonane" #: ../lib/ldap.php:249 msgid "Code " msgstr "Kod" #: ../views/helpers.php:299 msgid "Common Name" msgstr "Nazwa zwyczajowa" #: ../views/helpers.php:724 ../views/helpers.php:821 msgid "Confirm Password" msgstr "Potwierdź hasło" #: ../public/main.php:73 msgid "Connection to LDAP Server Failed!" msgstr "Łączenie do serwera LDAP nieudane!" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:298 #, no-wrap msgid "Creation Date" msgstr "Data utworzenia" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:72 ../plugins/mail.xml:168 #, no-wrap msgid "Delete" msgstr "Usunięte" # type: Content of: #. type: Content of: #: ../plugins/alias.xml:39 #, no-wrap msgid "Destination" msgstr "Cel" #: ../views/helpers.php:712 msgid "Domain" msgstr "Domena" #: ../public/main.php:362 #, php-format msgid "Domain %s successfully added" msgstr "Domenta %s została pomyślnie dodana" #: ../views/helpers.php:167 #, php-format msgid "Domain %d" msgid_plural "Domains %d" msgstr[0] "" msgstr[1] "" #: ../public/main.php:457 msgid "Domain property" msgstr "Właściwości domeny" #: ../views/helpers.php:109 msgid "Enter domain or e-mail" msgstr "" #: ../views/helpers.php:1362 msgid "Error: " msgstr "Błąd: " #: ../views/helpers.php:1077 msgid "Execute command" msgstr "Wykonaj komendę" # type: Content of: #. type: Content of: #: ../plugins/person.xml:48 #, no-wrap msgid "FAX" msgstr "FAX" # type: Content of: #. type: Content of: #: ../plugins/ftp.xml:71 #, no-wrap msgid "FTP Quota Mb" msgstr "FTP Quota Mb" # type: Content of: #. type: Content of: #: ../plugins/ftp.xml:65 #, no-wrap msgid "FTP Status" msgstr "Status FTP" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:211 #, no-wrap msgid "Forward Active" msgstr "Przekierowanie aktywne" # type: Content of: #. type: Content of: #: ../plugins/ftp.xml:39 #, no-wrap msgid "GID number" msgstr "Numer GID" #: ../public/main.php:102 msgid "Generic Error: " msgstr "Typowy Błąd: " # type: Content of: #. type: Content of: #: ../plugins/ftp.xml:45 #, no-wrap msgid "Home Directory" msgstr "Katalog Domowy" # type: Content of: #. type: Content of: #: ../plugins/person.xml:40 #, no-wrap msgid "Home Phone" msgstr "Telefon Domowy" #: ../lib/ldap.php:249 msgid "LDAP Error: " msgstr "Błąd LDAP: " #: ../views/helpers.php:117 msgid "Login" msgstr "Zaloguj" #: ../views/helpers.php:108 msgid "Login Name" msgstr "Nazwa użytkownika" #: ../public/main.php:98 msgid "Login Username or Password not valid." msgstr "Nazwa użytkownika lub Hasło jest nieprawidłowe" #: ../public/main.php:184 #, php-format msgid "Logout %s" msgstr "Wyloguj %s" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:162 #, no-wrap msgid "Mail Autoreply" msgstr "Automatyczna odpowiedź na maila" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:147 #, no-wrap msgid "Mailbox" msgstr "Skrzynka pocztowa" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:218 #, no-wrap msgid "Maildrop" msgstr "Maildrop" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:45 #, no-wrap msgid "Max Quota" msgstr "Quota maksymalna" #. type: Content of: #: ../plugins/mail.xml:52 #, no-wrap msgid "Max Smtp Auth" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:38 #, no-wrap msgid "Max number of Alias" msgstr "Maksymalna liczba Aliasów" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:31 #, no-wrap msgid "Max number of Mail" msgstr "Maksymalna liczba Maili" # type: Content of: #. type: Content of: #: ../plugins/person.xml:44 #, no-wrap msgid "Mobile" msgstr "Komórka" #: ../views/helpers.php:802 msgid "Modify account" msgstr "Modyfikuj konto" #: ../views/helpers.php:705 msgid "Modify domain" msgstr "Modyfikuj domenę" #: ../views/helpers.php:979 ../views/helpers.php:980 msgid "NO" msgstr "NIE" #: ../views/helpers.php:824 msgid "Name" msgstr "Imię" #: ../public/main.php:525 msgid "Name is not valid" msgstr "Nazwa nie jest poprawna" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:177 #, no-wrap msgid "Other Transport" msgstr "Inny Transport" # type: Content of: #. type: Content of: #: ../plugins/person.xml:52 #, no-wrap msgid "Pager" msgstr "Pager" #: ../views/helpers.php:113 ../views/helpers.php:114 ../views/helpers.php:721 #: ../views/helpers.php:818 msgid "Password" msgstr "Hasło" #: ../controllers/helpers.php:159 msgid "Password contains special chars" msgstr "Hasło zawiera znaki specjalne" #: ../controllers/helpers.php:156 msgid "Password too short!" msgstr "Hasło jest za krótkie!" #: ../controllers/helpers.php:153 msgid "Passwords don't match!" msgstr "Hasło się nie zgadza!" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:81 #, no-wrap msgid "Postfix Transport" msgstr "Transport Postfix" # type: Content of: #. type: Content of: #: ../plugins/proxy.xml:42 #, no-wrap msgid "Proxy Host" msgstr "Host Proxy" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:124 #, no-wrap msgid "Quota" msgstr "Quota" # type: Content of: #. type: Content of: #: ../plugins/alias.xml:51 ../plugins/mail.xml:117 #, no-wrap msgid "SMTP Auth" msgstr "Autoryzacja SMTP" # type: Content of: #. type: Content of: #: ../plugins/alias.xml:65 ../plugins/mail.xml:230 #, no-wrap msgid "SPAM Check" msgstr "Sprawdzanie SPAMu" #: ../public/main.php:437 msgid "SPAM Tags level are not set correctly!" msgstr "Poziom tagów SPAM nie jest poprawny!" #: ../views/helpers.php:1064 msgid "Set" msgstr "Ustaw" #: ../views/helpers.php:117 msgid "Sign in" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:238 #, no-wrap msgid "Spam Kill Level" msgstr "Poziom Spam Kill" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:278 #, no-wrap msgid "Spam Tag Level" msgstr "Poziom Spam Tag" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:258 #, no-wrap msgid "Spam Tag2 Level" msgstr "Poziom Spam Tag2" #: ../public/main.php:413 msgid "Special Characters not Allowed in E-mail address" msgstr "Znaki specjalne nie są dozwolone w adresie E-mail" #: ../views/helpers.php:827 msgid "Surname" msgstr "Nazwisko" #: ../public/main.php:527 msgid "Surname is not valid" msgstr "Nazwisko nie jest poprawne" #: ../public/main.php:257 msgid "Syntax not valid or special chars found in domain name" msgstr "Składnia nie jest poprawna lub domena zawiera znaki specjalne" # type: Content of: #. type: Content of: #: ../plugins/person.xml:36 #, no-wrap msgid "Telephone" msgstr "Telefon" #: ../public/main.php:415 #, php-format msgid "The maximum number of accounts (%s) has been reached or exceeded!" msgstr "" #: ../controllers/helpers.php:84 #, php-format msgid "The maximum number of attribute %s (%s) has been reached or exceeded!" msgstr "" #: ../views/helpers.php:459 #, php-format msgid "" "The maximum number of attribute %s (%s) has been reached or exceeded. " "Attribute has been disabled!" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/ftp.xml:52 ../plugins/mail.xml:154 #, no-wrap msgid "UID" msgstr "UID" # type: Content of: #. type: Content of: #: ../plugins/ftp.xml:59 #, no-wrap msgid "UID Number" msgstr "Numer UID" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:183 #, no-wrap msgid "Vacation" msgstr "Wakacje" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:205 #, no-wrap msgid "Vacation End" msgstr "Koniec Wakacji" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:194 #, no-wrap msgid "Vacation Forward" msgstr "Przekierowanie Wakacji" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:189 #, no-wrap msgid "Vacation Info" msgstr "Informacja Wakacyjna" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:199 #, no-wrap msgid "Vacation Start" msgstr "Początek Wakacji" #: ../views/helpers.php:65 ../views/helpers.php:124 #, php-format msgid "Ver. %s" msgstr "Wersja %s" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:140 #, no-wrap msgid "Virtual Home" msgstr "Virtualny Katalog Domowy" # type: Content of: #. type: Content of: #: ../plugins/alias.xml:58 ../plugins/mail.xml:222 #, no-wrap msgid "Virus Check" msgstr "Sprawdzanie Wirusów" #: ../views/helpers.php:1367 msgid "Warning: " msgstr "Ostrzeżenie: " # type: Content of: #. type: Content of: #: ../plugins/proxy.xml:36 #, no-wrap msgid "Web Access" msgstr "Dostęp WWW" #: ../views/helpers.php:979 ../views/helpers.php:980 msgid "YES" msgstr "TAK" #: ../views/helpers.php:1433 msgid "" "You will be automatically redirected to a new page within a few seconds.
If this does not happen, please follow the link:" msgstr "" "Zostaniesz automatycznie przekierowany na nową strone w przeciągu kilku " "sekund.
Jeśli tak się nie stanie, kliknij proszę na poniższy link:" #: ../public/main.php:820 #, php-format msgid "account %s not updated!" msgstr "konto %s nie uaktualnione!" #: ../views/helpers.php:1433 msgid "click here" msgstr "kliknij tutaj" #: ../public/main.php:439 msgid "do not activate Forward and Vacation Forward in the same time!" msgstr "" "nie włączaj Przekierowania ani Przekierowania wakacyjnego w tym samym czasie!" #: ../public/main.php:367 #, php-format msgid "domain %s not added!" msgstr "domena %s nie została dodana!" #: ../public/main.php:223 #, php-format msgid "modifying %s" msgstr "" #: ../public/main.php:441 msgid "please, insert a forward destination or disable Forward!" msgstr "proszę, podaj adres docelowy lub wyłącz Przekierowanie!" #~ msgid "%s modified" #~ msgstr "%s zmodyfikowany" #~ msgid "Account (%d)" #~ msgid_plural "Accounts (%d)" #~ msgstr[0] "Konto (%d)" #~ msgstr[1] "Konta (%d)" #~ msgid "Domain (%d)" #~ msgid_plural "Domains (%d)" #~ msgstr[0] "Domena (%d)" #~ msgstr[1] "Domeny (%d)" phamm-0.6.5/po/pt_BR.po0000644000175300017530000004165412643155515012602 0ustar phamm# Copyright (C) 2011 Free Software Foundation, Inc. # This file is distributed under the same license as the Phamm-0.5.18 package. # Rafael Domingues , 2011. # msgid "" msgstr "" "Project-Id-Version: Phamm 0.5.18\n" "POT-Creation-Date: 2014-12-28 11:01+0100\n" "PO-Revision-Date: 2011-07-29 13:46-0300\n" "Last-Translator: Rafael Domingues \n" "Language-Team: Rafael Domingues \n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Poedit-Language: Portuguese\n" "X-Poedit-Country: BRAZIL\n" #: ../public/main.php:658 #, php-format msgid "%s not added!" msgstr "%s não foi adicionado!" #: ../views/helpers.php:1058 msgid "...execute a command" msgstr "execute um comando" #: ../views/helpers.php:809 msgid "Account" msgstr "Conta" #: ../public/main.php:652 #, php-format msgid "Account %s successfully added" msgstr "Conta %s adicionada com sucesso!" #: ../views/helpers.php:295 #, php-format msgid "Account %d/" msgid_plural "Accounts %d/" msgstr[0] "" msgstr[1] "" #: ../views/helpers.php:297 #, php-format msgid "Account %d" msgid_plural "Accounts %d" msgstr[0] "" msgstr[1] "" #: ../public/main.php:411 msgid "Account or Alias already exists" msgstr "Conta ou apelido já existe." # type: Content of: #. type: Content of: #: ../plugins/alias.xml:44 ../plugins/mail.xml:59 ../plugins/mail.xml:132 #, no-wrap msgid "Active" msgstr "Ativo" #: ../views/helpers.php:1215 msgid "Add catch-all address" msgstr "Adicionar endereço recebe-tudo" #: ../views/helpers.php:779 ../views/helpers.php:804 msgid "Add new account" msgstr "Adicionar nova conta" #: ../views/helpers.php:399 ../views/helpers.php:707 msgid "Add new domain" msgstr "Adicionar novo domínio" #: ../views/helpers.php:917 msgid "All" msgstr "Tudo" #: ../views/helpers.php:897 msgid "All domains" msgstr "Todos os Domínos" #: ../public/main.php:372 #, php-format msgid "An Unexpected Error Occurred during %s Addition!" msgstr "Erro inesperado ao adicionar %s!" #: ../public/main.php:113 msgid "Bye!" msgstr "Até!" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:91 #, no-wrap msgid "Can edit Accounts" msgstr "Pode editar contas" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:66 #, no-wrap msgid "Can edit Anti-Virus" msgstr "Pode editar antivírus" #: ../public/main.php:100 msgid "Can't contact LDAP server" msgstr "Não foi possível comunicar com servidor LDAP" #: ../public/main.php:471 msgid "Catch all" msgstr "Conta Recebe-tudo" #: ../public/main.php:469 msgid "Catch all active" msgstr "Conta recebe-tudo ativada" #: ../views/helpers.php:1202 msgid "Catch-all" msgstr "Recebe-tudo" #: ../public/main.php:240 msgid "Changes have not performed" msgstr "Mudanças não foram feitas" #: ../lib/ldap.php:249 msgid "Code " msgstr "Código" #: ../views/helpers.php:299 msgid "Common Name" msgstr "Nome Completo" #: ../views/helpers.php:724 ../views/helpers.php:821 msgid "Confirm Password" msgstr "Confirmar Senha" #: ../public/main.php:73 msgid "Connection to LDAP Server Failed!" msgstr "Conexão com servidor LDAP falhou!" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:298 #, no-wrap msgid "Creation Date" msgstr "Data de Criação" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:72 ../plugins/mail.xml:168 #, no-wrap msgid "Delete" msgstr "Apagar" # type: Content of: #. type: Content of: #: ../plugins/alias.xml:39 #, no-wrap msgid "Destination" msgstr "Destino" #: ../views/helpers.php:712 msgid "Domain" msgstr "Domínio" #: ../public/main.php:362 #, php-format msgid "Domain %s successfully added" msgstr "Domínio %s adicionado com sucesso" #: ../views/helpers.php:167 #, php-format msgid "Domain %d" msgid_plural "Domains %d" msgstr[0] "" msgstr[1] "" #: ../public/main.php:457 msgid "Domain property" msgstr "Propriedade do Domínio" #: ../views/helpers.php:109 msgid "Enter domain or e-mail" msgstr "" #: ../views/helpers.php:1362 msgid "Error: " msgstr "Erro:" #: ../views/helpers.php:1077 msgid "Execute command" msgstr "Executar Comando" # type: Content of: #. type: Content of: #: ../plugins/person.xml:48 #, no-wrap msgid "FAX" msgstr "FAX" # type: Content of: #. type: Content of: #: ../plugins/ftp.xml:71 #, no-wrap msgid "FTP Quota Mb" msgstr "Cota FTP (MB)" # type: Content of: #. type: Content of: #: ../plugins/ftp.xml:65 #, no-wrap msgid "FTP Status" msgstr "Estado FTP" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:211 #, no-wrap msgid "Forward Active" msgstr "Re-encaminhar mensagens" # type: Content of: #. type: Content of: #: ../plugins/ftp.xml:39 #, no-wrap msgid "GID number" msgstr "Número GID" #: ../public/main.php:102 msgid "Generic Error: " msgstr "Erro Genérico:" # type: Content of: #. type: Content of: #: ../plugins/ftp.xml:45 #, no-wrap msgid "Home Directory" msgstr "Diretório Home" # type: Content of: #. type: Content of: #: ../plugins/person.xml:40 #, no-wrap msgid "Home Phone" msgstr "Telefone Residencial" #: ../lib/ldap.php:249 msgid "LDAP Error: " msgstr "Erro LDAP:" #: ../views/helpers.php:117 msgid "Login" msgstr "Entrar" #: ../views/helpers.php:108 msgid "Login Name" msgstr "Nome de Usuário" #: ../public/main.php:98 msgid "Login Username or Password not valid." msgstr "Usuário ou senha incorretos" #: ../public/main.php:184 #, php-format msgid "Logout %s" msgstr "Desconectar de %s" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:162 #, no-wrap msgid "Mail Autoreply" msgstr "Auto-resposta" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:147 #, no-wrap msgid "Mailbox" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:218 #, no-wrap msgid "Maildrop" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:45 #, no-wrap msgid "Max Quota" msgstr "Cota máxima" #. type: Content of: #: ../plugins/mail.xml:52 #, no-wrap msgid "Max Smtp Auth" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:38 #, no-wrap msgid "Max number of Alias" msgstr "Limite máximo de apelidos" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:31 #, no-wrap msgid "Max number of Mail" msgstr "Limite máximo de mensagens" # type: Content of: #. type: Content of: #: ../plugins/person.xml:44 #, no-wrap msgid "Mobile" msgstr "Celular" #: ../views/helpers.php:802 msgid "Modify account" msgstr "Modificar Conta" #: ../views/helpers.php:705 msgid "Modify domain" msgstr "Modificar Domínio" #: ../views/helpers.php:979 ../views/helpers.php:980 msgid "NO" msgstr "Não" #: ../views/helpers.php:824 msgid "Name" msgstr "Nome" #: ../public/main.php:525 msgid "Name is not valid" msgstr "Nome não é válido" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:177 #, no-wrap msgid "Other Transport" msgstr "Outro Transport" # type: Content of: #. type: Content of: #: ../plugins/person.xml:52 #, no-wrap msgid "Pager" msgstr "Pager" #: ../views/helpers.php:113 ../views/helpers.php:114 ../views/helpers.php:721 #: ../views/helpers.php:818 msgid "Password" msgstr "Senha" #: ../controllers/helpers.php:159 msgid "Password contains special chars" msgstr "Senha não pode conter caracteres especiais." #: ../controllers/helpers.php:156 msgid "Password too short!" msgstr "Senha muito curta!" #: ../controllers/helpers.php:153 msgid "Passwords don't match!" msgstr "Senhas são diferentes!" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:81 #, no-wrap msgid "Postfix Transport" msgstr "Postfix Transport" # type: Content of: #. type: Content of: #: ../plugins/proxy.xml:42 #, no-wrap msgid "Proxy Host" msgstr "Servidor Proxy" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:124 #, no-wrap msgid "Quota" msgstr "Cota" # type: Content of: #. type: Content of: #: ../plugins/alias.xml:51 ../plugins/mail.xml:117 #, no-wrap msgid "SMTP Auth" msgstr "Autenticação SMTP" # type: Content of: #. type: Content of: #: ../plugins/alias.xml:65 ../plugins/mail.xml:230 #, no-wrap msgid "SPAM Check" msgstr "Anti-SPAM" #: ../public/main.php:437 msgid "SPAM Tags level are not set correctly!" msgstr "Níveis de marcação de SPAM não foram definidos corretamente!" #: ../views/helpers.php:1064 msgid "Set" msgstr "Definir" #: ../views/helpers.php:117 msgid "Sign in" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:238 #, no-wrap msgid "Spam Kill Level" msgstr "Nível de eliminação de SPAM" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:278 #, no-wrap msgid "Spam Tag Level" msgstr "Nível de marcação de SPAM" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:258 #, no-wrap msgid "Spam Tag2 Level" msgstr "Nível 2 de marcação de SPAM" #: ../public/main.php:413 msgid "Special Characters not Allowed in E-mail address" msgstr "Caracteres especiais não são permitidos no endereço de e-mail" #: ../views/helpers.php:827 msgid "Surname" msgstr "Sobrenome" #: ../public/main.php:527 msgid "Surname is not valid" msgstr "Sobrenome é inválido" #: ../public/main.php:257 msgid "Syntax not valid or special chars found in domain name" msgstr "Sintaxe inválida ou existem caracteres especiais no nome " # type: Content of: #. type: Content of: #: ../plugins/person.xml:36 #, no-wrap msgid "Telephone" msgstr "Telefone" #: ../public/main.php:415 #, php-format msgid "The maximum number of accounts (%s) has been reached or exceeded!" msgstr "" #: ../controllers/helpers.php:84 #, php-format msgid "The maximum number of attribute %s (%s) has been reached or exceeded!" msgstr "" #: ../views/helpers.php:459 #, php-format msgid "" "The maximum number of attribute %s (%s) has been reached or exceeded. " "Attribute has been disabled!" msgstr "" # type: Content of: #. type: Content of: #: ../plugins/ftp.xml:52 ../plugins/mail.xml:154 #, no-wrap msgid "UID" msgstr "UID" # type: Content of: #. type: Content of: #: ../plugins/ftp.xml:59 #, no-wrap msgid "UID Number" msgstr "Número UID" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:183 #, no-wrap msgid "Vacation" msgstr "Mensagem de Férias" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:205 #, no-wrap msgid "Vacation End" msgstr "Final das Férias" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:194 #, no-wrap msgid "Vacation Forward" msgstr "Encaminhamento de Férias" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:189 #, no-wrap msgid "Vacation Info" msgstr "Informações das Férias" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:199 #, no-wrap msgid "Vacation Start" msgstr "Início das Férias" #: ../views/helpers.php:65 ../views/helpers.php:124 #, php-format msgid "Ver. %s" msgstr "Versão %s" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:140 #, no-wrap msgid "Virtual Home" msgstr "Home Virtual" # type: Content of: #. type: Content of: #: ../plugins/alias.xml:58 ../plugins/mail.xml:222 #, no-wrap msgid "Virus Check" msgstr "Antivírus" #: ../views/helpers.php:1367 msgid "Warning: " msgstr "Atenção:" # type: Content of: #. type: Content of: #: ../plugins/proxy.xml:36 #, no-wrap msgid "Web Access" msgstr "Acesso WEB" #: ../views/helpers.php:979 ../views/helpers.php:980 msgid "YES" msgstr "Sim" #: ../views/helpers.php:1433 msgid "" "You will be automatically redirected to a new page within a few seconds.
If this does not happen, please follow the link:" msgstr "" "Você será redirecionado automaticamente para uma nova página em alguns " "segundos.
. Se isto não acontecer, por favor clique no link: " #: ../public/main.php:820 #, php-format msgid "account %s not updated!" msgstr "Conta %s não foi atualizada!" #: ../views/helpers.php:1433 msgid "click here" msgstr "clique aqui" #: ../public/main.php:439 msgid "do not activate Forward and Vacation Forward in the same time!" msgstr "Não ative Encaminhamento e Encaminhamento de Férias ao mesmo tempo!" #: ../public/main.php:367 #, php-format msgid "domain %s not added!" msgstr "Domínio %s não foi adicionado!" #: ../public/main.php:223 #, php-format msgid "modifying %s" msgstr "" #: ../public/main.php:441 msgid "please, insert a forward destination or disable Forward!" msgstr "" "Por favor, insira um destino para encaminhamento ou desmarque \"Encaminhar\"!" #~ msgid "%s modified" #~ msgstr "%s modificado" #~ msgid "Account (%d)" #~ msgid_plural "Accounts (%d)" #~ msgstr[0] "Conta (%d)" #~ msgstr[1] "Contas (%d)" #~ msgid "Domain (%d)" #~ msgid_plural "Domains (%d)" #~ msgstr[0] "Domínio (%d)" #~ msgstr[1] "Domínios (%d)" phamm-0.6.5/po/ru.po0000644000175300017530000003430112643155515012211 0ustar phamm# translation of ru.po to Russian # Copyright (c) 2004,2008 Alessandro De Zorzi, Mirko Grava # This file is distributed under the same license as the Phamm package. # # Igor V. Gots , 2005. # Yuri Kozlov , 2008. msgid "" msgstr "" "Project-Id-Version: phamm NEW\n" "POT-Creation-Date: 2008-10-15 09:56+0300\n" "PO-Revision-Date: 2008-10-15 22:21+0400\n" "Last-Translator: Yuri Kozlov \n" "Language-Team: Russian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.11.4\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" #: ../www-data/main.php:204 #, php-format msgid "%s modified" msgstr "Значение %s изменено" #: ../www-data/main.php:605 #, php-format msgid "%s not added!" msgstr "%s не добавлено!" #: ../lib/xhtml.php:981 msgid "...execute a command" msgstr "...выполнение команды" #: ../lib/xhtml.php:747 msgid "Account" msgstr "Аккаунт" #: ../www-data/main.php:599 #, php-format msgid "Account %s successfully added" msgstr "Аккаунт %s добавлен" #: ../lib/xhtml.php:281 #, php-format msgid "Account (%d)" msgid_plural "Accounts (%d)" msgstr[0] "%d аккаунт" msgstr[1] "%d аккаунта" msgstr[2] "%d аккаунтов" #: ../www-data/main.php:369 msgid "Account or Alias already exists" msgstr "Аккаунт или псевдоним уже существуют" # type: Content of: #: ../plugins/alias.xml:44 ../plugins/mail.xml:52 ../plugins/mail.xml:125 #, no-wrap msgid "Active" msgstr "Активен" #: ../lib/xhtml.php:1107 msgid "Add catch-all address" msgstr "Добавить адрес для всей почты" #: ../lib/xhtml.php:715 ../lib/xhtml.php:739 msgid "Add new account" msgstr "Добавить новый аккаунт" #: ../lib/xhtml.php:380 ../lib/xhtml.php:648 msgid "Add new domain" msgstr "Добавить новый домен" #: ../lib/xhtml.php:839 msgid "All" msgstr "Все" #: ../lib/xhtml.php:823 msgid "All domains" msgstr "Все домены" #: ../www-data/main.php:110 msgid "Bye!" msgstr "Пока!" # type: Content of: #: ../plugins/mail.xml:84 #, no-wrap msgid "Can edit Accounts" msgstr "Может редактировать аккаунты" # type: Content of: #: ../plugins/mail.xml:59 #, no-wrap msgid "Can edit Anti-Virus" msgstr "Может управлять антивирусом" #: ../www-data/main.php:97 msgid "Can't contact LDAP server" msgstr "Не удалось связаться с сервером LDAP" #: ../www-data/main.php:424 msgid "Catch all" msgstr "Принимать всё" #: ../www-data/main.php:422 msgid "Catch all active" msgstr "Приём всей почты включён" #: ../lib/xhtml.php:1094 msgid "Catch-all" msgstr "Вся почта" #: ../www-data/main.php:221 msgid "Changes have not performed" msgstr "Изменения не внесены" #: ../lib/common.php:482 msgid "Code " msgstr "Код " #: ../lib/xhtml.php:283 msgid "Common Name" msgstr "Общее имя" #: ../lib/xhtml.php:662 ../lib/xhtml.php:753 msgid "Confirm Password" msgstr "Подтверждение пароля" #: ../www-data/main.php:72 msgid "Connection to LDAP Server Failed!" msgstr "Не удалось подключиться к серверу LDAP!" # type: Content of: #: ../plugins/mail.xml:290 #, no-wrap msgid "Creation Date" msgstr "Дата создания" # type: Content of: #: ../plugins/mail.xml:65 ../plugins/mail.xml:161 #, no-wrap msgid "Delete" msgstr "Удалить" # type: Content of: #: ../plugins/alias.xml:39 #, no-wrap msgid "Destination" msgstr "Назначение" #: ../lib/xhtml.php:656 msgid "Domain" msgstr "Домен" #: ../www-data/main.php:339 #, php-format msgid "Domain %s successfully added" msgstr "Домен %s добавлен" #: ../lib/xhtml.php:155 #, php-format msgid "Domain (%d)" msgid_plural "Domains (%d)" msgstr[0] "%d домен" msgstr[1] "%d домена" msgstr[2] "%d доменов" #: ../www-data/main.php:412 msgid "Domain property" msgstr "Свойства домена" #: ../lib/phamm.php:172 msgid "Error: " msgstr "Ошибка: " #: ../lib/xhtml.php:991 msgid "Execute command" msgstr "Выполнить команду" # type: Content of: #: ../plugins/person.xml:48 #, no-wrap msgid "FAX" msgstr "ФАКС" # type: Content of: #: ../plugins/ftp.xml:71 #, no-wrap msgid "FTP Quota Mb" msgstr "FTP-квота (Mб)" # type: Content of: #: ../plugins/ftp.xml:65 #, no-wrap msgid "FTP Status" msgstr "FTP-состояние" # type: Content of: #: ../plugins/mail.xml:202 #, no-wrap msgid "Forward Active" msgstr "Пересылка включена" # type: Content of: #: ../plugins/ftp.xml:39 #, no-wrap msgid "GID number" msgstr "GID-номер" #: ../www-data/main.php:99 msgid "Generic Error: " msgstr "Общая ошибка: " # type: Content of: #: ../plugins/ftp.xml:45 #, no-wrap msgid "Home Directory" msgstr "Домашний каталог" # type: Content of: #: ../plugins/person.xml:40 #, no-wrap msgid "Home Phone" msgstr "Домашний телефон" #: ../lib/common.php:482 msgid "LDAP Error: " msgstr "Ошибка LDAP: " #: ../lib/xhtml.php:113 msgid "Login" msgstr "Логин" #: ../lib/xhtml.php:107 msgid "Login Name" msgstr "Регистрационное имя" #: ../www-data/main.php:95 msgid "Login Username or Password not valid." msgstr "Неправильный логин или пароль." #: ../www-data/main.php:168 #, php-format msgid "Logout %s" msgstr "Завершение работы %s" # type: Content of: #: ../plugins/mail.xml:155 #, no-wrap msgid "Mail Autoreply" msgstr "Почтовый автоответчик" # type: Content of: #: ../plugins/mail.xml:140 #, no-wrap msgid "Mailbox" msgstr "Почтовый ящик" # type: Content of: #: ../plugins/mail.xml:210 #, no-wrap msgid "Maildrop" msgstr "Maildrop" # type: Content of: #: ../plugins/mail.xml:45 #, no-wrap msgid "Max Quota" msgstr "Максимальная квота" # type: Content of: #: ../plugins/mail.xml:38 #, no-wrap msgid "Max number of Alias" msgstr "Максимальное кол-во псевдонимов" # type: Content of: #: ../plugins/mail.xml:31 #, no-wrap msgid "Max number of Mail" msgstr "Максимальное кол-во почты" # type: Content of: #: ../plugins/person.xml:44 #, no-wrap msgid "Mobile" msgstr "Мобильный" #: ../lib/xhtml.php:737 msgid "Modify account" msgstr "Изменить аккаунт" #: ../lib/xhtml.php:646 msgid "Modify domain" msgstr "Изменить домен" #: ../lib/xhtml.php:907 ../lib/xhtml.php:908 msgid "NO" msgstr "НЕТ" #: ../lib/xhtml.php:756 msgid "Name" msgstr "Имя" #: ../www-data/main.php:476 msgid "Name is not valid" msgstr "Неверное имя" # type: Content of: #: ../plugins/mail.xml:170 #, no-wrap msgid "Other Transport" msgstr "Другой транспорт" # type: Content of: #: ../plugins/person.xml:52 #, no-wrap msgid "Pager" msgstr "Пейджер" #: ../lib/xhtml.php:109 ../lib/xhtml.php:659 ../lib/xhtml.php:750 msgid "Password" msgstr "Пароль" #: ../lib/common.php:282 msgid "Password contains special chars" msgstr "Пароль содержит спецсимволы" #: ../lib/common.php:279 msgid "Password too short!" msgstr "Пароль слишком короткий!" #: ../lib/common.php:276 msgid "Passwords don't match!" msgstr "Пароли не совпадают!" # type: Content of: #: ../plugins/mail.xml:74 #, no-wrap msgid "Postfix Transport" msgstr "Транспорт Postfix" # type: Content of: #: ../plugins/proxy.xml:42 #, no-wrap msgid "Proxy Host" msgstr "Прокси-хост" # type: Content of: #: ../plugins/mail.xml:117 #, no-wrap msgid "Quota" msgstr "Квота" # type: Content of: #: ../plugins/alias.xml:51 ../plugins/mail.xml:110 #, no-wrap msgid "SMTP Auth" msgstr "SMTP Auth" # type: Content of: #: ../plugins/alias.xml:65 ../plugins/mail.xml:222 #, no-wrap msgid "SPAM Check" msgstr "Проверка на спам" #: ../www-data/main.php:393 msgid "SPAM Tags level are not set correctly!" msgstr "Неправильно задан уровень меток спама!" #: ../lib/xhtml.php:987 msgid "Set" msgstr "Задан" # type: Content of: #: ../plugins/mail.xml:230 #, no-wrap msgid "Spam Kill Level" msgstr "Уровень для удаления спама" # type: Content of: #: ../plugins/mail.xml:270 #, no-wrap msgid "Spam Tag Level" msgstr "Уровень для пометки спама" # type: Content of: #: ../plugins/mail.xml:250 #, no-wrap msgid "Spam Tag2 Level" msgstr "Уровень для 2-й пометки спама" #: ../www-data/main.php:371 msgid "Special Characters not Allowed in E-mail address" msgstr "В почтовых адресах спецсимволы запрещены" #: ../lib/xhtml.php:759 msgid "Surname" msgstr "Фамилия" #: ../www-data/main.php:478 msgid "Surname is not valid" msgstr "Неверная фамилия" #: ../www-data/main.php:239 msgid "Syntax not valid or special chars found in domain name" msgstr "Неверный синтаксис или в доменном имени есть спецсимволы" # type: Content of: #: ../plugins/person.xml:36 #, no-wrap msgid "Telephone" msgstr "Телефон" # type: Content of: #: ../plugins/ftp.xml:52 ../plugins/mail.xml:147 #, no-wrap msgid "UID" msgstr "UID" # type: Content of: #: ../plugins/ftp.xml:59 #, no-wrap msgid "UID Number" msgstr "UID-номер" # type: Content of: #: ../plugins/mail.xml:176 #, no-wrap msgid "Vacation" msgstr "Временное отсутствие" # type: Content of: #: ../plugins/mail.xml:197 #, no-wrap msgid "Vacation End" msgstr "Конец периода временного отсутствия" # type: Content of: #: ../plugins/mail.xml:187 #, no-wrap msgid "Vacation Forward" msgstr "Пересылать во время отсутствия" # type: Content of: #: ../plugins/mail.xml:182 #, no-wrap msgid "Vacation Info" msgstr "Информация о временном отсутствии" # type: Content of: #: ../plugins/mail.xml:192 #, no-wrap msgid "Vacation Start" msgstr "Начало периода временного отсутствия" #: ../lib/xhtml.php:63 ../lib/xhtml.php:99 #, php-format msgid "Ver. %s" msgstr "Вер. %s" # type: Content of: #: ../plugins/mail.xml:133 #, no-wrap msgid "Virtual Home" msgstr "Виртуальный домашний каталог" # type: Content of: #: ../plugins/alias.xml:58 ../plugins/mail.xml:214 #, no-wrap msgid "Virus Check" msgstr "Антивирусная проверка" #: ../lib/phamm.php:176 msgid "Warning: " msgstr "Предупреждение: " # type: Content of: #: ../plugins/proxy.xml:36 #, no-wrap msgid "Web Access" msgstr "Доступ через веб" #: ../lib/xhtml.php:907 ../lib/xhtml.php:908 msgid "YES" msgstr "ДА" #: ../lib/common.php:73 msgid "" "You will be automatically redirected to a new page within a few seconds.
If this does not happen, please follow the link:" msgstr "" "Через несколько секунд вы будете автоматически перенаправлены на новую страницу.
Если это не происходит, пройдите по ссылке:" #: ../www-data/main.php:757 #, php-format msgid "account %s not updated!" msgstr "аккаунт %s не обновлён!" #: ../lib/common.php:73 msgid "click here" msgstr "нажмите сюда" #: ../www-data/main.php:395 msgid "do not activate Forward and Vacation Forward in the same time!" msgstr "не включайте Пересылку и Пересылку во время отсутствия одновременно" #: ../www-data/main.php:344 #, php-format msgid "domain %s not added!" msgstr "домен %s не добавлен!" #: ../www-data/main.php:397 msgid "please, insert a forward destination or disable Forward!" msgstr "укажите адрес пересылки или выключите Пересылку!" phamm-0.6.5/po/vi_VN.po0000644000175300017530000003476512643155515012622 0ustar phamm# Vietnamese translation for Phamm. # Copyright (c) 2004,2008 Alessandro De Zorzi, Mirko Grava # This file is distributed under the same license as the Phamm package. # # Clytie Siddall , 2008. # msgid "" msgstr "" "Project-Id-Version: phamm 0.5.13\n" "POT-Creation-Date: 2014-12-28 11:01+0100\n" "PO-Revision-Date: 2008-06-26 23:45+0930\n" "Last-Translator: Clytie Siddall \n" "Language-Team: Vietnamese \n" "Language: vi\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.7b3\n" #: ../public/main.php:658 #, php-format msgid "%s not added!" msgstr "Chưa thêm %s !" #: ../views/helpers.php:1058 msgid "...execute a command" msgstr "...thực thi một câu lệnh" #: ../views/helpers.php:809 msgid "Account" msgstr "Tài khoản" #: ../public/main.php:652 #, php-format msgid "Account %s successfully added" msgstr "Tài khoản %s đã được thêm" #: ../views/helpers.php:295 #, php-format msgid "Account %d/" msgid_plural "Accounts %d/" msgstr[0] "" #: ../views/helpers.php:297 #, php-format msgid "Account %d" msgid_plural "Accounts %d" msgstr[0] "" #: ../public/main.php:411 msgid "Account or Alias already exists" msgstr "Tài khoản hay Bí danh đã có" #. type: Content of: #: ../plugins/alias.xml:44 ../plugins/mail.xml:59 ../plugins/mail.xml:132 #, no-wrap msgid "Active" msgstr "Hoạt động" #: ../views/helpers.php:1215 msgid "Add catch-all address" msgstr "Thêm địa chỉ bắt tất cả" #: ../views/helpers.php:779 ../views/helpers.php:804 msgid "Add new account" msgstr "Thêm tài khoản mới" #: ../views/helpers.php:399 ../views/helpers.php:707 msgid "Add new domain" msgstr "Thêm miền mới" #: ../views/helpers.php:917 msgid "All" msgstr "Tất cả" #: ../views/helpers.php:897 msgid "All domains" msgstr "Mọi miền" #: ../public/main.php:372 #, php-format msgid "An Unexpected Error Occurred during %s Addition!" msgstr "" #: ../public/main.php:113 msgid "Bye!" msgstr "Tạm biệt nhé" #. type: Content of: #: ../plugins/mail.xml:91 #, no-wrap msgid "Can edit Accounts" msgstr "Có quyền sửa tài khoản" # type: Content of: #. type: Content of: #: ../plugins/mail.xml:66 #, no-wrap msgid "Can edit Anti-Virus" msgstr "Có quyền sửa Chống Vi-rút" #: ../public/main.php:100 msgid "Can't contact LDAP server" msgstr "Không thể liên lạc với trình phục vụ LDAP" #: ../public/main.php:471 msgid "Catch all" msgstr "Bắt tất cả" #: ../public/main.php:469 msgid "Catch all active" msgstr "Bắt mọi cái vẫn hoạt động" #: ../views/helpers.php:1202 #, fuzzy msgid "Catch-all" msgstr "Bắt tất cả" #: ../public/main.php:240 msgid "Changes have not performed" msgstr "Chưa thay đổi gì" #: ../lib/ldap.php:249 msgid "Code " msgstr "Mã" #: ../views/helpers.php:299 #, fuzzy msgid "Common Name" msgstr "Tên đăng nhập" #: ../views/helpers.php:724 ../views/helpers.php:821 msgid "Confirm Password" msgstr "Xác nhận mật khẩu" #: ../public/main.php:73 msgid "Connection to LDAP Server Failed!" msgstr "Không thành công kết nối đến máy phục vụ LDAP !" #. type: Content of: #: ../plugins/mail.xml:298 #, no-wrap msgid "Creation Date" msgstr "Ngày tạo" #. type: Content of: #: ../plugins/mail.xml:72 ../plugins/mail.xml:168 #, no-wrap msgid "Delete" msgstr "Xoá" #. type: Content of: #: ../plugins/alias.xml:39 #, no-wrap msgid "Destination" msgstr "Đích" #: ../views/helpers.php:712 msgid "Domain" msgstr "Miền" #: ../public/main.php:362 #, php-format msgid "Domain %s successfully added" msgstr "Miền %s đã được thêm" #: ../views/helpers.php:167 #, php-format msgid "Domain %d" msgid_plural "Domains %d" msgstr[0] "" #: ../public/main.php:457 msgid "Domain property" msgstr "Thuộc tính miền" #: ../views/helpers.php:109 msgid "Enter domain or e-mail" msgstr "" #: ../views/helpers.php:1362 msgid "Error: " msgstr "Lỗi: " #: ../views/helpers.php:1077 msgid "Execute command" msgstr "Thực thi câu lệnh" #. type: Content of: #: ../plugins/person.xml:48 #, no-wrap msgid "FAX" msgstr "Điện thư" #. type: Content of: #: ../plugins/ftp.xml:71 #, no-wrap msgid "FTP Quota Mb" msgstr "MB hạn ngạch FTP" #. type: Content of: #: ../plugins/ftp.xml:65 #, no-wrap msgid "FTP Status" msgstr "Trạng thái FTP" #. type: Content of: #: ../plugins/mail.xml:211 #, no-wrap msgid "Forward Active" msgstr "Chuyển tiếp hoạt động" #. type: Content of: #: ../plugins/ftp.xml:39 #, no-wrap msgid "GID number" msgstr "Số GID" #: ../public/main.php:102 msgid "Generic Error: " msgstr "Lỗi chung: " #. type: Content of: #: ../plugins/ftp.xml:45 #, no-wrap msgid "Home Directory" msgstr "Thư mục chính" #. type: Content of: #: ../plugins/person.xml:40 #, no-wrap msgid "Home Phone" msgstr "Điện thoại nhà" #: ../lib/ldap.php:249 msgid "LDAP Error: " msgstr "Lỗi LDAP: " #: ../views/helpers.php:117 msgid "Login" msgstr "Đăng nhập" #: ../views/helpers.php:108 msgid "Login Name" msgstr "Tên đăng nhập" #: ../public/main.php:98 msgid "Login Username or Password not valid." msgstr "Sai đăng nhập tên người dùng hay mật khẩu." #: ../public/main.php:184 #, php-format msgid "Logout %s" msgstr "Đăng xuất %s" #. type: Content of: #: ../plugins/mail.xml:162 #, no-wrap msgid "Mail Autoreply" msgstr "Thư tự động trả lời" #. type: Content of: #: ../plugins/mail.xml:147 #, no-wrap msgid "Mailbox" msgstr "Hộp thư" #. type: Content of: #: ../plugins/mail.xml:218 #, no-wrap msgid "Maildrop" msgstr "Thả thư" #. type: Content of: #: ../plugins/mail.xml:45 #, no-wrap msgid "Max Quota" msgstr "Hạn ngạch trên" #. type: Content of: #: ../plugins/mail.xml:52 #, no-wrap msgid "Max Smtp Auth" msgstr "" #. type: Content of: #: ../plugins/mail.xml:38 #, no-wrap msgid "Max number of Alias" msgstr "Số tối đa các Bí danh" #. type: Content of: #: ../plugins/mail.xml:31 #, no-wrap msgid "Max number of Mail" msgstr "Số tối đa các thư" #. type: Content of: #: ../plugins/person.xml:44 #, no-wrap msgid "Mobile" msgstr "Di động" #: ../views/helpers.php:802 msgid "Modify account" msgstr "Sửa tài khoản" #: ../views/helpers.php:705 msgid "Modify domain" msgstr "Sửa miền" #: ../views/helpers.php:979 ../views/helpers.php:980 msgid "NO" msgstr "KHÔNG" #: ../views/helpers.php:824 msgid "Name" msgstr "" #: ../public/main.php:525 #, fuzzy msgid "Name is not valid" msgstr "TC không hợp lệ" #. type: Content of: #: ../plugins/mail.xml:177 #, no-wrap msgid "Other Transport" msgstr "Cơ chế truyền khác" #. type: Content of: #: ../plugins/person.xml:52 #, no-wrap msgid "Pager" msgstr "Máy nhắn tin" #: ../views/helpers.php:113 ../views/helpers.php:114 ../views/helpers.php:721 #: ../views/helpers.php:818 msgid "Password" msgstr "Mật khẩu" #: ../controllers/helpers.php:159 msgid "Password contains special chars" msgstr "Mật khẩu chứa ký tự đặc biệt" #: ../controllers/helpers.php:156 msgid "Password too short!" msgstr "Mật khẩu quá ngắn !" #: ../controllers/helpers.php:153 msgid "Passwords don't match!" msgstr "Hai mật khẩu không trùng !" #. type: Content of: #: ../plugins/mail.xml:81 #, no-wrap msgid "Postfix Transport" msgstr "Truyền Postfix" #. type: Content of: #: ../plugins/proxy.xml:42 #, no-wrap msgid "Proxy Host" msgstr "Máy ủy nhiệm" #. type: Content of: #: ../plugins/mail.xml:124 #, no-wrap msgid "Quota" msgstr "Hạn ngạch" #. type: Content of: #: ../plugins/alias.xml:51 ../plugins/mail.xml:117 #, no-wrap msgid "SMTP Auth" msgstr "Xác thực SMTP" #. type: Content of: #: ../plugins/alias.xml:65 ../plugins/mail.xml:230 #, no-wrap msgid "SPAM Check" msgstr "Kiểm tra thư rác" #: ../public/main.php:437 msgid "SPAM Tags level are not set correctly!" msgstr "Sai đặt mức các thẻ thư rác." #: ../views/helpers.php:1064 msgid "Set" msgstr "Đặt" #: ../views/helpers.php:117 msgid "Sign in" msgstr "" #. type: Content of: #: ../plugins/mail.xml:238 #, no-wrap msgid "Spam Kill Level" msgstr "Cấp giết thư rác" #. type: Content of: #: ../plugins/mail.xml:278 #, no-wrap msgid "Spam Tag Level" msgstr "Mức thẻ thư rác" #. type: Content of: #: ../plugins/mail.xml:258 #, no-wrap msgid "Spam Tag2 Level" msgstr "Mức thẻ thư rác 2" #: ../public/main.php:413 msgid "Special Characters not Allowed in E-mail address" msgstr "Không cho phép địa chỉ thư điện tử chứa ký tự đặc biệt" #: ../views/helpers.php:827 msgid "Surname" msgstr "" #: ../public/main.php:527 #, fuzzy msgid "Surname is not valid" msgstr "SN không hợp lệ" #: ../public/main.php:257 msgid "Syntax not valid or special chars found in domain name" msgstr "Sai cú pháp hay tên miền chứa ký tự đặc biệt" #. type: Content of: #: ../plugins/person.xml:36 #, no-wrap msgid "Telephone" msgstr "Điện thoại" #: ../public/main.php:415 #, php-format msgid "The maximum number of accounts (%s) has been reached or exceeded!" msgstr "" #: ../controllers/helpers.php:84 #, php-format msgid "The maximum number of attribute %s (%s) has been reached or exceeded!" msgstr "" #: ../views/helpers.php:459 #, php-format msgid "" "The maximum number of attribute %s (%s) has been reached or exceeded. " "Attribute has been disabled!" msgstr "" #. type: Content of: #: ../plugins/ftp.xml:52 ../plugins/mail.xml:154 #, no-wrap msgid "UID" msgstr "UID" #. type: Content of: #: ../plugins/ftp.xml:59 #, no-wrap msgid "UID Number" msgstr "Số UID" #. type: Content of: #: ../plugins/mail.xml:183 #, no-wrap msgid "Vacation" msgstr "Nghỉ phép" #. type: Content of: #: ../plugins/mail.xml:205 #, no-wrap msgid "Vacation End" msgstr "Cuối nghỉ phép" #. type: Content of: #: ../plugins/mail.xml:194 #, no-wrap msgid "Vacation Forward" msgstr "Chuyển tiếp do nghỉ phép" #. type: Content of: #: ../plugins/mail.xml:189 #, no-wrap msgid "Vacation Info" msgstr "Thông tin nghỉ phép" #. type: Content of: #: ../plugins/mail.xml:199 #, no-wrap msgid "Vacation Start" msgstr "Đầu nghỉ phép" #: ../views/helpers.php:65 ../views/helpers.php:124 #, php-format msgid "Ver. %s" msgstr "Phạm vi. %s" #. type: Content of: #: ../plugins/mail.xml:140 #, no-wrap msgid "Virtual Home" msgstr "Nhà ảo" #. type: Content of: #: ../plugins/alias.xml:58 ../plugins/mail.xml:222 #, no-wrap msgid "Virus Check" msgstr "Kiểm tra vi-rút" #: ../views/helpers.php:1367 msgid "Warning: " msgstr "Cảnh báo : " #. type: Content of: #: ../plugins/proxy.xml:36 #, no-wrap msgid "Web Access" msgstr "Truy cập Web" #: ../views/helpers.php:979 ../views/helpers.php:980 msgid "YES" msgstr "CÓ" #: ../views/helpers.php:1433 msgid "" "You will be automatically redirected to a new page within a few seconds.
If this does not happen, please follow the link:" msgstr "" "Một trang mới sẽ tự động nạp trong vòng vài giây.
Không thì nhấn vào " "liên kết này:" #: ../public/main.php:820 #, php-format msgid "account %s not updated!" msgstr "tài khoản %s chưa được cập nhật !" #: ../views/helpers.php:1433 msgid "click here" msgstr "nhấn đây" #: ../public/main.php:439 msgid "do not activate Forward and Vacation Forward in the same time!" msgstr "" "không nên kích hoạt đồng thời hai chức năng Chuyển tiếp và Chuyển tiếp do " "nghỉ phép !" #: ../public/main.php:367 #, php-format msgid "domain %s not added!" msgstr "miền %s chưa được thêm !" #: ../public/main.php:223 #, php-format msgid "modifying %s" msgstr "" #: ../public/main.php:441 msgid "please, insert a forward destination or disable Forward!" msgstr "hãy nhập một đích đến chuyển tiếp, hoặc tắt chức năng Chuyển tiếp !" #~ msgid "%s modified" #~ msgstr "%s bị sửa đổi" #~ msgid "...select an action" #~ msgstr "...chọn một hành vi" #~ msgid "Account (%d)" #~ msgid_plural "Accounts (%d)" #~ msgstr[0] "Tài khoản (%d)" #~ msgid "CN" #~ msgstr "TC" #~ msgid "Domain (%d)" #~ msgid_plural "Domains (%d)" #~ msgstr[0] "Miền (%d)" #~ msgid "Given Name" #~ msgstr "Tên hay gọi" #~ msgid "SN" #~ msgstr "SN" phamm-0.6.5/public/0000755000175300017530000000000012643155515012062 5ustar phammphamm-0.6.5/public/css/0000755000175300017530000000000012643155515012652 5ustar phammphamm-0.6.5/public/css/bootstrap-responsive.css0000644000175300017530000005312612643155515017603 0ustar phamm/*! * Bootstrap Responsive v2.3.2 * * Copyright 2013 Twitter, Inc * Licensed under the Apache License v2.0 * http://www.apache.org/licenses/LICENSE-2.0 * * Designed and built with all the love in the world by @mdo and @fat. */ .clearfix { *zoom: 1; } .clearfix:before, .clearfix:after { display: table; line-height: 0; content: ""; } .clearfix:after { clear: both; } .hide-text { font: 0/0 a; color: transparent; text-shadow: none; background-color: transparent; border: 0; } .input-block-level { display: block; width: 100%; min-height: 30px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } @-ms-viewport { width: device-width; } .hidden { display: none; visibility: hidden; } .visible-phone { display: none !important; } .visible-tablet { display: none !important; } .hidden-desktop { display: none !important; } .visible-desktop { display: inherit !important; } @media (min-width: 768px) and (max-width: 979px) { .hidden-desktop { display: inherit !important; } .visible-desktop { display: none !important ; } .visible-tablet { display: inherit !important; } .hidden-tablet { display: none !important; } } @media (max-width: 767px) { .hidden-desktop { display: inherit !important; } .visible-desktop { display: none !important; } .visible-phone { display: inherit !important; } .hidden-phone { display: none !important; } } .visible-print { display: none !important; } @media print { .visible-print { display: inherit !important; } .hidden-print { display: none !important; } } @media (min-width: 1200px) { .row { margin-left: -30px; *zoom: 1; } .row:before, .row:after { display: table; line-height: 0; content: ""; } .row:after { clear: both; } [class*="span"] { float: left; min-height: 1px; margin-left: 30px; } .container, .navbar-static-top .container, .navbar-fixed-top .container, .navbar-fixed-bottom .container { width: 1170px; } .span12 { width: 1170px; } .span11 { width: 1070px; } .span10 { width: 970px; } .span9 { width: 870px; } .span8 { width: 770px; } .span7 { width: 670px; } .span6 { width: 570px; } .span5 { width: 470px; } .span4 { width: 370px; } .span3 { width: 270px; } .span2 { width: 170px; } .span1 { width: 70px; } .offset12 { margin-left: 1230px; } .offset11 { margin-left: 1130px; } .offset10 { margin-left: 1030px; } .offset9 { margin-left: 930px; } .offset8 { margin-left: 830px; } .offset7 { margin-left: 730px; } .offset6 { margin-left: 630px; } .offset5 { margin-left: 530px; } .offset4 { margin-left: 430px; } .offset3 { margin-left: 330px; } .offset2 { margin-left: 230px; } .offset1 { margin-left: 130px; } .row-fluid { width: 100%; *zoom: 1; } .row-fluid:before, .row-fluid:after { display: table; line-height: 0; content: ""; } .row-fluid:after { clear: both; } .row-fluid [class*="span"] { display: block; float: left; width: 100%; min-height: 30px; margin-left: 2.564102564102564%; *margin-left: 2.5109110747408616%; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } .row-fluid [class*="span"]:first-child { margin-left: 0; } .row-fluid .controls-row [class*="span"] + [class*="span"] { margin-left: 2.564102564102564%; } .row-fluid .span12 { width: 100%; *width: 99.94680851063829%; } .row-fluid .span11 { width: 91.45299145299145%; *width: 91.39979996362975%; } .row-fluid .span10 { width: 82.90598290598291%; *width: 82.8527914166212%; } .row-fluid .span9 { width: 74.35897435897436%; *width: 74.30578286961266%; } .row-fluid .span8 { width: 65.81196581196582%; *width: 65.75877432260411%; } .row-fluid .span7 { width: 57.26495726495726%; *width: 57.21176577559556%; } .row-fluid .span6 { width: 48.717948717948715%; *width: 48.664757228587014%; } .row-fluid .span5 { width: 40.17094017094017%; *width: 40.11774868157847%; } .row-fluid .span4 { width: 31.623931623931625%; *width: 31.570740134569924%; } .row-fluid .span3 { width: 23.076923076923077%; *width: 23.023731587561375%; } .row-fluid .span2 { width: 14.52991452991453%; *width: 14.476723040552828%; } .row-fluid .span1 { width: 5.982905982905983%; *width: 5.929714493544281%; } .row-fluid .offset12 { margin-left: 105.12820512820512%; *margin-left: 105.02182214948171%; } .row-fluid .offset12:first-child { margin-left: 102.56410256410257%; *margin-left: 102.45771958537915%; } .row-fluid .offset11 { margin-left: 96.58119658119658%; *margin-left: 96.47481360247316%; } .row-fluid .offset11:first-child { margin-left: 94.01709401709402%; *margin-left: 93.91071103837061%; } .row-fluid .offset10 { margin-left: 88.03418803418803%; *margin-left: 87.92780505546462%; } .row-fluid .offset10:first-child { margin-left: 85.47008547008548%; *margin-left: 85.36370249136206%; } .row-fluid .offset9 { margin-left: 79.48717948717949%; *margin-left: 79.38079650845607%; } .row-fluid .offset9:first-child { margin-left: 76.92307692307693%; *margin-left: 76.81669394435352%; } .row-fluid .offset8 { margin-left: 70.94017094017094%; *margin-left: 70.83378796144753%; } .row-fluid .offset8:first-child { margin-left: 68.37606837606839%; *margin-left: 68.26968539734497%; } .row-fluid .offset7 { margin-left: 62.393162393162385%; *margin-left: 62.28677941443899%; } .row-fluid .offset7:first-child { margin-left: 59.82905982905982%; *margin-left: 59.72267685033642%; } .row-fluid .offset6 { margin-left: 53.84615384615384%; *margin-left: 53.739770867430444%; } .row-fluid .offset6:first-child { margin-left: 51.28205128205128%; *margin-left: 51.175668303327875%; } .row-fluid .offset5 { margin-left: 45.299145299145295%; *margin-left: 45.1927623204219%; } .row-fluid .offset5:first-child { margin-left: 42.73504273504273%; *margin-left: 42.62865975631933%; } .row-fluid .offset4 { margin-left: 36.75213675213675%; *margin-left: 36.645753773413354%; } .row-fluid .offset4:first-child { margin-left: 34.18803418803419%; *margin-left: 34.081651209310785%; } .row-fluid .offset3 { margin-left: 28.205128205128204%; *margin-left: 28.0987452264048%; } .row-fluid .offset3:first-child { margin-left: 25.641025641025642%; *margin-left: 25.53464266230224%; } .row-fluid .offset2 { margin-left: 19.65811965811966%; *margin-left: 19.551736679396257%; } .row-fluid .offset2:first-child { margin-left: 17.094017094017094%; *margin-left: 16.98763411529369%; } .row-fluid .offset1 { margin-left: 11.11111111111111%; *margin-left: 11.004728132387708%; } .row-fluid .offset1:first-child { margin-left: 8.547008547008547%; *margin-left: 8.440625568285142%; } input, textarea, .uneditable-input { margin-left: 0; } .controls-row [class*="span"] + [class*="span"] { margin-left: 30px; } input.span12, textarea.span12, .uneditable-input.span12 { width: 1156px; } input.span11, textarea.span11, .uneditable-input.span11 { width: 1056px; } input.span10, textarea.span10, .uneditable-input.span10 { width: 956px; } input.span9, textarea.span9, .uneditable-input.span9 { width: 856px; } input.span8, textarea.span8, .uneditable-input.span8 { width: 756px; } input.span7, textarea.span7, .uneditable-input.span7 { width: 656px; } input.span6, textarea.span6, .uneditable-input.span6 { width: 556px; } input.span5, textarea.span5, .uneditable-input.span5 { width: 456px; } input.span4, textarea.span4, .uneditable-input.span4 { width: 356px; } input.span3, textarea.span3, .uneditable-input.span3 { width: 256px; } input.span2, textarea.span2, .uneditable-input.span2 { width: 156px; } input.span1, textarea.span1, .uneditable-input.span1 { width: 56px; } .thumbnails { margin-left: -30px; } .thumbnails > li { margin-left: 30px; } .row-fluid .thumbnails { margin-left: 0; } } @media (min-width: 768px) and (max-width: 979px) { .row { margin-left: -20px; *zoom: 1; } .row:before, .row:after { display: table; line-height: 0; content: ""; } .row:after { clear: both; } [class*="span"] { float: left; min-height: 1px; margin-left: 20px; } .container, .navbar-static-top .container, .navbar-fixed-top .container, .navbar-fixed-bottom .container { width: 724px; } .span12 { width: 724px; } .span11 { width: 662px; } .span10 { width: 600px; } .span9 { width: 538px; } .span8 { width: 476px; } .span7 { width: 414px; } .span6 { width: 352px; } .span5 { width: 290px; } .span4 { width: 228px; } .span3 { width: 166px; } .span2 { width: 104px; } .span1 { width: 42px; } .offset12 { margin-left: 764px; } .offset11 { margin-left: 702px; } .offset10 { margin-left: 640px; } .offset9 { margin-left: 578px; } .offset8 { margin-left: 516px; } .offset7 { margin-left: 454px; } .offset6 { margin-left: 392px; } .offset5 { margin-left: 330px; } .offset4 { margin-left: 268px; } .offset3 { margin-left: 206px; } .offset2 { margin-left: 144px; } .offset1 { margin-left: 82px; } .row-fluid { width: 100%; *zoom: 1; } .row-fluid:before, .row-fluid:after { display: table; line-height: 0; content: ""; } .row-fluid:after { clear: both; } .row-fluid [class*="span"] { display: block; float: left; width: 100%; min-height: 30px; margin-left: 2.7624309392265194%; *margin-left: 2.709239449864817%; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } .row-fluid [class*="span"]:first-child { margin-left: 0; } .row-fluid .controls-row [class*="span"] + [class*="span"] { margin-left: 2.7624309392265194%; } .row-fluid .span12 { width: 100%; *width: 99.94680851063829%; } .row-fluid .span11 { width: 91.43646408839778%; *width: 91.38327259903608%; } .row-fluid .span10 { width: 82.87292817679558%; *width: 82.81973668743387%; } .row-fluid .span9 { width: 74.30939226519337%; *width: 74.25620077583166%; } .row-fluid .span8 { width: 65.74585635359117%; *width: 65.69266486422946%; } .row-fluid .span7 { width: 57.18232044198895%; *width: 57.12912895262725%; } .row-fluid .span6 { width: 48.61878453038674%; *width: 48.56559304102504%; } .row-fluid .span5 { width: 40.05524861878453%; *width: 40.00205712942283%; } .row-fluid .span4 { width: 31.491712707182323%; *width: 31.43852121782062%; } .row-fluid .span3 { width: 22.92817679558011%; *width: 22.87498530621841%; } .row-fluid .span2 { width: 14.3646408839779%; *width: 14.311449394616199%; } .row-fluid .span1 { width: 5.801104972375691%; *width: 5.747913483013988%; } .row-fluid .offset12 { margin-left: 105.52486187845304%; *margin-left: 105.41847889972962%; } .row-fluid .offset12:first-child { margin-left: 102.76243093922652%; *margin-left: 102.6560479605031%; } .row-fluid .offset11 { margin-left: 96.96132596685082%; *margin-left: 96.8549429881274%; } .row-fluid .offset11:first-child { margin-left: 94.1988950276243%; *margin-left: 94.09251204890089%; } .row-fluid .offset10 { margin-left: 88.39779005524862%; *margin-left: 88.2914070765252%; } .row-fluid .offset10:first-child { margin-left: 85.6353591160221%; *margin-left: 85.52897613729868%; } .row-fluid .offset9 { margin-left: 79.8342541436464%; *margin-left: 79.72787116492299%; } .row-fluid .offset9:first-child { margin-left: 77.07182320441989%; *margin-left: 76.96544022569647%; } .row-fluid .offset8 { margin-left: 71.2707182320442%; *margin-left: 71.16433525332079%; } .row-fluid .offset8:first-child { margin-left: 68.50828729281768%; *margin-left: 68.40190431409427%; } .row-fluid .offset7 { margin-left: 62.70718232044199%; *margin-left: 62.600799341718584%; } .row-fluid .offset7:first-child { margin-left: 59.94475138121547%; *margin-left: 59.838368402492065%; } .row-fluid .offset6 { margin-left: 54.14364640883978%; *margin-left: 54.037263430116376%; } .row-fluid .offset6:first-child { margin-left: 51.38121546961326%; *margin-left: 51.27483249088986%; } .row-fluid .offset5 { margin-left: 45.58011049723757%; *margin-left: 45.47372751851417%; } .row-fluid .offset5:first-child { margin-left: 42.81767955801105%; *margin-left: 42.71129657928765%; } .row-fluid .offset4 { margin-left: 37.01657458563536%; *margin-left: 36.91019160691196%; } .row-fluid .offset4:first-child { margin-left: 34.25414364640884%; *margin-left: 34.14776066768544%; } .row-fluid .offset3 { margin-left: 28.45303867403315%; *margin-left: 28.346655695309746%; } .row-fluid .offset3:first-child { margin-left: 25.69060773480663%; *margin-left: 25.584224756083227%; } .row-fluid .offset2 { margin-left: 19.88950276243094%; *margin-left: 19.783119783707537%; } .row-fluid .offset2:first-child { margin-left: 17.12707182320442%; *margin-left: 17.02068884448102%; } .row-fluid .offset1 { margin-left: 11.32596685082873%; *margin-left: 11.219583872105325%; } .row-fluid .offset1:first-child { margin-left: 8.56353591160221%; *margin-left: 8.457152932878806%; } input, textarea, .uneditable-input { margin-left: 0; } .controls-row [class*="span"] + [class*="span"] { margin-left: 20px; } input.span12, textarea.span12, .uneditable-input.span12 { width: 710px; } input.span11, textarea.span11, .uneditable-input.span11 { width: 648px; } input.span10, textarea.span10, .uneditable-input.span10 { width: 586px; } input.span9, textarea.span9, .uneditable-input.span9 { width: 524px; } input.span8, textarea.span8, .uneditable-input.span8 { width: 462px; } input.span7, textarea.span7, .uneditable-input.span7 { width: 400px; } input.span6, textarea.span6, .uneditable-input.span6 { width: 338px; } input.span5, textarea.span5, .uneditable-input.span5 { width: 276px; } input.span4, textarea.span4, .uneditable-input.span4 { width: 214px; } input.span3, textarea.span3, .uneditable-input.span3 { width: 152px; } input.span2, textarea.span2, .uneditable-input.span2 { width: 90px; } input.span1, textarea.span1, .uneditable-input.span1 { width: 28px; } } @media (max-width: 767px) { body { padding-right: 20px; padding-left: 20px; } .navbar-fixed-top, .navbar-fixed-bottom, .navbar-static-top { margin-right: -20px; margin-left: -20px; } .container-fluid { padding: 0; } .dl-horizontal dt { float: none; width: auto; clear: none; text-align: left; } .dl-horizontal dd { margin-left: 0; } .container { width: auto; } .row-fluid { width: 100%; } .row, .thumbnails { margin-left: 0; } .thumbnails > li { float: none; margin-left: 0; } [class*="span"], .uneditable-input[class*="span"], .row-fluid [class*="span"] { display: block; float: none; width: 100%; margin-left: 0; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } .span12, .row-fluid .span12 { width: 100%; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } .row-fluid [class*="offset"]:first-child { margin-left: 0; } .input-large, .input-xlarge, .input-xxlarge, input[class*="span"], select[class*="span"], textarea[class*="span"], .uneditable-input { display: block; width: 100%; min-height: 30px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } .input-prepend input, .input-append input, .input-prepend input[class*="span"], .input-append input[class*="span"] { display: inline-block; width: auto; } .controls-row [class*="span"] + [class*="span"] { margin-left: 0; } .modal { position: fixed; top: 20px; right: 20px; left: 20px; width: auto; margin: 0; } .modal.fade { top: -100px; } .modal.fade.in { top: 20px; } } @media (max-width: 480px) { .nav-collapse { -webkit-transform: translate3d(0, 0, 0); } .page-header h1 small { display: block; line-height: 20px; } input[type="checkbox"], input[type="radio"] { border: 1px solid #ccc; } .form-horizontal .control-label { float: none; width: auto; padding-top: 0; text-align: left; } .form-horizontal .controls { margin-left: 0; } .form-horizontal .control-list { padding-top: 0; } .form-horizontal .form-actions { padding-right: 10px; padding-left: 10px; } .media .pull-left, .media .pull-right { display: block; float: none; margin-bottom: 10px; } .media-object { margin-right: 0; margin-left: 0; } .modal { top: 10px; right: 10px; left: 10px; } .modal-header .close { padding: 10px; margin: -10px; } .carousel-caption { position: static; } } @media (max-width: 979px) { body { padding-top: 0; } .navbar-fixed-top, .navbar-fixed-bottom { position: static; } .navbar-fixed-top { margin-bottom: 20px; } .navbar-fixed-bottom { margin-top: 20px; } .navbar-fixed-top .navbar-inner, .navbar-fixed-bottom .navbar-inner { padding: 5px; } .navbar .container { width: auto; padding: 0; } .navbar .brand { padding-right: 10px; padding-left: 10px; margin: 0 0 0 -5px; } .nav-collapse { clear: both; } .nav-collapse .nav { float: none; margin: 0 0 10px; } .nav-collapse .nav > li { float: none; } .nav-collapse .nav > li > a { margin-bottom: 2px; } .nav-collapse .nav > .divider-vertical { display: none; } .nav-collapse .nav .nav-header { color: #777777; text-shadow: none; } .nav-collapse .nav > li > a, .nav-collapse .dropdown-menu a { padding: 9px 15px; font-weight: bold; color: #777777; -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; } .nav-collapse .btn { padding: 4px 10px 4px; font-weight: normal; -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px; } .nav-collapse .dropdown-menu li + li a { margin-bottom: 2px; } .nav-collapse .nav > li > a:hover, .nav-collapse .nav > li > a:focus, .nav-collapse .dropdown-menu a:hover, .nav-collapse .dropdown-menu a:focus { background-color: #f2f2f2; } .navbar-inverse .nav-collapse .nav > li > a, .navbar-inverse .nav-collapse .dropdown-menu a { color: #999999; } .navbar-inverse .nav-collapse .nav > li > a:hover, .navbar-inverse .nav-collapse .nav > li > a:focus, .navbar-inverse .nav-collapse .dropdown-menu a:hover, .navbar-inverse .nav-collapse .dropdown-menu a:focus { background-color: #111111; } .nav-collapse.in .btn-group { padding: 0; margin-top: 5px; } .nav-collapse .dropdown-menu { position: static; top: auto; left: auto; display: none; float: none; max-width: none; padding: 0; margin: 0 15px; background-color: transparent; border: none; -webkit-border-radius: 0; -moz-border-radius: 0; border-radius: 0; -webkit-box-shadow: none; -moz-box-shadow: none; box-shadow: none; } .nav-collapse .open > .dropdown-menu { display: block; } .nav-collapse .dropdown-menu:before, .nav-collapse .dropdown-menu:after { display: none; } .nav-collapse .dropdown-menu .divider { display: none; } .nav-collapse .nav > li > .dropdown-menu:before, .nav-collapse .nav > li > .dropdown-menu:after { display: none; } .nav-collapse .navbar-form, .nav-collapse .navbar-search { float: none; padding: 10px 15px; margin: 10px 0; border-top: 1px solid #f2f2f2; border-bottom: 1px solid #f2f2f2; -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1); -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1); } .navbar-inverse .nav-collapse .navbar-form, .navbar-inverse .nav-collapse .navbar-search { border-top-color: #111111; border-bottom-color: #111111; } .navbar .nav-collapse .nav.pull-right { float: none; margin-left: 0; } .nav-collapse, .nav-collapse.collapse { height: 0; overflow: hidden; } .navbar .btn-navbar { display: block; } .navbar-static .navbar-inner { padding-right: 10px; padding-left: 10px; } } @media (min-width: 980px) { .nav-collapse.collapse { height: auto !important; overflow: visible !important; } } phamm-0.6.5/public/css/bootstrap-responsive.min.css0000644000175300017530000004071012643155515020360 0ustar phamm/*! * Bootstrap Responsive v2.3.2 * * Copyright 2013 Twitter, Inc * Licensed under the Apache License v2.0 * http://www.apache.org/licenses/LICENSE-2.0 * * Designed and built with all the love in the world by @mdo and @fat. */.clearfix{*zoom:1}.clearfix:before,.clearfix:after{display:table;line-height:0;content:""}.clearfix:after{clear:both}.hide-text{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.input-block-level{display:block;width:100%;min-height:30px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}@-ms-viewport{width:device-width}.hidden{display:none;visibility:hidden}.visible-phone{display:none!important}.visible-tablet{display:none!important}.hidden-desktop{display:none!important}.visible-desktop{display:inherit!important}@media(min-width:768px) and (max-width:979px){.hidden-desktop{display:inherit!important}.visible-desktop{display:none!important}.visible-tablet{display:inherit!important}.hidden-tablet{display:none!important}}@media(max-width:767px){.hidden-desktop{display:inherit!important}.visible-desktop{display:none!important}.visible-phone{display:inherit!important}.hidden-phone{display:none!important}}.visible-print{display:none!important}@media print{.visible-print{display:inherit!important}.hidden-print{display:none!important}}@media(min-width:1200px){.row{margin-left:-30px;*zoom:1}.row:before,.row:after{display:table;line-height:0;content:""}.row:after{clear:both}[class*="span"]{float:left;min-height:1px;margin-left:30px}.container,.navbar-static-top .container,.navbar-fixed-top .container,.navbar-fixed-bottom .container{width:1170px}.span12{width:1170px}.span11{width:1070px}.span10{width:970px}.span9{width:870px}.span8{width:770px}.span7{width:670px}.span6{width:570px}.span5{width:470px}.span4{width:370px}.span3{width:270px}.span2{width:170px}.span1{width:70px}.offset12{margin-left:1230px}.offset11{margin-left:1130px}.offset10{margin-left:1030px}.offset9{margin-left:930px}.offset8{margin-left:830px}.offset7{margin-left:730px}.offset6{margin-left:630px}.offset5{margin-left:530px}.offset4{margin-left:430px}.offset3{margin-left:330px}.offset2{margin-left:230px}.offset1{margin-left:130px}.row-fluid{width:100%;*zoom:1}.row-fluid:before,.row-fluid:after{display:table;line-height:0;content:""}.row-fluid:after{clear:both}.row-fluid [class*="span"]{display:block;float:left;width:100%;min-height:30px;margin-left:2.564102564102564%;*margin-left:2.5109110747408616%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.row-fluid [class*="span"]:first-child{margin-left:0}.row-fluid .controls-row [class*="span"]+[class*="span"]{margin-left:2.564102564102564%}.row-fluid .span12{width:100%;*width:99.94680851063829%}.row-fluid .span11{width:91.45299145299145%;*width:91.39979996362975%}.row-fluid .span10{width:82.90598290598291%;*width:82.8527914166212%}.row-fluid .span9{width:74.35897435897436%;*width:74.30578286961266%}.row-fluid .span8{width:65.81196581196582%;*width:65.75877432260411%}.row-fluid .span7{width:57.26495726495726%;*width:57.21176577559556%}.row-fluid .span6{width:48.717948717948715%;*width:48.664757228587014%}.row-fluid .span5{width:40.17094017094017%;*width:40.11774868157847%}.row-fluid .span4{width:31.623931623931625%;*width:31.570740134569924%}.row-fluid .span3{width:23.076923076923077%;*width:23.023731587561375%}.row-fluid .span2{width:14.52991452991453%;*width:14.476723040552828%}.row-fluid .span1{width:5.982905982905983%;*width:5.929714493544281%}.row-fluid .offset12{margin-left:105.12820512820512%;*margin-left:105.02182214948171%}.row-fluid .offset12:first-child{margin-left:102.56410256410257%;*margin-left:102.45771958537915%}.row-fluid .offset11{margin-left:96.58119658119658%;*margin-left:96.47481360247316%}.row-fluid .offset11:first-child{margin-left:94.01709401709402%;*margin-left:93.91071103837061%}.row-fluid .offset10{margin-left:88.03418803418803%;*margin-left:87.92780505546462%}.row-fluid .offset10:first-child{margin-left:85.47008547008548%;*margin-left:85.36370249136206%}.row-fluid .offset9{margin-left:79.48717948717949%;*margin-left:79.38079650845607%}.row-fluid .offset9:first-child{margin-left:76.92307692307693%;*margin-left:76.81669394435352%}.row-fluid .offset8{margin-left:70.94017094017094%;*margin-left:70.83378796144753%}.row-fluid .offset8:first-child{margin-left:68.37606837606839%;*margin-left:68.26968539734497%}.row-fluid .offset7{margin-left:62.393162393162385%;*margin-left:62.28677941443899%}.row-fluid .offset7:first-child{margin-left:59.82905982905982%;*margin-left:59.72267685033642%}.row-fluid .offset6{margin-left:53.84615384615384%;*margin-left:53.739770867430444%}.row-fluid .offset6:first-child{margin-left:51.28205128205128%;*margin-left:51.175668303327875%}.row-fluid .offset5{margin-left:45.299145299145295%;*margin-left:45.1927623204219%}.row-fluid .offset5:first-child{margin-left:42.73504273504273%;*margin-left:42.62865975631933%}.row-fluid .offset4{margin-left:36.75213675213675%;*margin-left:36.645753773413354%}.row-fluid .offset4:first-child{margin-left:34.18803418803419%;*margin-left:34.081651209310785%}.row-fluid .offset3{margin-left:28.205128205128204%;*margin-left:28.0987452264048%}.row-fluid .offset3:first-child{margin-left:25.641025641025642%;*margin-left:25.53464266230224%}.row-fluid .offset2{margin-left:19.65811965811966%;*margin-left:19.551736679396257%}.row-fluid .offset2:first-child{margin-left:17.094017094017094%;*margin-left:16.98763411529369%}.row-fluid .offset1{margin-left:11.11111111111111%;*margin-left:11.004728132387708%}.row-fluid .offset1:first-child{margin-left:8.547008547008547%;*margin-left:8.440625568285142%}input,textarea,.uneditable-input{margin-left:0}.controls-row [class*="span"]+[class*="span"]{margin-left:30px}input.span12,textarea.span12,.uneditable-input.span12{width:1156px}input.span11,textarea.span11,.uneditable-input.span11{width:1056px}input.span10,textarea.span10,.uneditable-input.span10{width:956px}input.span9,textarea.span9,.uneditable-input.span9{width:856px}input.span8,textarea.span8,.uneditable-input.span8{width:756px}input.span7,textarea.span7,.uneditable-input.span7{width:656px}input.span6,textarea.span6,.uneditable-input.span6{width:556px}input.span5,textarea.span5,.uneditable-input.span5{width:456px}input.span4,textarea.span4,.uneditable-input.span4{width:356px}input.span3,textarea.span3,.uneditable-input.span3{width:256px}input.span2,textarea.span2,.uneditable-input.span2{width:156px}input.span1,textarea.span1,.uneditable-input.span1{width:56px}.thumbnails{margin-left:-30px}.thumbnails>li{margin-left:30px}.row-fluid .thumbnails{margin-left:0}}@media(min-width:768px) and (max-width:979px){.row{margin-left:-20px;*zoom:1}.row:before,.row:after{display:table;line-height:0;content:""}.row:after{clear:both}[class*="span"]{float:left;min-height:1px;margin-left:20px}.container,.navbar-static-top .container,.navbar-fixed-top .container,.navbar-fixed-bottom .container{width:724px}.span12{width:724px}.span11{width:662px}.span10{width:600px}.span9{width:538px}.span8{width:476px}.span7{width:414px}.span6{width:352px}.span5{width:290px}.span4{width:228px}.span3{width:166px}.span2{width:104px}.span1{width:42px}.offset12{margin-left:764px}.offset11{margin-left:702px}.offset10{margin-left:640px}.offset9{margin-left:578px}.offset8{margin-left:516px}.offset7{margin-left:454px}.offset6{margin-left:392px}.offset5{margin-left:330px}.offset4{margin-left:268px}.offset3{margin-left:206px}.offset2{margin-left:144px}.offset1{margin-left:82px}.row-fluid{width:100%;*zoom:1}.row-fluid:before,.row-fluid:after{display:table;line-height:0;content:""}.row-fluid:after{clear:both}.row-fluid [class*="span"]{display:block;float:left;width:100%;min-height:30px;margin-left:2.7624309392265194%;*margin-left:2.709239449864817%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.row-fluid [class*="span"]:first-child{margin-left:0}.row-fluid .controls-row [class*="span"]+[class*="span"]{margin-left:2.7624309392265194%}.row-fluid .span12{width:100%;*width:99.94680851063829%}.row-fluid .span11{width:91.43646408839778%;*width:91.38327259903608%}.row-fluid .span10{width:82.87292817679558%;*width:82.81973668743387%}.row-fluid .span9{width:74.30939226519337%;*width:74.25620077583166%}.row-fluid .span8{width:65.74585635359117%;*width:65.69266486422946%}.row-fluid .span7{width:57.18232044198895%;*width:57.12912895262725%}.row-fluid .span6{width:48.61878453038674%;*width:48.56559304102504%}.row-fluid .span5{width:40.05524861878453%;*width:40.00205712942283%}.row-fluid .span4{width:31.491712707182323%;*width:31.43852121782062%}.row-fluid .span3{width:22.92817679558011%;*width:22.87498530621841%}.row-fluid .span2{width:14.3646408839779%;*width:14.311449394616199%}.row-fluid .span1{width:5.801104972375691%;*width:5.747913483013988%}.row-fluid .offset12{margin-left:105.52486187845304%;*margin-left:105.41847889972962%}.row-fluid .offset12:first-child{margin-left:102.76243093922652%;*margin-left:102.6560479605031%}.row-fluid .offset11{margin-left:96.96132596685082%;*margin-left:96.8549429881274%}.row-fluid .offset11:first-child{margin-left:94.1988950276243%;*margin-left:94.09251204890089%}.row-fluid .offset10{margin-left:88.39779005524862%;*margin-left:88.2914070765252%}.row-fluid .offset10:first-child{margin-left:85.6353591160221%;*margin-left:85.52897613729868%}.row-fluid .offset9{margin-left:79.8342541436464%;*margin-left:79.72787116492299%}.row-fluid .offset9:first-child{margin-left:77.07182320441989%;*margin-left:76.96544022569647%}.row-fluid .offset8{margin-left:71.2707182320442%;*margin-left:71.16433525332079%}.row-fluid .offset8:first-child{margin-left:68.50828729281768%;*margin-left:68.40190431409427%}.row-fluid .offset7{margin-left:62.70718232044199%;*margin-left:62.600799341718584%}.row-fluid .offset7:first-child{margin-left:59.94475138121547%;*margin-left:59.838368402492065%}.row-fluid .offset6{margin-left:54.14364640883978%;*margin-left:54.037263430116376%}.row-fluid .offset6:first-child{margin-left:51.38121546961326%;*margin-left:51.27483249088986%}.row-fluid .offset5{margin-left:45.58011049723757%;*margin-left:45.47372751851417%}.row-fluid .offset5:first-child{margin-left:42.81767955801105%;*margin-left:42.71129657928765%}.row-fluid .offset4{margin-left:37.01657458563536%;*margin-left:36.91019160691196%}.row-fluid .offset4:first-child{margin-left:34.25414364640884%;*margin-left:34.14776066768544%}.row-fluid .offset3{margin-left:28.45303867403315%;*margin-left:28.346655695309746%}.row-fluid .offset3:first-child{margin-left:25.69060773480663%;*margin-left:25.584224756083227%}.row-fluid .offset2{margin-left:19.88950276243094%;*margin-left:19.783119783707537%}.row-fluid .offset2:first-child{margin-left:17.12707182320442%;*margin-left:17.02068884448102%}.row-fluid .offset1{margin-left:11.32596685082873%;*margin-left:11.219583872105325%}.row-fluid .offset1:first-child{margin-left:8.56353591160221%;*margin-left:8.457152932878806%}input,textarea,.uneditable-input{margin-left:0}.controls-row [class*="span"]+[class*="span"]{margin-left:20px}input.span12,textarea.span12,.uneditable-input.span12{width:710px}input.span11,textarea.span11,.uneditable-input.span11{width:648px}input.span10,textarea.span10,.uneditable-input.span10{width:586px}input.span9,textarea.span9,.uneditable-input.span9{width:524px}input.span8,textarea.span8,.uneditable-input.span8{width:462px}input.span7,textarea.span7,.uneditable-input.span7{width:400px}input.span6,textarea.span6,.uneditable-input.span6{width:338px}input.span5,textarea.span5,.uneditable-input.span5{width:276px}input.span4,textarea.span4,.uneditable-input.span4{width:214px}input.span3,textarea.span3,.uneditable-input.span3{width:152px}input.span2,textarea.span2,.uneditable-input.span2{width:90px}input.span1,textarea.span1,.uneditable-input.span1{width:28px}}@media(max-width:767px){body{padding-right:20px;padding-left:20px}.navbar-fixed-top,.navbar-fixed-bottom,.navbar-static-top{margin-right:-20px;margin-left:-20px}.container-fluid{padding:0}.dl-horizontal dt{float:none;width:auto;clear:none;text-align:left}.dl-horizontal dd{margin-left:0}.container{width:auto}.row-fluid{width:100%}.row,.thumbnails{margin-left:0}.thumbnails>li{float:none;margin-left:0}[class*="span"],.uneditable-input[class*="span"],.row-fluid [class*="span"]{display:block;float:none;width:100%;margin-left:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.span12,.row-fluid .span12{width:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.row-fluid [class*="offset"]:first-child{margin-left:0}.input-large,.input-xlarge,.input-xxlarge,input[class*="span"],select[class*="span"],textarea[class*="span"],.uneditable-input{display:block;width:100%;min-height:30px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.input-prepend input,.input-append input,.input-prepend input[class*="span"],.input-append input[class*="span"]{display:inline-block;width:auto}.controls-row [class*="span"]+[class*="span"]{margin-left:0}.modal{position:fixed;top:20px;right:20px;left:20px;width:auto;margin:0}.modal.fade{top:-100px}.modal.fade.in{top:20px}}@media(max-width:480px){.nav-collapse{-webkit-transform:translate3d(0,0,0)}.page-header h1 small{display:block;line-height:20px}input[type="checkbox"],input[type="radio"]{border:1px solid #ccc}.form-horizontal .control-label{float:none;width:auto;padding-top:0;text-align:left}.form-horizontal .controls{margin-left:0}.form-horizontal .control-list{padding-top:0}.form-horizontal .form-actions{padding-right:10px;padding-left:10px}.media .pull-left,.media .pull-right{display:block;float:none;margin-bottom:10px}.media-object{margin-right:0;margin-left:0}.modal{top:10px;right:10px;left:10px}.modal-header .close{padding:10px;margin:-10px}.carousel-caption{position:static}}@media(max-width:979px){body{padding-top:0}.navbar-fixed-top,.navbar-fixed-bottom{position:static}.navbar-fixed-top{margin-bottom:20px}.navbar-fixed-bottom{margin-top:20px}.navbar-fixed-top .navbar-inner,.navbar-fixed-bottom .navbar-inner{padding:5px}.navbar .container{width:auto;padding:0}.navbar .brand{padding-right:10px;padding-left:10px;margin:0 0 0 -5px}.nav-collapse{clear:both}.nav-collapse .nav{float:none;margin:0 0 10px}.nav-collapse .nav>li{float:none}.nav-collapse .nav>li>a{margin-bottom:2px}.nav-collapse .nav>.divider-vertical{display:none}.nav-collapse .nav .nav-header{color:#777;text-shadow:none}.nav-collapse .nav>li>a,.nav-collapse .dropdown-menu a{padding:9px 15px;font-weight:bold;color:#777;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.nav-collapse .btn{padding:4px 10px 4px;font-weight:normal;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.nav-collapse .dropdown-menu li+li a{margin-bottom:2px}.nav-collapse .nav>li>a:hover,.nav-collapse .nav>li>a:focus,.nav-collapse .dropdown-menu a:hover,.nav-collapse .dropdown-menu a:focus{background-color:#f2f2f2}.navbar-inverse .nav-collapse .nav>li>a,.navbar-inverse .nav-collapse .dropdown-menu a{color:#999}.navbar-inverse .nav-collapse .nav>li>a:hover,.navbar-inverse .nav-collapse .nav>li>a:focus,.navbar-inverse .nav-collapse .dropdown-menu a:hover,.navbar-inverse .nav-collapse .dropdown-menu a:focus{background-color:#111}.nav-collapse.in .btn-group{padding:0;margin-top:5px}.nav-collapse .dropdown-menu{position:static;top:auto;left:auto;display:none;float:none;max-width:none;padding:0;margin:0 15px;background-color:transparent;border:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.nav-collapse .open>.dropdown-menu{display:block}.nav-collapse .dropdown-menu:before,.nav-collapse .dropdown-menu:after{display:none}.nav-collapse .dropdown-menu .divider{display:none}.nav-collapse .nav>li>.dropdown-menu:before,.nav-collapse .nav>li>.dropdown-menu:after{display:none}.nav-collapse .navbar-form,.nav-collapse .navbar-search{float:none;padding:10px 15px;margin:10px 0;border-top:1px solid #f2f2f2;border-bottom:1px solid #f2f2f2;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1);-moz-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1);box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1)}.navbar-inverse .nav-collapse .navbar-form,.navbar-inverse .nav-collapse .navbar-search{border-top-color:#111;border-bottom-color:#111}.navbar .nav-collapse .nav.pull-right{float:none;margin-left:0}.nav-collapse,.nav-collapse.collapse{height:0;overflow:hidden}.navbar .btn-navbar{display:block}.navbar-static .navbar-inner{padding-right:10px;padding-left:10px}}@media(min-width:980px){.nav-collapse.collapse{height:auto!important;overflow:visible!important}} phamm-0.6.5/public/css/bootstrap-theme.css0000644000175300017530000005371212643155515016511 0ustar phamm/*! * Bootstrap v3.3.1 (http://getbootstrap.com) * Copyright 2011-2014 Twitter, Inc. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) */ .btn-default, .btn-primary, .btn-success, .btn-info, .btn-warning, .btn-danger { text-shadow: 0 -1px 0 rgba(0, 0, 0, .2); -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 1px rgba(0, 0, 0, .075); box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 1px rgba(0, 0, 0, .075); } .btn-default:active, .btn-primary:active, .btn-success:active, .btn-info:active, .btn-warning:active, .btn-danger:active, .btn-default.active, .btn-primary.active, .btn-success.active, .btn-info.active, .btn-warning.active, .btn-danger.active { -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); } .btn-default .badge, .btn-primary .badge, .btn-success .badge, .btn-info .badge, .btn-warning .badge, .btn-danger .badge { text-shadow: none; } .btn:active, .btn.active { background-image: none; } .btn-default { text-shadow: 0 1px 0 #fff; background-image: -webkit-linear-gradient(top, #fff 0%, #e0e0e0 100%); background-image: -o-linear-gradient(top, #fff 0%, #e0e0e0 100%); background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#e0e0e0)); background-image: linear-gradient(to bottom, #fff 0%, #e0e0e0 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe0e0e0', GradientType=0); filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); background-repeat: repeat-x; border-color: #dbdbdb; border-color: #ccc; } .btn-default:hover, .btn-default:focus { background-color: #e0e0e0; background-position: 0 -15px; } .btn-default:active, .btn-default.active { background-color: #e0e0e0; border-color: #dbdbdb; } .btn-default:disabled, .btn-default[disabled] { background-color: #e0e0e0; background-image: none; } .btn-primary { background-image: -webkit-linear-gradient(top, #337ab7 0%, #265a88 100%); background-image: -o-linear-gradient(top, #337ab7 0%, #265a88 100%); background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#265a88)); background-image: linear-gradient(to bottom, #337ab7 0%, #265a88 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff265a88', GradientType=0); filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); background-repeat: repeat-x; border-color: #245580; } .btn-primary:hover, .btn-primary:focus { background-color: #265a88; background-position: 0 -15px; } .btn-primary:active, .btn-primary.active { background-color: #265a88; border-color: #245580; } .btn-primary:disabled, .btn-primary[disabled] { background-color: #265a88; background-image: none; } .btn-success { background-image: -webkit-linear-gradient(top, #5cb85c 0%, #419641 100%); background-image: -o-linear-gradient(top, #5cb85c 0%, #419641 100%); background-image: -webkit-gradient(linear, left top, left bottom, from(#5cb85c), to(#419641)); background-image: linear-gradient(to bottom, #5cb85c 0%, #419641 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff419641', GradientType=0); filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); background-repeat: repeat-x; border-color: #3e8f3e; } .btn-success:hover, .btn-success:focus { background-color: #419641; background-position: 0 -15px; } .btn-success:active, .btn-success.active { background-color: #419641; border-color: #3e8f3e; } .btn-success:disabled, .btn-success[disabled] { background-color: #419641; background-image: none; } .btn-info { background-image: -webkit-linear-gradient(top, #5bc0de 0%, #2aabd2 100%); background-image: -o-linear-gradient(top, #5bc0de 0%, #2aabd2 100%); background-image: -webkit-gradient(linear, left top, left bottom, from(#5bc0de), to(#2aabd2)); background-image: linear-gradient(to bottom, #5bc0de 0%, #2aabd2 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2aabd2', GradientType=0); filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); background-repeat: repeat-x; border-color: #28a4c9; } .btn-info:hover, .btn-info:focus { background-color: #2aabd2; background-position: 0 -15px; } .btn-info:active, .btn-info.active { background-color: #2aabd2; border-color: #28a4c9; } .btn-info:disabled, .btn-info[disabled] { background-color: #2aabd2; background-image: none; } .btn-warning { background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #eb9316 100%); background-image: -o-linear-gradient(top, #f0ad4e 0%, #eb9316 100%); background-image: -webkit-gradient(linear, left top, left bottom, from(#f0ad4e), to(#eb9316)); background-image: linear-gradient(to bottom, #f0ad4e 0%, #eb9316 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffeb9316', GradientType=0); filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); background-repeat: repeat-x; border-color: #e38d13; } .btn-warning:hover, .btn-warning:focus { background-color: #eb9316; background-position: 0 -15px; } .btn-warning:active, .btn-warning.active { background-color: #eb9316; border-color: #e38d13; } .btn-warning:disabled, .btn-warning[disabled] { background-color: #eb9316; background-image: none; } .btn-danger { background-image: -webkit-linear-gradient(top, #d9534f 0%, #c12e2a 100%); background-image: -o-linear-gradient(top, #d9534f 0%, #c12e2a 100%); background-image: -webkit-gradient(linear, left top, left bottom, from(#d9534f), to(#c12e2a)); background-image: linear-gradient(to bottom, #d9534f 0%, #c12e2a 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc12e2a', GradientType=0); filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); background-repeat: repeat-x; border-color: #b92c28; } .btn-danger:hover, .btn-danger:focus { background-color: #c12e2a; background-position: 0 -15px; } .btn-danger:active, .btn-danger.active { background-color: #c12e2a; border-color: #b92c28; } .btn-danger:disabled, .btn-danger[disabled] { background-color: #c12e2a; background-image: none; } .thumbnail, .img-thumbnail { -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .075); box-shadow: 0 1px 2px rgba(0, 0, 0, .075); } .dropdown-menu > li > a:hover, .dropdown-menu > li > a:focus { background-color: #e8e8e8; background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); background-image: -webkit-gradient(linear, left top, left bottom, from(#f5f5f5), to(#e8e8e8)); background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0); background-repeat: repeat-x; } .dropdown-menu > .active > a, .dropdown-menu > .active > a:hover, .dropdown-menu > .active > a:focus { background-color: #2e6da4; background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%); background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%); background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2e6da4)); background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0); background-repeat: repeat-x; } .navbar-default { background-image: -webkit-linear-gradient(top, #fff 0%, #f8f8f8 100%); background-image: -o-linear-gradient(top, #fff 0%, #f8f8f8 100%); background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#f8f8f8)); background-image: linear-gradient(to bottom, #fff 0%, #f8f8f8 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff8f8f8', GradientType=0); filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); background-repeat: repeat-x; border-radius: 4px; -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 5px rgba(0, 0, 0, .075); box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 5px rgba(0, 0, 0, .075); } .navbar-default .navbar-nav > .open > a, .navbar-default .navbar-nav > .active > a { background-image: -webkit-linear-gradient(top, #dbdbdb 0%, #e2e2e2 100%); background-image: -o-linear-gradient(top, #dbdbdb 0%, #e2e2e2 100%); background-image: -webkit-gradient(linear, left top, left bottom, from(#dbdbdb), to(#e2e2e2)); background-image: linear-gradient(to bottom, #dbdbdb 0%, #e2e2e2 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdbdbdb', endColorstr='#ffe2e2e2', GradientType=0); background-repeat: repeat-x; -webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, .075); box-shadow: inset 0 3px 9px rgba(0, 0, 0, .075); } .navbar-brand, .navbar-nav > li > a { text-shadow: 0 1px 0 rgba(255, 255, 255, .25); } .navbar-inverse { background-image: -webkit-linear-gradient(top, #3c3c3c 0%, #222 100%); background-image: -o-linear-gradient(top, #3c3c3c 0%, #222 100%); background-image: -webkit-gradient(linear, left top, left bottom, from(#3c3c3c), to(#222)); background-image: linear-gradient(to bottom, #3c3c3c 0%, #222 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c', endColorstr='#ff222222', GradientType=0); filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); background-repeat: repeat-x; } .navbar-inverse .navbar-nav > .open > a, .navbar-inverse .navbar-nav > .active > a { background-image: -webkit-linear-gradient(top, #080808 0%, #0f0f0f 100%); background-image: -o-linear-gradient(top, #080808 0%, #0f0f0f 100%); background-image: -webkit-gradient(linear, left top, left bottom, from(#080808), to(#0f0f0f)); background-image: linear-gradient(to bottom, #080808 0%, #0f0f0f 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff080808', endColorstr='#ff0f0f0f', GradientType=0); background-repeat: repeat-x; -webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, .25); box-shadow: inset 0 3px 9px rgba(0, 0, 0, .25); } .navbar-inverse .navbar-brand, .navbar-inverse .navbar-nav > li > a { text-shadow: 0 -1px 0 rgba(0, 0, 0, .25); } .navbar-static-top, .navbar-fixed-top, .navbar-fixed-bottom { border-radius: 0; } @media (max-width: 767px) { .navbar .navbar-nav .open .dropdown-menu > .active > a, .navbar .navbar-nav .open .dropdown-menu > .active > a:hover, .navbar .navbar-nav .open .dropdown-menu > .active > a:focus { color: #fff; background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%); background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%); background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2e6da4)); background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0); background-repeat: repeat-x; } } .alert { text-shadow: 0 1px 0 rgba(255, 255, 255, .2); -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 1px 2px rgba(0, 0, 0, .05); box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 1px 2px rgba(0, 0, 0, .05); } .alert-success { background-image: -webkit-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%); background-image: -o-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%); background-image: -webkit-gradient(linear, left top, left bottom, from(#dff0d8), to(#c8e5bc)); background-image: linear-gradient(to bottom, #dff0d8 0%, #c8e5bc 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffc8e5bc', GradientType=0); background-repeat: repeat-x; border-color: #b2dba1; } .alert-info { background-image: -webkit-linear-gradient(top, #d9edf7 0%, #b9def0 100%); background-image: -o-linear-gradient(top, #d9edf7 0%, #b9def0 100%); background-image: -webkit-gradient(linear, left top, left bottom, from(#d9edf7), to(#b9def0)); background-image: linear-gradient(to bottom, #d9edf7 0%, #b9def0 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffb9def0', GradientType=0); background-repeat: repeat-x; border-color: #9acfea; } .alert-warning { background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%); background-image: -o-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%); background-image: -webkit-gradient(linear, left top, left bottom, from(#fcf8e3), to(#f8efc0)); background-image: linear-gradient(to bottom, #fcf8e3 0%, #f8efc0 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fff8efc0', GradientType=0); background-repeat: repeat-x; border-color: #f5e79e; } .alert-danger { background-image: -webkit-linear-gradient(top, #f2dede 0%, #e7c3c3 100%); background-image: -o-linear-gradient(top, #f2dede 0%, #e7c3c3 100%); background-image: -webkit-gradient(linear, left top, left bottom, from(#f2dede), to(#e7c3c3)); background-image: linear-gradient(to bottom, #f2dede 0%, #e7c3c3 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffe7c3c3', GradientType=0); background-repeat: repeat-x; border-color: #dca7a7; } .progress { background-image: -webkit-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%); background-image: -o-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%); background-image: -webkit-gradient(linear, left top, left bottom, from(#ebebeb), to(#f5f5f5)); background-image: linear-gradient(to bottom, #ebebeb 0%, #f5f5f5 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff5f5f5', GradientType=0); background-repeat: repeat-x; } .progress-bar { background-image: -webkit-linear-gradient(top, #337ab7 0%, #286090 100%); background-image: -o-linear-gradient(top, #337ab7 0%, #286090 100%); background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#286090)); background-image: linear-gradient(to bottom, #337ab7 0%, #286090 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff286090', GradientType=0); background-repeat: repeat-x; } .progress-bar-success { background-image: -webkit-linear-gradient(top, #5cb85c 0%, #449d44 100%); background-image: -o-linear-gradient(top, #5cb85c 0%, #449d44 100%); background-image: -webkit-gradient(linear, left top, left bottom, from(#5cb85c), to(#449d44)); background-image: linear-gradient(to bottom, #5cb85c 0%, #449d44 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0); background-repeat: repeat-x; } .progress-bar-info { background-image: -webkit-linear-gradient(top, #5bc0de 0%, #31b0d5 100%); background-image: -o-linear-gradient(top, #5bc0de 0%, #31b0d5 100%); background-image: -webkit-gradient(linear, left top, left bottom, from(#5bc0de), to(#31b0d5)); background-image: linear-gradient(to bottom, #5bc0de 0%, #31b0d5 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0); background-repeat: repeat-x; } .progress-bar-warning { background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #ec971f 100%); background-image: -o-linear-gradient(top, #f0ad4e 0%, #ec971f 100%); background-image: -webkit-gradient(linear, left top, left bottom, from(#f0ad4e), to(#ec971f)); background-image: linear-gradient(to bottom, #f0ad4e 0%, #ec971f 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0); background-repeat: repeat-x; } .progress-bar-danger { background-image: -webkit-linear-gradient(top, #d9534f 0%, #c9302c 100%); background-image: -o-linear-gradient(top, #d9534f 0%, #c9302c 100%); background-image: -webkit-gradient(linear, left top, left bottom, from(#d9534f), to(#c9302c)); background-image: linear-gradient(to bottom, #d9534f 0%, #c9302c 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0); background-repeat: repeat-x; } .progress-bar-striped { background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); } .list-group { border-radius: 4px; -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .075); box-shadow: 0 1px 2px rgba(0, 0, 0, .075); } .list-group-item.active, .list-group-item.active:hover, .list-group-item.active:focus { text-shadow: 0 -1px 0 #286090; background-image: -webkit-linear-gradient(top, #337ab7 0%, #2b669a 100%); background-image: -o-linear-gradient(top, #337ab7 0%, #2b669a 100%); background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2b669a)); background-image: linear-gradient(to bottom, #337ab7 0%, #2b669a 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2b669a', GradientType=0); background-repeat: repeat-x; border-color: #2b669a; } .list-group-item.active .badge, .list-group-item.active:hover .badge, .list-group-item.active:focus .badge { text-shadow: none; } .panel { -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .05); box-shadow: 0 1px 2px rgba(0, 0, 0, .05); } .panel-default > .panel-heading { background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); background-image: -webkit-gradient(linear, left top, left bottom, from(#f5f5f5), to(#e8e8e8)); background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0); background-repeat: repeat-x; } .panel-primary > .panel-heading { background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%); background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%); background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2e6da4)); background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0); background-repeat: repeat-x; } .panel-success > .panel-heading { background-image: -webkit-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%); background-image: -o-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%); background-image: -webkit-gradient(linear, left top, left bottom, from(#dff0d8), to(#d0e9c6)); background-image: linear-gradient(to bottom, #dff0d8 0%, #d0e9c6 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffd0e9c6', GradientType=0); background-repeat: repeat-x; } .panel-info > .panel-heading { background-image: -webkit-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%); background-image: -o-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%); background-image: -webkit-gradient(linear, left top, left bottom, from(#d9edf7), to(#c4e3f3)); background-image: linear-gradient(to bottom, #d9edf7 0%, #c4e3f3 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffc4e3f3', GradientType=0); background-repeat: repeat-x; } .panel-warning > .panel-heading { background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%); background-image: -o-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%); background-image: -webkit-gradient(linear, left top, left bottom, from(#fcf8e3), to(#faf2cc)); background-image: linear-gradient(to bottom, #fcf8e3 0%, #faf2cc 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fffaf2cc', GradientType=0); background-repeat: repeat-x; } .panel-danger > .panel-heading { background-image: -webkit-linear-gradient(top, #f2dede 0%, #ebcccc 100%); background-image: -o-linear-gradient(top, #f2dede 0%, #ebcccc 100%); background-image: -webkit-gradient(linear, left top, left bottom, from(#f2dede), to(#ebcccc)); background-image: linear-gradient(to bottom, #f2dede 0%, #ebcccc 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffebcccc', GradientType=0); background-repeat: repeat-x; } .well { background-image: -webkit-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%); background-image: -o-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%); background-image: -webkit-gradient(linear, left top, left bottom, from(#e8e8e8), to(#f5f5f5)); background-image: linear-gradient(to bottom, #e8e8e8 0%, #f5f5f5 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0); background-repeat: repeat-x; border-color: #dcdcdc; -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, .05), 0 1px 0 rgba(255, 255, 255, .1); box-shadow: inset 0 1px 3px rgba(0, 0, 0, .05), 0 1px 0 rgba(255, 255, 255, .1); } /*# sourceMappingURL=bootstrap-theme.css.map */ phamm-0.6.5/public/css/bootstrap-theme.min.css0000644000175300017530000004657312643155515017302 0ustar phamm/*! * Bootstrap v3.3.1 (http://getbootstrap.com) * Copyright 2011-2014 Twitter, Inc. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) */.btn-default,.btn-primary,.btn-success,.btn-info,.btn-warning,.btn-danger{text-shadow:0 -1px 0 rgba(0,0,0,.2);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 1px rgba(0,0,0,.075)}.btn-default:active,.btn-primary:active,.btn-success:active,.btn-info:active,.btn-warning:active,.btn-danger:active,.btn-default.active,.btn-primary.active,.btn-success.active,.btn-info.active,.btn-warning.active,.btn-danger.active{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn-default .badge,.btn-primary .badge,.btn-success .badge,.btn-info .badge,.btn-warning .badge,.btn-danger .badge{text-shadow:none}.btn:active,.btn.active{background-image:none}.btn-default{text-shadow:0 1px 0 #fff;background-image:-webkit-linear-gradient(top,#fff 0,#e0e0e0 100%);background-image:-o-linear-gradient(top,#fff 0,#e0e0e0 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e0e0e0));background-image:linear-gradient(to bottom,#fff 0,#e0e0e0 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe0e0e0', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#dbdbdb;border-color:#ccc}.btn-default:hover,.btn-default:focus{background-color:#e0e0e0;background-position:0 -15px}.btn-default:active,.btn-default.active{background-color:#e0e0e0;border-color:#dbdbdb}.btn-default:disabled,.btn-default[disabled]{background-color:#e0e0e0;background-image:none}.btn-primary{background-image:-webkit-linear-gradient(top,#337ab7 0,#265a88 100%);background-image:-o-linear-gradient(top,#337ab7 0,#265a88 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#265a88));background-image:linear-gradient(to bottom,#337ab7 0,#265a88 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff265a88', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#245580}.btn-primary:hover,.btn-primary:focus{background-color:#265a88;background-position:0 -15px}.btn-primary:active,.btn-primary.active{background-color:#265a88;border-color:#245580}.btn-primary:disabled,.btn-primary[disabled]{background-color:#265a88;background-image:none}.btn-success{background-image:-webkit-linear-gradient(top,#5cb85c 0,#419641 100%);background-image:-o-linear-gradient(top,#5cb85c 0,#419641 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#5cb85c),to(#419641));background-image:linear-gradient(to bottom,#5cb85c 0,#419641 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff419641', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#3e8f3e}.btn-success:hover,.btn-success:focus{background-color:#419641;background-position:0 -15px}.btn-success:active,.btn-success.active{background-color:#419641;border-color:#3e8f3e}.btn-success:disabled,.btn-success[disabled]{background-color:#419641;background-image:none}.btn-info{background-image:-webkit-linear-gradient(top,#5bc0de 0,#2aabd2 100%);background-image:-o-linear-gradient(top,#5bc0de 0,#2aabd2 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#5bc0de),to(#2aabd2));background-image:linear-gradient(to bottom,#5bc0de 0,#2aabd2 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2aabd2', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#28a4c9}.btn-info:hover,.btn-info:focus{background-color:#2aabd2;background-position:0 -15px}.btn-info:active,.btn-info.active{background-color:#2aabd2;border-color:#28a4c9}.btn-info:disabled,.btn-info[disabled]{background-color:#2aabd2;background-image:none}.btn-warning{background-image:-webkit-linear-gradient(top,#f0ad4e 0,#eb9316 100%);background-image:-o-linear-gradient(top,#f0ad4e 0,#eb9316 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f0ad4e),to(#eb9316));background-image:linear-gradient(to bottom,#f0ad4e 0,#eb9316 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffeb9316', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#e38d13}.btn-warning:hover,.btn-warning:focus{background-color:#eb9316;background-position:0 -15px}.btn-warning:active,.btn-warning.active{background-color:#eb9316;border-color:#e38d13}.btn-warning:disabled,.btn-warning[disabled]{background-color:#eb9316;background-image:none}.btn-danger{background-image:-webkit-linear-gradient(top,#d9534f 0,#c12e2a 100%);background-image:-o-linear-gradient(top,#d9534f 0,#c12e2a 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#d9534f),to(#c12e2a));background-image:linear-gradient(to bottom,#d9534f 0,#c12e2a 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc12e2a', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#b92c28}.btn-danger:hover,.btn-danger:focus{background-color:#c12e2a;background-position:0 -15px}.btn-danger:active,.btn-danger.active{background-color:#c12e2a;border-color:#b92c28}.btn-danger:disabled,.btn-danger[disabled]{background-color:#c12e2a;background-image:none}.thumbnail,.img-thumbnail{-webkit-box-shadow:0 1px 2px rgba(0,0,0,.075);box-shadow:0 1px 2px rgba(0,0,0,.075)}.dropdown-menu>li>a:hover,.dropdown-menu>li>a:focus{background-color:#e8e8e8;background-image:-webkit-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:-o-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#e8e8e8));background-image:linear-gradient(to bottom,#f5f5f5 0,#e8e8e8 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);background-repeat:repeat-x}.dropdown-menu>.active>a,.dropdown-menu>.active>a:hover,.dropdown-menu>.active>a:focus{background-color:#2e6da4;background-image:-webkit-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#2e6da4));background-image:linear-gradient(to bottom,#337ab7 0,#2e6da4 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);background-repeat:repeat-x}.navbar-default{background-image:-webkit-linear-gradient(top,#fff 0,#f8f8f8 100%);background-image:-o-linear-gradient(top,#fff 0,#f8f8f8 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#f8f8f8));background-image:linear-gradient(to bottom,#fff 0,#f8f8f8 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff8f8f8', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-radius:4px;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 5px rgba(0,0,0,.075);box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 5px rgba(0,0,0,.075)}.navbar-default .navbar-nav>.open>a,.navbar-default .navbar-nav>.active>a{background-image:-webkit-linear-gradient(top,#dbdbdb 0,#e2e2e2 100%);background-image:-o-linear-gradient(top,#dbdbdb 0,#e2e2e2 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#dbdbdb),to(#e2e2e2));background-image:linear-gradient(to bottom,#dbdbdb 0,#e2e2e2 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdbdbdb', endColorstr='#ffe2e2e2', GradientType=0);background-repeat:repeat-x;-webkit-box-shadow:inset 0 3px 9px rgba(0,0,0,.075);box-shadow:inset 0 3px 9px rgba(0,0,0,.075)}.navbar-brand,.navbar-nav>li>a{text-shadow:0 1px 0 rgba(255,255,255,.25)}.navbar-inverse{background-image:-webkit-linear-gradient(top,#3c3c3c 0,#222 100%);background-image:-o-linear-gradient(top,#3c3c3c 0,#222 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#3c3c3c),to(#222));background-image:linear-gradient(to bottom,#3c3c3c 0,#222 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c', endColorstr='#ff222222', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x}.navbar-inverse .navbar-nav>.open>a,.navbar-inverse .navbar-nav>.active>a{background-image:-webkit-linear-gradient(top,#080808 0,#0f0f0f 100%);background-image:-o-linear-gradient(top,#080808 0,#0f0f0f 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#080808),to(#0f0f0f));background-image:linear-gradient(to bottom,#080808 0,#0f0f0f 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff080808', endColorstr='#ff0f0f0f', GradientType=0);background-repeat:repeat-x;-webkit-box-shadow:inset 0 3px 9px rgba(0,0,0,.25);box-shadow:inset 0 3px 9px rgba(0,0,0,.25)}.navbar-inverse .navbar-brand,.navbar-inverse .navbar-nav>li>a{text-shadow:0 -1px 0 rgba(0,0,0,.25)}.navbar-static-top,.navbar-fixed-top,.navbar-fixed-bottom{border-radius:0}@media (max-width:767px){.navbar .navbar-nav .open .dropdown-menu>.active>a,.navbar .navbar-nav .open .dropdown-menu>.active>a:hover,.navbar .navbar-nav .open .dropdown-menu>.active>a:focus{color:#fff;background-image:-webkit-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#2e6da4));background-image:linear-gradient(to bottom,#337ab7 0,#2e6da4 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);background-repeat:repeat-x}}.alert{text-shadow:0 1px 0 rgba(255,255,255,.2);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 2px rgba(0,0,0,.05);box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 2px rgba(0,0,0,.05)}.alert-success{background-image:-webkit-linear-gradient(top,#dff0d8 0,#c8e5bc 100%);background-image:-o-linear-gradient(top,#dff0d8 0,#c8e5bc 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#dff0d8),to(#c8e5bc));background-image:linear-gradient(to bottom,#dff0d8 0,#c8e5bc 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffc8e5bc', GradientType=0);background-repeat:repeat-x;border-color:#b2dba1}.alert-info{background-image:-webkit-linear-gradient(top,#d9edf7 0,#b9def0 100%);background-image:-o-linear-gradient(top,#d9edf7 0,#b9def0 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#d9edf7),to(#b9def0));background-image:linear-gradient(to bottom,#d9edf7 0,#b9def0 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffb9def0', GradientType=0);background-repeat:repeat-x;border-color:#9acfea}.alert-warning{background-image:-webkit-linear-gradient(top,#fcf8e3 0,#f8efc0 100%);background-image:-o-linear-gradient(top,#fcf8e3 0,#f8efc0 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#fcf8e3),to(#f8efc0));background-image:linear-gradient(to bottom,#fcf8e3 0,#f8efc0 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fff8efc0', GradientType=0);background-repeat:repeat-x;border-color:#f5e79e}.alert-danger{background-image:-webkit-linear-gradient(top,#f2dede 0,#e7c3c3 100%);background-image:-o-linear-gradient(top,#f2dede 0,#e7c3c3 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f2dede),to(#e7c3c3));background-image:linear-gradient(to bottom,#f2dede 0,#e7c3c3 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffe7c3c3', GradientType=0);background-repeat:repeat-x;border-color:#dca7a7}.progress{background-image:-webkit-linear-gradient(top,#ebebeb 0,#f5f5f5 100%);background-image:-o-linear-gradient(top,#ebebeb 0,#f5f5f5 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#f5f5f5));background-image:linear-gradient(to bottom,#ebebeb 0,#f5f5f5 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff5f5f5', GradientType=0);background-repeat:repeat-x}.progress-bar{background-image:-webkit-linear-gradient(top,#337ab7 0,#286090 100%);background-image:-o-linear-gradient(top,#337ab7 0,#286090 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#286090));background-image:linear-gradient(to bottom,#337ab7 0,#286090 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff286090', GradientType=0);background-repeat:repeat-x}.progress-bar-success{background-image:-webkit-linear-gradient(top,#5cb85c 0,#449d44 100%);background-image:-o-linear-gradient(top,#5cb85c 0,#449d44 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#5cb85c),to(#449d44));background-image:linear-gradient(to bottom,#5cb85c 0,#449d44 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0);background-repeat:repeat-x}.progress-bar-info{background-image:-webkit-linear-gradient(top,#5bc0de 0,#31b0d5 100%);background-image:-o-linear-gradient(top,#5bc0de 0,#31b0d5 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#5bc0de),to(#31b0d5));background-image:linear-gradient(to bottom,#5bc0de 0,#31b0d5 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0);background-repeat:repeat-x}.progress-bar-warning{background-image:-webkit-linear-gradient(top,#f0ad4e 0,#ec971f 100%);background-image:-o-linear-gradient(top,#f0ad4e 0,#ec971f 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f0ad4e),to(#ec971f));background-image:linear-gradient(to bottom,#f0ad4e 0,#ec971f 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0);background-repeat:repeat-x}.progress-bar-danger{background-image:-webkit-linear-gradient(top,#d9534f 0,#c9302c 100%);background-image:-o-linear-gradient(top,#d9534f 0,#c9302c 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#d9534f),to(#c9302c));background-image:linear-gradient(to bottom,#d9534f 0,#c9302c 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0);background-repeat:repeat-x}.progress-bar-striped{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.list-group{border-radius:4px;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.075);box-shadow:0 1px 2px rgba(0,0,0,.075)}.list-group-item.active,.list-group-item.active:hover,.list-group-item.active:focus{text-shadow:0 -1px 0 #286090;background-image:-webkit-linear-gradient(top,#337ab7 0,#2b669a 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2b669a 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#2b669a));background-image:linear-gradient(to bottom,#337ab7 0,#2b669a 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2b669a', GradientType=0);background-repeat:repeat-x;border-color:#2b669a}.list-group-item.active .badge,.list-group-item.active:hover .badge,.list-group-item.active:focus .badge{text-shadow:none}.panel{-webkit-box-shadow:0 1px 2px rgba(0,0,0,.05);box-shadow:0 1px 2px rgba(0,0,0,.05)}.panel-default>.panel-heading{background-image:-webkit-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:-o-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#e8e8e8));background-image:linear-gradient(to bottom,#f5f5f5 0,#e8e8e8 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);background-repeat:repeat-x}.panel-primary>.panel-heading{background-image:-webkit-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#2e6da4));background-image:linear-gradient(to bottom,#337ab7 0,#2e6da4 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);background-repeat:repeat-x}.panel-success>.panel-heading{background-image:-webkit-linear-gradient(top,#dff0d8 0,#d0e9c6 100%);background-image:-o-linear-gradient(top,#dff0d8 0,#d0e9c6 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#dff0d8),to(#d0e9c6));background-image:linear-gradient(to bottom,#dff0d8 0,#d0e9c6 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffd0e9c6', GradientType=0);background-repeat:repeat-x}.panel-info>.panel-heading{background-image:-webkit-linear-gradient(top,#d9edf7 0,#c4e3f3 100%);background-image:-o-linear-gradient(top,#d9edf7 0,#c4e3f3 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#d9edf7),to(#c4e3f3));background-image:linear-gradient(to bottom,#d9edf7 0,#c4e3f3 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffc4e3f3', GradientType=0);background-repeat:repeat-x}.panel-warning>.panel-heading{background-image:-webkit-linear-gradient(top,#fcf8e3 0,#faf2cc 100%);background-image:-o-linear-gradient(top,#fcf8e3 0,#faf2cc 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#fcf8e3),to(#faf2cc));background-image:linear-gradient(to bottom,#fcf8e3 0,#faf2cc 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fffaf2cc', GradientType=0);background-repeat:repeat-x}.panel-danger>.panel-heading{background-image:-webkit-linear-gradient(top,#f2dede 0,#ebcccc 100%);background-image:-o-linear-gradient(top,#f2dede 0,#ebcccc 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f2dede),to(#ebcccc));background-image:linear-gradient(to bottom,#f2dede 0,#ebcccc 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffebcccc', GradientType=0);background-repeat:repeat-x}.well{background-image:-webkit-linear-gradient(top,#e8e8e8 0,#f5f5f5 100%);background-image:-o-linear-gradient(top,#e8e8e8 0,#f5f5f5 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#e8e8e8),to(#f5f5f5));background-image:linear-gradient(to bottom,#e8e8e8 0,#f5f5f5 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0);background-repeat:repeat-x;border-color:#dcdcdc;-webkit-box-shadow:inset 0 1px 3px rgba(0,0,0,.05),0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 1px 3px rgba(0,0,0,.05),0 1px 0 rgba(255,255,255,.1)}phamm-0.6.5/public/css/bootstrap.css0000644000175300017530000041355312643155515015414 0ustar phamm/*! * Bootstrap v3.3.1 (http://getbootstrap.com) * Copyright 2011-2014 Twitter, Inc. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) */ /*! normalize.css v3.0.2 | MIT License | git.io/normalize */ html { font-family: sans-serif; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; } body { margin: 0; } article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary { display: block; } audio, canvas, progress, video { display: inline-block; vertical-align: baseline; } audio:not([controls]) { display: none; height: 0; } [hidden], template { display: none; } a { background-color: transparent; } a:active, a:hover { outline: 0; } abbr[title] { border-bottom: 1px dotted; } b, strong { font-weight: bold; } dfn { font-style: italic; } h1 { margin: .67em 0; font-size: 2em; } mark { color: #000; background: #ff0; } small { font-size: 80%; } sub, sup { position: relative; font-size: 75%; line-height: 0; vertical-align: baseline; } sup { top: -.5em; } sub { bottom: -.25em; } img { border: 0; } svg:not(:root) { overflow: hidden; } figure { margin: 1em 40px; } hr { height: 0; -webkit-box-sizing: content-box; -moz-box-sizing: content-box; box-sizing: content-box; } pre { overflow: auto; } code, kbd, pre, samp { font-family: monospace, monospace; font-size: 1em; } button, input, optgroup, select, textarea { margin: 0; font: inherit; color: inherit; } button { overflow: visible; } button, select { text-transform: none; } button, html input[type="button"], input[type="reset"], input[type="submit"] { -webkit-appearance: button; cursor: pointer; } button[disabled], html input[disabled] { cursor: default; } button::-moz-focus-inner, input::-moz-focus-inner { padding: 0; border: 0; } input { line-height: normal; } input[type="checkbox"], input[type="radio"] { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; padding: 0; } input[type="number"]::-webkit-inner-spin-button, input[type="number"]::-webkit-outer-spin-button { height: auto; } input[type="search"] { -webkit-box-sizing: content-box; -moz-box-sizing: content-box; box-sizing: content-box; -webkit-appearance: textfield; } input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; } fieldset { padding: .35em .625em .75em; margin: 0 2px; border: 1px solid #c0c0c0; } legend { padding: 0; border: 0; } textarea { overflow: auto; } optgroup { font-weight: bold; } table { border-spacing: 0; border-collapse: collapse; } td, th { padding: 0; } /*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */ @media print { *, *:before, *:after { color: #000 !important; text-shadow: none !important; background: transparent !important; -webkit-box-shadow: none !important; box-shadow: none !important; } a, a:visited { text-decoration: underline; } a[href]:after { content: " (" attr(href) ")"; } abbr[title]:after { content: " (" attr(title) ")"; } a[href^="#"]:after, a[href^="javascript:"]:after { content: ""; } pre, blockquote { border: 1px solid #999; page-break-inside: avoid; } thead { display: table-header-group; } tr, img { page-break-inside: avoid; } img { max-width: 100% !important; } p, h2, h3 { orphans: 3; widows: 3; } h2, h3 { page-break-after: avoid; } select { background: #fff !important; } .navbar { display: none; } .btn > .caret, .dropup > .btn > .caret { border-top-color: #000 !important; } .label { border: 1px solid #000; } .table { border-collapse: collapse !important; } .table td, .table th { background-color: #fff !important; } .table-bordered th, .table-bordered td { border: 1px solid #ddd !important; } } @font-face { font-family: 'Glyphicons Halflings'; src: url('../fonts/glyphicons-halflings-regular.eot'); src: url('../fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('../fonts/glyphicons-halflings-regular.woff') format('woff'), url('../fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular') format('svg'); } .glyphicon { position: relative; top: 1px; display: inline-block; font-family: 'Glyphicons Halflings'; font-style: normal; font-weight: normal; line-height: 1; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } .glyphicon-asterisk:before { content: "\2a"; } .glyphicon-plus:before { content: "\2b"; } .glyphicon-euro:before, .glyphicon-eur:before { content: "\20ac"; } .glyphicon-minus:before { content: "\2212"; } .glyphicon-cloud:before { content: "\2601"; } .glyphicon-envelope:before { content: "\2709"; } .glyphicon-pencil:before { content: "\270f"; } .glyphicon-glass:before { content: "\e001"; } .glyphicon-music:before { content: "\e002"; } .glyphicon-search:before { content: "\e003"; } .glyphicon-heart:before { content: "\e005"; } .glyphicon-star:before { content: "\e006"; } .glyphicon-star-empty:before { content: "\e007"; } .glyphicon-user:before { content: "\e008"; } .glyphicon-film:before { content: "\e009"; } .glyphicon-th-large:before { content: "\e010"; } .glyphicon-th:before { content: "\e011"; } .glyphicon-th-list:before { content: "\e012"; } .glyphicon-ok:before { content: "\e013"; } .glyphicon-remove:before { content: "\e014"; } .glyphicon-zoom-in:before { content: "\e015"; } .glyphicon-zoom-out:before { content: "\e016"; } .glyphicon-off:before { content: "\e017"; } .glyphicon-signal:before { content: "\e018"; } .glyphicon-cog:before { content: "\e019"; } .glyphicon-trash:before { content: "\e020"; } .glyphicon-home:before { content: "\e021"; } .glyphicon-file:before { content: "\e022"; } .glyphicon-time:before { content: "\e023"; } .glyphicon-road:before { content: "\e024"; } .glyphicon-download-alt:before { content: "\e025"; } .glyphicon-download:before { content: "\e026"; } .glyphicon-upload:before { content: "\e027"; } .glyphicon-inbox:before { content: "\e028"; } .glyphicon-play-circle:before { content: "\e029"; } .glyphicon-repeat:before { content: "\e030"; } .glyphicon-refresh:before { content: "\e031"; } .glyphicon-list-alt:before { content: "\e032"; } .glyphicon-lock:before { content: "\e033"; } .glyphicon-flag:before { content: "\e034"; } .glyphicon-headphones:before { content: "\e035"; } .glyphicon-volume-off:before { content: "\e036"; } .glyphicon-volume-down:before { content: "\e037"; } .glyphicon-volume-up:before { content: "\e038"; } .glyphicon-qrcode:before { content: "\e039"; } .glyphicon-barcode:before { content: "\e040"; } .glyphicon-tag:before { content: "\e041"; } .glyphicon-tags:before { content: "\e042"; } .glyphicon-book:before { content: "\e043"; } .glyphicon-bookmark:before { content: "\e044"; } .glyphicon-print:before { content: "\e045"; } .glyphicon-camera:before { content: "\e046"; } .glyphicon-font:before { content: "\e047"; } .glyphicon-bold:before { content: "\e048"; } .glyphicon-italic:before { content: "\e049"; } .glyphicon-text-height:before { content: "\e050"; } .glyphicon-text-width:before { content: "\e051"; } .glyphicon-align-left:before { content: "\e052"; } .glyphicon-align-center:before { content: "\e053"; } .glyphicon-align-right:before { content: "\e054"; } .glyphicon-align-justify:before { content: "\e055"; } .glyphicon-list:before { content: "\e056"; } .glyphicon-indent-left:before { content: "\e057"; } .glyphicon-indent-right:before { content: "\e058"; } .glyphicon-facetime-video:before { content: "\e059"; } .glyphicon-picture:before { content: "\e060"; } .glyphicon-map-marker:before { content: "\e062"; } .glyphicon-adjust:before { content: "\e063"; } .glyphicon-tint:before { content: "\e064"; } .glyphicon-edit:before { content: "\e065"; } .glyphicon-share:before { content: "\e066"; } .glyphicon-check:before { content: "\e067"; } .glyphicon-move:before { content: "\e068"; } .glyphicon-step-backward:before { content: "\e069"; } .glyphicon-fast-backward:before { content: "\e070"; } .glyphicon-backward:before { content: "\e071"; } .glyphicon-play:before { content: "\e072"; } .glyphicon-pause:before { content: "\e073"; } .glyphicon-stop:before { content: "\e074"; } .glyphicon-forward:before { content: "\e075"; } .glyphicon-fast-forward:before { content: "\e076"; } .glyphicon-step-forward:before { content: "\e077"; } .glyphicon-eject:before { content: "\e078"; } .glyphicon-chevron-left:before { content: "\e079"; } .glyphicon-chevron-right:before { content: "\e080"; } .glyphicon-plus-sign:before { content: "\e081"; } .glyphicon-minus-sign:before { content: "\e082"; } .glyphicon-remove-sign:before { content: "\e083"; } .glyphicon-ok-sign:before { content: "\e084"; } .glyphicon-question-sign:before { content: "\e085"; } .glyphicon-info-sign:before { content: "\e086"; } .glyphicon-screenshot:before { content: "\e087"; } .glyphicon-remove-circle:before { content: "\e088"; } .glyphicon-ok-circle:before { content: "\e089"; } .glyphicon-ban-circle:before { content: "\e090"; } .glyphicon-arrow-left:before { content: "\e091"; } .glyphicon-arrow-right:before { content: "\e092"; } .glyphicon-arrow-up:before { content: "\e093"; } .glyphicon-arrow-down:before { content: "\e094"; } .glyphicon-share-alt:before { content: "\e095"; } .glyphicon-resize-full:before { content: "\e096"; } .glyphicon-resize-small:before { content: "\e097"; } .glyphicon-exclamation-sign:before { content: "\e101"; } .glyphicon-gift:before { content: "\e102"; } .glyphicon-leaf:before { content: "\e103"; } .glyphicon-fire:before { content: "\e104"; } .glyphicon-eye-open:before { content: "\e105"; } .glyphicon-eye-close:before { content: "\e106"; } .glyphicon-warning-sign:before { content: "\e107"; } .glyphicon-plane:before { content: "\e108"; } .glyphicon-calendar:before { content: "\e109"; } .glyphicon-random:before { content: "\e110"; } .glyphicon-comment:before { content: "\e111"; } .glyphicon-magnet:before { content: "\e112"; } .glyphicon-chevron-up:before { content: "\e113"; } .glyphicon-chevron-down:before { content: "\e114"; } .glyphicon-retweet:before { content: "\e115"; } .glyphicon-shopping-cart:before { content: "\e116"; } .glyphicon-folder-close:before { content: "\e117"; } .glyphicon-folder-open:before { content: "\e118"; } .glyphicon-resize-vertical:before { content: "\e119"; } .glyphicon-resize-horizontal:before { content: "\e120"; } .glyphicon-hdd:before { content: "\e121"; } .glyphicon-bullhorn:before { content: "\e122"; } .glyphicon-bell:before { content: "\e123"; } .glyphicon-certificate:before { content: "\e124"; } .glyphicon-thumbs-up:before { content: "\e125"; } .glyphicon-thumbs-down:before { content: "\e126"; } .glyphicon-hand-right:before { content: "\e127"; } .glyphicon-hand-left:before { content: "\e128"; } .glyphicon-hand-up:before { content: "\e129"; } .glyphicon-hand-down:before { content: "\e130"; } .glyphicon-circle-arrow-right:before { content: "\e131"; } .glyphicon-circle-arrow-left:before { content: "\e132"; } .glyphicon-circle-arrow-up:before { content: "\e133"; } .glyphicon-circle-arrow-down:before { content: "\e134"; } .glyphicon-globe:before { content: "\e135"; } .glyphicon-wrench:before { content: "\e136"; } .glyphicon-tasks:before { content: "\e137"; } .glyphicon-filter:before { content: "\e138"; } .glyphicon-briefcase:before { content: "\e139"; } .glyphicon-fullscreen:before { content: "\e140"; } .glyphicon-dashboard:before { content: "\e141"; } .glyphicon-paperclip:before { content: "\e142"; } .glyphicon-heart-empty:before { content: "\e143"; } .glyphicon-link:before { content: "\e144"; } .glyphicon-phone:before { content: "\e145"; } .glyphicon-pushpin:before { content: "\e146"; } .glyphicon-usd:before { content: "\e148"; } .glyphicon-gbp:before { content: "\e149"; } .glyphicon-sort:before { content: "\e150"; } .glyphicon-sort-by-alphabet:before { content: "\e151"; } .glyphicon-sort-by-alphabet-alt:before { content: "\e152"; } .glyphicon-sort-by-order:before { content: "\e153"; } .glyphicon-sort-by-order-alt:before { content: "\e154"; } .glyphicon-sort-by-attributes:before { content: "\e155"; } .glyphicon-sort-by-attributes-alt:before { content: "\e156"; } .glyphicon-unchecked:before { content: "\e157"; } .glyphicon-expand:before { content: "\e158"; } .glyphicon-collapse-down:before { content: "\e159"; } .glyphicon-collapse-up:before { content: "\e160"; } .glyphicon-log-in:before { content: "\e161"; } .glyphicon-flash:before { content: "\e162"; } .glyphicon-log-out:before { content: "\e163"; } .glyphicon-new-window:before { content: "\e164"; } .glyphicon-record:before { content: "\e165"; } .glyphicon-save:before { content: "\e166"; } .glyphicon-open:before { content: "\e167"; } .glyphicon-saved:before { content: "\e168"; } .glyphicon-import:before { content: "\e169"; } .glyphicon-export:before { content: "\e170"; } .glyphicon-send:before { content: "\e171"; } .glyphicon-floppy-disk:before { content: "\e172"; } .glyphicon-floppy-saved:before { content: "\e173"; } .glyphicon-floppy-remove:before { content: "\e174"; } .glyphicon-floppy-save:before { content: "\e175"; } .glyphicon-floppy-open:before { content: "\e176"; } .glyphicon-credit-card:before { content: "\e177"; } .glyphicon-transfer:before { content: "\e178"; } .glyphicon-cutlery:before { content: "\e179"; } .glyphicon-header:before { content: "\e180"; } .glyphicon-compressed:before { content: "\e181"; } .glyphicon-earphone:before { content: "\e182"; } .glyphicon-phone-alt:before { content: "\e183"; } .glyphicon-tower:before { content: "\e184"; } .glyphicon-stats:before { content: "\e185"; } .glyphicon-sd-video:before { content: "\e186"; } .glyphicon-hd-video:before { content: "\e187"; } .glyphicon-subtitles:before { content: "\e188"; } .glyphicon-sound-stereo:before { content: "\e189"; } .glyphicon-sound-dolby:before { content: "\e190"; } .glyphicon-sound-5-1:before { content: "\e191"; } .glyphicon-sound-6-1:before { content: "\e192"; } .glyphicon-sound-7-1:before { content: "\e193"; } .glyphicon-copyright-mark:before { content: "\e194"; } .glyphicon-registration-mark:before { content: "\e195"; } .glyphicon-cloud-download:before { content: "\e197"; } .glyphicon-cloud-upload:before { content: "\e198"; } .glyphicon-tree-conifer:before { content: "\e199"; } .glyphicon-tree-deciduous:before { content: "\e200"; } * { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } *:before, *:after { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } html { font-size: 10px; -webkit-tap-highlight-color: rgba(0, 0, 0, 0); } body { font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 14px; line-height: 1.42857143; color: #333; background-color: #fff; } input, button, select, textarea { font-family: inherit; font-size: inherit; line-height: inherit; } a { color: #337ab7; text-decoration: none; } a:hover, a:focus { color: #23527c; text-decoration: underline; } a:focus { outline: thin dotted; outline: 5px auto -webkit-focus-ring-color; outline-offset: -2px; } figure { margin: 0; } img { vertical-align: middle; } .img-responsive, .thumbnail > img, .thumbnail a > img, .carousel-inner > .item > img, .carousel-inner > .item > a > img { display: block; max-width: 100%; height: auto; } .img-rounded { border-radius: 6px; } .img-thumbnail { display: inline-block; max-width: 100%; height: auto; padding: 4px; line-height: 1.42857143; background-color: #fff; border: 1px solid #ddd; border-radius: 4px; -webkit-transition: all .2s ease-in-out; -o-transition: all .2s ease-in-out; transition: all .2s ease-in-out; } .img-circle { border-radius: 50%; } hr { margin-top: 20px; margin-bottom: 20px; border: 0; border-top: 1px solid #eee; } .sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); border: 0; } .sr-only-focusable:active, .sr-only-focusable:focus { position: static; width: auto; height: auto; margin: 0; overflow: visible; clip: auto; } h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 { font-family: inherit; font-weight: 500; line-height: 1.1; color: inherit; } h1 small, h2 small, h3 small, h4 small, h5 small, h6 small, .h1 small, .h2 small, .h3 small, .h4 small, .h5 small, .h6 small, h1 .small, h2 .small, h3 .small, h4 .small, h5 .small, h6 .small, .h1 .small, .h2 .small, .h3 .small, .h4 .small, .h5 .small, .h6 .small { font-weight: normal; line-height: 1; color: #777; } h1, .h1, h2, .h2, h3, .h3 { margin-top: 20px; margin-bottom: 10px; } h1 small, .h1 small, h2 small, .h2 small, h3 small, .h3 small, h1 .small, .h1 .small, h2 .small, .h2 .small, h3 .small, .h3 .small { font-size: 65%; } h4, .h4, h5, .h5, h6, .h6 { margin-top: 10px; margin-bottom: 10px; } h4 small, .h4 small, h5 small, .h5 small, h6 small, .h6 small, h4 .small, .h4 .small, h5 .small, .h5 .small, h6 .small, .h6 .small { font-size: 75%; } h1, .h1 { font-size: 36px; } h2, .h2 { font-size: 30px; } h3, .h3 { font-size: 24px; } h4, .h4 { font-size: 18px; } h5, .h5 { font-size: 14px; } h6, .h6 { font-size: 12px; } p { margin: 0 0 10px; } .lead { margin-bottom: 20px; font-size: 16px; font-weight: 300; line-height: 1.4; } @media (min-width: 768px) { .lead { font-size: 21px; } } small, .small { font-size: 85%; } mark, .mark { padding: .2em; background-color: #fcf8e3; } .text-left { text-align: left; } .text-right { text-align: right; } .text-center { text-align: center; } .text-justify { text-align: justify; } .text-nowrap { white-space: nowrap; } .text-lowercase { text-transform: lowercase; } .text-uppercase { text-transform: uppercase; } .text-capitalize { text-transform: capitalize; } .text-muted { color: #777; } .text-primary { color: #337ab7; } a.text-primary:hover { color: #286090; } .text-success { color: #3c763d; } a.text-success:hover { color: #2b542c; } .text-info { color: #31708f; } a.text-info:hover { color: #245269; } .text-warning { color: #8a6d3b; } a.text-warning:hover { color: #66512c; } .text-danger { color: #a94442; } a.text-danger:hover { color: #843534; } .bg-primary { color: #fff; background-color: #337ab7; } a.bg-primary:hover { background-color: #286090; } .bg-success { background-color: #dff0d8; } a.bg-success:hover { background-color: #c1e2b3; } .bg-info { background-color: #d9edf7; } a.bg-info:hover { background-color: #afd9ee; } .bg-warning { background-color: #fcf8e3; } a.bg-warning:hover { background-color: #f7ecb5; } .bg-danger { background-color: #f2dede; } a.bg-danger:hover { background-color: #e4b9b9; } .page-header { padding-bottom: 9px; margin: 40px 0 20px; border-bottom: 1px solid #eee; } ul, ol { margin-top: 0; margin-bottom: 10px; } ul ul, ol ul, ul ol, ol ol { margin-bottom: 0; } .list-unstyled { padding-left: 0; list-style: none; } .list-inline { padding-left: 0; margin-left: -5px; list-style: none; } .list-inline > li { display: inline-block; padding-right: 5px; padding-left: 5px; } dl { margin-top: 0; margin-bottom: 20px; } dt, dd { line-height: 1.42857143; } dt { font-weight: bold; } dd { margin-left: 0; } @media (min-width: 768px) { .dl-horizontal dt { float: left; width: 160px; overflow: hidden; clear: left; text-align: right; text-overflow: ellipsis; white-space: nowrap; } .dl-horizontal dd { margin-left: 180px; } } abbr[title], abbr[data-original-title] { cursor: help; border-bottom: 1px dotted #777; } .initialism { font-size: 90%; text-transform: uppercase; } blockquote { padding: 10px 20px; margin: 0 0 20px; font-size: 17.5px; border-left: 5px solid #eee; } blockquote p:last-child, blockquote ul:last-child, blockquote ol:last-child { margin-bottom: 0; } blockquote footer, blockquote small, blockquote .small { display: block; font-size: 80%; line-height: 1.42857143; color: #777; } blockquote footer:before, blockquote small:before, blockquote .small:before { content: '\2014 \00A0'; } .blockquote-reverse, blockquote.pull-right { padding-right: 15px; padding-left: 0; text-align: right; border-right: 5px solid #eee; border-left: 0; } .blockquote-reverse footer:before, blockquote.pull-right footer:before, .blockquote-reverse small:before, blockquote.pull-right small:before, .blockquote-reverse .small:before, blockquote.pull-right .small:before { content: ''; } .blockquote-reverse footer:after, blockquote.pull-right footer:after, .blockquote-reverse small:after, blockquote.pull-right small:after, .blockquote-reverse .small:after, blockquote.pull-right .small:after { content: '\00A0 \2014'; } address { margin-bottom: 20px; font-style: normal; line-height: 1.42857143; } code, kbd, pre, samp { font-family: Menlo, Monaco, Consolas, "Courier New", monospace; } code { padding: 2px 4px; font-size: 90%; color: #c7254e; background-color: #f9f2f4; border-radius: 4px; } kbd { padding: 2px 4px; font-size: 90%; color: #fff; background-color: #333; border-radius: 3px; -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .25); box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .25); } kbd kbd { padding: 0; font-size: 100%; font-weight: bold; -webkit-box-shadow: none; box-shadow: none; } pre { display: block; padding: 9.5px; margin: 0 0 10px; font-size: 13px; line-height: 1.42857143; color: #333; word-break: break-all; word-wrap: break-word; background-color: #f5f5f5; border: 1px solid #ccc; border-radius: 4px; } pre code { padding: 0; font-size: inherit; color: inherit; white-space: pre-wrap; background-color: transparent; border-radius: 0; } .pre-scrollable { max-height: 340px; overflow-y: scroll; } .container { padding-right: 15px; padding-left: 15px; margin-right: auto; margin-left: auto; } @media (min-width: 768px) { .container { width: 750px; } } @media (min-width: 992px) { .container { width: 970px; } } @media (min-width: 1200px) { .container { width: 1170px; } } .container-fluid { padding-right: 15px; padding-left: 15px; margin-right: auto; margin-left: auto; } .row { margin-right: -15px; margin-left: -15px; } .col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 { position: relative; min-height: 1px; padding-right: 15px; padding-left: 15px; } .col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 { float: left; } .col-xs-12 { width: 100%; } .col-xs-11 { width: 91.66666667%; } .col-xs-10 { width: 83.33333333%; } .col-xs-9 { width: 75%; } .col-xs-8 { width: 66.66666667%; } .col-xs-7 { width: 58.33333333%; } .col-xs-6 { width: 50%; } .col-xs-5 { width: 41.66666667%; } .col-xs-4 { width: 33.33333333%; } .col-xs-3 { width: 25%; } .col-xs-2 { width: 16.66666667%; } .col-xs-1 { width: 8.33333333%; } .col-xs-pull-12 { right: 100%; } .col-xs-pull-11 { right: 91.66666667%; } .col-xs-pull-10 { right: 83.33333333%; } .col-xs-pull-9 { right: 75%; } .col-xs-pull-8 { right: 66.66666667%; } .col-xs-pull-7 { right: 58.33333333%; } .col-xs-pull-6 { right: 50%; } .col-xs-pull-5 { right: 41.66666667%; } .col-xs-pull-4 { right: 33.33333333%; } .col-xs-pull-3 { right: 25%; } .col-xs-pull-2 { right: 16.66666667%; } .col-xs-pull-1 { right: 8.33333333%; } .col-xs-pull-0 { right: auto; } .col-xs-push-12 { left: 100%; } .col-xs-push-11 { left: 91.66666667%; } .col-xs-push-10 { left: 83.33333333%; } .col-xs-push-9 { left: 75%; } .col-xs-push-8 { left: 66.66666667%; } .col-xs-push-7 { left: 58.33333333%; } .col-xs-push-6 { left: 50%; } .col-xs-push-5 { left: 41.66666667%; } .col-xs-push-4 { left: 33.33333333%; } .col-xs-push-3 { left: 25%; } .col-xs-push-2 { left: 16.66666667%; } .col-xs-push-1 { left: 8.33333333%; } .col-xs-push-0 { left: auto; } .col-xs-offset-12 { margin-left: 100%; } .col-xs-offset-11 { margin-left: 91.66666667%; } .col-xs-offset-10 { margin-left: 83.33333333%; } .col-xs-offset-9 { margin-left: 75%; } .col-xs-offset-8 { margin-left: 66.66666667%; } .col-xs-offset-7 { margin-left: 58.33333333%; } .col-xs-offset-6 { margin-left: 50%; } .col-xs-offset-5 { margin-left: 41.66666667%; } .col-xs-offset-4 { margin-left: 33.33333333%; } .col-xs-offset-3 { margin-left: 25%; } .col-xs-offset-2 { margin-left: 16.66666667%; } .col-xs-offset-1 { margin-left: 8.33333333%; } .col-xs-offset-0 { margin-left: 0; } @media (min-width: 768px) { .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 { float: left; } .col-sm-12 { width: 100%; } .col-sm-11 { width: 91.66666667%; } .col-sm-10 { width: 83.33333333%; } .col-sm-9 { width: 75%; } .col-sm-8 { width: 66.66666667%; } .col-sm-7 { width: 58.33333333%; } .col-sm-6 { width: 50%; } .col-sm-5 { width: 41.66666667%; } .col-sm-4 { width: 33.33333333%; } .col-sm-3 { width: 25%; } .col-sm-2 { width: 16.66666667%; } .col-sm-1 { width: 8.33333333%; } .col-sm-pull-12 { right: 100%; } .col-sm-pull-11 { right: 91.66666667%; } .col-sm-pull-10 { right: 83.33333333%; } .col-sm-pull-9 { right: 75%; } .col-sm-pull-8 { right: 66.66666667%; } .col-sm-pull-7 { right: 58.33333333%; } .col-sm-pull-6 { right: 50%; } .col-sm-pull-5 { right: 41.66666667%; } .col-sm-pull-4 { right: 33.33333333%; } .col-sm-pull-3 { right: 25%; } .col-sm-pull-2 { right: 16.66666667%; } .col-sm-pull-1 { right: 8.33333333%; } .col-sm-pull-0 { right: auto; } .col-sm-push-12 { left: 100%; } .col-sm-push-11 { left: 91.66666667%; } .col-sm-push-10 { left: 83.33333333%; } .col-sm-push-9 { left: 75%; } .col-sm-push-8 { left: 66.66666667%; } .col-sm-push-7 { left: 58.33333333%; } .col-sm-push-6 { left: 50%; } .col-sm-push-5 { left: 41.66666667%; } .col-sm-push-4 { left: 33.33333333%; } .col-sm-push-3 { left: 25%; } .col-sm-push-2 { left: 16.66666667%; } .col-sm-push-1 { left: 8.33333333%; } .col-sm-push-0 { left: auto; } .col-sm-offset-12 { margin-left: 100%; } .col-sm-offset-11 { margin-left: 91.66666667%; } .col-sm-offset-10 { margin-left: 83.33333333%; } .col-sm-offset-9 { margin-left: 75%; } .col-sm-offset-8 { margin-left: 66.66666667%; } .col-sm-offset-7 { margin-left: 58.33333333%; } .col-sm-offset-6 { margin-left: 50%; } .col-sm-offset-5 { margin-left: 41.66666667%; } .col-sm-offset-4 { margin-left: 33.33333333%; } .col-sm-offset-3 { margin-left: 25%; } .col-sm-offset-2 { margin-left: 16.66666667%; } .col-sm-offset-1 { margin-left: 8.33333333%; } .col-sm-offset-0 { margin-left: 0; } } @media (min-width: 992px) { .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 { float: left; } .col-md-12 { width: 100%; } .col-md-11 { width: 91.66666667%; } .col-md-10 { width: 83.33333333%; } .col-md-9 { width: 75%; } .col-md-8 { width: 66.66666667%; } .col-md-7 { width: 58.33333333%; } .col-md-6 { width: 50%; } .col-md-5 { width: 41.66666667%; } .col-md-4 { width: 33.33333333%; } .col-md-3 { width: 25%; } .col-md-2 { width: 16.66666667%; } .col-md-1 { width: 8.33333333%; } .col-md-pull-12 { right: 100%; } .col-md-pull-11 { right: 91.66666667%; } .col-md-pull-10 { right: 83.33333333%; } .col-md-pull-9 { right: 75%; } .col-md-pull-8 { right: 66.66666667%; } .col-md-pull-7 { right: 58.33333333%; } .col-md-pull-6 { right: 50%; } .col-md-pull-5 { right: 41.66666667%; } .col-md-pull-4 { right: 33.33333333%; } .col-md-pull-3 { right: 25%; } .col-md-pull-2 { right: 16.66666667%; } .col-md-pull-1 { right: 8.33333333%; } .col-md-pull-0 { right: auto; } .col-md-push-12 { left: 100%; } .col-md-push-11 { left: 91.66666667%; } .col-md-push-10 { left: 83.33333333%; } .col-md-push-9 { left: 75%; } .col-md-push-8 { left: 66.66666667%; } .col-md-push-7 { left: 58.33333333%; } .col-md-push-6 { left: 50%; } .col-md-push-5 { left: 41.66666667%; } .col-md-push-4 { left: 33.33333333%; } .col-md-push-3 { left: 25%; } .col-md-push-2 { left: 16.66666667%; } .col-md-push-1 { left: 8.33333333%; } .col-md-push-0 { left: auto; } .col-md-offset-12 { margin-left: 100%; } .col-md-offset-11 { margin-left: 91.66666667%; } .col-md-offset-10 { margin-left: 83.33333333%; } .col-md-offset-9 { margin-left: 75%; } .col-md-offset-8 { margin-left: 66.66666667%; } .col-md-offset-7 { margin-left: 58.33333333%; } .col-md-offset-6 { margin-left: 50%; } .col-md-offset-5 { margin-left: 41.66666667%; } .col-md-offset-4 { margin-left: 33.33333333%; } .col-md-offset-3 { margin-left: 25%; } .col-md-offset-2 { margin-left: 16.66666667%; } .col-md-offset-1 { margin-left: 8.33333333%; } .col-md-offset-0 { margin-left: 0; } } @media (min-width: 1200px) { .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 { float: left; } .col-lg-12 { width: 100%; } .col-lg-11 { width: 91.66666667%; } .col-lg-10 { width: 83.33333333%; } .col-lg-9 { width: 75%; } .col-lg-8 { width: 66.66666667%; } .col-lg-7 { width: 58.33333333%; } .col-lg-6 { width: 50%; } .col-lg-5 { width: 41.66666667%; } .col-lg-4 { width: 33.33333333%; } .col-lg-3 { width: 25%; } .col-lg-2 { width: 16.66666667%; } .col-lg-1 { width: 8.33333333%; } .col-lg-pull-12 { right: 100%; } .col-lg-pull-11 { right: 91.66666667%; } .col-lg-pull-10 { right: 83.33333333%; } .col-lg-pull-9 { right: 75%; } .col-lg-pull-8 { right: 66.66666667%; } .col-lg-pull-7 { right: 58.33333333%; } .col-lg-pull-6 { right: 50%; } .col-lg-pull-5 { right: 41.66666667%; } .col-lg-pull-4 { right: 33.33333333%; } .col-lg-pull-3 { right: 25%; } .col-lg-pull-2 { right: 16.66666667%; } .col-lg-pull-1 { right: 8.33333333%; } .col-lg-pull-0 { right: auto; } .col-lg-push-12 { left: 100%; } .col-lg-push-11 { left: 91.66666667%; } .col-lg-push-10 { left: 83.33333333%; } .col-lg-push-9 { left: 75%; } .col-lg-push-8 { left: 66.66666667%; } .col-lg-push-7 { left: 58.33333333%; } .col-lg-push-6 { left: 50%; } .col-lg-push-5 { left: 41.66666667%; } .col-lg-push-4 { left: 33.33333333%; } .col-lg-push-3 { left: 25%; } .col-lg-push-2 { left: 16.66666667%; } .col-lg-push-1 { left: 8.33333333%; } .col-lg-push-0 { left: auto; } .col-lg-offset-12 { margin-left: 100%; } .col-lg-offset-11 { margin-left: 91.66666667%; } .col-lg-offset-10 { margin-left: 83.33333333%; } .col-lg-offset-9 { margin-left: 75%; } .col-lg-offset-8 { margin-left: 66.66666667%; } .col-lg-offset-7 { margin-left: 58.33333333%; } .col-lg-offset-6 { margin-left: 50%; } .col-lg-offset-5 { margin-left: 41.66666667%; } .col-lg-offset-4 { margin-left: 33.33333333%; } .col-lg-offset-3 { margin-left: 25%; } .col-lg-offset-2 { margin-left: 16.66666667%; } .col-lg-offset-1 { margin-left: 8.33333333%; } .col-lg-offset-0 { margin-left: 0; } } table { background-color: transparent; } caption { padding-top: 8px; padding-bottom: 8px; color: #777; text-align: left; } th { text-align: left; } .table { width: 100%; max-width: 100%; margin-bottom: 20px; } .table > thead > tr > th, .table > tbody > tr > th, .table > tfoot > tr > th, .table > thead > tr > td, .table > tbody > tr > td, .table > tfoot > tr > td { padding: 8px; line-height: 1.42857143; vertical-align: top; border-top: 1px solid #ddd; } .table > thead > tr > th { vertical-align: bottom; border-bottom: 2px solid #ddd; } .table > caption + thead > tr:first-child > th, .table > colgroup + thead > tr:first-child > th, .table > thead:first-child > tr:first-child > th, .table > caption + thead > tr:first-child > td, .table > colgroup + thead > tr:first-child > td, .table > thead:first-child > tr:first-child > td { border-top: 0; } .table > tbody + tbody { border-top: 2px solid #ddd; } .table .table { background-color: #fff; } .table-condensed > thead > tr > th, .table-condensed > tbody > tr > th, .table-condensed > tfoot > tr > th, .table-condensed > thead > tr > td, .table-condensed > tbody > tr > td, .table-condensed > tfoot > tr > td { padding: 5px; } .table-bordered { border: 1px solid #ddd; } .table-bordered > thead > tr > th, .table-bordered > tbody > tr > th, .table-bordered > tfoot > tr > th, .table-bordered > thead > tr > td, .table-bordered > tbody > tr > td, .table-bordered > tfoot > tr > td { border: 1px solid #ddd; } .table-bordered > thead > tr > th, .table-bordered > thead > tr > td { border-bottom-width: 2px; } .table-striped > tbody > tr:nth-child(odd) { background-color: #f9f9f9; } .table-hover > tbody > tr:hover { background-color: #f5f5f5; } table col[class*="col-"] { position: static; display: table-column; float: none; } table td[class*="col-"], table th[class*="col-"] { position: static; display: table-cell; float: none; } .table > thead > tr > td.active, .table > tbody > tr > td.active, .table > tfoot > tr > td.active, .table > thead > tr > th.active, .table > tbody > tr > th.active, .table > tfoot > tr > th.active, .table > thead > tr.active > td, .table > tbody > tr.active > td, .table > tfoot > tr.active > td, .table > thead > tr.active > th, .table > tbody > tr.active > th, .table > tfoot > tr.active > th { background-color: #f5f5f5; } .table-hover > tbody > tr > td.active:hover, .table-hover > tbody > tr > th.active:hover, .table-hover > tbody > tr.active:hover > td, .table-hover > tbody > tr:hover > .active, .table-hover > tbody > tr.active:hover > th { background-color: #e8e8e8; } .table > thead > tr > td.success, .table > tbody > tr > td.success, .table > tfoot > tr > td.success, .table > thead > tr > th.success, .table > tbody > tr > th.success, .table > tfoot > tr > th.success, .table > thead > tr.success > td, .table > tbody > tr.success > td, .table > tfoot > tr.success > td, .table > thead > tr.success > th, .table > tbody > tr.success > th, .table > tfoot > tr.success > th { background-color: #dff0d8; } .table-hover > tbody > tr > td.success:hover, .table-hover > tbody > tr > th.success:hover, .table-hover > tbody > tr.success:hover > td, .table-hover > tbody > tr:hover > .success, .table-hover > tbody > tr.success:hover > th { background-color: #d0e9c6; } .table > thead > tr > td.info, .table > tbody > tr > td.info, .table > tfoot > tr > td.info, .table > thead > tr > th.info, .table > tbody > tr > th.info, .table > tfoot > tr > th.info, .table > thead > tr.info > td, .table > tbody > tr.info > td, .table > tfoot > tr.info > td, .table > thead > tr.info > th, .table > tbody > tr.info > th, .table > tfoot > tr.info > th { background-color: #d9edf7; } .table-hover > tbody > tr > td.info:hover, .table-hover > tbody > tr > th.info:hover, .table-hover > tbody > tr.info:hover > td, .table-hover > tbody > tr:hover > .info, .table-hover > tbody > tr.info:hover > th { background-color: #c4e3f3; } .table > thead > tr > td.warning, .table > tbody > tr > td.warning, .table > tfoot > tr > td.warning, .table > thead > tr > th.warning, .table > tbody > tr > th.warning, .table > tfoot > tr > th.warning, .table > thead > tr.warning > td, .table > tbody > tr.warning > td, .table > tfoot > tr.warning > td, .table > thead > tr.warning > th, .table > tbody > tr.warning > th, .table > tfoot > tr.warning > th { background-color: #fcf8e3; } .table-hover > tbody > tr > td.warning:hover, .table-hover > tbody > tr > th.warning:hover, .table-hover > tbody > tr.warning:hover > td, .table-hover > tbody > tr:hover > .warning, .table-hover > tbody > tr.warning:hover > th { background-color: #faf2cc; } .table > thead > tr > td.danger, .table > tbody > tr > td.danger, .table > tfoot > tr > td.danger, .table > thead > tr > th.danger, .table > tbody > tr > th.danger, .table > tfoot > tr > th.danger, .table > thead > tr.danger > td, .table > tbody > tr.danger > td, .table > tfoot > tr.danger > td, .table > thead > tr.danger > th, .table > tbody > tr.danger > th, .table > tfoot > tr.danger > th { background-color: #f2dede; } .table-hover > tbody > tr > td.danger:hover, .table-hover > tbody > tr > th.danger:hover, .table-hover > tbody > tr.danger:hover > td, .table-hover > tbody > tr:hover > .danger, .table-hover > tbody > tr.danger:hover > th { background-color: #ebcccc; } .table-responsive { min-height: .01%; overflow-x: auto; } @media screen and (max-width: 767px) { .table-responsive { width: 100%; margin-bottom: 15px; overflow-y: hidden; -ms-overflow-style: -ms-autohiding-scrollbar; border: 1px solid #ddd; } .table-responsive > .table { margin-bottom: 0; } .table-responsive > .table > thead > tr > th, .table-responsive > .table > tbody > tr > th, .table-responsive > .table > tfoot > tr > th, .table-responsive > .table > thead > tr > td, .table-responsive > .table > tbody > tr > td, .table-responsive > .table > tfoot > tr > td { white-space: nowrap; } .table-responsive > .table-bordered { border: 0; } .table-responsive > .table-bordered > thead > tr > th:first-child, .table-responsive > .table-bordered > tbody > tr > th:first-child, .table-responsive > .table-bordered > tfoot > tr > th:first-child, .table-responsive > .table-bordered > thead > tr > td:first-child, .table-responsive > .table-bordered > tbody > tr > td:first-child, .table-responsive > .table-bordered > tfoot > tr > td:first-child { border-left: 0; } .table-responsive > .table-bordered > thead > tr > th:last-child, .table-responsive > .table-bordered > tbody > tr > th:last-child, .table-responsive > .table-bordered > tfoot > tr > th:last-child, .table-responsive > .table-bordered > thead > tr > td:last-child, .table-responsive > .table-bordered > tbody > tr > td:last-child, .table-responsive > .table-bordered > tfoot > tr > td:last-child { border-right: 0; } .table-responsive > .table-bordered > tbody > tr:last-child > th, .table-responsive > .table-bordered > tfoot > tr:last-child > th, .table-responsive > .table-bordered > tbody > tr:last-child > td, .table-responsive > .table-bordered > tfoot > tr:last-child > td { border-bottom: 0; } } fieldset { min-width: 0; padding: 0; margin: 0; border: 0; } legend { display: block; width: 100%; padding: 0; margin-bottom: 20px; font-size: 21px; line-height: inherit; color: #333; border: 0; border-bottom: 1px solid #e5e5e5; } label { display: inline-block; max-width: 100%; margin-bottom: 5px; font-weight: bold; } input[type="search"] { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } input[type="radio"], input[type="checkbox"] { margin: 4px 0 0; margin-top: 1px \9; line-height: normal; } input[type="file"] { display: block; } input[type="range"] { display: block; width: 100%; } select[multiple], select[size] { height: auto; } input[type="file"]:focus, input[type="radio"]:focus, input[type="checkbox"]:focus { outline: thin dotted; outline: 5px auto -webkit-focus-ring-color; outline-offset: -2px; } output { display: block; padding-top: 7px; font-size: 14px; line-height: 1.42857143; color: #555; } .form-control { display: block; width: 100%; height: 34px; padding: 6px 12px; font-size: 14px; line-height: 1.42857143; color: #555; background-color: #fff; background-image: none; border: 1px solid #ccc; border-radius: 4px; -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); -webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s; -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; } .form-control:focus { border-color: #66afe9; outline: 0; -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, .6); box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, .6); } .form-control::-moz-placeholder { color: #999; opacity: 1; } .form-control:-ms-input-placeholder { color: #999; } .form-control::-webkit-input-placeholder { color: #999; } .form-control[disabled], .form-control[readonly], fieldset[disabled] .form-control { cursor: not-allowed; background-color: #eee; opacity: 1; } textarea.form-control { height: auto; } input[type="search"] { -webkit-appearance: none; } @media screen and (-webkit-min-device-pixel-ratio: 0) { input[type="date"], input[type="time"], input[type="datetime-local"], input[type="month"] { line-height: 34px; } input[type="date"].input-sm, input[type="time"].input-sm, input[type="datetime-local"].input-sm, input[type="month"].input-sm { line-height: 30px; } input[type="date"].input-lg, input[type="time"].input-lg, input[type="datetime-local"].input-lg, input[type="month"].input-lg { line-height: 46px; } } .form-group { margin-bottom: 15px; } .radio, .checkbox { position: relative; display: block; margin-top: 10px; margin-bottom: 10px; } .radio label, .checkbox label { min-height: 20px; padding-left: 20px; margin-bottom: 0; font-weight: normal; cursor: pointer; } .radio input[type="radio"], .radio-inline input[type="radio"], .checkbox input[type="checkbox"], .checkbox-inline input[type="checkbox"] { position: absolute; margin-top: 4px \9; margin-left: -20px; } .radio + .radio, .checkbox + .checkbox { margin-top: -5px; } .radio-inline, .checkbox-inline { display: inline-block; padding-left: 20px; margin-bottom: 0; font-weight: normal; vertical-align: middle; cursor: pointer; } .radio-inline + .radio-inline, .checkbox-inline + .checkbox-inline { margin-top: 0; margin-left: 10px; } input[type="radio"][disabled], input[type="checkbox"][disabled], input[type="radio"].disabled, input[type="checkbox"].disabled, fieldset[disabled] input[type="radio"], fieldset[disabled] input[type="checkbox"] { cursor: not-allowed; } .radio-inline.disabled, .checkbox-inline.disabled, fieldset[disabled] .radio-inline, fieldset[disabled] .checkbox-inline { cursor: not-allowed; } .radio.disabled label, .checkbox.disabled label, fieldset[disabled] .radio label, fieldset[disabled] .checkbox label { cursor: not-allowed; } .form-control-static { padding-top: 7px; padding-bottom: 7px; margin-bottom: 0; } .form-control-static.input-lg, .form-control-static.input-sm { padding-right: 0; padding-left: 0; } .input-sm, .form-group-sm .form-control { height: 30px; padding: 5px 10px; font-size: 12px; line-height: 1.5; border-radius: 3px; } select.input-sm, select.form-group-sm .form-control { height: 30px; line-height: 30px; } textarea.input-sm, textarea.form-group-sm .form-control, select[multiple].input-sm, select[multiple].form-group-sm .form-control { height: auto; } .input-lg, .form-group-lg .form-control { height: 46px; padding: 10px 16px; font-size: 18px; line-height: 1.33; border-radius: 6px; } select.input-lg, select.form-group-lg .form-control { height: 46px; line-height: 46px; } textarea.input-lg, textarea.form-group-lg .form-control, select[multiple].input-lg, select[multiple].form-group-lg .form-control { height: auto; } .has-feedback { position: relative; } .has-feedback .form-control { padding-right: 42.5px; } .form-control-feedback { position: absolute; top: 0; right: 0; z-index: 2; display: block; width: 34px; height: 34px; line-height: 34px; text-align: center; pointer-events: none; } .input-lg + .form-control-feedback { width: 46px; height: 46px; line-height: 46px; } .input-sm + .form-control-feedback { width: 30px; height: 30px; line-height: 30px; } .has-success .help-block, .has-success .control-label, .has-success .radio, .has-success .checkbox, .has-success .radio-inline, .has-success .checkbox-inline, .has-success.radio label, .has-success.checkbox label, .has-success.radio-inline label, .has-success.checkbox-inline label { color: #3c763d; } .has-success .form-control { border-color: #3c763d; -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); } .has-success .form-control:focus { border-color: #2b542c; -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #67b168; box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #67b168; } .has-success .input-group-addon { color: #3c763d; background-color: #dff0d8; border-color: #3c763d; } .has-success .form-control-feedback { color: #3c763d; } .has-warning .help-block, .has-warning .control-label, .has-warning .radio, .has-warning .checkbox, .has-warning .radio-inline, .has-warning .checkbox-inline, .has-warning.radio label, .has-warning.checkbox label, .has-warning.radio-inline label, .has-warning.checkbox-inline label { color: #8a6d3b; } .has-warning .form-control { border-color: #8a6d3b; -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); } .has-warning .form-control:focus { border-color: #66512c; -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #c0a16b; box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #c0a16b; } .has-warning .input-group-addon { color: #8a6d3b; background-color: #fcf8e3; border-color: #8a6d3b; } .has-warning .form-control-feedback { color: #8a6d3b; } .has-error .help-block, .has-error .control-label, .has-error .radio, .has-error .checkbox, .has-error .radio-inline, .has-error .checkbox-inline, .has-error.radio label, .has-error.checkbox label, .has-error.radio-inline label, .has-error.checkbox-inline label { color: #a94442; } .has-error .form-control { border-color: #a94442; -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); } .has-error .form-control:focus { border-color: #843534; -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #ce8483; box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #ce8483; } .has-error .input-group-addon { color: #a94442; background-color: #f2dede; border-color: #a94442; } .has-error .form-control-feedback { color: #a94442; } .has-feedback label ~ .form-control-feedback { top: 25px; } .has-feedback label.sr-only ~ .form-control-feedback { top: 0; } .help-block { display: block; margin-top: 5px; margin-bottom: 10px; color: #737373; } @media (min-width: 768px) { .form-inline .form-group { display: inline-block; margin-bottom: 0; vertical-align: middle; } .form-inline .form-control { display: inline-block; width: auto; vertical-align: middle; } .form-inline .form-control-static { display: inline-block; } .form-inline .input-group { display: inline-table; vertical-align: middle; } .form-inline .input-group .input-group-addon, .form-inline .input-group .input-group-btn, .form-inline .input-group .form-control { width: auto; } .form-inline .input-group > .form-control { width: 100%; } .form-inline .control-label { margin-bottom: 0; vertical-align: middle; } .form-inline .radio, .form-inline .checkbox { display: inline-block; margin-top: 0; margin-bottom: 0; vertical-align: middle; } .form-inline .radio label, .form-inline .checkbox label { padding-left: 0; } .form-inline .radio input[type="radio"], .form-inline .checkbox input[type="checkbox"] { position: relative; margin-left: 0; } .form-inline .has-feedback .form-control-feedback { top: 0; } } .form-horizontal .radio, .form-horizontal .checkbox, .form-horizontal .radio-inline, .form-horizontal .checkbox-inline { padding-top: 7px; margin-top: 0; margin-bottom: 0; } .form-horizontal .radio, .form-horizontal .checkbox { min-height: 27px; } .form-horizontal .form-group { margin-right: -15px; margin-left: -15px; } @media (min-width: 768px) { .form-horizontal .control-label { padding-top: 7px; margin-bottom: 0; text-align: right; } } .form-horizontal .has-feedback .form-control-feedback { right: 15px; } @media (min-width: 768px) { .form-horizontal .form-group-lg .control-label { padding-top: 14.3px; } } @media (min-width: 768px) { .form-horizontal .form-group-sm .control-label { padding-top: 6px; } } .btn { display: inline-block; padding: 6px 12px; margin-bottom: 0; font-size: 14px; font-weight: normal; line-height: 1.42857143; text-align: center; white-space: nowrap; vertical-align: middle; -ms-touch-action: manipulation; touch-action: manipulation; cursor: pointer; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; background-image: none; border: 1px solid transparent; border-radius: 4px; } .btn:focus, .btn:active:focus, .btn.active:focus, .btn.focus, .btn:active.focus, .btn.active.focus { outline: thin dotted; outline: 5px auto -webkit-focus-ring-color; outline-offset: -2px; } .btn:hover, .btn:focus, .btn.focus { color: #333; text-decoration: none; } .btn:active, .btn.active { background-image: none; outline: 0; -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); } .btn.disabled, .btn[disabled], fieldset[disabled] .btn { pointer-events: none; cursor: not-allowed; filter: alpha(opacity=65); -webkit-box-shadow: none; box-shadow: none; opacity: .65; } .btn-default { color: #333; background-color: #fff; border-color: #ccc; } .btn-default:hover, .btn-default:focus, .btn-default.focus, .btn-default:active, .btn-default.active, .open > .dropdown-toggle.btn-default { color: #333; background-color: #e6e6e6; border-color: #adadad; } .btn-default:active, .btn-default.active, .open > .dropdown-toggle.btn-default { background-image: none; } .btn-default.disabled, .btn-default[disabled], fieldset[disabled] .btn-default, .btn-default.disabled:hover, .btn-default[disabled]:hover, fieldset[disabled] .btn-default:hover, .btn-default.disabled:focus, .btn-default[disabled]:focus, fieldset[disabled] .btn-default:focus, .btn-default.disabled.focus, .btn-default[disabled].focus, fieldset[disabled] .btn-default.focus, .btn-default.disabled:active, .btn-default[disabled]:active, fieldset[disabled] .btn-default:active, .btn-default.disabled.active, .btn-default[disabled].active, fieldset[disabled] .btn-default.active { background-color: #fff; border-color: #ccc; } .btn-default .badge { color: #fff; background-color: #333; } .btn-primary { color: #fff; background-color: #337ab7; border-color: #2e6da4; } .btn-primary:hover, .btn-primary:focus, .btn-primary.focus, .btn-primary:active, .btn-primary.active, .open > .dropdown-toggle.btn-primary { color: #fff; background-color: #286090; border-color: #204d74; } .btn-primary:active, .btn-primary.active, .open > .dropdown-toggle.btn-primary { background-image: none; } .btn-primary.disabled, .btn-primary[disabled], fieldset[disabled] .btn-primary, .btn-primary.disabled:hover, .btn-primary[disabled]:hover, fieldset[disabled] .btn-primary:hover, .btn-primary.disabled:focus, .btn-primary[disabled]:focus, fieldset[disabled] .btn-primary:focus, .btn-primary.disabled.focus, .btn-primary[disabled].focus, fieldset[disabled] .btn-primary.focus, .btn-primary.disabled:active, .btn-primary[disabled]:active, fieldset[disabled] .btn-primary:active, .btn-primary.disabled.active, .btn-primary[disabled].active, fieldset[disabled] .btn-primary.active { background-color: #337ab7; border-color: #2e6da4; } .btn-primary .badge { color: #337ab7; background-color: #fff; } .btn-success { color: #fff; background-color: #5cb85c; border-color: #4cae4c; } .btn-success:hover, .btn-success:focus, .btn-success.focus, .btn-success:active, .btn-success.active, .open > .dropdown-toggle.btn-success { color: #fff; background-color: #449d44; border-color: #398439; } .btn-success:active, .btn-success.active, .open > .dropdown-toggle.btn-success { background-image: none; } .btn-success.disabled, .btn-success[disabled], fieldset[disabled] .btn-success, .btn-success.disabled:hover, .btn-success[disabled]:hover, fieldset[disabled] .btn-success:hover, .btn-success.disabled:focus, .btn-success[disabled]:focus, fieldset[disabled] .btn-success:focus, .btn-success.disabled.focus, .btn-success[disabled].focus, fieldset[disabled] .btn-success.focus, .btn-success.disabled:active, .btn-success[disabled]:active, fieldset[disabled] .btn-success:active, .btn-success.disabled.active, .btn-success[disabled].active, fieldset[disabled] .btn-success.active { background-color: #5cb85c; border-color: #4cae4c; } .btn-success .badge { color: #5cb85c; background-color: #fff; } .btn-info { color: #fff; background-color: #5bc0de; border-color: #46b8da; } .btn-info:hover, .btn-info:focus, .btn-info.focus, .btn-info:active, .btn-info.active, .open > .dropdown-toggle.btn-info { color: #fff; background-color: #31b0d5; border-color: #269abc; } .btn-info:active, .btn-info.active, .open > .dropdown-toggle.btn-info { background-image: none; } .btn-info.disabled, .btn-info[disabled], fieldset[disabled] .btn-info, .btn-info.disabled:hover, .btn-info[disabled]:hover, fieldset[disabled] .btn-info:hover, .btn-info.disabled:focus, .btn-info[disabled]:focus, fieldset[disabled] .btn-info:focus, .btn-info.disabled.focus, .btn-info[disabled].focus, fieldset[disabled] .btn-info.focus, .btn-info.disabled:active, .btn-info[disabled]:active, fieldset[disabled] .btn-info:active, .btn-info.disabled.active, .btn-info[disabled].active, fieldset[disabled] .btn-info.active { background-color: #5bc0de; border-color: #46b8da; } .btn-info .badge { color: #5bc0de; background-color: #fff; } .btn-warning { color: #fff; background-color: #f0ad4e; border-color: #eea236; } .btn-warning:hover, .btn-warning:focus, .btn-warning.focus, .btn-warning:active, .btn-warning.active, .open > .dropdown-toggle.btn-warning { color: #fff; background-color: #ec971f; border-color: #d58512; } .btn-warning:active, .btn-warning.active, .open > .dropdown-toggle.btn-warning { background-image: none; } .btn-warning.disabled, .btn-warning[disabled], fieldset[disabled] .btn-warning, .btn-warning.disabled:hover, .btn-warning[disabled]:hover, fieldset[disabled] .btn-warning:hover, .btn-warning.disabled:focus, .btn-warning[disabled]:focus, fieldset[disabled] .btn-warning:focus, .btn-warning.disabled.focus, .btn-warning[disabled].focus, fieldset[disabled] .btn-warning.focus, .btn-warning.disabled:active, .btn-warning[disabled]:active, fieldset[disabled] .btn-warning:active, .btn-warning.disabled.active, .btn-warning[disabled].active, fieldset[disabled] .btn-warning.active { background-color: #f0ad4e; border-color: #eea236; } .btn-warning .badge { color: #f0ad4e; background-color: #fff; } .btn-danger { color: #fff; background-color: #d9534f; border-color: #d43f3a; } .btn-danger:hover, .btn-danger:focus, .btn-danger.focus, .btn-danger:active, .btn-danger.active, .open > .dropdown-toggle.btn-danger { color: #fff; background-color: #c9302c; border-color: #ac2925; } .btn-danger:active, .btn-danger.active, .open > .dropdown-toggle.btn-danger { background-image: none; } .btn-danger.disabled, .btn-danger[disabled], fieldset[disabled] .btn-danger, .btn-danger.disabled:hover, .btn-danger[disabled]:hover, fieldset[disabled] .btn-danger:hover, .btn-danger.disabled:focus, .btn-danger[disabled]:focus, fieldset[disabled] .btn-danger:focus, .btn-danger.disabled.focus, .btn-danger[disabled].focus, fieldset[disabled] .btn-danger.focus, .btn-danger.disabled:active, .btn-danger[disabled]:active, fieldset[disabled] .btn-danger:active, .btn-danger.disabled.active, .btn-danger[disabled].active, fieldset[disabled] .btn-danger.active { background-color: #d9534f; border-color: #d43f3a; } .btn-danger .badge { color: #d9534f; background-color: #fff; } .btn-link { font-weight: normal; color: #337ab7; border-radius: 0; } .btn-link, .btn-link:active, .btn-link.active, .btn-link[disabled], fieldset[disabled] .btn-link { background-color: transparent; -webkit-box-shadow: none; box-shadow: none; } .btn-link, .btn-link:hover, .btn-link:focus, .btn-link:active { border-color: transparent; } .btn-link:hover, .btn-link:focus { color: #23527c; text-decoration: underline; background-color: transparent; } .btn-link[disabled]:hover, fieldset[disabled] .btn-link:hover, .btn-link[disabled]:focus, fieldset[disabled] .btn-link:focus { color: #777; text-decoration: none; } .btn-lg, .btn-group-lg > .btn { padding: 10px 16px; font-size: 18px; line-height: 1.33; border-radius: 6px; } .btn-sm, .btn-group-sm > .btn { padding: 5px 10px; font-size: 12px; line-height: 1.5; border-radius: 3px; } .btn-xs, .btn-group-xs > .btn { padding: 1px 5px; font-size: 12px; line-height: 1.5; border-radius: 3px; } .btn-block { display: block; width: 100%; } .btn-block + .btn-block { margin-top: 5px; } input[type="submit"].btn-block, input[type="reset"].btn-block, input[type="button"].btn-block { width: 100%; } .fade { opacity: 0; -webkit-transition: opacity .15s linear; -o-transition: opacity .15s linear; transition: opacity .15s linear; } .fade.in { opacity: 1; } .collapse { display: none; visibility: hidden; } .collapse.in { display: block; visibility: visible; } tr.collapse.in { display: table-row; } tbody.collapse.in { display: table-row-group; } .collapsing { position: relative; height: 0; overflow: hidden; -webkit-transition-timing-function: ease; -o-transition-timing-function: ease; transition-timing-function: ease; -webkit-transition-duration: .35s; -o-transition-duration: .35s; transition-duration: .35s; -webkit-transition-property: height, visibility; -o-transition-property: height, visibility; transition-property: height, visibility; } .caret { display: inline-block; width: 0; height: 0; margin-left: 2px; vertical-align: middle; border-top: 4px solid; border-right: 4px solid transparent; border-left: 4px solid transparent; } .dropdown { position: relative; } .dropdown-toggle:focus { outline: 0; } .dropdown-menu { position: absolute; top: 100%; left: 0; z-index: 1000; display: none; float: left; min-width: 160px; padding: 5px 0; margin: 2px 0 0; font-size: 14px; text-align: left; list-style: none; background-color: #fff; -webkit-background-clip: padding-box; background-clip: padding-box; border: 1px solid #ccc; border: 1px solid rgba(0, 0, 0, .15); border-radius: 4px; -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, .175); box-shadow: 0 6px 12px rgba(0, 0, 0, .175); } .dropdown-menu.pull-right { right: 0; left: auto; } .dropdown-menu .divider { height: 1px; margin: 9px 0; overflow: hidden; background-color: #e5e5e5; } .dropdown-menu > li > a { display: block; padding: 3px 20px; clear: both; font-weight: normal; line-height: 1.42857143; color: #333; white-space: nowrap; } .dropdown-menu > li > a:hover, .dropdown-menu > li > a:focus { color: #262626; text-decoration: none; background-color: #f5f5f5; } .dropdown-menu > .active > a, .dropdown-menu > .active > a:hover, .dropdown-menu > .active > a:focus { color: #fff; text-decoration: none; background-color: #337ab7; outline: 0; } .dropdown-menu > .disabled > a, .dropdown-menu > .disabled > a:hover, .dropdown-menu > .disabled > a:focus { color: #777; } .dropdown-menu > .disabled > a:hover, .dropdown-menu > .disabled > a:focus { text-decoration: none; cursor: not-allowed; background-color: transparent; background-image: none; filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); } .open > .dropdown-menu { display: block; } .open > a { outline: 0; } .dropdown-menu-right { right: 0; left: auto; } .dropdown-menu-left { right: auto; left: 0; } .dropdown-header { display: block; padding: 3px 20px; font-size: 12px; line-height: 1.42857143; color: #777; white-space: nowrap; } .dropdown-backdrop { position: fixed; top: 0; right: 0; bottom: 0; left: 0; z-index: 990; } .pull-right > .dropdown-menu { right: 0; left: auto; } .dropup .caret, .navbar-fixed-bottom .dropdown .caret { content: ""; border-top: 0; border-bottom: 4px solid; } .dropup .dropdown-menu, .navbar-fixed-bottom .dropdown .dropdown-menu { top: auto; bottom: 100%; margin-bottom: 1px; } @media (min-width: 768px) { .navbar-right .dropdown-menu { right: 0; left: auto; } .navbar-right .dropdown-menu-left { right: auto; left: 0; } } .btn-group, .btn-group-vertical { position: relative; display: inline-block; vertical-align: middle; } .btn-group > .btn, .btn-group-vertical > .btn { position: relative; float: left; } .btn-group > .btn:hover, .btn-group-vertical > .btn:hover, .btn-group > .btn:focus, .btn-group-vertical > .btn:focus, .btn-group > .btn:active, .btn-group-vertical > .btn:active, .btn-group > .btn.active, .btn-group-vertical > .btn.active { z-index: 2; } .btn-group .btn + .btn, .btn-group .btn + .btn-group, .btn-group .btn-group + .btn, .btn-group .btn-group + .btn-group { margin-left: -1px; } .btn-toolbar { margin-left: -5px; } .btn-toolbar .btn-group, .btn-toolbar .input-group { float: left; } .btn-toolbar > .btn, .btn-toolbar > .btn-group, .btn-toolbar > .input-group { margin-left: 5px; } .btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) { border-radius: 0; } .btn-group > .btn:first-child { margin-left: 0; } .btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) { border-top-right-radius: 0; border-bottom-right-radius: 0; } .btn-group > .btn:last-child:not(:first-child), .btn-group > .dropdown-toggle:not(:first-child) { border-top-left-radius: 0; border-bottom-left-radius: 0; } .btn-group > .btn-group { float: left; } .btn-group > .btn-group:not(:first-child):not(:last-child) > .btn { border-radius: 0; } .btn-group > .btn-group:first-child > .btn:last-child, .btn-group > .btn-group:first-child > .dropdown-toggle { border-top-right-radius: 0; border-bottom-right-radius: 0; } .btn-group > .btn-group:last-child > .btn:first-child { border-top-left-radius: 0; border-bottom-left-radius: 0; } .btn-group .dropdown-toggle:active, .btn-group.open .dropdown-toggle { outline: 0; } .btn-group > .btn + .dropdown-toggle { padding-right: 8px; padding-left: 8px; } .btn-group > .btn-lg + .dropdown-toggle { padding-right: 12px; padding-left: 12px; } .btn-group.open .dropdown-toggle { -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); } .btn-group.open .dropdown-toggle.btn-link { -webkit-box-shadow: none; box-shadow: none; } .btn .caret { margin-left: 0; } .btn-lg .caret { border-width: 5px 5px 0; border-bottom-width: 0; } .dropup .btn-lg .caret { border-width: 0 5px 5px; } .btn-group-vertical > .btn, .btn-group-vertical > .btn-group, .btn-group-vertical > .btn-group > .btn { display: block; float: none; width: 100%; max-width: 100%; } .btn-group-vertical > .btn-group > .btn { float: none; } .btn-group-vertical > .btn + .btn, .btn-group-vertical > .btn + .btn-group, .btn-group-vertical > .btn-group + .btn, .btn-group-vertical > .btn-group + .btn-group { margin-top: -1px; margin-left: 0; } .btn-group-vertical > .btn:not(:first-child):not(:last-child) { border-radius: 0; } .btn-group-vertical > .btn:first-child:not(:last-child) { border-top-right-radius: 4px; border-bottom-right-radius: 0; border-bottom-left-radius: 0; } .btn-group-vertical > .btn:last-child:not(:first-child) { border-top-left-radius: 0; border-top-right-radius: 0; border-bottom-left-radius: 4px; } .btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn { border-radius: 0; } .btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child, .btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle { border-bottom-right-radius: 0; border-bottom-left-radius: 0; } .btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child { border-top-left-radius: 0; border-top-right-radius: 0; } .btn-group-justified { display: table; width: 100%; table-layout: fixed; border-collapse: separate; } .btn-group-justified > .btn, .btn-group-justified > .btn-group { display: table-cell; float: none; width: 1%; } .btn-group-justified > .btn-group .btn { width: 100%; } .btn-group-justified > .btn-group .dropdown-menu { left: auto; } [data-toggle="buttons"] > .btn input[type="radio"], [data-toggle="buttons"] > .btn-group > .btn input[type="radio"], [data-toggle="buttons"] > .btn input[type="checkbox"], [data-toggle="buttons"] > .btn-group > .btn input[type="checkbox"] { position: absolute; clip: rect(0, 0, 0, 0); pointer-events: none; } .input-group { position: relative; display: table; border-collapse: separate; } .input-group[class*="col-"] { float: none; padding-right: 0; padding-left: 0; } .input-group .form-control { position: relative; z-index: 2; float: left; width: 100%; margin-bottom: 0; } .input-group-lg > .form-control, .input-group-lg > .input-group-addon, .input-group-lg > .input-group-btn > .btn { height: 46px; padding: 10px 16px; font-size: 18px; line-height: 1.33; border-radius: 6px; } select.input-group-lg > .form-control, select.input-group-lg > .input-group-addon, select.input-group-lg > .input-group-btn > .btn { height: 46px; line-height: 46px; } textarea.input-group-lg > .form-control, textarea.input-group-lg > .input-group-addon, textarea.input-group-lg > .input-group-btn > .btn, select[multiple].input-group-lg > .form-control, select[multiple].input-group-lg > .input-group-addon, select[multiple].input-group-lg > .input-group-btn > .btn { height: auto; } .input-group-sm > .form-control, .input-group-sm > .input-group-addon, .input-group-sm > .input-group-btn > .btn { height: 30px; padding: 5px 10px; font-size: 12px; line-height: 1.5; border-radius: 3px; } select.input-group-sm > .form-control, select.input-group-sm > .input-group-addon, select.input-group-sm > .input-group-btn > .btn { height: 30px; line-height: 30px; } textarea.input-group-sm > .form-control, textarea.input-group-sm > .input-group-addon, textarea.input-group-sm > .input-group-btn > .btn, select[multiple].input-group-sm > .form-control, select[multiple].input-group-sm > .input-group-addon, select[multiple].input-group-sm > .input-group-btn > .btn { height: auto; } .input-group-addon, .input-group-btn, .input-group .form-control { display: table-cell; } .input-group-addon:not(:first-child):not(:last-child), .input-group-btn:not(:first-child):not(:last-child), .input-group .form-control:not(:first-child):not(:last-child) { border-radius: 0; } .input-group-addon, .input-group-btn { width: 1%; white-space: nowrap; vertical-align: middle; } .input-group-addon { padding: 6px 12px; font-size: 14px; font-weight: normal; line-height: 1; color: #555; text-align: center; background-color: #eee; border: 1px solid #ccc; border-radius: 4px; } .input-group-addon.input-sm { padding: 5px 10px; font-size: 12px; border-radius: 3px; } .input-group-addon.input-lg { padding: 10px 16px; font-size: 18px; border-radius: 6px; } .input-group-addon input[type="radio"], .input-group-addon input[type="checkbox"] { margin-top: 0; } .input-group .form-control:first-child, .input-group-addon:first-child, .input-group-btn:first-child > .btn, .input-group-btn:first-child > .btn-group > .btn, .input-group-btn:first-child > .dropdown-toggle, .input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle), .input-group-btn:last-child > .btn-group:not(:last-child) > .btn { border-top-right-radius: 0; border-bottom-right-radius: 0; } .input-group-addon:first-child { border-right: 0; } .input-group .form-control:last-child, .input-group-addon:last-child, .input-group-btn:last-child > .btn, .input-group-btn:last-child > .btn-group > .btn, .input-group-btn:last-child > .dropdown-toggle, .input-group-btn:first-child > .btn:not(:first-child), .input-group-btn:first-child > .btn-group:not(:first-child) > .btn { border-top-left-radius: 0; border-bottom-left-radius: 0; } .input-group-addon:last-child { border-left: 0; } .input-group-btn { position: relative; font-size: 0; white-space: nowrap; } .input-group-btn > .btn { position: relative; } .input-group-btn > .btn + .btn { margin-left: -1px; } .input-group-btn > .btn:hover, .input-group-btn > .btn:focus, .input-group-btn > .btn:active { z-index: 2; } .input-group-btn:first-child > .btn, .input-group-btn:first-child > .btn-group { margin-right: -1px; } .input-group-btn:last-child > .btn, .input-group-btn:last-child > .btn-group { margin-left: -1px; } .nav { padding-left: 0; margin-bottom: 0; list-style: none; } .nav > li { position: relative; display: block; } .nav > li > a { position: relative; display: block; padding: 10px 15px; } .nav > li > a:hover, .nav > li > a:focus { text-decoration: none; background-color: #eee; } .nav > li.disabled > a { color: #777; } .nav > li.disabled > a:hover, .nav > li.disabled > a:focus { color: #777; text-decoration: none; cursor: not-allowed; background-color: transparent; } .nav .open > a, .nav .open > a:hover, .nav .open > a:focus { background-color: #eee; border-color: #337ab7; } .nav .nav-divider { height: 1px; margin: 9px 0; overflow: hidden; background-color: #e5e5e5; } .nav > li > a > img { max-width: none; } .nav-tabs { border-bottom: 1px solid #ddd; } .nav-tabs > li { float: left; margin-bottom: -1px; } .nav-tabs > li > a { margin-right: 2px; line-height: 1.42857143; border: 1px solid transparent; border-radius: 4px 4px 0 0; } .nav-tabs > li > a:hover { border-color: #eee #eee #ddd; } .nav-tabs > li.active > a, .nav-tabs > li.active > a:hover, .nav-tabs > li.active > a:focus { color: #555; cursor: default; background-color: #fff; border: 1px solid #ddd; border-bottom-color: transparent; } .nav-tabs.nav-justified { width: 100%; border-bottom: 0; } .nav-tabs.nav-justified > li { float: none; } .nav-tabs.nav-justified > li > a { margin-bottom: 5px; text-align: center; } .nav-tabs.nav-justified > .dropdown .dropdown-menu { top: auto; left: auto; } @media (min-width: 768px) { .nav-tabs.nav-justified > li { display: table-cell; width: 1%; } .nav-tabs.nav-justified > li > a { margin-bottom: 0; } } .nav-tabs.nav-justified > li > a { margin-right: 0; border-radius: 4px; } .nav-tabs.nav-justified > .active > a, .nav-tabs.nav-justified > .active > a:hover, .nav-tabs.nav-justified > .active > a:focus { border: 1px solid #ddd; } @media (min-width: 768px) { .nav-tabs.nav-justified > li > a { border-bottom: 1px solid #ddd; border-radius: 4px 4px 0 0; } .nav-tabs.nav-justified > .active > a, .nav-tabs.nav-justified > .active > a:hover, .nav-tabs.nav-justified > .active > a:focus { border-bottom-color: #fff; } } .nav-pills > li { float: left; } .nav-pills > li > a { border-radius: 4px; } .nav-pills > li + li { margin-left: 2px; } .nav-pills > li.active > a, .nav-pills > li.active > a:hover, .nav-pills > li.active > a:focus { color: #fff; background-color: #337ab7; } .nav-stacked > li { float: none; } .nav-stacked > li + li { margin-top: 2px; margin-left: 0; } .nav-justified { width: 100%; } .nav-justified > li { float: none; } .nav-justified > li > a { margin-bottom: 5px; text-align: center; } .nav-justified > .dropdown .dropdown-menu { top: auto; left: auto; } @media (min-width: 768px) { .nav-justified > li { display: table-cell; width: 1%; } .nav-justified > li > a { margin-bottom: 0; } } .nav-tabs-justified { border-bottom: 0; } .nav-tabs-justified > li > a { margin-right: 0; border-radius: 4px; } .nav-tabs-justified > .active > a, .nav-tabs-justified > .active > a:hover, .nav-tabs-justified > .active > a:focus { border: 1px solid #ddd; } @media (min-width: 768px) { .nav-tabs-justified > li > a { border-bottom: 1px solid #ddd; border-radius: 4px 4px 0 0; } .nav-tabs-justified > .active > a, .nav-tabs-justified > .active > a:hover, .nav-tabs-justified > .active > a:focus { border-bottom-color: #fff; } } .tab-content > .tab-pane { display: none; visibility: hidden; } .tab-content > .active { display: block; visibility: visible; } .nav-tabs .dropdown-menu { margin-top: -1px; border-top-left-radius: 0; border-top-right-radius: 0; } .navbar { position: relative; min-height: 50px; margin-bottom: 20px; border: 1px solid transparent; } @media (min-width: 768px) { .navbar { border-radius: 4px; } } @media (min-width: 768px) { .navbar-header { float: left; } } .navbar-collapse { padding-right: 15px; padding-left: 15px; overflow-x: visible; -webkit-overflow-scrolling: touch; border-top: 1px solid transparent; -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1); box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1); } .navbar-collapse.in { overflow-y: auto; } @media (min-width: 768px) { .navbar-collapse { width: auto; border-top: 0; -webkit-box-shadow: none; box-shadow: none; } .navbar-collapse.collapse { display: block !important; height: auto !important; padding-bottom: 0; overflow: visible !important; visibility: visible !important; } .navbar-collapse.in { overflow-y: visible; } .navbar-fixed-top .navbar-collapse, .navbar-static-top .navbar-collapse, .navbar-fixed-bottom .navbar-collapse { padding-right: 0; padding-left: 0; } } .navbar-fixed-top .navbar-collapse, .navbar-fixed-bottom .navbar-collapse { max-height: 340px; } @media (max-device-width: 480px) and (orientation: landscape) { .navbar-fixed-top .navbar-collapse, .navbar-fixed-bottom .navbar-collapse { max-height: 200px; } } .container > .navbar-header, .container-fluid > .navbar-header, .container > .navbar-collapse, .container-fluid > .navbar-collapse { margin-right: -15px; margin-left: -15px; } @media (min-width: 768px) { .container > .navbar-header, .container-fluid > .navbar-header, .container > .navbar-collapse, .container-fluid > .navbar-collapse { margin-right: 0; margin-left: 0; } } .navbar-static-top { z-index: 1000; border-width: 0 0 1px; } @media (min-width: 768px) { .navbar-static-top { border-radius: 0; } } .navbar-fixed-top, .navbar-fixed-bottom { position: fixed; right: 0; left: 0; z-index: 1030; } @media (min-width: 768px) { .navbar-fixed-top, .navbar-fixed-bottom { border-radius: 0; } } .navbar-fixed-top { top: 0; border-width: 0 0 1px; } .navbar-fixed-bottom { bottom: 0; margin-bottom: 0; border-width: 1px 0 0; } .navbar-brand { float: left; height: 50px; padding: 15px 15px; font-size: 18px; line-height: 20px; } .navbar-brand:hover, .navbar-brand:focus { text-decoration: none; } .navbar-brand > img { display: block; } @media (min-width: 768px) { .navbar > .container .navbar-brand, .navbar > .container-fluid .navbar-brand { margin-left: -15px; } } .navbar-toggle { position: relative; float: right; padding: 9px 10px; margin-top: 8px; margin-right: 15px; margin-bottom: 8px; background-color: transparent; background-image: none; border: 1px solid transparent; border-radius: 4px; } .navbar-toggle:focus { outline: 0; } .navbar-toggle .icon-bar { display: block; width: 22px; height: 2px; border-radius: 1px; } .navbar-toggle .icon-bar + .icon-bar { margin-top: 4px; } @media (min-width: 768px) { .navbar-toggle { display: none; } } .navbar-nav { margin: 7.5px -15px; } .navbar-nav > li > a { padding-top: 10px; padding-bottom: 10px; line-height: 20px; } @media (max-width: 767px) { .navbar-nav .open .dropdown-menu { position: static; float: none; width: auto; margin-top: 0; background-color: transparent; border: 0; -webkit-box-shadow: none; box-shadow: none; } .navbar-nav .open .dropdown-menu > li > a, .navbar-nav .open .dropdown-menu .dropdown-header { padding: 5px 15px 5px 25px; } .navbar-nav .open .dropdown-menu > li > a { line-height: 20px; } .navbar-nav .open .dropdown-menu > li > a:hover, .navbar-nav .open .dropdown-menu > li > a:focus { background-image: none; } } @media (min-width: 768px) { .navbar-nav { float: left; margin: 0; } .navbar-nav > li { float: left; } .navbar-nav > li > a { padding-top: 15px; padding-bottom: 15px; } } .navbar-form { padding: 10px 15px; margin-top: 8px; margin-right: -15px; margin-bottom: 8px; margin-left: -15px; border-top: 1px solid transparent; border-bottom: 1px solid transparent; -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1), 0 1px 0 rgba(255, 255, 255, .1); box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1), 0 1px 0 rgba(255, 255, 255, .1); } @media (min-width: 768px) { .navbar-form .form-group { display: inline-block; margin-bottom: 0; vertical-align: middle; } .navbar-form .form-control { display: inline-block; width: auto; vertical-align: middle; } .navbar-form .form-control-static { display: inline-block; } .navbar-form .input-group { display: inline-table; vertical-align: middle; } .navbar-form .input-group .input-group-addon, .navbar-form .input-group .input-group-btn, .navbar-form .input-group .form-control { width: auto; } .navbar-form .input-group > .form-control { width: 100%; } .navbar-form .control-label { margin-bottom: 0; vertical-align: middle; } .navbar-form .radio, .navbar-form .checkbox { display: inline-block; margin-top: 0; margin-bottom: 0; vertical-align: middle; } .navbar-form .radio label, .navbar-form .checkbox label { padding-left: 0; } .navbar-form .radio input[type="radio"], .navbar-form .checkbox input[type="checkbox"] { position: relative; margin-left: 0; } .navbar-form .has-feedback .form-control-feedback { top: 0; } } @media (max-width: 767px) { .navbar-form .form-group { margin-bottom: 5px; } .navbar-form .form-group:last-child { margin-bottom: 0; } } @media (min-width: 768px) { .navbar-form { width: auto; padding-top: 0; padding-bottom: 0; margin-right: 0; margin-left: 0; border: 0; -webkit-box-shadow: none; box-shadow: none; } } .navbar-nav > li > .dropdown-menu { margin-top: 0; border-top-left-radius: 0; border-top-right-radius: 0; } .navbar-fixed-bottom .navbar-nav > li > .dropdown-menu { border-top-left-radius: 4px; border-top-right-radius: 4px; border-bottom-right-radius: 0; border-bottom-left-radius: 0; } .navbar-btn { margin-top: 8px; margin-bottom: 8px; } .navbar-btn.btn-sm { margin-top: 10px; margin-bottom: 10px; } .navbar-btn.btn-xs { margin-top: 14px; margin-bottom: 14px; } .navbar-text { margin-top: 15px; margin-bottom: 15px; } @media (min-width: 768px) { .navbar-text { float: left; margin-right: 15px; margin-left: 15px; } } @media (min-width: 768px) { .navbar-left { float: left !important; } .navbar-right { float: right !important; margin-right: -15px; } .navbar-right ~ .navbar-right { margin-right: 0; } } .navbar-default { background-color: #f8f8f8; border-color: #e7e7e7; } .navbar-default .navbar-brand { color: #777; } .navbar-default .navbar-brand:hover, .navbar-default .navbar-brand:focus { color: #5e5e5e; background-color: transparent; } .navbar-default .navbar-text { color: #777; } .navbar-default .navbar-nav > li > a { color: #777; } .navbar-default .navbar-nav > li > a:hover, .navbar-default .navbar-nav > li > a:focus { color: #333; background-color: transparent; } .navbar-default .navbar-nav > .active > a, .navbar-default .navbar-nav > .active > a:hover, .navbar-default .navbar-nav > .active > a:focus { color: #555; background-color: #e7e7e7; } .navbar-default .navbar-nav > .disabled > a, .navbar-default .navbar-nav > .disabled > a:hover, .navbar-default .navbar-nav > .disabled > a:focus { color: #ccc; background-color: transparent; } .navbar-default .navbar-toggle { border-color: #ddd; } .navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus { background-color: #ddd; } .navbar-default .navbar-toggle .icon-bar { background-color: #888; } .navbar-default .navbar-collapse, .navbar-default .navbar-form { border-color: #e7e7e7; } .navbar-default .navbar-nav > .open > a, .navbar-default .navbar-nav > .open > a:hover, .navbar-default .navbar-nav > .open > a:focus { color: #555; background-color: #e7e7e7; } @media (max-width: 767px) { .navbar-default .navbar-nav .open .dropdown-menu > li > a { color: #777; } .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus { color: #333; background-color: transparent; } .navbar-default .navbar-nav .open .dropdown-menu > .active > a, .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus { color: #555; background-color: #e7e7e7; } .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a, .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus { color: #ccc; background-color: transparent; } } .navbar-default .navbar-link { color: #777; } .navbar-default .navbar-link:hover { color: #333; } .navbar-default .btn-link { color: #777; } .navbar-default .btn-link:hover, .navbar-default .btn-link:focus { color: #333; } .navbar-default .btn-link[disabled]:hover, fieldset[disabled] .navbar-default .btn-link:hover, .navbar-default .btn-link[disabled]:focus, fieldset[disabled] .navbar-default .btn-link:focus { color: #ccc; } .navbar-inverse { background-color: #222; border-color: #080808; } .navbar-inverse .navbar-brand { color: #9d9d9d; } .navbar-inverse .navbar-brand:hover, .navbar-inverse .navbar-brand:focus { color: #fff; background-color: transparent; } .navbar-inverse .navbar-text { color: #9d9d9d; } .navbar-inverse .navbar-nav > li > a { color: #9d9d9d; } .navbar-inverse .navbar-nav > li > a:hover, .navbar-inverse .navbar-nav > li > a:focus { color: #fff; background-color: transparent; } .navbar-inverse .navbar-nav > .active > a, .navbar-inverse .navbar-nav > .active > a:hover, .navbar-inverse .navbar-nav > .active > a:focus { color: #fff; background-color: #080808; } .navbar-inverse .navbar-nav > .disabled > a, .navbar-inverse .navbar-nav > .disabled > a:hover, .navbar-inverse .navbar-nav > .disabled > a:focus { color: #444; background-color: transparent; } .navbar-inverse .navbar-toggle { border-color: #333; } .navbar-inverse .navbar-toggle:hover, .navbar-inverse .navbar-toggle:focus { background-color: #333; } .navbar-inverse .navbar-toggle .icon-bar { background-color: #fff; } .navbar-inverse .navbar-collapse, .navbar-inverse .navbar-form { border-color: #101010; } .navbar-inverse .navbar-nav > .open > a, .navbar-inverse .navbar-nav > .open > a:hover, .navbar-inverse .navbar-nav > .open > a:focus { color: #fff; background-color: #080808; } @media (max-width: 767px) { .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header { border-color: #080808; } .navbar-inverse .navbar-nav .open .dropdown-menu .divider { background-color: #080808; } .navbar-inverse .navbar-nav .open .dropdown-menu > li > a { color: #9d9d9d; } .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover, .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus { color: #fff; background-color: transparent; } .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a, .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover, .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus { color: #fff; background-color: #080808; } .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a, .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover, .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus { color: #444; background-color: transparent; } } .navbar-inverse .navbar-link { color: #9d9d9d; } .navbar-inverse .navbar-link:hover { color: #fff; } .navbar-inverse .btn-link { color: #9d9d9d; } .navbar-inverse .btn-link:hover, .navbar-inverse .btn-link:focus { color: #fff; } .navbar-inverse .btn-link[disabled]:hover, fieldset[disabled] .navbar-inverse .btn-link:hover, .navbar-inverse .btn-link[disabled]:focus, fieldset[disabled] .navbar-inverse .btn-link:focus { color: #444; } .breadcrumb { padding: 8px 15px; margin-bottom: 20px; list-style: none; background-color: #f5f5f5; border-radius: 4px; } .breadcrumb > li { display: inline-block; } .breadcrumb > li + li:before { padding: 0 5px; color: #ccc; content: "/\00a0"; } .breadcrumb > .active { color: #777; } .pagination { display: inline-block; padding-left: 0; margin: 20px 0; border-radius: 4px; } .pagination > li { display: inline; } .pagination > li > a, .pagination > li > span { position: relative; float: left; padding: 6px 12px; margin-left: -1px; line-height: 1.42857143; color: #337ab7; text-decoration: none; background-color: #fff; border: 1px solid #ddd; } .pagination > li:first-child > a, .pagination > li:first-child > span { margin-left: 0; border-top-left-radius: 4px; border-bottom-left-radius: 4px; } .pagination > li:last-child > a, .pagination > li:last-child > span { border-top-right-radius: 4px; border-bottom-right-radius: 4px; } .pagination > li > a:hover, .pagination > li > span:hover, .pagination > li > a:focus, .pagination > li > span:focus { color: #23527c; background-color: #eee; border-color: #ddd; } .pagination > .active > a, .pagination > .active > span, .pagination > .active > a:hover, .pagination > .active > span:hover, .pagination > .active > a:focus, .pagination > .active > span:focus { z-index: 2; color: #fff; cursor: default; background-color: #337ab7; border-color: #337ab7; } .pagination > .disabled > span, .pagination > .disabled > span:hover, .pagination > .disabled > span:focus, .pagination > .disabled > a, .pagination > .disabled > a:hover, .pagination > .disabled > a:focus { color: #777; cursor: not-allowed; background-color: #fff; border-color: #ddd; } .pagination-lg > li > a, .pagination-lg > li > span { padding: 10px 16px; font-size: 18px; } .pagination-lg > li:first-child > a, .pagination-lg > li:first-child > span { border-top-left-radius: 6px; border-bottom-left-radius: 6px; } .pagination-lg > li:last-child > a, .pagination-lg > li:last-child > span { border-top-right-radius: 6px; border-bottom-right-radius: 6px; } .pagination-sm > li > a, .pagination-sm > li > span { padding: 5px 10px; font-size: 12px; } .pagination-sm > li:first-child > a, .pagination-sm > li:first-child > span { border-top-left-radius: 3px; border-bottom-left-radius: 3px; } .pagination-sm > li:last-child > a, .pagination-sm > li:last-child > span { border-top-right-radius: 3px; border-bottom-right-radius: 3px; } .pager { padding-left: 0; margin: 20px 0; text-align: center; list-style: none; } .pager li { display: inline; } .pager li > a, .pager li > span { display: inline-block; padding: 5px 14px; background-color: #fff; border: 1px solid #ddd; border-radius: 15px; } .pager li > a:hover, .pager li > a:focus { text-decoration: none; background-color: #eee; } .pager .next > a, .pager .next > span { float: right; } .pager .previous > a, .pager .previous > span { float: left; } .pager .disabled > a, .pager .disabled > a:hover, .pager .disabled > a:focus, .pager .disabled > span { color: #777; cursor: not-allowed; background-color: #fff; } .label { display: inline; padding: .2em .6em .3em; font-size: 75%; font-weight: bold; line-height: 1; color: #fff; text-align: center; white-space: nowrap; vertical-align: baseline; border-radius: .25em; } a.label:hover, a.label:focus { color: #fff; text-decoration: none; cursor: pointer; } .label:empty { display: none; } .btn .label { position: relative; top: -1px; } .label-default { background-color: #777; } .label-default[href]:hover, .label-default[href]:focus { background-color: #5e5e5e; } .label-primary { background-color: #337ab7; } .label-primary[href]:hover, .label-primary[href]:focus { background-color: #286090; } .label-success { background-color: #5cb85c; } .label-success[href]:hover, .label-success[href]:focus { background-color: #449d44; } .label-info { background-color: #5bc0de; } .label-info[href]:hover, .label-info[href]:focus { background-color: #31b0d5; } .label-warning { background-color: #f0ad4e; } .label-warning[href]:hover, .label-warning[href]:focus { background-color: #ec971f; } .label-danger { background-color: #d9534f; } .label-danger[href]:hover, .label-danger[href]:focus { background-color: #c9302c; } .badge { display: inline-block; min-width: 10px; padding: 3px 7px; font-size: 12px; font-weight: bold; line-height: 1; color: #fff; text-align: center; white-space: nowrap; vertical-align: baseline; background-color: #777; border-radius: 10px; } .badge:empty { display: none; } .btn .badge { position: relative; top: -1px; } .btn-xs .badge { top: 0; padding: 1px 5px; } a.badge:hover, a.badge:focus { color: #fff; text-decoration: none; cursor: pointer; } .list-group-item.active > .badge, .nav-pills > .active > a > .badge { color: #337ab7; background-color: #fff; } .list-group-item > .badge { float: right; } .list-group-item > .badge + .badge { margin-right: 5px; } .nav-pills > li > a > .badge { margin-left: 3px; } .jumbotron { padding: 30px 15px; margin-bottom: 30px; color: inherit; background-color: #eee; } .jumbotron h1, .jumbotron .h1 { color: inherit; } .jumbotron p { margin-bottom: 15px; font-size: 21px; font-weight: 200; } .jumbotron > hr { border-top-color: #d5d5d5; } .container .jumbotron, .container-fluid .jumbotron { border-radius: 6px; } .jumbotron .container { max-width: 100%; } @media screen and (min-width: 768px) { .jumbotron { padding: 48px 0; } .container .jumbotron, .container-fluid .jumbotron { padding-right: 60px; padding-left: 60px; } .jumbotron h1, .jumbotron .h1 { font-size: 63px; } } .thumbnail { display: block; padding: 4px; margin-bottom: 20px; line-height: 1.42857143; background-color: #fff; border: 1px solid #ddd; border-radius: 4px; -webkit-transition: border .2s ease-in-out; -o-transition: border .2s ease-in-out; transition: border .2s ease-in-out; } .thumbnail > img, .thumbnail a > img { margin-right: auto; margin-left: auto; } a.thumbnail:hover, a.thumbnail:focus, a.thumbnail.active { border-color: #337ab7; } .thumbnail .caption { padding: 9px; color: #333; } .alert { padding: 15px; margin-bottom: 20px; border: 1px solid transparent; border-radius: 4px; } .alert h4 { margin-top: 0; color: inherit; } .alert .alert-link { font-weight: bold; } .alert > p, .alert > ul { margin-bottom: 0; } .alert > p + p { margin-top: 5px; } .alert-dismissable, .alert-dismissible { padding-right: 35px; } .alert-dismissable .close, .alert-dismissible .close { position: relative; top: -2px; right: -21px; color: inherit; } .alert-success { color: #3c763d; background-color: #dff0d8; border-color: #d6e9c6; } .alert-success hr { border-top-color: #c9e2b3; } .alert-success .alert-link { color: #2b542c; } .alert-info { color: #31708f; background-color: #d9edf7; border-color: #bce8f1; } .alert-info hr { border-top-color: #a6e1ec; } .alert-info .alert-link { color: #245269; } .alert-warning { color: #8a6d3b; background-color: #fcf8e3; border-color: #faebcc; } .alert-warning hr { border-top-color: #f7e1b5; } .alert-warning .alert-link { color: #66512c; } .alert-danger { color: #a94442; background-color: #f2dede; border-color: #ebccd1; } .alert-danger hr { border-top-color: #e4b9c0; } .alert-danger .alert-link { color: #843534; } @-webkit-keyframes progress-bar-stripes { from { background-position: 40px 0; } to { background-position: 0 0; } } @-o-keyframes progress-bar-stripes { from { background-position: 40px 0; } to { background-position: 0 0; } } @keyframes progress-bar-stripes { from { background-position: 40px 0; } to { background-position: 0 0; } } .progress { height: 20px; margin-bottom: 20px; overflow: hidden; background-color: #f5f5f5; border-radius: 4px; -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, .1); box-shadow: inset 0 1px 2px rgba(0, 0, 0, .1); } .progress-bar { float: left; width: 0; height: 100%; font-size: 12px; line-height: 20px; color: #fff; text-align: center; background-color: #337ab7; -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .15); box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .15); -webkit-transition: width .6s ease; -o-transition: width .6s ease; transition: width .6s ease; } .progress-striped .progress-bar, .progress-bar-striped { background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); -webkit-background-size: 40px 40px; background-size: 40px 40px; } .progress.active .progress-bar, .progress-bar.active { -webkit-animation: progress-bar-stripes 2s linear infinite; -o-animation: progress-bar-stripes 2s linear infinite; animation: progress-bar-stripes 2s linear infinite; } .progress-bar-success { background-color: #5cb85c; } .progress-striped .progress-bar-success { background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); } .progress-bar-info { background-color: #5bc0de; } .progress-striped .progress-bar-info { background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); } .progress-bar-warning { background-color: #f0ad4e; } .progress-striped .progress-bar-warning { background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); } .progress-bar-danger { background-color: #d9534f; } .progress-striped .progress-bar-danger { background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); } .media { margin-top: 15px; } .media:first-child { margin-top: 0; } .media-right, .media > .pull-right { padding-left: 10px; } .media-left, .media > .pull-left { padding-right: 10px; } .media-left, .media-right, .media-body { display: table-cell; vertical-align: top; } .media-middle { vertical-align: middle; } .media-bottom { vertical-align: bottom; } .media-heading { margin-top: 0; margin-bottom: 5px; } .media-list { padding-left: 0; list-style: none; } .list-group { padding-left: 0; margin-bottom: 20px; } .list-group-item { position: relative; display: block; padding: 10px 15px; margin-bottom: -1px; background-color: #fff; border: 1px solid #ddd; } .list-group-item:first-child { border-top-left-radius: 4px; border-top-right-radius: 4px; } .list-group-item:last-child { margin-bottom: 0; border-bottom-right-radius: 4px; border-bottom-left-radius: 4px; } a.list-group-item { color: #555; } a.list-group-item .list-group-item-heading { color: #333; } a.list-group-item:hover, a.list-group-item:focus { color: #555; text-decoration: none; background-color: #f5f5f5; } .list-group-item.disabled, .list-group-item.disabled:hover, .list-group-item.disabled:focus { color: #777; cursor: not-allowed; background-color: #eee; } .list-group-item.disabled .list-group-item-heading, .list-group-item.disabled:hover .list-group-item-heading, .list-group-item.disabled:focus .list-group-item-heading { color: inherit; } .list-group-item.disabled .list-group-item-text, .list-group-item.disabled:hover .list-group-item-text, .list-group-item.disabled:focus .list-group-item-text { color: #777; } .list-group-item.active, .list-group-item.active:hover, .list-group-item.active:focus { z-index: 2; color: #fff; background-color: #337ab7; border-color: #337ab7; } .list-group-item.active .list-group-item-heading, .list-group-item.active:hover .list-group-item-heading, .list-group-item.active:focus .list-group-item-heading, .list-group-item.active .list-group-item-heading > small, .list-group-item.active:hover .list-group-item-heading > small, .list-group-item.active:focus .list-group-item-heading > small, .list-group-item.active .list-group-item-heading > .small, .list-group-item.active:hover .list-group-item-heading > .small, .list-group-item.active:focus .list-group-item-heading > .small { color: inherit; } .list-group-item.active .list-group-item-text, .list-group-item.active:hover .list-group-item-text, .list-group-item.active:focus .list-group-item-text { color: #c7ddef; } .list-group-item-success { color: #3c763d; background-color: #dff0d8; } a.list-group-item-success { color: #3c763d; } a.list-group-item-success .list-group-item-heading { color: inherit; } a.list-group-item-success:hover, a.list-group-item-success:focus { color: #3c763d; background-color: #d0e9c6; } a.list-group-item-success.active, a.list-group-item-success.active:hover, a.list-group-item-success.active:focus { color: #fff; background-color: #3c763d; border-color: #3c763d; } .list-group-item-info { color: #31708f; background-color: #d9edf7; } a.list-group-item-info { color: #31708f; } a.list-group-item-info .list-group-item-heading { color: inherit; } a.list-group-item-info:hover, a.list-group-item-info:focus { color: #31708f; background-color: #c4e3f3; } a.list-group-item-info.active, a.list-group-item-info.active:hover, a.list-group-item-info.active:focus { color: #fff; background-color: #31708f; border-color: #31708f; } .list-group-item-warning { color: #8a6d3b; background-color: #fcf8e3; } a.list-group-item-warning { color: #8a6d3b; } a.list-group-item-warning .list-group-item-heading { color: inherit; } a.list-group-item-warning:hover, a.list-group-item-warning:focus { color: #8a6d3b; background-color: #faf2cc; } a.list-group-item-warning.active, a.list-group-item-warning.active:hover, a.list-group-item-warning.active:focus { color: #fff; background-color: #8a6d3b; border-color: #8a6d3b; } .list-group-item-danger { color: #a94442; background-color: #f2dede; } a.list-group-item-danger { color: #a94442; } a.list-group-item-danger .list-group-item-heading { color: inherit; } a.list-group-item-danger:hover, a.list-group-item-danger:focus { color: #a94442; background-color: #ebcccc; } a.list-group-item-danger.active, a.list-group-item-danger.active:hover, a.list-group-item-danger.active:focus { color: #fff; background-color: #a94442; border-color: #a94442; } .list-group-item-heading { margin-top: 0; margin-bottom: 5px; } .list-group-item-text { margin-bottom: 0; line-height: 1.3; } .panel { margin-bottom: 20px; background-color: #fff; border: 1px solid transparent; border-radius: 4px; -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, .05); box-shadow: 0 1px 1px rgba(0, 0, 0, .05); } .panel-body { padding: 15px; } .panel-heading { padding: 10px 15px; border-bottom: 1px solid transparent; border-top-left-radius: 3px; border-top-right-radius: 3px; } .panel-heading > .dropdown .dropdown-toggle { color: inherit; } .panel-title { margin-top: 0; margin-bottom: 0; font-size: 16px; color: inherit; } .panel-title > a { color: inherit; } .panel-footer { padding: 10px 15px; background-color: #f5f5f5; border-top: 1px solid #ddd; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px; } .panel > .list-group, .panel > .panel-collapse > .list-group { margin-bottom: 0; } .panel > .list-group .list-group-item, .panel > .panel-collapse > .list-group .list-group-item { border-width: 1px 0; border-radius: 0; } .panel > .list-group:first-child .list-group-item:first-child, .panel > .panel-collapse > .list-group:first-child .list-group-item:first-child { border-top: 0; border-top-left-radius: 3px; border-top-right-radius: 3px; } .panel > .list-group:last-child .list-group-item:last-child, .panel > .panel-collapse > .list-group:last-child .list-group-item:last-child { border-bottom: 0; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px; } .panel-heading + .list-group .list-group-item:first-child { border-top-width: 0; } .list-group + .panel-footer { border-top-width: 0; } .panel > .table, .panel > .table-responsive > .table, .panel > .panel-collapse > .table { margin-bottom: 0; } .panel > .table caption, .panel > .table-responsive > .table caption, .panel > .panel-collapse > .table caption { padding-right: 15px; padding-left: 15px; } .panel > .table:first-child, .panel > .table-responsive:first-child > .table:first-child { border-top-left-radius: 3px; border-top-right-radius: 3px; } .panel > .table:first-child > thead:first-child > tr:first-child, .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child, .panel > .table:first-child > tbody:first-child > tr:first-child, .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child { border-top-left-radius: 3px; border-top-right-radius: 3px; } .panel > .table:first-child > thead:first-child > tr:first-child td:first-child, .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child, .panel > .table:first-child > tbody:first-child > tr:first-child td:first-child, .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child, .panel > .table:first-child > thead:first-child > tr:first-child th:first-child, .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child, .panel > .table:first-child > tbody:first-child > tr:first-child th:first-child, .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child { border-top-left-radius: 3px; } .panel > .table:first-child > thead:first-child > tr:first-child td:last-child, .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child, .panel > .table:first-child > tbody:first-child > tr:first-child td:last-child, .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child, .panel > .table:first-child > thead:first-child > tr:first-child th:last-child, .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child, .panel > .table:first-child > tbody:first-child > tr:first-child th:last-child, .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child { border-top-right-radius: 3px; } .panel > .table:last-child, .panel > .table-responsive:last-child > .table:last-child { border-bottom-right-radius: 3px; border-bottom-left-radius: 3px; } .panel > .table:last-child > tbody:last-child > tr:last-child, .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child, .panel > .table:last-child > tfoot:last-child > tr:last-child, .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child { border-bottom-right-radius: 3px; border-bottom-left-radius: 3px; } .panel > .table:last-child > tbody:last-child > tr:last-child td:first-child, .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child, .panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child, .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child, .panel > .table:last-child > tbody:last-child > tr:last-child th:first-child, .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child, .panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child, .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child { border-bottom-left-radius: 3px; } .panel > .table:last-child > tbody:last-child > tr:last-child td:last-child, .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child, .panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child, .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child, .panel > .table:last-child > tbody:last-child > tr:last-child th:last-child, .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child, .panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child, .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child { border-bottom-right-radius: 3px; } .panel > .panel-body + .table, .panel > .panel-body + .table-responsive, .panel > .table + .panel-body, .panel > .table-responsive + .panel-body { border-top: 1px solid #ddd; } .panel > .table > tbody:first-child > tr:first-child th, .panel > .table > tbody:first-child > tr:first-child td { border-top: 0; } .panel > .table-bordered, .panel > .table-responsive > .table-bordered { border: 0; } .panel > .table-bordered > thead > tr > th:first-child, .panel > .table-responsive > .table-bordered > thead > tr > th:first-child, .panel > .table-bordered > tbody > tr > th:first-child, .panel > .table-responsive > .table-bordered > tbody > tr > th:first-child, .panel > .table-bordered > tfoot > tr > th:first-child, .panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child, .panel > .table-bordered > thead > tr > td:first-child, .panel > .table-responsive > .table-bordered > thead > tr > td:first-child, .panel > .table-bordered > tbody > tr > td:first-child, .panel > .table-responsive > .table-bordered > tbody > tr > td:first-child, .panel > .table-bordered > tfoot > tr > td:first-child, .panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child { border-left: 0; } .panel > .table-bordered > thead > tr > th:last-child, .panel > .table-responsive > .table-bordered > thead > tr > th:last-child, .panel > .table-bordered > tbody > tr > th:last-child, .panel > .table-responsive > .table-bordered > tbody > tr > th:last-child, .panel > .table-bordered > tfoot > tr > th:last-child, .panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child, .panel > .table-bordered > thead > tr > td:last-child, .panel > .table-responsive > .table-bordered > thead > tr > td:last-child, .panel > .table-bordered > tbody > tr > td:last-child, .panel > .table-responsive > .table-bordered > tbody > tr > td:last-child, .panel > .table-bordered > tfoot > tr > td:last-child, .panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child { border-right: 0; } .panel > .table-bordered > thead > tr:first-child > td, .panel > .table-responsive > .table-bordered > thead > tr:first-child > td, .panel > .table-bordered > tbody > tr:first-child > td, .panel > .table-responsive > .table-bordered > tbody > tr:first-child > td, .panel > .table-bordered > thead > tr:first-child > th, .panel > .table-responsive > .table-bordered > thead > tr:first-child > th, .panel > .table-bordered > tbody > tr:first-child > th, .panel > .table-responsive > .table-bordered > tbody > tr:first-child > th { border-bottom: 0; } .panel > .table-bordered > tbody > tr:last-child > td, .panel > .table-responsive > .table-bordered > tbody > tr:last-child > td, .panel > .table-bordered > tfoot > tr:last-child > td, .panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td, .panel > .table-bordered > tbody > tr:last-child > th, .panel > .table-responsive > .table-bordered > tbody > tr:last-child > th, .panel > .table-bordered > tfoot > tr:last-child > th, .panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th { border-bottom: 0; } .panel > .table-responsive { margin-bottom: 0; border: 0; } .panel-group { margin-bottom: 20px; } .panel-group .panel { margin-bottom: 0; border-radius: 4px; } .panel-group .panel + .panel { margin-top: 5px; } .panel-group .panel-heading { border-bottom: 0; } .panel-group .panel-heading + .panel-collapse > .panel-body, .panel-group .panel-heading + .panel-collapse > .list-group { border-top: 1px solid #ddd; } .panel-group .panel-footer { border-top: 0; } .panel-group .panel-footer + .panel-collapse .panel-body { border-bottom: 1px solid #ddd; } .panel-default { border-color: #ddd; } .panel-default > .panel-heading { color: #333; background-color: #f5f5f5; border-color: #ddd; } .panel-default > .panel-heading + .panel-collapse > .panel-body { border-top-color: #ddd; } .panel-default > .panel-heading .badge { color: #f5f5f5; background-color: #333; } .panel-default > .panel-footer + .panel-collapse > .panel-body { border-bottom-color: #ddd; } .panel-primary { border-color: #337ab7; } .panel-primary > .panel-heading { color: #fff; background-color: #337ab7; border-color: #337ab7; } .panel-primary > .panel-heading + .panel-collapse > .panel-body { border-top-color: #337ab7; } .panel-primary > .panel-heading .badge { color: #337ab7; background-color: #fff; } .panel-primary > .panel-footer + .panel-collapse > .panel-body { border-bottom-color: #337ab7; } .panel-success { border-color: #d6e9c6; } .panel-success > .panel-heading { color: #3c763d; background-color: #dff0d8; border-color: #d6e9c6; } .panel-success > .panel-heading + .panel-collapse > .panel-body { border-top-color: #d6e9c6; } .panel-success > .panel-heading .badge { color: #dff0d8; background-color: #3c763d; } .panel-success > .panel-footer + .panel-collapse > .panel-body { border-bottom-color: #d6e9c6; } .panel-info { border-color: #bce8f1; } .panel-info > .panel-heading { color: #31708f; background-color: #d9edf7; border-color: #bce8f1; } .panel-info > .panel-heading + .panel-collapse > .panel-body { border-top-color: #bce8f1; } .panel-info > .panel-heading .badge { color: #d9edf7; background-color: #31708f; } .panel-info > .panel-footer + .panel-collapse > .panel-body { border-bottom-color: #bce8f1; } .panel-warning { border-color: #faebcc; } .panel-warning > .panel-heading { color: #8a6d3b; background-color: #fcf8e3; border-color: #faebcc; } .panel-warning > .panel-heading + .panel-collapse > .panel-body { border-top-color: #faebcc; } .panel-warning > .panel-heading .badge { color: #fcf8e3; background-color: #8a6d3b; } .panel-warning > .panel-footer + .panel-collapse > .panel-body { border-bottom-color: #faebcc; } .panel-danger { border-color: #ebccd1; } .panel-danger > .panel-heading { color: #a94442; background-color: #f2dede; border-color: #ebccd1; } .panel-danger > .panel-heading + .panel-collapse > .panel-body { border-top-color: #ebccd1; } .panel-danger > .panel-heading .badge { color: #f2dede; background-color: #a94442; } .panel-danger > .panel-footer + .panel-collapse > .panel-body { border-bottom-color: #ebccd1; } .embed-responsive { position: relative; display: block; height: 0; padding: 0; overflow: hidden; } .embed-responsive .embed-responsive-item, .embed-responsive iframe, .embed-responsive embed, .embed-responsive object, .embed-responsive video { position: absolute; top: 0; bottom: 0; left: 0; width: 100%; height: 100%; border: 0; } .embed-responsive.embed-responsive-16by9 { padding-bottom: 56.25%; } .embed-responsive.embed-responsive-4by3 { padding-bottom: 75%; } .well { min-height: 20px; padding: 19px; margin-bottom: 20px; background-color: #f5f5f5; border: 1px solid #e3e3e3; border-radius: 4px; -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .05); box-shadow: inset 0 1px 1px rgba(0, 0, 0, .05); } .well blockquote { border-color: #ddd; border-color: rgba(0, 0, 0, .15); } .well-lg { padding: 24px; border-radius: 6px; } .well-sm { padding: 9px; border-radius: 3px; } .close { float: right; font-size: 21px; font-weight: bold; line-height: 1; color: #000; text-shadow: 0 1px 0 #fff; filter: alpha(opacity=20); opacity: .2; } .close:hover, .close:focus { color: #000; text-decoration: none; cursor: pointer; filter: alpha(opacity=50); opacity: .5; } button.close { -webkit-appearance: none; padding: 0; cursor: pointer; background: transparent; border: 0; } .modal-open { overflow: hidden; } .modal { position: fixed; top: 0; right: 0; bottom: 0; left: 0; z-index: 1040; display: none; overflow: hidden; -webkit-overflow-scrolling: touch; outline: 0; } .modal.fade .modal-dialog { -webkit-transition: -webkit-transform .3s ease-out; -o-transition: -o-transform .3s ease-out; transition: transform .3s ease-out; -webkit-transform: translate(0, -25%); -ms-transform: translate(0, -25%); -o-transform: translate(0, -25%); transform: translate(0, -25%); } .modal.in .modal-dialog { -webkit-transform: translate(0, 0); -ms-transform: translate(0, 0); -o-transform: translate(0, 0); transform: translate(0, 0); } .modal-open .modal { overflow-x: hidden; overflow-y: auto; } .modal-dialog { position: relative; width: auto; margin: 10px; } .modal-content { position: relative; background-color: #fff; -webkit-background-clip: padding-box; background-clip: padding-box; border: 1px solid #999; border: 1px solid rgba(0, 0, 0, .2); border-radius: 6px; outline: 0; -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, .5); box-shadow: 0 3px 9px rgba(0, 0, 0, .5); } .modal-backdrop { position: absolute; top: 0; right: 0; left: 0; background-color: #000; } .modal-backdrop.fade { filter: alpha(opacity=0); opacity: 0; } .modal-backdrop.in { filter: alpha(opacity=50); opacity: .5; } .modal-header { min-height: 16.42857143px; padding: 15px; border-bottom: 1px solid #e5e5e5; } .modal-header .close { margin-top: -2px; } .modal-title { margin: 0; line-height: 1.42857143; } .modal-body { position: relative; padding: 15px; } .modal-footer { padding: 15px; text-align: right; border-top: 1px solid #e5e5e5; } .modal-footer .btn + .btn { margin-bottom: 0; margin-left: 5px; } .modal-footer .btn-group .btn + .btn { margin-left: -1px; } .modal-footer .btn-block + .btn-block { margin-left: 0; } .modal-scrollbar-measure { position: absolute; top: -9999px; width: 50px; height: 50px; overflow: scroll; } @media (min-width: 768px) { .modal-dialog { width: 600px; margin: 30px auto; } .modal-content { -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, .5); box-shadow: 0 5px 15px rgba(0, 0, 0, .5); } .modal-sm { width: 300px; } } @media (min-width: 992px) { .modal-lg { width: 900px; } } .tooltip { position: absolute; z-index: 1070; display: block; font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 12px; font-weight: normal; line-height: 1.4; visibility: visible; filter: alpha(opacity=0); opacity: 0; } .tooltip.in { filter: alpha(opacity=90); opacity: .9; } .tooltip.top { padding: 5px 0; margin-top: -3px; } .tooltip.right { padding: 0 5px; margin-left: 3px; } .tooltip.bottom { padding: 5px 0; margin-top: 3px; } .tooltip.left { padding: 0 5px; margin-left: -3px; } .tooltip-inner { max-width: 200px; padding: 3px 8px; color: #fff; text-align: center; text-decoration: none; background-color: #000; border-radius: 4px; } .tooltip-arrow { position: absolute; width: 0; height: 0; border-color: transparent; border-style: solid; } .tooltip.top .tooltip-arrow { bottom: 0; left: 50%; margin-left: -5px; border-width: 5px 5px 0; border-top-color: #000; } .tooltip.top-left .tooltip-arrow { right: 5px; bottom: 0; margin-bottom: -5px; border-width: 5px 5px 0; border-top-color: #000; } .tooltip.top-right .tooltip-arrow { bottom: 0; left: 5px; margin-bottom: -5px; border-width: 5px 5px 0; border-top-color: #000; } .tooltip.right .tooltip-arrow { top: 50%; left: 0; margin-top: -5px; border-width: 5px 5px 5px 0; border-right-color: #000; } .tooltip.left .tooltip-arrow { top: 50%; right: 0; margin-top: -5px; border-width: 5px 0 5px 5px; border-left-color: #000; } .tooltip.bottom .tooltip-arrow { top: 0; left: 50%; margin-left: -5px; border-width: 0 5px 5px; border-bottom-color: #000; } .tooltip.bottom-left .tooltip-arrow { top: 0; right: 5px; margin-top: -5px; border-width: 0 5px 5px; border-bottom-color: #000; } .tooltip.bottom-right .tooltip-arrow { top: 0; left: 5px; margin-top: -5px; border-width: 0 5px 5px; border-bottom-color: #000; } .popover { position: absolute; top: 0; left: 0; z-index: 1060; display: none; max-width: 276px; padding: 1px; font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 14px; font-weight: normal; line-height: 1.42857143; text-align: left; white-space: normal; background-color: #fff; -webkit-background-clip: padding-box; background-clip: padding-box; border: 1px solid #ccc; border: 1px solid rgba(0, 0, 0, .2); border-radius: 6px; -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, .2); box-shadow: 0 5px 10px rgba(0, 0, 0, .2); } .popover.top { margin-top: -10px; } .popover.right { margin-left: 10px; } .popover.bottom { margin-top: 10px; } .popover.left { margin-left: -10px; } .popover-title { padding: 8px 14px; margin: 0; font-size: 14px; background-color: #f7f7f7; border-bottom: 1px solid #ebebeb; border-radius: 5px 5px 0 0; } .popover-content { padding: 9px 14px; } .popover > .arrow, .popover > .arrow:after { position: absolute; display: block; width: 0; height: 0; border-color: transparent; border-style: solid; } .popover > .arrow { border-width: 11px; } .popover > .arrow:after { content: ""; border-width: 10px; } .popover.top > .arrow { bottom: -11px; left: 50%; margin-left: -11px; border-top-color: #999; border-top-color: rgba(0, 0, 0, .25); border-bottom-width: 0; } .popover.top > .arrow:after { bottom: 1px; margin-left: -10px; content: " "; border-top-color: #fff; border-bottom-width: 0; } .popover.right > .arrow { top: 50%; left: -11px; margin-top: -11px; border-right-color: #999; border-right-color: rgba(0, 0, 0, .25); border-left-width: 0; } .popover.right > .arrow:after { bottom: -10px; left: 1px; content: " "; border-right-color: #fff; border-left-width: 0; } .popover.bottom > .arrow { top: -11px; left: 50%; margin-left: -11px; border-top-width: 0; border-bottom-color: #999; border-bottom-color: rgba(0, 0, 0, .25); } .popover.bottom > .arrow:after { top: 1px; margin-left: -10px; content: " "; border-top-width: 0; border-bottom-color: #fff; } .popover.left > .arrow { top: 50%; right: -11px; margin-top: -11px; border-right-width: 0; border-left-color: #999; border-left-color: rgba(0, 0, 0, .25); } .popover.left > .arrow:after { right: 1px; bottom: -10px; content: " "; border-right-width: 0; border-left-color: #fff; } .carousel { position: relative; } .carousel-inner { position: relative; width: 100%; overflow: hidden; } .carousel-inner > .item { position: relative; display: none; -webkit-transition: .6s ease-in-out left; -o-transition: .6s ease-in-out left; transition: .6s ease-in-out left; } .carousel-inner > .item > img, .carousel-inner > .item > a > img { line-height: 1; } @media all and (transform-3d), (-webkit-transform-3d) { .carousel-inner > .item { -webkit-transition: -webkit-transform .6s ease-in-out; -o-transition: -o-transform .6s ease-in-out; transition: transform .6s ease-in-out; -webkit-backface-visibility: hidden; backface-visibility: hidden; -webkit-perspective: 1000; perspective: 1000; } .carousel-inner > .item.next, .carousel-inner > .item.active.right { left: 0; -webkit-transform: translate3d(100%, 0, 0); transform: translate3d(100%, 0, 0); } .carousel-inner > .item.prev, .carousel-inner > .item.active.left { left: 0; -webkit-transform: translate3d(-100%, 0, 0); transform: translate3d(-100%, 0, 0); } .carousel-inner > .item.next.left, .carousel-inner > .item.prev.right, .carousel-inner > .item.active { left: 0; -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); } } .carousel-inner > .active, .carousel-inner > .next, .carousel-inner > .prev { display: block; } .carousel-inner > .active { left: 0; } .carousel-inner > .next, .carousel-inner > .prev { position: absolute; top: 0; width: 100%; } .carousel-inner > .next { left: 100%; } .carousel-inner > .prev { left: -100%; } .carousel-inner > .next.left, .carousel-inner > .prev.right { left: 0; } .carousel-inner > .active.left { left: -100%; } .carousel-inner > .active.right { left: 100%; } .carousel-control { position: absolute; top: 0; bottom: 0; left: 0; width: 15%; font-size: 20px; color: #fff; text-align: center; text-shadow: 0 1px 2px rgba(0, 0, 0, .6); filter: alpha(opacity=50); opacity: .5; } .carousel-control.left { background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, .0001) 100%); background-image: -o-linear-gradient(left, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, .0001) 100%); background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, .5)), to(rgba(0, 0, 0, .0001))); background-image: linear-gradient(to right, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, .0001) 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1); background-repeat: repeat-x; } .carousel-control.right { right: 0; left: auto; background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, .0001) 0%, rgba(0, 0, 0, .5) 100%); background-image: -o-linear-gradient(left, rgba(0, 0, 0, .0001) 0%, rgba(0, 0, 0, .5) 100%); background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, .0001)), to(rgba(0, 0, 0, .5))); background-image: linear-gradient(to right, rgba(0, 0, 0, .0001) 0%, rgba(0, 0, 0, .5) 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1); background-repeat: repeat-x; } .carousel-control:hover, .carousel-control:focus { color: #fff; text-decoration: none; filter: alpha(opacity=90); outline: 0; opacity: .9; } .carousel-control .icon-prev, .carousel-control .icon-next, .carousel-control .glyphicon-chevron-left, .carousel-control .glyphicon-chevron-right { position: absolute; top: 50%; z-index: 5; display: inline-block; } .carousel-control .icon-prev, .carousel-control .glyphicon-chevron-left { left: 50%; margin-left: -10px; } .carousel-control .icon-next, .carousel-control .glyphicon-chevron-right { right: 50%; margin-right: -10px; } .carousel-control .icon-prev, .carousel-control .icon-next { width: 20px; height: 20px; margin-top: -10px; font-family: serif; } .carousel-control .icon-prev:before { content: '\2039'; } .carousel-control .icon-next:before { content: '\203a'; } .carousel-indicators { position: absolute; bottom: 10px; left: 50%; z-index: 15; width: 60%; padding-left: 0; margin-left: -30%; text-align: center; list-style: none; } .carousel-indicators li { display: inline-block; width: 10px; height: 10px; margin: 1px; text-indent: -999px; cursor: pointer; background-color: #000 \9; background-color: rgba(0, 0, 0, 0); border: 1px solid #fff; border-radius: 10px; } .carousel-indicators .active { width: 12px; height: 12px; margin: 0; background-color: #fff; } .carousel-caption { position: absolute; right: 15%; bottom: 20px; left: 15%; z-index: 10; padding-top: 20px; padding-bottom: 20px; color: #fff; text-align: center; text-shadow: 0 1px 2px rgba(0, 0, 0, .6); } .carousel-caption .btn { text-shadow: none; } @media screen and (min-width: 768px) { .carousel-control .glyphicon-chevron-left, .carousel-control .glyphicon-chevron-right, .carousel-control .icon-prev, .carousel-control .icon-next { width: 30px; height: 30px; margin-top: -15px; font-size: 30px; } .carousel-control .glyphicon-chevron-left, .carousel-control .icon-prev { margin-left: -15px; } .carousel-control .glyphicon-chevron-right, .carousel-control .icon-next { margin-right: -15px; } .carousel-caption { right: 20%; left: 20%; padding-bottom: 30px; } .carousel-indicators { bottom: 20px; } } .clearfix:before, .clearfix:after, .dl-horizontal dd:before, .dl-horizontal dd:after, .container:before, .container:after, .container-fluid:before, .container-fluid:after, .row:before, .row:after, .form-horizontal .form-group:before, .form-horizontal .form-group:after, .btn-toolbar:before, .btn-toolbar:after, .btn-group-vertical > .btn-group:before, .btn-group-vertical > .btn-group:after, .nav:before, .nav:after, .navbar:before, .navbar:after, .navbar-header:before, .navbar-header:after, .navbar-collapse:before, .navbar-collapse:after, .pager:before, .pager:after, .panel-body:before, .panel-body:after, .modal-footer:before, .modal-footer:after { display: table; content: " "; } .clearfix:after, .dl-horizontal dd:after, .container:after, .container-fluid:after, .row:after, .form-horizontal .form-group:after, .btn-toolbar:after, .btn-group-vertical > .btn-group:after, .nav:after, .navbar:after, .navbar-header:after, .navbar-collapse:after, .pager:after, .panel-body:after, .modal-footer:after { clear: both; } .center-block { display: block; margin-right: auto; margin-left: auto; } .pull-right { float: right !important; } .pull-left { float: left !important; } .hide { display: none !important; } .show { display: block !important; } .invisible { visibility: hidden; } .text-hide { font: 0/0 a; color: transparent; text-shadow: none; background-color: transparent; border: 0; } .hidden { display: none !important; visibility: hidden !important; } .affix { position: fixed; } @-ms-viewport { width: device-width; } .visible-xs, .visible-sm, .visible-md, .visible-lg { display: none !important; } .visible-xs-block, .visible-xs-inline, .visible-xs-inline-block, .visible-sm-block, .visible-sm-inline, .visible-sm-inline-block, .visible-md-block, .visible-md-inline, .visible-md-inline-block, .visible-lg-block, .visible-lg-inline, .visible-lg-inline-block { display: none !important; } @media (max-width: 767px) { .visible-xs { display: block !important; } table.visible-xs { display: table; } tr.visible-xs { display: table-row !important; } th.visible-xs, td.visible-xs { display: table-cell !important; } } @media (max-width: 767px) { .visible-xs-block { display: block !important; } } @media (max-width: 767px) { .visible-xs-inline { display: inline !important; } } @media (max-width: 767px) { .visible-xs-inline-block { display: inline-block !important; } } @media (min-width: 768px) and (max-width: 991px) { .visible-sm { display: block !important; } table.visible-sm { display: table; } tr.visible-sm { display: table-row !important; } th.visible-sm, td.visible-sm { display: table-cell !important; } } @media (min-width: 768px) and (max-width: 991px) { .visible-sm-block { display: block !important; } } @media (min-width: 768px) and (max-width: 991px) { .visible-sm-inline { display: inline !important; } } @media (min-width: 768px) and (max-width: 991px) { .visible-sm-inline-block { display: inline-block !important; } } @media (min-width: 992px) and (max-width: 1199px) { .visible-md { display: block !important; } table.visible-md { display: table; } tr.visible-md { display: table-row !important; } th.visible-md, td.visible-md { display: table-cell !important; } } @media (min-width: 992px) and (max-width: 1199px) { .visible-md-block { display: block !important; } } @media (min-width: 992px) and (max-width: 1199px) { .visible-md-inline { display: inline !important; } } @media (min-width: 992px) and (max-width: 1199px) { .visible-md-inline-block { display: inline-block !important; } } @media (min-width: 1200px) { .visible-lg { display: block !important; } table.visible-lg { display: table; } tr.visible-lg { display: table-row !important; } th.visible-lg, td.visible-lg { display: table-cell !important; } } @media (min-width: 1200px) { .visible-lg-block { display: block !important; } } @media (min-width: 1200px) { .visible-lg-inline { display: inline !important; } } @media (min-width: 1200px) { .visible-lg-inline-block { display: inline-block !important; } } @media (max-width: 767px) { .hidden-xs { display: none !important; } } @media (min-width: 768px) and (max-width: 991px) { .hidden-sm { display: none !important; } } @media (min-width: 992px) and (max-width: 1199px) { .hidden-md { display: none !important; } } @media (min-width: 1200px) { .hidden-lg { display: none !important; } } .visible-print { display: none !important; } @media print { .visible-print { display: block !important; } table.visible-print { display: table; } tr.visible-print { display: table-row !important; } th.visible-print, td.visible-print { display: table-cell !important; } } .visible-print-block { display: none !important; } @media print { .visible-print-block { display: block !important; } } .visible-print-inline { display: none !important; } @media print { .visible-print-inline { display: inline !important; } } .visible-print-inline-block { display: none !important; } @media print { .visible-print-inline-block { display: inline-block !important; } } @media print { .hidden-print { display: none !important; } } /*# sourceMappingURL=bootstrap.css.map */ phamm-0.6.5/public/css/bootstrap.min.css0000644000175300017530000033553212643155515016176 0ustar phamm/*! * Bootstrap v3.3.1 (http://getbootstrap.com) * Copyright 2011-2014 Twitter, Inc. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) *//*! normalize.css v3.0.2 | MIT License | git.io/normalize */html{font-family:sans-serif;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}h1{margin:.67em 0;font-size:2em}mark{color:#000;background:#ff0}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{height:0;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{margin:0;font:inherit;color:inherit}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}input{line-height:normal}input[type=checkbox],input[type=radio]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;-webkit-appearance:textfield}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{padding:.35em .625em .75em;margin:0 2px;border:1px solid silver}legend{padding:0;border:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-spacing:0;border-collapse:collapse}td,th{padding:0}/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */@media print{*,:before,:after{color:#000!important;text-shadow:none!important;background:transparent!important;-webkit-box-shadow:none!important;box-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}a[href^="#"]:after,a[href^="javascript:"]:after{content:""}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100%!important}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}select{background:#fff!important}.navbar{display:none}.btn>.caret,.dropup>.btn>.caret{border-top-color:#000!important}.label{border:1px solid #000}.table{border-collapse:collapse!important}.table td,.table th{background-color:#fff!important}.table-bordered th,.table-bordered td{border:1px solid #ddd!important}}@font-face{font-family:'Glyphicons Halflings';src:url(../fonts/glyphicons-halflings-regular.eot);src:url(../fonts/glyphicons-halflings-regular.eot?#iefix) format('embedded-opentype'),url(../fonts/glyphicons-halflings-regular.woff) format('woff'),url(../fonts/glyphicons-halflings-regular.ttf) format('truetype'),url(../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular) format('svg')}.glyphicon{position:relative;top:1px;display:inline-block;font-family:'Glyphicons Halflings';font-style:normal;font-weight:400;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.glyphicon-asterisk:before{content:"\2a"}.glyphicon-plus:before{content:"\2b"}.glyphicon-euro:before,.glyphicon-eur:before{content:"\20ac"}.glyphicon-minus:before{content:"\2212"}.glyphicon-cloud:before{content:"\2601"}.glyphicon-envelope:before{content:"\2709"}.glyphicon-pencil:before{content:"\270f"}.glyphicon-glass:before{content:"\e001"}.glyphicon-music:before{content:"\e002"}.glyphicon-search:before{content:"\e003"}.glyphicon-heart:before{content:"\e005"}.glyphicon-star:before{content:"\e006"}.glyphicon-star-empty:before{content:"\e007"}.glyphicon-user:before{content:"\e008"}.glyphicon-film:before{content:"\e009"}.glyphicon-th-large:before{content:"\e010"}.glyphicon-th:before{content:"\e011"}.glyphicon-th-list:before{content:"\e012"}.glyphicon-ok:before{content:"\e013"}.glyphicon-remove:before{content:"\e014"}.glyphicon-zoom-in:before{content:"\e015"}.glyphicon-zoom-out:before{content:"\e016"}.glyphicon-off:before{content:"\e017"}.glyphicon-signal:before{content:"\e018"}.glyphicon-cog:before{content:"\e019"}.glyphicon-trash:before{content:"\e020"}.glyphicon-home:before{content:"\e021"}.glyphicon-file:before{content:"\e022"}.glyphicon-time:before{content:"\e023"}.glyphicon-road:before{content:"\e024"}.glyphicon-download-alt:before{content:"\e025"}.glyphicon-download:before{content:"\e026"}.glyphicon-upload:before{content:"\e027"}.glyphicon-inbox:before{content:"\e028"}.glyphicon-play-circle:before{content:"\e029"}.glyphicon-repeat:before{content:"\e030"}.glyphicon-refresh:before{content:"\e031"}.glyphicon-list-alt:before{content:"\e032"}.glyphicon-lock:before{content:"\e033"}.glyphicon-flag:before{content:"\e034"}.glyphicon-headphones:before{content:"\e035"}.glyphicon-volume-off:before{content:"\e036"}.glyphicon-volume-down:before{content:"\e037"}.glyphicon-volume-up:before{content:"\e038"}.glyphicon-qrcode:before{content:"\e039"}.glyphicon-barcode:before{content:"\e040"}.glyphicon-tag:before{content:"\e041"}.glyphicon-tags:before{content:"\e042"}.glyphicon-book:before{content:"\e043"}.glyphicon-bookmark:before{content:"\e044"}.glyphicon-print:before{content:"\e045"}.glyphicon-camera:before{content:"\e046"}.glyphicon-font:before{content:"\e047"}.glyphicon-bold:before{content:"\e048"}.glyphicon-italic:before{content:"\e049"}.glyphicon-text-height:before{content:"\e050"}.glyphicon-text-width:before{content:"\e051"}.glyphicon-align-left:before{content:"\e052"}.glyphicon-align-center:before{content:"\e053"}.glyphicon-align-right:before{content:"\e054"}.glyphicon-align-justify:before{content:"\e055"}.glyphicon-list:before{content:"\e056"}.glyphicon-indent-left:before{content:"\e057"}.glyphicon-indent-right:before{content:"\e058"}.glyphicon-facetime-video:before{content:"\e059"}.glyphicon-picture:before{content:"\e060"}.glyphicon-map-marker:before{content:"\e062"}.glyphicon-adjust:before{content:"\e063"}.glyphicon-tint:before{content:"\e064"}.glyphicon-edit:before{content:"\e065"}.glyphicon-share:before{content:"\e066"}.glyphicon-check:before{content:"\e067"}.glyphicon-move:before{content:"\e068"}.glyphicon-step-backward:before{content:"\e069"}.glyphicon-fast-backward:before{content:"\e070"}.glyphicon-backward:before{content:"\e071"}.glyphicon-play:before{content:"\e072"}.glyphicon-pause:before{content:"\e073"}.glyphicon-stop:before{content:"\e074"}.glyphicon-forward:before{content:"\e075"}.glyphicon-fast-forward:before{content:"\e076"}.glyphicon-step-forward:before{content:"\e077"}.glyphicon-eject:before{content:"\e078"}.glyphicon-chevron-left:before{content:"\e079"}.glyphicon-chevron-right:before{content:"\e080"}.glyphicon-plus-sign:before{content:"\e081"}.glyphicon-minus-sign:before{content:"\e082"}.glyphicon-remove-sign:before{content:"\e083"}.glyphicon-ok-sign:before{content:"\e084"}.glyphicon-question-sign:before{content:"\e085"}.glyphicon-info-sign:before{content:"\e086"}.glyphicon-screenshot:before{content:"\e087"}.glyphicon-remove-circle:before{content:"\e088"}.glyphicon-ok-circle:before{content:"\e089"}.glyphicon-ban-circle:before{content:"\e090"}.glyphicon-arrow-left:before{content:"\e091"}.glyphicon-arrow-right:before{content:"\e092"}.glyphicon-arrow-up:before{content:"\e093"}.glyphicon-arrow-down:before{content:"\e094"}.glyphicon-share-alt:before{content:"\e095"}.glyphicon-resize-full:before{content:"\e096"}.glyphicon-resize-small:before{content:"\e097"}.glyphicon-exclamation-sign:before{content:"\e101"}.glyphicon-gift:before{content:"\e102"}.glyphicon-leaf:before{content:"\e103"}.glyphicon-fire:before{content:"\e104"}.glyphicon-eye-open:before{content:"\e105"}.glyphicon-eye-close:before{content:"\e106"}.glyphicon-warning-sign:before{content:"\e107"}.glyphicon-plane:before{content:"\e108"}.glyphicon-calendar:before{content:"\e109"}.glyphicon-random:before{content:"\e110"}.glyphicon-comment:before{content:"\e111"}.glyphicon-magnet:before{content:"\e112"}.glyphicon-chevron-up:before{content:"\e113"}.glyphicon-chevron-down:before{content:"\e114"}.glyphicon-retweet:before{content:"\e115"}.glyphicon-shopping-cart:before{content:"\e116"}.glyphicon-folder-close:before{content:"\e117"}.glyphicon-folder-open:before{content:"\e118"}.glyphicon-resize-vertical:before{content:"\e119"}.glyphicon-resize-horizontal:before{content:"\e120"}.glyphicon-hdd:before{content:"\e121"}.glyphicon-bullhorn:before{content:"\e122"}.glyphicon-bell:before{content:"\e123"}.glyphicon-certificate:before{content:"\e124"}.glyphicon-thumbs-up:before{content:"\e125"}.glyphicon-thumbs-down:before{content:"\e126"}.glyphicon-hand-right:before{content:"\e127"}.glyphicon-hand-left:before{content:"\e128"}.glyphicon-hand-up:before{content:"\e129"}.glyphicon-hand-down:before{content:"\e130"}.glyphicon-circle-arrow-right:before{content:"\e131"}.glyphicon-circle-arrow-left:before{content:"\e132"}.glyphicon-circle-arrow-up:before{content:"\e133"}.glyphicon-circle-arrow-down:before{content:"\e134"}.glyphicon-globe:before{content:"\e135"}.glyphicon-wrench:before{content:"\e136"}.glyphicon-tasks:before{content:"\e137"}.glyphicon-filter:before{content:"\e138"}.glyphicon-briefcase:before{content:"\e139"}.glyphicon-fullscreen:before{content:"\e140"}.glyphicon-dashboard:before{content:"\e141"}.glyphicon-paperclip:before{content:"\e142"}.glyphicon-heart-empty:before{content:"\e143"}.glyphicon-link:before{content:"\e144"}.glyphicon-phone:before{content:"\e145"}.glyphicon-pushpin:before{content:"\e146"}.glyphicon-usd:before{content:"\e148"}.glyphicon-gbp:before{content:"\e149"}.glyphicon-sort:before{content:"\e150"}.glyphicon-sort-by-alphabet:before{content:"\e151"}.glyphicon-sort-by-alphabet-alt:before{content:"\e152"}.glyphicon-sort-by-order:before{content:"\e153"}.glyphicon-sort-by-order-alt:before{content:"\e154"}.glyphicon-sort-by-attributes:before{content:"\e155"}.glyphicon-sort-by-attributes-alt:before{content:"\e156"}.glyphicon-unchecked:before{content:"\e157"}.glyphicon-expand:before{content:"\e158"}.glyphicon-collapse-down:before{content:"\e159"}.glyphicon-collapse-up:before{content:"\e160"}.glyphicon-log-in:before{content:"\e161"}.glyphicon-flash:before{content:"\e162"}.glyphicon-log-out:before{content:"\e163"}.glyphicon-new-window:before{content:"\e164"}.glyphicon-record:before{content:"\e165"}.glyphicon-save:before{content:"\e166"}.glyphicon-open:before{content:"\e167"}.glyphicon-saved:before{content:"\e168"}.glyphicon-import:before{content:"\e169"}.glyphicon-export:before{content:"\e170"}.glyphicon-send:before{content:"\e171"}.glyphicon-floppy-disk:before{content:"\e172"}.glyphicon-floppy-saved:before{content:"\e173"}.glyphicon-floppy-remove:before{content:"\e174"}.glyphicon-floppy-save:before{content:"\e175"}.glyphicon-floppy-open:before{content:"\e176"}.glyphicon-credit-card:before{content:"\e177"}.glyphicon-transfer:before{content:"\e178"}.glyphicon-cutlery:before{content:"\e179"}.glyphicon-header:before{content:"\e180"}.glyphicon-compressed:before{content:"\e181"}.glyphicon-earphone:before{content:"\e182"}.glyphicon-phone-alt:before{content:"\e183"}.glyphicon-tower:before{content:"\e184"}.glyphicon-stats:before{content:"\e185"}.glyphicon-sd-video:before{content:"\e186"}.glyphicon-hd-video:before{content:"\e187"}.glyphicon-subtitles:before{content:"\e188"}.glyphicon-sound-stereo:before{content:"\e189"}.glyphicon-sound-dolby:before{content:"\e190"}.glyphicon-sound-5-1:before{content:"\e191"}.glyphicon-sound-6-1:before{content:"\e192"}.glyphicon-sound-7-1:before{content:"\e193"}.glyphicon-copyright-mark:before{content:"\e194"}.glyphicon-registration-mark:before{content:"\e195"}.glyphicon-cloud-download:before{content:"\e197"}.glyphicon-cloud-upload:before{content:"\e198"}.glyphicon-tree-conifer:before{content:"\e199"}.glyphicon-tree-deciduous:before{content:"\e200"}*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}:before,:after{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html{font-size:10px;-webkit-tap-highlight-color:rgba(0,0,0,0)}body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.42857143;color:#333;background-color:#fff}input,button,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}a{color:#337ab7;text-decoration:none}a:hover,a:focus{color:#23527c;text-decoration:underline}a:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}figure{margin:0}img{vertical-align:middle}.img-responsive,.thumbnail>img,.thumbnail a>img,.carousel-inner>.item>img,.carousel-inner>.item>a>img{display:block;max-width:100%;height:auto}.img-rounded{border-radius:6px}.img-thumbnail{display:inline-block;max-width:100%;height:auto;padding:4px;line-height:1.42857143;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.img-circle{border-radius:50%}hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{font-family:inherit;font-weight:500;line-height:1.1;color:inherit}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small,.h1 small,.h2 small,.h3 small,.h4 small,.h5 small,.h6 small,h1 .small,h2 .small,h3 .small,h4 .small,h5 .small,h6 .small,.h1 .small,.h2 .small,.h3 .small,.h4 .small,.h5 .small,.h6 .small{font-weight:400;line-height:1;color:#777}h1,.h1,h2,.h2,h3,.h3{margin-top:20px;margin-bottom:10px}h1 small,.h1 small,h2 small,.h2 small,h3 small,.h3 small,h1 .small,.h1 .small,h2 .small,.h2 .small,h3 .small,.h3 .small{font-size:65%}h4,.h4,h5,.h5,h6,.h6{margin-top:10px;margin-bottom:10px}h4 small,.h4 small,h5 small,.h5 small,h6 small,.h6 small,h4 .small,.h4 .small,h5 .small,.h5 .small,h6 .small,.h6 .small{font-size:75%}h1,.h1{font-size:36px}h2,.h2{font-size:30px}h3,.h3{font-size:24px}h4,.h4{font-size:18px}h5,.h5{font-size:14px}h6,.h6{font-size:12px}p{margin:0 0 10px}.lead{margin-bottom:20px;font-size:16px;font-weight:300;line-height:1.4}@media (min-width:768px){.lead{font-size:21px}}small,.small{font-size:85%}mark,.mark{padding:.2em;background-color:#fcf8e3}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.text-justify{text-align:justify}.text-nowrap{white-space:nowrap}.text-lowercase{text-transform:lowercase}.text-uppercase{text-transform:uppercase}.text-capitalize{text-transform:capitalize}.text-muted{color:#777}.text-primary{color:#337ab7}a.text-primary:hover{color:#286090}.text-success{color:#3c763d}a.text-success:hover{color:#2b542c}.text-info{color:#31708f}a.text-info:hover{color:#245269}.text-warning{color:#8a6d3b}a.text-warning:hover{color:#66512c}.text-danger{color:#a94442}a.text-danger:hover{color:#843534}.bg-primary{color:#fff;background-color:#337ab7}a.bg-primary:hover{background-color:#286090}.bg-success{background-color:#dff0d8}a.bg-success:hover{background-color:#c1e2b3}.bg-info{background-color:#d9edf7}a.bg-info:hover{background-color:#afd9ee}.bg-warning{background-color:#fcf8e3}a.bg-warning:hover{background-color:#f7ecb5}.bg-danger{background-color:#f2dede}a.bg-danger:hover{background-color:#e4b9b9}.page-header{padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #eee}ul,ol{margin-top:0;margin-bottom:10px}ul ul,ol ul,ul ol,ol ol{margin-bottom:0}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;margin-left:-5px;list-style:none}.list-inline>li{display:inline-block;padding-right:5px;padding-left:5px}dl{margin-top:0;margin-bottom:20px}dt,dd{line-height:1.42857143}dt{font-weight:700}dd{margin-left:0}@media (min-width:768px){.dl-horizontal dt{float:left;width:160px;overflow:hidden;clear:left;text-align:right;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:180px}}abbr[title],abbr[data-original-title]{cursor:help;border-bottom:1px dotted #777}.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:10px 20px;margin:0 0 20px;font-size:17.5px;border-left:5px solid #eee}blockquote p:last-child,blockquote ul:last-child,blockquote ol:last-child{margin-bottom:0}blockquote footer,blockquote small,blockquote .small{display:block;font-size:80%;line-height:1.42857143;color:#777}blockquote footer:before,blockquote small:before,blockquote .small:before{content:'\2014 \00A0'}.blockquote-reverse,blockquote.pull-right{padding-right:15px;padding-left:0;text-align:right;border-right:5px solid #eee;border-left:0}.blockquote-reverse footer:before,blockquote.pull-right footer:before,.blockquote-reverse small:before,blockquote.pull-right small:before,.blockquote-reverse .small:before,blockquote.pull-right .small:before{content:''}.blockquote-reverse footer:after,blockquote.pull-right footer:after,.blockquote-reverse small:after,blockquote.pull-right small:after,.blockquote-reverse .small:after,blockquote.pull-right .small:after{content:'\00A0 \2014'}address{margin-bottom:20px;font-style:normal;line-height:1.42857143}code,kbd,pre,samp{font-family:Menlo,Monaco,Consolas,"Courier New",monospace}code{padding:2px 4px;font-size:90%;color:#c7254e;background-color:#f9f2f4;border-radius:4px}kbd{padding:2px 4px;font-size:90%;color:#fff;background-color:#333;border-radius:3px;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,.25);box-shadow:inset 0 -1px 0 rgba(0,0,0,.25)}kbd kbd{padding:0;font-size:100%;font-weight:700;-webkit-box-shadow:none;box-shadow:none}pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:1.42857143;color:#333;word-break:break-all;word-wrap:break-word;background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px}pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border-radius:0}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:768px){.container{width:750px}}@media (min-width:992px){.container{width:970px}}@media (min-width:1200px){.container{width:1170px}}.container-fluid{padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}.row{margin-right:-15px;margin-left:-15px}.col-xs-1,.col-sm-1,.col-md-1,.col-lg-1,.col-xs-2,.col-sm-2,.col-md-2,.col-lg-2,.col-xs-3,.col-sm-3,.col-md-3,.col-lg-3,.col-xs-4,.col-sm-4,.col-md-4,.col-lg-4,.col-xs-5,.col-sm-5,.col-md-5,.col-lg-5,.col-xs-6,.col-sm-6,.col-md-6,.col-lg-6,.col-xs-7,.col-sm-7,.col-md-7,.col-lg-7,.col-xs-8,.col-sm-8,.col-md-8,.col-lg-8,.col-xs-9,.col-sm-9,.col-md-9,.col-lg-9,.col-xs-10,.col-sm-10,.col-md-10,.col-lg-10,.col-xs-11,.col-sm-11,.col-md-11,.col-lg-11,.col-xs-12,.col-sm-12,.col-md-12,.col-lg-12{position:relative;min-height:1px;padding-right:15px;padding-left:15px}.col-xs-1,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9,.col-xs-10,.col-xs-11,.col-xs-12{float:left}.col-xs-12{width:100%}.col-xs-11{width:91.66666667%}.col-xs-10{width:83.33333333%}.col-xs-9{width:75%}.col-xs-8{width:66.66666667%}.col-xs-7{width:58.33333333%}.col-xs-6{width:50%}.col-xs-5{width:41.66666667%}.col-xs-4{width:33.33333333%}.col-xs-3{width:25%}.col-xs-2{width:16.66666667%}.col-xs-1{width:8.33333333%}.col-xs-pull-12{right:100%}.col-xs-pull-11{right:91.66666667%}.col-xs-pull-10{right:83.33333333%}.col-xs-pull-9{right:75%}.col-xs-pull-8{right:66.66666667%}.col-xs-pull-7{right:58.33333333%}.col-xs-pull-6{right:50%}.col-xs-pull-5{right:41.66666667%}.col-xs-pull-4{right:33.33333333%}.col-xs-pull-3{right:25%}.col-xs-pull-2{right:16.66666667%}.col-xs-pull-1{right:8.33333333%}.col-xs-pull-0{right:auto}.col-xs-push-12{left:100%}.col-xs-push-11{left:91.66666667%}.col-xs-push-10{left:83.33333333%}.col-xs-push-9{left:75%}.col-xs-push-8{left:66.66666667%}.col-xs-push-7{left:58.33333333%}.col-xs-push-6{left:50%}.col-xs-push-5{left:41.66666667%}.col-xs-push-4{left:33.33333333%}.col-xs-push-3{left:25%}.col-xs-push-2{left:16.66666667%}.col-xs-push-1{left:8.33333333%}.col-xs-push-0{left:auto}.col-xs-offset-12{margin-left:100%}.col-xs-offset-11{margin-left:91.66666667%}.col-xs-offset-10{margin-left:83.33333333%}.col-xs-offset-9{margin-left:75%}.col-xs-offset-8{margin-left:66.66666667%}.col-xs-offset-7{margin-left:58.33333333%}.col-xs-offset-6{margin-left:50%}.col-xs-offset-5{margin-left:41.66666667%}.col-xs-offset-4{margin-left:33.33333333%}.col-xs-offset-3{margin-left:25%}.col-xs-offset-2{margin-left:16.66666667%}.col-xs-offset-1{margin-left:8.33333333%}.col-xs-offset-0{margin-left:0}@media (min-width:768px){.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12{float:left}.col-sm-12{width:100%}.col-sm-11{width:91.66666667%}.col-sm-10{width:83.33333333%}.col-sm-9{width:75%}.col-sm-8{width:66.66666667%}.col-sm-7{width:58.33333333%}.col-sm-6{width:50%}.col-sm-5{width:41.66666667%}.col-sm-4{width:33.33333333%}.col-sm-3{width:25%}.col-sm-2{width:16.66666667%}.col-sm-1{width:8.33333333%}.col-sm-pull-12{right:100%}.col-sm-pull-11{right:91.66666667%}.col-sm-pull-10{right:83.33333333%}.col-sm-pull-9{right:75%}.col-sm-pull-8{right:66.66666667%}.col-sm-pull-7{right:58.33333333%}.col-sm-pull-6{right:50%}.col-sm-pull-5{right:41.66666667%}.col-sm-pull-4{right:33.33333333%}.col-sm-pull-3{right:25%}.col-sm-pull-2{right:16.66666667%}.col-sm-pull-1{right:8.33333333%}.col-sm-pull-0{right:auto}.col-sm-push-12{left:100%}.col-sm-push-11{left:91.66666667%}.col-sm-push-10{left:83.33333333%}.col-sm-push-9{left:75%}.col-sm-push-8{left:66.66666667%}.col-sm-push-7{left:58.33333333%}.col-sm-push-6{left:50%}.col-sm-push-5{left:41.66666667%}.col-sm-push-4{left:33.33333333%}.col-sm-push-3{left:25%}.col-sm-push-2{left:16.66666667%}.col-sm-push-1{left:8.33333333%}.col-sm-push-0{left:auto}.col-sm-offset-12{margin-left:100%}.col-sm-offset-11{margin-left:91.66666667%}.col-sm-offset-10{margin-left:83.33333333%}.col-sm-offset-9{margin-left:75%}.col-sm-offset-8{margin-left:66.66666667%}.col-sm-offset-7{margin-left:58.33333333%}.col-sm-offset-6{margin-left:50%}.col-sm-offset-5{margin-left:41.66666667%}.col-sm-offset-4{margin-left:33.33333333%}.col-sm-offset-3{margin-left:25%}.col-sm-offset-2{margin-left:16.66666667%}.col-sm-offset-1{margin-left:8.33333333%}.col-sm-offset-0{margin-left:0}}@media (min-width:992px){.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12{float:left}.col-md-12{width:100%}.col-md-11{width:91.66666667%}.col-md-10{width:83.33333333%}.col-md-9{width:75%}.col-md-8{width:66.66666667%}.col-md-7{width:58.33333333%}.col-md-6{width:50%}.col-md-5{width:41.66666667%}.col-md-4{width:33.33333333%}.col-md-3{width:25%}.col-md-2{width:16.66666667%}.col-md-1{width:8.33333333%}.col-md-pull-12{right:100%}.col-md-pull-11{right:91.66666667%}.col-md-pull-10{right:83.33333333%}.col-md-pull-9{right:75%}.col-md-pull-8{right:66.66666667%}.col-md-pull-7{right:58.33333333%}.col-md-pull-6{right:50%}.col-md-pull-5{right:41.66666667%}.col-md-pull-4{right:33.33333333%}.col-md-pull-3{right:25%}.col-md-pull-2{right:16.66666667%}.col-md-pull-1{right:8.33333333%}.col-md-pull-0{right:auto}.col-md-push-12{left:100%}.col-md-push-11{left:91.66666667%}.col-md-push-10{left:83.33333333%}.col-md-push-9{left:75%}.col-md-push-8{left:66.66666667%}.col-md-push-7{left:58.33333333%}.col-md-push-6{left:50%}.col-md-push-5{left:41.66666667%}.col-md-push-4{left:33.33333333%}.col-md-push-3{left:25%}.col-md-push-2{left:16.66666667%}.col-md-push-1{left:8.33333333%}.col-md-push-0{left:auto}.col-md-offset-12{margin-left:100%}.col-md-offset-11{margin-left:91.66666667%}.col-md-offset-10{margin-left:83.33333333%}.col-md-offset-9{margin-left:75%}.col-md-offset-8{margin-left:66.66666667%}.col-md-offset-7{margin-left:58.33333333%}.col-md-offset-6{margin-left:50%}.col-md-offset-5{margin-left:41.66666667%}.col-md-offset-4{margin-left:33.33333333%}.col-md-offset-3{margin-left:25%}.col-md-offset-2{margin-left:16.66666667%}.col-md-offset-1{margin-left:8.33333333%}.col-md-offset-0{margin-left:0}}@media (min-width:1200px){.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12{float:left}.col-lg-12{width:100%}.col-lg-11{width:91.66666667%}.col-lg-10{width:83.33333333%}.col-lg-9{width:75%}.col-lg-8{width:66.66666667%}.col-lg-7{width:58.33333333%}.col-lg-6{width:50%}.col-lg-5{width:41.66666667%}.col-lg-4{width:33.33333333%}.col-lg-3{width:25%}.col-lg-2{width:16.66666667%}.col-lg-1{width:8.33333333%}.col-lg-pull-12{right:100%}.col-lg-pull-11{right:91.66666667%}.col-lg-pull-10{right:83.33333333%}.col-lg-pull-9{right:75%}.col-lg-pull-8{right:66.66666667%}.col-lg-pull-7{right:58.33333333%}.col-lg-pull-6{right:50%}.col-lg-pull-5{right:41.66666667%}.col-lg-pull-4{right:33.33333333%}.col-lg-pull-3{right:25%}.col-lg-pull-2{right:16.66666667%}.col-lg-pull-1{right:8.33333333%}.col-lg-pull-0{right:auto}.col-lg-push-12{left:100%}.col-lg-push-11{left:91.66666667%}.col-lg-push-10{left:83.33333333%}.col-lg-push-9{left:75%}.col-lg-push-8{left:66.66666667%}.col-lg-push-7{left:58.33333333%}.col-lg-push-6{left:50%}.col-lg-push-5{left:41.66666667%}.col-lg-push-4{left:33.33333333%}.col-lg-push-3{left:25%}.col-lg-push-2{left:16.66666667%}.col-lg-push-1{left:8.33333333%}.col-lg-push-0{left:auto}.col-lg-offset-12{margin-left:100%}.col-lg-offset-11{margin-left:91.66666667%}.col-lg-offset-10{margin-left:83.33333333%}.col-lg-offset-9{margin-left:75%}.col-lg-offset-8{margin-left:66.66666667%}.col-lg-offset-7{margin-left:58.33333333%}.col-lg-offset-6{margin-left:50%}.col-lg-offset-5{margin-left:41.66666667%}.col-lg-offset-4{margin-left:33.33333333%}.col-lg-offset-3{margin-left:25%}.col-lg-offset-2{margin-left:16.66666667%}.col-lg-offset-1{margin-left:8.33333333%}.col-lg-offset-0{margin-left:0}}table{background-color:transparent}caption{padding-top:8px;padding-bottom:8px;color:#777;text-align:left}th{text-align:left}.table{width:100%;max-width:100%;margin-bottom:20px}.table>thead>tr>th,.table>tbody>tr>th,.table>tfoot>tr>th,.table>thead>tr>td,.table>tbody>tr>td,.table>tfoot>tr>td{padding:8px;line-height:1.42857143;vertical-align:top;border-top:1px solid #ddd}.table>thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ddd}.table>caption+thead>tr:first-child>th,.table>colgroup+thead>tr:first-child>th,.table>thead:first-child>tr:first-child>th,.table>caption+thead>tr:first-child>td,.table>colgroup+thead>tr:first-child>td,.table>thead:first-child>tr:first-child>td{border-top:0}.table>tbody+tbody{border-top:2px solid #ddd}.table .table{background-color:#fff}.table-condensed>thead>tr>th,.table-condensed>tbody>tr>th,.table-condensed>tfoot>tr>th,.table-condensed>thead>tr>td,.table-condensed>tbody>tr>td,.table-condensed>tfoot>tr>td{padding:5px}.table-bordered{border:1px solid #ddd}.table-bordered>thead>tr>th,.table-bordered>tbody>tr>th,.table-bordered>tfoot>tr>th,.table-bordered>thead>tr>td,.table-bordered>tbody>tr>td,.table-bordered>tfoot>tr>td{border:1px solid #ddd}.table-bordered>thead>tr>th,.table-bordered>thead>tr>td{border-bottom-width:2px}.table-striped>tbody>tr:nth-child(odd){background-color:#f9f9f9}.table-hover>tbody>tr:hover{background-color:#f5f5f5}table col[class*=col-]{position:static;display:table-column;float:none}table td[class*=col-],table th[class*=col-]{position:static;display:table-cell;float:none}.table>thead>tr>td.active,.table>tbody>tr>td.active,.table>tfoot>tr>td.active,.table>thead>tr>th.active,.table>tbody>tr>th.active,.table>tfoot>tr>th.active,.table>thead>tr.active>td,.table>tbody>tr.active>td,.table>tfoot>tr.active>td,.table>thead>tr.active>th,.table>tbody>tr.active>th,.table>tfoot>tr.active>th{background-color:#f5f5f5}.table-hover>tbody>tr>td.active:hover,.table-hover>tbody>tr>th.active:hover,.table-hover>tbody>tr.active:hover>td,.table-hover>tbody>tr:hover>.active,.table-hover>tbody>tr.active:hover>th{background-color:#e8e8e8}.table>thead>tr>td.success,.table>tbody>tr>td.success,.table>tfoot>tr>td.success,.table>thead>tr>th.success,.table>tbody>tr>th.success,.table>tfoot>tr>th.success,.table>thead>tr.success>td,.table>tbody>tr.success>td,.table>tfoot>tr.success>td,.table>thead>tr.success>th,.table>tbody>tr.success>th,.table>tfoot>tr.success>th{background-color:#dff0d8}.table-hover>tbody>tr>td.success:hover,.table-hover>tbody>tr>th.success:hover,.table-hover>tbody>tr.success:hover>td,.table-hover>tbody>tr:hover>.success,.table-hover>tbody>tr.success:hover>th{background-color:#d0e9c6}.table>thead>tr>td.info,.table>tbody>tr>td.info,.table>tfoot>tr>td.info,.table>thead>tr>th.info,.table>tbody>tr>th.info,.table>tfoot>tr>th.info,.table>thead>tr.info>td,.table>tbody>tr.info>td,.table>tfoot>tr.info>td,.table>thead>tr.info>th,.table>tbody>tr.info>th,.table>tfoot>tr.info>th{background-color:#d9edf7}.table-hover>tbody>tr>td.info:hover,.table-hover>tbody>tr>th.info:hover,.table-hover>tbody>tr.info:hover>td,.table-hover>tbody>tr:hover>.info,.table-hover>tbody>tr.info:hover>th{background-color:#c4e3f3}.table>thead>tr>td.warning,.table>tbody>tr>td.warning,.table>tfoot>tr>td.warning,.table>thead>tr>th.warning,.table>tbody>tr>th.warning,.table>tfoot>tr>th.warning,.table>thead>tr.warning>td,.table>tbody>tr.warning>td,.table>tfoot>tr.warning>td,.table>thead>tr.warning>th,.table>tbody>tr.warning>th,.table>tfoot>tr.warning>th{background-color:#fcf8e3}.table-hover>tbody>tr>td.warning:hover,.table-hover>tbody>tr>th.warning:hover,.table-hover>tbody>tr.warning:hover>td,.table-hover>tbody>tr:hover>.warning,.table-hover>tbody>tr.warning:hover>th{background-color:#faf2cc}.table>thead>tr>td.danger,.table>tbody>tr>td.danger,.table>tfoot>tr>td.danger,.table>thead>tr>th.danger,.table>tbody>tr>th.danger,.table>tfoot>tr>th.danger,.table>thead>tr.danger>td,.table>tbody>tr.danger>td,.table>tfoot>tr.danger>td,.table>thead>tr.danger>th,.table>tbody>tr.danger>th,.table>tfoot>tr.danger>th{background-color:#f2dede}.table-hover>tbody>tr>td.danger:hover,.table-hover>tbody>tr>th.danger:hover,.table-hover>tbody>tr.danger:hover>td,.table-hover>tbody>tr:hover>.danger,.table-hover>tbody>tr.danger:hover>th{background-color:#ebcccc}.table-responsive{min-height:.01%;overflow-x:auto}@media screen and (max-width:767px){.table-responsive{width:100%;margin-bottom:15px;overflow-y:hidden;-ms-overflow-style:-ms-autohiding-scrollbar;border:1px solid #ddd}.table-responsive>.table{margin-bottom:0}.table-responsive>.table>thead>tr>th,.table-responsive>.table>tbody>tr>th,.table-responsive>.table>tfoot>tr>th,.table-responsive>.table>thead>tr>td,.table-responsive>.table>tbody>tr>td,.table-responsive>.table>tfoot>tr>td{white-space:nowrap}.table-responsive>.table-bordered{border:0}.table-responsive>.table-bordered>thead>tr>th:first-child,.table-responsive>.table-bordered>tbody>tr>th:first-child,.table-responsive>.table-bordered>tfoot>tr>th:first-child,.table-responsive>.table-bordered>thead>tr>td:first-child,.table-responsive>.table-bordered>tbody>tr>td:first-child,.table-responsive>.table-bordered>tfoot>tr>td:first-child{border-left:0}.table-responsive>.table-bordered>thead>tr>th:last-child,.table-responsive>.table-bordered>tbody>tr>th:last-child,.table-responsive>.table-bordered>tfoot>tr>th:last-child,.table-responsive>.table-bordered>thead>tr>td:last-child,.table-responsive>.table-bordered>tbody>tr>td:last-child,.table-responsive>.table-bordered>tfoot>tr>td:last-child{border-right:0}.table-responsive>.table-bordered>tbody>tr:last-child>th,.table-responsive>.table-bordered>tfoot>tr:last-child>th,.table-responsive>.table-bordered>tbody>tr:last-child>td,.table-responsive>.table-bordered>tfoot>tr:last-child>td{border-bottom:0}}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:inherit;color:#333;border:0;border-bottom:1px solid #e5e5e5}label{display:inline-block;max-width:100%;margin-bottom:5px;font-weight:700}input[type=search]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}input[type=radio],input[type=checkbox]{margin:4px 0 0;margin-top:1px \9;line-height:normal}input[type=file]{display:block}input[type=range]{display:block;width:100%}select[multiple],select[size]{height:auto}input[type=file]:focus,input[type=radio]:focus,input[type=checkbox]:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}output{display:block;padding-top:7px;font-size:14px;line-height:1.42857143;color:#555}.form-control{display:block;width:100%;height:34px;padding:6px 12px;font-size:14px;line-height:1.42857143;color:#555;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-webkit-transition:border-color ease-in-out .15s,-webkit-box-shadow ease-in-out .15s;-o-transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s}.form-control:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6)}.form-control::-moz-placeholder{color:#999;opacity:1}.form-control:-ms-input-placeholder{color:#999}.form-control::-webkit-input-placeholder{color:#999}.form-control[disabled],.form-control[readonly],fieldset[disabled] .form-control{cursor:not-allowed;background-color:#eee;opacity:1}textarea.form-control{height:auto}input[type=search]{-webkit-appearance:none}@media screen and (-webkit-min-device-pixel-ratio:0){input[type=date],input[type=time],input[type=datetime-local],input[type=month]{line-height:34px}input[type=date].input-sm,input[type=time].input-sm,input[type=datetime-local].input-sm,input[type=month].input-sm{line-height:30px}input[type=date].input-lg,input[type=time].input-lg,input[type=datetime-local].input-lg,input[type=month].input-lg{line-height:46px}}.form-group{margin-bottom:15px}.radio,.checkbox{position:relative;display:block;margin-top:10px;margin-bottom:10px}.radio label,.checkbox label{min-height:20px;padding-left:20px;margin-bottom:0;font-weight:400;cursor:pointer}.radio input[type=radio],.radio-inline input[type=radio],.checkbox input[type=checkbox],.checkbox-inline input[type=checkbox]{position:absolute;margin-top:4px \9;margin-left:-20px}.radio+.radio,.checkbox+.checkbox{margin-top:-5px}.radio-inline,.checkbox-inline{display:inline-block;padding-left:20px;margin-bottom:0;font-weight:400;vertical-align:middle;cursor:pointer}.radio-inline+.radio-inline,.checkbox-inline+.checkbox-inline{margin-top:0;margin-left:10px}input[type=radio][disabled],input[type=checkbox][disabled],input[type=radio].disabled,input[type=checkbox].disabled,fieldset[disabled] input[type=radio],fieldset[disabled] input[type=checkbox]{cursor:not-allowed}.radio-inline.disabled,.checkbox-inline.disabled,fieldset[disabled] .radio-inline,fieldset[disabled] .checkbox-inline{cursor:not-allowed}.radio.disabled label,.checkbox.disabled label,fieldset[disabled] .radio label,fieldset[disabled] .checkbox label{cursor:not-allowed}.form-control-static{padding-top:7px;padding-bottom:7px;margin-bottom:0}.form-control-static.input-lg,.form-control-static.input-sm{padding-right:0;padding-left:0}.input-sm,.form-group-sm .form-control{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-sm,select.form-group-sm .form-control{height:30px;line-height:30px}textarea.input-sm,textarea.form-group-sm .form-control,select[multiple].input-sm,select[multiple].form-group-sm .form-control{height:auto}.input-lg,.form-group-lg .form-control{height:46px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}select.input-lg,select.form-group-lg .form-control{height:46px;line-height:46px}textarea.input-lg,textarea.form-group-lg .form-control,select[multiple].input-lg,select[multiple].form-group-lg .form-control{height:auto}.has-feedback{position:relative}.has-feedback .form-control{padding-right:42.5px}.form-control-feedback{position:absolute;top:0;right:0;z-index:2;display:block;width:34px;height:34px;line-height:34px;text-align:center;pointer-events:none}.input-lg+.form-control-feedback{width:46px;height:46px;line-height:46px}.input-sm+.form-control-feedback{width:30px;height:30px;line-height:30px}.has-success .help-block,.has-success .control-label,.has-success .radio,.has-success .checkbox,.has-success .radio-inline,.has-success .checkbox-inline,.has-success.radio label,.has-success.checkbox label,.has-success.radio-inline label,.has-success.checkbox-inline label{color:#3c763d}.has-success .form-control{border-color:#3c763d;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-success .form-control:focus{border-color:#2b542c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #67b168;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #67b168}.has-success .input-group-addon{color:#3c763d;background-color:#dff0d8;border-color:#3c763d}.has-success .form-control-feedback{color:#3c763d}.has-warning .help-block,.has-warning .control-label,.has-warning .radio,.has-warning .checkbox,.has-warning .radio-inline,.has-warning .checkbox-inline,.has-warning.radio label,.has-warning.checkbox label,.has-warning.radio-inline label,.has-warning.checkbox-inline label{color:#8a6d3b}.has-warning .form-control{border-color:#8a6d3b;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-warning .form-control:focus{border-color:#66512c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #c0a16b;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #c0a16b}.has-warning .input-group-addon{color:#8a6d3b;background-color:#fcf8e3;border-color:#8a6d3b}.has-warning .form-control-feedback{color:#8a6d3b}.has-error .help-block,.has-error .control-label,.has-error .radio,.has-error .checkbox,.has-error .radio-inline,.has-error .checkbox-inline,.has-error.radio label,.has-error.checkbox label,.has-error.radio-inline label,.has-error.checkbox-inline label{color:#a94442}.has-error .form-control{border-color:#a94442;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-error .form-control:focus{border-color:#843534;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ce8483;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ce8483}.has-error .input-group-addon{color:#a94442;background-color:#f2dede;border-color:#a94442}.has-error .form-control-feedback{color:#a94442}.has-feedback label~.form-control-feedback{top:25px}.has-feedback label.sr-only~.form-control-feedback{top:0}.help-block{display:block;margin-top:5px;margin-bottom:10px;color:#737373}@media (min-width:768px){.form-inline .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-static{display:inline-block}.form-inline .input-group{display:inline-table;vertical-align:middle}.form-inline .input-group .input-group-addon,.form-inline .input-group .input-group-btn,.form-inline .input-group .form-control{width:auto}.form-inline .input-group>.form-control{width:100%}.form-inline .control-label{margin-bottom:0;vertical-align:middle}.form-inline .radio,.form-inline .checkbox{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.form-inline .radio label,.form-inline .checkbox label{padding-left:0}.form-inline .radio input[type=radio],.form-inline .checkbox input[type=checkbox]{position:relative;margin-left:0}.form-inline .has-feedback .form-control-feedback{top:0}}.form-horizontal .radio,.form-horizontal .checkbox,.form-horizontal .radio-inline,.form-horizontal .checkbox-inline{padding-top:7px;margin-top:0;margin-bottom:0}.form-horizontal .radio,.form-horizontal .checkbox{min-height:27px}.form-horizontal .form-group{margin-right:-15px;margin-left:-15px}@media (min-width:768px){.form-horizontal .control-label{padding-top:7px;margin-bottom:0;text-align:right}}.form-horizontal .has-feedback .form-control-feedback{right:15px}@media (min-width:768px){.form-horizontal .form-group-lg .control-label{padding-top:14.3px}}@media (min-width:768px){.form-horizontal .form-group-sm .control-label{padding-top:6px}}.btn{display:inline-block;padding:6px 12px;margin-bottom:0;font-size:14px;font-weight:400;line-height:1.42857143;text-align:center;white-space:nowrap;vertical-align:middle;-ms-touch-action:manipulation;touch-action:manipulation;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-image:none;border:1px solid transparent;border-radius:4px}.btn:focus,.btn:active:focus,.btn.active:focus,.btn.focus,.btn:active.focus,.btn.active.focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn:hover,.btn:focus,.btn.focus{color:#333;text-decoration:none}.btn:active,.btn.active{background-image:none;outline:0;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn.disabled,.btn[disabled],fieldset[disabled] .btn{pointer-events:none;cursor:not-allowed;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none;opacity:.65}.btn-default{color:#333;background-color:#fff;border-color:#ccc}.btn-default:hover,.btn-default:focus,.btn-default.focus,.btn-default:active,.btn-default.active,.open>.dropdown-toggle.btn-default{color:#333;background-color:#e6e6e6;border-color:#adadad}.btn-default:active,.btn-default.active,.open>.dropdown-toggle.btn-default{background-image:none}.btn-default.disabled,.btn-default[disabled],fieldset[disabled] .btn-default,.btn-default.disabled:hover,.btn-default[disabled]:hover,fieldset[disabled] .btn-default:hover,.btn-default.disabled:focus,.btn-default[disabled]:focus,fieldset[disabled] .btn-default:focus,.btn-default.disabled.focus,.btn-default[disabled].focus,fieldset[disabled] .btn-default.focus,.btn-default.disabled:active,.btn-default[disabled]:active,fieldset[disabled] .btn-default:active,.btn-default.disabled.active,.btn-default[disabled].active,fieldset[disabled] .btn-default.active{background-color:#fff;border-color:#ccc}.btn-default .badge{color:#fff;background-color:#333}.btn-primary{color:#fff;background-color:#337ab7;border-color:#2e6da4}.btn-primary:hover,.btn-primary:focus,.btn-primary.focus,.btn-primary:active,.btn-primary.active,.open>.dropdown-toggle.btn-primary{color:#fff;background-color:#286090;border-color:#204d74}.btn-primary:active,.btn-primary.active,.open>.dropdown-toggle.btn-primary{background-image:none}.btn-primary.disabled,.btn-primary[disabled],fieldset[disabled] .btn-primary,.btn-primary.disabled:hover,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary:hover,.btn-primary.disabled:focus,.btn-primary[disabled]:focus,fieldset[disabled] .btn-primary:focus,.btn-primary.disabled.focus,.btn-primary[disabled].focus,fieldset[disabled] .btn-primary.focus,.btn-primary.disabled:active,.btn-primary[disabled]:active,fieldset[disabled] .btn-primary:active,.btn-primary.disabled.active,.btn-primary[disabled].active,fieldset[disabled] .btn-primary.active{background-color:#337ab7;border-color:#2e6da4}.btn-primary .badge{color:#337ab7;background-color:#fff}.btn-success{color:#fff;background-color:#5cb85c;border-color:#4cae4c}.btn-success:hover,.btn-success:focus,.btn-success.focus,.btn-success:active,.btn-success.active,.open>.dropdown-toggle.btn-success{color:#fff;background-color:#449d44;border-color:#398439}.btn-success:active,.btn-success.active,.open>.dropdown-toggle.btn-success{background-image:none}.btn-success.disabled,.btn-success[disabled],fieldset[disabled] .btn-success,.btn-success.disabled:hover,.btn-success[disabled]:hover,fieldset[disabled] .btn-success:hover,.btn-success.disabled:focus,.btn-success[disabled]:focus,fieldset[disabled] .btn-success:focus,.btn-success.disabled.focus,.btn-success[disabled].focus,fieldset[disabled] .btn-success.focus,.btn-success.disabled:active,.btn-success[disabled]:active,fieldset[disabled] .btn-success:active,.btn-success.disabled.active,.btn-success[disabled].active,fieldset[disabled] .btn-success.active{background-color:#5cb85c;border-color:#4cae4c}.btn-success .badge{color:#5cb85c;background-color:#fff}.btn-info{color:#fff;background-color:#5bc0de;border-color:#46b8da}.btn-info:hover,.btn-info:focus,.btn-info.focus,.btn-info:active,.btn-info.active,.open>.dropdown-toggle.btn-info{color:#fff;background-color:#31b0d5;border-color:#269abc}.btn-info:active,.btn-info.active,.open>.dropdown-toggle.btn-info{background-image:none}.btn-info.disabled,.btn-info[disabled],fieldset[disabled] .btn-info,.btn-info.disabled:hover,.btn-info[disabled]:hover,fieldset[disabled] .btn-info:hover,.btn-info.disabled:focus,.btn-info[disabled]:focus,fieldset[disabled] .btn-info:focus,.btn-info.disabled.focus,.btn-info[disabled].focus,fieldset[disabled] .btn-info.focus,.btn-info.disabled:active,.btn-info[disabled]:active,fieldset[disabled] .btn-info:active,.btn-info.disabled.active,.btn-info[disabled].active,fieldset[disabled] .btn-info.active{background-color:#5bc0de;border-color:#46b8da}.btn-info .badge{color:#5bc0de;background-color:#fff}.btn-warning{color:#fff;background-color:#f0ad4e;border-color:#eea236}.btn-warning:hover,.btn-warning:focus,.btn-warning.focus,.btn-warning:active,.btn-warning.active,.open>.dropdown-toggle.btn-warning{color:#fff;background-color:#ec971f;border-color:#d58512}.btn-warning:active,.btn-warning.active,.open>.dropdown-toggle.btn-warning{background-image:none}.btn-warning.disabled,.btn-warning[disabled],fieldset[disabled] .btn-warning,.btn-warning.disabled:hover,.btn-warning[disabled]:hover,fieldset[disabled] .btn-warning:hover,.btn-warning.disabled:focus,.btn-warning[disabled]:focus,fieldset[disabled] .btn-warning:focus,.btn-warning.disabled.focus,.btn-warning[disabled].focus,fieldset[disabled] .btn-warning.focus,.btn-warning.disabled:active,.btn-warning[disabled]:active,fieldset[disabled] .btn-warning:active,.btn-warning.disabled.active,.btn-warning[disabled].active,fieldset[disabled] .btn-warning.active{background-color:#f0ad4e;border-color:#eea236}.btn-warning .badge{color:#f0ad4e;background-color:#fff}.btn-danger{color:#fff;background-color:#d9534f;border-color:#d43f3a}.btn-danger:hover,.btn-danger:focus,.btn-danger.focus,.btn-danger:active,.btn-danger.active,.open>.dropdown-toggle.btn-danger{color:#fff;background-color:#c9302c;border-color:#ac2925}.btn-danger:active,.btn-danger.active,.open>.dropdown-toggle.btn-danger{background-image:none}.btn-danger.disabled,.btn-danger[disabled],fieldset[disabled] .btn-danger,.btn-danger.disabled:hover,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger:hover,.btn-danger.disabled:focus,.btn-danger[disabled]:focus,fieldset[disabled] .btn-danger:focus,.btn-danger.disabled.focus,.btn-danger[disabled].focus,fieldset[disabled] .btn-danger.focus,.btn-danger.disabled:active,.btn-danger[disabled]:active,fieldset[disabled] .btn-danger:active,.btn-danger.disabled.active,.btn-danger[disabled].active,fieldset[disabled] .btn-danger.active{background-color:#d9534f;border-color:#d43f3a}.btn-danger .badge{color:#d9534f;background-color:#fff}.btn-link{font-weight:400;color:#337ab7;border-radius:0}.btn-link,.btn-link:active,.btn-link.active,.btn-link[disabled],fieldset[disabled] .btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.btn-link,.btn-link:hover,.btn-link:focus,.btn-link:active{border-color:transparent}.btn-link:hover,.btn-link:focus{color:#23527c;text-decoration:underline;background-color:transparent}.btn-link[disabled]:hover,fieldset[disabled] .btn-link:hover,.btn-link[disabled]:focus,fieldset[disabled] .btn-link:focus{color:#777;text-decoration:none}.btn-lg,.btn-group-lg>.btn{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.btn-sm,.btn-group-sm>.btn{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.btn-xs,.btn-group-xs>.btn{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:5px}input[type=submit].btn-block,input[type=reset].btn-block,input[type=button].btn-block{width:100%}.fade{opacity:0;-webkit-transition:opacity .15s linear;-o-transition:opacity .15s linear;transition:opacity .15s linear}.fade.in{opacity:1}.collapse{display:none;visibility:hidden}.collapse.in{display:block;visibility:visible}tr.collapse.in{display:table-row}tbody.collapse.in{display:table-row-group}.collapsing{position:relative;height:0;overflow:hidden;-webkit-transition-timing-function:ease;-o-transition-timing-function:ease;transition-timing-function:ease;-webkit-transition-duration:.35s;-o-transition-duration:.35s;transition-duration:.35s;-webkit-transition-property:height,visibility;-o-transition-property:height,visibility;transition-property:height,visibility}.caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px solid;border-right:4px solid transparent;border-left:4px solid transparent}.dropdown{position:relative}.dropdown-toggle:focus{outline:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;font-size:14px;text-align:left;list-style:none;background-color:#fff;-webkit-background-clip:padding-box;background-clip:padding-box;border:1px solid #ccc;border:1px solid rgba(0,0,0,.15);border-radius:4px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,.175);box-shadow:0 6px 12px rgba(0,0,0,.175)}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:400;line-height:1.42857143;color:#333;white-space:nowrap}.dropdown-menu>li>a:hover,.dropdown-menu>li>a:focus{color:#262626;text-decoration:none;background-color:#f5f5f5}.dropdown-menu>.active>a,.dropdown-menu>.active>a:hover,.dropdown-menu>.active>a:focus{color:#fff;text-decoration:none;background-color:#337ab7;outline:0}.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{color:#777}.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{text-decoration:none;cursor:not-allowed;background-color:transparent;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.open>.dropdown-menu{display:block}.open>a{outline:0}.dropdown-menu-right{right:0;left:auto}.dropdown-menu-left{right:auto;left:0}.dropdown-header{display:block;padding:3px 20px;font-size:12px;line-height:1.42857143;color:#777;white-space:nowrap}.dropdown-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:990}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{content:"";border-top:0;border-bottom:4px solid}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}@media (min-width:768px){.navbar-right .dropdown-menu{right:0;left:auto}.navbar-right .dropdown-menu-left{right:auto;left:0}}.btn-group,.btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.btn-group>.btn,.btn-group-vertical>.btn{position:relative;float:left}.btn-group>.btn:hover,.btn-group-vertical>.btn:hover,.btn-group>.btn:focus,.btn-group-vertical>.btn:focus,.btn-group>.btn:active,.btn-group-vertical>.btn:active,.btn-group>.btn.active,.btn-group-vertical>.btn.active{z-index:2}.btn-group .btn+.btn,.btn-group .btn+.btn-group,.btn-group .btn-group+.btn,.btn-group .btn-group+.btn-group{margin-left:-1px}.btn-toolbar{margin-left:-5px}.btn-toolbar .btn-group,.btn-toolbar .input-group{float:left}.btn-toolbar>.btn,.btn-toolbar>.btn-group,.btn-toolbar>.input-group{margin-left:5px}.btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.btn-group>.btn:first-child{margin-left:0}.btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn:last-child:not(:first-child),.btn-group>.dropdown-toggle:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.btn-group>.btn-group{float:left}.btn-group>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group>.btn-group:first-child>.btn:last-child,.btn-group>.btn-group:first-child>.dropdown-toggle{border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:last-child>.btn:first-child{border-top-left-radius:0;border-bottom-left-radius:0}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group>.btn+.dropdown-toggle{padding-right:8px;padding-left:8px}.btn-group>.btn-lg+.dropdown-toggle{padding-right:12px;padding-left:12px}.btn-group.open .dropdown-toggle{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn-group.open .dropdown-toggle.btn-link{-webkit-box-shadow:none;box-shadow:none}.btn .caret{margin-left:0}.btn-lg .caret{border-width:5px 5px 0;border-bottom-width:0}.dropup .btn-lg .caret{border-width:0 5px 5px}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group,.btn-group-vertical>.btn-group>.btn{display:block;float:none;width:100%;max-width:100%}.btn-group-vertical>.btn-group>.btn{float:none}.btn-group-vertical>.btn+.btn,.btn-group-vertical>.btn+.btn-group,.btn-group-vertical>.btn-group+.btn,.btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.btn-group-vertical>.btn:not(:first-child):not(:last-child){border-radius:0}.btn-group-vertical>.btn:first-child:not(:last-child){border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn:last-child:not(:first-child){border-top-left-radius:0;border-top-right-radius:0;border-bottom-left-radius:4px}.btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group-vertical>.btn-group:first-child:not(:last-child)>.btn:last-child,.btn-group-vertical>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:last-child:not(:first-child)>.btn:first-child{border-top-left-radius:0;border-top-right-radius:0}.btn-group-justified{display:table;width:100%;table-layout:fixed;border-collapse:separate}.btn-group-justified>.btn,.btn-group-justified>.btn-group{display:table-cell;float:none;width:1%}.btn-group-justified>.btn-group .btn{width:100%}.btn-group-justified>.btn-group .dropdown-menu{left:auto}[data-toggle=buttons]>.btn input[type=radio],[data-toggle=buttons]>.btn-group>.btn input[type=radio],[data-toggle=buttons]>.btn input[type=checkbox],[data-toggle=buttons]>.btn-group>.btn input[type=checkbox]{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.input-group{position:relative;display:table;border-collapse:separate}.input-group[class*=col-]{float:none;padding-right:0;padding-left:0}.input-group .form-control{position:relative;z-index:2;float:left;width:100%;margin-bottom:0}.input-group-lg>.form-control,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.btn{height:46px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}select.input-group-lg>.form-control,select.input-group-lg>.input-group-addon,select.input-group-lg>.input-group-btn>.btn{height:46px;line-height:46px}textarea.input-group-lg>.form-control,textarea.input-group-lg>.input-group-addon,textarea.input-group-lg>.input-group-btn>.btn,select[multiple].input-group-lg>.form-control,select[multiple].input-group-lg>.input-group-addon,select[multiple].input-group-lg>.input-group-btn>.btn{height:auto}.input-group-sm>.form-control,.input-group-sm>.input-group-addon,.input-group-sm>.input-group-btn>.btn{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-group-sm>.form-control,select.input-group-sm>.input-group-addon,select.input-group-sm>.input-group-btn>.btn{height:30px;line-height:30px}textarea.input-group-sm>.form-control,textarea.input-group-sm>.input-group-addon,textarea.input-group-sm>.input-group-btn>.btn,select[multiple].input-group-sm>.form-control,select[multiple].input-group-sm>.input-group-addon,select[multiple].input-group-sm>.input-group-btn>.btn{height:auto}.input-group-addon,.input-group-btn,.input-group .form-control{display:table-cell}.input-group-addon:not(:first-child):not(:last-child),.input-group-btn:not(:first-child):not(:last-child),.input-group .form-control:not(:first-child):not(:last-child){border-radius:0}.input-group-addon,.input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.input-group-addon{padding:6px 12px;font-size:14px;font-weight:400;line-height:1;color:#555;text-align:center;background-color:#eee;border:1px solid #ccc;border-radius:4px}.input-group-addon.input-sm{padding:5px 10px;font-size:12px;border-radius:3px}.input-group-addon.input-lg{padding:10px 16px;font-size:18px;border-radius:6px}.input-group-addon input[type=radio],.input-group-addon input[type=checkbox]{margin-top:0}.input-group .form-control:first-child,.input-group-addon:first-child,.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group>.btn,.input-group-btn:first-child>.dropdown-toggle,.input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group-btn:last-child>.btn-group:not(:last-child)>.btn{border-top-right-radius:0;border-bottom-right-radius:0}.input-group-addon:first-child{border-right:0}.input-group .form-control:last-child,.input-group-addon:last-child,.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group>.btn,.input-group-btn:last-child>.dropdown-toggle,.input-group-btn:first-child>.btn:not(:first-child),.input-group-btn:first-child>.btn-group:not(:first-child)>.btn{border-top-left-radius:0;border-bottom-left-radius:0}.input-group-addon:last-child{border-left:0}.input-group-btn{position:relative;font-size:0;white-space:nowrap}.input-group-btn>.btn{position:relative}.input-group-btn>.btn+.btn{margin-left:-1px}.input-group-btn>.btn:hover,.input-group-btn>.btn:focus,.input-group-btn>.btn:active{z-index:2}.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group{margin-right:-1px}.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group{margin-left:-1px}.nav{padding-left:0;margin-bottom:0;list-style:none}.nav>li{position:relative;display:block}.nav>li>a{position:relative;display:block;padding:10px 15px}.nav>li>a:hover,.nav>li>a:focus{text-decoration:none;background-color:#eee}.nav>li.disabled>a{color:#777}.nav>li.disabled>a:hover,.nav>li.disabled>a:focus{color:#777;text-decoration:none;cursor:not-allowed;background-color:transparent}.nav .open>a,.nav .open>a:hover,.nav .open>a:focus{background-color:#eee;border-color:#337ab7}.nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.nav>li>a>img{max-width:none}.nav-tabs{border-bottom:1px solid #ddd}.nav-tabs>li{float:left;margin-bottom:-1px}.nav-tabs>li>a{margin-right:2px;line-height:1.42857143;border:1px solid transparent;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.nav-tabs>li.active>a,.nav-tabs>li.active>a:hover,.nav-tabs>li.active>a:focus{color:#555;cursor:default;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent}.nav-tabs.nav-justified{width:100%;border-bottom:0}.nav-tabs.nav-justified>li{float:none}.nav-tabs.nav-justified>li>a{margin-bottom:5px;text-align:center}.nav-tabs.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width:768px){.nav-tabs.nav-justified>li{display:table-cell;width:1%}.nav-tabs.nav-justified>li>a{margin-bottom:0}}.nav-tabs.nav-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:hover,.nav-tabs.nav-justified>.active>a:focus{border:1px solid #ddd}@media (min-width:768px){.nav-tabs.nav-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:hover,.nav-tabs.nav-justified>.active>a:focus{border-bottom-color:#fff}}.nav-pills>li{float:left}.nav-pills>li>a{border-radius:4px}.nav-pills>li+li{margin-left:2px}.nav-pills>li.active>a,.nav-pills>li.active>a:hover,.nav-pills>li.active>a:focus{color:#fff;background-color:#337ab7}.nav-stacked>li{float:none}.nav-stacked>li+li{margin-top:2px;margin-left:0}.nav-justified{width:100%}.nav-justified>li{float:none}.nav-justified>li>a{margin-bottom:5px;text-align:center}.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width:768px){.nav-justified>li{display:table-cell;width:1%}.nav-justified>li>a{margin-bottom:0}}.nav-tabs-justified{border-bottom:0}.nav-tabs-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:hover,.nav-tabs-justified>.active>a:focus{border:1px solid #ddd}@media (min-width:768px){.nav-tabs-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:hover,.nav-tabs-justified>.active>a:focus{border-bottom-color:#fff}}.tab-content>.tab-pane{display:none;visibility:hidden}.tab-content>.active{display:block;visibility:visible}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.navbar{position:relative;min-height:50px;margin-bottom:20px;border:1px solid transparent}@media (min-width:768px){.navbar{border-radius:4px}}@media (min-width:768px){.navbar-header{float:left}}.navbar-collapse{padding-right:15px;padding-left:15px;overflow-x:visible;-webkit-overflow-scrolling:touch;border-top:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.1)}.navbar-collapse.in{overflow-y:auto}@media (min-width:768px){.navbar-collapse{width:auto;border-top:0;-webkit-box-shadow:none;box-shadow:none}.navbar-collapse.collapse{display:block!important;height:auto!important;padding-bottom:0;overflow:visible!important;visibility:visible!important}.navbar-collapse.in{overflow-y:visible}.navbar-fixed-top .navbar-collapse,.navbar-static-top .navbar-collapse,.navbar-fixed-bottom .navbar-collapse{padding-right:0;padding-left:0}}.navbar-fixed-top .navbar-collapse,.navbar-fixed-bottom .navbar-collapse{max-height:340px}@media (max-device-width:480px) and (orientation:landscape){.navbar-fixed-top .navbar-collapse,.navbar-fixed-bottom .navbar-collapse{max-height:200px}}.container>.navbar-header,.container-fluid>.navbar-header,.container>.navbar-collapse,.container-fluid>.navbar-collapse{margin-right:-15px;margin-left:-15px}@media (min-width:768px){.container>.navbar-header,.container-fluid>.navbar-header,.container>.navbar-collapse,.container-fluid>.navbar-collapse{margin-right:0;margin-left:0}}.navbar-static-top{z-index:1000;border-width:0 0 1px}@media (min-width:768px){.navbar-static-top{border-radius:0}}.navbar-fixed-top,.navbar-fixed-bottom{position:fixed;right:0;left:0;z-index:1030}@media (min-width:768px){.navbar-fixed-top,.navbar-fixed-bottom{border-radius:0}}.navbar-fixed-top{top:0;border-width:0 0 1px}.navbar-fixed-bottom{bottom:0;margin-bottom:0;border-width:1px 0 0}.navbar-brand{float:left;height:50px;padding:15px 15px;font-size:18px;line-height:20px}.navbar-brand:hover,.navbar-brand:focus{text-decoration:none}.navbar-brand>img{display:block}@media (min-width:768px){.navbar>.container .navbar-brand,.navbar>.container-fluid .navbar-brand{margin-left:-15px}}.navbar-toggle{position:relative;float:right;padding:9px 10px;margin-top:8px;margin-right:15px;margin-bottom:8px;background-color:transparent;background-image:none;border:1px solid transparent;border-radius:4px}.navbar-toggle:focus{outline:0}.navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.navbar-toggle .icon-bar+.icon-bar{margin-top:4px}@media (min-width:768px){.navbar-toggle{display:none}}.navbar-nav{margin:7.5px -15px}.navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:20px}@media (max-width:767px){.navbar-nav .open .dropdown-menu{position:static;float:none;width:auto;margin-top:0;background-color:transparent;border:0;-webkit-box-shadow:none;box-shadow:none}.navbar-nav .open .dropdown-menu>li>a,.navbar-nav .open .dropdown-menu .dropdown-header{padding:5px 15px 5px 25px}.navbar-nav .open .dropdown-menu>li>a{line-height:20px}.navbar-nav .open .dropdown-menu>li>a:hover,.navbar-nav .open .dropdown-menu>li>a:focus{background-image:none}}@media (min-width:768px){.navbar-nav{float:left;margin:0}.navbar-nav>li{float:left}.navbar-nav>li>a{padding-top:15px;padding-bottom:15px}}.navbar-form{padding:10px 15px;margin-top:8px;margin-right:-15px;margin-bottom:8px;margin-left:-15px;border-top:1px solid transparent;border-bottom:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.1)}@media (min-width:768px){.navbar-form .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.navbar-form .form-control{display:inline-block;width:auto;vertical-align:middle}.navbar-form .form-control-static{display:inline-block}.navbar-form .input-group{display:inline-table;vertical-align:middle}.navbar-form .input-group .input-group-addon,.navbar-form .input-group .input-group-btn,.navbar-form .input-group .form-control{width:auto}.navbar-form .input-group>.form-control{width:100%}.navbar-form .control-label{margin-bottom:0;vertical-align:middle}.navbar-form .radio,.navbar-form .checkbox{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.navbar-form .radio label,.navbar-form .checkbox label{padding-left:0}.navbar-form .radio input[type=radio],.navbar-form .checkbox input[type=checkbox]{position:relative;margin-left:0}.navbar-form .has-feedback .form-control-feedback{top:0}}@media (max-width:767px){.navbar-form .form-group{margin-bottom:5px}.navbar-form .form-group:last-child{margin-bottom:0}}@media (min-width:768px){.navbar-form{width:auto;padding-top:0;padding-bottom:0;margin-right:0;margin-left:0;border:0;-webkit-box-shadow:none;box-shadow:none}}.navbar-nav>li>.dropdown-menu{margin-top:0;border-top-left-radius:0;border-top-right-radius:0}.navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{border-top-left-radius:4px;border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.navbar-btn{margin-top:8px;margin-bottom:8px}.navbar-btn.btn-sm{margin-top:10px;margin-bottom:10px}.navbar-btn.btn-xs{margin-top:14px;margin-bottom:14px}.navbar-text{margin-top:15px;margin-bottom:15px}@media (min-width:768px){.navbar-text{float:left;margin-right:15px;margin-left:15px}}@media (min-width:768px){.navbar-left{float:left!important}.navbar-right{float:right!important;margin-right:-15px}.navbar-right~.navbar-right{margin-right:0}}.navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.navbar-default .navbar-brand{color:#777}.navbar-default .navbar-brand:hover,.navbar-default .navbar-brand:focus{color:#5e5e5e;background-color:transparent}.navbar-default .navbar-text{color:#777}.navbar-default .navbar-nav>li>a{color:#777}.navbar-default .navbar-nav>li>a:hover,.navbar-default .navbar-nav>li>a:focus{color:#333;background-color:transparent}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.active>a:hover,.navbar-default .navbar-nav>.active>a:focus{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav>.disabled>a,.navbar-default .navbar-nav>.disabled>a:hover,.navbar-default .navbar-nav>.disabled>a:focus{color:#ccc;background-color:transparent}.navbar-default .navbar-toggle{border-color:#ddd}.navbar-default .navbar-toggle:hover,.navbar-default .navbar-toggle:focus{background-color:#ddd}.navbar-default .navbar-toggle .icon-bar{background-color:#888}.navbar-default .navbar-collapse,.navbar-default .navbar-form{border-color:#e7e7e7}.navbar-default .navbar-nav>.open>a,.navbar-default .navbar-nav>.open>a:hover,.navbar-default .navbar-nav>.open>a:focus{color:#555;background-color:#e7e7e7}@media (max-width:767px){.navbar-default .navbar-nav .open .dropdown-menu>li>a{color:#777}.navbar-default .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>li>a:focus{color:#333;background-color:transparent}.navbar-default .navbar-nav .open .dropdown-menu>.active>a,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#ccc;background-color:transparent}}.navbar-default .navbar-link{color:#777}.navbar-default .navbar-link:hover{color:#333}.navbar-default .btn-link{color:#777}.navbar-default .btn-link:hover,.navbar-default .btn-link:focus{color:#333}.navbar-default .btn-link[disabled]:hover,fieldset[disabled] .navbar-default .btn-link:hover,.navbar-default .btn-link[disabled]:focus,fieldset[disabled] .navbar-default .btn-link:focus{color:#ccc}.navbar-inverse{background-color:#222;border-color:#080808}.navbar-inverse .navbar-brand{color:#9d9d9d}.navbar-inverse .navbar-brand:hover,.navbar-inverse .navbar-brand:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-text{color:#9d9d9d}.navbar-inverse .navbar-nav>li>a{color:#9d9d9d}.navbar-inverse .navbar-nav>li>a:hover,.navbar-inverse .navbar-nav>li>a:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.active>a:hover,.navbar-inverse .navbar-nav>.active>a:focus{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav>.disabled>a,.navbar-inverse .navbar-nav>.disabled>a:hover,.navbar-inverse .navbar-nav>.disabled>a:focus{color:#444;background-color:transparent}.navbar-inverse .navbar-toggle{border-color:#333}.navbar-inverse .navbar-toggle:hover,.navbar-inverse .navbar-toggle:focus{background-color:#333}.navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.navbar-inverse .navbar-collapse,.navbar-inverse .navbar-form{border-color:#101010}.navbar-inverse .navbar-nav>.open>a,.navbar-inverse .navbar-nav>.open>a:hover,.navbar-inverse .navbar-nav>.open>a:focus{color:#fff;background-color:#080808}@media (max-width:767px){.navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header{border-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu .divider{background-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a{color:#9d9d9d}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:focus{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#444;background-color:transparent}}.navbar-inverse .navbar-link{color:#9d9d9d}.navbar-inverse .navbar-link:hover{color:#fff}.navbar-inverse .btn-link{color:#9d9d9d}.navbar-inverse .btn-link:hover,.navbar-inverse .btn-link:focus{color:#fff}.navbar-inverse .btn-link[disabled]:hover,fieldset[disabled] .navbar-inverse .btn-link:hover,.navbar-inverse .btn-link[disabled]:focus,fieldset[disabled] .navbar-inverse .btn-link:focus{color:#444}.breadcrumb{padding:8px 15px;margin-bottom:20px;list-style:none;background-color:#f5f5f5;border-radius:4px}.breadcrumb>li{display:inline-block}.breadcrumb>li+li:before{padding:0 5px;color:#ccc;content:"/\00a0"}.breadcrumb>.active{color:#777}.pagination{display:inline-block;padding-left:0;margin:20px 0;border-radius:4px}.pagination>li{display:inline}.pagination>li>a,.pagination>li>span{position:relative;float:left;padding:6px 12px;margin-left:-1px;line-height:1.42857143;color:#337ab7;text-decoration:none;background-color:#fff;border:1px solid #ddd}.pagination>li:first-child>a,.pagination>li:first-child>span{margin-left:0;border-top-left-radius:4px;border-bottom-left-radius:4px}.pagination>li:last-child>a,.pagination>li:last-child>span{border-top-right-radius:4px;border-bottom-right-radius:4px}.pagination>li>a:hover,.pagination>li>span:hover,.pagination>li>a:focus,.pagination>li>span:focus{color:#23527c;background-color:#eee;border-color:#ddd}.pagination>.active>a,.pagination>.active>span,.pagination>.active>a:hover,.pagination>.active>span:hover,.pagination>.active>a:focus,.pagination>.active>span:focus{z-index:2;color:#fff;cursor:default;background-color:#337ab7;border-color:#337ab7}.pagination>.disabled>span,.pagination>.disabled>span:hover,.pagination>.disabled>span:focus,.pagination>.disabled>a,.pagination>.disabled>a:hover,.pagination>.disabled>a:focus{color:#777;cursor:not-allowed;background-color:#fff;border-color:#ddd}.pagination-lg>li>a,.pagination-lg>li>span{padding:10px 16px;font-size:18px}.pagination-lg>li:first-child>a,.pagination-lg>li:first-child>span{border-top-left-radius:6px;border-bottom-left-radius:6px}.pagination-lg>li:last-child>a,.pagination-lg>li:last-child>span{border-top-right-radius:6px;border-bottom-right-radius:6px}.pagination-sm>li>a,.pagination-sm>li>span{padding:5px 10px;font-size:12px}.pagination-sm>li:first-child>a,.pagination-sm>li:first-child>span{border-top-left-radius:3px;border-bottom-left-radius:3px}.pagination-sm>li:last-child>a,.pagination-sm>li:last-child>span{border-top-right-radius:3px;border-bottom-right-radius:3px}.pager{padding-left:0;margin:20px 0;text-align:center;list-style:none}.pager li{display:inline}.pager li>a,.pager li>span{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;border-radius:15px}.pager li>a:hover,.pager li>a:focus{text-decoration:none;background-color:#eee}.pager .next>a,.pager .next>span{float:right}.pager .previous>a,.pager .previous>span{float:left}.pager .disabled>a,.pager .disabled>a:hover,.pager .disabled>a:focus,.pager .disabled>span{color:#777;cursor:not-allowed;background-color:#fff}.label{display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25em}a.label:hover,a.label:focus{color:#fff;text-decoration:none;cursor:pointer}.label:empty{display:none}.btn .label{position:relative;top:-1px}.label-default{background-color:#777}.label-default[href]:hover,.label-default[href]:focus{background-color:#5e5e5e}.label-primary{background-color:#337ab7}.label-primary[href]:hover,.label-primary[href]:focus{background-color:#286090}.label-success{background-color:#5cb85c}.label-success[href]:hover,.label-success[href]:focus{background-color:#449d44}.label-info{background-color:#5bc0de}.label-info[href]:hover,.label-info[href]:focus{background-color:#31b0d5}.label-warning{background-color:#f0ad4e}.label-warning[href]:hover,.label-warning[href]:focus{background-color:#ec971f}.label-danger{background-color:#d9534f}.label-danger[href]:hover,.label-danger[href]:focus{background-color:#c9302c}.badge{display:inline-block;min-width:10px;padding:3px 7px;font-size:12px;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;background-color:#777;border-radius:10px}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.btn-xs .badge{top:0;padding:1px 5px}a.badge:hover,a.badge:focus{color:#fff;text-decoration:none;cursor:pointer}.list-group-item.active>.badge,.nav-pills>.active>a>.badge{color:#337ab7;background-color:#fff}.list-group-item>.badge{float:right}.list-group-item>.badge+.badge{margin-right:5px}.nav-pills>li>a>.badge{margin-left:3px}.jumbotron{padding:30px 15px;margin-bottom:30px;color:inherit;background-color:#eee}.jumbotron h1,.jumbotron .h1{color:inherit}.jumbotron p{margin-bottom:15px;font-size:21px;font-weight:200}.jumbotron>hr{border-top-color:#d5d5d5}.container .jumbotron,.container-fluid .jumbotron{border-radius:6px}.jumbotron .container{max-width:100%}@media screen and (min-width:768px){.jumbotron{padding:48px 0}.container .jumbotron,.container-fluid .jumbotron{padding-right:60px;padding-left:60px}.jumbotron h1,.jumbotron .h1{font-size:63px}}.thumbnail{display:block;padding:4px;margin-bottom:20px;line-height:1.42857143;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:border .2s ease-in-out;-o-transition:border .2s ease-in-out;transition:border .2s ease-in-out}.thumbnail>img,.thumbnail a>img{margin-right:auto;margin-left:auto}a.thumbnail:hover,a.thumbnail:focus,a.thumbnail.active{border-color:#337ab7}.thumbnail .caption{padding:9px;color:#333}.alert{padding:15px;margin-bottom:20px;border:1px solid transparent;border-radius:4px}.alert h4{margin-top:0;color:inherit}.alert .alert-link{font-weight:700}.alert>p,.alert>ul{margin-bottom:0}.alert>p+p{margin-top:5px}.alert-dismissable,.alert-dismissible{padding-right:35px}.alert-dismissable .close,.alert-dismissible .close{position:relative;top:-2px;right:-21px;color:inherit}.alert-success{color:#3c763d;background-color:#dff0d8;border-color:#d6e9c6}.alert-success hr{border-top-color:#c9e2b3}.alert-success .alert-link{color:#2b542c}.alert-info{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.alert-info hr{border-top-color:#a6e1ec}.alert-info .alert-link{color:#245269}.alert-warning{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}.alert-warning hr{border-top-color:#f7e1b5}.alert-warning .alert-link{color:#66512c}.alert-danger{color:#a94442;background-color:#f2dede;border-color:#ebccd1}.alert-danger hr{border-top-color:#e4b9c0}.alert-danger .alert-link{color:#843534}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-o-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{height:20px;margin-bottom:20px;overflow:hidden;background-color:#f5f5f5;border-radius:4px;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1)}.progress-bar{float:left;width:0;height:100%;font-size:12px;line-height:20px;color:#fff;text-align:center;background-color:#337ab7;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);-webkit-transition:width .6s ease;-o-transition:width .6s ease;transition:width .6s ease}.progress-striped .progress-bar,.progress-bar-striped{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);-webkit-background-size:40px 40px;background-size:40px 40px}.progress.active .progress-bar,.progress-bar.active{-webkit-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-bar-success{background-color:#5cb85c}.progress-striped .progress-bar-success{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-bar-info{background-color:#5bc0de}.progress-striped .progress-bar-info{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-bar-warning{background-color:#f0ad4e}.progress-striped .progress-bar-warning{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-bar-danger{background-color:#d9534f}.progress-striped .progress-bar-danger{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.media{margin-top:15px}.media:first-child{margin-top:0}.media-right,.media>.pull-right{padding-left:10px}.media-left,.media>.pull-left{padding-right:10px}.media-left,.media-right,.media-body{display:table-cell;vertical-align:top}.media-middle{vertical-align:middle}.media-bottom{vertical-align:bottom}.media-heading{margin-top:0;margin-bottom:5px}.media-list{padding-left:0;list-style:none}.list-group{padding-left:0;margin-bottom:20px}.list-group-item{position:relative;display:block;padding:10px 15px;margin-bottom:-1px;background-color:#fff;border:1px solid #ddd}.list-group-item:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}a.list-group-item{color:#555}a.list-group-item .list-group-item-heading{color:#333}a.list-group-item:hover,a.list-group-item:focus{color:#555;text-decoration:none;background-color:#f5f5f5}.list-group-item.disabled,.list-group-item.disabled:hover,.list-group-item.disabled:focus{color:#777;cursor:not-allowed;background-color:#eee}.list-group-item.disabled .list-group-item-heading,.list-group-item.disabled:hover .list-group-item-heading,.list-group-item.disabled:focus .list-group-item-heading{color:inherit}.list-group-item.disabled .list-group-item-text,.list-group-item.disabled:hover .list-group-item-text,.list-group-item.disabled:focus .list-group-item-text{color:#777}.list-group-item.active,.list-group-item.active:hover,.list-group-item.active:focus{z-index:2;color:#fff;background-color:#337ab7;border-color:#337ab7}.list-group-item.active .list-group-item-heading,.list-group-item.active:hover .list-group-item-heading,.list-group-item.active:focus .list-group-item-heading,.list-group-item.active .list-group-item-heading>small,.list-group-item.active:hover .list-group-item-heading>small,.list-group-item.active:focus .list-group-item-heading>small,.list-group-item.active .list-group-item-heading>.small,.list-group-item.active:hover .list-group-item-heading>.small,.list-group-item.active:focus .list-group-item-heading>.small{color:inherit}.list-group-item.active .list-group-item-text,.list-group-item.active:hover .list-group-item-text,.list-group-item.active:focus .list-group-item-text{color:#c7ddef}.list-group-item-success{color:#3c763d;background-color:#dff0d8}a.list-group-item-success{color:#3c763d}a.list-group-item-success .list-group-item-heading{color:inherit}a.list-group-item-success:hover,a.list-group-item-success:focus{color:#3c763d;background-color:#d0e9c6}a.list-group-item-success.active,a.list-group-item-success.active:hover,a.list-group-item-success.active:focus{color:#fff;background-color:#3c763d;border-color:#3c763d}.list-group-item-info{color:#31708f;background-color:#d9edf7}a.list-group-item-info{color:#31708f}a.list-group-item-info .list-group-item-heading{color:inherit}a.list-group-item-info:hover,a.list-group-item-info:focus{color:#31708f;background-color:#c4e3f3}a.list-group-item-info.active,a.list-group-item-info.active:hover,a.list-group-item-info.active:focus{color:#fff;background-color:#31708f;border-color:#31708f}.list-group-item-warning{color:#8a6d3b;background-color:#fcf8e3}a.list-group-item-warning{color:#8a6d3b}a.list-group-item-warning .list-group-item-heading{color:inherit}a.list-group-item-warning:hover,a.list-group-item-warning:focus{color:#8a6d3b;background-color:#faf2cc}a.list-group-item-warning.active,a.list-group-item-warning.active:hover,a.list-group-item-warning.active:focus{color:#fff;background-color:#8a6d3b;border-color:#8a6d3b}.list-group-item-danger{color:#a94442;background-color:#f2dede}a.list-group-item-danger{color:#a94442}a.list-group-item-danger .list-group-item-heading{color:inherit}a.list-group-item-danger:hover,a.list-group-item-danger:focus{color:#a94442;background-color:#ebcccc}a.list-group-item-danger.active,a.list-group-item-danger.active:hover,a.list-group-item-danger.active:focus{color:#fff;background-color:#a94442;border-color:#a94442}.list-group-item-heading{margin-top:0;margin-bottom:5px}.list-group-item-text{margin-bottom:0;line-height:1.3}.panel{margin-bottom:20px;background-color:#fff;border:1px solid transparent;border-radius:4px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,.05);box-shadow:0 1px 1px rgba(0,0,0,.05)}.panel-body{padding:15px}.panel-heading{padding:10px 15px;border-bottom:1px solid transparent;border-top-left-radius:3px;border-top-right-radius:3px}.panel-heading>.dropdown .dropdown-toggle{color:inherit}.panel-title{margin-top:0;margin-bottom:0;font-size:16px;color:inherit}.panel-title>a{color:inherit}.panel-footer{padding:10px 15px;background-color:#f5f5f5;border-top:1px solid #ddd;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.list-group,.panel>.panel-collapse>.list-group{margin-bottom:0}.panel>.list-group .list-group-item,.panel>.panel-collapse>.list-group .list-group-item{border-width:1px 0;border-radius:0}.panel>.list-group:first-child .list-group-item:first-child,.panel>.panel-collapse>.list-group:first-child .list-group-item:first-child{border-top:0;border-top-left-radius:3px;border-top-right-radius:3px}.panel>.list-group:last-child .list-group-item:last-child,.panel>.panel-collapse>.list-group:last-child .list-group-item:last-child{border-bottom:0;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.list-group+.panel-footer{border-top-width:0}.panel>.table,.panel>.table-responsive>.table,.panel>.panel-collapse>.table{margin-bottom:0}.panel>.table caption,.panel>.table-responsive>.table caption,.panel>.panel-collapse>.table caption{padding-right:15px;padding-left:15px}.panel>.table:first-child,.panel>.table-responsive:first-child>.table:first-child{border-top-left-radius:3px;border-top-right-radius:3px}.panel>.table:first-child>thead:first-child>tr:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child{border-top-left-radius:3px;border-top-right-radius:3px}.panel>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:first-child{border-top-left-radius:3px}.panel>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:last-child{border-top-right-radius:3px}.panel>.table:last-child,.panel>.table-responsive:last-child>.table:last-child{border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.table:last-child>tbody:last-child>tr:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child{border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:first-child{border-bottom-left-radius:3px}.panel>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:last-child{border-bottom-right-radius:3px}.panel>.panel-body+.table,.panel>.panel-body+.table-responsive,.panel>.table+.panel-body,.panel>.table-responsive+.panel-body{border-top:1px solid #ddd}.panel>.table>tbody:first-child>tr:first-child th,.panel>.table>tbody:first-child>tr:first-child td{border-top:0}.panel>.table-bordered,.panel>.table-responsive>.table-bordered{border:0}.panel>.table-bordered>thead>tr>th:first-child,.panel>.table-responsive>.table-bordered>thead>tr>th:first-child,.panel>.table-bordered>tbody>tr>th:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,.panel>.table-bordered>tfoot>tr>th:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.panel>.table-bordered>thead>tr>td:first-child,.panel>.table-responsive>.table-bordered>thead>tr>td:first-child,.panel>.table-bordered>tbody>tr>td:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,.panel>.table-bordered>tfoot>tr>td:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child{border-left:0}.panel>.table-bordered>thead>tr>th:last-child,.panel>.table-responsive>.table-bordered>thead>tr>th:last-child,.panel>.table-bordered>tbody>tr>th:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,.panel>.table-bordered>tfoot>tr>th:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.panel>.table-bordered>thead>tr>td:last-child,.panel>.table-responsive>.table-bordered>thead>tr>td:last-child,.panel>.table-bordered>tbody>tr>td:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,.panel>.table-bordered>tfoot>tr>td:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child{border-right:0}.panel>.table-bordered>thead>tr:first-child>td,.panel>.table-responsive>.table-bordered>thead>tr:first-child>td,.panel>.table-bordered>tbody>tr:first-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>td,.panel>.table-bordered>thead>tr:first-child>th,.panel>.table-responsive>.table-bordered>thead>tr:first-child>th,.panel>.table-bordered>tbody>tr:first-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>th{border-bottom:0}.panel>.table-bordered>tbody>tr:last-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,.panel>.table-bordered>tfoot>tr:last-child>td,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td,.panel>.table-bordered>tbody>tr:last-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,.panel>.table-bordered>tfoot>tr:last-child>th,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th{border-bottom:0}.panel>.table-responsive{margin-bottom:0;border:0}.panel-group{margin-bottom:20px}.panel-group .panel{margin-bottom:0;border-radius:4px}.panel-group .panel+.panel{margin-top:5px}.panel-group .panel-heading{border-bottom:0}.panel-group .panel-heading+.panel-collapse>.panel-body,.panel-group .panel-heading+.panel-collapse>.list-group{border-top:1px solid #ddd}.panel-group .panel-footer{border-top:0}.panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ddd}.panel-default{border-color:#ddd}.panel-default>.panel-heading{color:#333;background-color:#f5f5f5;border-color:#ddd}.panel-default>.panel-heading+.panel-collapse>.panel-body{border-top-color:#ddd}.panel-default>.panel-heading .badge{color:#f5f5f5;background-color:#333}.panel-default>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#ddd}.panel-primary{border-color:#337ab7}.panel-primary>.panel-heading{color:#fff;background-color:#337ab7;border-color:#337ab7}.panel-primary>.panel-heading+.panel-collapse>.panel-body{border-top-color:#337ab7}.panel-primary>.panel-heading .badge{color:#337ab7;background-color:#fff}.panel-primary>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#337ab7}.panel-success{border-color:#d6e9c6}.panel-success>.panel-heading{color:#3c763d;background-color:#dff0d8;border-color:#d6e9c6}.panel-success>.panel-heading+.panel-collapse>.panel-body{border-top-color:#d6e9c6}.panel-success>.panel-heading .badge{color:#dff0d8;background-color:#3c763d}.panel-success>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#d6e9c6}.panel-info{border-color:#bce8f1}.panel-info>.panel-heading{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.panel-info>.panel-heading+.panel-collapse>.panel-body{border-top-color:#bce8f1}.panel-info>.panel-heading .badge{color:#d9edf7;background-color:#31708f}.panel-info>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#bce8f1}.panel-warning{border-color:#faebcc}.panel-warning>.panel-heading{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}.panel-warning>.panel-heading+.panel-collapse>.panel-body{border-top-color:#faebcc}.panel-warning>.panel-heading .badge{color:#fcf8e3;background-color:#8a6d3b}.panel-warning>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#faebcc}.panel-danger{border-color:#ebccd1}.panel-danger>.panel-heading{color:#a94442;background-color:#f2dede;border-color:#ebccd1}.panel-danger>.panel-heading+.panel-collapse>.panel-body{border-top-color:#ebccd1}.panel-danger>.panel-heading .badge{color:#f2dede;background-color:#a94442}.panel-danger>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#ebccd1}.embed-responsive{position:relative;display:block;height:0;padding:0;overflow:hidden}.embed-responsive .embed-responsive-item,.embed-responsive iframe,.embed-responsive embed,.embed-responsive object,.embed-responsive video{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;border:0}.embed-responsive.embed-responsive-16by9{padding-bottom:56.25%}.embed-responsive.embed-responsive-4by3{padding-bottom:75%}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.05);box-shadow:inset 0 1px 1px rgba(0,0,0,.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,.15)}.well-lg{padding:24px;border-radius:6px}.well-sm{padding:9px;border-radius:3px}.close{float:right;font-size:21px;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;filter:alpha(opacity=20);opacity:.2}.close:hover,.close:focus{color:#000;text-decoration:none;cursor:pointer;filter:alpha(opacity=50);opacity:.5}button.close{-webkit-appearance:none;padding:0;cursor:pointer;background:0 0;border:0}.modal-open{overflow:hidden}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;display:none;overflow:hidden;-webkit-overflow-scrolling:touch;outline:0}.modal.fade .modal-dialog{-webkit-transition:-webkit-transform .3s ease-out;-o-transition:-o-transform .3s ease-out;transition:transform .3s ease-out;-webkit-transform:translate(0,-25%);-ms-transform:translate(0,-25%);-o-transform:translate(0,-25%);transform:translate(0,-25%)}.modal.in .modal-dialog{-webkit-transform:translate(0,0);-ms-transform:translate(0,0);-o-transform:translate(0,0);transform:translate(0,0)}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal-dialog{position:relative;width:auto;margin:10px}.modal-content{position:relative;background-color:#fff;-webkit-background-clip:padding-box;background-clip:padding-box;border:1px solid #999;border:1px solid rgba(0,0,0,.2);border-radius:6px;outline:0;-webkit-box-shadow:0 3px 9px rgba(0,0,0,.5);box-shadow:0 3px 9px rgba(0,0,0,.5)}.modal-backdrop{position:absolute;top:0;right:0;left:0;background-color:#000}.modal-backdrop.fade{filter:alpha(opacity=0);opacity:0}.modal-backdrop.in{filter:alpha(opacity=50);opacity:.5}.modal-header{min-height:16.43px;padding:15px;border-bottom:1px solid #e5e5e5}.modal-header .close{margin-top:-2px}.modal-title{margin:0;line-height:1.42857143}.modal-body{position:relative;padding:15px}.modal-footer{padding:15px;text-align:right;border-top:1px solid #e5e5e5}.modal-footer .btn+.btn{margin-bottom:0;margin-left:5px}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.modal-footer .btn-block+.btn-block{margin-left:0}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:768px){.modal-dialog{width:600px;margin:30px auto}.modal-content{-webkit-box-shadow:0 5px 15px rgba(0,0,0,.5);box-shadow:0 5px 15px rgba(0,0,0,.5)}.modal-sm{width:300px}}@media (min-width:992px){.modal-lg{width:900px}}.tooltip{position:absolute;z-index:1070;display:block;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:12px;font-weight:400;line-height:1.4;visibility:visible;filter:alpha(opacity=0);opacity:0}.tooltip.in{filter:alpha(opacity=90);opacity:.9}.tooltip.top{padding:5px 0;margin-top:-3px}.tooltip.right{padding:0 5px;margin-left:3px}.tooltip.bottom{padding:5px 0;margin-top:3px}.tooltip.left{padding:0 5px;margin-left:-3px}.tooltip-inner{max-width:200px;padding:3px 8px;color:#fff;text-align:center;text-decoration:none;background-color:#000;border-radius:4px}.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#000}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#000}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#000}.popover{position:absolute;top:0;left:0;z-index:1060;display:none;max-width:276px;padding:1px;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;font-weight:400;line-height:1.42857143;text-align:left;white-space:normal;background-color:#fff;-webkit-background-clip:padding-box;background-clip:padding-box;border:1px solid #ccc;border:1px solid rgba(0,0,0,.2);border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,.2);box-shadow:0 5px 10px rgba(0,0,0,.2)}.popover.top{margin-top:-10px}.popover.right{margin-left:10px}.popover.bottom{margin-top:10px}.popover.left{margin-left:-10px}.popover-title{padding:8px 14px;margin:0;font-size:14px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-radius:5px 5px 0 0}.popover-content{padding:9px 14px}.popover>.arrow,.popover>.arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.popover>.arrow{border-width:11px}.popover>.arrow:after{content:"";border-width:10px}.popover.top>.arrow{bottom:-11px;left:50%;margin-left:-11px;border-top-color:#999;border-top-color:rgba(0,0,0,.25);border-bottom-width:0}.popover.top>.arrow:after{bottom:1px;margin-left:-10px;content:" ";border-top-color:#fff;border-bottom-width:0}.popover.right>.arrow{top:50%;left:-11px;margin-top:-11px;border-right-color:#999;border-right-color:rgba(0,0,0,.25);border-left-width:0}.popover.right>.arrow:after{bottom:-10px;left:1px;content:" ";border-right-color:#fff;border-left-width:0}.popover.bottom>.arrow{top:-11px;left:50%;margin-left:-11px;border-top-width:0;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,.25)}.popover.bottom>.arrow:after{top:1px;margin-left:-10px;content:" ";border-top-width:0;border-bottom-color:#fff}.popover.left>.arrow{top:50%;right:-11px;margin-top:-11px;border-right-width:0;border-left-color:#999;border-left-color:rgba(0,0,0,.25)}.popover.left>.arrow:after{right:1px;bottom:-10px;content:" ";border-right-width:0;border-left-color:#fff}.carousel{position:relative}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner>.item{position:relative;display:none;-webkit-transition:.6s ease-in-out left;-o-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.carousel-inner>.item>img,.carousel-inner>.item>a>img{line-height:1}@media all and (transform-3d),(-webkit-transform-3d){.carousel-inner>.item{-webkit-transition:-webkit-transform .6s ease-in-out;-o-transition:-o-transform .6s ease-in-out;transition:transform .6s ease-in-out;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-perspective:1000;perspective:1000}.carousel-inner>.item.next,.carousel-inner>.item.active.right{left:0;-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}.carousel-inner>.item.prev,.carousel-inner>.item.active.left{left:0;-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}.carousel-inner>.item.next.left,.carousel-inner>.item.prev.right,.carousel-inner>.item.active{left:0;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}.carousel-inner>.active,.carousel-inner>.next,.carousel-inner>.prev{display:block}.carousel-inner>.active{left:0}.carousel-inner>.next,.carousel-inner>.prev{position:absolute;top:0;width:100%}.carousel-inner>.next{left:100%}.carousel-inner>.prev{left:-100%}.carousel-inner>.next.left,.carousel-inner>.prev.right{left:0}.carousel-inner>.active.left{left:-100%}.carousel-inner>.active.right{left:100%}.carousel-control{position:absolute;top:0;bottom:0;left:0;width:15%;font-size:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.6);filter:alpha(opacity=50);opacity:.5}.carousel-control.left{background-image:-webkit-linear-gradient(left,rgba(0,0,0,.5) 0,rgba(0,0,0,.0001) 100%);background-image:-o-linear-gradient(left,rgba(0,0,0,.5) 0,rgba(0,0,0,.0001) 100%);background-image:-webkit-gradient(linear,left top,right top,from(rgba(0,0,0,.5)),to(rgba(0,0,0,.0001)));background-image:linear-gradient(to right,rgba(0,0,0,.5) 0,rgba(0,0,0,.0001) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1);background-repeat:repeat-x}.carousel-control.right{right:0;left:auto;background-image:-webkit-linear-gradient(left,rgba(0,0,0,.0001) 0,rgba(0,0,0,.5) 100%);background-image:-o-linear-gradient(left,rgba(0,0,0,.0001) 0,rgba(0,0,0,.5) 100%);background-image:-webkit-gradient(linear,left top,right top,from(rgba(0,0,0,.0001)),to(rgba(0,0,0,.5)));background-image:linear-gradient(to right,rgba(0,0,0,.0001) 0,rgba(0,0,0,.5) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1);background-repeat:repeat-x}.carousel-control:hover,.carousel-control:focus{color:#fff;text-decoration:none;filter:alpha(opacity=90);outline:0;opacity:.9}.carousel-control .icon-prev,.carousel-control .icon-next,.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right{position:absolute;top:50%;z-index:5;display:inline-block}.carousel-control .icon-prev,.carousel-control .glyphicon-chevron-left{left:50%;margin-left:-10px}.carousel-control .icon-next,.carousel-control .glyphicon-chevron-right{right:50%;margin-right:-10px}.carousel-control .icon-prev,.carousel-control .icon-next{width:20px;height:20px;margin-top:-10px;font-family:serif}.carousel-control .icon-prev:before{content:'\2039'}.carousel-control .icon-next:before{content:'\203a'}.carousel-indicators{position:absolute;bottom:10px;left:50%;z-index:15;width:60%;padding-left:0;margin-left:-30%;text-align:center;list-style:none}.carousel-indicators li{display:inline-block;width:10px;height:10px;margin:1px;text-indent:-999px;cursor:pointer;background-color:#000 \9;background-color:rgba(0,0,0,0);border:1px solid #fff;border-radius:10px}.carousel-indicators .active{width:12px;height:12px;margin:0;background-color:#fff}.carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.6)}.carousel-caption .btn{text-shadow:none}@media screen and (min-width:768px){.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right,.carousel-control .icon-prev,.carousel-control .icon-next{width:30px;height:30px;margin-top:-15px;font-size:30px}.carousel-control .glyphicon-chevron-left,.carousel-control .icon-prev{margin-left:-15px}.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next{margin-right:-15px}.carousel-caption{right:20%;left:20%;padding-bottom:30px}.carousel-indicators{bottom:20px}}.clearfix:before,.clearfix:after,.dl-horizontal dd:before,.dl-horizontal dd:after,.container:before,.container:after,.container-fluid:before,.container-fluid:after,.row:before,.row:after,.form-horizontal .form-group:before,.form-horizontal .form-group:after,.btn-toolbar:before,.btn-toolbar:after,.btn-group-vertical>.btn-group:before,.btn-group-vertical>.btn-group:after,.nav:before,.nav:after,.navbar:before,.navbar:after,.navbar-header:before,.navbar-header:after,.navbar-collapse:before,.navbar-collapse:after,.pager:before,.pager:after,.panel-body:before,.panel-body:after,.modal-footer:before,.modal-footer:after{display:table;content:" "}.clearfix:after,.dl-horizontal dd:after,.container:after,.container-fluid:after,.row:after,.form-horizontal .form-group:after,.btn-toolbar:after,.btn-group-vertical>.btn-group:after,.nav:after,.navbar:after,.navbar-header:after,.navbar-collapse:after,.pager:after,.panel-body:after,.modal-footer:after{clear:both}.center-block{display:block;margin-right:auto;margin-left:auto}.pull-right{float:right!important}.pull-left{float:left!important}.hide{display:none!important}.show{display:block!important}.invisible{visibility:hidden}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.hidden{display:none!important;visibility:hidden!important}.affix{position:fixed}@-ms-viewport{width:device-width}.visible-xs,.visible-sm,.visible-md,.visible-lg{display:none!important}.visible-xs-block,.visible-xs-inline,.visible-xs-inline-block,.visible-sm-block,.visible-sm-inline,.visible-sm-inline-block,.visible-md-block,.visible-md-inline,.visible-md-inline-block,.visible-lg-block,.visible-lg-inline,.visible-lg-inline-block{display:none!important}@media (max-width:767px){.visible-xs{display:block!important}table.visible-xs{display:table}tr.visible-xs{display:table-row!important}th.visible-xs,td.visible-xs{display:table-cell!important}}@media (max-width:767px){.visible-xs-block{display:block!important}}@media (max-width:767px){.visible-xs-inline{display:inline!important}}@media (max-width:767px){.visible-xs-inline-block{display:inline-block!important}}@media (min-width:768px) and (max-width:991px){.visible-sm{display:block!important}table.visible-sm{display:table}tr.visible-sm{display:table-row!important}th.visible-sm,td.visible-sm{display:table-cell!important}}@media (min-width:768px) and (max-width:991px){.visible-sm-block{display:block!important}}@media (min-width:768px) and (max-width:991px){.visible-sm-inline{display:inline!important}}@media (min-width:768px) and (max-width:991px){.visible-sm-inline-block{display:inline-block!important}}@media (min-width:992px) and (max-width:1199px){.visible-md{display:block!important}table.visible-md{display:table}tr.visible-md{display:table-row!important}th.visible-md,td.visible-md{display:table-cell!important}}@media (min-width:992px) and (max-width:1199px){.visible-md-block{display:block!important}}@media (min-width:992px) and (max-width:1199px){.visible-md-inline{display:inline!important}}@media (min-width:992px) and (max-width:1199px){.visible-md-inline-block{display:inline-block!important}}@media (min-width:1200px){.visible-lg{display:block!important}table.visible-lg{display:table}tr.visible-lg{display:table-row!important}th.visible-lg,td.visible-lg{display:table-cell!important}}@media (min-width:1200px){.visible-lg-block{display:block!important}}@media (min-width:1200px){.visible-lg-inline{display:inline!important}}@media (min-width:1200px){.visible-lg-inline-block{display:inline-block!important}}@media (max-width:767px){.hidden-xs{display:none!important}}@media (min-width:768px) and (max-width:991px){.hidden-sm{display:none!important}}@media (min-width:992px) and (max-width:1199px){.hidden-md{display:none!important}}@media (min-width:1200px){.hidden-lg{display:none!important}}.visible-print{display:none!important}@media print{.visible-print{display:block!important}table.visible-print{display:table}tr.visible-print{display:table-row!important}th.visible-print,td.visible-print{display:table-cell!important}}.visible-print-block{display:none!important}@media print{.visible-print-block{display:block!important}}.visible-print-inline{display:none!important}@media print{.visible-print-inline{display:inline!important}}.visible-print-inline-block{display:none!important}@media print{.visible-print-inline-block{display:inline-block!important}}@media print{.hidden-print{display:none!important}}phamm-0.6.5/public/fonts/0000755000175300017530000000000012643155515013213 5ustar phammphamm-0.6.5/public/fonts/glyphicons-halflings-regular.eot0000644000175300017530000004755712643155515021531 0ustar phammoONLP(GLYPHICONS HalflingsRegularxVersion 1.001;PS 001.001;hotconv 1.0.70;makeotf.lib2.5.583298GLYPHICONS Halflings RegularBSGPv5v5|-\`WhKqJx"U:r,/4\ liʚELFMƀV(gW\+rK0 Q3-O>Cdge}\4[DdpWQ@J[MUAНj.p`k*CI4ثo\ wfvXDlBg1[/a 2lE2g29MÊ zGDUBA$L}Xʕfz;N2_;(k@B[!6P3G E]{JW/s4%ߙ_}}cO-4lPaDX[qv*X,u * z3JL} 0VjUyjn)O0;0!-!r"&bbl,-`Q|/^LVRuzԪIЪ!k&)J{.tS?iSdiVD1w b]D*%qsPDẍp EG`+w:V*X<[lM .ΡShqk" J MT6 ckazԪnqm0pDJv咽Fv(S(MIӶFKm"=-B(>QeYeg䜊7 ._j&LK 9zRuC Rȍ&B0 _C_{4W?N"$#D :J4/횶GJ;]wd:H9®[Ԩ* K #8A$a`]ڞ-TE7 $ :sp†f L$}Zb]b6Hrx-t jViMjN^[8>Cn7L &+3W6G86Xnfi?4 }<4 ζfVGeb} s i{OEn#&QP6D*BLB1SRkDXX><|0;ڈ55C~4?:P}"%ut5I!9l$!yMT>' Otqa?^Em ߲CsS|-nH q#Yt k ¹Ǯs%}NJbCW/|`F\b,ɏ2H2/94# ~ecĩ"Q7:ZI֋]%Y*B;8aFxʩb_͟- *)4?j@5Q'P8Gr)ՠxl֏("c{G݇_xۢƴHE-Bᔡ`\_`TXiCO!;#$QCU(75D Ѥd= >dZ0tjgv2-ēxU  3,7ta,(5¶YE$6sB܉O c: : R.yaHX%1yL7Az5o*n5e)oFaDe`hp"QYoO 4ops0OE Y)b8x.k+8U)+6-]K9pQt&}SnmbtLMwXsSIj>ISj 2`%94}=JAvD j踠ؓT[P#aW0Tt-~zI,6U2)'\v SRP Znq"abErwL1U[n @G[9y3s;! r퐽"04{2 faJ )"P: 63'Z7\H59NTt } 損;wL.tdqwo Ή)"f.dxCz KFNǢhF@ᡰ)1VaP JV,B{&f pphxO2%8 QPL:eϨiN`ߟҒ]Q${3qN% Ot=jxgPΰFK^{f?^/ O\:JD;Q`c^!dvk e3庑aIC d6 IȚ#\},?Hf3cUw+$U[":}]jb(Es)`%\¥U.#]v/)K:Ic4ó.c$C?f `+6cx$#[ߺ f& h,A4-g`?$1 1bB5 }˟ X`h^2*"`PRooפ)jk7L"3|{y@պiw@&}g$su"򩄕_[n 7()D`QŔm>@cgDD~xp }`toHTuҁ)m7$',h XNrlu5_@>[ƍĬ]6ݏS@&ƛ2@4w|{ ߤ9.Fdqr(A1ƴ#ADp#6=rR {xP(Q@"ޥ&Ϡ]a y[J(%;MA ~NdR;>4hYjQ=yæ[`\h :L]}~0Ml0F#뗸S2zB!TC l-c:Tl占bPIS;KΜNWpw}R#;~ -b;} 3@=6]ӦؒAy0h)?(o^2Ri}l[=qĴP418󅷞8@BB8Rjp>ފvP-'KULRCa=r'}ݨkFp6HbI,Fo1r'"չ&&lI{&Qf2a\L)ARہQDX:vaiGGw޶ /0$O0&#H9o(sQƬ"MLjL7L5 y*ɚ Y%wt+55Z()͊BvMK0:$»8!0AbJ#9pB́@E(CuOP<|h sRynx@fr:„i1ZBLnѫrtI-1x,Fޠ1Sb'1CI Y^\UF;=6-T-H2G'8H9&$+d k?K(J'qj s`*L9y2@ a-*PkvW2F0(tTlhш%qA.[_g>9dMx,mw첌-{ 3tw61}Lwf馵G,h jZZ8H5tÉ@wi Ku|AIgn).}88F@*ʠtxV~JUw6A.0n*"1-59dq?5L8v& |֓I4$H]ZMUj/R-l\w׭OU LQ*`r }krmVӛk^vJS ''xQi_᭒d4(Qn \T-VB+ uxdFȘW`q NB \5#3v$O#ȧ,*(w\h;^ʻƪ 'NYmLʿ"TR Cy. >f D kDo9/މ׮=4fQ؀'k5B$rL줁tIL?P!>Mf0+^˪!Ѡ>5Ĩ&y_dA+1f+#X@חč㍊S.r;0~RP72ř|$oVXBa?^ b~*FT@Jƪ3}/SaUȪj1SaB7~& FMsϜ[>+ {1YsȠ@z(=!؆73މfze(<;oe3_'DZs5"b4gdHCoL5.6:5}9$MQ'$¥9DscM |)lIE9#C5LJ`fK%{P,e& 'S7a:np-ąKzHhw%ɹm|lߝʍȝte0q9S_z/L[ P{)x.{hLٷV)kٮq;jz@b2Q` 9~'32jF vQTdM@>ܹPNq޺HіJMrN2Q9}l̀ (6,A; +":(-$V3x6AT\"zn %*bo@oJLBqIziTN9Xj<39'LRB$eYĞa+(n2uCca%˂*w `‹B=Uf{(INq_ zh.3fKH f]N LԩXʍ=zRg}퇍ZUJ"yxqESZDXJN4HOV_X/bYmOt)r!)mFL.P@0cgrTxg=] 3A?)z Ua0@ zd0w"jZpL_T_C e )~oQRNx3Î|T"b, 2& cT6@1# ,@-#z|VcXk58WYP!\-` |)2ooD4}ئ=Lg}Pi9І.xpTsq2yǿa-GuNhXH8uOi% (Ck%b9|B(#U Yt='`҃ >N-'׿ ]69A0&!Ge! mܥ#<*L£U.1=RI2')`> l٦hh%H^YY-aA xq[ '@L^ q=BQGͱ2\K oD9xx۳I 8, OȉC;'2ouPp CR  {|녴p`4tvX @X+6zP?,J*lKh:MѰdC^fhD ]wJү!}7?fYƉA"SEiD2#ե$=4:{pۿs> irrT׎ ; q!u_n&5ҁW%7 _ c59f5r~JDR5e?[T6mf8Or*~$QcڏƁ;B=E_MhhR` >~<@34TGa8vf&G[U%H-XP@ K/қ@^0ݩ'f܍klش\BG]W?sX(Vz$F;]HP{*6Dcb-7|X|o~mssiBJ[0{V \=T%CJ͵m9<?fK]ɒCy{ PƏ뇰G^JH@ \쓚c~Rbʂ@mhVS#4xSkȗ~y*q6&gY? gb Xn!$8[E'()C7"ONhC3V,%(eR39IHC̼_YDb;s~L\ed5 i3sђ9ItrôikXJB5F޾Uu\-*/Usw b OĿmOn,1GG[ՁxeXujz zҳݘ-6`9e$v:]]@/ yB(zÎ / oZm'N;=3%)y 19FL(gRK@ ; \'']̱2ievu# qZ~15I]9, 7Ji)H)j-ju՘ OO/ p:/(;RBU7edINRH?>X0y8Pr#b _8i؍Cf`ȑai2Uyd=2_Db9@:q"ڌSpF~"6TDgtӆ +tHh7 >TLҌ $AQ+ @;;M~oS<:.g&`$"CPbQ,`$`|ʛW18<~$+t >N]-me B5PNcxqE}n B685 }Uf<)SbQRUk)LGS*F:Hp%xسR)s.̀RqWjGi<5) /򈈳2`޲h6`눯LT ɖn QY\;uth26WZafQr`dڭ1t-1a|Ұ g0Ci[[^;`FOpb^ū^nP mJSr4K*X˓ .cnnmEPhJl|c! !ZI>NbTpPu$k[C%- QջQL&B88Jtqic2HšE/'W^yRrnզ*paK#51=̺6 jC#< /I͑2 ;ċ `SXԙ$jjgI\dOX%=grj{yV PsJIfM!]INFn 1Da6-4KX8)>8 )q@PȒR2GI8C@hW TQ];K=_1a ȱ@xZ urd`_1T*Kb{ p-n+W9?.W*m*nԤ'.CACdýDC1n*k]F  ܴOl7i%cXkԺ%i(ε=r$DyU6ʉ;ca k|Gr:9mmW^ÞXeUADQ_«tj$Uh4a| a eB CUMҵhރ8wƤiip`g6ρ#Mtʍ?<8W^%xpf1Sq iXYZKT6 /5QtΦhEzp)HJXC ΐR[S} qT/E:E,2P!ZNĂTs=4阃RNSwy#d8G6<` 3YˤM=9fts4 q9x0šaEgE7 [3n()* l<`T&v}Ou(! `4HAXOе>! +҆5! 0`!WB4`1@ X@( 8 L@M@9zOkU;Xj!I X*^vڥWj:vڡjܪn5ZgjYj V->"^ĵ+J!: ʯ dIdrRZZ$= btȨ΋\rCAt_X'.zbf0^f D V767f/>/IW+ A '6NAڹ‚g"  tTҹDLd@C[1M.yX-'GLB_|־Eg\MƗM!PS=*yU؆\ ;9BGDxj*e˙N-b ^IN۶gW`)N \$x+.0ћ2Q[SC[gX %|;›dDsj|[!8d &y~:<9\H@0wAT)C|%33H>0r=161P.*y4[ŦkD4>0ؘBlab "8>O''FdA7bmInv>)FZS2yb2j/3(7FĬ$G52 f(Ύ94I%*2"vX-Bxp:kԝ\ %("@x/gF T3 )|;oX9R(ogPQ*:pJfuvXص!RzQ#ACqi!PaY2]b3E6PHu~sFxR$HT`w,^[4:)6l~s9_2!. g ?i)eh|Ga #iejDdAo` 9$S)LEvB,/ePa 窀JI??Qg*[99{ Ӧ3{CK%:GJxI|ѳ`NeL輺tr6Ӻ-\jp-Q ¬Sl|ȃ62ʫy8_$*(#+[6 V#iS7u>z&Κq%]Pр6` Fb"2'-HQ{ /Wkc$/sتyn [@7 w 0aVGΙ }' C) -xU"!9[ϳP(pCZ,*BFς!ns#P#Ȣި>|E+ZSndMOH2 L 7ZCCS_#NK2 D<sT)Ĩ xy+YDիKjzoZQ$:^H1d)&II]u20.PUVYzsF;&np*Z8PN`D @?#x"pLB^{Z-ED]v(М` 1 Cm+KJ] 5]Mi h0jxyۛHy:TAuac)ysoܘaSG)$ ux" mTqvN@[Uj43Y n1i {N/Tj5fc絋X̽99@06| = R < vlb28o Q@F;D:l,ecd-Bl mXLL=#+Y$}n£{)pBS 4Jw.dDP#|%Jp+TUY46?qj,sJT`Jb L(7 qyK&M~ ]g7WE8Erty.GxB5Cfr!h{b#zpZِzNd,gMY})$O;- yq}fq7ֵ HS1R&~ZO(]4fFNHPg6y1ÕK*R[A1APȔS$, A'bCp P4>Y!Ov^\s(rЊۨn p) pi5UYZDtY:1Qq7/Rk @"B?Аox4 s(J(qoc^EcѢ4,ГmXh(b imE e&5C1yvI Z&yeQ`ovYIH޸XB{Π 0\#A4$8ЃΨ ZhN}hة%P}@ ?5d19.PŠjcoWHW G!N4K)f>-tnY4*cN aևD' &_0M& ^ژb-9?enב޷ 򂇥E,d!E|KOP :Yj٭O{ Cfm!X w2\~h&;ꍝgPҲxz_9uDy"H ey|ʠ'[qr|#Rr_kR=y8X]8w=Q-^f6,JEC0 G/Iт04Āc9]"9ÄP*R#LɻXz438/߹zeF$1_IVF2QX).TcfgWUv!! 6B"&Şgt9 hdEpj-ہʁ+~^FsR%a4/}0 Q'`EnɸٕtձW}9 _2PS0Ԟ!%RpB q <$ "ъm|BpZ*dğ_~/` %7y+M"fflnYl SyaU乒+NPZ@_ہ;DTYG:ID"i +9IL{Ћ>AD4EEq WJeE|96pX"HMI'$|K'FqB?Yf"%0q?F=O*æ:Cx*hXԠ~UČ>phamm-0.6.5/public/fonts/glyphicons-halflings-regular.svg0000644000175300017530000017271612643155515021535 0ustar phamm phamm-0.6.5/public/fonts/glyphicons-halflings-regular.ttf0000644000175300017530000012050012643155515021513 0ustar phammFFTMjUGDEF8 OS/2gKX`cmapJ rcvt (,fpgmS/4egaspglyf3!53#"'.'ddqd%Kup<3LJ9D?{dd 09C3JL3akw$B d/5dZgj7X0,Z>d.6dJtB+0W5ju.xL//+01!!|,1,A/Ͱ /+  99013!264&#".#"qOxx.,,nBUPrawי kdL 57% P,XX,dpX[ ,%'7'7764/&" MZfVc $ pQfV\ '  3+Ͱ2 /ְͲ +@ + +@ + +01!!!5! ,,dd&L &7>5%&7>54&&$OAXX@JOWOFS  @JOn)`*^r67)Q7q  OY+/Ͱ//ְͰ+ͱ+$99 99$901 "'#" 6& N,mwȃȎwm,NldXD/ְͰͱ+014>>.d8Zwwy,0{xuX6Cy>>yC@vS-IDEH-Sv@9yUUyG !3! 7Hߒ p??G  /3Ͱ2/+01!3! 77'7#'HߒCIJMN p??t⌍155"&=462#%??%d3||3d L #'+/3+ͱ 22/"3Ͱ$2 /&3 Ͱ(2/*3Ͱ,2/.3Ͱ02/2334/ְͳ $2+ $2Ͱ2+2 ͳ$(,0$2 !+%)-1$2ͱ5+ 9999011!%35#535#535#535#535#!!5!!35#535#535#535#535#ddddddddddXXddddddddddLdddddddddd|d|dddddddddLL/?B +,3Ͱ$2/<3Ͱ42@/ְ2 Ͱ2  +02)Ͱ82A+015463!2#!"&463!2#!"&463!2#!"&463!2#!"&ppXpp2pmppmp LL/?O_ov +'+/Ͱ/#3Ͱ!2 +@& + +@ +/(/ְͰ&+2%Ͱ 2%& +@%# +&% +@& +%+ͱ)+&999%9$999$999901 "'#" 6& 53533##5N,mwȃFdddȎwm,NlYdddd]+/Ͱ/ /ְͰ+ͱ!+$99 99$901 "'#" 6& !5!N,mwȃFpȍym,NlY+E/ ,/ְͲ +@ + +Ͳ  +@  +-+ #$90147 654&'5".;2654&+"ҧg|b|g[՛[ddX(>7xx7>طv՛[[ d 0+ 33/ְͰ+ Ͱ  +ͱ+0173#33333d,dd,  PGQb/PͰK/6R/ְHͰHM+$ͱS+H =99M39$9$/99P99K!'E$96+A9901732?6?67'76?654/&/7&''&/&#"'462"&P-<-1&("/&./80PP,<-0&("/&2,;.P g~~~~Y!)&1,;.Q  Q,=,1&("-&3*:/QQ/:/.&0X~~XY~~d#'+/37!+$Ͳ(04222'/*26333Ͱ/ͱ,22// 8/ְ$Ͱ$%+2(Ͱ,2%( +@% +()+0Ͱ01+-24Ͱ 241 +@4 +45+ͱ9+015463!5463!2!2#!"&!#!"&73#3#!5!3#3#d ;),);  d;)D);ddddd,dddd2 d);;)d 2 n )<<)D,dD , +3 / ְͰ+ͱ +901 #!!!Y|pXd" +/ְͲ +@ ++017463!!#!"&d  X,~  ] ,  /Ͱ/Ͳ +@ +//ְ Ͱ +Ͳ +@ ++ͱ+  $9 $9 $9 $901$  $ 6& 33DVGdD_Vd .+3 / Ͱ/Ͳ +@ +2/+01#333!#3#d)(1,Pp,L J + Ͱ/ Ͱ2/ְͲ +@ + + ͱ+ 99  99011!3!3!%35#,ᯯ, pdc +Ͱ//ְͰ+Ͱ+ ͱ + $99 $9 $9014>2". 6& 333_ޠ__ޠ\TPȖޠ__ޠ__Td, a /Ͱ//ְ Ͱ +Ͱ+ͱ+  $99 $9$901$  $ 6& ##DVOD_Vb,, ) + Ͱ2//+ 999015!#!"&3!73!  2,2aD%  F /Ͱ//ְ Ͱ +ͱ+  $9$901$  $ 654& DV:)DS/ Ͱ//ְͰ + ͱ+ $9 99  $99012>5# &632!&#"[՛[nv՛՛[[vbQz[!z+/Ͳ +@ + /Ͳ  +@ +"/ְͰ+ͱ#+99 !$9 99!9  999014>327!7&#"!32653#"'[vƝppIp[vƝXv՛[zpPPv՛[z d #'P/3 Ͱ2 /3 Ͱ2/ 3Ͱ!2/$3Ͱ%2(/ֲ 222 Ͳ222)+013!!!%53'53'53'53!5!=!%5!%5!dLddddddddd   |dddddddddddddddddL#J+ / $/ְͲ +@ ++Ͳ +@ +%+ $901546;5463!232#!"&!54&+";)dvR,Rvd);;)|);,dX);RvvR;));;dLL+/ְͱ+0133>>7.ddd3&Ͱ62 /B/ְͰ"++Ͱ+2+;Ͱ;+ͱC+2+ $9&/$9 9901;2654> ;2654."46;2+"&%46;2+"& 2  2 cޣc   X     ,rr  ,tޣcct 4  4 X!!7'77',,GGG GGGp/ְ ͱ+01!!%7'654,,EojCV 956nb<//ְ Ͱ +ͱ+ $9 $901!%%7'65477654/,,EojCV^{wQ57nB !/3?CGKO+0D33Ͳ)1E222/'+L333Ͳ%-M222"/33#Ͱ2/H33!ͱ4I22P/ֱ22ͱ220+ ,223Ͱ523. +*2%Ͱ@2.% +@." + 222%7+DH22;ͱ&J22;L+B2OͲ9=F222Q+04?$97%()8999"89$9#:;999@ 67<=@C$9011!#5##535!535#!!!5335#5!3##5#5355333!5#53!!5!5353dddd d,,dddd,,ddddddd,,,ddddddddd,,,ddd ddddd dddp,ddddDdd  #p +333 ͱ22 +$/ְ Ͱ + 2ͰͰ +Ͱ +Ͱ +#ͱ%+ 99990153#5!'353'3535353'3ddd,ddddddPdd[[[[[[)+//ְ ͱ+ 99901463! 2764'&"  SS D TT1+3/Ͱ2/ְ ͱ+ $901463! 2764'&"%3 '  TT d 2 D TTD 2d ?+/ /ְ Ͱ +ͱ + 9999990137!!!dddddL 3 4&#!"E~ 'Y%+Ͱ /Ͳ  +@ +2 +@ +2(/ְ Ͱ2 +2ͱ)+  '"$90153!73#5!!7.#!"7>3!2#!"&dXd5(P>^ > B&  & dD||Z   dL%-1o/%Ͱ)/-Ͱ!/2/ְͲ +@/ +'++ͱ3+9+'!$% $9-)"#$9!.199 /0$90153!2654&+.+"#"462"264&"%53;));;)37S*)R:. );dȐ>X>>XXd);;)X);E5+);;;)pȐȐ X>>X>^dd5"+ 3Ͳ 222#/$+013!5".?!#!5&'./#5m)>$\R+5"(]q *k.tB6,-WBB*. 0 Ɍd )1e +!Ͳ +Ͱ)/*Ͱ1/ Ͱ  2/ְ!Ͱ*2!.+Ͱ% ͱ3+%.9)!9*9190135>54.'52#'32654&+532654&#d); $x!" E4+vOȡY}^LlY3(; G7]7( 3AvFTMaTZd{MRao +Ͱ2 /3 /+0135>76&'.'5!Ms (G !:" 0G9C/Q8$99#'% 4<9 %~+/333 Ͳ +@ + 2&/ְͰ +%Ͱ%+Ͳ +@ + +@ ++ͱ'+ 99 9 901'3#7#33!3#4.+!57#"KKK}}KK}2.!"dpd"!/ c,' 2dd2R '! %+Ͱ/3 Ͳ +@ +2&/ ְ%Ͱ%+Ͳ +@ + +@ ++ͱ'+% $9$99999901?!55!3!3#4.+!57#"! d2/!"dpd"!.3}KK}}KK,' v2dd2 'L/?53!26=4&#!"53!26=4&#!"53!26=4&#!"53!26=4&#!"L X2ddddL/?53!26=4&#!"3!26=4&#!"3!26=4&#!"3!26=4&#!"LLDD2ddpddL/?& +Ͱ-/$Ͱ/Ͱ=/4@/A+01=463!2#!"&5463!2#!"&5463!2#!"&5463!2#!"&Ld X2ddlddddlddL/?& +Ͱ/Ͱ-/$Ͱ=/4@/A+01=463!2#!"&5463!2#!"&5463!2#!"&5463!2#!"&LLLL2dd@dd@dd@ddL/?O_oR +L3ͰD2/\3ͰT2-/l3$Ͱd2=/|34Ͱt2/ֲ 0222 Ͳ(8222+01=46;2+"&546;2+"&546;2+"&546;2+"&5463!2#!"&5463!2#!"&5463!2#!"&5463!2#!"&dddddddd,    2dd@dd@dd@dddd@dd@dd@ddL *:J /&3Ͱ.2K/L+90153553#3!26=4&#!"53!26=4&#!"53!26=4&#!"5;26=4&+"eɦddX, dddK}}K LddddL/?CJ@+K/@ְCͱL+0173!26=4&#!"53!26=4&#!"53!26=4&#!"5;26=4&+"3535#5X, dd d!2ddddL&}KdK- /Ͱ/ְ ͱ+ 9 9901463!2#!"& ,,,,,,,v,,d,LY +/Ͱ/ /ְͰ+Ͱ+ ͱ!+999 9999015463!2#!"&?'!462"Xd*J%lNpNNp, >pNNpN= +//ְͰ+ͱ + 99 999014>32.'&73264&"yz{yII99 "c]s+?—jk֖|ׁ~rBB "koKk֖I +Ͱ//ְͰ+ ͱ+ 99  99 $9014>2".3"_ޠ__ޠMޠ__ޠ__ Vu%4>7.77.'&6?uDmssIOWM?%N~OrÀ~[[.  \7^`GvwsuEYd;^~RlbJ(I43nh!&W+Ͱ/'/ְ Ͱ +ͱ(+  $9"99!$9 "#%$901463!"3!26=7#!"&%7' 7/n);;));ԥrkqq\,;) );;)}j2qkqqUL.H+Ͱ"/'Ͱ /Ͱ//ְ ͱ0+"$999 %9&901463!#"3!2657#!"&> "U);;));ԥgg_hHCVC9,P X;) );;)5!&4 D>3CmL#R+Ͱ /$/ְ Ͱ +ͱ%+ "$9!9 "#$9 !9901463!2!"3!26=7#!"& '',=B);;));ԥV7R,;) );;)Eȩ7QE+/3Ͱ 2/ְ2Ͱ2+99 99 990135# #35 5#3 35#,,',[(,,L+ 3/ְ Ͱ2+01746;2+"&d d2KJL+ 33/ְͰ2+01546;2+"&d d2KJL+3/+014 &&LL3 |&&d7;2654&+";2654&+"  dL73!2654&#!"  (L+3/+011 4LL+33/ְ2 ͱ+01146;2+"&5dd L,L+3/ְ2 ͱ+01!46;2+"&5,ddLd( //+0175463!2#!"&!dLdd47 'PaWaaRt% 7a<aa B /Ͱ//ְ Ͱ +ͱ+  $9$901$  $33535#5##DDQ I / Ͱ//ְ Ͱ  +ͱ+  $9 999901$  $!5!DXDQ 2 /Ͱ/ְͰͱ+ 99  9901$  $77'7''DSՍՎՍԍD(ՎՍԍՍ 2 /Ͱ/ְͰͱ+ 99  9901$  $ ''DkfDf 8<l /9Ͱ+!499. (:;$9'<99!*9 .99949901$  $32264>:323>54.#"35#Dɏ '-"#1D12QE&D  =& )2X23L(5`.d ; / Ͱ/3Ͱ/Ͱ//+999901$  $7!5#!3#35#DddddDd,dd/i+/Ͱ2/!333Ͳ #-2220/ֲ)222Ͳ'2221+"#./$999()9990153>7533##5.'35367#53.'#536vkYȌ`oKȕ4eJKn}PEf!}Im0JjlH F /Ͱ/ /ְ Ͱ +ͱ!+  $9$901$  $ 6& 7'77'DVImmmD_Vۇmmm F /Ͱ//ְ Ͱ +ͱ+  $9$901$  $ 6& 77DVkW̎D_V#W͎ F /Ͱ//ְ Ͱ +ͱ+  $9$901$  $&#"32654'D>8dtap;Dsd7>;pac//+901!!XX#c//+901! XX,,;@-J+/ְͱ+901 !!XXXh+/ְͱ+901!!!h(,*?XXL 5>7 FX_Ȅխg;@-$Du +/+011!&ځ&p&ځ &"# 7'!' "''ف'p5'ق#O / Ͱ#/Ͱ/$/ְͰ+ ͱ%+ !#$9# 9999014>2".;2676&+"35#[՛[[՛V:#6#:0՛[[՛[[F.d&*04;4'+13*Ͱ227>7.#676%>7>'&" 8./ieh,Jhqx{\Sc'C78Fak[)!#==Y57>'>7>76''&'.7.7o FFB:8( OV $9DkC@&'GOS3 *gJ.  &:4?B8- %>=B'Pd!I,  =CnCSm,U!ٕfmS ;4( .MV .n}3!?GC/)Ͱ:/ H/<ְ7ͱI+7<@ )(5>@C$9 :$.5>BG$9017>2".'72>7.'"&5477./=FOsvvsOFFOsvvsOFC-[TzwRY,H 7:91.f1ii%LX( (WT`G//G`TW( (( (WT`G//G`TW( ( `=^8+(3\;hI%E:JY||UIWs|Ci`$$ )A+3B/C+6=+ .    + + + +$ +% + #999$9%9 9 $%........@ $%..........@017>3273#7.'77.547?./7>7&'7=FOsvH=<%Ɣ%Rri' ҷ%k.f1i/:(&-/"0/a+'C. %ZeX( (WT`G/Pegy8(6nUIWs|C/WR&2&?@06@(( 4kbf &3!26'.7 !5#5#o%%~8~ddDDG  " d-dd,dd)H/ */%ְ2Ͱ 2% +@ +% +@%# +++%99 %99015467462'%/#&=47&dkX|Xkd^^d)1ES>XX>1) [@ NN @[ L #'+/37;?CGKOSW53!265!5!54&+5#!5##"53'53'5353'53'5353'53'5353'53'5353'53'53Ld ddddddddddddddddddddddddddddddd2dddddJddddddpddddddpddddddpddddddpddddddx A/3Ͱ2 /3Ͱ2/+99  $99901=!35 5# !7'!735 5#X,ԟzz,XXz{L+/ 3/+01463!2#!#"&;));;)d);X);;));,;dL%)-`+ Ͳ  +@  +2&/*3'Ͱ+2./ְ&2Ͱ(2+*2Ͱ,2/+$9999015!32>'4=!".!!!d,U'5%;) ,'MeeM',,Xq \ #(,.*R~jqP33Pqj~RV,,h 7`aaCF ' FDBCa:dv(//ְͱ+9901 #!!!# #+,}++pX,pX2F"+3,Ͱ,&ͱ22//Ͱ/ 3/$ְͰ+ͱ4+-901&763!7>;2++"&=!"&=#"&5463!7!"&'&^6**20 -*? 2222*L +Ͱ/Ͱ 2 /+011!53463!2!P;),); d);;)dL(+Ͱ/ Ͱ2 /+9013! 3463!2!!,P;),);DX);;). ! + /ְͱ + 99013# #3.**,X,/ / / +9901!5 5!,X,X*!I +Ͱ2/ 3Ͱ/"/ְͰ+ Ͳ +@ +#+ 901=463!2#!"&>3!235#35#;));;));$%dddddd);;)d);;U'-$ddddL )7&8/ְͰ*+2ͱ9+* 9901546?.5<>;%%##"+"&'4632#"&e2"]&/ S7X22 !U   QRJf+35/+3Ͱ)/3Ͱ2) +@)% +4/5+)3,1990146;7>7'&6;232#"&/.267"Ju?zS^Sz?vdjO}:: 8F8 0l^GM~ $M( ))1==1777'7'7'7'''N--N괴N--N-N鳳N-,N鴴N,d".//(ְͱ0+(90153#;;276=4&#!6=4&+"?3!#',d=|.%='='20`dd22ֈXKd9X+d,Qv,Q(%wԯ}dL".p+%Ͱ/3(Ͱ./Ͱ2,/ //ְͰ+#Ͱ#&+Ͱ)+ͱ0+&#(,9999)+9.*901374;6;2#!+"&/&735'!5##dd=|.%='='20`dd22ֈdX}Kd9+d,Qv,Q(%կ}wddU"Ay /$Ͱ/)Ͱ1/Ͱ21 +@1 +B/ְͰ+#Ͱ#-+Ͳ- +@-< +C+-# ?$9$#9)91;2654&#!*.'&54?'dj  m U.UkmTkdd%7   VXK %  pyLN'YS(  SeV8<y/$Ͱ/Ͱ8/Ͱ:28 +@89 +=/ְͲ +@, +&+Ͱ9+<ͱ>+& )$9$&998',99901463'&54?632#!"&'#"'32!7%*#!3elU.U m  m!kT %kW   $CLy q  ' (Sd)YS   XaL6:G7+8;/ְ72)Ͳ) +@): +32)/+ͱ<+)699/9013!2654&'%54&"'&77><546!5!a ' (NLy%p[S22(SY XVjTnkUT  n V   dp 48E5/69/ ְ52+Ͳ+ +@+8 +!2+'+ͱ:++  99' 901?26=%>54&#!"!&5<.'&5!p &yMNS) % Y(22XIn  U3.TlnTjVSdڂ  q: +Ͱ//ְͱ+  999999014>32 $! _z%,nUzݠ_ &*8+Ͱ//ְ ͱ+9 9999014>32 $7'!7!5_yzݠ_,Uzݠ__z> +/ְͰ+ ͱ+ 9999  99014>32 $%333_z'Uzݠ_,M +//ְͰ+ ͱ+ 9999  99 999014>32 $% ##_z',,Uzݠ_p,|+*ͰO///ְͰX+ ͱ+9X@!#$32 $277>7.'.'"'&65.'6.'&76746'&67>7&72267.'6'?6.''&%>72>7.73_zyݠ_" T>9.*-hu"#. F = .2) ( (%  )#? 6 /R+>=>1  " ,$Uzݠ__zY!w F  /JG  s$>   #/ & % I+ *  ' ' $#   ' "qq $ U _<7&6767'"/X!N` {+o+We6\e~\F/n`/37;P /4Ͱ7/Ͱ/0Ͱ3/Ͱ,/8Ͱ;/%Ͱ>C+Hͳ7HC+1Ͱ1/7ͰH+ͱN+& $9>*-<9971 /;$9 $9*-<>$9(99#/;9901$  $ 654& 462#"64632#"46?&54632#"'"&%462#"&DVm. M  R)z  73H3 .  D.  ,! . 1~! . $33R . ;O:/'Ͱ /Ͱ6/JP/Q+'?9  1$9239901327>767>'&'&#"67632#"&'&>767>32>'.'&#"0#vF?8!@)'(#Z .A#{Ey&$4I7Z 0$&\4=k6_v[EC8fOESkZ(G־N9@1*+,#b/W!#tCu$'$4B?#>@$$\475be[<C]W$!7GP6X5=3/-3Ͱ26/ְͰ*+ ͱ7+*$939014632632'.'.76?>54&#"'&#"Pńbg#WCG`+rFBGCW#=>@]aRq @C>`9J:vr3HZo\o >FXGaSPc9w332764/&''7'&'7'7>54/&#"9BD[]BBB i{_.7BB i_/#7BB]_@Ba_@BBBB i{_-87B]B i`13#j+]BBB@E+Ͱ/Ͱ//ְͰ+ Ͱ Ͱ/+9990174>2#!"&7!!264&"2- +@-, +;/3Ͳ; +@ +D/ְ22ͰͰ2,+:222+Ͳ>222+@+'Ͱ ͱE+29, 9-)9;':@C$99013.#.54>753#.'#5&'.654&''WJ.BN/!XOd&ER<+6J@" MNW(k,;+@GdfC1/*Ͱ/3Ͱ2/ Ͳ +@ +D/ְ92Ͱ$2 +@ + +@ ++ͱE+8BC$9  *13$9,9*1-999,<990153&'.>7632#4.#"3#>36327#"&'>7>'d /-aʙDP$%T)!):#b!!L<2)O'*2'V7   0 $Xd17;V^(Xw4K,9S*3d2;6 "B   7G  +/ ְ ͱ+ 901 ## ##****,,|X,| "+3 Ͳ+Ͱ/ͱ22 /Ͱ/Ͳ +@ +2"/Ͱ2#/ְͰ+ 22 ͱ22 + 22ͱ 22+Ͱ/ͱ$+999 901333!5335!##535!#5#735#d,cdc,dddd,|dddddd, dd"+ 33 /Ͱ"/Ͱ/ͰͰ/Ͱ/Ͱ2#/ְͰ+22ͱ22 + 22 ͱ22 +Ͱ/ͱ$+99"$99901333!!#5#5335!##53535#,dddd,cdccdd,| dddddddd|L k + /Ͱ/Ͱ /Ͳ  +@  +/ְͳ+Ͱ/ 3Ͱ + 2 ͱ+ $9 9901 ##!#553#35#**X,dddd,,| dd |L k +/Ͱ/Ͳ +@ +// ְ ͳ + Ͱ /3Ͱ  +2ͱ+ $99901 ##%53#!#5'35#**Xdd,dcdd,,|dd  dd R/Ͱ / Ͱ/Ͱ//ֲ 222ͰͲ +@ +@ ++ $901 ##5!5!5!53** p,,,|,,, R/Ͱ / Ͱ/Ͱ// ֲ222Ͱ Ͳ +@  +@  ++ $901 ##535!5!5!**,p,,|,,,LL* +Ͱ/ /ְͰ+ ͱ!+01463!2#!"&73!2654&#!",ԥ;));;) );,ԥA);;));;)LL"> +Ͱ/#/ְͰ+ ͱ$+ !99 "9901463!2#!"&73!2654&#!"-,ԣ;));;) );M,ԥA);;));;) LL"> +Ͱ/#/ְͰ+ ͱ$+ "99 !9901463!2#!"&73!2654&#!",ԥ;));;) );d,ԥA);;));;)dMLL"> +Ͱ/#/ְͰ+ ͱ$+ !99 "9901463!2#!"&73!2654&#!"!,ԥ;));;) );d,Ԣ?);;));;)pML<+Ͱ/Ͱ// ְͱ+99901!5 55!2654&#!5!2#,p);;) ,p;));ԥ!(/"/ְͱ#+99013!327636'&#676/#".     KJ  i  VL?+ͰͰ/Ͱ/Ͱ /ְ ͱ!+999013!275!"&5463!5./"!5 5,/5 );;)]]X,p;));,$T+Ͱ/%/ְͰ +ͱ&+  $$9#9 "#$$99013!26='#!"&546;7'#"%'!',Nz;) );;)vJdabI{);;));zN V  Z /Ͱ/Ͱ//ְ Ͱ +Ͱ+ͱ+ $9 $901$  $ 6& 462"DVrrrD_VrrrL . +Ͱ/Ͱ 2/ְͲ +@ ++011463!2 !!35#  dd   pv2L + +Ͱ//ְͲ +@ ++011463!2!!! 35#  ,,'C^dd  ,2L . +Ͱ//ְ 2Ͳ +@ ++011463!2 ''35#  1TFdd  TF:2L + +Ͱ//ְͲ +@ ++011463!27'%'35#  aapԕdd  baԕ 2L . +Ͱ//ְ2Ͳ +@ ++011463!27'7 35#  |bԕcdd  daԔ2+ /ְͱ +01  %O`w8dLM/Ͳ +@ +2 +@ +2/ְͰͰ+ ͱ+ 99901546;!3+!#"&35#dDXdd,pg>@/Ͳ +@ + +@ +2/ְͰͱ+ 99901546;!3'!#"&%735#dx~E{xa{%dd,xp{x`{$#$/ְͰͱ%+01546;!3'!#"&35#7'77'dgXddd,gpgժl/Ͳ +@ + Ͱ/ͱ22/ְͲ +@ +Ͱ+Ͱ 2+9 99 901546;!3!!#"&% ##53dp X,,d,p,,[/Ͳ +@ +/ͱ22/ְͰͰ+ͱ+9 9 999 901546;!3'!#"&%333 53dnXd,np,,L 53!265!5!54&#!"5!LPd&df /33ͱ22/ 33ͱ 22/ְ Ͱ  +Ͱ+ͱ+ $9$9$9999901!!5335335!5 553;5#,pdddd,ddddd* d/:+0/ְͰ +ͳ +Ͱ/ Ͱ +ͱ1+0173737+"&5%;2654&d22d22d22dX $%dd,dd,ddpAd5!sRtEdL38+ 33Ͳ 222(/%333'Ͱ24/5+(3 99013!5"&5!#!5".546?5!2!4635!2dKK"2pK Kp"28 &v& 88 x88 &v& 88 LL *.2+Ͱ/Ͳ +@ +//0+$9013!2654&#!"!73%!!5!5!!%35!'!5%;),);;));di'Wdd,,'iWd,);;));;)Dbd,,bbdF 3?6&/&.'7>/.>fgї{4vev-+fg=!.vev1L@/+ Ͱ(/8A/B+  /99(&)2@$901=46754>2#!"&?>=6 6=.#"m&RpR&m>d|~\ud?, 23/2  23!""!A1)!((! dL+/+0135!%!'57##5##5##5#dL}dddddddddȖdpddL $ +3/ ְͰ+ͱ+013!4&+"46;2346;2d,;)d);;)d);d;)d););;)p);;));;)DL'+H +Ͱ/,/ְͰ+ ͱ-+ #(*$9 &()$901463!2#!"&7!!!#535!3#353#5#3d|||D||d,dddd,|| |,ddddd,dp,L'+H +Ͱ/,/ְͰ+ ͱ-+ #(*$9 &()$901463!2#!"&7!!3533##5#353#5#3d|||D||ddddddddddd,|| | d,dp,L#D +Ͱ/$/ְͰ+ ͱ%+$9"$901463!2#!"&7!!!5#35!!5#35!d|||D||d,,,|| |d,d d,dLD +Ͱ//ְͰ+ ͱ+$9$901463!2#!"&7!!-d|||D||d,d,,|| |,ԖL'Z +Ͱ/Ͱ#2/%3Ͱ/(/ְͰ+Ͱ+!Ͱ!$+Ͱ+ ͱ)+01463!2#!"&7!!!%3264&+;#"d|||D||d)69&6)&,|| | dTVVT,L#)H +Ͱ/*/ְͰ+ ͱ++ !$'$9 "&($901463!2#!"&7!!!#535!3#35#33#d|||D||d,ddcdd,|| |,ddddd,pL!'L +Ͱ/(/ְͰ+ ͱ)+"%$9 $&$901463!2#!"&7!!!#5#5335#33#d|||D||d,dedddcdd,|| |dpdd,pL!%+ +Ͱ/")33Ͱ#2/Ͱ/&3Ͱ'2/,/ְͰ+2!Ͱ!+ͳ+Ͱ/Ͱ"+%Ͱ%*+)Ͱ)&Ͱ&/)+ ͱ-+9901463!2#!"&7!!5!##53553!5353#d|||D||d,cdcd,dd,|| |dddpddddd  y /Ͱ/Ͱ/Ͱ//ְ Ͱ +Ͱ+ͱ+ $9 $9 $99 $901$  $ 6& 57!!!!DVd,,D_Vddd  $ /Ͱ!/3"Ͱ/Ͱ/%/ְ Ͱ + Ͱ2  +@  + !+2$Ͱ2$+ͱ&+  $9!9$ $9"! $9999 $901$  $ 6& !#5#3#353DV,dddD_VddddddddA r/Ͱ Ͱ2!/ְͰ+Ͱ+ ͱ"+999 99 99 $9  $901;!3264&#".#"333qOxx.,,nBU:Pr,ԭawי k,A /ְͱ!+99901; >54&#".#" ##qO^yx.,,nBU:,,Prmdxawי k,,dLm7!!'5!33 33dK^KԪț--,,My7)327!'32654'>54&'.#"&#"y9/iJ8,K^K.6Ji 2;{Y^t Ji5XJi--2iJ f=ZYqtiA_< . .::(dFHFddjdddddd5d!u,dh"oddF:.JadP9'ddddddy****f0HP6,Lrd"DL 0 ` D V >  v :`L&` b&bL8,J|0NZ2F  * F n !j!"B"#~#$$$%%%%%&Z&&&''j'(8(d()6)*n*+h++,D,--.f../:001&1~1223`34455f566\67 7`778P899X99::^::;,;t;<@>H>>?0?@@`@A"AABBCCD?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~glyph1uni000Duni00A0uni2000uni2001uni2002uni2003uni2004uni2005uni2006uni2007uni2008uni2009uni200Auni202Funi205FEurouni25FCuni2601uni2709uni270FuniE001uniE002uniE003uniE005uniE006uniE007uniE008uniE009uniE010uniE011uniE012uniE013uniE014uniE015uniE016uniE017uniE018uniE019uniE020uniE021uniE022uniE023uniE024uniE025uniE026uniE027uniE028uniE029uniE030uniE031uniE032uniE033uniE034uniE035uniE036uniE037uniE038uniE039uniE040uniE041uniE042uniE043uniE044uniE045uniE046uniE047uniE048uniE049uniE050uniE051uniE052uniE053uniE054uniE055uniE056uniE057uniE058uniE059uniE060uniE062uniE063uniE064uniE065uniE066uniE067uniE068uniE069uniE070uniE071uniE072uniE073uniE074uniE075uniE076uniE077uniE078uniE079uniE080uniE081uniE082uniE083uniE084uniE085uniE086uniE087uniE088uniE089uniE090uniE091uniE092uniE093uniE094uniE095uniE096uniE097uniE101uniE102uniE103uniE104uniE105uniE106uniE107uniE108uniE109uniE110uniE111uniE112uniE113uniE114uniE115uniE116uniE117uniE118uniE119uniE120uniE121uniE122uniE123uniE124uniE125uniE126uniE127uniE128uniE129uniE130uniE131uniE132uniE133uniE134uniE135uniE136uniE137uniE138uniE139uniE140uniE141uniE142uniE143uniE144uniE145uniE146uniE148uniE149uniE150uniE151uniE152uniE153uniE154uniE155uniE156uniE157uniE158uniE159uniE160uniE161uniE162uniE163uniE164uniE165uniE166uniE167uniE168uniE169uniE170uniE171uniE172uniE173uniE174uniE175uniE176uniE177uniE178uniE179uniE180uniE181uniE182uniE183uniE184uniE185uniE186uniE187uniE188uniE189uniE190uniE191uniE192uniE193uniE194uniE195uniE197uniE198uniE199uniE200KPXYF+X!YKRX!Y+\XY+RXphamm-0.6.5/public/fonts/glyphicons-halflings-regular.woff0000644000175300017530000005543012643155515021670 0ustar phammwOFF[@FFTMjUGDEF OS/2C`gKcmaprJ cvt (fpgm$eS/gaspglyfN <3!headR46bXhheaS $ 2hmtxS<locaTP4VNmaxpU nameV|ԯpostW@FiprepZ..+webf[XR=  .xc`d``b `b`[@1  xc`fidt! B3.a0bPp?G  I0(00 a x͑?K`mHPDwZ]E :8 ݺv"isEC]|%"2$c=LZMhcHȷ ӭ@r]5UZRG=hMԖvC*#4BCqGJ])qhA}k%@G:ANF`M̓(R<'ڈfYQ*.eYW_|ŗ.w->S>C+7-6d_)_-wa7Sh(x]QN[A  9{ Սbd;i7rq@D گH!H|B>!3k4;;sΙ3KʑwkS$6NH덌Zlfu є;j=o)M;Z ;4: !qKͺb00.?R4j˰Ѽ34@Skm!qK˦6$tUS]`*́Vy &ҷ$, b 9@HƼIJ;ㆵƑ6O'ӿZxڽ `9ޛf1+DQ0Q0c4I^/ޖX|6-Yϙ!ՃF gТ%g"7=^uF3x ]}EWt:基𪯦1Q~ {Myϔ Q+-Ƕ"9FڿſȟHLQ˜ŗ)%3'KVZپd<&I__`XȸFH{xz3$d鿟z=C8[~vt{^0f&ǔBU`Y2̙s80MJ+F)y;&R{}bM;̗gIIańDzA$8f[o_~ ?kunrX\=s_]rB{@>]fr{ czr(񘉇+, ~{n&u=\ ERgg|>(vT Dr Ou,T!g,}ˎsGʝŽ?|?y%Ho_"^c\"MTG wR/W٪([+Gw18u8wdgRL'0e9- ()ҚU%SlU-83JGNqU(*Ӳ8Cr#_grV]( WJKu_k[4<*ED{wrR )߯8RsT]/JAQrsrt^:0~_x RNǶ֏0|F'0dFוd2HI 1EG?J-8LϖN|$OaLdL'p>\ BǷ':m8^ܰ3‰0 ='㾜9 jJE9CEJl!-JsL/~k,PgSr!әڲB@RZ҂*mco knfKwS\ l$}TAg{mEy|x/KrJsUc0aDhiG>8]4<=}Qf|?v#ǿ)(2<08H*DǾ#z: [?.d.@Nu3D0 IP} A-5VM RP 9%TUrs՜$hs2s6L,(}@z Wi)U@ PCK}N)׏.2`XV˗P`>.gܥΓ='dl3پD+ }Ͱ )$SB* 5:I(Ȃ6 J^c,4:܊[ =d[)43M;ɗ /̭{Q2:^Fr6ϞmO{ Hp?kr'w }Ճ_nNsȜ;ə3dm֟mB)~kŹ ,,L#ۗu *&*.8P!\uZ]ì҆i9F% ByL-Uꁭ[Uro^끋z]gPDu"R_I^nzB<}x,N[VGe}lN@3M$kq{YqdvXGk5 ]LLu{͇PW7Q=L_2@:Y$^s- mۋr]mFdbLN\X- hfI!"):Wda=']~ա872gx)) ΪE![xYqS èJ^@p\$prüG䵃p̬(Îw˔N Oy𔑈6][[x[Zݺ=M=}߇dO{gO|T Aj+=0/UZb 3CNx fdac$9Oɳ?<;Vm=o6=+@95=1e+S $;.*˼Mہ*+K5 _W ES}~ԏ"x"3+2f5HXB d$(-{wT7hp" _5LP_Q{lK$G=G7}YS+vUv! 'eէ>*y6l΢M ,e3b|ҋEEW2bq"&FzYkOēˏubTpL} O.MG\Tg%oGo3r}SB)H lÉ!A'I8'[әU alŌ8CN*Y4^ {r,$"Y[ ãsDbV\@ˈhА{(,g _-l9j$w\ެW'n-\rU}aiT[eS?Tg$3`-fqxi0Fr{\L9չD3Pʉx,)F8< h `/Z-.D 4ZJ0F%!;fG&WU*Juʖϒ;Ļ$\|gUZ*˫y(N`eJ@LT} Xڧck {өلݳ_084k6%~OTݒGљ G/"`TC ]́$(BEMFEF,4Qxvi棇^Klel !w%zQ[Emd x hs4?>Sד͚S8jI e\[iP0leQE}L+KkWQH\&44!<)+ |J?q]" Ž}_9~NMtO 6q ^sJZfm(݉ϔZu-4Lah>JX`9ɓۇ[=V:k6whToU'YatCp .VQX0C"0+DF~C]`>ހK0$B(mAGe;5ߖ1 ۹啯r g>%}k)' gLg˝e껗V6>KWnKR{#AhĀ(t!H売s蓥+LO[u6:#0nL/p'Oo⩄v_{ s_ s`Sn2kcQw[#TPj.Z0[@Q_CO9 r4_kksdZ2P-Ҥ$l`丘яKH?uuqȬODL-:~Kh~Cs:͡YM .,b51+AL܄:B2-K h 9^ ǿeOAcfj`f0`eD=I@445 )J`^MH8Cgs90p[=8>U[ j`Vmo"5lWfʳ?kqFuH]N)qгGhǵW*?: u½M:4sZb兵| u/\&aߏtuEܑ.0=t 5s({>aris=@$+X] ]Mퟚ87R#Fݺ&t=^wWұ$=he6wq g$#< vG !{®倠3֤$ GXCk*&^Ty{uڅ ;+:gx.[qW{dtşE܏:x|MbG׼Zt]hD& b€FюCˉGer̬~`78y F4[fSɾAsW-X/M|i5O/]g~k_yi\}U{x7(xѷm%Kgf& k:Dj8KӢKH _Ԇ԰a8FQH bPB%O.H6^&(:IcD̀b($m4;}yrueIwoh+ow޹0K .[<ϽR3feTU1k٥ ^E"SP+`/FL֧lka.B$3b c`o]sddY_0{~ -k=H41S2 uȹ㵗7xkqS /0* eDƫm^'-3")kh>2-ܡGI.P[:C=?Z~$3sQV=pYD uJ./LB#i> 0YبHFI>$fg 7= |O} +ie/Ճ/W3qE9h Hd-AOS*zrXэ媋OVrk%}YB?݉Y~z5S I2~'F4{`Ԁ~Cxz̅2œog{7$B.-(_V"w ]/# S69r]{%¸+Js6~i. C:p C#7",0;C~ "*)cDc s5(4!Yy<3ws&' k|Gauh|Y֪wݫN>AۨNuThPT ;Oͣd/{H] 'Nh-Fbm[?f׍)&a qs}3~%%Z3 3)Y ٨>vP"cʋұ|4Y144GKj̇3B4Y{9Je\s{g=;CN'b&q"LqDd7MU1׈wR}OEň'&Ȩx `+p1KpZdʎ@4Gʶx7LC\64S- 7zPsb_,sÞ"L +D,ڵ8^>7L fe@A)OTq8Ws TN^WlrO|+R O +έ7KM߰b~4E_"9_ Xϛ%~3Esq4/q Y'JZxm8}W W1SU'Cp| 9vNgwTs?_/${@r^ av4'N&])PӋW>au'?owE- 8OnXW>)La8VnJ1dᱽlD>zIu_֠}v,ҭC`QO2P/@s*P74U# ?$/!yl/|kC دnzt3kSɿR Fq ^u+&԰`[\(kMȔ'K7NI7o&ΌG`~/N{ Ql]Wb$7N8nޮR;׶cm ͩ|qf9ZJCZfit 5/JƵ,8i3.W!?oA|3xǒHߎv3o(%ix{ dN$Lczae)=9 ԆŸvf襝ѽjghaw1'Eir כwTMUN ^zbXBm aR±1P%>Gz?J Y,{is\~Wy 7˵hbX=RQou%Bh׀e-/#}'YZ;ˁ)^MRaC:4|0&1-V 48iz:s_t-eW9qfy7M7*ƿ24uo:{\w?ß^3=U#{3Ϻiuk6+ZZ^!ΙK?fpQR[UJ058gFMq{eX }a.&_cS>ٗJl40#nK y"#39[kECg1;9l=˙||Rjӽ|!g8Qx!VWН! ޙ[#7vKPxԊ.)7zf_2)5X!3EλUަ69-k[җ`ef2 .OUeN R B BTYs hjo@c6lY!U@4Ҋ 046[~Ŗ/~q5fw^yJ+)f{Qs%/Ҷn ׵a6}ˆ3wN,L̝Xt Y/ohmi `  '1_cΚ%:lP/_3REq;͡ؿ8]Ns{l˝-wƍ`+~%د+~v)=t%jFp:H[םMd`PHz-<.lS~u+cLf3w,o[w_sѓԭA}&_ڔ08M6tض"/13g%fh9z| $*waVc(rsGFIP9Î8e͒͝儯VZN%`hðKP| "dH\0bh0&>'ٴ~zŠ7۽=2^~X}ZGGkMiY^ѼlYFp5{'ua(jR9eV1F? 9_va.)T4ľ_0$[TKa¸@>i~YФm/eǍ3Bk|[}M(\`9pz@/)pQR}X OϩO!ˑ(ll1?֖զ:Im25UN3=4oiL2 /Bגu'o6"G-j'4-sW`a&"OZOzWQKCod ;_[k,su `вk eitÈ~ %0L;Hi^rÆqKr3<7X aY 3bsU_Iȼ0 GXAE} %G=SQߵYIDNV˭gh^ ,u6WhFk$2՟-ӜfC9G T,FTА345yWt^mt{3ަ.^2c;HM7:"rz_ JVq6$w+[PSAAԷh)K ;% eov?>z,\5EĘ44vcXk֪w`D ,m-dAGg$D%.eqhH:~h(~y(mpGݎm>\\'#ŮNnk~_ r ڰ%:r3jz{6USglvaaaiMڛh+@԰LEwօ.p^ݭtªFA=I9 ٣OzXM"0S<0> "7Q w2 ȓ鼄h5kt%4Cۋh{h|-9.Zrm7ͨEr݀~I¦V@9OH=3:BhIV*Az2G,MLbA.tXE^՛ MNI1569r]jXy3'!˗%=E}ۖr=ˆ;Uӫ/d8ZfSUp8288̓'43t}E7=iC]6tȺ}VLzM6`AD2=\$XP=%~=zC,H%]_}`r7]` 4lPb%7u-دUKKaWI  <@tm+I=DzT}W^BaFb:Z{_޼>)rRi$#6_\G>sU8ichjI.y25mm"}F)͖LYJ CNi~ G c2> K:i:3ǸZf;QvkVL 4 =+`UQW}M߫`H/8Џch'ٷkW^~/w>,a~wlwVS(,ӾrYIZ )$Qk'vHjpUvѸɂ‚٦NZO~XJ08h[0HR ?03;=|F: k=lg_G0niI8J\,epu>O-lzʹZA' tq$"«'l\Gڎ v΂ #pO>6ﻢ-oÇ;}\noCdo, RU@UWo`J)9ٯ`SRHr9jDaeqU+0,7%~ 6 jf7P@’y3GgDrgl:kNWk)twaT95{6䳶ӎ sYsWm:mʐCV :+*KnM/̌jm y^}#F$ƺϵF ~1ͷǯgԏ#d X5`fl}.8|.D5h~ uGavTL)Xd0mY\cNJ'㊗n_ :/72Có|gl\ym fl<`ٗnϦOh,ϸyI_tjiIþS/=R7zh5O@` mz>`'@. &D/13FH=˝Fl$~&Fvq,#dYvW=lYŸ߲om{rpddD,MWށA%y4VzdZwkU5 ʦPU\Q^_<'\VhڡE[R6ұ 8K?`1Gdo/+W@Ł& TZktt8HhUx'dOvN-'~R GR0=cr7O=.INHwcn9e@f].Y30 NodnJ :澩ZM0WDŌnmWo0 Wܘ1pq4|)q FĢw7M_Iu6=,]}y19w`'oѬB[ywKk{]bY+Ii9NL-=]3/YخVk?a]L\׶ Qmt:k~@ ? *v(aMlղ>i*RilOβ@_U;5Rҏo#bN9k'; KF,u j hIJ>BCK(>I紌}ђ4C&5lc~e7>v5y$I3gK/D fۗ:eSke(YDhfke{ g/_ݻ9$u7C}Vڬw*Z w5Dj?ņD(%+T4.Y|gi eFiI ݂=VF ~Ƙ!mhbZbx`o;͓rFGC2@>K8,m0.-#_,Ԅ]}ndrMiDX5ZH.*"fGii h8QkT}1"9x:[ !hW<8: * 4q:G, (|ލݴ{`X`E>;S8X4DD|qHP5M5@[iġH?ʕDR p&bjD\T;$`Rl;I,f|m58ZK/X핓jփֶ@tڶkx^0 |,t^I\ux+z3[՝w6O-ԂcX=EQ\T+whjЋ9 ThPd h%Sjfx%!tFX&Y!K}#iu#G~kxcFx&,C4#?<" wF96a%hLl fK S_+ZcPdD@Z" cB'_._Z{[Ex0>lB!.^Aw*Ō%F1׬%CcYy)o&"Îg<LT1-^`whP@lCM@ieVp: U$Q9 iiE8V-c5ѠHm"딠{ݴB j@MˮUT?eQwȟ'48{eup2r!%ٯn<&a?j?xdA.PqN+ǚ3Ԅ잱 !uR&{ck2Hq*̥ FH#H|#[6<왲1R!ZJ4'k^!MsdZ1:n,x#w؜])V,< 諛CôbP?B'esxBmD`*u$~Dˣqw٦~!{5dj7w͍` Nn^m垨࠰L>+DCg*Bii(8 NOX?!M_ Iݔv5h破sIctro 3@:]ǖN (`i9%$v2@NJfM)hVFͪ+ 4;z #>RaixLx%$bG BV[CHNFA(-o&(TPh_=؈%:6:g2v@\]+z:2z'kŘ Ɩ΃{F7c 氽IIn,Y9|\dҩ#ZZ+ > S"Y-hU4Շ xc@n$jOP9J 3!at[nz`ֿ_ѣzh iDrL{^Z]6-fjNيK>K6ag՘nRGa&EڛPgbxyIlVOFV n k`jD{`s1 ڏoe#^)΍46^0CF#m9%W-Vڻm9)|Vxk&[hSh!-I~>4pKn9(8@Qɛ ͋-X\;2ݖ$w[Ӊ,9k|Nrgl'?̴fLٯk R@,hZ8J*دnGe)褢$,sN4ZtuEb 0ScPiWk؜b}v86[qq1.!!|F;a.7a'0MRaN"{;_<" xz][v;wht|~}w<{awq{l(><1׷_ 㚡y{'eJ#/Mh_f`YhP a.+Q4+Ik%/v?cI$%Wn^B.vH(d2nŭo;3AoA2YMKV#vxR1)b .EڢVK}bp';FD4=]%=}2}zG7nкWvOsL;ڴvoJ;!MTi zZ\}B~p4&&>KJ漢jlOp힮}>%֡u#d[V9<qa7nr\u);T]xx׮<#S9uR/ ųآ1AY*.o%6i:.$<.vk߾=yiq׮ݾ[fMqZ:y:Bg&̇Xqۉ уp3 hUO)flڦbӮcW 6#D`S5űU|>24  Nf8>L)ZU5 SI0duf Ɛc~^U]4)+)5aQh^8>ydk=N$HKs+)BH*$iirߙVhhRCxc㺇R^_ч)ɻ& VY]Wԯ6NCDλиw;A:-àfMp ϖ[hNK,:@Q,>TwĶxiJuVb.>Xv)AbQ a9ʲ?V@,:Q'B Fxb| ~уI 7]V옩bҪ f6j4>kE_) f`|thO]NI{2 G%36@0$ D`;.['&%_%;̠7yOcտx `slRـ uGf1hV3䬉`h||k'9/(_U/~xS 5蹺} FI`PCÌ fݻ`Vz-N kdLe "7y8t |f]۟/X4 [t9;p)/y#ü@~- d,GZ:S.{Jɳ0.xc`d```dp\SO 9_@ f 5!j`aXjz4#f1Y yI!+VĮl~(zP T;uv43 ' A g {c P<n@ H !‡Q^@,*L@ gE ,G 0  'G(Ƅ&dAg@)` sP!HO?*R|xc``Ђ4% cc *s̘f0azǬ5MͅS8 88pqqpupǎg o*>+.;7|: NJ%,&'#$KTMtX-q6M$u$gH򒪑&uMꉴt6_dddȼ5=$' %FM~G l Z n y >)f)QrR:\NEDe3U9TߩEuS{Χ~NB#Ec<7ڛݧL/Mo/}+ mju8v'O02YdbfL,l9y?[,%,#,Y^jfc]b}&掭 ;;=v g909$8lqTrpùK<QˆxڭRN@4I8 "xFѣT(BTgŃG@ç`]$ivw|S/h+zX1#óQn“jO O!+#Px3g "=!߇ahn]w,囖&<5ب#G4Ha·vp];Ă߀\>Ɛ/wUUΗdn(mzWC}=G۸aEbgRz)WSiyDSy=u2XtX\@ j NUqrX#X-P>&]~6};ʵϪ@B 2W32,2c ɈxmUהeFـ`ݭs(*vwwwwawwǁ?Ÿ^3kf?5k:c: :E?;0333q,x&(8K$R,2,XXXUXX5XXuXX ؘؐMؔ؜-ؒ zT4ٚmؖ؞ؑ2`م]ٍك=ًه}ُ999C99#99c999iLg's 39Yf19yY|\|.B.b.R.rJjZznFnfnVnvNn^~AaQqIiYy^E^e^U^coo __ ?? i3ϙ fvS; pn-ʭmݾ;ypqysgFna_jxx<|xk'vb'k/b/bW+ {^aW+J{^iW+*{^eW٫U*{^mS۩vj;Nc^^ck5{^kkZ{^^^^^^^^؋>­{;GGGGGGGGGGG}tG}tG}tݧ?????????; =]3@KPXYF+X!YKRX!Y+\XY+RXphamm-0.6.5/public/functions.js0000644000175300017530000000222212643155515014426 0ustar phammfunction checkAll() { var everyting=document.getElementById('post-checks'); var boxes=new Array(); for (var x=0;xfxJKH="ic6d Qzٱ3,貆>HIENDB`phamm-0.6.5/public/img/phamm_100.png0000644000175300017530000001037412643155515015033 0ustar phammPNG  IHDRd, pHYs  d_tIME 7-JRIDAThZ{xUՕ_k}=BDqPԱHRZm|Ngtjʌ8EQQ4 j44!{k'1 cܻY{^k^뢈(" d"H ޾w;IqN9&Y,af9|}?X:RF Twvm{~9ZRs0HG[{CkmE!smu( ^?i_/ EJ<ȣ^a}K ^Ad_%;?dl#W^F>VLi?$mGOxq/gUgƋ!Nu (dd@V:ϼϽ 7â܀% ౸ ;_|-Z11 a090>&μʯ%K |! _%3U.,+@@ 520[;=|5֊@0 `I6޻gӧU{FSD2.d0oH7re߼O8Ii4~?F//GD͈DLYԡ&u_||UEfp%&&)IIs kcGsUsfb];_ww^]KС׷-KƍZ+E W,jW1wP% cN)/ .1N[l ~ P﷽TR}MrZ[޷We6* C㞟ϝ5f8e4R@diDָރ{7#/οUUP@ 0޷ 19 (ҶdYoxq@Jt`<к 3+cHAf3)T6ܚ]q̻xӔ m{ .HP &ɞW~⛮^(+AN )]v4>v2 mP3HcO<ӵζ7\[1zR H TLU 0!zrm_Nc 9Zus~uo\n mD$' $b]Ovsb_[XR}9JHi'D0Ĩ rp&DgRvl}7w-2lT#P l{{̕+Wp8|lp&9r$db**[貒H%uYxXDS5T0Xܽ/v#)O6 S}\# ߜ' d,yLdžDvVJ3d|PI%`[+:`)0 @)ܜzs+?VWV) G3YaSwת1~3,3E~:h]AÓKdf֞(LH Xf %S* ~"1=e?ogHqL CU*0䜥$ϱjs d Ex;:yx#h ܛ,k/rEhݿL3̌~v3Ncӏ9gu`͏]ɐN/%;$)H]y1BWk : `! G:hIL)"_oSV>BÇ;:bŽ;o+;L~(@0G)aԖ܍?@г$ =zӧ'zIhD D@9fT!* Z!uѵ$ E+yrbk%$a@CZ @G~m,,.=}Ai$X Y{Cl0jPHMxC!ʆ9d3dA2I &lx (G8h&SCР\xN6 p9 q-H ̀()@a"CL Ǚ,Yp%F!FG1 xn_ `^ō7ܠ-, E"e#ƾs9Bm$ FˆA"d *iE 0 YL,@ Q#j@(F[~i*`5'6$THsyl95 `@6+ JYu4Hm@"B05P(".}Ol~K>`L'| ?]}R<bY@{^0H% n<jxA-E݅7/|-൬՝wy2oC \u'& Z[F߃`!FA1 .`8+b6l`Ǿ}7mW^yyᰡzh+j}5UTW^uyM?cͲ%g͟v0"#! @A"z =%nu6YsyWO G޳@D"ǝTZZ:rH˲MDԩS 1?q6tE&TLK.* i$pL 8^Lb^.ם6d!uGtpLt֜EEÔ҃U;X ,Xv vm6Fo߾1c ;~0 D"eHNL2l2l2Ixm3Z  }a9gN\U\<Xv:X<D͋/\/HWG~OE jB& xd.7]ݙNO C,(-,9+3+'OP1lİh@) ! 8nϚ={-[V\tf𵴴q6l@={83j(󚚚&Lszfmmmnn>v0! p8XTT\\\3#V^/8p`ΝӧO2L2p恀=qĊL&d\MҞ]R59c۶eYG_I.q1bmu]0R;NXy\nmZӷO ݈8NЌ3">|UW]u뭷1^}w}}}[[+3YyeM0/OGDĉ/u֥RC"bi-Zt饗7F=w/7I.\8|˲z!cg֬Ypu=|lܸqD4jԨX,t`XEE޽{=km=P}F֪σ{$}]t7ߌdr"'k,Y.cMWJi0K$g*UXXX__9a-ɼ+W{}RaÆ=#Wٸqc.[h}ijJJJ&OO~033yVSSO1[l!P({5kK}3}-Zkkkt]wوxb8FcZ ʌ1mU>gclٲŋpWfӁǦFbuuc|#9~S?d0n]ĪNX'w*l?+Vl߾n@g)=4> 8N^^^8B':`رwÇ?#;OC(rgȐ!ǂZ(d"G"c7("HĶ۠D"Y箮.u5?@~~ 󼮮."WJ)3& qh6:;;-ˊF߆ + p$x<F|ߋtvvj0f===}EOIENDB`phamm-0.6.5/public/img/phamm_icon.png0000644000175300017530000000145412643155515015462 0ustar phammPNG  IHDRabKGD pHYs  d_tIME07LIDATxœYHTqƿuwlQµPQ TL*BJ# 1E*P-$ [([L!@Spa4-SGgtltxC(8a_WZt"ˇO2LW鬵Xkh#ewomMZ'^$S'%hT֋A9u}l$`[O9WjQ~9h^EmL [peV7y2Z{ ʥ`T7ysXZʥ?j6}Y:G͏Ux6+K ]-zҷ`{v %%IO􄄙jZMaGx׺u!~`?uwɲcQ&q>YUnj4No?Jٷ[J ua΁pvv+n1E{Kk\H⅃K#/Lc ϫ(L18'!0O`tB'2`IK7pH+:`fB W2s$*D+LA 2Hrw0! %3oW\KVIt/`  ;`d!I|l~iijnKT)LrgGL2iH ,1<4wF7O>zŕzmj Gud nWl+<˼YWH[ZZZ֮o8dIENDB`phamm-0.6.5/public/img/phamm_logo.svg0000755000175300017530000062663512643155515015526 0ustar phamm ]> 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 KSFjj6sQ7uzpilMmdakuTwbmefBwYH0UeqyqxVSjEWTFOi4QlyGcbnyi13MjgHaTVI+OUsiuAwAk ih5MuAMrF45DODY+2e3ZMcBBIYr04KdXpZfqxJB6LMWR6aKpEmlRcg3rTaJ5zyk7e0wEdjUnW188 W2QS6eR+NLoa6fbt+YZR9Tfb8VmIZXNUuvWc17MmKn2cR8Vobh2ZHUvSSfX32ToN8/ylVXtFS5Ou sv/beq71sM+DchQXt883qmZQf/3fvvv2v//5j99+/8dvf//qldDJwrj+y1c/+29/on/zjv/xVz8+ /ua7d1/97BfXDw/f/OUv31399o9/+fo3f3z3x6eSJ7iIAMOKJMKAEmt3hFPXi0x8SYpF09JEUBJm 0OtCj5YdDFOit+Lf2e4bLliiRFqA7uG2iSv9nuldMZJnJ2NCfCUsX1tpMjLu2OgFeJlm1lrpjRII 14+VaJafOTIj2paRijtKN+MfT3vpZPJnfm2lldV2c+SxOuVlVX8PwzaUNa2E8KPsord/fPfNf1l3 1L98/Zex+cam+Sc0+z+++tn/I4tNLKNX59jB/+/VeM1kJHv++x/ONgGJm/H/bVcR3jDeUmn8dePD P6ev3n39/df/5cqn0ttXP/v3Xw7624/4s/t5cqf/PvPnH/n1L+fn5/iw/h0/fw6LPv/gL/7z9879 6b8/7eA/xc+fP/e/h23zwXP/G942Hzn3v9Vtc5G5P3/DXHbwn+jnFzwyJ3/+SQf/iX7+KY7MS4/P F8i6ix+Zczz5Aud+7s+nODIv3SofPPhP9/OLH5nncOMLmfvTf/5xZJ74+Udum5928J/o5x98ZL6E wX+in//jyFz2gv4SBv+Jfv6iI/MBrHvpufuiWHfxub/351/O3M/9+XRz/0+9bT7p3J/myU8+93P/ 9Enn/sTPv4S5r38+59yf3iqff+7nuPFTHRn7+U8y95M///xzf872+DxzP/75+1n35/z51Ov+iX7+ 6Vj35c/9vT//4Lkf//ynm/vTf1809+fw5D/R3N/785fy4bJWoy+Tde+d+3M2yYu+/pxOvpBt8/yt 8pFf/xS77hP9/Gk+XEoxez63P+fc3/vzl26VT8f5l/75yX2RH/bdS8393D995Nyf+fMLfv2Cc3/6 z6Xm/vxVPvLkC9GojwO74Nzf+/OP/PpF5n7uz6ee+7m/H/n1i8z9iZ9/0rk/PamP1y4+cu5H4meY +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 phamm-0.6.5/public/img/smile.png0000644000175300017530000000056712643155515014465 0ustar phammPNG  IHDR(`PLTE 6#ӧU8-,_$[ #9M0N ށӰ#222mz-tRNS@fbKGDH pHYs  tIME 9w5IDAT%I "MEHixLZvMk6.<.lTUMU]k[kb[g0 ߲#%@;}i_?숈t8VZ~ͥ :IENDB`phamm-0.6.5/public/img/waiting.png0000644000175300017530000000055612643155515015014 0ustar phammPNG  IHDR(`PLTEdi ;ꑧ&GISi#zϤy|<.2WY!mq0ZhiH68 ɏ/333G!tRNS@fbKGDH pHYs  tIME 0 HIDAT5 D lU4B;Of7t- phamm-0.6.5/public/js/0000755000175300017530000000000012643155515012476 5ustar phammphamm-0.6.5/public/js/bootbox.min.js0000644000175300017530000002104412643155515015273 0ustar phamm/** * bootbox.js v4.3.0 * * http://bootboxjs.com/license.txt */ !function(a,b){"use strict";"function"==typeof define&&define.amd?define(["jquery"],b):"object"==typeof exports?module.exports=b(require("jquery")):a.bootbox=b(a.jQuery)}(this,function a(b,c){"use strict";function d(a){var b=q[o.locale];return b?b[a]:q.en[a]}function e(a,c,d){a.stopPropagation(),a.preventDefault();var e=b.isFunction(d)&&d(a)===!1;e||c.modal("hide")}function f(a){var b,c=0;for(b in a)c++;return c}function g(a,c){var d=0;b.each(a,function(a,b){c(a,b,d++)})}function h(a){var c,d;if("object"!=typeof a)throw new Error("Please supply an object of options");if(!a.message)throw new Error("Please specify a message");return a=b.extend({},o,a),a.buttons||(a.buttons={}),a.backdrop=a.backdrop?"static":!1,c=a.buttons,d=f(c),g(c,function(a,e,f){if(b.isFunction(e)&&(e=c[a]={callback:e}),"object"!==b.type(e))throw new Error("button with key "+a+" must be an object");e.label||(e.label=a),e.className||(e.className=2>=d&&f===d-1?"btn-primary":"btn-default")}),a}function i(a,b){var c=a.length,d={};if(1>c||c>2)throw new Error("Invalid argument length");return 2===c||"string"==typeof a[0]?(d[b[0]]=a[0],d[b[1]]=a[1]):d=a[0],d}function j(a,c,d){return b.extend(!0,{},a,i(c,d))}function k(a,b,c,d){var e={className:"bootbox-"+a,buttons:l.apply(null,b)};return m(j(e,d,c),b)}function l(){for(var a={},b=0,c=arguments.length;c>b;b++){var e=arguments[b],f=e.toLowerCase(),g=e.toUpperCase();a[f]={label:d(g)}}return a}function m(a,b){var d={};return g(b,function(a,b){d[b]=!0}),g(a.buttons,function(a){if(d[a]===c)throw new Error("button key "+a+" is not allowed (options are "+b.join("\n")+")")}),a}var n={dialog:"",header:"",footer:"",closeButton:"",form:"
",inputs:{text:"",textarea:"",email:"",select:"",checkbox:"
",date:"",time:"",number:"",password:""}},o={locale:"en",backdrop:!0,animate:!0,className:null,closeButton:!0,show:!0,container:"body"},p={};p.alert=function(){var a;if(a=k("alert",["ok"],["message","callback"],arguments),a.callback&&!b.isFunction(a.callback))throw new Error("alert requires callback property to be a function when provided");return a.buttons.ok.callback=a.onEscape=function(){return b.isFunction(a.callback)?a.callback():!0},p.dialog(a)},p.confirm=function(){var a;if(a=k("confirm",["cancel","confirm"],["message","callback"],arguments),a.buttons.cancel.callback=a.onEscape=function(){return a.callback(!1)},a.buttons.confirm.callback=function(){return a.callback(!0)},!b.isFunction(a.callback))throw new Error("confirm requires a callback");return p.dialog(a)},p.prompt=function(){var a,d,e,f,h,i,k;if(f=b(n.form),d={className:"bootbox-prompt",buttons:l("cancel","confirm"),value:"",inputType:"text"},a=m(j(d,arguments,["title","callback"]),["cancel","confirm"]),i=a.show===c?!0:a.show,a.message=f,a.buttons.cancel.callback=a.onEscape=function(){return a.callback(null)},a.buttons.confirm.callback=function(){var c;switch(a.inputType){case"text":case"textarea":case"email":case"select":case"date":case"time":case"number":case"password":c=h.val();break;case"checkbox":var d=h.find("input:checked");c=[],g(d,function(a,d){c.push(b(d).val())})}return a.callback(c)},a.show=!1,!a.title)throw new Error("prompt requires a title");if(!b.isFunction(a.callback))throw new Error("prompt requires a callback");if(!n.inputs[a.inputType])throw new Error("invalid prompt type");switch(h=b(n.inputs[a.inputType]),a.inputType){case"text":case"textarea":case"email":case"date":case"time":case"number":case"password":h.val(a.value);break;case"select":var o={};if(k=a.inputOptions||[],!k.length)throw new Error("prompt with select requires options");g(k,function(a,d){var e=h;if(d.value===c||d.text===c)throw new Error("given options in wrong format");d.group&&(o[d.group]||(o[d.group]=b("").attr("label",d.group)),e=o[d.group]),e.append("")}),g(o,function(a,b){h.append(b)}),h.val(a.value);break;case"checkbox":var q=b.isArray(a.value)?a.value:[a.value];if(k=a.inputOptions||[],!k.length)throw new Error("prompt with checkbox requires options");if(!k[0].value||!k[0].text)throw new Error("given options in wrong format");h=b("
"),g(k,function(c,d){var e=b(n.inputs[a.inputType]);e.find("input").attr("value",d.value),e.find("label").append(d.text),g(q,function(a,b){b===d.value&&e.find("input").prop("checked",!0)}),h.append(e)})}return a.placeholder&&h.attr("placeholder",a.placeholder),a.pattern&&h.attr("pattern",a.pattern),f.append(h),f.on("submit",function(a){a.preventDefault(),a.stopPropagation(),e.find(".btn-primary").click()}),e=p.dialog(a),e.off("shown.bs.modal"),e.on("shown.bs.modal",function(){h.focus()}),i===!0&&e.modal("show"),e},p.dialog=function(a){a=h(a);var c=b(n.dialog),d=c.find(".modal-dialog"),f=c.find(".modal-body"),i=a.buttons,j="",k={onEscape:a.onEscape};if(g(i,function(a,b){j+="",k[a]=b.callback}),f.find(".bootbox-body").html(a.message),a.animate===!0&&c.addClass("fade"),a.className&&c.addClass(a.className),"large"===a.size&&d.addClass("modal-lg"),"small"===a.size&&d.addClass("modal-sm"),a.title&&f.before(n.header),a.closeButton){var l=b(n.closeButton);a.title?c.find(".modal-header").prepend(l):l.css("margin-top","-10px").prependTo(f)}return a.title&&c.find(".modal-title").html(a.title),j.length&&(f.after(n.footer),c.find(".modal-footer").html(j)),c.on("hidden.bs.modal",function(a){a.target===this&&c.remove()}),c.on("shown.bs.modal",function(){c.find(".btn-primary:first").focus()}),c.on("escape.close.bb",function(a){k.onEscape&&e(a,c,k.onEscape)}),c.on("click",".modal-footer button",function(a){var d=b(this).data("bb-handler");e(a,c,k[d])}),c.on("click",".bootbox-close-button",function(a){e(a,c,k.onEscape)}),c.on("keyup",function(a){27===a.which&&c.trigger("escape.close.bb")}),b(a.container).append(c),c.modal({backdrop:a.backdrop,keyboard:!1,show:!1}),a.show&&c.modal("show"),c},p.setDefaults=function(){var a={};2===arguments.length?a[arguments[0]]=arguments[1]:a=arguments[0],b.extend(o,a)},p.hideAll=function(){return b(".bootbox").modal("hide"),p};var q={br:{OK:"OK",CANCEL:"Cancelar",CONFIRM:"Sim"},cs:{OK:"OK",CANCEL:"Zrušit",CONFIRM:"Potvrdit"},da:{OK:"OK",CANCEL:"Annuller",CONFIRM:"Accepter"},de:{OK:"OK",CANCEL:"Abbrechen",CONFIRM:"Akzeptieren"},el:{OK:"Εντάξει",CANCEL:"Ακύρωση",CONFIRM:"Επιβεβαίωση"},en:{OK:"OK",CANCEL:"Cancel",CONFIRM:"OK"},es:{OK:"OK",CANCEL:"Cancelar",CONFIRM:"Aceptar"},et:{OK:"OK",CANCEL:"Katkesta",CONFIRM:"OK"},fi:{OK:"OK",CANCEL:"Peruuta",CONFIRM:"OK"},fr:{OK:"OK",CANCEL:"Annuler",CONFIRM:"D'accord"},he:{OK:"אישור",CANCEL:"ביטול",CONFIRM:"אישור"},id:{OK:"OK",CANCEL:"Batal",CONFIRM:"OK"},it:{OK:"OK",CANCEL:"Annulla",CONFIRM:"Conferma"},ja:{OK:"OK",CANCEL:"キャンセル",CONFIRM:"確認"},lt:{OK:"Gerai",CANCEL:"Atšaukti",CONFIRM:"Patvirtinti"},lv:{OK:"Labi",CANCEL:"Atcelt",CONFIRM:"Apstiprināt"},nl:{OK:"OK",CANCEL:"Annuleren",CONFIRM:"Accepteren"},no:{OK:"OK",CANCEL:"Avbryt",CONFIRM:"OK"},pl:{OK:"OK",CANCEL:"Anuluj",CONFIRM:"Potwierdź"},pt:{OK:"OK",CANCEL:"Cancelar",CONFIRM:"Confirmar"},ru:{OK:"OK",CANCEL:"Отмена",CONFIRM:"Применить"},sv:{OK:"OK",CANCEL:"Avbryt",CONFIRM:"OK"},tr:{OK:"Tamam",CANCEL:"İptal",CONFIRM:"Onayla"},zh_CN:{OK:"OK",CANCEL:"取消",CONFIRM:"确认"},zh_TW:{OK:"OK",CANCEL:"取消",CONFIRM:"確認"}};return p.init=function(c){return a(c||b)},p});phamm-0.6.5/public/js/bootstrap.js0000644000175300017530000020312312643155515015052 0ustar phamm/*! * Bootstrap v3.3.1 (http://getbootstrap.com) * Copyright 2011-2014 Twitter, Inc. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) */ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap\'s JavaScript requires jQuery') } +function ($) { var version = $.fn.jquery.split(' ')[0].split('.') if ((version[0] < 2 && version[1] < 9) || (version[0] == 1 && version[1] == 9 && version[2] < 1)) { throw new Error('Bootstrap\'s JavaScript requires jQuery version 1.9.1 or higher') } }(jQuery); /* ======================================================================== * Bootstrap: transition.js v3.3.1 * http://getbootstrap.com/javascript/#transitions * ======================================================================== * Copyright 2011-2014 Twitter, Inc. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) * ======================================================================== */ +function ($) { 'use strict'; // CSS TRANSITION SUPPORT (Shoutout: http://www.modernizr.com/) // ============================================================ function transitionEnd() { var el = document.createElement('bootstrap') var transEndEventNames = { WebkitTransition : 'webkitTransitionEnd', MozTransition : 'transitionend', OTransition : 'oTransitionEnd otransitionend', transition : 'transitionend' } for (var name in transEndEventNames) { if (el.style[name] !== undefined) { return { end: transEndEventNames[name] } } } return false // explicit for ie8 ( ._.) } // http://blog.alexmaccaw.com/css-transitions $.fn.emulateTransitionEnd = function (duration) { var called = false var $el = this $(this).one('bsTransitionEnd', function () { called = true }) var callback = function () { if (!called) $($el).trigger($.support.transition.end) } setTimeout(callback, duration) return this } $(function () { $.support.transition = transitionEnd() if (!$.support.transition) return $.event.special.bsTransitionEnd = { bindType: $.support.transition.end, delegateType: $.support.transition.end, handle: function (e) { if ($(e.target).is(this)) return e.handleObj.handler.apply(this, arguments) } } }) }(jQuery); /* ======================================================================== * Bootstrap: alert.js v3.3.1 * http://getbootstrap.com/javascript/#alerts * ======================================================================== * Copyright 2011-2014 Twitter, Inc. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) * ======================================================================== */ +function ($) { 'use strict'; // ALERT CLASS DEFINITION // ====================== var dismiss = '[data-dismiss="alert"]' var Alert = function (el) { $(el).on('click', dismiss, this.close) } Alert.VERSION = '3.3.1' Alert.TRANSITION_DURATION = 150 Alert.prototype.close = function (e) { var $this = $(this) var selector = $this.attr('data-target') if (!selector) { selector = $this.attr('href') selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') // strip for ie7 } var $parent = $(selector) if (e) e.preventDefault() if (!$parent.length) { $parent = $this.closest('.alert') } $parent.trigger(e = $.Event('close.bs.alert')) if (e.isDefaultPrevented()) return $parent.removeClass('in') function removeElement() { // detach from parent, fire event then clean up data $parent.detach().trigger('closed.bs.alert').remove() } $.support.transition && $parent.hasClass('fade') ? $parent .one('bsTransitionEnd', removeElement) .emulateTransitionEnd(Alert.TRANSITION_DURATION) : removeElement() } // ALERT PLUGIN DEFINITION // ======================= function Plugin(option) { return this.each(function () { var $this = $(this) var data = $this.data('bs.alert') if (!data) $this.data('bs.alert', (data = new Alert(this))) if (typeof option == 'string') data[option].call($this) }) } var old = $.fn.alert $.fn.alert = Plugin $.fn.alert.Constructor = Alert // ALERT NO CONFLICT // ================= $.fn.alert.noConflict = function () { $.fn.alert = old return this } // ALERT DATA-API // ============== $(document).on('click.bs.alert.data-api', dismiss, Alert.prototype.close) }(jQuery); /* ======================================================================== * Bootstrap: button.js v3.3.1 * http://getbootstrap.com/javascript/#buttons * ======================================================================== * Copyright 2011-2014 Twitter, Inc. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) * ======================================================================== */ +function ($) { 'use strict'; // BUTTON PUBLIC CLASS DEFINITION // ============================== var Button = function (element, options) { this.$element = $(element) this.options = $.extend({}, Button.DEFAULTS, options) this.isLoading = false } Button.VERSION = '3.3.1' Button.DEFAULTS = { loadingText: 'loading...' } Button.prototype.setState = function (state) { var d = 'disabled' var $el = this.$element var val = $el.is('input') ? 'val' : 'html' var data = $el.data() state = state + 'Text' if (data.resetText == null) $el.data('resetText', $el[val]()) // push to event loop to allow forms to submit setTimeout($.proxy(function () { $el[val](data[state] == null ? this.options[state] : data[state]) if (state == 'loadingText') { this.isLoading = true $el.addClass(d).attr(d, d) } else if (this.isLoading) { this.isLoading = false $el.removeClass(d).removeAttr(d) } }, this), 0) } Button.prototype.toggle = function () { var changed = true var $parent = this.$element.closest('[data-toggle="buttons"]') if ($parent.length) { var $input = this.$element.find('input') if ($input.prop('type') == 'radio') { if ($input.prop('checked') && this.$element.hasClass('active')) changed = false else $parent.find('.active').removeClass('active') } if (changed) $input.prop('checked', !this.$element.hasClass('active')).trigger('change') } else { this.$element.attr('aria-pressed', !this.$element.hasClass('active')) } if (changed) this.$element.toggleClass('active') } // BUTTON PLUGIN DEFINITION // ======================== function Plugin(option) { return this.each(function () { var $this = $(this) var data = $this.data('bs.button') var options = typeof option == 'object' && option if (!data) $this.data('bs.button', (data = new Button(this, options))) if (option == 'toggle') data.toggle() else if (option) data.setState(option) }) } var old = $.fn.button $.fn.button = Plugin $.fn.button.Constructor = Button // BUTTON NO CONFLICT // ================== $.fn.button.noConflict = function () { $.fn.button = old return this } // BUTTON DATA-API // =============== $(document) .on('click.bs.button.data-api', '[data-toggle^="button"]', function (e) { var $btn = $(e.target) if (!$btn.hasClass('btn')) $btn = $btn.closest('.btn') Plugin.call($btn, 'toggle') e.preventDefault() }) .on('focus.bs.button.data-api blur.bs.button.data-api', '[data-toggle^="button"]', function (e) { $(e.target).closest('.btn').toggleClass('focus', /^focus(in)?$/.test(e.type)) }) }(jQuery); /* ======================================================================== * Bootstrap: carousel.js v3.3.1 * http://getbootstrap.com/javascript/#carousel * ======================================================================== * Copyright 2011-2014 Twitter, Inc. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) * ======================================================================== */ +function ($) { 'use strict'; // CAROUSEL CLASS DEFINITION // ========================= var Carousel = function (element, options) { this.$element = $(element) this.$indicators = this.$element.find('.carousel-indicators') this.options = options this.paused = this.sliding = this.interval = this.$active = this.$items = null this.options.keyboard && this.$element.on('keydown.bs.carousel', $.proxy(this.keydown, this)) this.options.pause == 'hover' && !('ontouchstart' in document.documentElement) && this.$element .on('mouseenter.bs.carousel', $.proxy(this.pause, this)) .on('mouseleave.bs.carousel', $.proxy(this.cycle, this)) } Carousel.VERSION = '3.3.1' Carousel.TRANSITION_DURATION = 600 Carousel.DEFAULTS = { interval: 5000, pause: 'hover', wrap: true, keyboard: true } Carousel.prototype.keydown = function (e) { if (/input|textarea/i.test(e.target.tagName)) return switch (e.which) { case 37: this.prev(); break case 39: this.next(); break default: return } e.preventDefault() } Carousel.prototype.cycle = function (e) { e || (this.paused = false) this.interval && clearInterval(this.interval) this.options.interval && !this.paused && (this.interval = setInterval($.proxy(this.next, this), this.options.interval)) return this } Carousel.prototype.getItemIndex = function (item) { this.$items = item.parent().children('.item') return this.$items.index(item || this.$active) } Carousel.prototype.getItemForDirection = function (direction, active) { var delta = direction == 'prev' ? -1 : 1 var activeIndex = this.getItemIndex(active) var itemIndex = (activeIndex + delta) % this.$items.length return this.$items.eq(itemIndex) } Carousel.prototype.to = function (pos) { var that = this var activeIndex = this.getItemIndex(this.$active = this.$element.find('.item.active')) if (pos > (this.$items.length - 1) || pos < 0) return if (this.sliding) return this.$element.one('slid.bs.carousel', function () { that.to(pos) }) // yes, "slid" if (activeIndex == pos) return this.pause().cycle() return this.slide(pos > activeIndex ? 'next' : 'prev', this.$items.eq(pos)) } Carousel.prototype.pause = function (e) { e || (this.paused = true) if (this.$element.find('.next, .prev').length && $.support.transition) { this.$element.trigger($.support.transition.end) this.cycle(true) } this.interval = clearInterval(this.interval) return this } Carousel.prototype.next = function () { if (this.sliding) return return this.slide('next') } Carousel.prototype.prev = function () { if (this.sliding) return return this.slide('prev') } Carousel.prototype.slide = function (type, next) { var $active = this.$element.find('.item.active') var $next = next || this.getItemForDirection(type, $active) var isCycling = this.interval var direction = type == 'next' ? 'left' : 'right' var fallback = type == 'next' ? 'first' : 'last' var that = this if (!$next.length) { if (!this.options.wrap) return $next = this.$element.find('.item')[fallback]() } if ($next.hasClass('active')) return (this.sliding = false) var relatedTarget = $next[0] var slideEvent = $.Event('slide.bs.carousel', { relatedTarget: relatedTarget, direction: direction }) this.$element.trigger(slideEvent) if (slideEvent.isDefaultPrevented()) return this.sliding = true isCycling && this.pause() if (this.$indicators.length) { this.$indicators.find('.active').removeClass('active') var $nextIndicator = $(this.$indicators.children()[this.getItemIndex($next)]) $nextIndicator && $nextIndicator.addClass('active') } var slidEvent = $.Event('slid.bs.carousel', { relatedTarget: relatedTarget, direction: direction }) // yes, "slid" if ($.support.transition && this.$element.hasClass('slide')) { $next.addClass(type) $next[0].offsetWidth // force reflow $active.addClass(direction) $next.addClass(direction) $active .one('bsTransitionEnd', function () { $next.removeClass([type, direction].join(' ')).addClass('active') $active.removeClass(['active', direction].join(' ')) that.sliding = false setTimeout(function () { that.$element.trigger(slidEvent) }, 0) }) .emulateTransitionEnd(Carousel.TRANSITION_DURATION) } else { $active.removeClass('active') $next.addClass('active') this.sliding = false this.$element.trigger(slidEvent) } isCycling && this.cycle() return this } // CAROUSEL PLUGIN DEFINITION // ========================== function Plugin(option) { return this.each(function () { var $this = $(this) var data = $this.data('bs.carousel') var options = $.extend({}, Carousel.DEFAULTS, $this.data(), typeof option == 'object' && option) var action = typeof option == 'string' ? option : options.slide if (!data) $this.data('bs.carousel', (data = new Carousel(this, options))) if (typeof option == 'number') data.to(option) else if (action) data[action]() else if (options.interval) data.pause().cycle() }) } var old = $.fn.carousel $.fn.carousel = Plugin $.fn.carousel.Constructor = Carousel // CAROUSEL NO CONFLICT // ==================== $.fn.carousel.noConflict = function () { $.fn.carousel = old return this } // CAROUSEL DATA-API // ================= var clickHandler = function (e) { var href var $this = $(this) var $target = $($this.attr('data-target') || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '')) // strip for ie7 if (!$target.hasClass('carousel')) return var options = $.extend({}, $target.data(), $this.data()) var slideIndex = $this.attr('data-slide-to') if (slideIndex) options.interval = false Plugin.call($target, options) if (slideIndex) { $target.data('bs.carousel').to(slideIndex) } e.preventDefault() } $(document) .on('click.bs.carousel.data-api', '[data-slide]', clickHandler) .on('click.bs.carousel.data-api', '[data-slide-to]', clickHandler) $(window).on('load', function () { $('[data-ride="carousel"]').each(function () { var $carousel = $(this) Plugin.call($carousel, $carousel.data()) }) }) }(jQuery); /* ======================================================================== * Bootstrap: collapse.js v3.3.1 * http://getbootstrap.com/javascript/#collapse * ======================================================================== * Copyright 2011-2014 Twitter, Inc. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) * ======================================================================== */ +function ($) { 'use strict'; // COLLAPSE PUBLIC CLASS DEFINITION // ================================ var Collapse = function (element, options) { this.$element = $(element) this.options = $.extend({}, Collapse.DEFAULTS, options) this.$trigger = $(this.options.trigger).filter('[href="#' + element.id + '"], [data-target="#' + element.id + '"]') this.transitioning = null if (this.options.parent) { this.$parent = this.getParent() } else { this.addAriaAndCollapsedClass(this.$element, this.$trigger) } if (this.options.toggle) this.toggle() } Collapse.VERSION = '3.3.1' Collapse.TRANSITION_DURATION = 350 Collapse.DEFAULTS = { toggle: true, trigger: '[data-toggle="collapse"]' } Collapse.prototype.dimension = function () { var hasWidth = this.$element.hasClass('width') return hasWidth ? 'width' : 'height' } Collapse.prototype.show = function () { if (this.transitioning || this.$element.hasClass('in')) return var activesData var actives = this.$parent && this.$parent.find('> .panel').children('.in, .collapsing') if (actives && actives.length) { activesData = actives.data('bs.collapse') if (activesData && activesData.transitioning) return } var startEvent = $.Event('show.bs.collapse') this.$element.trigger(startEvent) if (startEvent.isDefaultPrevented()) return if (actives && actives.length) { Plugin.call(actives, 'hide') activesData || actives.data('bs.collapse', null) } var dimension = this.dimension() this.$element .removeClass('collapse') .addClass('collapsing')[dimension](0) .attr('aria-expanded', true) this.$trigger .removeClass('collapsed') .attr('aria-expanded', true) this.transitioning = 1 var complete = function () { this.$element .removeClass('collapsing') .addClass('collapse in')[dimension]('') this.transitioning = 0 this.$element .trigger('shown.bs.collapse') } if (!$.support.transition) return complete.call(this) var scrollSize = $.camelCase(['scroll', dimension].join('-')) this.$element .one('bsTransitionEnd', $.proxy(complete, this)) .emulateTransitionEnd(Collapse.TRANSITION_DURATION)[dimension](this.$element[0][scrollSize]) } Collapse.prototype.hide = function () { if (this.transitioning || !this.$element.hasClass('in')) return var startEvent = $.Event('hide.bs.collapse') this.$element.trigger(startEvent) if (startEvent.isDefaultPrevented()) return var dimension = this.dimension() this.$element[dimension](this.$element[dimension]())[0].offsetHeight this.$element .addClass('collapsing') .removeClass('collapse in') .attr('aria-expanded', false) this.$trigger .addClass('collapsed') .attr('aria-expanded', false) this.transitioning = 1 var complete = function () { this.transitioning = 0 this.$element .removeClass('collapsing') .addClass('collapse') .trigger('hidden.bs.collapse') } if (!$.support.transition) return complete.call(this) this.$element [dimension](0) .one('bsTransitionEnd', $.proxy(complete, this)) .emulateTransitionEnd(Collapse.TRANSITION_DURATION) } Collapse.prototype.toggle = function () { this[this.$element.hasClass('in') ? 'hide' : 'show']() } Collapse.prototype.getParent = function () { return $(this.options.parent) .find('[data-toggle="collapse"][data-parent="' + this.options.parent + '"]') .each($.proxy(function (i, element) { var $element = $(element) this.addAriaAndCollapsedClass(getTargetFromTrigger($element), $element) }, this)) .end() } Collapse.prototype.addAriaAndCollapsedClass = function ($element, $trigger) { var isOpen = $element.hasClass('in') $element.attr('aria-expanded', isOpen) $trigger .toggleClass('collapsed', !isOpen) .attr('aria-expanded', isOpen) } function getTargetFromTrigger($trigger) { var href var target = $trigger.attr('data-target') || (href = $trigger.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '') // strip for ie7 return $(target) } // COLLAPSE PLUGIN DEFINITION // ========================== function Plugin(option) { return this.each(function () { var $this = $(this) var data = $this.data('bs.collapse') var options = $.extend({}, Collapse.DEFAULTS, $this.data(), typeof option == 'object' && option) if (!data && options.toggle && option == 'show') options.toggle = false if (!data) $this.data('bs.collapse', (data = new Collapse(this, options))) if (typeof option == 'string') data[option]() }) } var old = $.fn.collapse $.fn.collapse = Plugin $.fn.collapse.Constructor = Collapse // COLLAPSE NO CONFLICT // ==================== $.fn.collapse.noConflict = function () { $.fn.collapse = old return this } // COLLAPSE DATA-API // ================= $(document).on('click.bs.collapse.data-api', '[data-toggle="collapse"]', function (e) { var $this = $(this) if (!$this.attr('data-target')) e.preventDefault() var $target = getTargetFromTrigger($this) var data = $target.data('bs.collapse') var option = data ? 'toggle' : $.extend({}, $this.data(), { trigger: this }) Plugin.call($target, option) }) }(jQuery); /* ======================================================================== * Bootstrap: dropdown.js v3.3.1 * http://getbootstrap.com/javascript/#dropdowns * ======================================================================== * Copyright 2011-2014 Twitter, Inc. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) * ======================================================================== */ +function ($) { 'use strict'; // DROPDOWN CLASS DEFINITION // ========================= var backdrop = '.dropdown-backdrop' var toggle = '[data-toggle="dropdown"]' var Dropdown = function (element) { $(element).on('click.bs.dropdown', this.toggle) } Dropdown.VERSION = '3.3.1' Dropdown.prototype.toggle = function (e) { var $this = $(this) if ($this.is('.disabled, :disabled')) return var $parent = getParent($this) var isActive = $parent.hasClass('open') clearMenus() if (!isActive) { if ('ontouchstart' in document.documentElement && !$parent.closest('.navbar-nav').length) { // if mobile we use a backdrop because click events don't delegate $('