chiark
/
gitweb
/
~mdw
/
disorder
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Trivial resampler fixes
[disorder]
/
lib
/
trackdb-playlists.c
diff --git
a/lib/trackdb-playlists.c
b/lib/trackdb-playlists.c
index fb01d20ec01c2931aa7432c0000396476d764488..f9f8252068e099ae601447739b29f72ef7cad24e 100644
(file)
--- a/
lib/trackdb-playlists.c
+++ b/
lib/trackdb-playlists.c
@@
-32,6
+32,7
@@
#include "log.h"
#include "configuration.h"
#include "vector.h"
#include "log.h"
#include "configuration.h"
#include "vector.h"
+#include "eventlog.h"
static int trackdb_playlist_get_tid(const char *name,
const char *who,
static int trackdb_playlist_get_tid(const char *name,
const char *who,
@@
-81,7
+82,7
@@
int playlist_parse_name(const char *name,
if(!valid_username(name))
return -1;
owner = 0;
if(!valid_username(name))
return -1;
owner = 0;
- share = "
public
";
+ share = "
shared
";
}
if(ownerp)
*ownerp = owner;
}
if(ownerp)
*ownerp = owner;
@@
-229,6
+230,7
@@
static int trackdb_playlist_get_tid(const char *name,
/** @brief Modify or create a playlist
* @param name Playlist name
/** @brief Modify or create a playlist
* @param name Playlist name
+ * @param who User modifying playlist
* @param tracks List of tracks to set, or NULL to leave alone
* @param ntracks Length of @p tracks
* @param share Sharing status, or NULL to leave alone
* @param tracks List of tracks to set, or NULL to leave alone
* @param ntracks Length of @p tracks
* @param share Sharing status, or NULL to leave alone
@@
-293,6
+295,7
@@
static int trackdb_playlist_set_tid(const char *name,
struct kvp *k;
int e;
const char *s;
struct kvp *k;
int e;
const char *s;
+ const char *event = "playlist_modified";
if((e = trackdb_getdata(trackdb_playlistsdb, name, &k, tid))
&& e != DB_NOTFOUND)
if((e = trackdb_getdata(trackdb_playlistsdb, name, &k, tid))
&& e != DB_NOTFOUND)
@@
-311,6
+314,7
@@
static int trackdb_playlist_set_tid(const char *name,
k = 0;
kvp_set(&k, "count", 0);
kvp_set(&k, "sharing", defshare);
k = 0;
kvp_set(&k, "count", 0);
kvp_set(&k, "sharing", defshare);
+ event = "playlist_created";
}
/* Check that the modification is allowed */
if(!(s = kvp_get(k, "sharing"))) {
}
/* Check that the modification is allowed */
if(!(s = kvp_get(k, "sharing"))) {
@@
-354,7
+358,11
@@
static int trackdb_playlist_set_tid(const char *name,
kvp_set(&k, "count", b);
}
/* Store the resulting record */
kvp_set(&k, "count", b);
}
/* Store the resulting record */
- return trackdb_putdata(trackdb_playlistsdb, name, k, tid, 0);
+ e = trackdb_putdata(trackdb_playlistsdb, name, k, tid, 0);
+ /* Log the event */
+ if(!e)
+ eventlog(event, name, kvp_get(k, "sharing"), (char *)0);
+ return e;
}
/** @brief Get a list of playlists
}
/** @brief Get a list of playlists
@@
-468,7
+476,10
@@
static int trackdb_playlist_delete_tid(const char *name,
if(!playlist_may_write(name, who, s))
return EACCES;
/* Delete the playlist */
if(!playlist_may_write(name, who, s))
return EACCES;
/* Delete the playlist */
- return trackdb_delkey(trackdb_playlistsdb, name, tid);
+ e = trackdb_delkey(trackdb_playlistsdb, name, tid);
+ if(!e)
+ eventlog("playlist_deleted", name, 0);
+ return e;
}
/*
}
/*