xref: /PHP-5.5/ext/standard/credits.c (revision 73c1be26)
1 /*
2    +----------------------------------------------------------------------+
3    | PHP Version 5                                                        |
4    +----------------------------------------------------------------------+
5    | Copyright (c) 1997-2015 The PHP Group                                |
6    +----------------------------------------------------------------------+
7    | This source file is subject to version 3.01 of the PHP license,      |
8    | that is bundled with this package in the file LICENSE, and is        |
9    | available through the world-wide-web at the following url:           |
10    | http://www.php.net/license/3_01.txt                                  |
11    | If you did not receive a copy of the PHP license and are unable to   |
12    | obtain it through the world-wide-web, please send a note to          |
13    | license@php.net so we can mail you a copy immediately.               |
14    +----------------------------------------------------------------------+
15    | Authors: Rasmus Lerdorf <rasmus@php.net>                             |
16    |          Zeev Suraski <zeev@zend.com>                                |
17    +----------------------------------------------------------------------+
18 */
19 
20 /* $Id$ */
21 
22 #include "php.h"
23 #include "info.h"
24 #include "SAPI.h"
25 
26 #define CREDIT_LINE(module, authors) php_info_print_table_row(2, module, authors)
27 
php_print_credits(int flag TSRMLS_DC)28 PHPAPI void php_print_credits(int flag TSRMLS_DC) /* {{{ */
29 {
30 	if (!sapi_module.phpinfo_as_text && flag & PHP_CREDITS_FULLPAGE) {
31 		php_print_info_htmlhead(TSRMLS_C);
32 	}
33 
34 	if (!sapi_module.phpinfo_as_text) {
35 		PUTS("<h1>PHP Credits</h1>\n");
36 	} else {
37 		PUTS("PHP Credits\n");
38 	}
39 
40 	if (flag & PHP_CREDITS_GROUP) {
41 		/* Group */
42 
43 		php_info_print_table_start();
44 		php_info_print_table_header(1, "PHP Group");
45 		php_info_print_table_row(1, "Thies C. Arntzen, Stig Bakken, Shane Caraveo, Andi Gutmans, Rasmus Lerdorf, Sam Ruby, Sascha Schumann, Zeev Suraski, Jim Winstead, Andrei Zmievski");
46 		php_info_print_table_end();
47 	}
48 
49 	if (flag & PHP_CREDITS_GENERAL) {
50 		/* Design & Concept */
51 		php_info_print_table_start();
52 		if (!sapi_module.phpinfo_as_text) {
53 			php_info_print_table_header(1, "Language Design &amp; Concept");
54 		} else {
55 			php_info_print_table_header(1, "Language Design & Concept");
56 		}
57 		php_info_print_table_row(1, "Andi Gutmans, Rasmus Lerdorf, Zeev Suraski, Marcus Boerger");
58 		php_info_print_table_end();
59 
60 		/* PHP Language */
61 		php_info_print_table_start();
62 		php_info_print_table_colspan_header(2, "PHP Authors");
63 		php_info_print_table_header(2, "Contribution", "Authors");
64 		CREDIT_LINE("Zend Scripting Language Engine", "Andi Gutmans, Zeev Suraski, Stanislav Malyshev, Marcus Boerger, Dmitry Stogov");
65 		CREDIT_LINE("Extension Module API", "Andi Gutmans, Zeev Suraski, Andrei Zmievski");
66 		CREDIT_LINE("UNIX Build and Modularization", "Stig Bakken, Sascha Schumann, Jani Taskinen");
67 		CREDIT_LINE("Windows Port", "Shane Caraveo, Zeev Suraski, Wez Furlong, Pierre-Alain Joye");
68 		CREDIT_LINE("Server API (SAPI) Abstraction Layer", "Andi Gutmans, Shane Caraveo, Zeev Suraski");
69 		CREDIT_LINE("Streams Abstraction Layer", "Wez Furlong, Sara Golemon");
70 		CREDIT_LINE("PHP Data Objects Layer", "Wez Furlong, Marcus Boerger, Sterling Hughes, George Schlossnagle, Ilia Alshanetsky");
71 		CREDIT_LINE("Output Handler", "Zeev Suraski, Thies C. Arntzen, Marcus Boerger, Michael Wallner");
72 		php_info_print_table_end();
73 	}
74 
75 	if (flag & PHP_CREDITS_SAPI) {
76 		/* SAPI Modules */
77 
78 		php_info_print_table_start();
79 		php_info_print_table_colspan_header(2, "SAPI Modules");
80 		php_info_print_table_header(2, "Contribution", "Authors");
81 #include "credits_sapi.h"
82 		php_info_print_table_end();
83 	}
84 
85 	if (flag & PHP_CREDITS_MODULES) {
86 		/* Modules */
87 
88 		php_info_print_table_start();
89 		php_info_print_table_colspan_header(2, "Module Authors");
90 		php_info_print_table_header(2, "Module", "Authors");
91 #include "credits_ext.h"
92 		php_info_print_table_end();
93 	}
94 
95 	if (flag & PHP_CREDITS_DOCS) {
96 		php_info_print_table_start();
97 		php_info_print_table_colspan_header(2, "PHP Documentation");
98 		CREDIT_LINE("Authors", "Mehdi Achour, Friedhelm Betz, Antony Dovgal, Nuno Lopes, Hannes Magnusson, Georg Richter, Damien Seguy, Jakub Vrana");
99 		CREDIT_LINE("Editor", "Philip Olson");
100 		CREDIT_LINE("User Note Maintainers", "Daniel P. Brown, Thiago Henrique Pojda");
101 		CREDIT_LINE("Other Contributors", "Previously active authors, editors and other contributors are listed in the manual.");
102 		php_info_print_table_end();
103 	}
104 
105 	if (flag & PHP_CREDITS_QA) {
106 		php_info_print_table_start();
107 		php_info_print_table_header(1, "PHP Quality Assurance Team");
108 		php_info_print_table_row(1, "Ilia Alshanetsky, Joerg Behrens, Antony Dovgal, Stefan Esser, Moriyoshi Koizumi, Magnus Maatta, Sebastian Nohn, Derick Rethans, Melvyn Sopacua, Jani Taskinen, Pierre-Alain Joye, Dmitry Stogov, Felipe Pena, David Soria Parra");
109 		php_info_print_table_end();
110 	}
111 
112 	if (flag & PHP_CREDITS_WEB) {
113 		/* Websites and infrastructure */
114 
115 		php_info_print_table_start();
116 		php_info_print_table_colspan_header(2, "Websites and Infrastructure team");
117 		/* www., wiki., windows., master., and others, I guess pecl. too? */
118 		CREDIT_LINE("PHP Websites Team", "Rasmus Lerdorf, Hannes Magnusson, Philip Olson, Lukas Kahwe Smith, Pierre-Alain Joye, Kalle Sommer Nielsen");
119 		CREDIT_LINE("Event Maintainers", "Damien Seguy, Daniel P. Brown");
120 		/* Mirroring */
121 		CREDIT_LINE("Network Infrastructure", "Daniel P. Brown");
122 		/* Windows build boxes and such things */
123 		CREDIT_LINE("Windows Infrastructure", "Alex Schoenmaker");
124 		php_info_print_table_end();
125 	}
126 
127 	if (!sapi_module.phpinfo_as_text && flag & PHP_CREDITS_FULLPAGE) {
128 		PUTS("</div></body></html>\n");
129 	}
130 }
131 /* }}} */
132 
133 /*
134  * Local variables:
135  * tab-width: 4
136  * c-basic-offset: 4
137  * End:
138  * vim600: sw=4 ts=4 fdm=marker
139  * vim<600: sw=4 ts=4
140  */
141