chiark / gitweb /
Synchronize with disorder.dev
[disorder] / server / disorder-cgi.h
index a85b9f9b2e697fcc61e7b104ee35e927476483c0..9da897591fc701eaa841e484f009d9960bdc2eca 100644 (file)
 #include "inputline.h"
 #include "split.h"
 #include "mime.h"
+#include "sendmail.h"
 
 extern disorder_client *dcgi_client;
 extern char *dcgi_cookie;
-extern char *dcgi_error_string;
+extern const char *dcgi_error_string;
+extern const char *dcgi_status_string;
 
-void dcgi_expand(const char *name);
+/** @brief Entry in a list of tracks or directories */
+struct dcgi_entry {
+  /** @brief Track name */
+  const char *track;
+  /** @brief Sort key */
+  const char *sort;
+  /** @brief Display key */
+  const char *display;
+};
+
+/** @brief Compare two @ref entry objects */
+int dcgi_compare_entry(const void *a, const void *b);
+
+void dcgi_expand(const char *name, int header);
 void dcgi_action(const char *action);
-void dcgi_error(const char *msg, ...);
+void dcgi_error(const char *key);
 void dcgi_login(void);
 void dcgi_lookup(unsigned want);
 void dcgi_lookup_reset(void);
@@ -70,6 +85,7 @@ void dcgi_expansions(void);
 char *dcgi_cookie_header(void);
 void dcgi_login(void);
 void dcgi_get_cookie(void);
+struct queue_entry *dcgi_findtrack(const char *id);
 
 void option_set(const char *name, const char *value);
 const char *option_label(const char *key);
@@ -80,10 +96,6 @@ char **option_columns(const char *name, int *ncolumns);
 #define DCGI_PLAYING 0x0002
 #define DCGI_RECENT 0x0004
 #define DCGI_VOLUME 0x0008
-#if 0
-#define DCGI_DIRS 0x0010
-#define DCGI_FILES 0x0020
-#endif
 #define DCGI_NEW 0x0040
 #define DCGI_RIGHTS 0x0080
 #define DCGI_ENABLED 0x0100