Joey Hess
3b27af4a29
Pass HTTPS variable through the wrapper so that CGI->https can be used by plugins. Closes : #502047
2008-10-13 12:32:16 -04:00
Joey Hess
643c0f1afc
optimise url parsing and add guard against failure to parse
2008-10-10 17:09:33 -04:00
Peter Simons
f9957d11ed
google plugin: Use google.com to search the local site.
...
Google allows has a nice feature, sitesearch, that allows anyone to
limit search results to a specific site. Obviously, this feature can be
used to provide a search engine for the local ikiwiki site without the
need to install any additional software. Just enable the 'google' plugin
and make sure that --url uses the proper hostname. Thanks to Joey for
helping to get the Perl implementation right.
2008-10-10 17:05:02 -04:00
Joey Hess
a473cb2f74
orphans: Fix unquoted page name in regexp.
2008-10-09 19:09:16 -04:00
Joey Hess
d3ca495e61
lockedit: Support specifying which users (and IP addresses) a page is locked for. This supports most of the ACL type things users have been wanting to be done. Closes : #443346 (It does not control who can read a page, but that's out of scope for ikiwiki.)
2008-10-08 17:47:38 -04:00
Joey Hess
1e17ea0b65
avoid $_ in a few other for loops
...
These were probably not currently buggy, but let's avoid bugs being
introduced by the functions called clobbering $_.
2008-10-06 16:19:54 -04:00
Joey Hess
fea76a11bc
remove: Avoid $_ breakage. (Stupid, stupid perl.)
...
This avoids another one of those $_ scoping issues where a deep call to a
function that changes $_ clobbers the array that is being looped over.
2008-10-06 16:10:47 -04:00
Joey Hess
3b47dae9ca
remove, rename: Allow acting on attachments as a page is being created.
2008-10-02 12:53:53 -04:00
Joey Hess
c945952381
attachment: Support adding attachments to pages even as they are being created.
2008-10-02 12:48:06 -04:00
Joey Hess
e0fd02acf1
don't special case preview
...
Whenever the edit form is submitted, but not saved, the page location
select should reduce to the currently selected value. This was only done
when previewing before, but is also needed in order to support the case of
adding an attachment to a page that is just being created.
Before this change, the attachment plugin would get a weird value in
$form->field("page"), that did not reflect the actual page location.
2008-10-02 12:42:46 -04:00
Joey Hess
bf386e22f5
inline: Fix handling of rootpage that doesn't exist.
...
It makes sense to use bestlink to determine which page rootpage refers to,
but if no page matches, just use the raw value.
2008-10-01 17:29:03 -04:00
Joey Hess
826af4600a
fix subpage rename bug with indexpages
...
If indexpages is enabled, then foo/index.mdwn will look like a subpage
of foo, so an additional check is needed to avoid trying to rename it
twice.
2008-10-01 14:43:28 -04:00
Joey Hess
733171bf3f
support indexpages
2008-09-29 19:08:12 -04:00
Joey Hess
121efb246f
Removed the pagefile function, which was confusingly close in name to
...
newpagefile.
Note that newpagefile is not used here (or in recentchanges) because
the internal use pages they generate are transient and unlikely to
benefit from being put each in their own subdir.
2008-09-29 18:59:20 -04:00
Joey Hess
2ba168ac83
use newpagefile
2008-09-29 18:52:42 -04:00
Joey Hess
a7fd6debc5
support indexpages when renaming pages
...
Note that the page filename code used here and in editpage are identical..
2008-09-29 18:29:53 -04:00
Joey Hess
40007b8111
support indexpages when creating new pages
...
Initial draft, may need to factor new page filename code out into helper
function if other plugins need to do the same..
2008-09-29 18:19:44 -04:00
Joey Hess
bb4211e326
avoid unnecessarily rebuilding pages with complex conditionals
...
I noticed that ikiwiki/formatting was beilg rebuilt when any page changed.
This turned out to be because it contained a complex conditional
"enabled(foo) or enabled(bar)", and the conditional plugin did not notice
that this consisted only of enabled() tests, and copied it unchanged into
add_depends. Thus, the page's dependencies were satisfied by any page
change.
The fix is to beef up the parser so that it can handle that and more
complex conditionals, and detect if they consist only of such tests.
2008-09-29 18:05:39 -04:00
Joey Hess
6b01fca253
use gettext
2008-09-29 17:06:56 -04:00
Joey Hess
c4be16703f
fix handing of case of file first created by preview but then saved
...
To handle this, avoid populating %renderedfiles in preview,
and in expiry, check if the file is in %renderedfiles, if it is
do not delete it since it was saved.
2008-09-29 13:25:31 -04:00
Joey Hess
2ff3c8aee7
editpage: Be more aggressive (and less buggy) about cleaning up temporary files rendered during page preview.
2008-09-27 18:02:33 -04:00
Joey Hess
61426a7186
Reorganize index file, add a format version field.
...
Upgrades to the new index format should be transparent.
The version field is 3, because 1 was the old textual index, 2 was the
pre-versioned format.
This also includes some efficiency improvements to index loading, by
not copying a hash and using a reference.
2008-09-27 16:35:56 -04:00
Joey Hess
55a0361a47
template: Make edit link for new templates ensure the page is located under toplevel templates directory.
2008-09-27 15:18:36 -04:00
Joey Hess
67f38832aa
htmltidy robustness fixes
...
* htmltidy: Avoid returning undef if tidy fails. Also avoid returning the
untidied content if tidy crashes. In either case, it seems best to tidy
the content to nothing.
* htmltidy: Avoid spewing tidy errors to stderr.
2008-09-27 14:27:42 -04:00
Joey Hess
9ec9d6901d
Export pagetitle, titlepage, linkpage.
2008-09-27 14:27:42 -04:00
Joey Hess
bfab23ce33
typo
2008-09-27 14:27:42 -04:00
Joey Hess
316ef6571b
pagetype is exported
2008-09-27 13:34:46 -04:00
Joey Hess
7351d545d9
Merge commit 'smcv/beautify'
...
Conflicts:
IkiWiki/Plugin/recentchanges.pm
Note that smcv's approach of using urlto also gets the url right when
redirecting to a non-html file, which is a better approach than my recent
fix to recentchanges
2008-09-27 13:00:48 -04:00
Joey Hess
f181962dfc
typo
2008-09-27 12:50:39 -04:00
Joey Hess
89256ab870
htmlscrubber: Add a config setting that can be used to disable the scrubber acting on a set of pages.
2008-09-26 18:07:37 -04:00
Joey Hess
83429adf04
decode utf-8 in recentchanges_link parameter
2008-09-26 15:40:01 -04:00
Joey Hess
bce2a34c19
tag: Make edit link for new tags ensure that the tags are created inside tagbase, when it's set.
2008-09-25 20:25:07 -04:00
Joey Hess
965f7310fe
git: Fix handling of utf-8 filenames in recentchanges.
...
Seems that the problem is that once the \nnn coming from git is converted
to a single character, decode_utf8 decides that this is a standalone
character, and not part of a multibyte utf-8 sequence, and so does nothing.
I tried playing with the utf-8 flag, but that didn't work. Instead, use
decode("utf8"), which doesn't have the same qualms, and successfully
decodes the octets into a utf-8 character.
Rant:
Think for a minute about fact that any and every program that parses git-log,
or git-show, etc output to figure out what files were in a commit needs to
contain this snippet of code, to convert from git-log's wacky output to a
regular character set:
if ($file =~ m/^"(.*)"$/) {
($file=$1) =~ s/\\([0-7]{1,3})/chr(oct($1))/eg;
}
(And it's only that "simple" if you don't care about filenames with
embedded \n or \t or other control characters.)
Does that strike anyone else as putting the parsing and conversion in the
wrong place (ie, in gitweb, ikiwiki, etc, etc)? Doesn't anyone who actually
uses git with utf-8 filenames get a bit pissed off at seeing \xxx\xxx
instead of the utf-8 in git-commit and other output?
2008-09-25 18:26:42 -04:00
Joey Hess
e1ba137317
attachment: Add admin() pagespec to test if the uploading user is a wiki admin.
2008-09-25 16:49:30 -04:00
Joey Hess
093e815440
aggregate: Avoid uninitialized value warnings for pages with no recorded ctime.
...
I saw this in the wild, apparently a page was not present on disk, but was
in the aggregate db, and not marked as expired either. Not sure how that
happened, but such pages should get marked as expired since they have an
effectively zero ctime.
2008-09-25 15:38:51 -04:00
Joey Hess
3f5ba52ee0
recentchanges: Fix redirects to non-page files.
2008-09-25 13:46:12 -04:00
Joey Hess
e00df8575f
rename: Hide type field from rename form when renaming attachments.
2008-09-23 19:31:34 -04:00
Joey Hess
40dc92a67b
multiple rename support is working
...
most edge cases seem handled too
2008-09-23 19:21:05 -04:00
Joey Hess
544da9b0da
Merge branch 'master' into tova
2008-09-23 17:42:38 -04:00
Joey Hess
8e0180d8ca
rename, remove: Don't rely on a form parameter to tell whether the page should be treated as an attachment.
2008-09-23 17:41:05 -04:00
Joey Hess
cf4db49567
factor out fixlinks
2008-09-23 17:26:46 -04:00
Joey Hess
9b57602394
factor out do_rename
2008-09-23 17:04:01 -04:00
Joey Hess
9cbc46f49a
add checkbox to rename subpages too
2008-09-23 16:56:57 -04:00
Joey Hess
8494104b39
layout
2008-09-23 14:57:13 -04:00
Joey Hess
9cbcda14ac
Print a debug message if a page has multiple source files.
2008-09-23 13:32:41 -04:00
Joey Hess
a32c0ecd51
include perl error in warning about openid
...
it may be some other module missing, this way you can tell by reading the
log
2008-09-23 12:59:43 -04:00
Simon McVittie
c7804cafa5
Fix typo in skeleton.pm.example: sessionncgi (with extra n)
...
(cherry picked from commit 72ffc85d6acb8b99839ac98a2c23dbef410b5666)
2008-09-23 12:47:02 -04:00
Simon McVittie
7f82594410
remove: redirect via urlto(), avoiding mentions of index.html
2008-09-21 18:26:48 +01:00
Simon McVittie
02923917c8
recentchanges: construct redirections via urlto(), avoiding mentions of index.html
2008-09-21 18:26:48 +01:00
Simon McVittie
97e3263ad1
poll: Use urlto to produce redirection URLs, avoiding mentions of index.html
2008-09-21 18:26:48 +01:00
Simon McVittie
e73987b01d
editpage: beautify redirection URLs, avoiding exposing the implementation detail that index.html exists
2008-09-21 18:26:42 +01:00
Joey Hess
4c68e149e5
handle templates with special characters in name
...
The template field is really a link, so needs to be converted to a page
name in stored state.
2008-09-20 23:00:19 -04:00
Joey Hess
5e713047b4
avoid uninitialised value warning
2008-09-20 22:51:42 -04:00
Joey Hess
12eb585353
add missing page name sanity check
2008-09-20 22:48:22 -04:00
Joey Hess
748d375954
avoid warning if percent value is not numeric
2008-09-20 16:31:27 -04:00
Joey Hess
84347a1247
avoid duplicate template lookup
2008-09-20 16:23:15 -04:00
Joey Hess
6088ad861c
revert colon part of change
2008-09-20 16:21:04 -04:00
Joey Hess
a6fc3b411f
edittemplate patch from Willu
...
* edittemplate: Default new page file type to the same type as the template.
(willu)
* edittemplate: Add "silent" parameter. (Willu)
* edittemplate: Link to template, to allow creating it. (Willu)
2008-09-20 16:19:09 -04:00
Joey Hess
9a9b25346d
i18n
2008-09-19 13:52:01 -04:00
Joey Hess
779c5214f3
progress: Display an error if the progress cannot be parsed, and allow the percent parameter to only optionally end with "%".
2008-09-19 13:09:50 -04:00
Joey Hess
914c92c4e1
fix check for nonexistant content
2008-09-17 18:19:52 -04:00
Joey Hess
89953e3e19
store ctime for use by expiry code
...
The expiry code does need to make sure to sort in ctime order, even if
expiring by count, so it expires the right ones.
2008-09-17 18:11:22 -04:00
Joey Hess
1cb4154bc8
aggregate: Support atom feeds with only a summary element, and no content elements.
2008-09-17 15:56:58 -04:00
Joey Hess
da7c6eb1b4
editdiff: Broken since 2.62 due to wrong syntax, now fixed.
2008-09-17 14:34:02 -04:00
Joey Hess
b540b263de
aggregate: Allow expirecount to work on the first pass. (expireage still needs to wait for the pages to be rendered though)
2008-09-17 14:27:31 -04:00
Joey Hess
ee94407891
rootpage is not a pagespec
...
So ./posts won't be interpreted right. Just "posts" should do, I think.
2008-09-14 13:50:34 -04:00
Joey Hess
bc7381c4f9
listdirectives: Enable use of the directives underlay.
2008-09-11 18:46:32 -04:00
Joey Hess
d76c8aa013
change git hook description
...
It doesn't have to be a post-update hook.
2008-09-11 15:53:25 -04:00
Joey Hess
d9d783c4bc
goodstuff update
...
* goodstuff: Remove otl plugin from the bundle since it needs a significant
external dependency and is not commonly used. If you use otl, make sure
you explicitly enable it now.
* goodstuff: Add more, progress, and table plugins to the bundle.
2008-09-09 16:11:16 -04:00
Joey Hess
5d53fab853
img: Support sizes like 200x. Closes : #475149
2008-09-09 15:20:06 -04:00
Joey Hess
6f46cc3b31
progress: New plugin to generate progress bars (willu)
2008-09-09 14:44:58 -04:00
Joey Hess
2b53de66a0
ddate: Stop clobbering timeformat when not enabled.
2008-09-08 19:40:23 -04:00
Joey Hess
f888ceafee
minor optimisation
2008-09-08 12:28:56 -04:00
Joey Hess
0f67e7d969
editpage: New core plugin factoring out page editing to allow disabling it if desired.
2008-09-05 13:57:25 -04:00
Joey Hess
7d3047b6d8
UNIVERSAL not used in this plugin
2008-09-05 13:44:52 -04:00
Joey Hess
3c022e2cd7
use yesno
2008-09-02 18:20:17 -04:00
Joey Hess
657bf7846d
table: Support header=column to make the table header be the first column of the data. (AlexandreDupas)
2008-09-02 14:57:20 -04:00
Joey Hess
b7458c48d8
filecheck: Fall back to testing for binary or plain text files if no mime type is detected.
2008-09-01 15:00:15 -04:00
Joey Hess
000c87f510
don't fail if %config is not set
2008-09-01 11:26:03 -04:00
Joey Hess
2a29641097
Set cookies HttpOnly.
2008-08-28 16:09:58 -04:00
Joey Hess
2b602e2e9f
filecheck: Fixed two bits broken in move from attachment.
2008-08-28 13:04:45 -04:00
Joey Hess
b9efeba972
humansize moved to filecheck
...
It's not used there, but it makes sense to keep it there as it's the
inverse of parsesize.
2008-08-27 15:31:48 -04:00
Joey Hess
b1d8437f8a
if extrafooter is already set, append to it
...
to interoperate with future plugins using it
2008-08-26 18:04:45 -04:00
Joey Hess
a326ffed1f
autoindex: Avoid re-adding previously deleted (or renamed) pages.
2008-08-26 14:39:47 -04:00
Joey Hess
042a057778
color: New plugin from ptecza.
2008-08-26 13:22:34 -04:00
Joey Hess
6364949dfc
remove dead code
2008-08-26 12:28:59 -04:00
Joey Hess
d06096ad0d
edittemplate: Don't wipe out edits on preview.
2008-08-25 20:51:10 -04:00
Joey Hess
78e34fbdc2
filecheck: New plugin factoring out the PageSpec additions that were originally part of the attachment plugin.
2008-08-25 19:52:34 -04:00
Joey Hess
8eb65c1ef1
update
2008-08-25 14:21:04 -04:00
Joey Hess
4956623ee6
rename plugin
...
I don't want to be stuck renameing it later if preprocessor directives are
turned into postprocessor directives. Also, "directives" is shorter and
clearer than "preprocessors".
2008-08-25 13:38:44 -04:00
Joey Hess
c62cbc31c2
indentation, style, and fixed name of preprocessor_description_dir
2008-08-25 13:36:06 -04:00
Joey Hess
029edd9b45
plugin by willu
2008-08-25 13:28:25 -04:00
Joey Hess
69e35d3c51
willu's teximg changes
...
* teximg: The prefix is configurable, and has changed to not include the
nonstandard mhchem by default. (willu)
* teximg: dvipng is used if available to render images. Its output is
antialiased and better than dvips. If not available, the old dvips+convert
chain will be used. (willu)
* Drop suggests on texlive-science, add suggests on dvipng.
2008-08-24 15:21:51 -04:00
Joey Hess
9b10f5eab2
map: The fix for #449285 was buggy and broke display of parents in certian circumstances.
...
The use of $dummy was not sufficient, because it only stuck around for the
first element after a dummy parent, and was then lost. Instead, use a
$addparent that contains the actual dummy parent, so it can be compared
with the new item to see if we're still under that parent or have moved to
another one.
2008-08-23 13:10:49 -04:00
Joey Hess
d84e43faac
fix my broken fix
2008-08-23 12:48:01 -04:00
Joey Hess
d23943ebea
fix off-by-one, and fix link
...
The link was broken if the inserted dir was not under the destpage
2008-08-23 12:37:19 -04:00
Joey Hess
15a0a151bf
fix links to inserted parent pages
...
The parent page names had "/" prepended, which caused broken links.
2008-08-23 12:28:18 -04:00
Joey Hess
3069c7b36a
fix directory uniquification code
2008-08-22 21:52:03 -04:00
Joey Hess
4643233c18
monotone updates
...
- Try to configure a wrapper
- Fix (?) ikiwiki-makerepo repo name mangling
- Add big warning about passphrases
- Doc updates
2008-08-22 00:22:02 -04:00
Joey Hess
6cf96b5819
Fix bug in wikiname sanitisation in the setup automator.
2008-08-21 23:40:11 -04:00
Joey Hess
00a4271290
improve handling of typoed or problem rcs
2008-08-21 23:07:29 -04:00
Joey Hess
5d83e7359d
graphviz: Fix breakage of the name of the preprocessor directive.
2008-08-14 14:44:30 -04:00
Joey Hess
6432d15cb4
fix a common case typo
2008-08-12 15:48:44 -04:00
Joey Hess
d50376a05d
default to looking at page source file if no file is specified
...
This will allow these pagespecs to be used a bit more generally.
2008-08-12 15:34:47 -04:00
Joey Hess
88e389ef1e
error if ping fails, rather than printing debug
2008-08-11 13:03:30 -04:00
Joey Hess
3de7d39ec6
use srcfile/destfile
...
avoids a commit message of "renamed foo to foo"
2008-08-07 16:20:35 -04:00
Joey Hess
11550f9593
avoid link fixup if page name stayed the same
2008-08-07 16:17:50 -04:00
Joey Hess
46b9a83b61
page file type rename patch from willu
2008-08-07 16:09:41 -04:00
Joey Hess
581381e335
inline: Ignore parent dirs when sorting pages by title.
2008-08-07 15:47:59 -04:00
Joey Hess
adc2eb3d8c
Options set in the setup file are now immediatly loaded by ikiwiki -setup. This allows later switches to override them. Previously, setup file options overrode most command line options.
2008-08-06 01:58:04 -04:00
Joey Hess
6fb6d51524
fix inverted test
2008-08-06 01:15:48 -04:00
Joey Hess
86660e9c82
external: Fix support for hooks called in an array context.
2008-08-06 01:05:44 -04:00
Joey Hess
9cb415f4a4
autoindex: Ignore internal pages, and take underlay directories into account. Also, avoid making index pages for directories that contain no files.
2008-08-06 00:04:05 -04:00
Joey Hess
bf8558f346
save to real setup file, and rebuild/refresh
2008-08-05 20:11:56 -04:00
Joey Hess
83888b75f1
save the full path to the setup file
2008-08-05 20:11:23 -04:00
Joey Hess
46b3f54ab6
typo
2008-08-05 19:58:33 -04:00
Joey Hess
4b4bce5006
Revert "typo"
...
This reverts commit c8d3626c51
.
2008-08-05 19:39:30 -04:00
Joey Hess
4b994ffed1
avoid forcing syslog setting
...
This avoids forcing the setting to 0 if it was not set at all.
2008-08-05 19:36:53 -04:00
Joey Hess
c8d3626c51
typo
2008-08-05 19:30:09 -04:00
Joey Hess
6e2f9e97f3
Add simple patch to silence a warning when using monotone
2008-08-04 15:00:47 -04:00
Joey Hess
e48f8ff8a9
hm
2008-08-04 14:53:11 -04:00
Joey Hess
0c3291d4f3
plugin enable/disable working and bugfixes
2008-08-03 22:16:38 -04:00
Joey Hess
a4ce6550eb
loosen qw regexp
2008-08-03 22:16:38 -04:00
Joey Hess
6d15912e8f
work around strange problem with banned_users
...
Its value was being ignored. Some kind of formbuilder bug?
Anyway, prefixing all keys with a section seems like a good idea
generally, in case there's ever overlap.
2008-08-03 21:06:13 -04:00
Joey Hess
4b79a43db6
checkboxes back
2008-08-03 20:51:46 -04:00
Joey Hess
2a712c8817
use radio, not checkbox, for booleans
...
Had to do this due to one of CGI::FormBuilder's more annoying quirks -- it
loses the value of a checkbox field with only one option, always treating
it as checked.
2008-08-03 20:20:25 -04:00
Joey Hess
3905645342
add plugin safe/rebuild info (part 3 of 3)
2008-08-03 19:36:11 -04:00
Joey Hess
219afc3f9c
support rebuild tristate
...
also some fixes to change minimisation logic
2008-08-03 18:23:17 -04:00
Joey Hess
018321f2c8
fix misc breakage from plugin safe/rebuild data addition
2008-08-03 18:17:13 -04:00
Joey Hess
39195de96e
add plugin safe/rebuild info (part 2 of 3)
...
(brain.. melting..)
2008-08-03 17:20:21 -04:00
Joey Hess
1230e914b1
anonok is safe
2008-08-03 17:03:20 -04:00
Joey Hess
1a37848346
move plugin toggles to before config setting again
2008-08-03 16:58:16 -04:00
Joey Hess
b7d6a49be4
ui improvements
2008-08-03 16:46:38 -04:00
Joey Hess
aacec52a07
show force disabled plugins in advanced mode
2008-08-03 16:43:42 -04:00
Joey Hess
903213e63f
add plugin safe/rebuild info (part 1 of 2)
...
too many plugins.. brain exploding..
2008-08-03 16:40:12 -04:00
Joey Hess
9e0cbb73fe
plugin safe/rebuild controls
2008-08-03 16:23:41 -04:00
Joey Hess
4405cebd0a
add advanced and basic modes
2008-08-03 14:57:24 -04:00
Joey Hess
5c0f539950
avoid adding extra disabled fields for arrays
2008-08-03 14:41:53 -04:00
Joey Hess
d00f3edf13
properly support all types of data in arrays
2008-08-03 14:39:34 -04:00
Joey Hess
0f06504422
remove description_html, add link
2008-08-03 14:36:17 -04:00
Joey Hess
5ef45ca7e1
support arrays
2008-08-03 00:27:27 -04:00
Joey Hess
d8b49840dd
update
2008-08-02 23:59:40 -04:00
Joey Hess
7baa6320e0
rebuild detection
2008-08-02 23:32:40 -04:00
Joey Hess
8c02d670d0
pull values from form to config
2008-08-02 23:14:59 -04:00
Joey Hess
f6babf662b
fix syntax error with corrupt data
...
Just because it's supposed to be an integer or boolean doesn't mean the
vlaue really is..
2008-08-02 23:14:23 -04:00
Joey Hess
94c59d3254
collect a hash of shown fields
...
Need to do this to know what fields to take from CGI.
(Can't trust that only safe ones are sent..)
2008-08-02 23:06:25 -04:00
Joey Hess
c762b65ce4
show unsafe options (RO) by default
...
Small data leak, but only to admins, and I think it's worth it to see the
stuff that cannot be configured.
2008-08-02 22:50:09 -04:00
Joey Hess
5dbd053da3
avoid syslog whining from broken plugins
2008-08-02 22:22:53 -04:00
Joey Hess
6f65cb1cbe
avoid setting default value in websetup_force_plugins
...
This would make changes not be seen later.
2008-08-02 22:20:26 -04:00
Joey Hess
15341aed01
don't install demo external plugins by default
2008-08-02 16:53:20 -04:00