aboutsummaryrefslogtreecommitdiff
path: root/IkiWiki/Plugin/editpage.pm
Commit message (Collapse)AuthorAge
* Group related plugins into sections in the setup file, and drop unused rcs ↵Joey Hess2010-02-11
| | | | plugins from the setup file.
* reorder canedit checks during page creation to have best_loc firstJoey Hess2010-02-11
| | | | | | | | | | | | | | | | | | | | | | | | | | When creating a page, multiple locations are tested to see if they can be edited. If all fail, one of the failure subs is called, to log the user in to allow them to proceed with the edit. So far so good. But, what if some pages fail for one reason, and some for another? This occurs when httpauth_pagespec is used in conjunction with signinedit (and openid or something). When the user is not signed in at all The former will fail to edit a page because the user was not httpauthed. The latter will fail to edit a different page, because the user was not signed in. One of their failure methods gets to run first. The page creation code always ran the failure method corresponding to the topmost page location. So, when editing a foo/Discussion page, and with httpauth_pagespec => "*!/Discussion", it ran the httpauth failure method, which was exactly the wrong thing to do. I fixed this by making it instead run the failure method for the *best* page location. In the above example, that's foo/Discussion, so signinedit runs, as desired, and we get the signin page. This seems like it will be the right choice, or at least an acceptable choice. If a user wants to use httpauth they can always choose it on the signin page.
* factor out a userpage functionJoey Hess2010-02-04
| | | | Not yet exported, as only 4 quite core plugins use it.
* Add discussionpage configuration settingJoey Hess2009-08-13
| | | | | | By adding this setting, we get both more configurability, and a minor optimisation too, since gettext does not need to be called continually to get the Discussion value.
* fix further places where translated discussion case was assumedJoey Hess2009-06-04
| | | | | Another benefit is that consistently using gettext("Discussion") eliminates the need to translate one string.
* support longname for page types in commands and renameJoey Hess2009-05-21
| | | | Also, sort the list of page types.
* tidy up new page_types codeJon Dowland2009-05-16
|
* check for longname for each syntax pluginJon Dowland2009-05-16
| | | | | | | | We build an array of [ plugin name, long name ] pairs, where long name is an optional argument to hook(). So, a syntax plugin could define long "friendly" name, such as "Markdown" instead of mdwn, and we would then pass this array to formbuilder to populate the drop-down on the edit page.
* move check_canedit, check_content to IkiWiki library from editpageJoey Hess2009-02-12
| | | | | | | | | | | | It no longer makes sense to keep these functions in editpage, because serveral plugins now exist that use them, and users may want to disable editpage, while leaving those plugins enabled. Most notably, comments uses both functions, and it's entirely appropriate to disable editpage but still want to have comments enabled. Less likely, attachments, rename, and remove all use check_canedit -- but it would be unusual indeed to want to use these w/o editpage.
* comments: If comment content checks fail, store the comment (in ↵Joey Hess2009-01-25
| | | | .ikiwiki/comments_pending) for moderator review.
* checkcontent: New hook, can be used to implement arbitrary content filters, ↵Joey Hess2009-01-16
| | | | including spam filters.
* remove cruftJoey Hess2008-12-19
| | | | wtf does it do? absolutely nothing
* Coding style change: Remove explcit vim folding markers.Joey Hess2008-12-17
|
* checksessionexpiry: reworkJoey Hess2008-12-17
| | | | | This function as factored out was a bit confusing, I think this makes more sense.
* editpage: factor out checksessionexpiry into IkiWiki::CGISimon McVittie2008-12-11
|
* more work on untrusted committersJoey Hess2008-10-23
| | | | | Wired up check_canedit and check_canremove, still need to deal with check_canattach, and test.
* don't special case previewJoey Hess2008-10-02
| | | | | | | | | | Whenever the edit form is submitted, but not saved, the page location select should reduce to the currently selected value. This was only done when previewing before, but is also needed in order to support the case of adding an attachment to a page that is just being created. Before this change, the attachment plugin would get a weird value in $form->field("page"), that did not reflect the actual page location.
* use newpagefileJoey Hess2008-09-29
|
* support indexpages when creating new pagesJoey Hess2008-09-29
| | | | | Initial draft, may need to factor new page filename code out into helper function if other plugins need to do the same..
* fix handing of case of file first created by preview but then savedJoey Hess2008-09-29
| | | | | | To handle this, avoid populating %renderedfiles in preview, and in expiry, check if the file is in %renderedfiles, if it is do not delete it since it was saved.
* editpage: Be more aggressive (and less buggy) about cleaning up temporary ↵Joey Hess2008-09-27
| | | | files rendered during page preview.
* Merge commit 'smcv/beautify'Joey Hess2008-09-27
|\ | | | | | | | | | | | | | | | | | | Conflicts: IkiWiki/Plugin/recentchanges.pm Note that smcv's approach of using urlto also gets the url right when redirecting to a non-html file, which is a better approach than my recent fix to recentchanges
| * editpage: beautify redirection URLs, avoiding exposing the implementation ↵Simon McVittie2008-09-21
| | | | | | | | detail that index.html exists
* | add missing page name sanity checkJoey Hess2008-09-20
|/
* editpage: New core plugin factoring out page editing to allow disabling it ↵Joey Hess2008-09-05
if desired.