Commit Graph

13718 Commits (cd794613b6f5140365e51f79023c882e8ea71197)

Author SHA1 Message Date
Joey Hess d5199424c5 avoid shelling 2010-06-18 12:50:31 -04:00
Joey Hess 2797a659db mercurial: Fix buggy getctime code.
The file passed to rcs_getctime is already absolute, and it was
trying to stick the srcdir on the front.

Also, eliminated potentially unsafe shelling.
2010-06-18 12:48:05 -04:00
PaulePanter c52d8d263e `themes.pm` instead of `themes.mdwn` 2010-06-18 09:08:28 +00:00
Joey Hess cb4b999297 avoid dying if cannot chdir to an underlaydir 2010-06-17 16:54:03 -04:00
Joey Hess f70bc8184a Merge branch 'master' of ssh://git.ikiwiki.info/srv/git/ikiwiki.info 2010-06-17 16:52:33 -04:00
demo 2e3f3ae89c yeay ! \\o \o/ o// 2010-06-17 15:00:59 +00:00
jhagg 79ffede4a7 2010-06-17 08:30:38 +00:00
jeanm 653a8179ca 2010-06-17 06:22:19 +00:00
Joey Hess e35d728a32 link to theme plugin 2010-06-16 19:23:08 -04:00
Joey Hess 184f68efa8 Merge branch 'themes' 2010-06-16 19:17:18 -04:00
Joey Hess bc32754f1f add background image, kindly gpl'd by bzed 2010-06-16 19:16:13 -04:00
Joey Hess eff5e233a2 force list context
run_or_die returns a status code in scalar context
2010-06-16 16:07:41 -04:00
Joey Hess 3789bce105 preserve timestamps for directive and theme underlays 2010-06-16 15:48:50 -04:00
Joey Hess 2f3f826b5b force rebuild for theme change
For now, a rebuild is the only way to ensure the changed theme is used.
Ikiwiki normally will not realize style.css has changed, since themes
tend to have the same timestamp for the file.
2010-06-16 15:44:21 -04:00
Joey Hess 062ed44f47 add theme plugin 2010-06-16 15:43:42 -04:00
Joey Hess a748f283ac Encode not used 2010-06-16 15:30:33 -04:00
Joey Hess 4a207d760c comments 2010-06-16 15:03:38 -04:00
Joey Hess 2745b3ede7 not local.css here 2010-06-16 15:02:42 -04:00
Joey Hess 8cf7d0542d copy from actiontabs.css in css_market
fixed a few indents
2010-06-16 15:02:14 -04:00
Joey Hess 8cf5fc1cff copy from bzed 2010-06-16 15:00:26 -04:00
Joey Hess c5a47e2f99 tweak bzed's theme
* move dotted border from bottom inlinecontent to top inlinefooter,
  and allow inlinefooter to clear floating content. This way, floating
  images do not hang down through the dotted border
* don't reset inputs and textareas, it makes buttons in forms
  all squash up together
* don't eliminate fieldsets, it makes the web setup page a
  mess
* only force the size of the search box. ikiwiki generally picks
  form field sizes with a reasonable good reason
* remove some custom css classes not used
* remove some trailing whitespace
2010-06-16 14:55:44 -04:00
Joey Hess 73e61221bd add copy of local.css from bzed.de
bzed says this is not quite ready, but I'm an impatient guy. Guess
I'll have to track his updates.
2010-06-16 14:53:47 -04:00
Joey Hess 69c22fa1ea attachment: Support Windows paths when taking basename of client-supplied file name. 2010-06-16 13:23:32 -04:00
jhagg 96c7e31c34 2010-06-16 13:40:29 +00:00
Joey Hess da2be6e85c git: Gix --gettime to properly support utf8 filenames.
In passing, fixed a bug where the srcdir was in a subdir of a repository
named "0".
2010-06-15 23:21:55 -04:00
Joey Hess 5f33532468 Make --gettime be honored after initial setup.
Bugfix in passing: New files not treated as such when no rcs is used.
2010-06-15 22:56:06 -04:00
Joey Hess f7d4904fee bugnum 2010-06-15 19:35:17 -04:00
Joey Hess a298959888 fix other cases of unicode mixing issue
and fix underlaydir override attack guard when srcdir is non-absolute
2010-06-15 17:41:26 -04:00
Joey Hess 86a43aefb4 Fix issues with combining unicode srcdirs and source files.
A short story:

  Once there was a unicode string, let's call him Srcdir.

  Along came a crufy old File::Find, who went through a tree and pasted each
  of the leaves in turn onto Srcdir. But this 90's relic didn't decode the
  leaves -- despite some of them using unicode! Poor Srcdir, with these
  leaves stuck on him, tainted them with his nice unicode-ness. They didn't
  look like leaves at all, but instead garbage.

(In other words, perl's unicode support sucks mightily, and drives
us all to drink and bad storytelling. But we knew that..)

So, srcdir is not normally flagged as unicode, because typically it's pure
ascii. And in that case, things work ok; File::Find finds filenames, which
are not yet decoded to unicode, and appends them to the srcdir, and then
decode_utf8 happily converts the whole thing.

But, if the srcdir does contain utf8 characters, that breaks. Or, if a Yaml
setup file is used, Yaml::Syck's implicitunicode sets the unicode flag of
*all* strings, even those containing only ascii. In either case, srcdir
has the unicode flag set; a non-decoded filename is appended, and the flag
remains set; and decode_utf8 sees the flag and does *nothing*. The result
is that the filename is not decoded, so looks valid and gets skipped.

