]> git.ipfire.org Git - thirdparty/tvheadend.git/commitdiff
channel tags: add sort index, fixes #2560
authorJaroslav Kysela <perex@perex.cz>
Thu, 18 Dec 2014 07:50:01 +0000 (08:50 +0100)
committerJaroslav Kysela <perex@perex.cz>
Thu, 18 Dec 2014 07:50:01 +0000 (08:50 +0100)
src/channels.c
src/channels.h
src/htsp_server.c

index 5f7f075d76d4792cb2083522f0f21e65f589863a..5497d6f47f319f843a596cd6703bfeff93d3edec 100644 (file)
@@ -1048,6 +1048,7 @@ channel_tag_save(channel_tag_t *ct)
   idnode_save(&ct->ct_id, c);
   hts_settings_save(c, "channel/tag/%s", idnode_uuid_as_str(&ct->ct_id));
   htsmsg_destroy(c);
+  htsp_tag_update(ct);
 }
 
 
@@ -1163,6 +1164,12 @@ const idclass_t channel_tag_class = {
       .name     = "Enabled",
       .off      = offsetof(channel_tag_t, ct_enabled),
     },
+    {
+      .type     = PT_U32,
+      .id       = "index",
+      .name     = "Sort Index",
+      .off      = offsetof(channel_tag_t, ct_index),
+    },
     {
       .type     = PT_STR,
       .id       = "name",
index 2e11b957d67c523b666250be5fe476bb0a361d1b..0fcaf9b9800cc7717a2bca3655edb50806f6bdde 100644 (file)
@@ -91,6 +91,7 @@ typedef struct channel_tag {
   TAILQ_ENTRY(channel_tag) ct_link;
 
   int ct_enabled;
+  uint32_t ct_index;
   int ct_internal;
   int ct_private;
   int ct_titled_icon;
index 6859967753fa0315db24cfe0568d56292aed4685..bfbce25f26ade49a4f721ec7c6fa599977f20a37 100644 (file)
@@ -640,6 +640,7 @@ htsp_build_tag(channel_tag_t *ct, const char *method, int include_channels)
   htsmsg_t *members = include_channels ? htsmsg_create_list() : NULL;
  
   htsmsg_add_u32(out, "tagId", htsp_channel_tag_get_identifier(ct));
+  htsmsg_add_u32(out, "tagIndex", ct->ct_index);
 
   htsmsg_add_str(out, "tagName", ct->ct_name);
   htsmsg_add_str(out, "tagIcon", channel_tag_get_icon(ct));