Commit graph

283 commits

Author SHA1 Message Date
Jacques Distler
0b1fccc178 Merge branch 'bzr/golem' of /Users/distler/Sites/code/instiki 2009-12-13 19:29:02 -06:00
Jacques Distler
282515d907 Source View
Add a Source view. [Based on a suggestion by Andrew Stacey]
Fix a well-formedness bug in the list action, due to
boneheaded truncation algorithm. [Reported by Roby Bartels]
2009-12-13 19:25:14 -06:00
Jacques Distler
8d67865ba5 Merge branch 'bzr/golem' of /Users/distler/Sites/code/instiki 2009-12-01 21:34:29 -06:00
Jacques Distler
063a8ca5a7 Fix Maruku Ruby 1.9 Bug
In Rbuy 1.8, ?c returns an integer.
In Ruby 1.9, it returns a 1-character
string. This was causing one of our
LaTeX conversion functional tests to
fail.
Fixed.
2009-12-01 21:29:07 -06:00
Jacques Distler
1376a01574 Merge branch 'bzr/golem' of /Users/distler/Sites/code/instiki 2009-12-01 12:07:16 -06:00
Jacques Distler
34b63a8375 Fix a Ruby 1.9 Character Encoding Bug
Wow, this stuff is complicated!
Some things really want to be UTF-8;
others really want to be byte strings.
2009-12-01 12:03:15 -06:00
Jacques Distler
17b1e6e96e Merge branch 'bzr/golem' of /Users/distler/Sites/code/instiki 2009-11-30 19:40:48 -06:00
Jacques Distler
e3832c6f79 Rails 2.3.5
Upgrade to Rails 2.3.5.
Also work around this bug:
 https://rails.lighthouseapp.com/projects/8994/tickets/3524
created by the aforementioned
Rails release.
2009-11-30 19:38:34 -06:00
Jacques Distler
f23d892bf9 Merge branch 'bzr/golem' of /Users/distler/Sites/code/instiki 2009-11-30 16:35:46 -06:00
Jacques Distler
a6429f8c22 Ruby 1.9 Compatibility
Completely removed the html5lib sanitizer.
Fixed the string-handling to work in both
Ruby 1.8.x and 1.9.2. There are still,
inexplicably, two functional tests that
fail. But the rest seems to work quite well.
2009-11-30 16:28:18 -06:00
Jacques Distler
7a8aef6020 Merge branch 'bzr/golem' of /Users/distler/Sites/code/instiki 2009-11-18 12:45:58 -06:00
Jacques Distler
b1b988c672 Update Test for itex2MML 1.3.18
More entity fun.
2009-11-18 12:44:25 -06:00
Jacques Distler
5fb5744245 Merge branch 'bzr/golem' of /Users/distler/Sites/code/instiki 2009-11-18 12:07:12 -06:00
Jacques Distler
371aab6f96 Sync with Latest itex2MML and MathML::Entities
Support the latest changes in
http://www.w3.org/TR/2009/WD-xml-entity-names-20091117/
2009-11-18 12:04:07 -06:00
Jacques Distler
9015cfcfc0 Merge branch 'bzr/golem' of /Users/distler/Sites/code/instiki 2009-11-06 21:26:01 -06:00
Jacques Distler
2e52ce48df Update LaTeX Output for Revision 464 2009-11-06 21:23:18 -06:00
Jacques Distler
88cb82769a Merge branch 'bzr/golem' of /Users/distler/Sites/code/instiki 2009-11-06 14:37:40 -06:00
Jacques Distler
977da29f68 Support for \tooltip{}{} and \statusline{}{}
itex2MML 1.3.16 add a \tooltip{}{} command which,
like \statusline{}{}, produces an <maction> element.

