Add support for microsoft bmp format. It simply give out the height and size,
[lhc/web/wiklou.git] / includes / DefaultSettings.php
1 <?php
2 /**
3 *
4 * NEVER 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://www.mediawiki.org/wiki/Help:Configuration_settings
17 *
18 */
19
20 # This is not a valid entry point, perform no further processing unless MEDIAWIKI is defined
21 if( !defined( 'MEDIAWIKI' ) ) {
22 echo "This file is part of MediaWiki and is not a valid entry point\n";
23 die( 1 );
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.10alpha';
35
36 /** Name of the site. It must be changed in LocalSettings.php */
37 $wgSitename = 'MediaWiki';
38
39 /**
40 * Name of the project namespace. If left set to false, $wgSitename will be
41 * used instead.
42 */
43 $wgMetaNamespace = false;
44
45 /**
46 * Name of the project talk namespace. If left set to false, a name derived
47 * from the name of the project namespace will be used.
48 */
49 $wgMetaNamespaceTalk = false;
50
51
52 /** URL of the server. It will be automatically built including https mode */
53 $wgServer = '';
54
55 if( isset( $_SERVER['SERVER_NAME'] ) ) {
56 $wgServerName = $_SERVER['SERVER_NAME'];
57 } elseif( isset( $_SERVER['HOSTNAME'] ) ) {
58 $wgServerName = $_SERVER['HOSTNAME'];
59 } elseif( isset( $_SERVER['HTTP_HOST'] ) ) {
60 $wgServerName = $_SERVER['HTTP_HOST'];
61 } elseif( isset( $_SERVER['SERVER_ADDR'] ) ) {
62 $wgServerName = $_SERVER['SERVER_ADDR'];
63 } else {
64 $wgServerName = 'localhost';
65 }
66
67 # check if server use https:
68 $wgProto = (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') ? 'https' : 'http';
69
70 $wgServer = $wgProto.'://' . $wgServerName;
71 # If the port is a non-standard one, add it to the URL
72 if( isset( $_SERVER['SERVER_PORT'] )
73 && !strpos( $wgServerName, ':' )
74 && ( ( $wgProto == 'http' && $_SERVER['SERVER_PORT'] != 80 )
75 || ( $wgProto == 'https' && $_SERVER['SERVER_PORT'] != 443 ) ) ) {
76
77 $wgServer .= ":" . $_SERVER['SERVER_PORT'];
78 }
79
80
81 /**
82 * The path we should point to.
83 * It might be a virtual path in case with use apache mod_rewrite for example
84 *
85 * This *needs* to be set correctly.
86 *
87 * Other paths will be set to defaults based on it unless they are directly
88 * set in LocalSettings.php
89 */
90 $wgScriptPath = '/wiki';
91
92 /**
93 * Whether to support URLs like index.php/Page_title
94 * These often break when PHP is set up in CGI mode.
95 * PATH_INFO *may* be correct if cgi.fix_pathinfo is
96 * set, but then again it may not; lighttpd converts
97 * incoming path data to lowercase on systems with
98 * case-insensitive filesystems, and there have been
99 * reports of problems on Apache as well.
100 *
101 * To be safe we'll continue to keep it off by default.
102 *
103 * Override this to false if $_SERVER['PATH_INFO']
104 * contains unexpectedly incorrect garbage, or to
105 * true if it is really correct.
106 *
107 * The default $wgArticlePath will be set based on
108 * this value at runtime, but if you have customized
109 * it, having this incorrectly set to true can
110 * cause redirect loops when "pretty URLs" are used.
111 *
112 */
113 $wgUsePathInfo =
114 ( strpos( php_sapi_name(), 'cgi' ) === false ) &&
115 ( strpos( php_sapi_name(), 'apache2filter' ) === false ) &&
116 ( strpos( php_sapi_name(), 'isapi' ) === false );
117
118
119 /**#@+
120 * Script users will request to get articles
121 * ATTN: Old installations used wiki.phtml and redirect.phtml -
122 * make sure that LocalSettings.php is correctly set!
123 *
124 * Will be set based on $wgScriptPath in Setup.php if not overridden
125 * in LocalSettings.php. Generally you should not need to change this
126 * unless you don't like seeing "index.php".
127 */
128 $wgScript = false; /// defaults to "{$wgScriptPath}/index.php"
129 $wgRedirectScript = false; /// defaults to "{$wgScriptPath}/redirect.php"
130 /**#@-*/
131
132
133 /**#@+
134 * These various web and file path variables are set to their defaults
135 * in Setup.php if they are not explicitly set from LocalSettings.php.
136 * If you do override them, be sure to set them all!
137 *
138 * These will relatively rarely need to be set manually, unless you are
139 * splitting style sheets or images outside the main document root.
140 *
141 * @global string
142 */
143 /**
144 * style path as seen by users
145 */
146 $wgStylePath = false; /// defaults to "{$wgScriptPath}/skins"
147 /**
148 * filesystem stylesheets directory
149 */
150 $wgStyleDirectory = false; /// defaults to "{$IP}/skins"
151 $wgStyleSheetPath = &$wgStylePath;
152 $wgArticlePath = false; /// default to "{$wgScript}/$1" or "{$wgScript}?title=$1", depending on $wgUsePathInfo
153 $wgVariantArticlePath = false;
154 $wgUploadPath = false; /// defaults to "{$wgScriptPath}/images"
155 $wgUploadDirectory = false; /// defaults to "{$IP}/images"
156 $wgHashedUploadDirectory = true;
157 $wgLogo = false; /// defaults to "{$wgStylePath}/common/images/wiki.png"
158 $wgFavicon = '/favicon.ico';
159 $wgMathPath = false; /// defaults to "{$wgUploadPath}/math"
160 $wgMathDirectory = false; /// defaults to "{$wgUploadDirectory}/math"
161 $wgTmpDirectory = false; /// defaults to "{$wgUploadDirectory}/tmp"
162 $wgUploadBaseUrl = "";
163 /**#@-*/
164
165 /**
166 * By default deleted files are simply discarded; to save them and
167 * make it possible to undelete images, create a directory which
168 * is writable to the web server but is not exposed to the internet.
169 *
170 * Set $wgSaveDeletedFiles to true and set up the save path in
171 * $wgFileStore['deleted']['directory'].
172 */
173 $wgSaveDeletedFiles = false;
174
175 /**
176 * New file storage paths; currently used only for deleted files.
177 * Set it like this:
178 *
179 * $wgFileStore['deleted']['directory'] = '/var/wiki/private/deleted';
180 *
181 */
182 $wgFileStore = array();
183 $wgFileStore['deleted']['directory'] = null; // Don't forget to set this.
184 $wgFileStore['deleted']['url'] = null; // Private
185 $wgFileStore['deleted']['hash'] = 3; // 3-level subdirectory split
186
187 /**
188 * Allowed title characters -- regex character class
189 * Don't change this unless you know what you're doing
190 *
191 * Problematic punctuation:
192 * []{}|# Are needed for link syntax, never enable these
193 * <> Causes problems with HTML escaping, don't use
194 * % Enabled by default, minor problems with path to query rewrite rules, see below
195 * + Enabled by default, but doesn't work with path to query rewrite rules, corrupted by apache
196 * ? Enabled by default, but doesn't work with path to PATH_INFO rewrites
197 *
198 * All three of these punctuation problems can be avoided by using an alias, instead of a
199 * rewrite rule of either variety.
200 *
201 * The problem with % is that when using a path to query rewrite rule, URLs are
202 * double-unescaped: once by Apache's path conversion code, and again by PHP. So
203 * %253F, for example, becomes "?". Our code does not double-escape to compensate
204 * for this, indeed double escaping would break if the double-escaped title was
205 * passed in the query string rather than the path. This is a minor security issue
206 * because articles can be created such that they are hard to view or edit.
207 *
208 * In some rare cases you may wish to remove + for compatibility with old links.
209 *
210 * Theoretically 0x80-0x9F of ISO 8859-1 should be disallowed, but
211 * this breaks interlanguage links
212 */
213 $wgLegalTitleChars = " %!\"$&'()*,\\-.\\/0-9:;=?@A-Z\\\\^_`a-z~\\x80-\\xFF+";
214
215
216 /**
217 * The external URL protocols
218 */
219 $wgUrlProtocols = array(
220 'http://',
221 'https://',
222 'ftp://',
223 'irc://',
224 'gopher://',
225 'telnet://', // Well if we're going to support the above.. -ævar
226 'nntp://', // @bug 3808 RFC 1738
227 'worldwind://',
228 'mailto:',
229 'news:'
230 );
231
232 /** internal name of virus scanner. This servers as a key to the $wgAntivirusSetup array.
233 * Set this to NULL to disable virus scanning. If not null, every file uploaded will be scanned for viruses.
234 * @global string $wgAntivirus
235 */
236 $wgAntivirus= NULL;
237
238 /** Configuration for different virus scanners. This an associative array of associative arrays:
239 * it contains on setup array per known scanner type. The entry is selected by $wgAntivirus, i.e.
240 * valid values for $wgAntivirus are the keys defined in this array.
241 *
242 * The configuration array for each scanner contains the following keys: "command", "codemap", "messagepattern";
243 *
244 * "command" is the full command to call the virus scanner - %f will be replaced with the name of the
245 * file to scan. If not present, the filename will be appended to the command. Note that this must be
246 * overwritten if the scanner is not in the system path; in that case, plase set
247 * $wgAntivirusSetup[$wgAntivirus]['command'] to the desired command with full path.
248 *
249 * "codemap" is a mapping of exit code to return codes of the detectVirus function in SpecialUpload.
250 * An exit code mapped to AV_SCAN_FAILED causes the function to consider the scan to be failed. This will pass
251 * the file if $wgAntivirusRequired is not set.
252 * An exit code mapped to AV_SCAN_ABORTED causes the function to consider the file to have an usupported format,
253 * which is probably imune to virusses. This causes the file to pass.
254 * An exit code mapped to AV_NO_VIRUS will cause the file to pass, meaning no virus was found.
255 * All other codes (like AV_VIRUS_FOUND) will cause the function to report a virus.
256 * You may use "*" as a key in the array to catch all exit codes not mapped otherwise.
257 *
258 * "messagepattern" is a perl regular expression to extract the meaningful part of the scanners
259 * output. The relevant part should be matched as group one (\1).
260 * If not defined or the pattern does not match, the full message is shown to the user.
261 *
262 * @global array $wgAntivirusSetup
263 */
264 $wgAntivirusSetup= array(
265
266 #setup for clamav
267 'clamav' => array (
268 'command' => "clamscan --no-summary ",
269
270 'codemap'=> array (
271 "0"=> AV_NO_VIRUS, #no virus
272 "1"=> AV_VIRUS_FOUND, #virus found
273 "52"=> AV_SCAN_ABORTED, #unsupported file format (probably imune)
274 "*"=> AV_SCAN_FAILED, #else scan failed
275 ),
276
277 'messagepattern'=> '/.*?:(.*)/sim',
278 ),
279
280 #setup for f-prot
281 'f-prot' => array (
282 'command' => "f-prot ",
283
284 'codemap'=> array (
285 "0"=> AV_NO_VIRUS, #no virus
286 "3"=> AV_VIRUS_FOUND, #virus found
287 "6"=> AV_VIRUS_FOUND, #virus found
288 "*"=> AV_SCAN_FAILED, #else scan failed
289 ),
290
291 'messagepattern'=> '/.*?Infection:(.*)$/m',
292 ),
293 );
294
295
296 /** Determines if a failed virus scan (AV_SCAN_FAILED) will cause the file to be rejected.
297 * @global boolean $wgAntivirusRequired
298 */
299 $wgAntivirusRequired= true;
300
301 /** Determines if the mime type of uploaded files should be checked
302 * @global boolean $wgVerifyMimeType
303 */
304 $wgVerifyMimeType= true;
305
306 /** Sets the mime type definition file to use by MimeMagic.php.
307 * @global string $wgMimeTypeFile
308 */
309 $wgMimeTypeFile= "includes/mime.types";
310 #$wgMimeTypeFile= "/etc/mime.types";
311 #$wgMimeTypeFile= NULL; #use built-in defaults only.
312
313 /** Sets the mime type info file to use by MimeMagic.php.
314 * @global string $wgMimeInfoFile
315 */
316 $wgMimeInfoFile= "includes/mime.info";
317 #$wgMimeInfoFile= NULL; #use built-in defaults only.
318
319 /** Switch for loading the FileInfo extension by PECL at runtime.
320 * This should be used only if fileinfo is installed as a shared object
321 * or a dynamic libary
322 * @global string $wgLoadFileinfoExtension
323 */
324 $wgLoadFileinfoExtension= false;
325
326 /** Sets an external mime detector program. The command must print only
327 * the mime type to standard output.
328 * The name of the file to process will be appended to the command given here.
329 * If not set or NULL, mime_content_type will be used if available.
330 */
331 $wgMimeDetectorCommand= NULL; # use internal mime_content_type function, available since php 4.3.0
332 #$wgMimeDetectorCommand= "file -bi"; #use external mime detector (Linux)
333
334 /** Switch for trivial mime detection. Used by thumb.php to disable all fance
335 * things, because only a few types of images are needed and file extensions
336 * can be trusted.
337 */
338 $wgTrivialMimeDetection= false;
339
340 /**
341 * To set 'pretty' URL paths for actions other than
342 * plain page views, add to this array. For instance:
343 * 'edit' => "$wgScriptPath/edit/$1"
344 *
345 * There must be an appropriate script or rewrite rule
346 * in place to handle these URLs.
347 */
348 $wgActionPaths = array();
349
350 /**
351 * If you operate multiple wikis, you can define a shared upload path here.
352 * Uploads to this wiki will NOT be put there - they will be put into
353 * $wgUploadDirectory.
354 * If $wgUseSharedUploads is set, the wiki will look in the shared repository if
355 * no file of the given name is found in the local repository (for [[Image:..]],
356 * [[Media:..]] links). Thumbnails will also be looked for and generated in this
357 * directory.
358 */
359 $wgUseSharedUploads = false;
360 /** Full path on the web server where shared uploads can be found */
361 $wgSharedUploadPath = "http://commons.wikimedia.org/shared/images";
362 /** Fetch commons image description pages and display them on the local wiki? */
363 $wgFetchCommonsDescriptions = false;
364 /** Path on the file system where shared uploads can be found. */
365 $wgSharedUploadDirectory = "/var/www/wiki3/images";
366 /** DB name with metadata about shared directory. Set this to false if the uploads do not come from a wiki. */
367 $wgSharedUploadDBname = false;
368 /** Optional table prefix used in database. */
369 $wgSharedUploadDBprefix = '';
370 /** Cache shared metadata in memcached. Don't do this if the commons wiki is in a different memcached domain */
371 $wgCacheSharedUploads = true;
372 /** Allow for upload to be copied from an URL. Requires Special:Upload?source=web */
373 $wgAllowCopyUploads = false;
374 /**
375 * Max size for uploads, in bytes. Currently only works for uploads from URL
376 * via CURL (see $wgAllowCopyUploads). The only way to impose limits on
377 * normal uploads is currently to edit php.ini.
378 */
379 $wgMaxUploadSize = 1024*1024*100; # 100MB
380
381 /**
382 * Point the upload navigation link to an external URL
383 * Useful if you want to use a shared repository by default
384 * without disabling local uploads (use $wgEnableUploads = false for that)
385 * e.g. $wgUploadNavigationUrl = 'http://commons.wikimedia.org/wiki/Special:Upload';
386 */
387 $wgUploadNavigationUrl = false;
388
389 /**
390 * Give a path here to use thumb.php for thumbnail generation on client request, instead of
391 * generating them on render and outputting a static URL. This is necessary if some of your
392 * apache servers don't have read/write access to the thumbnail path.
393 *
394 * Example:
395 * $wgThumbnailScriptPath = "{$wgScriptPath}/thumb.php";
396 */
397 $wgThumbnailScriptPath = false;
398 $wgSharedThumbnailScriptPath = false;
399
400 /**
401 * Set the following to false especially if you have a set of files that need to
402 * be accessible by all wikis, and you do not want to use the hash (path/a/aa/)
403 * directory layout.
404 */
405 $wgHashedSharedUploadDirectory = true;
406
407 /**
408 * Base URL for a repository wiki. Leave this blank if uploads are just stored
409 * in a shared directory and not meant to be accessible through a separate wiki.
410 * Otherwise the image description pages on the local wiki will link to the
411 * image description page on this wiki.
412 *
413 * Please specify the namespace, as in the example below.
414 */
415 $wgRepositoryBaseUrl="http://commons.wikimedia.org/wiki/Image:";
416
417
418 #
419 # Email settings
420 #
421
422 /**
423 * Site admin email address
424 * Default to wikiadmin@SERVER_NAME
425 * @global string $wgEmergencyContact
426 */
427 $wgEmergencyContact = 'wikiadmin@' . $wgServerName;
428
429 /**
430 * Password reminder email address
431 * The address we should use as sender when a user is requesting his password
432 * Default to apache@SERVER_NAME
433 * @global string $wgPasswordSender
434 */
435 $wgPasswordSender = 'MediaWiki Mail <apache@' . $wgServerName . '>';
436
437 /**
438 * dummy address which should be accepted during mail send action
439 * It might be necessay to adapt the address or to set it equal
440 * to the $wgEmergencyContact address
441 */
442 #$wgNoReplyAddress = $wgEmergencyContact;
443 $wgNoReplyAddress = 'reply@not.possible';
444
445 /**
446 * Set to true to enable the e-mail basic features:
447 * Password reminders, etc. If sending e-mail on your
448 * server doesn't work, you might want to disable this.
449 * @global bool $wgEnableEmail
450 */
451 $wgEnableEmail = true;
452
453 /**
454 * Set to true to enable user-to-user e-mail.
455 * This can potentially be abused, as it's hard to track.
456 * @global bool $wgEnableUserEmail
457 */
458 $wgEnableUserEmail = true;
459
460 /**
461 * Minimum time, in hours, which must elapse between password reminder
462 * emails for a given account. This is to prevent abuse by mail flooding.
463 */
464 $wgPasswordReminderResendTime = 24;
465
466 /**
467 * SMTP Mode
468 * For using a direct (authenticated) SMTP server connection.
469 * Default to false or fill an array :
470 * <code>
471 * "host" => 'SMTP domain',
472 * "IDHost" => 'domain for MessageID',
473 * "port" => "25",
474 * "auth" => true/false,
475 * "username" => user,
476 * "password" => password
477 * </code>
478 *
479 * @global mixed $wgSMTP
480 */
481 $wgSMTP = false;
482
483
484 /**#@+
485 * Database settings
486 */
487 /** database host name or ip address */
488 $wgDBserver = 'localhost';
489 /** database port number */
490 $wgDBport = '';
491 /** name of the database */
492 $wgDBname = 'wikidb';
493 /** */
494 $wgDBconnection = '';
495 /** Database username */
496 $wgDBuser = 'wikiuser';
497 /** Database type
498 */
499 $wgDBtype = "mysql";
500 /** Search type
501 * Leave as null to select the default search engine for the
502 * selected database type (eg SearchMySQL4), or set to a class
503 * name to override to a custom search engine.
504 */
505 $wgSearchType = null;
506 /** Table name prefix */
507 $wgDBprefix = '';
508 /** MySQL table options to use during installation or update */
509 $wgDBTableOptions = 'TYPE=InnoDB';
510
511 /**#@-*/
512
513
514 /** Live high performance sites should disable this - some checks acquire giant mysql locks */
515 $wgCheckDBSchema = true;
516
517
518 /**
519 * Shared database for multiple wikis. Presently used for storing a user table
520 * for single sign-on. The server for this database must be the same as for the
521 * main database.
522 * EXPERIMENTAL
523 */
524 $wgSharedDB = null;
525
526 # Database load balancer
527 # This is a two-dimensional array, an array of server info structures
528 # Fields are:
529 # host: Host name
530 # dbname: Default database name
531 # user: DB user
532 # password: DB password
533 # type: "mysql" or "postgres"
534 # load: ratio of DB_SLAVE load, must be >=0, the sum of all loads must be >0
535 # groupLoads: array of load ratios, the key is the query group name. A query may belong
536 # to several groups, the most specific group defined here is used.
537 #
538 # flags: bit field
539 # DBO_DEFAULT -- turns on DBO_TRX only if !$wgCommandLineMode (recommended)
540 # DBO_DEBUG -- equivalent of $wgDebugDumpSql
541 # DBO_TRX -- wrap entire request in a transaction
542 # DBO_IGNORE -- ignore errors (not useful in LocalSettings.php)
543 # DBO_NOBUFFER -- turn off buffering (not useful in LocalSettings.php)
544 #
545 # max lag: (optional) Maximum replication lag before a slave will taken out of rotation
546 # max threads: (optional) Maximum number of running threads
547 #
548 # These and any other user-defined properties will be assigned to the mLBInfo member
549 # variable of the Database object.
550 #
551 # Leave at false to use the single-server variables above
552 $wgDBservers = false;
553
554 /** How long to wait for a slave to catch up to the master */
555 $wgMasterWaitTimeout = 10;
556
557 /** File to log database errors to */
558 $wgDBerrorLog = false;
559
560 /** When to give an error message */
561 $wgDBClusterTimeout = 10;
562
563 /**
564 * wgDBminWordLen :
565 * MySQL 3.x : used to discard words that MySQL will not return any results for
566 * shorter values configure mysql directly.
567 * MySQL 4.x : ignore it and configure mySQL
568 * See: http://dev.mysql.com/doc/mysql/en/Fulltext_Fine-tuning.html
569 */
570 $wgDBminWordLen = 4;
571 /** Set to true if using InnoDB tables */
572 $wgDBtransactions = false;
573 /** Set to true for compatibility with extensions that might be checking.
574 * MySQL 3.23.x is no longer supported. */
575 $wgDBmysql4 = true;
576
577 /**
578 * Set to true to engage MySQL 4.1/5.0 charset-related features;
579 * for now will just cause sending of 'SET NAMES=utf8' on connect.
580 *
581 * WARNING: THIS IS EXPERIMENTAL!
582 *
583 * May break if you're not using the table defs from mysql5/tables.sql.
584 * May break if you're upgrading an existing wiki if set differently.
585 * Broken symptoms likely to include incorrect behavior with page titles,
586 * usernames, comments etc containing non-ASCII characters.
587 * Might also cause failures on the object cache and other things.
588 *
589 * Even correct usage may cause failures with Unicode supplementary
590 * characters (those not in the Basic Multilingual Plane) unless MySQL
591 * has enhanced their Unicode support.
592 */
593 $wgDBmysql5 = false;
594
595 /**
596 * Other wikis on this site, can be administered from a single developer
597 * account.
598 * Array numeric key => database name
599 */
600 $wgLocalDatabases = array();
601
602 /**
603 * Object cache settings
604 * See Defines.php for types
605 */
606 $wgMainCacheType = CACHE_NONE;
607 $wgMessageCacheType = CACHE_ANYTHING;
608 $wgParserCacheType = CACHE_ANYTHING;
609
610 $wgParserCacheExpireTime = 86400;
611
612 $wgSessionsInMemcached = false;
613 $wgLinkCacheMemcached = false; # Not fully tested
614
615 /**
616 * Memcached-specific settings
617 * See docs/memcached.txt
618 */
619 $wgUseMemCached = false;
620 $wgMemCachedDebug = false; # Will be set to false in Setup.php, if the server isn't working
621 $wgMemCachedServers = array( '127.0.0.1:11000' );
622 $wgMemCachedDebug = false;
623 $wgMemCachedPersistent = false;
624
625 /**
626 * Directory for local copy of message cache, for use in addition to memcached
627 */
628 $wgLocalMessageCache = false;
629 /**
630 * Defines format of local cache
631 * true - Serialized object
632 * false - PHP source file (Warning - security risk)
633 */
634 $wgLocalMessageCacheSerialized = true;
635
636 /**
637 * Directory for compiled constant message array databases
638 * WARNING: turning anything on will just break things, aaaaaah!!!!
639 */
640 $wgCachedMessageArrays = false;
641
642 # Language settings
643 #
644 /** Site language code, should be one of ./languages/Language(.*).php */
645 $wgLanguageCode = 'en';
646
647 /**
648 * Some languages need different word forms, usually for different cases.
649 * Used in Language::convertGrammar().
650 */
651 $wgGrammarForms = array();
652 #$wgGrammarForms['en']['genitive']['car'] = 'car\'s';
653
654 /** Treat language links as magic connectors, not inline links */
655 $wgInterwikiMagic = true;
656
657 /** Hide interlanguage links from the sidebar */
658 $wgHideInterlanguageLinks = false;
659
660
661 /** We speak UTF-8 all the time now, unless some oddities happen */
662 $wgInputEncoding = 'UTF-8';
663 $wgOutputEncoding = 'UTF-8';
664 $wgEditEncoding = '';
665
666 # Set this to eg 'ISO-8859-1' to perform character set
667 # conversion when loading old revisions not marked with
668 # "utf-8" flag. Use this when converting wiki to UTF-8
669 # without the burdensome mass conversion of old text data.
670 #
671 # NOTE! This DOES NOT touch any fields other than old_text.
672 # Titles, comments, user names, etc still must be converted
673 # en masse in the database before continuing as a UTF-8 wiki.
674 $wgLegacyEncoding = false;
675
676 /**
677 * If set to true, the MediaWiki 1.4 to 1.5 schema conversion will
678 * create stub reference rows in the text table instead of copying
679 * the full text of all current entries from 'cur' to 'text'.
680 *
681 * This will speed up the conversion step for large sites, but
682 * requires that the cur table be kept around for those revisions
683 * to remain viewable.
684 *
685 * maintenance/migrateCurStubs.php can be used to complete the
686 * migration in the background once the wiki is back online.
687 *
688 * This option affects the updaters *only*. Any present cur stub
689 * revisions will be readable at runtime regardless of this setting.
690 */
691 $wgLegacySchemaConversion = false;
692
693 $wgMimeType = 'text/html';
694 $wgJsMimeType = 'text/javascript';
695 $wgDocType = '-//W3C//DTD XHTML 1.0 Transitional//EN';
696 $wgDTD = 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd';
697 $wgXhtmlDefaultNamespace = 'http://www.w3.org/1999/xhtml';
698
699 # Permit other namespaces in addition to the w3.org default.
700 # Use the prefix for the key and the namespace for the value. For
701 # example:
702 # $wgXhtmlNamespaces['svg'] = 'http://www.w3.org/2000/svg';
703 # Normally we wouldn't have to define this in the root <html>
704 # element, but IE needs it there in some circumstances.
705 $wgXhtmlNamespaces = array();
706
707 /** Enable to allow rewriting dates in page text.
708 * DOES NOT FORMAT CORRECTLY FOR MOST LANGUAGES */
709 $wgUseDynamicDates = false;
710 /** Enable dates like 'May 12' instead of '12 May', this only takes effect if
711 * the interface is set to English
712 */
713 $wgAmericanDates = false;
714 /**
715 * For Hindi and Arabic use local numerals instead of Western style (0-9)
716 * numerals in interface.
717 */
718 $wgTranslateNumerals = true;
719
720 /**
721 * Translation using MediaWiki: namespace.
722 * This will increase load times by 25-60% unless memcached is installed.
723 * Interface messages will be loaded from the database.
724 */
725 $wgUseDatabaseMessages = true;
726
727 /**
728 * Expiry time for the message cache key
729 */
730 $wgMsgCacheExpiry = 86400;
731
732 /**
733 * Maximum entry size in the message cache, in bytes
734 */
735 $wgMaxMsgCacheEntrySize = 10000;
736
737 # Whether to enable language variant conversion.
738 $wgDisableLangConversion = false;
739
740 # Default variant code, if false, the default will be the language code
741 $wgDefaultLanguageVariant = false;
742
743 /**
744 * Show a bar of language selection links in the user login and user
745 * registration forms; edit the "loginlanguagelinks" message to
746 * customise these
747 */
748 $wgLoginLanguageSelector = false;
749
750 # Whether to use zhdaemon to perform Chinese text processing
751 # zhdaemon is under developement, so normally you don't want to
752 # use it unless for testing
753 $wgUseZhdaemon = false;
754 $wgZhdaemonHost="localhost";
755 $wgZhdaemonPort=2004;
756
757 /** Normally you can ignore this and it will be something
758 like $wgMetaNamespace . "_talk". In some languages, you
759 may want to set this manually for grammatical reasons.
760 It is currently only respected by those languages
761 where it might be relevant and where no automatic
762 grammar converter exists.
763 */
764 $wgMetaNamespaceTalk = false;
765
766 # Miscellaneous configuration settings
767 #
768
769 $wgLocalInterwiki = 'w';
770 $wgInterwikiExpiry = 10800; # Expiry time for cache of interwiki table
771
772 /** Interwiki caching settings.
773 $wgInterwikiCache specifies path to constant database file
774 This cdb database is generated by dumpInterwiki from maintenance
775 and has such key formats:
776 dbname:key - a simple key (e.g. enwiki:meta)
777 _sitename:key - site-scope key (e.g. wiktionary:meta)
778 __global:key - global-scope key (e.g. __global:meta)
779 __sites:dbname - site mapping (e.g. __sites:enwiki)
780 Sites mapping just specifies site name, other keys provide
781 "local url" data layout.
782 $wgInterwikiScopes specify number of domains to check for messages:
783 1 - Just wiki(db)-level
784 2 - wiki and global levels
785 3 - site levels
786 $wgInterwikiFallbackSite - if unable to resolve from cache
787 */
788 $wgInterwikiCache = false;
789 $wgInterwikiScopes = 3;
790 $wgInterwikiFallbackSite = 'wiki';
791
792 /**
793 * If local interwikis are set up which allow redirects,
794 * set this regexp to restrict URLs which will be displayed
795 * as 'redirected from' links.
796 *
797 * It might look something like this:
798 * $wgRedirectSources = '!^https?://[a-z-]+\.wikipedia\.org/!';
799 *
800 * Leave at false to avoid displaying any incoming redirect markers.
801 * This does not affect intra-wiki redirects, which don't change
802 * the URL.
803 */
804 $wgRedirectSources = false;
805
806
807 $wgShowIPinHeader = true; # For non-logged in users
808 $wgMaxNameChars = 255; # Maximum number of bytes in username
809 $wgMaxArticleSize = 2048; # Maximum article size in kilobytes
810
811 $wgExtraSubtitle = '';
812 $wgSiteSupportPage = ''; # A page where you users can receive donations
813
814 /***
815 * If this lock file exists, the wiki will be forced into read-only mode.
816 * Its contents will be shown to users as part of the read-only warning
817 * message.
818 */
819 $wgReadOnlyFile = false; /// defaults to "{$wgUploadDirectory}/lock_yBgMBwiR";
820
821 /**
822 * The debug log file should be not be publicly accessible if it is used, as it
823 * may contain private data. */
824 $wgDebugLogFile = '';
825
826 /**#@+
827 * @global bool
828 */
829 $wgDebugRedirects = false;
830 $wgDebugRawPage = false; # Avoid overlapping debug entries by leaving out CSS
831
832 $wgDebugComments = false;
833 $wgReadOnly = null;
834 $wgLogQueries = false;
835
836 /**
837 * Write SQL queries to the debug log
838 */
839 $wgDebugDumpSql = false;
840
841 /**
842 * Set to an array of log group keys to filenames.
843 * If set, wfDebugLog() output for that group will go to that file instead
844 * of the regular $wgDebugLogFile. Useful for enabling selective logging
845 * in production.
846 */
847 $wgDebugLogGroups = array();
848
849 /**
850 * Whether to show "we're sorry, but there has been a database error" pages.
851 * Displaying errors aids in debugging, but may display information useful
852 * to an attacker.
853 */
854 $wgShowSQLErrors = false;
855
856 /**
857 * If true, some error messages will be colorized when running scripts on the
858 * command line; this can aid picking important things out when debugging.
859 * Ignored when running on Windows or when output is redirected to a file.
860 */
861 $wgColorErrors = true;
862
863 /**
864 * If set to true, uncaught exceptions will print a complete stack trace
865 * to output. This should only be used for debugging, as it may reveal
866 * private information in function parameters due to PHP's backtrace
867 * formatting.
868 */
869 $wgShowExceptionDetails = false;
870
871 /**
872 * disable experimental dmoz-like category browsing. Output things like:
873 * Encyclopedia > Music > Style of Music > Jazz
874 */
875 $wgUseCategoryBrowser = false;
876
877 /**
878 * Keep parsed pages in a cache (objectcache table, turck, or memcached)
879 * to speed up output of the same page viewed by another user with the
880 * same options.
881 *
882 * This can provide a significant speedup for medium to large pages,
883 * so you probably want to keep it on.
884 */
885 $wgEnableParserCache = true;
886
887 /**
888 * If on, the sidebar navigation links are cached for users with the
889 * current language set. This can save a touch of load on a busy site
890 * by shaving off extra message lookups.
891 *
892 * However it is also fragile: changing the site configuration, or
893 * having a variable $wgArticlePath, can produce broken links that
894 * don't update as expected.
895 */
896 $wgEnableSidebarCache = false;
897
898 /**
899 * Under which condition should a page in the main namespace be counted
900 * as a valid article? If $wgUseCommaCount is set to true, it will be
901 * counted if it contains at least one comma. If it is set to false
902 * (default), it will only be counted if it contains at least one [[wiki
903 * link]]. See http://meta.wikimedia.org/wiki/Help:Article_count
904 *
905 * Retroactively changing this variable will not affect
906 * the existing count (cf. maintenance/recount.sql).
907 */
908 $wgUseCommaCount = false;
909
910 /**#@-*/
911
912 /**
913 * wgHitcounterUpdateFreq sets how often page counters should be updated, higher
914 * values are easier on the database. A value of 1 causes the counters to be
915 * updated on every hit, any higher value n cause them to update *on average*
916 * every n hits. Should be set to either 1 or something largish, eg 1000, for
917 * maximum efficiency.
918 */
919 $wgHitcounterUpdateFreq = 1;
920
921 # Basic user rights and block settings
922 $wgSysopUserBans = true; # Allow sysops to ban logged-in users
923 $wgSysopRangeBans = true; # Allow sysops to ban IP ranges
924 $wgAutoblockExpiry = 86400; # Number of seconds before autoblock entries expire
925 $wgBlockAllowsUTEdit = false; # Blocks allow users to edit their own user talk page
926
927 # Pages anonymous user may see as an array, e.g.:
928 # array ( "Main Page", "Special:Userlogin", "Wikipedia:Help");
929 # NOTE: This will only work if $wgGroupPermissions['*']['read']
930 # is false -- see below. Otherwise, ALL pages are accessible,
931 # regardless of this setting.
932 # Also note that this will only protect _pages in the wiki_.
933 # Uploaded files will remain readable. Make your upload
934 # directory name unguessable, or use .htaccess to protect it.
935 $wgWhitelistRead = false;
936
937 /**
938 * Should editors be required to have a validated e-mail
939 * address before being allowed to edit?
940 */
941 $wgEmailConfirmToEdit=false;
942
943 /**
944 * Permission keys given to users in each group.
945 * All users are implicitly in the '*' group including anonymous visitors;
946 * logged-in users are all implicitly in the 'user' group. These will be
947 * combined with the permissions of all groups that a given user is listed
948 * in in the user_groups table.
949 *
950 * Functionality to make pages inaccessible has not been extensively tested
951 * for security. Use at your own risk!
952 *
953 * This replaces wgWhitelistAccount and wgWhitelistEdit
954 */
955 $wgGroupPermissions = array();
956
957 // Implicit group for all visitors
958 $wgGroupPermissions['*' ]['createaccount'] = true;
959 $wgGroupPermissions['*' ]['read'] = true;
960 $wgGroupPermissions['*' ]['edit'] = true;
961 $wgGroupPermissions['*' ]['createpage'] = true;
962 $wgGroupPermissions['*' ]['createtalk'] = true;
963
964 // Implicit group for all logged-in accounts
965 $wgGroupPermissions['user' ]['move'] = true;
966 $wgGroupPermissions['user' ]['read'] = true;
967 $wgGroupPermissions['user' ]['edit'] = true;
968 $wgGroupPermissions['user' ]['createpage'] = true;
969 $wgGroupPermissions['user' ]['createtalk'] = true;
970 $wgGroupPermissions['user' ]['upload'] = true;
971 $wgGroupPermissions['user' ]['reupload'] = true;
972 $wgGroupPermissions['user' ]['reupload-shared'] = true;
973 $wgGroupPermissions['user' ]['minoredit'] = true;
974 $wgGroupPermissions['user' ]['purge'] = true; // can use ?action=purge without clicking "ok"
975
976 // Implicit group for accounts that pass $wgAutoConfirmAge
977 $wgGroupPermissions['autoconfirmed']['autoconfirmed'] = true;
978
979 // Implicit group for accounts with confirmed email addresses
980 // This has little use when email address confirmation is off
981 $wgGroupPermissions['emailconfirmed']['emailconfirmed'] = true;
982
983 // Users with bot privilege can have their edits hidden
984 // from various log pages by default
985 $wgGroupPermissions['bot' ]['bot'] = true;
986 $wgGroupPermissions['bot' ]['autoconfirmed'] = true;
987 $wgGroupPermissions['bot' ]['nominornewtalk'] = true;
988
989 // Most extra permission abilities go to this group
990 $wgGroupPermissions['sysop']['block'] = true;
991 $wgGroupPermissions['sysop']['createaccount'] = true;
992 $wgGroupPermissions['sysop']['delete'] = true;
993 $wgGroupPermissions['sysop']['deletedhistory'] = true; // can view deleted history entries, but not see or restore the text
994 $wgGroupPermissions['sysop']['editinterface'] = true;
995 $wgGroupPermissions['sysop']['import'] = true;
996 $wgGroupPermissions['sysop']['importupload'] = true;
997 $wgGroupPermissions['sysop']['move'] = true;
998 $wgGroupPermissions['sysop']['patrol'] = true;
999 $wgGroupPermissions['sysop']['autopatrol'] = true;
1000 $wgGroupPermissions['sysop']['protect'] = true;
1001 $wgGroupPermissions['sysop']['proxyunbannable'] = true;
1002 $wgGroupPermissions['sysop']['rollback'] = true;
1003 $wgGroupPermissions['sysop']['trackback'] = true;
1004 $wgGroupPermissions['sysop']['upload'] = true;
1005 $wgGroupPermissions['sysop']['reupload'] = true;
1006 $wgGroupPermissions['sysop']['reupload-shared'] = true;
1007 $wgGroupPermissions['sysop']['unwatchedpages'] = true;
1008 $wgGroupPermissions['sysop']['autoconfirmed'] = true;
1009 $wgGroupPermissions['sysop']['upload_by_url'] = true;
1010 $wgGroupPermissions['sysop']['ipblock-exempt'] = true;
1011
1012 // Permission to change users' group assignments
1013 $wgGroupPermissions['bureaucrat']['userrights'] = true;
1014
1015 // Experimental permissions, not ready for production use
1016 //$wgGroupPermissions['sysop']['deleterevision'] = true;
1017 //$wgGroupPermissions['bureaucrat']['hiderevision'] = true;
1018
1019 /**
1020 * The developer group is deprecated, but can be activated if need be
1021 * to use the 'lockdb' and 'unlockdb' special pages. Those require
1022 * that a lock file be defined and creatable/removable by the web
1023 * server.
1024 */
1025 # $wgGroupPermissions['developer']['siteadmin'] = true;
1026
1027 /**
1028 * Set of available actions that can be restricted via action=protect
1029 * You probably shouldn't change this.
1030 * Translated trough restriction-* messages.
1031 */
1032 $wgRestrictionTypes = array( 'edit', 'move' );
1033
1034 /**
1035 * Set of permission keys that can be selected via action=protect.
1036 * 'autoconfirm' allows all registerd users if $wgAutoConfirmAge is 0.
1037 */
1038 $wgRestrictionLevels = array( '', 'autoconfirmed', 'sysop' );
1039
1040 /**
1041 * Set the minimum permissions required to edit pages in each
1042 * namespace. If you list more than one permission, a user must
1043 * have all of them to edit pages in that namespace.
1044 */
1045 $wgNamespaceProtection = array();
1046 $wgNamespaceProtection[ NS_MEDIAWIKI ] = array( 'editinterface' );
1047
1048 /**
1049 * Pages in namespaces in this array can not be used as templates.
1050 * Elements must be numeric namespace ids.
1051 * Among other things, this may be useful to enforce read-restrictions
1052 * which may otherwise be bypassed by using the template machanism.
1053 */
1054 $wgNonincludableNamespaces = array();
1055
1056 /**
1057 * Number of seconds an account is required to age before
1058 * it's given the implicit 'autoconfirm' group membership.
1059 * This can be used to limit privileges of new accounts.
1060 *
1061 * Accounts created by earlier versions of the software
1062 * may not have a recorded creation date, and will always
1063 * be considered to pass the age test.
1064 *
1065 * When left at 0, all registered accounts will pass.
1066 */
1067 $wgAutoConfirmAge = 0;
1068 //$wgAutoConfirmAge = 600; // ten minutes
1069 //$wgAutoConfirmAge = 3600*24; // one day
1070
1071 # Number of edits an account requires before it is autoconfirmed
1072 # Passing both this AND the time requirement is needed
1073 $wgAutoConfirmCount = 0;
1074 //$wgAutoConfirmCount = 50;
1075
1076
1077
1078 # Proxy scanner settings
1079 #
1080
1081 /**
1082 * If you enable this, every editor's IP address will be scanned for open HTTP
1083 * proxies.
1084 *
1085 * Don't enable this. Many sysops will report "hostile TCP port scans" to your
1086 * ISP and ask for your server to be shut down.
1087 *
1088 * You have been warned.
1089 */
1090 $wgBlockOpenProxies = false;
1091 /** Port we want to scan for a proxy */
1092 $wgProxyPorts = array( 80, 81, 1080, 3128, 6588, 8000, 8080, 8888, 65506 );
1093 /** Script used to scan */
1094 $wgProxyScriptPath = "$IP/includes/proxy_check.php";
1095 /** */
1096 $wgProxyMemcExpiry = 86400;
1097 /** This should always be customised in LocalSettings.php */
1098 $wgSecretKey = false;
1099 /** big list of banned IP addresses, in the keys not the values */
1100 $wgProxyList = array();
1101 /** deprecated */
1102 $wgProxyKey = false;
1103
1104 /** Number of accounts each IP address may create, 0 to disable.
1105 * Requires memcached */
1106 $wgAccountCreationThrottle = 0;
1107
1108 # Client-side caching:
1109
1110 /** Allow client-side caching of pages */
1111 $wgCachePages = true;
1112
1113 /**
1114 * Set this to current time to invalidate all prior cached pages. Affects both
1115 * client- and server-side caching.
1116 * You can get the current date on your server by using the command:
1117 * date +%Y%m%d%H%M%S
1118 */
1119 $wgCacheEpoch = '20030516000000';
1120
1121 /**
1122 * Bump this number when changing the global style sheets and JavaScript.
1123 * It should be appended in the query string of static CSS and JS includes,
1124 * to ensure that client-side caches don't keep obsolete copies of global
1125 * styles.
1126 */
1127 $wgStyleVersion = '63';
1128
1129
1130 # Server-side caching:
1131
1132 /**
1133 * This will cache static pages for non-logged-in users to reduce
1134 * database traffic on public sites.
1135 * Must set $wgShowIPinHeader = false
1136 */
1137 $wgUseFileCache = false;
1138
1139 /** Directory where the cached page will be saved */
1140 $wgFileCacheDirectory = false; /// defaults to "{$wgUploadDirectory}/cache";
1141
1142 /**
1143 * When using the file cache, we can store the cached HTML gzipped to save disk
1144 * space. Pages will then also be served compressed to clients that support it.
1145 * THIS IS NOT COMPATIBLE with ob_gzhandler which is now enabled if supported in
1146 * the default LocalSettings.php! If you enable this, remove that setting first.
1147 *
1148 * Requires zlib support enabled in PHP.
1149 */
1150 $wgUseGzip = false;
1151
1152 /** Whether MediaWiki should send an ETag header */
1153 $wgUseETag = false;
1154
1155 # Email notification settings
1156 #
1157
1158 /** For email notification on page changes */
1159 $wgPasswordSender = $wgEmergencyContact;
1160
1161 # true: from page editor if s/he opted-in
1162 # false: Enotif mails appear to come from $wgEmergencyContact
1163 $wgEnotifFromEditor = false;
1164
1165 // TODO move UPO to preferences probably ?
1166 # If set to true, users get a corresponding option in their preferences and can choose to enable or disable at their discretion
1167 # If set to false, the corresponding input form on the user preference page is suppressed
1168 # It call this to be a "user-preferences-option (UPO)"
1169 $wgEmailAuthentication = true; # UPO (if this is set to false, texts referring to authentication are suppressed)
1170 $wgEnotifWatchlist = false; # UPO
1171 $wgEnotifUserTalk = false; # UPO
1172 $wgEnotifRevealEditorAddress = false; # UPO; reply-to address may be filled with page editor's address (if user allowed this in the preferences)
1173 $wgEnotifMinorEdits = true; # UPO; false: "minor edits" on pages do not trigger notification mails.
1174 # # Attention: _every_ change on a user_talk page trigger a notification mail (if the user is not yet notified)
1175
1176 /**
1177 * Array of usernames who will be sent a notification email for every change which occurs on a wiki
1178 */
1179 $wgUsersNotifedOnAllChanges = array();
1180
1181 /** Show watching users in recent changes, watchlist and page history views */
1182 $wgRCShowWatchingUsers = false; # UPO
1183 /** Show watching users in Page views */
1184 $wgPageShowWatchingUsers = false;
1185 /** Show the amount of changed characters in recent changes */
1186 $wgRCShowChangedSize = true;
1187
1188 /**
1189 * If the difference between the character counts of the text
1190 * before and after the edit is below that value, the value will be
1191 * highlighted on the RC page.
1192 */
1193 $wgRCChangedSizeThreshold = -500;
1194
1195 /**
1196 * Show "Updated (since my last visit)" marker in RC view, watchlist and history
1197 * view for watched pages with new changes */
1198 $wgShowUpdatedMarker = true;
1199
1200 $wgCookieExpiration = 2592000;
1201
1202 /** Clock skew or the one-second resolution of time() can occasionally cause cache
1203 * problems when the user requests two pages within a short period of time. This
1204 * variable adds a given number of seconds to vulnerable timestamps, thereby giving
1205 * a grace period.
1206 */
1207 $wgClockSkewFudge = 5;
1208
1209 # Squid-related settings
1210 #
1211
1212 /** Enable/disable Squid */
1213 $wgUseSquid = false;
1214
1215 /** If you run Squid3 with ESI support, enable this (default:false): */
1216 $wgUseESI = false;
1217
1218 /** Internal server name as known to Squid, if different */
1219 # $wgInternalServer = 'http://yourinternal.tld:8000';
1220 $wgInternalServer = $wgServer;
1221
1222 /**
1223 * Cache timeout for the squid, will be sent as s-maxage (without ESI) or
1224 * Surrogate-Control (with ESI). Without ESI, you should strip out s-maxage in
1225 * the Squid config. 18000 seconds = 5 hours, more cache hits with 2678400 = 31
1226 * days
1227 */
1228 $wgSquidMaxage = 18000;
1229
1230 /**
1231 * A list of proxy servers (ips if possible) to purge on changes don't specify
1232 * ports here (80 is default)
1233 */
1234 # $wgSquidServers = array('127.0.0.1');
1235 $wgSquidServers = array();
1236 $wgSquidServersNoPurge = array();
1237
1238 /** Maximum number of titles to purge in any one client operation */
1239 $wgMaxSquidPurgeTitles = 400;
1240
1241 /** HTCP multicast purging */
1242 $wgHTCPPort = 4827;
1243 $wgHTCPMulticastTTL = 1;
1244 # $wgHTCPMulticastAddress = "224.0.0.85";
1245 $wgHTCPMulticastAddress = false;
1246
1247 # Cookie settings:
1248 #
1249 /**
1250 * Set to set an explicit domain on the login cookies eg, "justthis.domain. org"
1251 * or ".any.subdomain.net"
1252 */
1253 $wgCookieDomain = '';
1254 $wgCookiePath = '/';
1255 $wgCookieSecure = ($wgProto == 'https');
1256 $wgDisableCookieCheck = false;
1257
1258 /** Override to customise the session name */
1259 $wgSessionName = false;
1260
1261 /** Whether to allow inline image pointing to other websites */
1262 $wgAllowExternalImages = false;
1263
1264 /** If the above is false, you can specify an exception here. Image URLs
1265 * that start with this string are then rendered, while all others are not.
1266 * You can use this to set up a trusted, simple repository of images.
1267 *
1268 * Example:
1269 * $wgAllowExternalImagesFrom = 'http://127.0.0.1/';
1270 */
1271 $wgAllowExternalImagesFrom = '';
1272
1273 /** Disable database-intensive features */
1274 $wgMiserMode = false;
1275 /** Disable all query pages if miser mode is on, not just some */
1276 $wgDisableQueryPages = false;
1277 /** Number of rows to cache in 'querycache' table when miser mode is on */
1278 $wgQueryCacheLimit = 1000;
1279 /** Number of links to a page required before it is deemed "wanted" */
1280 $wgWantedPagesThreshold = 1;
1281 /** Enable slow parser functions */
1282 $wgAllowSlowParserFunctions = false;
1283
1284 /**
1285 * To use inline TeX, you need to compile 'texvc' (in the 'math' subdirectory of
1286 * the MediaWiki package and have latex, dvips, gs (ghostscript), andconvert
1287 * (ImageMagick) installed and available in the PATH.
1288 * Please see math/README for more information.
1289 */
1290 $wgUseTeX = false;
1291 /** Location of the texvc binary */
1292 $wgTexvc = './math/texvc';
1293
1294 #
1295 # Profiling / debugging
1296 #
1297 # You have to create a 'profiling' table in your database before using
1298 # profiling see maintenance/archives/patch-profiling.sql .
1299 #
1300 # To enable profiling, edit StartProfiler.php
1301
1302 /** Only record profiling info for pages that took longer than this */
1303 $wgProfileLimit = 0.0;
1304 /** Don't put non-profiling info into log file */
1305 $wgProfileOnly = false;
1306 /** Log sums from profiling into "profiling" table in db. */
1307 $wgProfileToDatabase = false;
1308 /** If true, print a raw call tree instead of per-function report */
1309 $wgProfileCallTree = false;
1310 /** Should application server host be put into profiling table */
1311 $wgProfilePerHost = false;
1312
1313 /** Settings for UDP profiler */
1314 $wgUDPProfilerHost = '127.0.0.1';
1315 $wgUDPProfilerPort = '3811';
1316
1317 /** Detects non-matching wfProfileIn/wfProfileOut calls */
1318 $wgDebugProfiling = false;
1319 /** Output debug message on every wfProfileIn/wfProfileOut */
1320 $wgDebugFunctionEntry = 0;
1321 /** Lots of debugging output from SquidUpdate.php */
1322 $wgDebugSquid = false;
1323
1324 $wgDisableCounters = false;
1325 $wgDisableTextSearch = false;
1326 $wgDisableSearchContext = false;
1327 /**
1328 * If you've disabled search semi-permanently, this also disables updates to the
1329 * table. If you ever re-enable, be sure to rebuild the search table.
1330 */
1331 $wgDisableSearchUpdate = false;
1332 /** Uploads have to be specially set up to be secure */
1333 $wgEnableUploads = false;
1334 /**
1335 * Show EXIF data, on by default if available.
1336 * Requires PHP's EXIF extension: http://www.php.net/manual/en/ref.exif.php
1337 */
1338 $wgShowEXIF = function_exists( 'exif_read_data' );
1339
1340 /**
1341 * Set to true to enable the upload _link_ while local uploads are disabled.
1342 * Assumes that the special page link will be bounced to another server where
1343 * uploads do work.
1344 */
1345 $wgRemoteUploads = false;
1346 $wgDisableAnonTalk = false;
1347 /**
1348 * Do DELETE/INSERT for link updates instead of incremental
1349 */
1350 $wgUseDumbLinkUpdate = false;
1351
1352 /**
1353 * Anti-lock flags - bitfield
1354 * ALF_PRELOAD_LINKS
1355 * Preload links during link update for save
1356 * ALF_PRELOAD_EXISTENCE
1357 * Preload cur_id during replaceLinkHolders
1358 * ALF_NO_LINK_LOCK
1359 * Don't use locking reads when updating the link table. This is
1360 * necessary for wikis with a high edit rate for performance
1361 * reasons, but may cause link table inconsistency
1362 * ALF_NO_BLOCK_LOCK
1363 * As for ALF_LINK_LOCK, this flag is a necessity for high-traffic
1364 * wikis.
1365 */
1366 $wgAntiLockFlags = 0;
1367
1368 /**
1369 * Path to the GNU diff3 utility. If the file doesn't exist, edit conflicts will
1370 * fall back to the old behaviour (no merging).
1371 */
1372 $wgDiff3 = '/usr/bin/diff3';
1373
1374 /**
1375 * We can also compress text in the old revisions table. If this is set on, old
1376 * revisions will be compressed on page save if zlib support is available. Any
1377 * compressed revisions will be decompressed on load regardless of this setting
1378 * *but will not be readable at all* if zlib support is not available.
1379 */
1380 $wgCompressRevisions = false;
1381
1382 /**
1383 * This is the list of preferred extensions for uploading files. Uploading files
1384 * with extensions not in this list will trigger a warning.
1385 */
1386 $wgFileExtensions = array( 'png', 'gif', 'jpg', 'jpeg' );
1387
1388 /** Files with these extensions will never be allowed as uploads. */
1389 $wgFileBlacklist = array(
1390 # HTML may contain cookie-stealing JavaScript and web bugs
1391 'html', 'htm', 'js', 'jsb',
1392 # PHP scripts may execute arbitrary code on the server
1393 'php', 'phtml', 'php3', 'php4', 'php5', 'phps',
1394 # Other types that may be interpreted by some servers
1395 'shtml', 'jhtml', 'pl', 'py', 'cgi',
1396 # May contain harmful executables for Windows victims
1397 'exe', 'scr', 'dll', 'msi', 'vbs', 'bat', 'com', 'pif', 'cmd', 'vxd', 'cpl' );
1398
1399 /** Files with these mime types will never be allowed as uploads
1400 * if $wgVerifyMimeType is enabled.
1401 */
1402 $wgMimeTypeBlacklist= array(
1403 # HTML may contain cookie-stealing JavaScript and web bugs
1404 'text/html', 'text/javascript', 'text/x-javascript', 'application/x-shellscript',
1405 # PHP scripts may execute arbitrary code on the server
1406 'application/x-php', 'text/x-php',
1407 # Other types that may be interpreted by some servers
1408 'text/x-python', 'text/x-perl', 'text/x-bash', 'text/x-sh', 'text/x-csh',
1409 # Windows metafile, client-side vulnerability on some systems
1410 'application/x-msmetafile'
1411 );
1412
1413 /** This is a flag to determine whether or not to check file extensions on upload. */
1414 $wgCheckFileExtensions = true;
1415
1416 /**
1417 * If this is turned off, users may override the warning for files not covered
1418 * by $wgFileExtensions.
1419 */
1420 $wgStrictFileExtensions = true;
1421
1422 /** Warn if uploaded files are larger than this (in bytes)*/
1423 $wgUploadSizeWarning = 150 * 1024;
1424
1425 /** For compatibility with old installations set to false */
1426 $wgPasswordSalt = true;
1427
1428 /** Which namespaces should support subpages?
1429 * See Language.php for a list of namespaces.
1430 */
1431 $wgNamespacesWithSubpages = array(
1432 NS_TALK => true,
1433 NS_USER => true,
1434 NS_USER_TALK => true,
1435 NS_PROJECT_TALK => true,
1436 NS_IMAGE_TALK => true,
1437 NS_MEDIAWIKI_TALK => true,
1438 NS_TEMPLATE_TALK => true,
1439 NS_HELP_TALK => true,
1440 NS_CATEGORY_TALK => true
1441 );
1442
1443 $wgNamespacesToBeSearchedDefault = array(
1444 NS_MAIN => true,
1445 );
1446
1447 /** If set, a bold ugly notice will show up at the top of every page. */
1448 $wgSiteNotice = '';
1449
1450
1451 #
1452 # Images settings
1453 #
1454
1455 /**
1456 * Plugins for media file type handling.
1457 * Each entry in the array maps a MIME type to a class name
1458 */
1459 $wgMediaHandlers = array(
1460 'image/jpeg' => 'BitmapHandler',
1461 'image/png' => 'BitmapHandler',
1462 'image/gif' => 'BitmapHandler',
1463 'image/x-ms-bmp' => 'BmpHandler',
1464 'image/svg+xml' => 'SvgHandler',
1465 'image/vnd.djvu' => 'DjVuHandler',
1466 );
1467
1468
1469 /**
1470 * Resizing can be done using PHP's internal image libraries or using
1471 * ImageMagick or another third-party converter, e.g. GraphicMagick.
1472 * These support more file formats than PHP, which only supports PNG,
1473 * GIF, JPG, XBM and WBMP.
1474 *
1475 * Use Image Magick instead of PHP builtin functions.
1476 */
1477 $wgUseImageMagick = false;
1478 /** The convert command shipped with ImageMagick */
1479 $wgImageMagickConvertCommand = '/usr/bin/convert';
1480
1481 /** Sharpening parameter to ImageMagick */
1482 $wgSharpenParameter = '0x0.4';
1483
1484 /** Reduction in linear dimensions below which sharpening will be enabled */
1485 $wgSharpenReductionThreshold = 0.85;
1486
1487 /**
1488 * Use another resizing converter, e.g. GraphicMagick
1489 * %s will be replaced with the source path, %d with the destination
1490 * %w and %h will be replaced with the width and height
1491 *
1492 * An example is provided for GraphicMagick
1493 * Leave as false to skip this
1494 */
1495 #$wgCustomConvertCommand = "gm convert %s -resize %wx%h %d"
1496 $wgCustomConvertCommand = false;
1497
1498 # Scalable Vector Graphics (SVG) may be uploaded as images.
1499 # Since SVG support is not yet standard in browsers, it is
1500 # necessary to rasterize SVGs to PNG as a fallback format.
1501 #
1502 # An external program is required to perform this conversion:
1503 $wgSVGConverters = array(
1504 'ImageMagick' => '$path/convert -background white -geometry $width $input PNG:$output',
1505 'sodipodi' => '$path/sodipodi -z -w $width -f $input -e $output',
1506 'inkscape' => '$path/inkscape -z -w $width -f $input -e $output',
1507 'batik' => 'java -Djava.awt.headless=true -jar $path/batik-rasterizer.jar -w $width -d $output $input',
1508 'rsvg' => '$path/rsvg -w$width -h$height $input $output',
1509 );
1510 /** Pick one of the above */
1511 $wgSVGConverter = 'ImageMagick';
1512 /** If not in the executable PATH, specify */
1513 $wgSVGConverterPath = '';
1514 /** Don't scale a SVG larger than this */
1515 $wgSVGMaxSize = 1024;
1516 /**
1517 * Don't thumbnail an image if it will use too much working memory
1518 * Default is 50 MB if decompressed to RGBA form, which corresponds to
1519 * 12.5 million pixels or 3500x3500
1520 */
1521 $wgMaxImageArea = 1.25e7;
1522 /**
1523 * If rendered thumbnail files are older than this timestamp, they
1524 * will be rerendered on demand as if the file didn't already exist.
1525 * Update if there is some need to force thumbs and SVG rasterizations
1526 * to rerender, such as fixes to rendering bugs.
1527 */
1528 $wgThumbnailEpoch = '20030516000000';
1529
1530 /**
1531 * If set, inline scaled images will still produce <img> tags ready for
1532 * output instead of showing an error message.
1533 *
1534 * This may be useful if errors are transitory, especially if the site
1535 * is configured to automatically render thumbnails on request.
1536 *
1537 * On the other hand, it may obscure error conditions from debugging.
1538 * Enable the debug log or the 'thumbnail' log group to make sure errors
1539 * are logged to a file for review.
1540 */
1541 $wgIgnoreImageErrors = false;
1542
1543 /**
1544 * Allow thumbnail rendering on page view. If this is false, a valid
1545 * thumbnail URL is still output, but no file will be created at
1546 * the target location. This may save some time if you have a
1547 * thumb.php or 404 handler set up which is faster than the regular
1548 * webserver(s).
1549 */
1550 $wgGenerateThumbnailOnParse = true;
1551
1552 /** Obsolete, always true, kept for compatibility with extensions */
1553 $wgUseImageResize = true;
1554
1555
1556 /** Set $wgCommandLineMode if it's not set already, to avoid notices */
1557 if( !isset( $wgCommandLineMode ) ) {
1558 $wgCommandLineMode = false;
1559 }
1560
1561 /** For colorized maintenance script output, is your terminal background dark ? */
1562 $wgCommandLineDarkBg = false;
1563
1564 #
1565 # Recent changes settings
1566 #
1567
1568 /** Log IP addresses in the recentchanges table; can be accessed only by extensions (e.g. CheckUser) or a DB admin */
1569 $wgPutIPinRC = true;
1570
1571 /**
1572 * Recentchanges items are periodically purged; entries older than this many
1573 * seconds will go.
1574 * For one week : 7 * 24 * 3600
1575 */
1576 $wgRCMaxAge = 7 * 24 * 3600;
1577
1578
1579 # Send RC updates via UDP
1580 $wgRC2UDPAddress = false;
1581 $wgRC2UDPPort = false;
1582 $wgRC2UDPPrefix = '';
1583
1584 #
1585 # Copyright and credits settings
1586 #
1587
1588 /** RDF metadata toggles */
1589 $wgEnableDublinCoreRdf = false;
1590 $wgEnableCreativeCommonsRdf = false;
1591
1592 /** Override for copyright metadata.
1593 * TODO: these options need documentation
1594 */
1595 $wgRightsPage = NULL;
1596 $wgRightsUrl = NULL;
1597 $wgRightsText = NULL;
1598 $wgRightsIcon = NULL;
1599
1600 /** Set this to some HTML to override the rights icon with an arbitrary logo */
1601 $wgCopyrightIcon = NULL;
1602
1603 /** Set this to true if you want detailed copyright information forms on Upload. */
1604 $wgUseCopyrightUpload = false;
1605
1606 /** Set this to false if you want to disable checking that detailed copyright
1607 * information values are not empty. */
1608 $wgCheckCopyrightUpload = true;
1609
1610 /**
1611 * Set this to the number of authors that you want to be credited below an
1612 * article text. Set it to zero to hide the attribution block, and a negative
1613 * number (like -1) to show all authors. Note that this will require 2-3 extra
1614 * database hits, which can have a not insignificant impact on performance for
1615 * large wikis.
1616 */
1617 $wgMaxCredits = 0;
1618
1619 /** If there are more than $wgMaxCredits authors, show $wgMaxCredits of them.
1620 * Otherwise, link to a separate credits page. */
1621 $wgShowCreditsIfMax = true;
1622
1623
1624
1625 /**
1626 * Set this to false to avoid forcing the first letter of links to capitals.
1627 * WARNING: may break links! This makes links COMPLETELY case-sensitive. Links
1628 * appearing with a capital at the beginning of a sentence will *not* go to the
1629 * same place as links in the middle of a sentence using a lowercase initial.
1630 */
1631 $wgCapitalLinks = true;
1632
1633 /**
1634 * List of interwiki prefixes for wikis we'll accept as sources for
1635 * Special:Import (for sysops). Since complete page history can be imported,
1636 * these should be 'trusted'.
1637 *
1638 * If a user has the 'import' permission but not the 'importupload' permission,
1639 * they will only be able to run imports through this transwiki interface.
1640 */
1641 $wgImportSources = array();
1642
1643 /**
1644 * Optional default target namespace for interwiki imports.
1645 * Can use this to create an incoming "transwiki"-style queue.
1646 * Set to numeric key, not the name.
1647 *
1648 * Users may override this in the Special:Import dialog.
1649 */
1650 $wgImportTargetNamespace = null;
1651
1652 /**
1653 * If set to false, disables the full-history option on Special:Export.
1654 * This is currently poorly optimized for long edit histories, so is
1655 * disabled on Wikimedia's sites.
1656 */
1657 $wgExportAllowHistory = true;
1658
1659 /**
1660 * If set nonzero, Special:Export requests for history of pages with
1661 * more revisions than this will be rejected. On some big sites things
1662 * could get bogged down by very very long pages.
1663 */
1664 $wgExportMaxHistory = 0;
1665
1666 $wgExportAllowListContributors = false ;
1667
1668
1669 /** Text matching this regular expression will be recognised as spam
1670 * See http://en.wikipedia.org/wiki/Regular_expression */
1671 $wgSpamRegex = false;
1672 /** Similarly you can get a function to do the job. The function will be given
1673 * the following args:
1674 * - a Title object for the article the edit is made on
1675 * - the text submitted in the textarea (wpTextbox1)
1676 * - the section number.
1677 * The return should be boolean indicating whether the edit matched some evilness:
1678 * - true : block it
1679 * - false : let it through
1680 *
1681 * For a complete example, have a look at the SpamBlacklist extension.
1682 */
1683 $wgFilterCallback = false;
1684
1685 /** Go button goes straight to the edit screen if the article doesn't exist. */
1686 $wgGoToEdit = false;
1687
1688 /** Allow raw, unchecked HTML in <html>...</html> sections.
1689 * THIS IS VERY DANGEROUS on a publically editable site, so USE wgGroupPermissions
1690 * TO RESTRICT EDITING to only those that you trust
1691 */
1692 $wgRawHtml = false;
1693
1694 /**
1695 * $wgUseTidy: use tidy to make sure HTML output is sane.
1696 * Tidy is a free tool that fixes broken HTML.
1697 * See http://www.w3.org/People/Raggett/tidy/
1698 * $wgTidyBin should be set to the path of the binary and
1699 * $wgTidyConf to the path of the configuration file.
1700 * $wgTidyOpts can include any number of parameters.
1701 *
1702 * $wgTidyInternal controls the use of the PECL extension to use an in-
1703 * process tidy library instead of spawning a separate program.
1704 * Normally you shouldn't need to override the setting except for
1705 * debugging. To install, use 'pear install tidy' and add a line
1706 * 'extension=tidy.so' to php.ini.
1707 */
1708 $wgUseTidy = false;
1709 $wgAlwaysUseTidy = false;
1710 $wgTidyBin = 'tidy';
1711 $wgTidyConf = $IP.'/includes/tidy.conf';
1712 $wgTidyOpts = '';
1713 $wgTidyInternal = function_exists( 'tidy_load_config' );
1714
1715 /** See list of skins and their symbolic names in languages/Language.php */
1716 $wgDefaultSkin = 'monobook';
1717
1718 /**
1719 * Settings added to this array will override the default globals for the user
1720 * preferences used by anonymous visitors and newly created accounts.
1721 * For instance, to disable section editing links:
1722 * $wgDefaultUserOptions ['editsection'] = 0;
1723 *
1724 */
1725 $wgDefaultUserOptions = array(
1726 'quickbar' => 1,
1727 'underline' => 2,
1728 'cols' => 80,
1729 'rows' => 25,
1730 'searchlimit' => 20,
1731 'contextlines' => 5,
1732 'contextchars' => 50,
1733 'skin' => false,
1734 'math' => 1,
1735 'rcdays' => 7,
1736 'rclimit' => 50,
1737 'wllimit' => 250,
1738 'highlightbroken' => 1,
1739 'stubthreshold' => 0,
1740 'previewontop' => 1,
1741 'editsection' => 1,
1742 'editsectiononrightclick'=> 0,
1743 'showtoc' => 1,
1744 'showtoolbar' => 1,
1745 'date' => 'default',
1746 'imagesize' => 2,
1747 'thumbsize' => 2,
1748 'rememberpassword' => 0,
1749 'enotifwatchlistpages' => 0,
1750 'enotifusertalkpages' => 1,
1751 'enotifminoredits' => 0,
1752 'enotifrevealaddr' => 0,
1753 'shownumberswatching' => 1,
1754 'fancysig' => 0,
1755 'externaleditor' => 0,
1756 'externaldiff' => 0,
1757 'showjumplinks' => 1,
1758 'numberheadings' => 0,
1759 'uselivepreview' => 0,
1760 'watchlistdays' => 3.0,
1761 );
1762
1763 /** Whether or not to allow and use real name fields. Defaults to true. */
1764 $wgAllowRealName = true;
1765
1766 /*****************************************************************************
1767 * Extensions
1768 */
1769
1770 /**
1771 * A list of callback functions which are called once MediaWiki is fully initialised
1772 */
1773 $wgExtensionFunctions = array();
1774
1775 /**
1776 * Extension functions for initialisation of skins. This is called somewhat earlier
1777 * than $wgExtensionFunctions.
1778 */
1779 $wgSkinExtensionFunctions = array();
1780
1781 /**
1782 * List of valid skin names.
1783 * The key should be the name in all lower case, the value should be a display name.
1784 * The default skins will be added later, by Skin::getSkinNames(). Use
1785 * Skin::getSkinNames() as an accessor if you wish to have access to the full list.
1786 */
1787 $wgValidSkinNames = array();
1788
1789 /**
1790 * Special page list.
1791 * See the top of SpecialPage.php for documentation.
1792 */
1793 $wgSpecialPages = array();
1794
1795 /**
1796 * Array mapping class names to filenames, for autoloading.
1797 */
1798 $wgAutoloadClasses = array();
1799
1800 /**
1801 * An array of extension types and inside that their names, versions, authors
1802 * and urls, note that the version and url key can be omitted.
1803 *
1804 * <code>
1805 * $wgExtensionCredits[$type][] = array(
1806 * 'name' => 'Example extension',
1807 * 'version' => 1.9,
1808 * 'author' => 'Foo Barstein',
1809 * 'url' => 'http://wwww.example.com/Example%20Extension/',
1810 * );
1811 * </code>
1812 *
1813 * Where $type is 'specialpage', 'parserhook', or 'other'.
1814 */
1815 $wgExtensionCredits = array();
1816 /*
1817 * end extensions
1818 ******************************************************************************/
1819
1820 /**
1821 * Allow user Javascript page?
1822 * This enables a lot of neat customizations, but may
1823 * increase security risk to users and server load.
1824 */
1825 $wgAllowUserJs = false;
1826
1827 /**
1828 * Allow user Cascading Style Sheets (CSS)?
1829 * This enables a lot of neat customizations, but may
1830 * increase security risk to users and server load.
1831 */
1832 $wgAllowUserCss = false;
1833
1834 /** Use the site's Javascript page? */
1835 $wgUseSiteJs = true;
1836
1837 /** Use the site's Cascading Style Sheets (CSS)? */
1838 $wgUseSiteCss = true;
1839
1840 /** Filter for Special:Randompage. Part of a WHERE clause */
1841 $wgExtraRandompageSQL = false;
1842
1843 /** Allow the "info" action, very inefficient at the moment */
1844 $wgAllowPageInfo = false;
1845
1846 /** Maximum indent level of toc. */
1847 $wgMaxTocLevel = 999;
1848
1849 /** Name of the external diff engine to use */
1850 $wgExternalDiffEngine = false;
1851
1852 /** Use RC Patrolling to check for vandalism */
1853 $wgUseRCPatrol = true;
1854
1855 /** Set maximum number of results to return in syndication feeds (RSS, Atom) for
1856 * eg Recentchanges, Newpages. */
1857 $wgFeedLimit = 50;
1858
1859 /** _Minimum_ timeout for cached Recentchanges feed, in seconds.
1860 * A cached version will continue to be served out even if changes
1861 * are made, until this many seconds runs out since the last render.
1862 *
1863 * If set to 0, feed caching is disabled. Use this for debugging only;
1864 * feed generation can be pretty slow with diffs.
1865 */
1866 $wgFeedCacheTimeout = 60;
1867
1868 /** When generating Recentchanges RSS/Atom feed, diffs will not be generated for
1869 * pages larger than this size. */
1870 $wgFeedDiffCutoff = 32768;
1871
1872
1873 /**
1874 * Additional namespaces. If the namespaces defined in Language.php and
1875 * Namespace.php are insufficient, you can create new ones here, for example,
1876 * to import Help files in other languages.
1877 * PLEASE NOTE: Once you delete a namespace, the pages in that namespace will
1878 * no longer be accessible. If you rename it, then you can access them through
1879 * the new namespace name.
1880 *
1881 * Custom namespaces should start at 100 to avoid conflicting with standard
1882 * namespaces, and should always follow the even/odd main/talk pattern.
1883 */
1884 #$wgExtraNamespaces =
1885 # array(100 => "Hilfe",
1886 # 101 => "Hilfe_Diskussion",
1887 # 102 => "Aide",
1888 # 103 => "Discussion_Aide"
1889 # );
1890 $wgExtraNamespaces = NULL;
1891
1892 /**
1893 * Limit images on image description pages to a user-selectable limit. In order
1894 * to reduce disk usage, limits can only be selected from a list.
1895 * The user preference is saved as an array offset in the database, by default
1896 * the offset is set with $wgDefaultUserOptions['imagesize']. Make sure you
1897 * change it if you alter the array (see bug 8858).
1898 * This is the list of settings the user can choose from:
1899 */
1900 $wgImageLimits = array (
1901 array(320,240),
1902 array(640,480),
1903 array(800,600),
1904 array(1024,768),
1905 array(1280,1024),
1906 array(10000,10000) );
1907
1908 /**
1909 * Adjust thumbnails on image pages according to a user setting. In order to
1910 * reduce disk usage, the values can only be selected from a list. This is the
1911 * list of settings the user can choose from:
1912 */
1913 $wgThumbLimits = array(
1914 120,
1915 150,
1916 180,
1917 200,
1918 250,
1919 300
1920 );
1921
1922 /**
1923 * On category pages, show thumbnail gallery for images belonging to that
1924 * category instead of listing them as articles.
1925 */
1926 $wgCategoryMagicGallery = true;
1927
1928 /**
1929 * Paging limit for categories
1930 */
1931 $wgCategoryPagingLimit = 200;
1932
1933 /**
1934 * Browser Blacklist for unicode non compliant browsers
1935 * Contains a list of regexps : "/regexp/" matching problematic browsers
1936 */
1937 $wgBrowserBlackList = array(
1938 /**
1939 * Netscape 2-4 detection
1940 * The minor version may contain strings such as "Gold" or "SGoldC-SGI"
1941 * Lots of non-netscape user agents have "compatible", so it's useful to check for that
1942 * with a negative assertion. The [UIN] identifier specifies the level of security
1943 * in a Netscape/Mozilla browser, checking for it rules out a number of fakers.
1944 * The language string is unreliable, it is missing on NS4 Mac.
1945 *
1946 * Reference: http://www.psychedelix.com/agents/index.shtml
1947 */
1948 '/^Mozilla\/2\.[^ ]+ .*?\((?!compatible).*; [UIN]/',
1949 '/^Mozilla\/3\.[^ ]+ .*?\((?!compatible).*; [UIN]/',
1950 '/^Mozilla\/4\.[^ ]+ .*?\((?!compatible).*; [UIN]/',
1951
1952 /**
1953 * MSIE on Mac OS 9 is teh sux0r, converts þ to <thorn>, ð to <eth>, Þ to <THORN> and Ð to <ETH>
1954 *
1955 * Known useragents:
1956 * - Mozilla/4.0 (compatible; MSIE 5.0; Mac_PowerPC)
1957 * - Mozilla/4.0 (compatible; MSIE 5.15; Mac_PowerPC)
1958 * - Mozilla/4.0 (compatible; MSIE 5.23; Mac_PowerPC)
1959 * - [...]
1960 *
1961 * @link http://en.wikipedia.org/w/index.php?title=User%3A%C6var_Arnfj%F6r%F0_Bjarmason%2Ftestme&diff=12356041&oldid=12355864
1962 * @link http://en.wikipedia.org/wiki/Template%3AOS9
1963 */
1964 '/^Mozilla\/4\.0 \(compatible; MSIE \d+\.\d+; Mac_PowerPC\)/'
1965 );
1966
1967 /**
1968 * Fake out the timezone that the server thinks it's in. This will be used for
1969 * date display and not for what's stored in the DB. Leave to null to retain
1970 * your server's OS-based timezone value. This is the same as the timezone.
1971 *
1972 * This variable is currently used ONLY for signature formatting, not for
1973 * anything else.
1974 */
1975 # $wgLocaltimezone = 'GMT';
1976 # $wgLocaltimezone = 'PST8PDT';
1977 # $wgLocaltimezone = 'Europe/Sweden';
1978 # $wgLocaltimezone = 'CET';
1979 $wgLocaltimezone = null;
1980
1981 /**
1982 * Set an offset from UTC in minutes to use for the default timezone setting
1983 * for anonymous users and new user accounts.
1984 *
1985 * This setting is used for most date/time displays in the software, and is
1986 * overrideable in user preferences. It is *not* used for signature timestamps.
1987 *
1988 * You can set it to match the configured server timezone like this:
1989 * $wgLocalTZoffset = date("Z") / 60;
1990 *
1991 * If your server is not configured for the timezone you want, you can set
1992 * this in conjunction with the signature timezone and override the TZ
1993 * environment variable like so:
1994 * $wgLocaltimezone="Europe/Berlin";
1995 * putenv("TZ=$wgLocaltimezone");
1996 * $wgLocalTZoffset = date("Z") / 60;
1997 *
1998 * Leave at NULL to show times in universal time (UTC/GMT).
1999 */
2000 $wgLocalTZoffset = null;
2001
2002
2003 /**
2004 * When translating messages with wfMsg(), it is not always clear what should be
2005 * considered UI messages and what shoud be content messages.
2006 *
2007 * For example, for regular wikipedia site like en, there should be only one
2008 * 'mainpage', therefore when getting the link of 'mainpage', we should treate
2009 * it as content of the site and call wfMsgForContent(), while for rendering the
2010 * text of the link, we call wfMsg(). The code in default behaves this way.
2011 * However, sites like common do offer different versions of 'mainpage' and the
2012 * like for different languages. This array provides a way to override the
2013 * default behavior. For example, to allow language specific mainpage and
2014 * community portal, set
2015 *
2016 * $wgForceUIMsgAsContentMsg = array( 'mainpage', 'portal-url' );
2017 */
2018 $wgForceUIMsgAsContentMsg = array();
2019
2020
2021 /**
2022 * Authentication plugin.
2023 */
2024 $wgAuth = null;
2025
2026 /**
2027 * Global list of hooks.
2028 * Add a hook by doing:
2029 * $wgHooks['event_name'][] = $function;
2030 * or:
2031 * $wgHooks['event_name'][] = array($function, $data);
2032 * or:
2033 * $wgHooks['event_name'][] = array($object, 'method');
2034 */
2035 $wgHooks = array();
2036
2037 /**
2038 * The logging system has two levels: an event type, which describes the
2039 * general category and can be viewed as a named subset of all logs; and
2040 * an action, which is a specific kind of event that can exist in that
2041 * log type.
2042 */
2043 $wgLogTypes = array( '',
2044 'block',
2045 'protect',
2046 'rights',
2047 'delete',
2048 'upload',
2049 'move',
2050 'import',
2051 'patrol',
2052 );
2053
2054 /**
2055 * Lists the message key string for each log type. The localized messages
2056 * will be listed in the user interface.
2057 *
2058 * Extensions with custom log types may add to this array.
2059 */
2060 $wgLogNames = array(
2061 '' => 'log',
2062 'block' => 'blocklogpage',
2063 'protect' => 'protectlogpage',
2064 'rights' => 'rightslog',
2065 'delete' => 'dellogpage',
2066 'upload' => 'uploadlogpage',
2067 'move' => 'movelogpage',
2068 'import' => 'importlogpage',
2069 'patrol' => 'patrol-log-page',
2070 );
2071
2072 /**
2073 * Lists the message key string for descriptive text to be shown at the
2074 * top of each log type.
2075 *
2076 * Extensions with custom log types may add to this array.
2077 */
2078 $wgLogHeaders = array(
2079 '' => 'alllogstext',
2080 'block' => 'blocklogtext',
2081 'protect' => 'protectlogtext',
2082 'rights' => 'rightslogtext',
2083 'delete' => 'dellogpagetext',
2084 'upload' => 'uploadlogpagetext',
2085 'move' => 'movelogpagetext',
2086 'import' => 'importlogpagetext',
2087 'patrol' => 'patrol-log-header',
2088 );
2089
2090 /**
2091 * Lists the message key string for formatting individual events of each
2092 * type and action when listed in the logs.
2093 *
2094 * Extensions with custom log types may add to this array.
2095 */
2096 $wgLogActions = array(
2097 'block/block' => 'blocklogentry',
2098 'block/unblock' => 'unblocklogentry',
2099 'protect/protect' => 'protectedarticle',
2100 'protect/unprotect' => 'unprotectedarticle',
2101 'rights/rights' => 'rightslogentry',
2102 'delete/delete' => 'deletedarticle',
2103 'delete/restore' => 'undeletedarticle',
2104 'delete/revision' => 'revdelete-logentry',
2105 'upload/upload' => 'uploadedimage',
2106 'upload/revert' => 'uploadedimage',
2107 'move/move' => '1movedto2',
2108 'move/move_redir' => '1movedto2_redir',
2109 'import/upload' => 'import-logentry-upload',
2110 'import/interwiki' => 'import-logentry-interwiki',
2111 );
2112
2113 /**
2114 * Experimental preview feature to fetch rendered text
2115 * over an XMLHttpRequest from JavaScript instead of
2116 * forcing a submit and reload of the whole page.
2117 * Leave disabled unless you're testing it.
2118 */
2119 $wgLivePreview = false;
2120
2121 /**
2122 * Disable the internal MySQL-based search, to allow it to be
2123 * implemented by an extension instead.
2124 */
2125 $wgDisableInternalSearch = false;
2126
2127 /**
2128 * Set this to a URL to forward search requests to some external location.
2129 * If the URL includes '$1', this will be replaced with the URL-encoded
2130 * search term.
2131 *
2132 * For example, to forward to Google you'd have something like:
2133 * $wgSearchForwardUrl = 'http://www.google.com/search?q=$1' .
2134 * '&domains=http://example.com' .
2135 * '&sitesearch=http://example.com' .
2136 * '&ie=utf-8&oe=utf-8';
2137 */
2138 $wgSearchForwardUrl = null;
2139
2140 /**
2141 * If true, external URL links in wiki text will be given the
2142 * rel="nofollow" attribute as a hint to search engines that
2143 * they should not be followed for ranking purposes as they
2144 * are user-supplied and thus subject to spamming.
2145 */
2146 $wgNoFollowLinks = true;
2147
2148 /**
2149 * Namespaces in which $wgNoFollowLinks doesn't apply.
2150 * See Language.php for a list of namespaces.
2151 */
2152 $wgNoFollowNsExceptions = array();
2153
2154 /**
2155 * Robot policies per namespaces.
2156 * The default policy is 'index,follow', the array is made of namespace
2157 * constants as defined in includes/Defines.php
2158 * Example:
2159 * $wgNamespaceRobotPolicies = array( NS_TALK => 'noindex' );
2160 */
2161 $wgNamespaceRobotPolicies = array();
2162
2163 /**
2164 * Specifies the minimal length of a user password. If set to
2165 * 0, empty passwords are allowed.
2166 */
2167 $wgMinimalPasswordLength = 0;
2168
2169 /**
2170 * Activate external editor interface for files and pages
2171 * See http://meta.wikimedia.org/wiki/Help:External_editors
2172 */
2173 $wgUseExternalEditor = true;
2174
2175 /** Whether or not to sort special pages in Special:Specialpages */
2176
2177 $wgSortSpecialPages = true;
2178
2179 /**
2180 * Specify the name of a skin that should not be presented in the
2181 * list of available skins.
2182 * Use for blacklisting a skin which you do not want to remove
2183 * from the .../skins/ directory
2184 */
2185 $wgSkipSkin = '';
2186 $wgSkipSkins = array(); # More of the same
2187
2188 /**
2189 * Array of disabled article actions, e.g. view, edit, dublincore, delete, etc.
2190 */
2191 $wgDisabledActions = array();
2192
2193 /**
2194 * Disable redirects to special pages and interwiki redirects, which use a 302 and have no "redirected from" link
2195 */
2196 $wgDisableHardRedirects = false;
2197
2198 /**
2199 * Use http.dnsbl.sorbs.net to check for open proxies
2200 */
2201 $wgEnableSorbs = false;
2202 $wgSorbsUrl = 'http.dnsbl.sorbs.net.';
2203
2204 /**
2205 * Proxy whitelist, list of addresses that are assumed to be non-proxy despite what the other
2206 * methods might say
2207 */
2208 $wgProxyWhitelist = array();
2209
2210 /**
2211 * Simple rate limiter options to brake edit floods.
2212 * Maximum number actions allowed in the given number of seconds;
2213 * after that the violating client receives HTTP 500 error pages
2214 * until the period elapses.
2215 *
2216 * array( 4, 60 ) for a maximum of 4 hits in 60 seconds.
2217 *
2218 * This option set is experimental and likely to change.
2219 * Requires memcached.
2220 */
2221 $wgRateLimits = array(
2222 'edit' => array(
2223 'anon' => null, // for any and all anonymous edits (aggregate)
2224 'user' => null, // for each logged-in user
2225 'newbie' => null, // for each recent account; overrides 'user'
2226 'ip' => null, // for each anon and recent account
2227 'subnet' => null, // ... with final octet removed
2228 ),
2229 'move' => array(
2230 'user' => null,
2231 'newbie' => null,
2232 'ip' => null,
2233 'subnet' => null,
2234 ),
2235 'mailpassword' => array(
2236 'anon' => NULL,
2237 ),
2238 'emailuser' => array(
2239 'user' => null,
2240 ),
2241 );
2242
2243 /**
2244 * Set to a filename to log rate limiter hits.
2245 */
2246 $wgRateLimitLog = null;
2247
2248 /**
2249 * Array of groups which should never trigger the rate limiter
2250 */
2251 $wgRateLimitsExcludedGroups = array( 'sysop', 'bureaucrat' );
2252
2253 /**
2254 * On Special:Unusedimages, consider images "used", if they are put
2255 * into a category. Default (false) is not to count those as used.
2256 */
2257 $wgCountCategorizedImagesAsUsed = false;
2258
2259 /**
2260 * External stores allow including content
2261 * from non database sources following URL links
2262 *
2263 * Short names of ExternalStore classes may be specified in an array here:
2264 * $wgExternalStores = array("http","file","custom")...
2265 *
2266 * CAUTION: Access to database might lead to code execution
2267 */
2268 $wgExternalStores = false;
2269
2270 /**
2271 * An array of external mysql servers, e.g.
2272 * $wgExternalServers = array( 'cluster1' => array( 'srv28', 'srv29', 'srv30' ) );
2273 */
2274 $wgExternalServers = array();
2275
2276 /**
2277 * The place to put new revisions, false to put them in the local text table.
2278 * Part of a URL, e.g. DB://cluster1
2279 *
2280 * Can be an array instead of a single string, to enable data distribution. Keys
2281 * must be consecutive integers, starting at zero. Example:
2282 *
2283 * $wgDefaultExternalStore = array( 'DB://cluster1', 'DB://cluster2' );
2284 *
2285 */
2286 $wgDefaultExternalStore = false;
2287
2288 /**
2289 * Revision text may be cached in $wgMemc to reduce load on external storage
2290 * servers and object extraction overhead for frequently-loaded revisions.
2291 *
2292 * Set to 0 to disable, or number of seconds before cache expiry.
2293 */
2294 $wgRevisionCacheExpiry = 0;
2295
2296 /**
2297 * list of trusted media-types and mime types.
2298 * Use the MEDIATYPE_xxx constants to represent media types.
2299 * This list is used by Image::isSafeFile
2300 *
2301 * Types not listed here will have a warning about unsafe content
2302 * displayed on the images description page. It would also be possible
2303 * to use this for further restrictions, like disabling direct
2304 * [[media:...]] links for non-trusted formats.
2305 */
2306 $wgTrustedMediaFormats= array(
2307 MEDIATYPE_BITMAP, //all bitmap formats
2308 MEDIATYPE_AUDIO, //all audio formats
2309 MEDIATYPE_VIDEO, //all plain video formats
2310 "image/svg+xml", //svg (only needed if inline rendering of svg is not supported)
2311 "application/pdf", //PDF files
2312 #"application/x-shockwave-flash", //flash/shockwave movie
2313 );
2314
2315 /**
2316 * Allow special page inclusions such as {{Special:Allpages}}
2317 */
2318 $wgAllowSpecialInclusion = true;
2319
2320 /**
2321 * Timeout for HTTP requests done via CURL
2322 */
2323 $wgHTTPTimeout = 3;
2324
2325 /**
2326 * Proxy to use for CURL requests.
2327 */
2328 $wgHTTPProxy = false;
2329
2330 /**
2331 * Enable interwiki transcluding. Only when iw_trans=1.
2332 */
2333 $wgEnableScaryTranscluding = false;
2334 /**
2335 * Expiry time for interwiki transclusion
2336 */
2337 $wgTranscludeCacheExpiry = 3600;
2338
2339 /**
2340 * Support blog-style "trackbacks" for articles. See
2341 * http://www.sixapart.com/pronet/docs/trackback_spec for details.
2342 */
2343 $wgUseTrackbacks = false;
2344
2345 /**
2346 * Enable filtering of categories in Recentchanges
2347 */
2348 $wgAllowCategorizedRecentChanges = false ;
2349
2350 /**
2351 * Number of jobs to perform per request. May be less than one in which case
2352 * jobs are performed probabalistically. If this is zero, jobs will not be done
2353 * during ordinary apache requests. In this case, maintenance/runJobs.php should
2354 * be run periodically.
2355 */
2356 $wgJobRunRate = 1;
2357
2358 /**
2359 * Number of rows to update per job
2360 */
2361 $wgUpdateRowsPerJob = 500;
2362
2363 /**
2364 * Number of rows to update per query
2365 */
2366 $wgUpdateRowsPerQuery = 10;
2367
2368 /**
2369 * Enable AJAX framework
2370 */
2371 $wgUseAjax = false;
2372
2373 /**
2374 * Enable auto suggestion for the search bar
2375 * Requires $wgUseAjax to be true too.
2376 * Causes wfSajaxSearch to be added to $wgAjaxExportList
2377 */
2378 $wgAjaxSearch = false;
2379
2380 /**
2381 * List of Ajax-callable functions.
2382 * Extensions acting as Ajax callbacks must register here
2383 */
2384 $wgAjaxExportList = array( );
2385
2386 /**
2387 * Enable watching/unwatching pages using AJAX.
2388 * Requires $wgUseAjax to be true too.
2389 * Causes wfAjaxWatch to be added to $wgAjaxExportList
2390 */
2391 $wgAjaxWatch = false;
2392
2393 /**
2394 * Allow DISPLAYTITLE to change title display
2395 */
2396 $wgAllowDisplayTitle = false ;
2397
2398 /**
2399 * Array of usernames which may not be registered or logged in from
2400 * Maintenance scripts can still use these
2401 */
2402 $wgReservedUsernames = array(
2403 'MediaWiki default', // Default 'Main Page' and MediaWiki: message pages
2404 'Conversion script', // Used for the old Wikipedia software upgrade
2405 'Maintenance script', // Maintenance scripts which perform editing, image import script
2406 'Template namespace initialisation script', // Used in 1.2->1.3 upgrade
2407 );
2408
2409 /**
2410 * MediaWiki will reject HTMLesque tags in uploaded files due to idiotic browsers which can't
2411 * perform basic stuff like MIME detection and which are vulnerable to further idiots uploading
2412 * crap files as images. When this directive is on, <title> will be allowed in files with
2413 * an "image/svg+xml" MIME type. You should leave this disabled if your web server is misconfigured
2414 * and doesn't send appropriate MIME types for SVG images.
2415 */
2416 $wgAllowTitlesInSVG = false;
2417
2418 /**
2419 * Array of namespaces which can be deemed to contain valid "content", as far
2420 * as the site statistics are concerned. Useful if additional namespaces also
2421 * contain "content" which should be considered when generating a count of the
2422 * number of articles in the wiki.
2423 */
2424 $wgContentNamespaces = array( NS_MAIN );
2425
2426 /**
2427 * Maximum amount of virtual memory available to shell processes under linux, in KB.
2428 */
2429 $wgMaxShellMemory = 102400;
2430
2431 /**
2432 * Maximum file size created by shell processes under linux, in KB
2433 * ImageMagick convert for example can be fairly hungry for scratch space
2434 */
2435 $wgMaxShellFileSize = 102400;
2436
2437 /**
2438 * DJVU settings
2439 * Path of the djvudump executable
2440 * Enable this and $wgDjvuRenderer to enable djvu rendering
2441 */
2442 # $wgDjvuDump = 'djvudump';
2443 $wgDjvuDump = null;
2444
2445 /**
2446 * Path of the ddjvu DJVU renderer
2447 * Enable this and $wgDjvuDump to enable djvu rendering
2448 */
2449 # $wgDjvuRenderer = 'ddjvu';
2450 $wgDjvuRenderer = null;
2451
2452 /**
2453 * Path of the djvutoxml executable
2454 * This works like djvudump except much, much slower as of version 3.5.
2455 *
2456 * For now I recommend you use djvudump instead. The djvuxml output is
2457 * probably more stable, so we'll switch back to it as soon as they fix
2458 * the efficiency problem.
2459 * http://sourceforge.net/tracker/index.php?func=detail&aid=1704049&group_id=32953&atid=406583
2460 */
2461 # $wgDjvuToXML = 'djvutoxml';
2462 $wgDjvuToXML = null;
2463
2464
2465 /**
2466 * Shell command for the DJVU post processor
2467 * Default: pnmtopng, since ddjvu generates ppm output
2468 * Set this to false to output the ppm file directly.
2469 */
2470 $wgDjvuPostProcessor = 'pnmtojpeg';
2471 /**
2472 * File extension for the DJVU post processor output
2473 */
2474 $wgDjvuOutputExtension = 'jpg';
2475
2476 /**
2477 * Enable direct access to the data API
2478 * through api.php
2479 */
2480 $wgEnableAPI = true;
2481 $wgEnableWriteAPI = false;
2482
2483 /**
2484 * Parser test suite files to be run by parserTests.php when no specific
2485 * filename is passed to it.
2486 *
2487 * Extensions may add their own tests to this array, or site-local tests
2488 * may be added via LocalSettings.php
2489 *
2490 * Use full paths.
2491 */
2492 $wgParserTestFiles = array(
2493 "$IP/maintenance/parserTests.txt",
2494 );
2495
2496 /**
2497 * Break out of framesets. This can be used to prevent external sites from
2498 * framing your site with ads.
2499 */
2500 $wgBreakFrames = false;
2501
2502 /**
2503 * Set this to an array of special page names to prevent
2504 * maintenance/updateSpecialPages.php from updating those pages.
2505 */
2506 $wgDisableQueryPageUpdate = false;
2507
2508 /**
2509 * Set this to false to disable cascading protection
2510 */
2511 $wgEnableCascadingProtection = true;
2512
2513 /**
2514 * Disable output compression (enabled by default if zlib is available)
2515 */
2516 $wgDisableOutputCompression = false;
2517
2518 ?>