From: Martin G. <gim...@gi...> - 2002-09-13 19:19:33
|
Hi everybody, Today I had my first visit by a WikiVandal - he deleted the content on a page (I'm pretty sure that it's a "he" because he replaced the content with the sentence "I'm gay" :-) Anyway - I've now restored the page. But I couldn't find a way to just delete the newest revision (the one he had made), and judging from the comment and code about deleteRevision() in WikiDB.php I'm not supposed to find such and option... Why is this? Wouldn't it be natural for the administrator to be able to delete a revision of a page (even the current revision) if he doesn't like the content in that revision? It's much easier than having to copy the text the old revision to a new revision. Another thing: I wrote about a problem with using 'false' instead of just false the other day. There's actually several occurrences of this in lib/config.php. The problem is, that 'false' == true when evaluated as a boolean whereas false == false. I think it looks suspiciously, but I might be wrong? -- Martin Geisler My GnuPG Key: 0xF7F6B57B See http://gimpster.com/ and http://phpweather.net/ for: PHP Weather => Shows the current weather on your webpage and PHP Shell => A telnet-connection (almost :-) in a PHP page. |
From: Joby W. <joby@u.washington.edu> - 2002-09-13 22:18:06
|
It would certainly be possible, but there are complications. The previous version points to the new version so not only would the revision in question be deleted but the version just prior would have to be modified. It would also have to be an easily disabled function. I certainly don't it to be possible in my project... jbw Martin Geisler wrote: > Hi everybody, > > Today I had my first visit by a WikiVandal - he deleted the content on > a page (I'm pretty sure that it's a "he" because he replaced the > content with the sentence "I'm gay" :-) > > Anyway - I've now restored the page. But I couldn't find a way to just > delete the newest revision (the one he had made), and judging from the > comment and code about deleteRevision() in WikiDB.php I'm not > supposed to find such and option... > > Why is this? Wouldn't it be natural for the administrator to be able > to delete a revision of a page (even the current revision) if he > doesn't like the content in that revision? It's much easier than > having to copy the text the old revision to a new revision. > > > Another thing: I wrote about a problem with using 'false' instead of > just false the other day. There's actually several occurrences of this > in lib/config.php. The problem is, that 'false' == true when evaluated > as a boolean whereas false == false. I think it looks suspiciously, > but I might be wrong? > |
From: Martin G. <gim...@gi...> - 2002-09-13 23:06:06
|
Joby Walker <joby@u.washington.edu> writes: > It would certainly be possible, but there are complications. The > previous version points to the new version so not only would the > revision in question be deleted but the version just prior would > have to be modified. Aha, like a linked list? But the comments also say that you cannot modify a revision, you can only create or delete them, so perhaps this is a bigger issue? > It would also have to be an easily disabled function. I certainly > don't it to be possible in my project... But I imagined that it should work just like the 'Remove Page' button that only appears when you're signed in as the administrator. So normal users shouldn't have access to it. -- Martin Geisler My GnuPG Key: 0xF7F6B57B See http://gimpster.com/ and http://phpweather.net/ for: PHP Weather => Shows the current weather on your webpage and PHP Shell => A telnet-connection (almost :-) in a PHP page. |
From: Joby W. <joby@u.washington.edu> - 2002-09-13 23:25:18
|
Martin Geisler wrote: > Aha, like a linked list? But the comments also say that you cannot > modify a revision, you can only create or delete them, so perhaps this > is a bigger issue? > Kinda. I'm not a huge fan of the current structure, but as far as I can see by looking at the database (version table). Each record stores the mtime of the version number that replaces it. Thus the following would have to happen: I'll use R0 for the revision to be deleted. R1 for a revision that might follow R0. And R-1 for the revision that is prior to R0. If the purged revision is the newest: 1) delete R0 2) revert R-1 to be the final version If there is a R1: 1) grab from R0 the mtime of R1 2) change the mtime stored in R-1 (which would be R0) to value in 1) 3) delete R0. There might be other consiquenses. I haven't looked too much into this. The developers that have been around longer would know. > But I imagined that it should work just like the 'Remove Page' button > that only appears when you're signed in as the administrator. So > normal users shouldn't have access to it. > That's not really the issue. I don't want _ANYONE_ to be able to delete versions. Although I have an intesive backup scheme, I don't want to lose any data -- even if undesireable. Of course I am implimenting some severe editing restrictions so undesireable content is unlikely to occur. I would prefer if this functionality would have to be enabled via a defined constant in index.php. jbw |
From: Reini U. <ru...@x-...> - 2002-09-14 10:52:17
|
Joby Walker schrieb: > Martin Geisler wrote: > >> Aha, like a linked list? But the comments also say that you cannot >> modify a revision, you can only create or delete them, so perhaps this >> is a bigger issue? >> > > Kinda. I'm not a huge fan of the current structure, but as far as I can > see by looking at the database (version table). Each record stores the > mtime of the version number that replaces it. Thus the following would > have to happen: > > I'll use R0 for the revision to be deleted. R1 for a revision that might > follow R0. And R-1 for the revision that is prior to R0. > > If the purged revision is the newest: > 1) delete R0 > 2) revert R-1 to be the final version > > If there is a R1: > 1) grab from R0 the mtime of R1 > 2) change the mtime stored in R-1 (which would be R0) to value in 1) > 3) delete R0. > > There might be other consiquenses. I haven't looked too much into this. > The developers that have been around longer would know. > >> But I imagined that it should work just like the 'Remove Page' button >> that only appears when you're signed in as the administrator. So >> normal users shouldn't have access to it. >> > > That's not really the issue. I don't want _ANYONE_ to be able to delete > versions. Although I have an intesive backup scheme, I don't want to > lose any data -- even if undesireable. Of course I am implimenting some > severe editing restrictions so undesireable content is unlikely to > occur. I would prefer if this functionality would have to be enabled > via a defined constant in index.php. Deleting the last version only is a good idea. Deleting in-between versions probably not. Currently we do manual reverting, which might become tedious on WikiVandalism. I'll add it to a new plugin similar to WikiAdminRemove. Name: WikiAdminRemoveLatestVersion, on which you can do it on multiple pages. -- Reini Urban http://xarch.tu-graz.ac.at/home/rurban/ |
From: Martin G. <gim...@gi...> - 2002-09-14 13:02:34
|
Reini Urban <ru...@x-...> writes: > Deleting the last version only is a good idea. Deleting in-between > versions probably not. I agree - this should only be used to restore the content of a page that has been vandalised, not to make arbitrary changes to the history of a page. > Currently we do manual reverting, which might become tedious on > WikiVandalism. > > I'll add it to a new plugin similar to WikiAdminRemove. Name: > WikiAdminRemoveLatestVersion, on which you can do it on multiple > pages. Sounds great! I'll be watching the CVS commits... -- Martin Geisler My GnuPG Key: 0xF7F6B57B See http://gimpster.com/ and http://phpweather.net/ for: PHP Weather => Shows the current weather on your webpage and PHP Shell => A telnet-connection (almost :-) in a PHP page. |
From: Martin G. <gim...@gi...> - 2002-09-14 13:10:55
|
Martin Geisler <gim...@gi...> writes: > Reini Urban <ru...@x-...> writes: > >> I'll add it to a new plugin similar to WikiAdminRemove. Name: >> WikiAdminRemoveLatestVersion, on which you can do it on multiple >> pages. > > Sounds great! I'll be watching the CVS commits... It doesn't appear to be necessary - Lawrence F. London made me aware that editing and saving an old revision overwrites the current revision. That's exactly the kind of thing I was looking for. -- Martin Geisler My GnuPG Key: 0xF7F6B57B See http://gimpster.com/ and http://phpweather.net/ for: PHP Weather => Shows the current weather on your webpage and PHP Shell => A telnet-connection (almost :-) in a PHP page. |
From: Reini U. <ru...@x-...> - 2002-09-14 13:39:50
|
Martin Geisler schrieb: > Reini Urban <ru...@x-...> writes: >>I'll add it to a new plugin similar to WikiAdminRemove. Name: >>WikiAdminRemoveLatestVersion, on which you can do it on multiple >>pages. > Sounds great! I'll be watching the CVS commits... WikiAdminRemoveLatestVersion is already ready, but before committing it I'll have to fix the current WikiAuth problem... -- Reini Urban http://xarch.tu-graz.ac.at/home/rurban/ |
From: Martin G. <gim...@gi...> - 2002-09-14 12:56:54
|
Joby Walker <joby@u.washington.edu> writes: > Martin Geisler wrote: > >> But I imagined that it should work just like the 'Remove Page' >> button that only appears when you're signed in as the >> administrator. So normal users shouldn't have access to it. >> > > That's not really the issue. I don't want _ANYONE_ to be able to > delete versions. Although I have an intesive backup scheme, I don't > want to lose any data -- even if undesireable. I don't quite follow you... is this based on a philosophical view that deleting any information is bad? If so, then another solution to my problem with bad revisions could be to create a new revision based on an old (good) revision. So if R0 is the revision with SPAM, then I could create revision R1 based on a copy of R-1 and then nothing would have been deleted. If it's not about this, then I don't understand the problem - the ability for the administrator to delete a single revision is just a more fine-grained version of the 'Remove Page' button the administrator has access to now. -- Martin Geisler My GnuPG Key: 0xF7F6B57B See http://gimpster.com/ and http://phpweather.net/ for: PHP Weather => Shows the current weather on your webpage and PHP Shell => A telnet-connection (almost :-) in a PHP page. |
From: Joby W. <joby@u.washington.edu> - 2002-09-16 14:50:12
|
Martin Geisler wrote: > I don't quite follow you... is this based on a philosophical view that > deleting any information is bad? If so, then another solution to my > problem with bad revisions could be to create a new revision based on > an old (good) revision. > It has to do with application. My wiki is for the documentation for the University of Washington's Operations Center, so writing/editing permissions are being locked down to administrators -- thus defacement should be seriously limited and would be necessary evidence for a security audit. And yes I do create new revisions off of the last good one (I've messed pages up by accident...). jbw |
From: Martin G. <gim...@gi...> - 2002-09-16 17:10:07
|
Joby Walker <joby@u.washington.edu> writes: > Martin Geisler wrote: > > I don't quite follow you... is this based on a philosophical view that > > deleting any information is bad? If so, then another solution to my > > problem with bad revisions could be to create a new revision based on > > an old (good) revision. > > > > It has to do with application. My wiki is for the documentation for > the University of Washington's Operations Center, so writing/editing > permissions are being locked down to administrators -- thus defacement > should be seriously limited and would be necessary evidence for a > security audit. I can see how your environment is different from mine: I'm the only administrator whereas you have a whole team of them. > And yes I do create new revisions off of the last good one (I've > messed pages up by accident...). OK - I wasn't aware of this trick when I wrote my first message, but now that I know about it, I can see how easy it is to revert changes. -- Martin Geisler My GnuPG Key: 0xF7F6B57B See http://gimpster.com/ and http://phpweather.net/ for: PHP Weather => Shows the current weather on your webpage and PHP Shell => A telnet-connection (almost :-) in a PHP page. |