Neither of these is natively supported by Mozilla/Firefox.
Add some Javascript to work around that weakness.
2009-11-06 14:32:45 -06:00
Jacques Distler
3a4f66d484 Merge branch 'bzr/golem' of /Users/distler/Sites/code/instiki 2009-10-22 17:59:25 -05:00
Jacques Distler
761f8bbb51 Links From Published Webs
Damn, but it's hard to get this right.
I think I've finally done it, though.
We'll see ...
2009-10-22 17:57:13 -05:00
Jacques Distler
097ce16e8b Merge branch 'bzr/golem' of /Users/distler/Sites/code/instiki 2009-10-19 22:59:29 -05:00
Jacques Distler
5df1504255 Tests for Revision 456
Functional tests for Revision 456.
Also, fix a buglet in handling rescues
for new pages.
2009-10-19 22:57:11 -05:00
Jacques Distler
7995143c09 Merge branch 'bzr/golem' of /Users/distler/Sites/code/instiki 2009-10-09 23:20:38 -05:00
Jacques Distler
d14db51d9e More Sanitizer Refactoring
Make the Sanitizer more efficient.
Also, update some unit tests.
2009-10-09 23:18:17 -05:00
Jacques Distler
59dba2105c Merge branch 'bzr/golem' of /Users/distler/Sites/code/instiki 2009-10-06 11:32:27 -05:00
Jacques Distler
aef669a923 Change some CRs to LFs 2009-10-06 11:31:15 -05:00
Jacques Distler
0d210fe10f Merge branch 'bzr/golem' of /Users/distler/Sites/code/instiki 2009-10-05 02:40:11 -05:00
Jacques Distler
d89769fe81 Update for itex2MML 1.3.13
Implements \mathrlap{}, \mathllap{}, and \mathclap{}.
Deprecates the use of \rlap{} (use \mathrlap{}, instead:
the latter works in math-mode in the LaTeX export, whereas
TeX's \rlap{} did not).
2009-10-05 02:36:00 -05:00
Jacques Distler
5634f93afc Merge branch 'bzr/golem' of /Users/distler/Sites/code/instiki 2009-10-04 03:47:21 -05:00
Jacques Distler
41274d64d0 Support itex2MML 1.3.12 2009-10-04 03:46:06 -05:00
Jacques Distler
48e6bd5f74 Merge branch 'bzr/golem' of /Users/distler/Sites/code/instiki 2009-09-26 00:38:29 -05:00
Jacques Distler
510e44a61a More tests 2009-09-26 00:36:28 -05:00
Jacques Distler
a35921a90d Merge branch 'bzr/golem' of /Users/distler/Sites/code/instiki 2009-09-25 16:02:23 -05:00
Jacques Distler
e0df6c8a6a Updated Tests and Sanitizer Fixes for Revision 439 2009-09-25 15:59:43 -05:00
Jacques Distler
e489d77579 Merge branch 'bzr/golem' of /Users/distler/Sites/code/instiki 2009-09-13 11:27:01 -05:00
Jacques Distler
affc47fc22 Fix TeX Rendering Bug
Make sure we

  require 'maruku/ext/math'

before calling the Maruku#to_latex method.

Also, update test for itex2MML 1.3.11 .
2009-09-13 11:23:57 -05:00
Jacques Distler
f5f3d76c99 Merge branch 'bzr/golem' of /Users/distler/Sites/code/instiki 2009-09-09 09:18:39 -05:00
Jacques Distler
3ff68ef42f Don't Expand NCRs
That operation is not idempotent (among other defects).
Instead, just check that the NCRs corespond to valid utf-8.
(Reported by Andrew Stacey)
2009-09-09 09:16:00 -05:00
Jacques Distler
2068683ee8 Merge branch 'bzr/golem' of /Users/distler/Sites/code/instiki 2009-09-07 20:44:57 -05:00
Jacques Distler
116255dc0d Purify Categories
Apply the same methodology, as in Revision 432,
to the category chunk-handler. This completes
the replacement of all the code that looks like

  if string.is_utf8?
    do something
  else
    complain
  end

with code that looks like

  string.purify
  do something
2009-09-07 20:38:09 -05:00
Jacques Distler
52a0b565a5 Merge branch 'bzr/golem' of /Users/distler/Sites/code/instiki 2009-09-07 16:08:33 -05:00
Jacques Distler
c79fef9c01 Clean, rather than Complain
Previously, if the user tried to submit content which was
malformed utf-8, Instiki would complain loudly to him.

A slightly more user-friendly approach was suggested by
the latest Rails 2.3.4, and a conversation with Sam Ruby
(who suggested some improvements).

Now, instead of complaining, we remove the offending bytes,
leaving a well-formed utf-8 string, which we pretend is what
the user meant to submit.
2009-09-07 16:02:36 -05:00
Jacques Distler
f029aae60e Refactoring the Web Model (From James Herdman)
A bit of refactoring, via 

  http://github.com/jherdman/instiki/tree/master
2009-09-05 23:02:52 -05:00
James Herdman
2c10cff214 Remove superfluous comment 2009-09-05 20:51:31 -04:00
Jacques Distler
23890d6ec0 Merge branch 'bzr/golem' of /Users/distler/Sites/code/instiki 2009-08-28 11:15:37 -05:00
Jacques Distler
336e57d6b4 Pathname Objects
Web#files_path and Web#blatex_pngs_path now return Pathname objects.
Based on JHerdman's
5d1e8f420b
but requires several other changes to the code (which assumed a string).

Also, test for itex2MML 1.3.10 (you should update that too).
2009-08-28 11:10:34 -05:00
Jacques Distler
b1117a19c6 Merge branch 'bzr/golem' of /Users/distler/Sites/code/instiki 2009-08-12 12:22:46 -05:00
Jacques Distler
8cf26c9249 Add a "Create New Page" Link to the Search Page
Based on an idea by nowa:

   bcac6c9f94
2009-08-12 12:19:23 -05:00
Jacques Distler
c14c1f3c5a Merge branch 'bzr/golem' of /Users/distler/Sites/code/instiki 2009-08-04 15:45:56 -05:00
Jacques Distler
664552ac02 Rails 2.3.3.1
Update to latest Rails.
A little bit of jiggery-pokery is involved, since they
neglected to re-include vendored Rack in this release.
2009-08-04 10:16:03 -05:00
Jacques Distler
96defb0945 Merge branch 'bzr/golem' of /Users/distler/Sites/code/instiki 2009-08-04 00:08:01 -05:00
Jacques Distler
329fafafce Fix Two bugs from Toby Bartels
1. Ensure that "rollback" respects locked pages.
2. Expire revisions of an edited page. Use a before_save
   hook to deal with the situation where a page's name
   has been changed.
2009-08-04 00:02:04 -05:00
Jacques Distler
9edb8f6045 Merge branch 'bzr/golem' of /Users/distler/Sites/code/instiki 2009-07-27 22:53:11 -05:00
Jacques Distler
0e0f666fb4 Rollbacks and Relative URLs
Ensure "rollback" locks page for editing. (reported by Toby Bartels)
Generate relative URLs, when possible. (Patch by Dennis Knauf)
2009-07-27 22:49:12 -05:00
Jacques Distler
9b074a93c7 Merge branch 'bzr/golem' of /Users/distler/Sites/code/instiki 2009-07-13 13:01:53 -05:00
Jacques Distler
51280b758d Redirected Pages are not Wanted Pages
Correct list of Wanted Pages. Should not
include redirected pages.
(Reported by Toby Bartels)
2009-07-13 12:59:42 -05:00
Jacques Distler
6079fedc16 Merge branch 'bzr/golem' of /Users/distler/Sites/code/instiki 2009-07-09 15:42:14 -05:00
Jacques Distler
77e00f1a76 Test for itex2MML 1.3.9
Make sure we have the latest itex2MML.
2009-07-09 15:40:45 -05:00
Jacques Distler
32c8c4028c Merge branch 'bzr/golem' of /Users/distler/Sites/code/instiki 2009-06-17 11:31:09 -05:00
Jacques Distler
155dc88891 Uploaded files in published webs should be accessible
File retrieval (but not file uploads) should be allowed on
a published web (this includes BlahTeX/PNG support).
(Reported by Ari Stern).
2009-06-17 11:17:25 -05:00
Jacques Distler
191f7b3b2c Merge branch 'bzr/golem' of /Users/distler/Sites/code/instiki 2009-06-12 19:49:34 -05:00
Jacques Distler
9b857d3501 Test page_name, not text
Fix from Jason Blevins.
2009-06-12 19:47:56 -05:00
Jacques Distler
89757dccd4 Merge branch 'bzr/golem' of /Users/distler/Sites/code/instiki 2009-06-11 13:18:37 -05:00
Jacques Distler
c98d44606a Wikilinks with '." in the Page Name
Rails won't let you put "." in the page name.
This prevents creating new-page Wikilinks with
such names.
2009-06-11 13:16:10 -05:00
Jacques Distler
cea00549f7 Merge branch 'bzr/golem' of /Users/distler/Sites/code/instiki 2009-06-11 01:56:48 -05:00
Jacques Distler
a072f9d7c3 Test for Bugfix in Revision 399.
Update unit tests.
2009-06-11 01:55:05 -05:00
Jacques Distler
22ab39dfb5 Merge branch 'bzr/golem' of /Users/distler/Sites/code/instiki 2009-06-06 23:37:59 -05:00
Jacques Distler
bd77c75403 More tests
OK, at least now we have some BASIC test coverage.
2009-06-06 23:36:26 -05:00
Jacques Distler
2995354b3a Merge branch 'bzr/golem' of /Users/distler/Sites/code/instiki 2009-06-06 21:09:30 -05:00
Jacques Distler
305b37b401 Another Bug-fix and some tests
Man, but this needs more tests ... !
2009-06-06 21:08:08 -05:00
Jacques Distler
8624a40bf8 Merge branch 'bzr/golem' of /Users/distler/Sites/code/instiki 2009-06-05 00:41:33 -05:00
Jacques Distler
0943b7e510 Expire Caches for Redirected Links
[[!redirect foo]] should expire all pages which reference "foo".
Sounds simple, but this was a really gnarly bug to fix.
2009-06-05 00:39:12 -05:00
Jacques Distler
3d626dae30 Merge branch 'bzr/golem' of /Users/distler/Sites/code/instiki 2009-06-02 22:24:50 -05:00
Jacques Distler
d7832ba262 Wiki Redirects and Page Renaming
Added the ability to rename existing pages.
[[!redirects Some Page Name]] redirects Wikilinks [[Some Page Name]] to
  the current page (assuming "Some Page Name" does not exist).
  Real pages trump redirects (though this may change, depending on 
  user feedback).
2009-06-02 22:17:15 -05:00
Jacques Distler
8b36dad71c Merge branch 'bzr/golem' of /Users/distler/Sites/code/instiki 2009-05-13 01:47:12 -05:00
Jacques Distler
634f635f16 Update one Unit Test
To match the new behaviour of Revision 387.
2009-05-13 01:44:47 -05:00
Jacques Distler
771ef0eefe Merge branch 'bzr/golem' of /Users/distler/Sites/code/instiki 2009-03-24 22:43:36 -05:00
Jacques Distler
c85ce458ce Update for itex2MML 1.38
Add support, in the LaTeX export, for blackboard bold
digits and lowercase latin letters. If these are
present, LaTeX will
   \usepackage{mathbbol}
N.B.: this uses the stmaryrd font for blackboard bold
letters, instead of the msbm font.
Tests included. (Yes, you need to update itex2MML as well.)
2009-03-24 22:37:58 -05:00
Jacques Distler
af22bc67e6 Merge branch 'bzr/golem' of /Users/distler/Sites/code/instiki 2009-03-16 09:57:44 -05:00
Jacques Distler
e2ccdfd812 Instiki 0.16.5
Update to Rails 2.3.2 (the stable Rails 2.3 release).
Add audio/speex support
Update CHANGELOG
Bump version number
2009-03-16 09:55:30 -05:00
Jacques Distler
0b29f5bb94 Merge branch 'bzr/golem' of /Users/distler/Sites/code/instiki 2009-03-10 00:17:35 -05:00
Jacques Distler
801d307405 BlahTeX Tests
Commit some basic tests for the BlahTeX support.
I hope Ari Stern comes up with a more comprehensive
test suite.
2009-03-10 00:15:03 -05:00
Jacques Distler
d4b0831fa1 Merge branch 'bzr/golem' of /Users/distler/Sites/code/instiki 2009-03-08 23:31:35 -05:00
Jacques Distler
79be69c910 Update Tests for Latest itex2MML
In particular, we (going forward) will have a unit test which
will determine whether the latest itex2MML is installed.
2009-03-08 23:29:06 -05:00
Jacques Distler
50f58779a8 Merge branch 'bzr/golem' of /Users/distler/Sites/code/instiki 2009-03-05 12:18:40 -06:00
Jacques Distler
13d096c688 Set X-Sendfile Header Only for Local Proxy Requests
If the request.remote_addr is not LOCALHOST, don't set the
X-Sendfile header.
2009-03-05 12:14:03 -06:00
Jacques Distler
a404834b75 Merge branch 'bzr/golem' of /Users/distler/Sites/code/instiki 2009-03-03 22:29:03 -06:00
Jacques Distler
d8a2a3657d Tests
Add tests for x-sendfile, <audio> and <video> support.
2009-03-03 22:27:26 -06:00
Jacques Distler
d039840bb4 Merge branch 'bzr/golem' of /Users/distler/Sites/code/instiki 2009-02-27 19:24:43 -06:00
Jacques Distler
133c21b801 Bugfixes and Rails Edge
Update to Rails 2.3.1.
  (Actually, not quite. Doesn't look like 2.3.1 will be released
   today, but I REALLY want to push these bugfixes out.)
Removed bundled Rack (Rails 2.3.1 comes bundled with Rack 1.0).
Add
     config.action_view.cache_template_loading = true
  to production environment.
Fix FastCGI bug (http://rubyforge.org/tracker/index.php?func=detail&aid=24191&group_id=186&atid=783).
Fix WikiWords bug (http://rubyforge.org/pipermail/instiki-users/2009-February/001181.html).
2009-02-27 19:23:00 -06:00
Jacques Distler
186079a0e9 Merge branch 'bzr/golem' of /Users/distler/Sites/code/instiki 2009-02-18 01:43:49 -06:00
Jacques Distler
7f2b16e78d File Upload Fixes
Dunno why this was buggered again. ":back" doesn't seem to function as it used to.
Also, when uploading a file from page "foo", it's important to return to "foo" after
a successful upload, rather than redirecting to the HomePage.

Finally, a favicon tweak.
2009-02-18 01:40:11 -06:00
Jacques Distler
5b258daef9 Added empty directories because Git is stupid. 2009-02-05 03:02:31 -06:00
Jacques Distler
4e14ccc74d Instiki 0.16.3: Rails 2.3.0
Instiki now runs on the Rails 2.3.0 Candidate Release.
Among other improvements, this means that it now 
automagically selects between WEBrick and Mongrel.

Just run

    ./instiki --daemon
2009-02-04 14:26:08 -06:00
Jacques Distler
43aadecc99 Links in Published Webs
Links in the 'show' action should be to the 'show' action.
Links in the 'published' action should be to the 'published' action.
Try to focus, Distler!
2009-02-01 16:17:14 -06:00
Jacques Distler
b4b1dde8fd Update Tests
Functional Test for the new behaviour of Revisions 344-345.
2009-01-26 08:57:13 -06:00
Jacques Distler
5d15e3f39d Security: Instiki 0.16.2
On Webs with file uploads enabled, uploaded files were stored
(in version 0.16.1 and earlier) in the public/ directory.

This was a security threat. A miscreant could upload a .html file.
When a user clicked on the link to the file, it was opened (unsanitized)
in the browser.

As of version 0.16.2, uploaded files are stored in the webs/
directory. Now, when the user clicks on the link, the file is sent
with the

    Content-Disposition: attachment

header set, which causes the file to be downloaded, rather than opened
in the browser. As always, files downloaded from the internets should be
treated with caution. At least, this way, they are not aoutomatically 
opened in the browser.

To move your existing uploaded files to the new location, do a

     rake upgrade_instiki
2009-01-26 00:21:30 -06:00
Jacques Distler
0b2a6935a2 Export XHTML Pages
When a Web uses one of the Markdown Text Filters, and you export
all the pages as a zip file, you'd like the MathML and SVG to
render when the pages are viewed locally. This means saving them
with a .xhtml extension. Users of non-XHTML-capable browsers or
Textile users should still get .html files.
2009-01-23 11:02:16 -06:00
Jacques Distler
294ac909c4 Don't hide equations, except in MarkdownMML and MarkdownPNG
In other engines, e.g. textile, the equation delimiters have no
special meaning. So they should not be used to hide content from
wiki processing.
2009-01-16 12:51:43 -06:00
Jacques Distler
a6d80426a9 Revert Revision 338
That didn't work with nested includes:
A: [[!include B]]
B: [[!include C]]
C:   fubar!

Added a test for that issue.
2009-01-15 22:42:09 -06:00
Jacques Distler
41006d20ef Fix the "Backslashes in Included Equations" Bug
See
  http://golem.ph.utexas.edu/instiki/revision/Known+Bugs?rev=3#IncludedEqs

Who knew that

      @pre_rendered = String.new(self)

was not the same as

      @pre_rendered = String.new
      @pre_rendered = self

?
2009-01-14 22:55:59 -06:00
Jacques Distler
074711d4c5 Hide Equations From WikiChunk Processing
WikiWord (and the like) could wreak havoc in equations. Protect them
(the way <a>, <pre> and <code> blocks are protected).

For some reason, this doesn't seem to work in inline equations.
Maruku is doing something funny there ... => one failing Unit Test.
2009-01-14 16:11:07 -06:00
Jacques Distler
94476d9865 More Tests
Enable unit tests for the HTML5lib Sanitizer (used in the <nowiki>
environment).
2009-01-05 22:13:09 -06:00
Jacques Distler
52c1f74ecc Add a couple of XSS tests.
Some more tests from Clint Ruoho. The main branch of Instiki (and, I guess,
the old sanitizer) are vulnerable.

Also: under Ruby 1.8.x, CGI.unescapeHTML screws up horribly decoding NCRs
which represent high-bit ASCII characters. UTF-8 agrees with 7-bit ASCII,
but CGI.unescapeHTML doesn't seem to know that they disagree for i>127.
2009-01-05 16:25:27 -06:00
Jacques Distler
bdcb506418 Two Bugs
1) Orphaned pages in a Category were not being listed correctly
2) "list" view was not being expired correctly on deletion of orphaned pages.
2009-01-01 02:38:12 -06:00
Jacques Distler
c3c33b68dd Multiple leading capital letters in a WikiWord
CMyApp  is a WikiWord (at least, on other Wiki systems, like TWiki).
Should allow that here

Also, choose a more obscure name for the thread-local variable tracking
included chunks.
2008-12-25 17:41:35 -06:00
Jacques Distler
61c3fb1ab9 Bump Version Number
Version 0.16

Also, allow Includes of single-letter pages.
2008-12-24 13:11:53 -06:00
Jacques Distler
1b54b695c3 Single Letter WikiLinks
Another request from the old (and apparently defunct) Instiki Bug Tracker:
allow single letter WikiLinks, e.g. "[[a]]". Requested by a Japanese user.

Fixed.
2008-12-22 23:57:21 -06:00
Jacques Distler
1192f70f44 @import In Published View
In the Stylesheet Tweaks, the owner of a Web can specify an @import rule
to pull in CSS styles form an external file. This worked in the "show"
view, but was broken in the "published" view.

Fixed.

Also, update a functional test to match Revision 313.
2008-12-22 12:19:18 -06:00
Jacques Distler
8373befa0b Tests for Recursive Include Fix 2008-12-21 13:31:59 -06:00
Jacques Distler
dcd3e63ae8 Nowiki Include
Previously,
   <nowiki>[[!include foo]]</nowiki>
would produce some garbage, like
   chunk18226682includechunk
instead of the desired rendered text,
   [[!include foo]]

Fixed.
2008-12-20 23:24:50 -06:00
Jacques Distler
7828d79d35 Password Mismatch
When setting a password for a Web (on the "Edit Web" page),
ensure that the password matches. Previously, the "verify"
field was a placebo.
2008-12-20 17:54:54 -06:00
Jacques Distler
1f816af24b Uploaded Pictures Should Display in "Published" Mode 2008-12-20 13:56:50 -06:00
Jacques Distler
3929fceaf8 Fix buglet in xhtmldiff
Fixes one of two formely broken unit tests.
2008-12-18 22:12:23 -06:00
Jacques Distler
8eb59105ea Fix a Functional Test
For inexplicable reasons, this test passes on my system, even though (as
previously written) it shouldn't. Fixed now.
2008-12-17 14:11:14 -06:00
Jacques Distler
f842013243 Require required?
At least on some systems (not mine), it seems to be.
2008-12-17 10:38:34 -06:00
Jacques Distler
05b76f7625 Philip Taylor Freakout Edition
Doubtless, he would have been fleetingly ecstatic.
Alas, he a) probably doesn't subscribe to the bzr feed,
and b) is probably asleep at the moment.
2008-12-17 01:42:24 -06:00
Jacques Distler
5d2b0da4d5 Faster
Update dnsbl_check plugin to latest version.
Update Maruku to latest version.
In the wiki_controller, only apply the dnsbl_check before_filter 
  to the :edit, :new, and :save actions, instead of all actions.
  This makes mundane "show" requests faster, but does not 
  compromise spam-fighting ability.
