aboutsummaryrefslogtreecommitdiff
path: root/IkiWiki/Plugin/comments.pm
Commit message (Collapse)AuthorAge
* fix permalink to commentsJoey Hess2019-01-21
| | | | This commit was sponsored by Thomas May.
* Use rel=nofollow microformat for dynamic (CGI-related) URLsSimon McVittie2017-01-09
| | | | | | | Some of these might be relatively expensive to dereference or result in messages being logged, and there's no reason why a search engine should need to index them. (In particular, we'd probably prefer search engines to index the rendered page, not its source code.)
* Force CGI::FormBuilder->field to scalar context where necessarySimon McVittie2016-12-28
| | | | | | | | | | | | | | | | | | | | | | | | | | CGI::FormBuilder->field has behaviour similar to the CGI.pm misfeature we avoided in f4ec7b0. Force it into scalar context where it is used in an argument list. This prevents two (relatively minor) commit metadata forgery vulnerabilities: * In the comments plugin, an attacker who was able to post a comment could give it a user-specified author and author-URL even if the wiki configuration did not allow for that, by crafting multiple values to other fields. * In the editpage plugin, an attacker who was able to edit a page could potentially forge commit authorship by crafting multiple values for the rcsinfo field. The remaining plugins changed in this commit appear to have been protected by use of explicit scalar prototypes for the called functions, but have been changed anyway to make them more obviously correct. In particular, checkpassword() in passwordauth has a known prototype, so an attacker cannot trick it into treating multiple values of the name field as being the username, password and field to check for. OVE-20161226-0001
* Process .md like .mdwn, but disallow web creation.Amitai Schlair2016-03-08
|
* Force comments URL in RSS feeds to be absoluteSimon McVittie2016-01-21
| | | | | | | | Now I'm going to get bug reports about wanting the URLs to be protocol-relative, but we can't win there as long as we generate RSS, because RSS doesn't have well-defined semantics for relative URLs (and the W3C's validator complains about them). If absolute URLs are a problem for you, please use Atom feeds.
* cloak user PII when making commits etc, and let cloaked PII be used in ↵Joey Hess2015-05-14
| | | | | | | | | | | | | | banned_users This was needed due to emailauth, but I've also wrapped all IP address exposure in cloak(), although the function doesn't yet cloak IP addresses. (One IP address I didn't cloak is the one that appears on the password reset email template. That is expected to be the user's own IP address, so ok to show it to them.) Thanks to smcv for the pointer to http://xmlns.com/foaf/spec/#term_mbox_sha1sum
* when an emailauth user posts a comment, use the username only, not the full ↵Joey Hess2015-05-13
| | | | | | | | | | | email address This makes the email not be displayed on the wiki, so spammers won't find it there. Note that the full email address is still put into the comment template. The email is also used as the username of the git commit message (when posting comments or page edits). May want to revisit this later.
* In VCS-committed anonymous comments, link to url.Amitai Schlair2015-01-08
|
* Avoid uninitialized warnings with comments+no CGI.Amitai Schlair2014-12-28
|
* ikiwiki-comment: optionally override parameters.Amitai Schlair2014-12-27
|
* add ikiwiki-comment programJoey Hess2014-10-20
|
* comments: don't log remote IP address for signed-in usersSimon McVittie2014-10-12
| | | | | | | The intention was that signed-in users (for instance via httpauth, passwordauth or openid) are already adequately identified, but there's nothing to indicate who an anonymous commenter is unless their IP address is recorded.
* comments: use comments_pagespec for authorization, not just UISimon McVittie2014-07-04
|
* comments: Write pending moderation comments to the transient underlay to ↵Joey Hess2013-11-17
| | | | avoid conflict with only_committed_changes.
* disable only_committed_changes when uncommitted files are created by pluginsJoey Hess2013-11-17
|
* Merge branch 'restrict-comment-formats' of ↵Joey Hess2013-06-23
|\ | | | | | | git://rtime.felk.cvut.cz/sojka/ikiwiki
| * Add configuration to restrict the formats allowed for commentsMichal Sojka2013-03-05
| | | | | | | | | | | | | | | | | | | | | | I want to write my blog posts in a convenient format (Emacs org mode) but do not want commenters to be able to use this format for security reasons. This patch allows to configure which formats are allowed for writing comments. Effectively, it restricts the formats enabled with add_plugin to those mentioned in comments_allowformats. If this is empty, all formats are allowed, which is the behavior without this patch.
* | comments: Remove ipv6 address specific code.Joey Hess2012-08-25
|/
* remove unnecessary quotingJoey Hess2012-04-08
|
* prune: do not prune beyond an optional base directory, and add a testSimon McVittie2012-04-07
| | | | | | | | Previously, prune("wiki/srcdir/sandbox/test.mdwn") could delete srcdir or even wiki, if they happened to be empty. This is rarely what you want: there's usually some base directory (destdir, srcdir, transientdir or another subdirectory of wikistatedir) beyond which you do not want to delete.
* allow users to subscribe to comments w/o registeringJoey Hess2012-04-02
| | | | | | | | | | Technically, when the user does this, a passwordless account is created for them. The notify mails include a login url, and once logged in that way, the user can enter a password to get a regular account (although one with an annoying username). This all requires the passwordauth plugin is enabled. A future enhancement could be to split the passwordless user concept out into a separate plugin.
* integrate comments plugin with notifyemailJoey Hess2012-03-28
|
* calendar, prettydate: Fix strftime encoding bugJoey Hess2012-01-30
| | | | | | | | | | | | | strftime is a C function, it does not return decoded utf8. Several places in ikiwiki manually decoded it, but at least two forgot to. Also, strftime might not return even encoded utf8, if LC_TIME is set to a non-utf8 value. Went ahead and supported decoding whatever encoding it uses. The remaining direct calls to strftime() are all ones that first set LC_TIME=C, in order to get times that are not for human display.
* remove x bit from comments.pmJoey Hess2011-12-27
| | | | how did that get set?
* comments: collect metadata in a scan-phase preprocess hookSimon McVittie2011-06-04
|
* look up avatar at comment post timeJoey Hess2011-03-30
| | | | | | | | | | | | | | | | | | | | | | | | | | There is a tension between looking up the avatar at post time and build time. I have not yet decided which is better. Lookup at build time has the benefit that if a user changes their email address, or sets up their own federated libravatar server, on rebuild their new avatar will show up. It also allows getting a https version of the avatar easily if the site was using http but was changed to use https. And it can look up avatars for posts that have already been made. Which is a nice thing, especially as we roll this out, eh? But it has a drawback, that it depends on the sessiondb contents for emails and so rebuilding a site w/o that will lose info. And, it means dns lookups every time a comment is rendered. A page with a lot of comments on it would render them all whenever another is posted or the page is changed, and that could significantly slow things down. (This could be amelorated by caching the lookups.) Since I'm undecided, I have moved it into a function that could be called either way. Currently looking up only at post time.
* check site url for httpsJoey Hess2011-03-30
| | | | HTTPS won't be set when rebuilding a site at the command line
* robustness fixJoey Hess2011-03-30
| | | | | | | | Don't fail if libravatar fails for some reason. Reasons I can think of: * too old version to do openid lookups (fall back to email lookup) * network problem perhaps
* indentationJoey Hess2011-03-30
|
* comments: add OpenID-based avatars (libravatar.org)Francois Marier2011-03-30
| | | | This requires version 1.04 or later of Libravatar::URL.
* comments: serve avatars over https in https wikisFrancois Marier2011-03-30
|
* comments: add avatar picture of comment authorFrancois Marier2011-03-30
| | | | | Use Libravatar::URL to pull the avatar picture for the comment author if we have an email address for him/her.
* comment: Better fix to avoid showing comments of subpages, while not ↵Joey Hess2011-03-28
| | | | breaking manual inlining of comments.
* Revert "comment: Don't show comments of subpages on parent pages. (Fixes bug ↵Joey Hess2011-03-28
| | | | | | | | | introduced in version 3.20100505.)" This reverts commit b34d31142b9fed28ec9cf77fe0c5d9f405d48c84. This was the wrong approach. It broke inlining of comment(*) on eg, a toplevel comment page.
* comment: Don't show comments of subpages on parent pages. (Fixes bug ↵Joey Hess2011-02-27
| | | | introduced in version 3.20100505.)
* bleaghJoey Hess2011-01-24
|
* comments: Fix XSS security hole due to missing validation of page name.Joey Hess2011-01-22
| | | | | Values have to be checked against wiki_file_regexp, not just file_pruned. Audited the rest of the code base for similar problems, found none.
* use cgitemplate, remove misctemplateJoey Hess2011-01-05
|
* add cgitemplateJoey Hess2011-01-05
| | | | | | | | | | | | cgitemplate is a modified misctemplate that takes an optional cgi object and uses it to set the baseurl, and also optionally the forcebaseurl, if a page is provided. If no cgi object is provided, it will fall back to using $config{url}. I expect this will only be needed in exceptional cases where that doesn't much matter, such as cgierror(). showform uses cgitemplate, so there is no more need for showform_preview.
* better handling of relative permalinksJoey Hess2011-01-05
| | | | | | This way, do=goto will go to the page relative to the current location, while the permalinks in feeds will be absolute (unless an url is not configured at all).
* Fix permalinks to recentchanges items and comments, broken by last release.Joey Hess2011-01-05
| | | | permalinks always need to be full urls
* Fix base url when previewing. Was broken by urlto changes in last release.Joey Hess2011-01-05
| | | | | Added a showform_preview that is like showform, but sets forcebaseurl to point to the page being previewed.
* editpage, comment: Clean up title when editing or creating a page or comment.Joey Hess2010-12-25
| | | | | | Now that page.tmpl is used for cgi, the parentlinks are able to be displayed even when creating or editing a page. So it's redundant to include the path to the page in the title, remove it.
* use one-parameter form of urltoJoey Hess2010-11-29
|
* Pass a CGIURL into commentmoderation.tmplSimon McVittie2010-11-23
| | | | | Omitting this resulted <form action=""> which is in fact a working self-referential form, but is less obvious than it ought to be.
* Use local paths for most references to pagesSimon McVittie2010-11-23
|
* Use local paths for the CGI URLSimon McVittie2010-11-23
|
* Use local paths for redirection where possibleSimon McVittie2010-11-23
|
* comments: Make comment() pagespec also match comments that are being posted.Joey Hess2010-11-12
|
* comments: Make postcomment() pagespec work when previewing a comment.Joey Hess2010-11-12
|