| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
|
| |
This commit introduces a new define P_GET_FIRST_HEADING_METADATA_LIMIT
that can be set in preload.php in order to change the limit for how many
pages the first heading shall be loaded from metadata in
p_get_first_heading. Changing this is probably most interesting for
Wikis with a lot of pages where loading the title index costs a
significant amount of time and memory.
|
|
|
|
|
|
| |
This makes sure that the indexer is also called for hidden pages so they
aren't missing in the title index and digest subscriptions work for
them, too. Hidden pages are already filtered from the search results.
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit fixes two bugs that occurred when msg() was called after
html_msgarea() had already been called.
- the $MSG array is now cleared when it has been printed (otherwise $MSG
has been printed again when another msg() call was done)
- headers_sent() didn't work for me, it always reported false although
html_msgarea() had already been called which might be explainable with
output buffering. This makes msg() now depend on the first call of
html_msgarea() or headers_sent() in order to not to break msg() in
ajax requests etc.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change makes p_get_first_heading load the title index when more
than 11 requests that caused a call to p_get_metadata have already been
done. This means that small pages and the breadcrums won't trigger the
loading of the title index but for larger pages or the sitemap the title
index will be used. This is necessary because every call to
p_get_metadata can trigger the parsing and rendering of a whole page and
there can be many calls when useheading is activated and e.g. the
index/sitemap page is displayed.
Additionally this adds a small title cache that caches titles requested
from p_get_metadata.
Further tests should be done how this affects memory usage and how often
the index loading is triggered in order to see if that parameter should
be adjusted.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
p_get_metadata has a $render parameter that has been disabled by the
restructuring of metadata rendering. This change reactivates it so
rendering metadata can be prevented. This is e.g. used in the search and
in some plugins like indexmenu that use p_get_first_heading. The default
of the parameter has been changed to true as otherwise the new caching
structure won't work as almost all calls to p_get_metadata don't set the
$render parameter.
The indexer call to p_get_first_heading has been changed to set $render
to true as in the indexer only one page will be rendered and the title
in the index should really be the current one.
This does not fix the problem that rendering pages with lots of links or
displaying the index can cause the parsing/rendering of a lot of pages.
|
|
|
|
|
|
|
|
|
|
|
| |
Filenames can't contain ":" on windows and the lock directory contained
the unescaped page id. The lock function tries in an endless loop to
create the lock directory when it fails and the directory doesn't exist.
Just escaping the directory name won't work as then the filename length
limit will be quickly hit when using deep namespace structures with utf8
names. Thus using the md5sum seems to be the best solution. Perhaps the
lock function could also be changed to create a file with that name that
contains the id so the id can be retrieved for debugging purposes.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
- better use of Latin terminology for DokuWiki
- ACL is not translated as AAA (Aditus Administrationis Aditus) but
with ICA (Index Custodiae Aditus), which is a more literal translation
- minor corrections of grammar and logic
- The word "namespace" is more literally translated "spatium
nominis", but according to other translations (like the Italian one),
I preferred to use "genus".
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
first headings)
|
| |
|
|
|
|
|
|
| |
As suggested by Robin Getz locale .txt files can now be duplicated and
changed in the conf/lang/ directory and conf/plugin_lang/$plugin/
directory for plugins.
|
|
|
|
|
|
| |
This avoids disk writes when not needed and possibly also xhtml
rendering when the metadata needs to be rendered but xhtml doesn't
(unless the metadata file is changed).
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The author of MaxgTar (original name of this file) wrote an incorrect
phpdoc license tag mentionning the “GPL” without a version number.
Contacted to clarify the licensing situation of this file, he explained
that he wanted to use the LGPL-2.1:
> I am the author of MaxgTar and I must say I am more than slightly
> surprised to hear about it.
> […]
> I have no doubt that my intention was to use the GNU Lesser General
> Public License, version 2.1.
|
|
|
|
|
| |
as discussed in
http://www.freelists.org/post/dokuwiki/git-changes-20101209,7
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Like ids namespaces are now preg_quoted in the acl check (and therefore
the escaping of "*" has been removed). When plugins call the ACL check
function with strange ids the regex fails otherwise (in the case of the
include plugin errors like "Warning: preg_grep() [function.preg-grep]:
Compilation failed: missing terminating ] for character class at offset
47" have been reported by two users).
I've run the acl tests after this change and everything passes so this
shouldn't break anything but please test this especially with protected
wikis as this change modifies the code that handles namespace
permissions. Furthermore permissions for a namespace foobar are no
longer applied to namespaces with names like foo.ar, I hope nobody has
used that "feature".
When you are using per-user namespaces, user registration is open and
either write or read protection for these namespaces is important to
you this is a security fix for you: When someone wants to get access to
the namespace of a user "foo.bar" he can register as "fooxbar" (where
"x" is an arbitrary character) and will have access to the user
namespace of the user "foo.bar" as when a page in "foo.bar" is checked
it will match the rule for "fooxbar".
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This function abstracts checking a given user and her groups against a
given member list (as used in the superuser and manager options).
It is also used in auth_isManager() and auth_isAdmin(), unlike the
previous function, this one skips the nameencode step as it should be
unnessary here (all input is given decoded).
The test cases where extended by some non-ID user and group names.
People with non-plain auth backends should check that their
administrator and manager setups still work as expected
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This makes it possible to have modes that do accept headers
(baseonly) in the parser.
Related test cases are still running through but I'm not 100% sure
I did not break something here. So it should be tested a bit more.
This patch will allow plugins to wrap multiple sections, however it
also makes it possible to easily break XHTML validity, because
headers also open and close sections, so plugin authors need to be
aware!
In case you wonder: this patch is not about allowing formatting
inside headers.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
This reverts commit 4871414204799044c31aa2764c4b4ca020e2331d.
Additionally there is a new fix for FS#2107 that doesn't introduce a lot
of checks but instead ensures that the configuration option can't be set
to negative values when the configuration manager is used.
|
|
|
|
|
|
|
|
|
| |
20:51:05 <glen> what is the difference between $INFO['userinfo'] and $USERINFO?
20:52:17 <splitbrain> none really
20:52:33 <glen> yet one works ($USERINFO) and the other doesn't in my setup
20:52:59 <splitbrain> $INFO isn't available everywhere
20:53:27 <splitbrain> or might not have been set yet (if you're fetching an early action hook)
20:53:27 <glen> yeah, mail headers setup failed for me
|
|
|
|
|
|
| |
As of VIM 7.3 it is no longer possible to specify the encoding in the
modeline. This gives an error message whenever such a file is opened,
thus this commit removes the enc setting from the modeline.
|
|
|
|
|
|
| |
This fixes an infinite loop in breadcrumbs() and makes the behaviors in
all places where breadcrumbs are used consistent so that non-numeric
values, values < 0 and 0 are treated the same way.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This changes fundamentally when metadata is rendered. This commit
introduces a new cache file for every page that just contains a
timestamp and is updated whenever the metadata of that page is rendered.
Metadata is rendered when p_get_metadata is called and the last
rendering has been before a page, metadata, configuration or renderer
update or purge is set like in the xhtml renderer cache.
Metadata is no longer automatically rendered when the xhtml renderer
cache isn't used but will still be rendered when needed as
p_get_metadata is called in the cache.
Metadata is also no longer rendered in the indexer script when missing
as that is already done by pageinfo() before anything else is done so
the indexer script won't be called when there is no metadata file.
|
|
|
|
|
|
| |
Suggested by: MQ <antinvidia gmail com>
Signed-off-by: Xin LI <delphij@FreeBSD.org>
|
|
|
|
| |
SimplePie1.2) to continue to display correctly feeds with =
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
This patch only adds the capability to the Difference Engine lib, not to
the user interface, yet.
|
| |
|
|\ |
|