2008-12-16 00:40:30 -06:00
Jacques Distler
34fcd7943a Some Tests
Some functional tests for 'delete orphaned pages by category'.
2008-12-07 00:24:25 -06:00
Jacques Distler
513b2b16c1 Better
Put the "safe" XHTML sanitization in lib/santize.rb, rather than in lib/chunks/nowiki.rb.
D'oh!
2008-12-01 10:29:46 -06:00
Jacques Distler
758325923f Fix another ill-Formedness hole
The html5lib sanitizer does not necessarily produce well-formed output.
Take some "bad" input, wrap it in a <nowiki> tag and -- bingo! -- you get
ill-formed output.

Fixed. (Though, probably, one should fix the html5lib sanitizer, instead.)
2008-11-30 21:44:52 -06:00
Jacques Distler
2e81ca2d30 Rails 2.2.2
Updated to Rails 2.2.2.
Added a couple more Ruby 1.9 fixes, but that's pretty much at a standstill,
until one gets Maruku and HTML5lib working right under Ruby 1.9.
2008-11-24 15:53:39 -06:00
Jacques Distler
1b69b148de More Ruby 1.9 Compatibility fixes
Still a long way to go, but these will help.
2008-11-12 09:47:24 -06:00
Jacques Distler
daa12e575d Mo Better Exception Handling
A little more cleanup of Instiki's exception handling.
Add some tests.
2008-11-06 10:38:25 -06:00
Jacques Distler
bceb1864df Fixes
Fix Session CookieOverflow bug when rescuing an InstikiValidation error.
Fix some random things which will cause problems with Ruby 1.9. (Plenty
more where those came from.)
2008-11-05 22:24:14 -06:00
Jacques Distler
39348c65c2 Make Andrea Happy
Use a counter, instead of rand() to aid in generating unique IDs in Maruku.
Add Unit test for the Theorem Environment.
2008-10-25 00:52:59 -05:00
Jacques Distler
e48b000c11 Tweak from Ari Stern
Match Maruku Revision 184: change wrapper for embedded TeX in display equation from
a <div> to a <span>.
2008-10-23 22:44:53 -05:00
Jacques Distler
2fb41f12ce Automatic Theorem Numbering
Can now refer to numbered theorems by \ref{...}, as in LaTeX
2008-10-20 00:24:22 -05:00
Jacques Distler
34082fbf94 Theorem Environments
Implement amsthm-like Theorem environments with Maruku.
Support is based on Maruku "div"s with special class-names.
Classes
    num_*
