summaryrefslogtreecommitdiff
path: root/modules/system/system.install
diff options
context:
space:
mode:
authorGábor Hojtsy <gabor@hojtsy.hu>2007-11-26 11:44:04 +0000
committerGábor Hojtsy <gabor@hojtsy.hu>2007-11-26 11:44:04 +0000
commita960d4d618dacb5954eebc48e41517d9eaf536af (patch)
tree364740dd59709031df097110d0f0aa193c9b8ca2 /modules/system/system.install
parentabd2477d7bdf01832eb199c06149c0136fff9cc3 (diff)
downloadbrdo-a960d4d618dacb5954eebc48e41517d9eaf536af.tar.gz
brdo-a960d4d618dacb5954eebc48e41517d9eaf536af.tar.bz2
#120960 by blakehall, JirkaRybka, catch: improve usability of content editing permission names
Diffstat (limited to 'modules/system/system.install')
-rw-r--r--modules/system/system.install19
1 files changed, 19 insertions, 0 deletions
diff --git a/modules/system/system.install b/modules/system/system.install
index d3e35e78d..c489eb862 100644
--- a/modules/system/system.install
+++ b/modules/system/system.install
@@ -2717,6 +2717,25 @@ function system_update_6038() {
}
/**
+ * Rename permissions "edit foo content" to "edit any foo content".
+ * Also update poll module permission "create polls" to "create
+ * poll content".
+ */
+function system_update_6039() {
+ $ret = array();
+ $result = db_query("SELECT rid, perm FROM {permission} ORDER BY rid");
+ while ($role = db_fetch_object($result)) {
+ $renamed_permission = preg_replace('/(?<=^|,\ )edit\ ([a-zA-Z0-9_\-]+)\ content(?=,|$)/', 'edit any $1 content', $role->perm);
+ $renamed_permission = preg_replace('/(?<=^|,\ )create\ polls(?=,|$)/', 'create poll content', $renamed_permission);
+ if ($renamed_permission != $role->perm) {
+ $ret[] = update_sql("UPDATE {permission} SET perm = '$renamed_permission' WHERE rid = $role->rid");
+ }
+ }
+ return $ret;
+}
+
+
+/**
* @} End of "defgroup updates-5.x-to-6.x"
* The next series of updates should start at 7000.
*/