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