produce numbered environments, and

    un_*

produce un-numbered environments, where * is one of

   theorem     (for Theorem)
   lemma       (for Lemma)
   prop        (for Proposition)
   cor         (for Corollary)
   def         (for Definition)
   example     (for Example)
   remark      (for Remark)
   note        (for Note)

In addition, the class

   proof

produces a Proof environment.

The LaTeX export works as expected, and these also work in the S5 view.

Bumped version number.
2008-10-17 16:26:17 -05:00
Jacques Distler
d2c4c8737c Match itex2MML 1.3.6
Add support for \sslash macro.
2008-09-05 16:45:07 -05:00
Jacques Distler
867d4e8787 A Few More MIME-Type Tests 2008-08-20 22:35:41 -05:00
Jacques Distler
863d60c578 Fix IE7+MathPlayer Bug
IE7+MathPlayer do *not* like the charset parameter to be set in the
Content-Type header. Forcing Rails to omit that parameter is surprisingly
difficult.
2008-08-20 00:22:12 -05:00
Jacques Distler
ca1e8de89c Minor Cleanups
Remove a no-longer-needed function.
&apos; -> &39;
Fix regexp for tag chunk.
2008-05-22 02:46:45 -05:00
Jacques Distler
f6508de6dd Whoops!
In some circumstances, the new Sanitizer was double-escaping text nodes.
Fixed (with unit test).
2008-05-21 14:14:43 -05:00
Jacques Distler
45405fc97e New Sanitizer Goes Live
The new sanitizer seems to work well (cuts the time required
to produce the Instiki Atom feed in half). Our strategy is to
use HTML5lib for <nowiki> content, but to use the new sanitizer
for content that has been processed by Maruku (and hence is
well-formed).

