# HG changeset patch # User souliane # Date 1449821531 -3600 # Node ID cc31dd72526dca40ae3315df616550728c61581a # Parent 681fe91abcc09ec706b3f8744db9f1b7580b6c56 plugin misc_extra_pep: use a user parameter (jids_list) instead of a general configuration value diff -r 681fe91abcc0 -r cc31dd72526d src/plugins/plugin_misc_extra_pep.py --- a/src/plugins/plugin_misc_extra_pep.py Tue Dec 15 14:12:19 2015 +0100 +++ b/src/plugins/plugin_misc_extra_pep.py Fri Dec 11 09:12:11 2015 +0100 @@ -17,7 +17,7 @@ # You should have received a copy of the GNU Affero General Public License # along with this program. If not, see . -from sat.core.i18n import _ +from sat.core.i18n import _, D_ from sat.core.log import getLogger log = getLogger(__name__) @@ -28,22 +28,40 @@ "type": "MISC", "protocols": [], "dependencies": [], - "recommendations": ['XEP-0277'], + "recommendations": [], "main": "ExtraPEP", "handler": "no", "description": _(u"""Display messages from extra PEP services""") } -CONFIG_SECTION = "plugin extra pep" - -default_conf = {"get_items_from_list": ["salut-a-toi@libervia.org"], } - +PARAM_KEY = u"Misc" +PARAM_NAME = u"Blog authors following list" +PARAM_DEFAULT = ["salut-a-toi@libervia.org"] class ExtraPEP(object): + params = """ + + + + + %(jids)s + + + + + """ % { + 'category_name': PARAM_KEY, + 'category_label': D_(PARAM_KEY), + 'param_name': PARAM_NAME, + 'param_label': D_(PARAM_NAME), + 'jids': "".join(["%s" % jid for jid in PARAM_DEFAULT]) + } + def __init__(self, host): log.info(_(u"Plugin Extra PEP initialization")) self.host = host + host.memory.updateParams(self.params) - def getConfig(self, name): - return self.host.memory.getConfig(CONFIG_SECTION, name, default_conf[name]) + def getFollowedEntities(self, profile_key): + return self.host.memory.getParamA(PARAM_NAME, PARAM_KEY, profile_key=profile_key) diff -r 681fe91abcc0 -r cc31dd72526d src/plugins/plugin_xep_0277.py --- a/src/plugins/plugin_xep_0277.py Tue Dec 15 14:12:19 2015 +0100 +++ b/src/plugins/plugin_xep_0277.py Fri Dec 11 09:12:11 2015 +0100 @@ -654,12 +654,13 @@ jids_set = client.roster.getJidsSet(publishers_type, publishers) if publishers_type == C.ALL: try: # display messages from salut-a-toi@libervia.org or other PEP services - services = self.host.plugins["EXTRA-PEP"].getConfig("get_items_from_list") + services = self.host.plugins["EXTRA-PEP"].getFollowedEntities(profile_key) except KeyError: - pass + pass # plugin is not loaded else: - log.debug("Items from the following extra PEP services will be requested as well: %s" % ", ".join(services)) - jids_set.update([jid.JID(service) for service in services]) + if services: + log.debug("Extra PEP followed entities: %s" % ", ".join([unicode(service) for service in services])) + jids_set.update(services) node_data = [] for jid_ in jids_set: