Commit graph

318 commits

Author SHA1 Message Date
Jacques Distler 3fbff19997 itex Endpoint Should Handle Blank TeX
Reported by Andrew Stacey
2010-02-22 08:52:52 -06:00
Jacques Distler 702b450fd9 itex Endpoint
Add a Rack Metal itex endpoint.
Add an itex tool to SVG-Edit.
Disable the foreignObject tool
(at least, for now) as it doesn't
currently play nice with the itex tool.
2010-02-22 00:05:52 -06:00
Jacques Distler c3ed5b461b Preliminary SVG-edit Support
WYSIWYG SVG editing.

Still no support for mixed
SVG/MathML content, yet.
2010-02-05 21:36:35 -06:00
Jacques Distler 954bcb52c2 The Rails Way
The previous implementation, in Revision
541, was ugly. This is better.
2010-01-29 11:13:16 -06:00
Jacques Distler 5506f87f17 One-Click S5 Template
Make it yet-easier to create
S5 slideshows.
2010-01-28 23:37:10 -06:00
Jacques Distler bafa7743f1 Allow Periods in Page Names
Thanks to Jeff Zellman.
2010-01-26 00:18:30 -06:00
Jacques Distler d3db9d1229 Export Zipballs Include BlahTeX PNGs
It's as simple as recursing through the
files/ directory, when adding to the zipball.
2010-01-24 22:54:35 -06:00
Jacques Distler aea2c5099f More Ruby 1.9 Encoding Fun
Under Ruby 1.9, could not delete orphan
pages with utf-8 names. They would be
listed as orphan, but "Delete Orphan Pages"
would silently not delete them.

Fixed.
2010-01-24 12:23:47 -06:00
Jacques Distler b9db67073d Ruby 1.9 fix
Make the previous fixes work under Ruby 1.9
as well.
2010-01-23 18:30:17 -06:00
Jacques Distler 09e885d299 Small Cleanup
Small cleanup to the zip export.
2010-01-23 18:24:14 -06:00
Jacques Distler 8ed5a88db0 Fix Zip Export and Print View
Fix http://bug.to/issues/show/335
and
http://bug.to/issues/show/334

We now bundle the uploaded files directory
(and the public/ directory for the (X)HTML
export) in the Zipball when exporting a Web.

Also, correct the Print View to produce proper links
uploaded files.
2010-01-23 18:01:02 -06:00
Jacques Distler ad2fab42bd Whoops!
Move darken() helper method from
wiki_helper.rb to application_helper.rb.
2010-01-23 09:07:57 -06:00
Jacques Distler 979ea7eca0 CSS Improvements
Fixed a few aesthetic matters.
2010-01-23 00:21:14 -06:00
Jacques Distler d67ce28855 Prevent Renaming to a Null Page Name
Fix http://rubyforge.org/tracker/index.php?func=detail&aid=27649&group_id=186&atid=783
2010-01-07 08:12:22 -06:00
Jacques Distler c8ef0a3dd4 Release Instki 0.18.1
Seems warranted, in light of the
Ruby 1.9 encoding issues.
2010-01-07 00:07:10 -06:00
Jacques Distler 0c2bc65e7a All I want for Christmas ...
... is to settle these encoding issues 
once and for all.

Let's override the accessor methods, which 
seems to offer a simpler solution.

Now with tests (for whatever that helps)...
2010-01-06 08:15:34 -06:00
Jacques Distler 6e6bf1a446 Yikes! Yet more Ruby 1.9 Encoding Issues
We're getting there. Thanks to Andrew Stacey.
2010-01-05 09:35:14 -06:00
Jacques Distler 6cf1463525 Revert Revision 520; This is more thorough
This ensures that @page.name has the right (utf8)
encoding.
2010-01-04 18:43:27 -06:00
Jacques Distler d786e95a77 Ruby 1.9 + MySQL Hack
The default encoding in MySQL is latin1. Ruby 1.9
is a stickler about the encoding of a sequence of bytes.
In this case, a utf8 page name stored in the database comes
back as "ASCII-8BIT" (ie, binary). Coerce that back to utf8.

This doesn't affect SQLite3, and it doesn't affect Ruby 1.8.
It doesn't even affect MySQL databases with "utf8" encoding
(though that has other issues, since MySQL's utf8 support is
broken).
There are probably other, similar problems lurking.
2010-01-04 06:41:04 -06:00
Jacques Distler f66fc4de4d Fenced Code Blocks, Fortran Syntax Colouring
Support Marhdown Extra's fenced code blocks. [From Jason Blevins]
Fortran syntax colouring. [From Jason Blevins]
Turn on Syntax colouring, by default.
Point to Michel Fortin's Markdown Extra page.
2009-12-31 15:54:01 -06:00
Jacques Distler 2780344a1b Version 0.18 2009-12-27 00:55:48 -06:00
Jacques Distler b75aa4b8d6 Fix a broken test 2009-12-27 00:41:04 -06:00
Jacques Distler 601331b508 Move Files When Renaming Web
Renaming a web should move the
corresponding subdirectory of webs/ .
Otherwise, links to uploaded files break.
2009-12-26 23:43:18 -06:00
Jacques Distler a705709f9a Vendor Rack 1.1
Also clean up some View stuff.
2009-12-26 14:00:18 -06:00
Jacques Distler af0f607e75 Syntax Colouring
New syntax colouring modes.
In addition to the existing
  html, xml, ruby
we now support
  yaml, ansic, javascript, sqlite, css
2009-12-24 00:45:45 -06:00
Jacques Distler a166fb9608 Add Link to BlahTeX Manual 2009-12-17 22:50:10 -06:00
Jacques Distler a1420aa5c7 Revamp Markup Cheat Sheets
They still suck, but less-so.
2009-12-17 10:29:51 -06:00
Jacques Distler fe877a10b4 Make html_ext Available as a Helper
... and protected.
2009-12-16 00:59:33 -06:00
Jacques Distler f3b69bc57b Make xhtml_enabled? a Protected Method
... as it should be. Remarkably, it's
still possible to use it in views, if
you declare it a helper method.
2009-12-14 22:34:31 -06:00
Jacques Distler d3e79ea84a Make truncate() Unicode-aware 2009-12-14 17:41:28 -06:00
Jacques Distler 2c5e5a0015 Refactoring
Move the truncate() method into ApplicationHelper.
Move another method around, for no particularly
good reason. Controllers really shouldn't have
public methods that don't correspond to actions.
2009-12-14 02:01:50 -06:00
Jacques Distler dc3d202665 Cache Source View
Also, fix a cache-sweeping bug reported,
long ago, by Toby Bartels.
2009-12-13 21:09:12 -06:00
Jacques Distler 1613973929 Array#collect is faster than Array#inject
Also add some more tests.
2009-12-13 20:00:18 -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 2c5c6dc78a S5 Fix
Omit a (seemingly superfluous)
javascript hack which causes
Gecko-based browsers to request
   /my_wiki/s5/null
when they load an s5 slideshow.

