Simpler structure for wgLocalDatabases, for faster setup. SiteConfiguration::getAll...
[lhc/web/wiklou.git] / includes / DefaultSettings.php
1 <?php
2 /**
3 *
4 * DO NOT EVER EDIT THIS FILE!
5 *
6 *
7 * To customize your installation, edit "LocalSettings.php". If you make
8 * changes here, they will be lost on next upgrade of MediaWiki!
9 *
10 * Note that since all these string interpolations are expanded
11 * before LocalSettings is included, if you localize something
12 * like $wgScriptPath, you must also localize everything that
13 * depends on it.
14 *
15 * Documentation is in the source and on:
16 * http://meta.wikimedia.org/wiki/Help:Configuration_settings_index
17 *
18 * @package MediaWiki
19 */
20
21 # This is not a valid entry point, perform no further processing unless MEDIAWIKI is defined
22 if( !defined( 'MEDIAWIKI' ) ) {
23 die( "This file is part of MediaWiki and is not a valid entry point\n" );
24 }
25
26 /**
27 * Create a site configuration object
28 * Not used for much in a default install
29 */
30 require_once( 'includes/SiteConfiguration.php' );
31 $wgConf = new SiteConfiguration;
32
33 /** MediaWiki version number */
34 $wgVersion = '1.6alpha';
35
36 /** Name of the site. It must be changed in LocalSettings.php */
37 $wgSitename = 'MediaWiki';
38
39 /** Will be same as you set @see $wgSitename */
40 $wgMetaNamespace = FALSE;
41
42
43 /** URL of the server. It will be automatically built including https mode */
44 $wgServer = '';
45
46 if( isset( $_SERVER['SERVER_NAME'] ) ) {
47 $wgServerName = $_SERVER['SERVER_NAME'];
48 } elseif( isset( $_SERVER['HOSTNAME'] ) ) {
49 $wgServerName = $_SERVER['HOSTNAME'];
50 } elseif( isset( $_SERVER['HTTP_HOST'] ) ) {
51 $wgServerName = $_SERVER['HTTP_HOST'];
52 } elseif( isset( $_SERVER['SERVER_ADDR'] ) ) {
53 $wgServerName = $_SERVER['SERVER_ADDR'];
54 } else {
55 $wgServerName = 'localhost';
56 }
57
58 # check if server use https:
59 $wgProto = (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') ? 'https' : 'http';
60
61 $wgServer = $wgProto.'://' . $wgServerName;
62 # If the port is a non-standard one, add it to the URL
63 if( isset( $_SERVER['SERVER_PORT'] )
64 && ( ( $wgProto == 'http' && $_SERVER['SERVER_PORT'] != 80 )
65 || ( $wgProto == 'https' && $_SERVER['SERVER_PORT'] != 443 ) ) ) {
66
67 $wgServer .= ":" . $_SERVER['SERVER_PORT'];
68 }
69
70
71 /**
72 * The path we should point to.
73 * It might be a virtual path in case with use apache mod_rewrite for example
74 */
75 $wgScriptPath = '/wiki';
76
77 /**
78 * Whether to support URLs like index.php/Page_title
79 * @global bool $wgUsePathInfo
80 */
81 $wgUsePathInfo = ( strpos( php_sapi_name(), 'cgi' ) === false );
82
83
84 /**#@+
85 * Script users will request to get articles
86 * ATTN: Old installations used wiki.phtml and redirect.phtml -
87 * make sure that LocalSettings.php is correctly set!
88 * @deprecated
89 */
90 /**
91 * @global string $wgScript
92 */
93 $wgScript = "{$wgScriptPath}/index.php";
94 /**
95 * @global string $wgRedirectScript
96 */
97 $wgRedirectScript = "{$wgScriptPath}/redirect.php";
98 /**#@-*/
99
100
101 /**#@+
102 * @global string
103 */
104 /**
105 * style path as seen by users
106 * @global string $wgStylePath
107 */
108 $wgStylePath = "{$wgScriptPath}/skins";
109 /**
110 * filesystem stylesheets directory
111 * @global string $wgStyleDirectory
112 */
113 $wgStyleDirectory = "{$IP}/skins";
114 $wgStyleSheetPath = &$wgStylePath;
115 $wgArticlePath = "{$wgScript}?title=$1";
116 $wgUploadPath = "{$wgScriptPath}/upload";
117 $wgUploadDirectory = "{$IP}/upload";
118 $wgHashedUploadDirectory = true;
119 $wgLogo = "{$wgUploadPath}/wiki.png";
120 $wgMathPath = "{$wgUploadPath}/math";
121 $wgMathDirectory = "{$wgUploadDirectory}/math";
122 $wgTmpDirectory = "{$wgUploadDirectory}/tmp";
123 $wgUploadBaseUrl = "";
124 /**#@-*/
125
126 /**
127 * Allowed title characters -- regex character class
128 * Don't change this unless you know what you're doing
129 *
130 * Problematic punctuation:
131 * []{}|# Are needed for link syntax, never enable these
132 * % Enabled by default, minor problems with path to query rewrite rules, see below
133 * + Doesn't work with path to query rewrite rules, corrupted by apache
134 * ? Enabled by default, but doesn't work with path to PATH_INFO rewrites
135 *
136 * All three of these punctuation problems can be avoided by using an alias, instead of a
137 * rewrite rule of either variety.
138 *
139 * The problem with % is that when using a path to query rewrite rule, URLs are
140 * double-unescaped: once by Apache's path conversion code, and again by PHP. So
141 * %253F, for example, becomes "?". Our code does not double-escape to compensate
142 * for this, indeed double escaping would break if the double-escaped title was
143 * passed in the query string rather than the path. This is a minor security issue
144 * because articles can be created such that they are hard to view or edit.
145 *
146 * Theoretically 0x80-0x9F of ISO 8859-1 should be disallowed, but
147 * this breaks interlanguage links
148 */
149 $wgLegalTitleChars = " %!\"$&'()*,\\-.\\/0-9:;=?@A-Z\\\\^_`a-z~\\x80-\\xFF";
150
151
152 /**
153 * The external URL protocols
154 */
155 $wgUrlProtocols = array(
156 'http://',
157 'https://',
158 'ftp://',
159 'irc://',
160 'gopher://',
161 'telnet://', // Well if we're going to support the above.. -ævar
162 'nntp://', // @bug 3808 RFC 1738
163 'worldwind://',
164 'mailto:',
165 'news:'
166 );
167
168 /** internal name of virus scanner. This servers as a key to the $wgAntivirusSetup array.
169 * Set this to NULL to disable virus scanning. If not null, every file uploaded will be scanned for viruses.
170 * @global string $wgAntivirus
171 */
172 $wgAntivirus= NULL;
173
174 /** Configuration for different virus scanners. This an associative array of associative arrays:
175 * it contains on setup array per known scanner type. The entry is selected by $wgAntivirus, i.e.
176 * valid values for $wgAntivirus are the keys defined in this array.
177 *
178 * The configuration array for each scanner contains the following keys: "command", "codemap", "messagepattern";
179 *
180 * "command" is the full command to call the virus scanner - %f will be replaced with the name of the
181 * file to scan. If not present, the filename will be appended to the command. Note that this must be
182 * overwritten if the scanner is not in the system path; in that case, plase set
183 * $wgAntivirusSetup[$wgAntivirus]['command'] to the desired command with full path.
184 *
185 * "codemap" is a mapping of exit code to return codes of the detectVirus function in SpecialUpload.
186 * An exit code mapped to AV_SCAN_FAILED causes the function to consider the scan to be failed. This will pass
187 * the file if $wgAntivirusRequired is not set.
188 * An exit code mapped to AV_SCAN_ABORTED causes the function to consider the file to have an usupported format,
189 * which is probably imune to virusses. This causes the file to pass.
190 * An exit code mapped to AV_NO_VIRUS will cause the file to pass, meaning no virus was found.
191 * All other codes (like AV_VIRUS_FOUND) will cause the function to report a virus.
192 * You may use "*" as a key in the array to catch all exit codes not mapped otherwise.
193 *
194 * "messagepattern" is a perl regular expression to extract the meaningful part of the scanners
195 * output. The relevant part should be matched as group one (\1).
196 * If not defined or the pattern does not match, the full message is shown to the user.
197 *
198 * @global array $wgAntivirusSetup
199 */
200 $wgAntivirusSetup= array(
201
202 #setup for clamav
203 'clamav' => array (
204 'command' => "clamscan --no-summary ",
205
206 'codemap'=> array (
207 "0"=> AV_NO_VIRUS, #no virus
208 "1"=> AV_VIRUS_FOUND, #virus found
209 "52"=> AV_SCAN_ABORTED, #unsupported file format (probably imune)
210 "*"=> AV_SCAN_FAILED, #else scan failed
211 ),
212
213 'messagepattern'=> '/.*?:(.*)/sim',
214 ),
215
216 #setup for f-prot
217 'f-prot' => array (
218 'command' => "f-prot ",
219
220 'codemap'=> array (
221 "0"=> AV_NO_VIRUS, #no virus
222 "3"=> AV_VIRUS_FOUND, #virus found
223 "6"=> AV_VIRUS_FOUND, #virus found
224 "*"=> AV_SCAN_FAILED, #else scan failed
225 ),
226
227 'messagepattern'=> '/.*?Infection:(.*)$/m',
228 ),
229 );
230
231
232 /** Determines if a failed virus scan (AV_SCAN_FAILED) will cause the file to be rejected.
233 * @global boolean $wgAntivirusRequired
234 */
235 $wgAntivirusRequired= true;
236
237 /** Determines if the mime type of uploaded files should be checked
238 * @global boolean $wgVerifyMimeType
239 */
240 $wgVerifyMimeType= true;
241
242 /** Sets the mime type definition file to use by MimeMagic.php.
243 * @global string $wgMimeTypeFile
244 */
245 #$wgMimeTypeFile= "/etc/mime.types";
246 $wgMimeTypeFile= "includes/mime.types";
247 #$wgMimeTypeFile= NULL; #use built-in defaults only.
248
249 /** Sets the mime type info file to use by MimeMagic.php.
250 * @global string $wgMimeInfoFile
251 */
252 $wgMimeInfoFile= "includes/mime.info";
253 #$wgMimeInfoFile= NULL; #use built-in defaults only.
254
255 /** Switch for loading the FileInfo extension by PECL at runtime.
256 * This should be used only if fileinfo is installed as a shared object / dynamic libary
257 * @global string $wgLoadFileinfoExtension
258 */
259 $wgLoadFileinfoExtension= false;
260
261 /** Sets an external mime detector program. The command must print only the mime type to standard output.
262 * the name of the file to process will be appended to the command given here.
263 * If not set or NULL, mime_content_type will be used if available.
264 */
265 $wgMimeDetectorCommand= NULL; # use internal mime_content_type function, available since php 4.3.0
266 #$wgMimeDetectorCommand= "file -bi"; #use external mime detector (Linux)
267
268 /** Switch for trivial mime detection. Used by thumb.php to disable all fance things,
269 * because only a few types of images are needed and file extensions can be trusted.
270 */
271 $wgTrivialMimeDetection= false;
272
273 /**
274 * To set 'pretty' URL paths for actions other than
275 * plain page views, add to this array. For instance:
276 * 'edit' => "$wgScriptPath/edit/$1"
277 *
278 * There must be an appropriate script or rewrite rule
279 * in place to handle these URLs.
280 */
281 $wgActionPaths = array();
282
283 /**
284 * If you operate multiple wikis, you can define a shared upload path here.
285 * Uploads to this wiki will NOT be put there - they will be put into
286 * $wgUploadDirectory.
287 * If $wgUseSharedUploads is set, the wiki will look in the shared repository if
288 * no file of the given name is found in the local repository (for [[Image:..]],
289 * [[Media:..]] links). Thumbnails will also be looked for and generated in this
290 * directory.
291 */
292 $wgUseSharedUploads = false;
293 /** Full path on the web server where shared uploads can be found */
294 $wgSharedUploadPath = "http://commons.wikimedia.org/shared/images";
295 /** Fetch commons image description pages and display them on the local wiki? */
296 $wgFetchCommonsDescriptions = false;
297 /** Path on the file system where shared uploads can be found. */
298 $wgSharedUploadDirectory = "/var/www/wiki3/images";
299 /** DB name with metadata about shared directory. Set this to false if the uploads do not come from a wiki. */
300 $wgSharedUploadDBname = false;
301 /** Optional table prefix used in database. */
302 $wgSharedUploadDBprefix = '';
303 /** Cache shared metadata in memcached. Don't do this if the commons wiki is in a different memcached domain */
304 $wgCacheSharedUploads = true;
305
306 /**
307 * Point the upload navigation link to an external URL
308 * Useful if you want to use a shared repository by default
309 * without disabling local uploads (use $wgEnableUploads = false for that)
310 * e.g. $wgUploadNavigationUrl = 'http://commons.wikimedia.org/wiki/Special:Upload';
311 */
312 $wgUploadNavigationUrl = false;
313
314 /**
315 * Give a path here to use thumb.php for thumbnail generation on client request, instead of
316 * generating them on render and outputting a static URL. This is necessary if some of your
317 * apache servers don't have read/write access to the thumbnail path.
318 *
319 * Example:
320 * $wgThumbnailScriptPath = "{$wgScriptPath}/thumb.php";
321 */
322 $wgThumbnailScriptPath = false;
323 $wgSharedThumbnailScriptPath = false;
324
325 /**
326 * Set the following to false especially if you have a set of files that need to
327 * be accessible by all wikis, and you do not want to use the hash (path/a/aa/)
328 * directory layout.
329 */
330 $wgHashedSharedUploadDirectory = true;
331
332 /**
333 * Base URL for a repository wiki. Leave this blank if uploads are just stored
334 * in a shared directory and not meant to be accessible through a separate wiki.
335 * Otherwise the image description pages on the local wiki will link to the
336 * image description page on this wiki.
337 *
338 * Please specify the namespace, as in the example below.
339 */
340 $wgRepositoryBaseUrl="http://commons.wikimedia.org/wiki/Image:";
341
342
343 #
344 # Email settings
345 #
346
347 /**
348 * Site admin email address
349 * Default to wikiadmin@SERVER_NAME
350 * @global string $wgEmergencyContact
351 */
352 $wgEmergencyContact = 'wikiadmin@' . $wgServerName;
353
354 /**
355 * Password reminder email address
356 * The address we should use as sender when a user is requesting his password
357 * Default to apache@SERVER_NAME
358 * @global string $wgPasswordSender
359 */
360 $wgPasswordSender = 'Wikipedia Mail <apache@' . $wgServerName . '>';
361
362 /**
363 * dummy address which should be accepted during mail send action
364 * It might be necessay to adapt the address or to set it equal
365 * to the $wgEmergencyContact address
366 */
367 #$wgNoReplyAddress = $wgEmergencyContact;
368 $wgNoReplyAddress = 'reply@not.possible';
369
370 /**
371 * Set to true to enable the e-mail basic features:
372 * Password reminders, etc. If sending e-mail on your
373 * server doesn't work, you might want to disable this.
374 * @global bool $wgEnableEmail
375 */
376 $wgEnableEmail = true;
377
378 /**
379 * Set to true to enable user-to-user e-mail.
380 * This can potentially be abused, as it's hard to track.
381 * @global bool $wgEnableUserEmail
382 */
383 $wgEnableUserEmail = true;
384
385 /**
386 * SMTP Mode
387 * For using a direct (authenticated) SMTP server connection.
388 * Default to false or fill an array :
389 * <code>
390 * "host" => 'SMTP domain',
391 * "IDHost" => 'domain for MessageID',
392 * "port" => "25",
393 * "auth" => true/false,
394 * "username" => user,
395 * "password" => password
396 * </code>
397 *
398 * @global mixed $wgSMTP
399 */
400 $wgSMTP = false;
401
402
403 /**#@+
404 * Database settings
405 */
406 /** database host name or ip address */
407 $wgDBserver = 'localhost';
408 /** name of the database */
409 $wgDBname = 'wikidb';
410 /** */
411 $wgDBconnection = '';
412 /** Database username */
413 $wgDBuser = 'wikiuser';
414 /** Database type
415 * "mysql" for working code and "PostgreSQL" for development/broken code
416 */
417 $wgDBtype = "mysql";
418 /** Search type
419 * Leave as null to select the default search engine for the
420 * selected database type (eg SearchMySQL4), or set to a class
421 * name to override to a custom search engine.
422 */
423 $wgSearchType = null;
424 /** Table name prefix */
425 $wgDBprefix = '';
426 /** Database schema
427 * on some databases this allows separate
428 * logical namespace for application data
429 */
430 $wgDBschema = 'mediawiki';
431 /**#@-*/
432
433
434
435 /**
436 * Shared database for multiple wikis. Presently used for storing a user table
437 * for single sign-on. The server for this database must be the same as for the
438 * main database.
439 * EXPERIMENTAL
440 */
441 $wgSharedDB = null;
442
443 # Database load balancer
444 # This is a two-dimensional array, an array of server info structures
445 # Fields are:
446 # host: Host name
447 # dbname: Default database name
448 # user: DB user
449 # password: DB password
450 # type: "mysql" or "pgsql"
451 # load: ratio of DB_SLAVE load, must be >=0, the sum of all loads must be >0
452 # groupLoads: array of load ratios, the key is the query group name. A query may belong
453 # to several groups, the most specific group defined here is used.
454 #
455 # flags: bit field
456 # DBO_DEFAULT -- turns on DBO_TRX only if !$wgCommandLineMode (recommended)
457 # DBO_DEBUG -- equivalent of $wgDebugDumpSql
458 # DBO_TRX -- wrap entire request in a transaction
459 # DBO_IGNORE -- ignore errors (not useful in LocalSettings.php)
460 # DBO_NOBUFFER -- turn off buffering (not useful in LocalSettings.php)
461 #
462 # max lag: (optional) Maximum replication lag before a slave will taken out of rotation
463 # max threads: (optional) Maximum number of running threads
464 #
465 # These and any other user-defined properties will be assigned to the mLBInfo member
466 # variable of the Database object.
467 #
468 # Leave at false to use the single-server variables above
469 $wgDBservers = false;
470
471 /** How long to wait for a slave to catch up to the master */
472 $wgMasterWaitTimeout = 10;
473
474 /** File to log MySQL errors to */
475 $wgDBerrorLog = false;
476
477 /** When to give an error message */
478 $wgDBClusterTimeout = 10;
479
480 /**
481 * wgDBminWordLen :
482 * MySQL 3.x : used to discard words that MySQL will not return any results for
483 * shorter values configure mysql directly.
484 * MySQL 4.x : ignore it and configure mySQL
485 * See: http://dev.mysql.com/doc/mysql/en/Fulltext_Fine-tuning.html
486 */
487 $wgDBminWordLen = 4;
488 /** Set to true if using InnoDB tables */
489 $wgDBtransactions = false;
490 /** Set to true for compatibility with extensions that might be checking.
491 * MySQL 3.23.x is no longer supported. */
492 $wgDBmysql4 = true;
493
494 /**
495 * Set to true to engage MySQL 4.1/5.0 charset-related features;
496 * for now will just cause sending of 'SET NAMES=utf8' on connect.
497 *
498 * WARNING: THIS IS EXPERIMENTAL!
499 *
500 * May break if you're not using the table defs from mysql5/tables.sql.
501 * May break if you're upgrading an existing wiki if set differently.
502 * Broken symptoms likely to include incorrect behavior with page titles,
503 * usernames, comments etc containing non-ASCII characters.
504 * Might also cause failures on the object cache and other things.
505 *
506 * Even correct usage may cause failures with Unicode supplementary
507 * characters (those not in the Basic Multilingual Plane) unless MySQL
508 * has enhanced their Unicode support.
509 */
510 $wgDBmysql5 = false;
511
512 /**
513 * Other wikis on this site, can be administered from a single developer
514 * account.
515 * Array numeric key => database name
516 */
517 $wgLocalDatabases = array();
518
519 /**
520 * Object cache settings
521 * See Defines.php for types
522 */
523 $wgMainCacheType = CACHE_NONE;
524 $wgMessageCacheType = CACHE_ANYTHING;
525 $wgParserCacheType = CACHE_ANYTHING;
526
527 $wgSessionsInMemcached = false;
528 $wgLinkCacheMemcached = false; # Not fully tested
529
530 /**
531 * Memcached-specific settings
532 * See docs/memcached.txt
533 */
534 $wgUseMemCached = false;
535 $wgMemCachedDebug = false; # Will be set to false in Setup.php, if the server isn't working
536 $wgMemCachedServers = array( '127.0.0.1:11000' );
537 $wgMemCachedDebug = false;
538
539 /**
540 * Directory for local copy of message cache, for use in addition to memcached
541 */
542 $wgLocalMessageCache = false;
543
544
545 # Language settings
546 #
547 /** Site language code, should be one of ./languages/Language(.*).php */
548 $wgLanguageCode = 'en';
549
550 /** Treat language links as magic connectors, not inline links */
551 $wgInterwikiMagic = true;
552
553 /** Hide interlanguage links from the sidebar */
554 $wgHideInterlanguageLinks = false;
555
556
557 /** We speak UTF-8 all the time now, unless some oddities happen */
558 $wgInputEncoding = 'UTF-8';
559 $wgOutputEncoding = 'UTF-8';
560 $wgEditEncoding = '';
561
562 # Set this to eg 'ISO-8859-1' to perform character set
563 # conversion when loading old revisions not marked with
564 # "utf-8" flag. Use this when converting wiki to UTF-8
565 # without the burdensome mass conversion of old text data.
566 #
567 # NOTE! This DOES NOT touch any fields other than old_text.
568 # Titles, comments, user names, etc still must be converted
569 # en masse in the database before continuing as a UTF-8 wiki.
570 $wgLegacyEncoding = false;
571
572 /**
573 * If set to true, the MediaWiki 1.4 to 1.5 schema conversion will
574 * create stub reference rows in the text table instead of copying
575 * the full text of all current entries from 'cur' to 'text'.
576 *
577 * This will speed up the conversion step for large sites, but
578 * requires that the cur table be kept around for those revisions
579 * to remain viewable.
580 *
581 * maintenance/migrateCurStubs.php can be used to complete the
582 * migration in the background once the wiki is back online.
583 *
584 * This option affects the updaters *only*. Any present cur stub
585 * revisions will be readable at runtime regardless of this setting.
586 */
587 $wgLegacySchemaConversion = false;
588
589 $wgMimeType = 'text/html';
590 $wgJsMimeType = 'text/javascript';
591 $wgDocType = '-//W3C//DTD XHTML 1.0 Transitional//EN';
592 $wgDTD = 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd';
593
594 /** Enable to allow rewriting dates in page text.
595 * DOES NOT FORMAT CORRECTLY FOR MOST LANGUAGES */
596 $wgUseDynamicDates = false;
597 /** Enable dates like 'May 12' instead of '12 May', this only takes effect if
598 * the interface is set to English
599 */
600 $wgAmericanDates = false;
601 /**
602 * For Hindi and Arabic use local numerals instead of Western style (0-9)
603 * numerals in interface.
604 */
605 $wgTranslateNumerals = true;
606
607
608 # Translation using MediaWiki: namespace
609 # This will increase load times by 25-60% unless memcached is installed
610 # Interface messages will be loaded from the database.
611 $wgUseDatabaseMessages = true;
612 $wgMsgCacheExpiry = 86400;
613
614 # Whether to enable language variant conversion.
615 $wgDisableLangConversion = false;
616
617 # Whether to use zhdaemon to perform Chinese text processing
618 # zhdaemon is under developement, so normally you don't want to
619 # use it unless for testing
620 $wgUseZhdaemon = false;
621 $wgZhdaemonHost="localhost";
622 $wgZhdaemonPort=2004;
623
624 /** Normally you can ignore this and it will be something
625 like $wgMetaNamespace . "_talk". In some languages, you
626 may want to set this manually for grammatical reasons.
627 It is currently only respected by those languages
628 where it might be relevant and where no automatic
629 grammar converter exists.
630 */
631 $wgMetaNamespaceTalk = false;
632
633 # Miscellaneous configuration settings
634 #
635
636 $wgLocalInterwiki = 'w';
637 $wgInterwikiExpiry = 10800; # Expiry time for cache of interwiki table
638
639 /**
640 * If local interwikis are set up which allow redirects,
641 * set this regexp to restrict URLs which will be displayed
642 * as 'redirected from' links.
643 *
644 * It might look something like this:
645 * $wgRedirectSources = '!^https?://[a-z-]+\.wikipedia\.org/!';
646 *
647 * Leave at false to avoid displaying any incoming redirect markers.
648 * This does not affect intra-wiki redirects, which don't change
649 * the URL.
650 */
651 $wgRedirectSources = false;
652
653
654 $wgShowIPinHeader = true; # For non-logged in users
655 $wgMaxNameChars = 255; # Maximum number of bytes in username
656
657 $wgExtraSubtitle = '';
658 $wgSiteSupportPage = ''; # A page where you users can receive donations
659
660 $wgReadOnlyFile = "{$wgUploadDirectory}/lock_yBgMBwiR";
661
662 /**
663 * The debug log file should be not be publicly accessible if it is used, as it
664 * may contain private data. */
665 $wgDebugLogFile = '';
666
667 /**#@+
668 * @global bool
669 */
670 $wgDebugRedirects = false;
671 $wgDebugRawPage = false; # Avoid overlapping debug entries by leaving out CSS
672
673 $wgDebugComments = false;
674 $wgReadOnly = false;
675 $wgLogQueries = false;
676 $wgDebugDumpSql = false;
677
678 /**
679 * Set to an array of log group keys to filenames.
680 * If set, wfDebugLog() output for that group will go to that file instead
681 * of the regular $wgDebugLogFile. Useful for enabling selective logging
682 * in production.
683 */
684 $wgDebugLogGroups = array();
685
686 /**
687 * Whether to show "we're sorry, but there has been a database error" pages.
688 * Displaying errors aids in debugging, but may display information useful
689 * to an attacker.
690 */
691 $wgShowSQLErrors = false;
692
693 /**
694 * disable experimental dmoz-like category browsing. Output things like:
695 * Encyclopedia > Music > Style of Music > Jazz
696 */
697 $wgUseCategoryBrowser = false;
698
699 /**
700 * Keep parsed pages in a cache (objectcache table, turck, or memcached)
701 * to speed up output of the same page viewed by another user with the
702 * same options.
703 *
704 * This can provide a significant speedup for medium to large pages,
705 * so you probably want to keep it on.
706 */
707 $wgEnableParserCache = true;
708
709 /**
710 * Under which condition should a page in the main namespace be counted
711 * as a valid article? If $wgUseCommaCount is set to true, it will be
712 * counted if it contains at least one comma. If it is set to false
713 * (default), it will only be counted if it contains at least one [[wiki
714 * link]]. See http://meta.wikimedia.org/wiki/Help:Article_count
715 *
716 * Retroactively changing this variable will not affect
717 * the existing count (cf. maintenance/recount.sql).
718 */
719 $wgUseCommaCount = false;
720
721 /**#@-*/
722
723 /**
724 * wgHitcounterUpdateFreq sets how often page counters should be updated, higher
725 * values are easier on the database. A value of 1 causes the counters to be
726 * updated on every hit, any higher value n cause them to update *on average*
727 * every n hits. Should be set to either 1 or something largish, eg 1000, for
728 * maximum efficiency.
729 */
730 $wgHitcounterUpdateFreq = 1;
731
732 # Basic user rights and block settings
733 $wgSysopUserBans = true; # Allow sysops to ban logged-in users
734 $wgSysopRangeBans = true; # Allow sysops to ban IP ranges
735 $wgAutoblockExpiry = 86400; # Number of seconds before autoblock entries expire
736 $wgBlockAllowsUTEdit = false; # Blocks allow users to edit their own user talk page
737
738 # Pages anonymous user may see as an array, e.g.:
739 # array ( "Main Page", "Special:Userlogin", "Wikipedia:Help");
740 # NOTE: This will only work if $wgGroupPermissions['*']['read']
741 # is false -- see below. Otherwise, ALL pages are accessible,
742 # regardless of this setting.
743 # Also note that this will only protect _pages in the wiki_.
744 # Uploaded files will remain readable. Make your upload
745 # directory name unguessable, or use .htaccess to protect it.
746 $wgWhitelistRead = false;
747
748 /**
749 * Permission keys given to users in each group.
750 * All users are implicitly in the '*' group including anonymous visitors;
751 * logged-in users are all implicitly in the 'user' group. These will be
752 * combined with the permissions of all groups that a given user is listed
753 * in in the user_groups table.
754 *
755 * Functionality to make pages inaccessible has not been extensively tested
756 * for security. Use at your own risk!
757 *
758 * This replaces wgWhitelistAccount and wgWhitelistEdit
759 */
760 $wgGroupPermissions = array();
761
762 // Implicit group for all visitors
763 $wgGroupPermissions['*' ]['createaccount'] = true;
764 $wgGroupPermissions['*' ]['read'] = true;
765 $wgGroupPermissions['*' ]['edit'] = true;
766 $wgGroupPermissions['*' ]['createpage'] = true;
767 $wgGroupPermissions['*' ]['createtalk'] = true;
768
769 // Implicit group for all logged-in accounts
770 $wgGroupPermissions['user' ]['move'] = true;
771 $wgGroupPermissions['user' ]['read'] = true;
772 $wgGroupPermissions['user' ]['edit'] = true;
773 $wgGroupPermissions['user' ]['createpage'] = true;
774 $wgGroupPermissions['user' ]['createtalk'] = true;
775 $wgGroupPermissions['user' ]['upload'] = true;
776 $wgGroupPermissions['user' ]['reupload'] = true;
777 $wgGroupPermissions['user' ]['reupload-shared'] = true;
778 $wgGroupPermissions['user' ]['minoredit'] = true;
779
780 // Implicit group for accounts that pass $wgAutoConfirmAge
781 $wgGroupPermissions['autoconfirmed']['autoconfirmed'] = true;
782
783 // Users with bot privilege can have their edits hidden
784 // from various log pages by default
785 $wgGroupPermissions['bot' ]['bot'] = true;
786 $wgGroupPermissions['bot' ]['autoconfirmed'] = true;
787
788 // Most extra permission abilities go to this group
789 $wgGroupPermissions['sysop']['block'] = true;
790 $wgGroupPermissions['sysop']['createaccount'] = true;
791 $wgGroupPermissions['sysop']['delete'] = true;
792 $wgGroupPermissions['sysop']['deletedhistory'] = true; // can view deleted history entries, but not see or restore the text
793 $wgGroupPermissions['sysop']['editinterface'] = true;
794 $wgGroupPermissions['sysop']['import'] = true;
795 $wgGroupPermissions['sysop']['importupload'] = true;
796 $wgGroupPermissions['sysop']['move'] = true;
797 $wgGroupPermissions['sysop']['patrol'] = true;
798 $wgGroupPermissions['sysop']['protect'] = true;
799 $wgGroupPermissions['sysop']['rollback'] = true;
800 $wgGroupPermissions['sysop']['upload'] = true;
801 $wgGroupPermissions['sysop']['reupload'] = true;
802 $wgGroupPermissions['sysop']['reupload-shared'] = true;
803 $wgGroupPermissions['sysop']['unwatchedpages'] = true;
804 $wgGroupPermissions['sysop']['autoconfirmed'] = true;
805
806 // Permission to change users' group assignments
807 $wgGroupPermissions['bureaucrat']['userrights'] = true;
808
809 /**
810 * The developer group is deprecated, but can be activated if need be
811 * to use the 'lockdb' and 'unlockdb' special pages. Those require
812 * that a lock file be defined and creatable/removable by the web
813 * server.
814 */
815 # $wgGroupPermissions['developer']['siteadmin'] = true;
816
817
818 /**
819 * Set of available actions that can be restricted via Special:Protect
820 * You probably shouldn't change this.
821 */
822 $wgRestrictionTypes = array( 'edit', 'move' );
823
824 /**
825 * Set of permission keys that can be selected via Special:Protect.
826 * 'autoconfirm' allows all registerd users if $wgAutoConfirmAge is 0.
827 */
828 $wgRestrictionLevels = array( '', 'autoconfirmed', 'sysop' );
829
830
831 /**
832 * Number of seconds an account is required to age before
833 * it's given the implicit 'autoconfirm' group membership.
834 * This can be used to limit privileges of new accounts.
835 *
836 * Accounts created by earlier versions of the software
837 * may not have a recorded creation date, and will always
838 * be considered to pass the age test.
839 *
840 * When left at 0, all registered accounts will pass.
841 */
842 $wgAutoConfirmAge = 0;
843 //$wgAutoConfirmAge = 600; // ten minutes
844 //$wgAutoConfirmAge = 3600*24; // one day
845
846
847
848 # Proxy scanner settings
849 #
850
851 /**
852 * If you enable this, every editor's IP address will be scanned for open HTTP
853 * proxies.
854 *
855 * Don't enable this. Many sysops will report "hostile TCP port scans" to your
856 * ISP and ask for your server to be shut down.
857 *
858 * You have been warned.
859 */
860 $wgBlockOpenProxies = false;
861 /** Port we want to scan for a proxy */
862 $wgProxyPorts = array( 80, 81, 1080, 3128, 6588, 8000, 8080, 8888, 65506 );
863 /** Script used to scan */
864 $wgProxyScriptPath = "$IP/proxy_check.php";
865 /** */
866 $wgProxyMemcExpiry = 86400;
867 /** This should always be customised in LocalSettings.php */
868 $wgSecretKey = false;
869 /** big list of banned IP addresses, in the keys not the values */
870 $wgProxyList = array();
871 /** deprecated */
872 $wgProxyKey = false;
873
874 /** Number of accounts each IP address may create, 0 to disable.
875 * Requires memcached */
876 $wgAccountCreationThrottle = 0;
877
878 # Client-side caching:
879
880 /** Allow client-side caching of pages */
881 $wgCachePages = true;
882
883 /**
884 * Set this to current time to invalidate all prior cached pages. Affects both
885 * client- and server-side caching.
886 */
887 $wgCacheEpoch = '20030516000000';
888
889
890 # Server-side caching:
891
892 /**
893 * This will cache static pages for non-logged-in users to reduce
894 * database traffic on public sites.
895 * Must set $wgShowIPinHeader = false
896 */
897 $wgUseFileCache = false;
898 /** Directory where the cached page will be saved */
899 $wgFileCacheDirectory = "{$wgUploadDirectory}/cache";
900
901 /**
902 * When using the file cache, we can store the cached HTML gzipped to save disk
903 * space. Pages will then also be served compressed to clients that support it.
904 * THIS IS NOT COMPATIBLE with ob_gzhandler which is now enabled if supported in
905 * the default LocalSettings.php! If you enable this, remove that setting first.
906 *
907 * Requires zlib support enabled in PHP.
908 */
909 $wgUseGzip = false;
910
911 # Email notification settings
912 #
913
914 /** For email notification on page changes */
915 $wgPasswordSender = $wgEmergencyContact;
916
917 # true: from page editor if s/he opted-in
918 # false: Enotif mails appear to come from $wgEmergencyContact
919 $wgEnotifFromEditor = false;
920
921 // TODO move UPO to preferences probably ?
922 # If set to true, users get a corresponding option in their preferences and can choose to enable or disable at their discretion
923 # If set to false, the corresponding input form on the user preference page is suppressed
924 # It call this to be a "user-preferences-option (UPO)"
925 $wgEmailAuthentication = true; # UPO (if this is set to false, texts referring to authentication are suppressed)
926 $wgEnotifWatchlist = false; # UPO
927 $wgEnotifUserTalk = false; # UPO
928 $wgEnotifRevealEditorAddress = false; # UPO; reply-to address may be filled with page editor's address (if user allowed this in the preferences)
929 $wgEnotifMinorEdits = true; # UPO; false: "minor edits" on pages do not trigger notification mails.
930 # # Attention: _every_ change on a user_talk page trigger a notification mail (if the user is not yet notified)
931
932
933 /** Show watching users in recent changes, watchlist and page history views */
934 $wgRCShowWatchingUsers = false; # UPO
935 /** Show watching users in Page views */
936 $wgPageShowWatchingUsers = false;
937 /**
938 * Show "Updated (since my last visit)" marker in RC view, watchlist and history
939 * view for watched pages with new changes */
940 $wgShowUpdatedMarker = true;
941
942 $wgCookieExpiration = 2592000;
943
944 /** Clock skew or the one-second resolution of time() can occasionally cause cache
945 * problems when the user requests two pages within a short period of time. This
946 * variable adds a given number of seconds to vulnerable timestamps, thereby giving
947 * a grace period.
948 */
949 $wgClockSkewFudge = 5;
950
951 # Squid-related settings
952 #
953
954 /** Enable/disable Squid */
955 $wgUseSquid = false;
956
957 /** If you run Squid3 with ESI support, enable this (default:false): */
958 $wgUseESI = false;
959
960 /** Internal server name as known to Squid, if different */
961 # $wgInternalServer = 'http://yourinternal.tld:8000';
962 $wgInternalServer = $wgServer;
963
964 /**
965 * Cache timeout for the squid, will be sent as s-maxage (without ESI) or
966 * Surrogate-Control (with ESI). Without ESI, you should strip out s-maxage in
967 * the Squid config. 18000 seconds = 5 hours, more cache hits with 2678400 = 31
968 * days
969 */
970 $wgSquidMaxage = 18000;
971
972 /**
973 * A list of proxy servers (ips if possible) to purge on changes don't specify
974 * ports here (80 is default)
975 */
976 # $wgSquidServers = array('127.0.0.1');
977 $wgSquidServers = array();
978 $wgSquidServersNoPurge = array();
979
980 /** Maximum number of titles to purge in any one client operation */
981 $wgMaxSquidPurgeTitles = 400;
982
983 /** HTCP multicast purging */
984 $wgHTCPPort = 4827;
985 $wgHTCPMulticastTTL = 1;
986 # $wgHTCPMulticastAddress = "224.0.0.85";
987
988 # Cookie settings:
989 #
990 /**
991 * Set to set an explicit domain on the login cookies eg, "justthis.domain. org"
992 * or ".any.subdomain.net"
993 */
994 $wgCookieDomain = '';
995 $wgCookiePath = '/';
996 $wgCookieSecure = ($wgProto == 'https');
997 $wgDisableCookieCheck = false;
998
999 /** Whether to allow inline image pointing to other websites */
1000 $wgAllowExternalImages = true;
1001
1002 /** If the above is false, you can specify an exception here. Image URLs
1003 * that start with this string are then rendered, while all others are not.
1004 * You can use this to set up a trusted, simple repository of images.
1005 *
1006 * Example:
1007 * $wgAllowExternalImagesFrom = 'http://127.0.0.1/';
1008 */
1009 $wgAllowExternalImagesFrom = '';
1010
1011 /** Disable database-intensive features */
1012 $wgMiserMode = false;
1013 /** Disable all query pages if miser mode is on, not just some */
1014 $wgDisableQueryPages = false;
1015 /** Generate a watchlist once every hour or so */
1016 $wgUseWatchlistCache = false;
1017 /** The hour or so mentioned above */
1018 $wgWLCacheTimeout = 3600;
1019
1020 /**
1021 * To use inline TeX, you need to compile 'texvc' (in the 'math' subdirectory of
1022 * the MediaWiki package and have latex, dvips, gs (ghostscript), andconvert
1023 * (ImageMagick) installed and available in the PATH.
1024 * Please see math/README for more information.
1025 */
1026 $wgUseTeX = false;
1027 /** Location of the texvc binary */
1028 $wgTexvc = './math/texvc';
1029
1030 #
1031 # Profiling / debugging
1032 #
1033
1034 /** Enable for more detailed by-function times in debug log */
1035 $wgProfiling = false;
1036 /** Only record profiling info for pages that took longer than this */
1037 $wgProfileLimit = 0.0;
1038 /** Don't put non-profiling info into log file */
1039 $wgProfileOnly = false;
1040 /** Log sums from profiling into "profiling" table in db. */
1041 $wgProfileToDatabase = false;
1042 /** Only profile every n requests when profiling is turned on */
1043 $wgProfileSampleRate = 1;
1044 /** If true, print a raw call tree instead of per-function report */
1045 $wgProfileCallTree = false;
1046 /** If not empty, specifies profiler type to load */
1047 $wgProfilerType = '';
1048
1049 /** Settings for UDP profiler */
1050 $wgUDPProfilerHost = '127.0.0.1';
1051 $wgUDPProfilerPort = '3811';
1052
1053 /** Detects non-matching wfProfileIn/wfProfileOut calls */
1054 $wgDebugProfiling = false;
1055 /** Output debug message on every wfProfileIn/wfProfileOut */
1056 $wgDebugFunctionEntry = 0;
1057 /** Lots of debugging output from SquidUpdate.php */
1058 $wgDebugSquid = false;
1059
1060 $wgDisableCounters = false;
1061 $wgDisableTextSearch = false;
1062 $wgDisableSearchContext = false;
1063 /**
1064 * If you've disabled search semi-permanently, this also disables updates to the
1065 * table. If you ever re-enable, be sure to rebuild the search table.
1066 */
1067 $wgDisableSearchUpdate = false;
1068 /** Uploads have to be specially set up to be secure */
1069 $wgEnableUploads = false;
1070 /**
1071 * Show EXIF data, on by default if available.
1072 * Requires PHP's EXIF extension: http://www.php.net/manual/en/ref.exif.php
1073 */
1074 $wgShowEXIF = function_exists( 'exif_read_data' );
1075
1076 /**
1077 * Set to true to enable the upload _link_ while local uploads are disabled.
1078 * Assumes that the special page link will be bounced to another server where
1079 * uploads do work.
1080 */
1081 $wgRemoteUploads = false;
1082 $wgDisableAnonTalk = false;
1083 /**
1084 * Do DELETE/INSERT for link updates instead of incremental
1085 */
1086 $wgUseDumbLinkUpdate = false;
1087
1088 /**
1089 * Anti-lock flags - bitfield
1090 * ALF_PRELOAD_LINKS
1091 * Preload links during link update for save
1092 * ALF_PRELOAD_EXISTENCE
1093 * Preload cur_id during replaceLinkHolders
1094 * ALF_NO_LINK_LOCK
1095 * Don't use locking reads when updating the link table. This is
1096 * necessary for wikis with a high edit rate for performance
1097 * reasons, but may cause link table inconsistency
1098 * ALF_NO_BLOCK_LOCK
1099 * As for ALF_LINK_LOCK, this flag is a necessity for high-traffic
1100 * wikis.
1101 */
1102 $wgAntiLockFlags = 0;
1103
1104 /**
1105 * Path to the GNU diff3 utility. If the file doesn't exist, edit conflicts will
1106 * fall back to the old behaviour (no merging).
1107 */
1108 $wgDiff3 = '/usr/bin/diff3';
1109
1110 /**
1111 * We can also compress text in the old revisions table. If this is set on, old
1112 * revisions will be compressed on page save if zlib support is available. Any
1113 * compressed revisions will be decompressed on load regardless of this setting
1114 * *but will not be readable at all* if zlib support is not available.
1115 */
1116 $wgCompressRevisions = false;
1117
1118 /**
1119 * This is the list of preferred extensions for uploading files. Uploading files
1120 * with extensions not in this list will trigger a warning.
1121 */
1122 $wgFileExtensions = array( 'png', 'gif', 'jpg', 'jpeg' );
1123
1124 /** Files with these extensions will never be allowed as uploads. */
1125 $wgFileBlacklist = array(
1126 # HTML may contain cookie-stealing JavaScript and web bugs
1127 'html', 'htm', 'js', 'jsb',
1128 # PHP scripts may execute arbitrary code on the server
1129 'php', 'phtml', 'php3', 'php4', 'phps',
1130 # Other types that may be interpreted by some servers
1131 'shtml', 'jhtml', 'pl', 'py', 'cgi',
1132 # May contain harmful executables for Windows victims
1133 'exe', 'scr', 'dll', 'msi', 'vbs', 'bat', 'com', 'pif', 'cmd', 'vxd', 'cpl' );
1134
1135 /** Files with these mime types will never be allowed as uploads
1136 * if $wgVerifyMimeType is enabled.
1137 */
1138 $wgMimeTypeBlacklist= array(
1139 # HTML may contain cookie-stealing JavaScript and web bugs
1140 'text/html', 'text/javascript', 'text/x-javascript', 'application/x-shellscript',
1141 # PHP scripts may execute arbitrary code on the server
1142 'application/x-php', 'text/x-php',
1143 # Other types that may be interpreted by some servers
1144 'text/x-python', 'text/x-perl', 'text/x-bash', 'text/x-sh', 'text/x-csh',
1145 # Windows metafile, client-side vulnerability on some systems
1146 'application/x-msmetafile'
1147 );
1148
1149 /** This is a flag to determine whether or not to check file extensions on upload. */
1150 $wgCheckFileExtensions = true;
1151
1152 /**
1153 * If this is turned off, users may override the warning for files not covered
1154 * by $wgFileExtensions.
1155 */
1156 $wgStrictFileExtensions = true;
1157
1158 /** Warn if uploaded files are larger than this */
1159 $wgUploadSizeWarning = 150 * 1024;
1160
1161 /** For compatibility with old installations set to false */
1162 $wgPasswordSalt = true;
1163
1164 /** Which namespaces should support subpages?
1165 * See Language.php for a list of namespaces.
1166 */
1167 $wgNamespacesWithSubpages = array(
1168 NS_TALK => true,
1169 NS_USER => true,
1170 NS_USER_TALK => true,
1171 NS_PROJECT_TALK => true,
1172 NS_IMAGE_TALK => true,
1173 NS_MEDIAWIKI_TALK => true,
1174 NS_TEMPLATE_TALK => true,
1175 NS_HELP_TALK => true,
1176 NS_CATEGORY_TALK => true
1177 );
1178
1179 $wgNamespacesToBeSearchedDefault = array(
1180 NS_MAIN => true,
1181 );
1182
1183 /** If set, a bold ugly notice will show up at the top of every page. */
1184 $wgSiteNotice = '';
1185
1186
1187 #
1188 # Images settings
1189 #
1190
1191 /** dynamic server side image resizing ("Thumbnails") */
1192 $wgUseImageResize = false;
1193
1194 /**
1195 * Resizing can be done using PHP's internal image libraries or using
1196 * ImageMagick. The later supports more file formats than PHP, which only
1197 * supports PNG, GIF, JPG, XBM and WBMP.
1198 *
1199 * Use Image Magick instead of PHP builtin functions.
1200 */
1201 $wgUseImageMagick = false;
1202 /** The convert command shipped with ImageMagick */
1203 $wgImageMagickConvertCommand = '/usr/bin/convert';
1204
1205 # Scalable Vector Graphics (SVG) may be uploaded as images.
1206 # Since SVG support is not yet standard in browsers, it is
1207 # necessary to rasterize SVGs to PNG as a fallback format.
1208 #
1209 # An external program is required to perform this conversion:
1210 $wgSVGConverters = array(
1211 'ImageMagick' => '$path/convert -background white -geometry $width $input $output',
1212 'sodipodi' => '$path/sodipodi -z -w $width -f $input -e $output',
1213 'inkscape' => '$path/inkscape -z -w $width -f $input -e $output',
1214 'batik' => 'java -Djava.awt.headless=true -jar $path/batik-rasterizer.jar -w $width -d $output $input',
1215 'rsvg' => '$path/rsvg -w$width -h$height $input $output',
1216 );
1217 /** Pick one of the above */
1218 $wgSVGConverter = 'ImageMagick';
1219 /** If not in the executable PATH, specify */
1220 $wgSVGConverterPath = '';
1221 /** Don't scale a SVG larger than this unless its native size is larger */
1222 $wgSVGMaxSize = 1024;
1223 /**
1224 * Don't thumbnail an image if it will use too much working memory
1225 * Default is 50 MB if decompressed to RGBA form, which corresponds to
1226 * 12.5 million pixels or 3500x3500
1227 */
1228 $wgMaxImageArea = 1.25e7;
1229 /**
1230 * If rendered thumbnail files are older than this timestamp, they
1231 * will be rerendered on demand as if the file didn't already exist.
1232 * Update if there is some need to force thumbs and SVG rasterizations
1233 * to rerender, such as fixes to rendering bugs.
1234 */
1235 $wgThumbnailEpoch = '20030516000000';
1236
1237
1238
1239 /** Set $wgCommandLineMode if it's not set already, to avoid notices */
1240 if( !isset( $wgCommandLineMode ) ) {
1241 $wgCommandLineMode = false;
1242 }
1243
1244
1245 #
1246 # Recent changes settings
1247 #
1248
1249 /** Log IP addresses in the recentchanges table */
1250 $wgPutIPinRC = false;
1251
1252 /**
1253 * Recentchanges items are periodically purged; entries older than this many
1254 * seconds will go.
1255 * For one week : 7 * 24 * 3600
1256 */
1257 $wgRCMaxAge = 7 * 24 * 3600;
1258
1259
1260 # Send RC updates via UDP
1261 $wgRC2UDPAddress = false;
1262 $wgRC2UDPPort = false;
1263 $wgRC2UDPPrefix = '';
1264
1265 #
1266 # Copyright and credits settings
1267 #
1268
1269 /** RDF metadata toggles */
1270 $wgEnableDublinCoreRdf = false;
1271 $wgEnableCreativeCommonsRdf = false;
1272
1273 /** Override for copyright metadata.
1274 * TODO: these options need documentation
1275 */
1276 $wgRightsPage = NULL;
1277 $wgRightsUrl = NULL;
1278 $wgRightsText = NULL;
1279 $wgRightsIcon = NULL;
1280
1281 /** Set this to some HTML to override the rights icon with an arbitrary logo */
1282 $wgCopyrightIcon = NULL;
1283
1284 /** Set this to true if you want detailed copyright information forms on Upload. */
1285 $wgUseCopyrightUpload = false;
1286
1287 /** Set this to false if you want to disable checking that detailed copyright
1288 * information values are not empty. */
1289 $wgCheckCopyrightUpload = true;
1290
1291 /**
1292 * Set this to the number of authors that you want to be credited below an
1293 * article text. Set it to zero to hide the attribution block, and a negative
1294 * number (like -1) to show all authors. Note that this will require 2-3 extra
1295 * database hits, which can have a not insignificant impact on performance for
1296 * large wikis.
1297 */
1298 $wgMaxCredits = 0;
1299
1300 /** If there are more than $wgMaxCredits authors, show $wgMaxCredits of them.
1301 * Otherwise, link to a separate credits page. */
1302 $wgShowCreditsIfMax = true;
1303
1304
1305
1306 /**
1307 * Set this to false to avoid forcing the first letter of links to capitals.
1308 * WARNING: may break links! This makes links COMPLETELY case-sensitive. Links
1309 * appearing with a capital at the beginning of a sentence will *not* go to the
1310 * same place as links in the middle of a sentence using a lowercase initial.
1311 */
1312 $wgCapitalLinks = true;
1313
1314 /**
1315 * List of interwiki prefixes for wikis we'll accept as sources for
1316 * Special:Import (for sysops). Since complete page history can be imported,
1317 * these should be 'trusted'.
1318 *
1319 * If a user has the 'import' permission but not the 'importupload' permission,
1320 * they will only be able to run imports through this transwiki interface.
1321 */
1322 $wgImportSources = array();
1323
1324 /**
1325 * If set to false, disables the full-history option on Special:Export.
1326 * This is currently poorly optimized for long edit histories, so is
1327 * disabled on Wikimedia's sites.
1328 */
1329 $wgExportAllowHistory = true;
1330
1331
1332 /** Text matching this regular expression will be recognised as spam
1333 * See http://en.wikipedia.org/wiki/Regular_expression */
1334 $wgSpamRegex = false;
1335 /** Similarly if this function returns true */
1336 $wgFilterCallback = false;
1337
1338 /** Go button goes straight to the edit screen if the article doesn't exist. */
1339 $wgGoToEdit = false;
1340
1341 /** Allow limited user-specified HTML in wiki pages?
1342 * It will be run through a whitelist for security. Set this to false if you
1343 * want wiki pages to consist only of wiki markup. Note that replacements do not
1344 * yet exist for all HTML constructs.*/
1345 $wgUserHtml = true;
1346
1347 /** Allow raw, unchecked HTML in <html>...</html> sections.
1348 * THIS IS VERY DANGEROUS on a publically editable site, so USE wgGroupPermissions
1349 * TO RESTRICT EDITING to only those that you trust
1350 */
1351 $wgRawHtml = false;
1352
1353 /**
1354 * $wgUseTidy: use tidy to make sure HTML output is sane.
1355 * This should only be enabled if $wgUserHtml is true.
1356 * tidy is a free tool that fixes broken HTML.
1357 * See http://www.w3.org/People/Raggett/tidy/
1358 * $wgTidyBin should be set to the path of the binary and
1359 * $wgTidyConf to the path of the configuration file.
1360 * $wgTidyOpts can include any number of parameters.
1361 *
1362 * $wgTidyInternal controls the use of the PECL extension to use an in-
1363 * process tidy library instead of spawning a separate program.
1364 * Normally you shouldn't need to override the setting except for
1365 * debugging. To install, use 'pear install tidy' and add a line
1366 * 'extension=tidy.so' to php.ini.
1367 */
1368 $wgUseTidy = false;
1369 $wgTidyBin = 'tidy';
1370 $wgTidyConf = $IP.'/extensions/tidy/tidy.conf';
1371 $wgTidyOpts = '';
1372 $wgTidyInternal = function_exists( 'tidy_load_config' );
1373
1374 /** See list of skins and their symbolic names in languages/Language.php */
1375 $wgDefaultSkin = 'monobook';
1376
1377 /**
1378 * Settings added to this array will override the language globals for the user
1379 * preferences used by anonymous visitors and newly created accounts. (See names
1380 * and sample values in languages/Language.php)
1381 * For instance, to disable section editing links:
1382 * $wgDefaultUserOptions ['editsection'] = 0;
1383 *
1384 */
1385 $wgDefaultUserOptions = array();
1386
1387 /** Whether or not to allow and use real name fields. Defaults to true. */
1388 $wgAllowRealName = true;
1389
1390 /** Use XML parser? */
1391 $wgUseXMLparser = false ;
1392
1393 /** Extensions */
1394 $wgSkinExtensionFunctions = array();
1395 $wgExtensionFunctions = array();
1396 /**
1397 * An array of extension types and inside that their names, versions, authors
1398 * and urls, note that the version and url key can be omitted.
1399 *
1400 * <code>
1401 * $wgExtensionCredits[$type][] = array(
1402 * 'name' => 'Example extension',
1403 * 'version' => 1.9,
1404 * 'author' => 'Foo Barstein',
1405 * 'url' => 'http://wwww.example.com/Example%20Extension/',
1406 * );
1407 * </code>
1408 *
1409 * Where $type is 'specialpage', 'parserhook', or 'other'.
1410 */
1411 $wgExtensionCredits = array();
1412
1413 /**
1414 * Allow user Javascript page?
1415 * This enables a lot of neat customizations, but may
1416 * increase security risk to users and server load.
1417 */
1418 $wgAllowUserJs = false;
1419
1420 /**
1421 * Allow user Cascading Style Sheets (CSS)?
1422 * This enables a lot of neat customizations, but may
1423 * increase security risk to users and server load.
1424 */
1425 $wgAllowUserCss = false;
1426
1427 /** Use the site's Javascript page? */
1428 $wgUseSiteJs = true;
1429
1430 /** Use the site's Cascading Style Sheets (CSS)? */
1431 $wgUseSiteCss = true;
1432
1433 /** Filter for Special:Randompage. Part of a WHERE clause */
1434 $wgExtraRandompageSQL = false;
1435
1436 /** Allow the "info" action, very inefficient at the moment */
1437 $wgAllowPageInfo = false;
1438
1439 /** Maximum indent level of toc. */
1440 $wgMaxTocLevel = 999;
1441
1442 /** Use external C++ diff engine (module wikidiff from the extensions package) */
1443 $wgUseExternalDiffEngine = false;
1444
1445 /** Use RC Patrolling to check for vandalism */
1446 $wgUseRCPatrol = true;
1447
1448 /** Set maximum number of results to return in syndication feeds (RSS, Atom) for
1449 * eg Recentchanges, Newpages. */
1450 $wgFeedLimit = 50;
1451
1452 /** _Minimum_ timeout for cached Recentchanges feed, in seconds.
1453 * A cached version will continue to be served out even if changes
1454 * are made, until this many seconds runs out since the last render.
1455 *
1456 * If set to 0, feed caching is disabled. Use this for debugging only;
1457 * feed generation can be pretty slow with diffs.
1458 */
1459 $wgFeedCacheTimeout = 60;
1460
1461 /** When generating Recentchanges RSS/Atom feed, diffs will not be generated for
1462 * pages larger than this size. */
1463 $wgFeedDiffCutoff = 32768;
1464
1465
1466 /**
1467 * Additional namespaces. If the namespaces defined in Language.php and
1468 * Namespace.php are insufficient, you can create new ones here, for example,
1469 * to import Help files in other languages.
1470 * PLEASE NOTE: Once you delete a namespace, the pages in that namespace will
1471 * no longer be accessible. If you rename it, then you can access them through
1472 * the new namespace name.
1473 *
1474 * Custom namespaces should start at 100 to avoid conflicting with standard
1475 * namespaces, and should always follow the even/odd main/talk pattern.
1476 */
1477 #$wgExtraNamespaces =
1478 # array(100 => "Hilfe",
1479 # 101 => "Hilfe_Diskussion",
1480 # 102 => "Aide",
1481 # 103 => "Discussion_Aide"
1482 # );
1483 $wgExtraNamespaces = NULL;
1484
1485 /**
1486 * Limit images on image description pages to a user-selectable limit. In order
1487 * to reduce disk usage, limits can only be selected from a list. This is the
1488 * list of settings the user can choose from:
1489 */
1490 $wgImageLimits = array (
1491 array(320,240),
1492 array(640,480),
1493 array(800,600),
1494 array(1024,768),
1495 array(1280,1024),
1496 array(10000,10000) );
1497
1498 /**
1499 * Adjust thumbnails on image pages according to a user setting. In order to
1500 * reduce disk usage, the values can only be selected from a list. This is the
1501 * list of settings the user can choose from:
1502 */
1503 $wgThumbLimits = array(
1504 120,
1505 150,
1506 180,
1507 200,
1508 250,
1509 300
1510 );
1511
1512 /**
1513 * On category pages, show thumbnail gallery for images belonging to that
1514 * category instead of listing them as articles.
1515 */
1516 $wgCategoryMagicGallery = true;
1517
1518 /**
1519 * Browser Blacklist for unicode non compliant browsers
1520 * Contains a list of regexps : "/regexp/" matching problematic browsers
1521 */
1522 $wgBrowserBlackList = array(
1523 "/Mozilla\/4\.78 \[en\] \(X11; U; Linux/",
1524 /**
1525 * MSIE on Mac OS 9 is teh sux0r, converts þ to <thorn>, ð to <eth>, Þ to <THORN> and Ð to <ETH>
1526 *
1527 * Known useragents:
1528 * - Mozilla/4.0 (compatible; MSIE 5.0; Mac_PowerPC)
1529 * - Mozilla/4.0 (compatible; MSIE 5.15; Mac_PowerPC)
1530 * - Mozilla/4.0 (compatible; MSIE 5.23; Mac_PowerPC)
1531 * - [...]
1532 *
1533 * @link http://en.wikipedia.org/w/index.php?title=User%3A%C6var_Arnfj%F6r%F0_Bjarmason%2Ftestme&diff=12356041&oldid=12355864
1534 * @link http://en.wikipedia.org/wiki/Template%3AOS9
1535 */
1536 "/Mozilla\/4\.0 \(compatible; MSIE \d+\.\d+; Mac_PowerPC\)/"
1537 );
1538
1539 /**
1540 * Fake out the timezone that the server thinks it's in. This will be used for
1541 * date display and not for what's stored in the DB. Leave to null to retain
1542 * your server's OS-based timezone value. This is the same as the timezone.
1543 *
1544 * This variable is currently used ONLY for signature formatting, not for
1545 * anything else.
1546 */
1547 # $wgLocaltimezone = 'GMT';
1548 # $wgLocaltimezone = 'PST8PDT';
1549 # $wgLocaltimezone = 'Europe/Sweden';
1550 # $wgLocaltimezone = 'CET';
1551 $wgLocaltimezone = null;
1552
1553 /**
1554 * Set an offset from UTC in hours to use for the default timezone setting
1555 * for anonymous users and new user accounts.
1556 *
1557 * This setting is used for most date/time displays in the software, and is
1558 * overrideable in user preferences. It is *not* used for signature timestamps.
1559 *
1560 * You can set it to match the configured server timezone like this:
1561 * $wgLocalTZoffset = date("Z") / 3600;
1562 *
1563 * If your server is not configured for the timezone you want, you can set
1564 * this in conjunction with the signature timezone and override the TZ
1565 * environment variable like so:
1566 * $wgLocaltimezone="Europe/Berlin";
1567 * putenv("TZ=$wgLocaltimezone");
1568 * $wgLocalTZoffset = date("Z") / 3600;
1569 *
1570 * Leave at NULL to show times in universal time (UTC/GMT).
1571 */
1572 $wgLocalTZoffset = null;
1573
1574
1575 /**
1576 * When translating messages with wfMsg(), it is not always clear what should be
1577 * considered UI messages and what shoud be content messages.
1578 *
1579 * For example, for regular wikipedia site like en, there should be only one
1580 * 'mainpage', therefore when getting the link of 'mainpage', we should treate
1581 * it as content of the site and call wfMsgForContent(), while for rendering the
1582 * text of the link, we call wfMsg(). The code in default behaves this way.
1583 * However, sites like common do offer different versions of 'mainpage' and the
1584 * like for different languages. This array provides a way to override the
1585 * default behavior. For example, to allow language specific mainpage and
1586 * community portal, set
1587 *
1588 * $wgForceUIMsgAsContentMsg = array( 'mainpage', 'portal-url' );
1589 */
1590 $wgForceUIMsgAsContentMsg = array();
1591
1592
1593 /**
1594 * Authentication plugin.
1595 */
1596 $wgAuth = null;
1597
1598 /**
1599 * Global list of hooks.
1600 * Add a hook by doing:
1601 * $wgHooks['event_name'][] = $function;
1602 * or:
1603 * $wgHooks['event_name'][] = array($function, $data);
1604 * or:
1605 * $wgHooks['event_name'][] = array($object, 'method');
1606 */
1607 $wgHooks = array();
1608
1609 /**
1610 * Experimental preview feature to fetch rendered text
1611 * over an XMLHttpRequest from JavaScript instead of
1612 * forcing a submit and reload of the whole page.
1613 * Leave disabled unless you're testing it.
1614 */
1615 $wgLivePreview = false;
1616
1617 /**
1618 * Disable the internal MySQL-based search, to allow it to be
1619 * implemented by an extension instead.
1620 */
1621 $wgDisableInternalSearch = false;
1622
1623 /**
1624 * Set this to a URL to forward search requests to some external location.
1625 * If the URL includes '$1', this will be replaced with the URL-encoded
1626 * search term.
1627 *
1628 * For example, to forward to Google you'd have something like:
1629 * $wgSearchForwardUrl = 'http://www.google.com/search?q=$1' .
1630 * '&domains=http://example.com' .
1631 * '&sitesearch=http://example.com' .
1632 * '&ie=utf-8&oe=utf-8';
1633 */
1634 $wgSearchForwardUrl = null;
1635
1636 /**
1637 * If true, external URL links in wiki text will be given the
1638 * rel="nofollow" attribute as a hint to search engines that
1639 * they should not be followed for ranking purposes as they
1640 * are user-supplied and thus subject to spamming.
1641 */
1642 $wgNoFollowLinks = true;
1643
1644 /**
1645 * Specifies the minimal length of a user password. If set to
1646 * 0, empty passwords are allowed.
1647 */
1648 $wgMinimalPasswordLength = 0;
1649
1650 /**
1651 * Activate external editor interface for files and pages
1652 * See http://meta.wikimedia.org/wiki/Help:External_editors
1653 */
1654 $wgUseExternalEditor = true;
1655
1656 /** Whether or not to sort special pages in Special:Specialpages */
1657
1658 $wgSortSpecialPages = true;
1659
1660 /**
1661 * Specify the name of a skin that should not be presented in the
1662 * list of available skins.
1663 * Use for blacklisting a skin which you do not want to remove
1664 * from the .../skins/ directory
1665 */
1666 $wgSkipSkin = '';
1667 $wgSkipSkins = array(); # More of the same
1668
1669 /**
1670 * Array of disabled article actions, e.g. view, edit, dublincore, delete, etc.
1671 */
1672 $wgDisabledActions = array();
1673
1674 /**
1675 * Disable redirects to special pages and interwiki redirects, which use a 302 and have no "redirected from" link
1676 */
1677 $wgDisableHardRedirects = false;
1678
1679 /**
1680 * Use http.dnsbl.sorbs.net to check for open proxies
1681 */
1682 $wgEnableSorbs = false;
1683
1684 /**
1685 * Use opm.blitzed.org to check for open proxies.
1686 * Not yet actually used.
1687 */
1688 $wgEnableOpm = false;
1689
1690 /**
1691 * Proxy whitelist, list of addresses that are assumed to be non-proxy despite what the other
1692 * methods might say
1693 */
1694 $wgProxyWhitelist = array();
1695
1696 /**
1697 * Simple rate limiter options to brake edit floods.
1698 * Maximum number actions allowed in the given number of seconds;
1699 * after that the violating client receives HTTP 500 error pages
1700 * until the period elapses.
1701 *
1702 * array( 4, 60 ) for a maximum of 4 hits in 60 seconds.
1703 *
1704 * This option set is experimental and likely to change.
1705 * Requires memcached.
1706 */
1707 $wgRateLimits = array(
1708 'edit' => array(
1709 'anon' => null, // for any and all anonymous edits (aggregate)
1710 'user' => null, // for each logged-in user
1711 'newbie' => null, // for each recent account; overrides 'user'
1712 'ip' => null, // for each anon and recent account
1713 'subnet' => null, // ... with final octet removed
1714 ),
1715 'move' => array(
1716 'user' => null,
1717 'newbie' => null,
1718 'ip' => null,
1719 'subnet' => null,
1720 ),
1721 );
1722
1723 /**
1724 * Set to a filename to log rate limiter hits.
1725 */
1726 $wgRateLimitLog = null;
1727
1728 /**
1729 * On Special:Unusedimages, consider images "used", if they are put
1730 * into a category. Default (false) is not to count those as used.
1731 */
1732 $wgCountCategorizedImagesAsUsed = false;
1733
1734 /**
1735 * External stores allow including content
1736 * from non database sources following URL links
1737 *
1738 * Short names of ExternalStore classes may be specified in an array here:
1739 * $wgExternalStores = array("http","file","custom")...
1740 *
1741 * CAUTION: Access to database might lead to code execution
1742 */
1743 $wgExternalStores = false;
1744
1745 /**
1746 * An array of external mysql servers, e.g.
1747 * $wgExternalServers = array( 'cluster1' => array( 'srv28', 'srv29', 'srv30' ) );
1748 */
1749 $wgExternalServers = array();
1750
1751 /**
1752 * list of trusted media-types and mime types.
1753 * Use the MEDIATYPE_xxx constants to represent media types.
1754 * This list is used by Image::isSafeFile
1755 *
1756 * Types not listed here will have a warning about unsafe content
1757 * displayed on the images description page. It would also be possible
1758 * to use this for further restrictions, like disabling direct
1759 * [[media:...]] links for non-trusted formats.
1760 */
1761 $wgTrustedMediaFormats= array(
1762 MEDIATYPE_BITMAP, //all bitmap formats
1763 MEDIATYPE_AUDIO, //all audio formats
1764 MEDIATYPE_VIDEO, //all plain video formats
1765 "image/svg", //svg (only needed if inline rendering of svg is not supported)
1766 "application/pdf", //PDF files
1767 #"application/x-shockwafe-flash", //flash/shockwave movie
1768 );
1769
1770 /**
1771 * Allow special page inclusions such as {{Special:Allpages}}
1772 */
1773 $wgAllowSpecialInclusion = true;
1774
1775 /**
1776 * Timeout for HTTP requests done via CURL
1777 */
1778 $wgHTTPTimeout = 3;
1779
1780 /**
1781 * Proxy to use for CURL requests.
1782 */
1783 $wgHTTPProxy = false;
1784
1785 /**
1786 * Enable interwiki transcluding. Only when iw_trans=1.
1787 */
1788 $wgEnableScaryTranscluding = false;
1789
1790 /**
1791 * Support blog-style "trackbacks" for articles. See
1792 * http://www.sixapart.com/pronet/docs/trackback_spec for details.
1793 */
1794 $wgUseTrackbacks = false;
1795
1796 /**
1797 * Enable filtering of robots in Special:Watchlist
1798 */
1799
1800 $wgFilterRobotsWL = false;
1801
1802 ?>