The one broken unit test won't affect us (since it dealt with
very malformed HTML).
2008-05-21 02:06:31 -05:00
Jacques Distler
800880f382 Rough In New Sanitizer
Start work (which may not pan out) on a new sanitizer. Right now, it passes
all but 1 of the HTML5lib Sanitizer's unit tests. But it doesn't do much
of anything to ensure well-formedness. This is not an issue for Maruku-processed
content, but it is a concern for <nowiki> blocks.

(One solution would be to use the HTML5lib parser on <nowiki> blocks.)

In any case, this baby is 3 times as fast as the HTML5lib sanitizer.
2008-05-20 17:02:10 -05:00
Jacques Distler
5292899c9a Rails 2.1 RC1
Updated Instiki to Rails 2.1 RC1 (aka 2.0.991).
2008-05-17 23:22:34 -05:00
Jacques Distler
14afed5893 Test for Entity-handling 2008-05-17 15:02:16 -05:00
Jacques Distler
41346bf8bd Efficiency: Entity handling
Previously, used a regexp to find and convert named entities in the content.
Now use a more efficient algorithm.
Similar tweak for converting NCRs before checking whether text is valid utf-8.
2008-05-17 01:43:11 -05:00
Jacques Distler
5ca0760f7c Efficiency: Sanitize Once
Envoke the HTML5lib Sanitizer just once (when the content is finally rendered),
rather than each time it passes through the chunk-handler.
2008-05-15 01:22:13 -05:00
Jacques Distler
cd5c19e530 Routes
Make remove_orphaned_pages work in a proxied situation.
Also, "fix" a busted functional test. I'm not happy with
 this one. We're enforcing plain-text titles (which, I think,
 is the correct thing to do), but sending them as type="html",
 which then requires double-encoding.
