Luke Plant
2c2f5aee4d
Implemented 'smart if' template tag, allowing filters and various operators to be used in the 'if' tag
...
Thanks to Chris Beaven for the initial patch, Fredrik Lundh for the basis
of the parser methodology and Russell Keith-Magee for code reviews.
There are some BACKWARDS INCOMPATIBILITIES in rare cases - in particular, if
you were using the keywords 'and', 'or' or 'not' as variable names within
the 'if' expression, which was previously allowed in some cases.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@11806 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2009-12-09 22:40:36 +00:00
Russell Keith-Magee
cbbe60c7fc
Fixed #11270 -- Modified cache template tag to prevent the creation of very long cache keys. Thanks to 235 for the report and patch.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@11068 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2009-06-18 15:04:00 +00:00
Russell Keith-Magee
8950a40cec
Fixed #11270 -- Corrected naming conflict in templatetag test. Thanks to steveire for the report.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@11067 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2009-06-18 15:03:17 +00:00
Malcolm Tredinnick
b1a5db37e6
Fixed #10369 -- Fixed auto-escaping inside "tran" and "blocktrans" tags.
...
Patch from Andrew Badr.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@10519 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2009-04-11 12:03:52 +00:00
Malcolm Tredinnick
be4a83c448
Fixed #9315 -- Handle spaces in URL tag arguments.
...
Thanks Natalia Bidart and Matías Bordese for most of this patch.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@10462 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2009-04-10 04:13:27 +00:00
Jacob Kaplan-Moss
6d6bbb6d05
Fixed #9756 : the for tag no longer leaves the context stack unbalanced when dealing with an empty iterable. Thanks, seanl.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@10439 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2009-04-07 22:02:34 +00:00
Karen Tracey
63143d5d9d
Fixed the test added for #9005 to use the e.args[0] instead of e.message. Exceptions didn't have 'message' before Python 2.5, and it was deprecated as of Python 2.6. args[0] works without error or DeprecationWarning from Python 2.3 through 2.6.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@10394 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2009-04-04 19:34:52 +00:00
Jacob Kaplan-Moss
751234bfd9
Fixed the test in [10351] to work reguardless of the test settings.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@10355 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2009-04-02 01:40:56 +00:00
Brian Rosner
64e82fb648
Fixed #10043 -- widthratio tag now accepts a variable for the max_width argument.
...
The max_width argument now passes through FilterExpression which by side-affect
allows float values, but will be truncated.
Thanks obeattie and Eric Holscher for patches.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@10352 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2009-04-01 23:41:36 +00:00
Jacob Kaplan-Moss
624caace17
Fixed #9005 : don't wig out when reversing a URL if SETTINGS_MODULE isn't set. While I was there, I fixed #10599 by re-raising the original error message, which is almost always a better idea. Thanks, Eric
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@10350 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2009-04-01 22:46:46 +00:00
Gary Wilson Jr
7805afffd7
Fixed #10667 -- Added missing sys import.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@10244 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2009-03-31 07:23:50 +00:00
Gary Wilson Jr
86c5142461
Fixed #10094 -- Fixed the `include` and `extends` template tags to work with filenames with spaces, patch from mcroydon.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@10211 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2009-03-30 20:30:28 +00:00
Gary Wilson Jr
a6d7b418de
Made the template tests error output a bit more pretty.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@10191 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2009-03-30 16:05:57 +00:00
Gary Wilson Jr
4a9b1f7a36
Removed an inadvertent raise statement added in [8777] and added the printing of tracebacks for template tests that raise an unhandled exception.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@10183 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2009-03-29 23:33:01 +00:00
Malcolm Tredinnick
2c6c60cec6
Template filters now pass numerical arguments through as numbers.
...
This was the (undocumented) behaviour prior to r10118 and now it's back
again. It's neither hard nor harmful to maintain compatibility with the
old ways.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@10169 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2009-03-25 03:45:56 +00:00
Malcolm Tredinnick
7db24dd2b0
Fixed #5756 , #6296 -- Most template tags can now handle filters in arguments.
...
Most of the hard work for this was done by akaihola.
There are still possibly some problems with the i18n template tags,
since they are written quite differently and a few other bug fixes have
to made before they can be fixed.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@10119 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2009-03-23 09:42:51 +00:00
Malcolm Tredinnick
a6f429e37e
Added consistent support for double- and single-quote delimiters in templates.
...
Some template filters and tags understood single-quoted arguments, others
didn't. This makes everything consistent. Based on a patch from akaihola.
Fixed #7295 .
git-svn-id: http://code.djangoproject.com/svn/django/trunk@10118 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2009-03-23 09:40:25 +00:00
Malcolm Tredinnick
f5c07f89e3
Removed an invalid template test (translating an empty string is a bad idea).
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@10117 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2009-03-23 09:19:45 +00:00
Malcolm Tredinnick
152d517878
Fixed a misnamed test that was inadvertently hiding an earlier one.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@9929 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2009-03-01 06:54:38 +00:00
Jacob Kaplan-Moss
bd2b0059be
Here's the rest of [9530] where I actually rename the tag like I said I did. I swear this was git's fault, not mine.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@9532 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-11-24 22:33:32 +00:00
Jacob Kaplan-Moss
4aa97f5c18
Fixed #6398 : added an optional `{% empty %}` clause to the `{% for %}` template tag. The contents of this clause are rendered if the list iterated over turns out to be empty. Thanks, Jannis Leidel.
...
Astute readers will notice that the patch originally called this `default`; after consideration I decided that `empty` is a very slightly better color for this particular bikeshed.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@9530 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-11-24 22:01:48 +00:00
Malcolm Tredinnick
8fb1459b52
Added some better error reporting and path handling when creating template paths.
...
We now raise UnicodeDecodeError for non-UTF-8 bytestrings (thanks to Daniel
Pope for diagnosing this was being swallowed by ValueError) and allow UTF-8
bytestrings as template directories.
Refs #8965 .
git-svn-id: http://code.djangoproject.com/svn/django/trunk@9161 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-10-06 06:34:54 +00:00
Malcolm Tredinnick
7838493b9e
Fixed #8726 -- When doing reverse URL resolving, make sure we're consistently
...
dealing with unicode strings throughout by promoting up from UTF-8 as necessary.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@8777 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-08-31 22:47:25 +00:00
Jacob Kaplan-Moss
86316f0be6
Fixed #7027 : template tags now corectly break tokens around strings marked for translation.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@8769 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-08-31 18:28:06 +00:00
Malcolm Tredinnick
6390155f5c
Added a couple of extra tests to ensure url tag robustness. These are an
...
attempt to verify #8726 .
Refs #8726 .
git-svn-id: http://code.djangoproject.com/svn/django/trunk@8766 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-08-31 17:29:49 +00:00
Malcolm Tredinnick
a63a83e5d8
A rewrite of the reverse URL parsing: the reverse() call and the "url" template tag.
...
This is fully backwards compatible, but it fixes a bunch of little bugs. Thanks
to SmileyChris and Ilya Semenov for some early patches in this area that were
incorporated into this change.
Fixed #2977 , #4915 , #6934 , #7206 .
git-svn-id: http://code.djangoproject.com/svn/django/trunk@8760 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-08-31 11:11:20 +00:00
Jacob Kaplan-Moss
f2d7ee759a
Fixed #8710 : removed a few stray tabs. Thanks, gkelly.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@8746 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-08-30 19:25:40 +00:00
Jacob Kaplan-Moss
c068bc184c
Merge branch 'url-tag-asvar'
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@8716 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-08-29 19:28:03 +00:00
Malcolm Tredinnick
c46bb219bf
Fixed #7460 -- Made the "cache" template tag always generate keys that can be
...
used with the memcache backend (which has the strongest restriction on keys).
Based on a patch from trbs.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@8533 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-08-25 04:52:55 +00:00
Gary Wilson Jr
6d863fef8a
Fixed #5270 -- Allow template tags and filters to accept an emtpy string, patch from jdunck.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@8393 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-08-15 21:08:11 +00:00
Luke Plant
c768bc6f25
Fixed #8031 - url tag no longer silences NoReverseMatch exceptions since this is very rarely useful
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@8211 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-08-05 14:16:13 +00:00
Malcolm Tredinnick
e29aece743
Fixed #4534 -- Added an "else" option to the "ifchanged" template tag.
...
Patch from SmileyChris.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@8095 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-07-26 22:09:43 +00:00
Adrian Holovaty
74f0408fa2
Fixed #6201 -- Improved the {% cache %} template tag to allow the timeout to be a template variable. Inspired by the patch by zz and edrik
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@7754 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-06-26 04:54:10 +00:00
Adrian Holovaty
5ee4a099f1
Fixed infuriating lack of apostrophe in a comment
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@7753 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-06-26 04:33:18 +00:00
Adrian Holovaty
dbde7fc8b0
Fixed #6322 -- Fixed bug in 'ifchanged' template tag where it wasn't resetting itself properly in some cases. Thanks, nedbatchelder
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@7752 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-06-26 04:30:06 +00:00
Adrian Holovaty
65437a95e1
Improved our tests so that they don't raise an error if setuptools isn't installed, hence ridding the test suite of all dependencies. Also updated docs.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@7751 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-06-26 04:25:40 +00:00
Russell Keith-Magee
4317ba5799
Fixed #7318 -- Cleaned up the template inheritance logic, specifically to handle the case where the parent template has no template tags/blocks. Took the opportunity to optimize the logic a little. Thanks to Matthias Kestenholz <mk@spinlock.ch> for the original report and test case.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@7688 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-06-18 12:59:39 +00:00
Russell Keith-Magee
d53e8f1285
Fixed #6430 -- Corrected the loading of templates from eggs, which was broken by the unicode merge. Thanks for the excellent report and patch, Juan Manuel Caicedo <juan.manuel.caicedo@gmail.com>.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@7565 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-05-29 13:11:23 +00:00
Malcolm Tredinnick
d18a114f86
Fixed #6326 -- Made the test for translations of filter arguments test something that has a chance of failure. Thanks akaihola.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@7060 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-02-03 01:49:55 +00:00
Adrian Holovaty
3d52ce730f
Reverted 'regroup' template tag changes from [6956], as they caused bug #6271 , which affects one of my sites. I don't have time to inspect the #6271 patch, so I'm reverting this change in the interim, to fix the bug immediately.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@6996 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-01-05 00:03:12 +00:00
Adrian Holovaty
293f0f2360
Fixed #6295 -- Made the {% for %} tag a bit more efficient by creating a single context dictionary rather than recreating it each time through the loop. Thanks, Ned Batchelder
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@6981 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-01-02 05:01:03 +00:00
Gary Wilson Jr
d1b5a0bde5
Removed some reverse string craziness from the regroup template tag argument checking and added a few syntax tests.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@6956 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2007-12-19 06:11:55 +00:00
Malcolm Tredinnick
67373009e0
Fixed #4563 -- Context.pop/push/update return the top-level dictionary (the new
...
one for push() and update(), the one removed for pop()). Based on a patch from
Brian Harring.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@6854 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2007-12-02 23:57:22 +00:00
Malcolm Tredinnick
3c272792d6
Added tests and a small optimisation for [6721]. Thanks SmileyChris. Fixed #6049
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@6729 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2007-11-29 01:44:30 +00:00
Malcolm Tredinnick
9130765ff9
Fixed #5890 -- fixed the far edge-case of allowing constant strings inside
...
template template markers: we now treat embedded, escaped double quotes
consistently with constant string arguments to filters. Patch from Dmitri
Fedortchenko.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@6724 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2007-11-28 21:04:05 +00:00
Malcolm Tredinnick
5f8cfe99f3
Fixed #5969 -- Corrected a problem introduced in [6682].
...
*sigh* As usual, the one case I forget to test turned out to be broken.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@6689 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2007-11-18 03:36:03 +00:00
Malcolm Tredinnick
adcec0885d
Fixed a few problems with variable resolving inside of blocktrans tags. A couple of these were exposed by the auto-escaping changes, but I suspect the other one has been hiding in plain sight for a while.
...
Fixed #5952 , #5953
git-svn-id: http://code.djangoproject.com/svn/django/trunk@6682 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2007-11-17 12:12:18 +00:00
Malcolm Tredinnick
0928fa5566
Fixed #5945 -- Treat string literals in template filter arguments as safe
...
strings for auto-escaping purposes.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@6680 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2007-11-17 12:11:26 +00:00
Malcolm Tredinnick
0b0ef3f0c5
Fixed #4713 -- Fixed handling of _() in template tag arguments. Based on
...
patched from Indy and SmileyChris.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@6679 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2007-11-17 04:04:12 +00:00
Malcolm Tredinnick
bdb0b903c2
Content coming via {{ block.super }} is always going to be correctly escaped
...
already. We mark it as safe so that template authors don't need to.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@6673 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2007-11-14 21:07:27 +00:00