File::Find only sticks the directory and filenames together in no_chdir
mode .. but we need that mode for security. In order to retain the
security, and avoid the problem, I made it not pass srcdir to File::Find.
Instead, chdir to the srcdir, and pass ".". Since "." is ascii, the problem
is avoided.

Note that chdir srcdir is safe because we check for symlinks in the srcdir
path.

Note that it takes care to chdir back to the starting location. Because
the user may have specified relative paths and so staying in the srcdir
might break. A relative path could even be specifed for an underlay dir, so
it chdirs back after each.
2010-06-15 17:13:46 -04:00
Joey Hess 69383fb6b0 Fix issues with combining unicode srcdirs and source files.
A short story:

  Once there was a unicode string, let's call him Srcdir.

  Along came a crufy old File::Find, who went through a tree and pasted each
  of the leaves in turn onto Srcdir. But this 90's relic didn't decode the
  leaves -- despite some of them using unicode! Poor Srcdir, with these
  leaves stuck on him, tainted them with his nice unicode-ness. They didn't
  look like leaves at all, but instead garbage.

In other words, perl's unicode support sucks mightily, and drives
us all to drink and bad storytelling. But we knew that..

So, srcdir is not normally flagged as unicode, because typically it's pure
ascii. And in that case, things work ok; File::Find finds filenames, which
are not yet decoded to unicode, and appends them to the srcdir, and then
decode_utf8 happily converts the whole thing.

But, if the srcdir does contain utf8 characters, that breaks. Or, if a Yaml
setup file is used, Yaml::Syck's implicitunicode sets the unicode flag of
*all* strings, even those containing only ascii. In either case, srcdir
has the unicode flag set; a non-decoded filename is appended, and
decode_utf8 sees the flag and does *nothing*. The result is that the
filename is not decoded, so looks valid and gets skipped.

File::Find only sticks the directory and filenames together in no_chdir
mode .. but we need that mode for security. In order to retain the
security, and avoid the problem, I made it not pass srcdir to File::Find.
Instead, chdir to the srcdir, and pass ".". Since "." is ascii, the problem
is avoided.

Note that it takes care to chdir back to the starting location. Because
the user may have specified relative paths and so staying in the srcdir
might break. A relative path could even be specifed for an underlay dir, so
it chdirs back after each.
2010-06-15 16:40:37 -04:00
Joey Hess 17be286cc3 note 2010-06-15 15:15:39 -04:00
Joey Hess ad858475e7 match only pages in calendar 2010-06-15 14:17:23 -04:00
Joey Hess 3adde7a38c clear floats before comments begin 2010-06-15 13:44:42 -04:00
Joey Hess d541cc854a calendar: Tune archive_pagespec to only match pages, not other files. 2010-06-15 13:38:19 -04:00
Joey Hess d3d63817c8 Merge branch 'master' of ssh://git.ikiwiki.info/srv/git/ikiwiki.info 2010-06-15 13:34:45 -04:00
Joey Hess 919df4ae9c fix labels for form elements
The label for attribute must correspond to the element id (not name).
And it needs to be unique inside the loop.
2010-06-15 13:33:43 -04:00
privat b39630c16c Thanks 2010-06-15 13:33:16 +00:00
bhobbit b1a7972ea0 typo 2010-06-15 03:43:48 +00:00
bhobbit 696d54545a 2010-06-15 03:41:34 +00:00
Joey Hess 4e18d4415b fix links 2010-06-14 16:36:54 -04:00
Joey Hess ba00ff81c0 add links to mentioned directives
Using the !iki shortcut, since the directive pages may not be included in
the basewiki.
2010-06-14 16:35:12 -04:00
Joey Hess c0bc2d0839 editpage, comments: Fix broken links in sidebar (due to forcebaseurl). (Thanks, privat) 2010-06-14 14:34:52 -04:00
Joey Hess f9dc2bf859 good idea 2010-06-14 14:14:43 -04:00
Joey Hess 98ad266119 Merge branch 'master' of ssh://git.ikiwiki.info/srv/git/ikiwiki.info 2010-06-14 14:11:35 -04:00
Joey Hess 88b080f8a4 simplify, avoid confusing suggestions
Don't even talk about ACLs, and more strongly discourage directly
committing to ikiwiki's srcdir.
2010-06-14 14:10:59 -04:00
Joey Hess 5071a8eb73 limit blog inlines to pages
This way images attached to blog posts don't show up as enclosures in the
blog by default.
2010-06-14 12:35:21 -04:00
privat 8746480c25 Reopen the bug since it is not fixed 2010-06-14 13:54:43 +00:00
Joey Hess 9f7a118ffc more symetric enable/disable
Removing a plugin from add_plugins is not always enough to disable it.
It may have been redundantly added there and also pulled in via goodstuff.
Always add didabled plugins to disable_plugins.
2010-06-13 10:25:17 -04:00
Joey Hess 17592a951b websetup: Allow enabling plugins listed in disable_plugins.
The bug here was that disabling a plugin included thru goodstuff, like
htmlscrubber, caused it to be added to disable_plugins, and those plugins
were never loaded, so could not be re-enabled. Fix by allowing them to be
force loaded when appropriate. (Also that allows disabled plugins to still
record their setup options when dumping a setup file.)
2010-06-13 10:21:19 -04:00
Joey Hess 89a970bd7d response 2010-06-13 09:11:59 -04:00