Currently page revert is the only way to remove an inflammatory edit, vandalism, or spam from a page. Although this does give moderators and wiki administrators some control, more power and flexibility is often needed to maintain quality and professionalism in a publicly facing wiki. This feature gives moderators the ability to hide a page or file revision from users.
A secondary goal for this feature is to allow for a means of attribution for the new page drafts and publishing feature. A moderator will be able to identify key contributors to a draft page and hide redundant and extraneous revisions of a draft before publishing. Publishing would then copy all remaining revisions with the original editors preserved.
This feature is mainly intended for public sites that require a means of cleaning up spam or inappropriate contributions in the history of pages and attachments. This feature will also tie in closely with the drafts and moderation system as a means of attributing users with changes they performed in a draft copy.
This will become a core feature available to all releases of MindTouch.
Requirements established. Implementation specs being discussed
New features
Query Param: comment
Request body for pages:
<revisions>
<page id="y" revision="x" hidden="{bool}" />
</revisions>
Request body for files:
<revisions>
<files id="y" revision="x" hidden="{bool}" />
</revisions>
Page revision XML unhidden (unchanged elements are left out)
<page id="1" revision="200" href="http://developer.mindtouch.com/@api/deki/pages/1/revisions?revision=200&redirects=0">
<contents type="application/x.deki0805+xml" href="http://developer.mindtouch.com/@api/deki/pages/1/contents?revision=200&redirects=0"/>
<title>my report</title>
<description>updated the figures</description>
</page>
Hidden revision of a page
<page id="1" revision="200" hidden="true" href="http://developer.mindtouch.com/@api/deki/pages/1/revisions?revision=200&redirects=0">
<contents type="application/x.deki0805+xml" href="http://developer.mindtouch.com/@api/deki/pages/1/contents?revision=200&redirects=0"/>
<title hidden="true">default title</title>
<description hidden="true"/>
<user.hiddenby id=100>
<name>foo</name>
</user.hiddenby>
<date.hidden>2009-05-22T00:44:26Z</date.hidden>
<description.hidden>spam revision</description.hidden>
</page>
File revision XML unhidden (unchanged elements are left out)
<file id="100" revision="1" href="http://developer.mindtouch.com/@api/deki/files/100/info?revision=1>
<contents type="application/vnd.ms-excel" size="13824" href="http://developer.mindtouch.com/@api/deki/files/100/=Kitap1.xls?revision=1"/>
<description>fixed the figures</description>
</file>
Hidden revision of a file
<file id="100" revision="1" hidden="true" href="http://developer.mindtouch.com/@api/deki/files/100/info?revision=1>
<contents type="application/vnd.ms-excel" size="13824" href="http://developer.mindtouch.com/@api/deki/files/100/=Kitap1.xls?revision=1"/>
<description hidden="true"/>
<date.hidden>2009-05-22T00:44:26Z</date.hidden>
<user.hiddenby id="100">
<name>foo</name>
</user.hidden>
<description.hidden>spam revision</description.hidden>
</file>
Search is not affected since hiding head revisions is not allowed
TODO
Feeds do not display page edits that were afterwards marked as hidden. This includes the aggregate recentchanges, page, watchlist, and user contributions feeds. This affects admin as well as normal users.
alter table `old` add column `old_is_hidden` tinyint UNSIGNED DEFAULT '0' NOT NULL; alter table `old` add column `old_meta` text NULL COLLATE utf8_general_ci; alter table `archive` add column `ar_is_hidden` tinyint UNSIGNED DEFAULT '0' NOT NULL; alter table `archive` add column `ar_meta` text NULL COLLATE utf8_general_ci; alter table `pages` add column `page_is_hidden` tinyint UNSIGNED DEFAULT '0' NOT NULL; alter table `pages` add column `page_meta` text NULL COLLATE utf8_general_ci; alter table `resources` add column `resrev_ishidden` tinyint UNSIGNED DEFAULT '0' NOT NULL after `resrev_language`; alter table `resourcerevs` add column `resrev_ishidden` tinyint UNSIGNED DEFAULT '0' NOT NULL after `resrev_language`;
| Images 0 | ||
|---|---|---|
| No images to display in the gallery. |
Copyright © 2011 MindTouch, Inc. Powered by