diff options
author | marcus <marcus@36083f99-b078-4883-b0ff-0f9b5a30f544> | 2008-10-17 10:08:34 +0000 |
---|---|---|
committer | marcus <marcus@36083f99-b078-4883-b0ff-0f9b5a30f544> | 2008-10-17 10:08:34 +0000 |
commit | ab1a4a3daa441fcd2e4d9b37267de3b48fae9d6f (patch) | |
tree | 6aadca4eb188eb7234c6bc8e0ffd756a1eb6c62a /engine | |
parent | a51e3350ef1a1fff6957e2fec58061a9c839b3e9 (diff) | |
download | elgg-ab1a4a3daa441fcd2e4d9b37267de3b48fae9d6f.tar.gz elgg-ab1a4a3daa441fcd2e4d9b37267de3b48fae9d6f.tar.bz2 |
Changes to access any system log code. Introducing owner guid on items which is necessary for access control.
Requires upgrade.php to be run
git-svn-id: https://code.elgg.org/elgg/trunk@2278 36083f99-b078-4883-b0ff-0f9b5a30f544
Diffstat (limited to 'engine')
-rw-r--r-- | engine/lib/system_log.php | 7 | ||||
-rw-r--r-- | engine/schema/mysql.sql | 3 | ||||
-rw-r--r-- | engine/schema/upgrades/2008101701.sql | 7 |
3 files changed, 16 insertions, 1 deletions
diff --git a/engine/lib/system_log.php b/engine/lib/system_log.php index 1bbde9231..4e862791d 100644 --- a/engine/lib/system_log.php +++ b/engine/lib/system_log.php @@ -212,10 +212,15 @@ $enabled = $object->enabled; else $enabled = 'yes'; + + if (isset($object->owner_guid)) + $owner_guid = $object->owner_guid; + else + $owner_guid = 0; // Create log if we haven't already created it
if (!isset($logcache[$time][$object_id][$event])) { - if (insert_data("INSERT DELAYED into {$CONFIG->dbprefix}system_log (object_id, object_class, object_type, object_subtype, event, performed_by_guid, access_id, enabled, time_created) VALUES ('$object_id','$object_class','$object_type', '$object_subtype', '$event',$performed_by, $access_id, '$enabled', '$time')")) {
+ if (insert_data("INSERT DELAYED into {$CONFIG->dbprefix}system_log (object_id, object_class, object_type, object_subtype, event, performed_by_guid, owner_guid, access_id, enabled, time_created) VALUES ('$object_id','$object_class','$object_type', '$object_subtype', '$event',$performed_by, $owner_guid, $access_id, '$enabled', '$time')")) {
$logcache[$time][$object_id][$event] = true;
return true;
}
diff --git a/engine/schema/mysql.sql b/engine/schema/mysql.sql index 35c079004..bb8646858 100644 --- a/engine/schema/mysql.sql +++ b/engine/schema/mysql.sql @@ -290,8 +290,11 @@ CREATE TABLE `prefix_system_log` ( `event` varchar(50) NOT NULL,
`performed_by_guid` int(11) NOT NULL,
+ `owner_guid` int(11) NOT NULL,
`access_id` int(11) NOT NULL,
+ `enabled` enum ('yes', 'no') NOT NULL default 'yes',
+
`time_created` int(11) NOT NULL,
PRIMARY KEY (`id`),
diff --git a/engine/schema/upgrades/2008101701.sql b/engine/schema/upgrades/2008101701.sql new file mode 100644 index 000000000..3e6fc9653 --- /dev/null +++ b/engine/schema/upgrades/2008101701.sql @@ -0,0 +1,7 @@ +ALTER TABLE `prefix_system_log` ADD COLUMN `owner_guid` int(11) NOT NULL AFTER `performed_by_guid`; + +ALTER TABLE `prefix_system_log` DROP KEY `owner_guid`; +ALTER TABLE `prefix_system_log` ADD KEY `owner_guid` (`owner_guid`); + +ALTER TABLE `prefix_system_log` DROP KEY `river_key`; +ALTER TABLE `prefix_system_log` ADD KEY `river_key` (`object_type`, `object_subtype`, `event`, `access_id`); |