Merge branch 'master' of github.com:DAViCal/davical into github
[davical.git] / inc / log_caldav_action.php
blob7639d7c2d21edb263e4f2b17b268018d780b9477
1 <?php
2 /**
3 * Allows logging of CalDAV actions (PUT/DELETE) for possible export or sync
4 * through some other glue.
6 * @package davical
7 * @category Technical
8 * @subpackage logging
9 * @author Andrew McMillan <andrew@morphoss.com>
10 * @copyright Morphoss Ltd
11 * @license http://gnu.org/copyleft/gpl.html GNU GPL v2
13 * This file is intended to be used as a template, perhaps the user of this service
14 * will want to log actions in a very different manner and this can be used as an
15 * example of how to go about doing that.
18 /**
19 * Log the action
20 * @param string $action_type INSERT / UPDATE or DELETE
21 * @param string $uid The UID of the modified item
22 * @param integer $user_no The user owning the containing collection.
23 * @param integer $collection_id The ID of the containing collection.
24 * @param string $dav_name The DAV path of the item, relative to the DAViCal base path
26 function log_caldav_action( $action_type, $uid, $user_no, $collection_id, $dav_name ) {
27 global $c;
29 $logline = sprintf( '%s %s %s %s %s %s', gmdate('Ymd\THis\Z'), $action_type, $uid, $user_no, $collection_id, $dav_name );
30 if ( !isset($c->action_log_name) ) {
31 error_log( $logline );
32 return;
35 $logline .= "\n";
37 $logfile = fopen( $c->action_log_name, "a+" );
38 fwrite( $logfile, $logline );
39 fclose($logfile);