2008-05-03 19:02:56 -05:00
Jacques Distler
8243cf9289 Fix broken functional test
From Revision 223.
2008-03-13 20:09:23 -05:00
Jacques Distler
5dd0507acc Support svg:foreignObject
Fixes to the html5lib sanitizer and maruku to support the SVG <foreignObject> element.
Also update to the latest REXML.
2008-02-03 23:56:17 -06:00
Jacques Distler
5db9ddaf47 Fix Busted Functional Tests
Fix the functional tests busted by Revision 212.
Sync with latest HTML5lib.
2008-01-21 11:59:55 -06:00
Jacques Distler
6359d06ed1 Bug in Include Chunk-handler
Fix the chunk-handler for [[!include ...]] so that it behaves as expected.
2008-01-16 11:28:43 -06:00
Jacques Distler
4586614914 Misc Cleanup
Cleaned up some dependencies, and added a mime_types.yml file for Mongrel-compatibility.
2008-01-14 14:46:38 -06:00
Jacques Distler
38ae064b8a Bundle Latest REXML
Sam Ruby has been doing a bang-up job fixing the bugs in REXML.
Who knows when these improvements will trickle down to vendor distributions of Ruby.
In the meantime, let's bundle the latest version of REXML with Instiki.
We check the version number of the bundled REXML against that of the System REXML, and use whichever is later.
2008-01-11 23:53:29 -06:00
Jacques Distler
ebc409e1a0 Ensure the_content REALLY is utf-8
Our check that the the_content was valid utf-8 was rather busted.
This one works right. In particular, we needed to expand NCRs before checking.
2008-01-03 15:27:03 -06:00
Jacques Distler
c89aeb6665 Some Tests for Philip Taylor Phun 'n Games
Some tests for the illegal Unicode characters in search queries (and elsewhere).
2008-01-02 02:33:05 -06:00
Jason Blevins
f1106428dc Included a test for page names with spaces.
Upgraded to Rails 2.0.2 routing code.  Kept the "old" CGI-style escaping rather than using URI.escape.
2007-12-24 16:02:14 -05:00