16 Commits

Author SHA1 Message Date
f4e0b9185b Shortcodes for YouTube and iframes
Added shortcodes 2.5.0 as dependency; Earlier versions corrupted
non-ASCII characters, see
https://github.com/dmulholland/shortcodes/issues/6

The rendered elements have a `shortcode` CSS class.

The YouTube shortcode supports various ways to refer to a video:

    - `{youtube VideoID}`
    - `{youtube youtube.com or youtu.be URL}`

URLs containing an '=' should be quoted, or otherwise the shortcodes
library will parse it as "key=value" pair.

The IFrame shortcode supports the `cap` and `nocap` attributes. `cap`
indicates the required capability the user should have in order to
render the tag. If `nocap` is given, its contents are shown as a message
to users who do not have this tag; without it, the iframe is silently
hidden.

`{iframe src='https://source' cap='subscriber' nocap='Subscribe to view'}`

Merged test code + added HTML class for shortcode iframes
2018-04-03 10:49:00 +02:00
fe7e078f8b Added unit test
Should have been part of prev commit.
2018-03-28 12:42:36 +02:00
218c3f0dca Fixed comment rendering 2018-03-27 17:13:12 +02:00
1b57b333df Removed the URLer service
We don't have a need for it any more, so it can go.
2018-01-31 14:33:41 +01:00
ddc52b969e Make it possible for node types to have a 'custom view'
This 'custom view' means that the URL to view the node (as returned by
url_for_node(…)) cannot be loaded via XHR and embedded in the project
viewer, but should rather be used as the actual browser URL instead.

Currently only blogs use this.
2017-09-29 10:45:29 +02:00
be6746f7ab Fixed bug when parsing node without content type property 2017-09-14 12:09:54 +02:00
e061d6c29d Allow editing users' email address via /u/
Also reloads the user info after a succesful edit.
2017-06-29 11:05:01 +02:00
d8640df115 Made markdown jinja filter None-safe 2017-03-30 09:37:48 +02:00
2e41c074b5 Python 3.6 compatibility: bytes vs strings stuff
These changes mostly revolve around the change in ObjectId constructor
when running on Python 3.6. Where on 2.7 the constructor would accept
12- and 24-byte strings, now only 12-byte bytes and 24-character strings
are accepted. Good thing, but required some changes in our code.

Other changes include hashing of strings, which isn't supported, so they
are converted to bytes first, and sometimes converted back afterwards.
2017-03-22 15:49:51 +01:00
bced6cae68 Ran 2to3 on unittests, same sort of manual fixups as before 2017-03-22 15:49:51 +01:00
604d6c1a07 Added pillar.web.utils.last_page_index()
This returns the last page number (base-1) of a paged Eve result.
2017-01-19 15:13:01 +01:00
76f2367e66 Added extra role to UserAdminTest. 2016-11-11 15:23:25 +01:00
5f0092cfa1 Fixed bug in /u/ where home project group membership was lost after edit.
Rather than understanding the code, I rewrote the editing and added a
unit test for it.
2016-11-11 15:06:29 +01:00
65b554986c pretty_date(None) now returns None 2016-11-08 12:56:19 +01:00
fb6e326a14 Also support future dates and times in pretty_date 2016-11-08 12:24:55 +01:00
04c9c010f0 p.view_node(): check node_id for validity, before sending it to the API
This prevents a pillarsdk.exceptions.MethodNotAllowed exception, which
would result in a 500 Internal Server Error on the frontend.
2016-08-24 14:49:30 +02:00