Log facitlities can now be disabled. By default only debug is disabled.
It might make sense to by default disable deprecated as well?
Debug logging is now independend of the allowdebug method. allowdebug
was often used in two ways: for displaying errors directly to the user
and for logging to the debug log. Now it only controls the former.
This adds a feature flag for the jQuery and main-js requests added in
#2786 and #2958. This adds only a single feature flag since deferring
jQuery without deferring the main javascript request is likely to cause
errors and confusion.
The feature flag defaults to "on" as this should be unproblematic except
for a few plugins. Also, with this flag being on by default, it should
see more usage and is more likely to uncover existing issues.
This feature flag should be removed once this feature is deemed safe.
This fixes#2828, where malicious clients passed in customized HTTP header to keep its IP address off records.
This is inspired by Sympony's Request::setTrustedProxies, but I don't want to implement everything including IP CIDR matching (IPv4 + IPv6), so I decided to reuse the local IP checker in place powered by regexp. Now admins can customize this "local" (trusted) proxy list using $conf['trustedproxy'], and by default it will allow any local IPs.
If in the future there is a need to implement array-based CIDR matching, $conf['trustedproxies'] can be used for the new config name.
shorter names are more in line with what we already use, makes less
layout problems in the documentation and is easier to type when telling
people about it.
This adds two new config options:
`search_limit_to_first_ns`:
Limit the search to the current X namespaces. When a search is executed
from a page within a deeper namespace, the first X namespaces will be
added as filter.
Possible use case could be with language namespaces to ensure that the
default search is initially within the current language.
`search_default_fragment_behaviour`:
Option to specify the default fragment search behavior
jQuery (and UI and Migrate) are now loaded separately from the rest of
the JavaScript. This adds at least one HTTP request more but has some
advantages:
* browsers can cache it independently
* the cache is only invalidated when versions update
* we do not apply any transformations (replacements, minimizing, etc) on
this code anymore which makes our dispatcher faster for the other JS
* browsers seem to load (not execut) both (jquery and other) parallel,
which might increase download speed a bit
This split allowed for the introduction of a new config: jquerycdn. When
enabled the 3 jquery files are loaded from jQueries CDN. This adds
another two HTTP requests but:
* since it's another host those files do not apply to the 4 request per
host limit and can be loaded (not executed) in paralell which might
increase download speeds a bit
* the CDN is distributed worldwide which means files are requested from
the closest location, increasing the download speeds
* since these files/CDN are very popular, chances are high that people
already have them cached in their browsers, reducing the download time
to 0 and effectiely halving the javascript needed to download
The option currently defaults to 'off', but I would argue 'on' would be
the better default.
Since we no longer support old IE 8 and below we can enable data uris
by default now. The picked size here is open for discussion.
A typical HTTP header for a static image ressource is about 200 to 250
bytes at dokuwiki.org. I picked twice of that as the cutoff for inlining
images.
The refshow configuration option wasn't used as described anymore
already in the latest release and after the introduction of the media
usage index the parameter is also no longer relevant for internal
optimization. The only place where it was still used is the no longer
used search_references()-function which is removed here, too.
We need to decide how to handle the renaming of the auth classes. Should
this be done automatically somehow? Or is an admin expected to fix this
manually when updating?
* master:
extended some config options a bit, to make more clear what they do
rearranged the config options
Conflicts:
conf/dokuwiki.php
lib/plugins/config/lang/en/lang.php
lib/plugins/config/settings/config.metadata.php
We had a lot of options lumped together under "Advanced Settings". I
introduced two more categories and move a few options to other existing
categories.
I also reordered the appropriate entries in the source files to make it
easier to find stuff when extending the options.
* master: (382 commits)
Romanian language update
Marathi language update
Arabic Language Update
when there's not enough space for images, make sure they stay proportional (might be FS#2480)
added minimal RTL print styles (part of FS#2185)
moved plugins' rtl.css to their style.css counterpart (part of FS#2185)
removed all browser-specific gradients as the recently (in 42ff6730) introduced svg makes them unnecessary
removed comments from accidentally commented lines in tpl_includeFile()
removed obsolete template file
added tpl_includeFile() to core
Make getTitle method in remote interface public
Changed an error code in XML-RPC interface. This error hasn't anything to do with the rest of the -32600 errors.
BG: language update
Korean language update
fixed performance issues with gradient in Firefox (which also added gradient support for IE9) (FS#2447)
deleted very old (and unused) images
added accidentally removed '<?php' back in (was in 57fc5edd)
wrapped X-UA-Compatible meta tag with conditional comments
added explanation to todo in _forms.css
removed problematic 'overflow: hidden' from lists again ('unfixes' FS#1950)
...
Conflicts:
inc/auth.php
inc/load.php
The new default template "dokuwiki", a new era has begun
Thanks to Clarence Lee for the initial design, Anika Henke and Andreas Gohr for the hard work, Michael Hamann and Håkan Sandell for testing and many others for valuable feedback.
Templates authors should support these to make the transition between templates easier. Templates which already have a sidebar could first check for $conf['sidebar'] and use it if it's defined, otherwise use their old own sidebar functionality to stay backwards-compatible.
This patch adds a new config option 'cssdatauri'. When enabled, the CSS
patcher will automatically convert all occurances of small (<600 byte)
PNG and GIF images in the CSS to embedded, base64 encoded data uris.
This reduces the number of needed HTTP requests and avoids the HTTP header
overhead.
* Do not emit E_NOTICEs
* Introduce explicit feed mode default value »recent« instead of handling
every unknown feed mode as recent changes mode. This means:
- FEED_MODE_UNKNOWN is only executed if the given feed mode is indeed
unknown. This is specifically not the case if no feed mode request param
has been specified or the requested feed mode is »recent«.
- FEED_MODE_UNKNOWN dies with an error as default behaviour
* opt[items] is forced to be a non-negative integer
* opt[show_minor] is forced to be a boolean and thus has a default value of
false instead of null
This patch adds an option to choose how filenames are encoded
when saved to the file system. You can choose between urlencoding
(url), the new SafeFn method (safe) and storing real UTF-8 (utf-8).
Each searches on the wiki use this function. Scanning the index directory eachtime is time consuming with a constant series of disk access.
Switching a normal search to use file_exists 1 or more times, and not readdir all the directory.
Switching a wildcard search to use a lengths.idx file containing all the word lengths used in the wiki, file generated if a new configuration parameter $conf[readdircache] is not 0 and fixed to a time in second. Creation of a new function idx_listIndexLengths to do this part.
Ignore-this: 1370cee84d44bb35ae7c0c988ed8f1ff
This patch adds a config option to define users or groups that may access
the XMLRPC API. ACLs are still checked on top of this intial access control.
darcs-hash:20090516114351-7ad00-155fb6c74c29f5f84e79544a534369eec0403ff0.gz