comparison mod_mam_adhoc/mod_mam_adhoc.lua @ 1115:91d210b6106a

mod_mam_adhoc: Use mod_mam/mamprefs.lib
author Kim Alvefur <zash@zash.se>
date Sat, 13 Jul 2013 17:30:56 +0200
parents 6c7b6a0dcacf
children 27b41ee61601
comparison
equal deleted inserted replaced
1114:6c0e1f9926f6 1115:91d210b6106a
1 module:depends"adhoc"; 1 module:depends"adhoc";
2 local dataforms_new = require "util.dataforms".new; 2 local dataforms_new = require "util.dataforms".new;
3 local dm_load = require "util.datamanager".load;
4 local dm_store = require "util.datamanager".store;
5 local jid_split = require "util.jid".split; 3 local jid_split = require "util.jid".split;
6 local t_insert = table.insert; 4 local t_insert = table.insert;
5 local prefs = module:require"mod_mam/mamprefs";
6 local set_prefs, get_prefs = prefs.set, prefs.get;
7 7
8 local mam_prefs_form = dataforms_new{ 8 local mam_prefs_form = dataforms_new{
9 title = "Archive preferences"; 9 title = "Archive preferences";
10 --instructions = ""; 10 --instructions = "";
11 { 11 {
35 local default_attrs = { 35 local default_attrs = {
36 always = true, [true] = "always", 36 always = true, [true] = "always",
37 never = false, [false] = "never", 37 never = false, [false] = "never",
38 roster = "roster", 38 roster = "roster",
39 } 39 }
40
41 local global_default_policy = module:get_option("default_archive_policy", false);
42 local archive_store = "archive2";
43 local prefs_store = archive_store .. "_prefs";
44 local function get_prefs(user)
45 return dm_load(user, host, prefs_store) or
46 { [false] = global_default_policy };
47 end
48 local function set_prefs(user, prefs)
49 return dm_store(user, host, prefs_store, prefs);
50 end
51 40
52 local function mam_prefs_handler(self, data, state) 41 local function mam_prefs_handler(self, data, state)
53 local username, hostname = jid_split(data.from); 42 local username, hostname = jid_split(data.from);
54 if state then -- the second return value 43 if state then -- the second return value
55 if data.action == "cancel" then 44 if data.action == "cancel" then