Also a stylistic cleanup in
the wiki_controller.
2009-12-07 15:27:40 -06:00
Jacques Distler f7044ecbb4 Ruby 1.9.1 Fixes
Some more fixes to deal with Ruby 1.9.1.
2009-12-02 12:46:15 -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 79c8572053 Use Rails.root
A little cleanup.
2009-11-22 01:32:58 -06:00
Jacques Distler 045dcbf1f5 Media Type
The default stylesheet should be media='all',
rather than media='screen'.
Damned Rails defaults!
2009-11-22 00:27:42 -06:00
Jacques Distler e678b7e3a2 Spacing Tweak 2009-11-09 18:17:57 -06:00
Jacques Distler 2b213d95de Accessiblity: Skip Navigation Link
Thanks to John Gardner for the suggestion.
2009-11-09 11:58:57 -06:00
Jacques Distler 2e52ce48df Update LaTeX Output for Revision 464 2009-11-06 21:23:18 -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 883d82992c Version 0.17.3 2009-10-23 11:13:26 -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 20c99df440 Work around Rails flash bug
When redirected to another page, flash 
messages will not display if the query
string is longer than 10192 bytes. In
Instiki, certain rescue operations 
involve redirection, with the updated
content of the page passed as a query
parameter. Fall back to using the stored
content (ie, don't pass a query parameter)
if the content is too long.
2009-10-19 18:19:31 -05:00
Jacques Distler cae4b5c539 Enable X-Sendfile support under Passenger
Passenger doesn't behave like a proxy server.
But it does support X-Sendfile. So let's make
use of that.
2009-10-11 14:00:16 -05:00
Jacques Distler 23e9c6beb2 Use AssetTagHelpers in S5 Template
Otherwise S5  breaks when Instiki is
deployed to a non-root URL (e.g., by
setting RailsBaseURI in Passenger).

Also a stylistic tweak in lib/node.rb
2009-10-11 09:49:01 -05:00
Jacques Distler aef669a923 Change some CRs to LFs 2009-10-06 11:31:15 -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 41274d64d0 Support itex2MML 1.3.12 2009-10-04 03:46:06 -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 d51b04d3db Update Location of Textile Help
_why_the_lucky_stiff disappeared . Use a
mirror site instead. (Reported by villem)
2009-09-08 22:20:18 -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
Jacques Distler 4bdf703ab2 Instiki 0.17.2: Security Release
This release upgrades Instiki to Rails 2.3.4, which
patches two security holes in Rails. See

  http://weblog.rubyonrails.org/2009/9/4/ruby-on-rails-2-3-4

There are also some new features, and the usual boatload
of bugfixes. See the CHANGELOG for details.
2009-09-05 02:01:46 -05:00
Jacques Distler 34c4306867 More ActiveRecord Association .length -> .size Optimizations 2009-09-04 00:09:39 -05:00
Jacques Distler 342298ed0e Wikilinks to Published Webs
Should be to the published action. This
didn't work right for inter-web links.
(Reported by Mike Shulman)

Also, change some .length's to .size's
(for Andrew Stacey)
2009-09-03 23:09:10 -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 28cf501166 Correctly Set noindex,nofollow On /diff Pages
None of them should be indexed.
Make sure that happens.
2009-08-24 17:42:34 -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 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 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 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 a0b965c9f5 Tweak CSS for S5 Themes
So that syntax-colouring will be passably OK there.
2009-07-07 00:13:48 -05:00
Jacques Distler 7f2e883e12 Slashes in Page Names
Make it possible to change the name of a page, whose currrent name
contains a forward slash.
(Reported boy Toby Bartels)
2009-07-02 11:02:05 -05:00
Jacques Distler a049d27222 Escape Page name
Use escape_javascript() in page name-changing javascript.
2009-06-21 00:39:24 -05:00
Jacques Distler 2ffa1ea007 Cleanup
And a fix from Ari Stern.
2009-06-17 21:12:58 -05:00
Jacques Distler 73120cdc1c Rollback one change from previous commit
S5 should not be visible on unpublished, password-protected webs.
2009-06-17 12:45:53 -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 d135ac3982 Flash[:info] messages use Web's colour scheme 2009-06-14 23:14:24 -05:00
Jacques Distler 7448b7981b Minor fixes
1) WEBrick should respond to TERM signals
(needed by MacOSX and, perhaps, others).
2) HTTP redirects for redirected pages should be 301's.
3) Add a flash message for redirection to "new" page
when the target of "show" action is not found.
2009-06-14 22:55:41 -05:00
Jacques Distler d50d6fac17 Get Ready for 0.17 Release 2009-06-14 16:52:59 -05:00
Jacques Distler 48ee59e393 Fix a WikiReference Bug
Wikilinks to redirected pages are valid links.
2009-06-10 20:49:48 -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 12207bc01c Redirect Targets are not Orphaned
A pages that is linked-to, via a redirect, is not orphaned.
2009-06-06 12:37:00 -05:00
Jacques Distler 63fde3165e Redirected Pages are not Wanted Pages
... and should not be listed as such on the "list" pages.
2009-06-05 22:48:32 -05:00
Jacques Distler e341d62809 Close another hole
I believe this addresses Jason's issue.
2009-06-05 22:26:25 -05:00
Jacques Distler 07da370d41 Battle-hardening
Fix some bugs in the new redirect/change-name implementation.
Not completely bullet-proof, yet (need to deal with
Jason's issue), but getting there.
2009-06-05 17:45:57 -05:00
Jacques Distler a2b1c7e66c HTTP Redirects for Redirected Pages
If a page isn't found, but there is a page that redirects for it,
don't show a 404!
2009-06-05 09:02:05 -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 ea6b04271b Whoops!
Ruby syntax can be tricky.
2009-06-02 23:36:39 -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 ec7141942b Instiki 0.16.6
Fix an incompatiblity between form_spam_protect and IE7.
(Thanks to Jason Blevins)
Roll a new version.
2009-05-08 16:13:25 -05:00
Jacques Distler f062dfe15a Remove some obsolete code from ApplicationController::rescue_action_in_public
Prompted by
http://rubyforge.org/pipermail/instiki-users/2009-April/001215.html
2009-04-13 19:06:40 -05:00
Jacques Distler 28a0043957 Tweaks to Default Layout 2009-04-05 11:04:44 -05:00
Jacques Distler 888ebe4b58 Appearance Tweak
A couple of tweaks to the appearance of the new history feature.
2009-04-01 09:20:58 -05:00
Jacques Distler 98918954e0 Cache Sweeping
Expire cached revisions of deleted pages.
Tweak the appearance of "history" page a bit.
2009-03-31 23:37:21 -05:00
Jacques Distler 69bfc1028b Cache Revisions
Fix config/routes.rb to make revisions cacheable.
Cache revisions.
Modify the history page so that it links to the current page (and diff).
2009-03-31 15:54:41 -05:00
Jacques Distler 73a7ceef03 Cache History Pages
Implement caching for the "history" pages
introduced in Revision 377.
2009-03-31 08:52:46 -05:00
Jacques Distler d5a65e6ac8 History Pages
From Jason Blevins:
  Create a "History" page for each wiki page.
  Link to it, and to the "Diff" page from "Recently Revised".
Also, correct a bug in listing/deleting links to uploaded
video and audio files.
2009-03-30 23:50:06 -05:00
Jacques Distler 7c0874bf4c Colour Schemes
From Jason Blevins:
Added blue, brown, scarlet red, and plum color options.
2009-03-29 21:24:27 -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 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 9f2cb8bbe5 Update LaTeX output for itex2MML 1.3.7 2009-03-07 20:49:14 -06:00
Jacques Distler 6c0decc4ea Railsisms
Use some ActiveRecord convenience methods.
2009-03-05 21:42:41 -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 bd9fa0ed0c Bump Version Number
Update CHANGELOG and bump version number to 0.16.4.
2009-03-04 15:54:30 -06:00
Jacques Distler c7418af48d Support for HTML5 <audio>
As with <video>,

   [[foo.wav:audio]]

works now, producing an HTML5 <audio> element.
2009-03-03 12:17:14 -06:00
Jacques Distler 8ea8b6a8f7 <video> and x-sendfile
Using <object> and <embed> were forbidden for obvious
security reasons. Instiki now permits embedding video
via the HTML5 <video> element (Ogg/Theora encoded videos
only, with .ogg or .ogv extensions). You can even upload
videos with

    [[foo.ogg:video]]

Instiki now support x-sendfile. See the Proxying page for
configuring Apache (with the x-sendfile module). Lighttpd
should work similarly.

Update Rails to latest Edge (hopefully converging on RC2!).
2009-03-02 02:32:25 -06:00