Fix pylint errors

This commit is contained in:
Philipp Hörist 2018-09-12 00:01:54 +02:00 committed by Philipp Hörist
parent 19ba1f669c
commit 6753c3e499
28 changed files with 183 additions and 175 deletions

View File

@ -404,7 +404,7 @@ class CommandWindow:
self.commandnode = command.getAttr('node')
if command.getTag('x'):
self.dataform = dataforms.ExtendForm(node=command.getTag('x'))
self.dataform = dataforms.extend_form(node=command.getTag('x'))
self.data_form_widget.set_sensitive(True)
try:

View File

@ -588,7 +588,7 @@ class ChatControl(ChatControlBase):
def on_location_eventbox_button_release_event(self, widget, event):
if 'geoloc' in self.contact.pep:
location = self.contact.pep['geoloc']._pep_specific_data
location = self.contact.pep['geoloc'].data
if ('lat' in location) and ('lon' in location):
uri = 'https://www.openstreetmap.org/?' + \
'mlat=%(lat)s&mlon=%(lon)s&zoom=16' % {'lat': location['lat'],

View File

@ -448,7 +448,7 @@ class MucCapsCache:
elif child.getName() == 'x':
if child.getNamespace() == nbxmpp.NS_DATA:
from gajim.common.modules import dataforms
data.append(dataforms.ExtendForm(node=child))
data.append(dataforms.extend_form(node=child))
if nbxmpp.NS_MUC not in features:
# Not a MUC, don't cache info

View File

@ -382,14 +382,14 @@ class CommonConnection:
def update_contact(self, jid, name, groups):
if self.connection:
self.getRoster().setItem(jid=jid, name=name, groups=groups)
self.getRoster().set_item(jid=jid, name=name, groups=groups)
def update_contacts(self, contacts):
"""
Update multiple roster items
"""
if self.connection:
self.getRoster().setItemMulti(contacts)
self.getRoster().set_item_multi(contacts)
def new_account(self, name, config, sync=False):
"""
@ -1578,7 +1578,7 @@ class Connection(CommonConnection, ConnectionHandlers):
iq.setID(id_)
self.awaiting_answers[id_] = (AGENT_REMOVED, agent)
self.connection.send(iq)
self.getRoster().delItem(agent)
self.getRoster().del_item(agent)
def send_new_account_infos(self, form, is_form):
if is_form:

View File

@ -926,7 +926,7 @@ class FileRequestReceivedEvent(nec.NetworkIncomingEvent, HelperEvent):
form_tag = feature_tag.getTag('x', namespace=nbxmpp.NS_DATA)
if not form_tag:
return
self.dataform = dataforms.ExtendForm(node=form_tag)
self.dataform = dataforms.extend_form(node=form_tag)
for f in self.dataform.iter_fields():
if f.var == 'stream-method' and f.type_ == 'list-single':
values = [o[1] for o in f.options]

View File

@ -39,7 +39,7 @@ class AdHocCommand:
commandfeatures = (nbxmpp.NS_DATA,)
@staticmethod
def isVisibleFor(samejid):
def is_visible_for(_samejid):
"""
This returns True if that command should be visible and invokable for
others
@ -54,8 +54,8 @@ class AdHocCommand:
self.jid = jid
self.sessionid = sessionid
def buildResponse(self, request, status='executing', defaultaction=None,
actions=None):
def build_response(self, request, status='executing', defaultaction=None,
actions=None):
assert status in ('executing', 'completed', 'canceled')
response = request.buildReply('result')
@ -74,12 +74,12 @@ class AdHocCommand:
cmd.addChild('actions', attrs, actions)
return response, cmd
def badRequest(self, stanza):
def bad_request(self, stanza):
self.connection.connection.send(
nbxmpp.Error(stanza, nbxmpp.NS_STANZAS + ' bad-request'))
def cancel(self, request):
response = self.buildResponse(request, status='canceled')[0]
response = self.build_response(request, status='canceled')[0]
self.connection.connection.send(response)
return False # finish the session
@ -90,30 +90,30 @@ class ChangeStatusCommand(AdHocCommand):
def __init__(self, conn, jid, sessionid):
AdHocCommand.__init__(self, conn, jid, sessionid)
self.cb = self.first_step
self._callback = self.first_step
@staticmethod
def isVisibleFor(samejid):
def is_visible_for(samejid):
"""
Change status is visible only if the entity has the same bare jid
"""
return samejid
def execute(self, request):
return self.cb(request)
return self._callback(request)
def first_step(self, request):
# first query...
response, cmd = self.buildResponse(request,
defaultaction='execute',
actions=['execute'])
response, cmd = self.build_response(request,
defaultaction='execute',
actions=['execute'])
cmd.addChild(
node=dataforms.SimpleDataForm(
title=_('Change status'),
instructions=_('Set the presence type and description'),
fields=[
dataforms.Field(
dataforms.create_field(
'list-single',
var='presence-type',
label='Type of presence:',
@ -126,7 +126,7 @@ class ChangeStatusCommand(AdHocCommand):
('offline', _('Offline - disconnect'))],
value='online',
required=True),
dataforms.Field(
dataforms.create_field(
'text-multi',
var='presence-desc',
label=_('Presence description:'))
@ -137,7 +137,7 @@ class ChangeStatusCommand(AdHocCommand):
self.connection.connection.send(response)
# for next invocation
self.cb = self.second_step
self._callback = self.second_step
return True # keep the session
@ -147,19 +147,19 @@ class ChangeStatusCommand(AdHocCommand):
form = dataforms.SimpleDataForm(
extend=request.getTag('command').getTag('x'))
except Exception:
self.badRequest(request)
self.bad_request(request)
return False
try:
presencetype = form['presence-type'].value
if presencetype not in ('chat', 'online', 'away',
'xa', 'dnd', 'offline'):
self.badRequest(request)
self.bad_request(request)
return False
except Exception:
# KeyError if there's no presence-type field in form or
# AttributeError if that field is of wrong type
self.badRequest(request)
self.bad_request(request)
return False
try:
@ -167,7 +167,7 @@ class ChangeStatusCommand(AdHocCommand):
except Exception: # same exceptions as in last comment
presencedesc = ''
response, cmd = self.buildResponse(request, status='completed')
response, cmd = self.build_response(request, status='completed')
cmd.addChild('note', {}, _('The status has been changed.'))
# if going offline, we need to push response so it won't go into
@ -206,23 +206,23 @@ class LeaveGroupchatsCommand(AdHocCommand):
def __init__(self, conn, jid, sessionid):
AdHocCommand.__init__(self, conn, jid, sessionid)
self.cb = self.first_step
self._callback = self.first_step
@staticmethod
def isVisibleFor(samejid):
def is_visible_for(samejid):
"""
Leave groupchats is visible only if the entity has the same bare jid
"""
return samejid
def execute(self, request):
return self.cb(request)
return self._callback(request)
def first_step(self, request):
# first query...
response, cmd = self.buildResponse(request,
defaultaction='execute',
actions=['execute'])
response, cmd = self.build_response(request,
defaultaction='execute',
actions=['execute'])
options = []
account = self.connection.name
for gc in find_current_groupchats(account):
@ -230,8 +230,8 @@ class LeaveGroupchatsCommand(AdHocCommand):
('%s' % gc[0],
_('%(nickname)s on %(room_jid)s') % {'nickname': gc[1],
'room_jid': gc[0]}))
if not len(options):
response, cmd = self.buildResponse(request, status='completed')
if not options:
response, cmd = self.build_response(request, status='completed')
cmd.addChild('note', {}, _('You have not joined a groupchat.'))
self.connection.connection.send(response)
@ -242,7 +242,7 @@ class LeaveGroupchatsCommand(AdHocCommand):
title=_('Leave Groupchats'),
instructions=_('Choose the groupchats you want to leave'),
fields=[
dataforms.Field(
dataforms.create_field(
'list-multi',
var='groupchats',
label=_('Groupchats'),
@ -255,7 +255,7 @@ class LeaveGroupchatsCommand(AdHocCommand):
self.connection.connection.send(response)
# for next invocation
self.cb = self.second_step
self._callback = self.second_step
return True # keep the session
@ -265,13 +265,13 @@ class LeaveGroupchatsCommand(AdHocCommand):
form = dataforms.SimpleDataForm(
extend=request.getTag('command').getTag('x'))
except Exception:
self.badRequest(request)
self.bad_request(request)
return False
try:
gc = form['groupchats'].values
except Exception: # KeyError if there's no groupchats in form
self.badRequest(request)
self.bad_request(request)
return False
account = self.connection.name
try:
@ -279,15 +279,16 @@ class LeaveGroupchatsCommand(AdHocCommand):
gc_control = app.interface.msg_win_mgr.get_gc_control(
room_jid, account)
if not gc_control:
gc_control = app.interface.minimized_controls[account][room_jid]
minimized_controls = app.interface.minimized_controls
gc_control = minimized_controls[account][room_jid]
gc_control.shutdown()
app.interface.roster.remove_groupchat(room_jid, account)
continue
gc_control.parent_win.remove_tab(gc_control, None, force=True)
except Exception: # KeyError if there's no such room opened
self.badRequest(request)
self.bad_request(request)
return False
response, cmd = self.buildResponse(request, status='completed')
response, cmd = self.build_response(request, status='completed')
note = _('You left the following groupchats:')
for room_jid in gc:
note += '\n\t' + room_jid
@ -327,13 +328,13 @@ class AdHocCommands:
def command_list_query(self, stanza):
iq = stanza.buildReply('result')
jid = helpers.get_full_jid_from_iq(stanza)
q = iq.getTag('query')
query = iq.getTag('query')
# buildReply don't copy the node attribute. Re-add it
q.setAttr('node', nbxmpp.NS_COMMANDS)
query.setAttr('node', nbxmpp.NS_COMMANDS)
for node, cmd in self._commands.items():
if cmd.isVisibleFor(self.is_same_jid(jid)):
q.addChild('item', {
if cmd.is_visible_for(self.is_same_jid(jid)):
query.addChild('item', {
# TODO: find the jid
'jid': str(self._con.get_own_jid()),
'node': node,
@ -349,7 +350,7 @@ class AdHocCommands:
try:
jid = helpers.get_full_jid_from_iq(stanza)
except helpers.InvalidFormat:
log.warning('Invalid JID: %s, ignoring it' % stanza.getFrom())
log.warning('Invalid JID: %s, ignoring it', stanza.getFrom())
return
node = stanza.getTagAttr('query', 'node')
@ -357,16 +358,16 @@ class AdHocCommands:
return False
cmd = self._commands[node]
if cmd.isVisibleFor(self.is_same_jid(jid)):
if cmd.is_visible_for(self.is_same_jid(jid)):
iq = stanza.buildReply('result')
q = iq.getTag('query')
q.addChild('identity',
attrs={'type': 'command-node',
'category': 'automation',
'name': cmd.commandname})
q.addChild('feature', attrs={'var': nbxmpp.NS_COMMANDS})
query = iq.getTag('query')
query.addChild('identity',
attrs={'type': 'command-node',
'category': 'automation',
'name': cmd.commandname})
query.addChild('feature', attrs={'var': nbxmpp.NS_COMMANDS})
for feature in cmd.commandfeatures:
q.addChild('feature', attrs={'var': feature})
query.addChild('feature', attrs={'var': feature})
self._con.connection.send(iq)
return True
@ -385,14 +386,14 @@ class AdHocCommands:
return False
cmd = self._commands[node]
if cmd.isVisibleFor(self.is_same_jid(jid)):
if cmd.is_visible_for(self.is_same_jid(jid)):
iq = stanza.buildReply('result')
self._con.connection.send(iq)
return True
return False
def _execute_command_received(self, con, stanza):
def _execute_command_received(self, _con, stanza):
jid = helpers.get_full_jid_from_iq(stanza)
cmd = stanza.getTag('command')
@ -417,7 +418,7 @@ class AdHocCommands:
raise nbxmpp.NodeProcessed
newcmd = self._commands[node]
if not newcmd.isVisibleFor(self.is_same_jid(jid)):
if not newcmd.is_visible_for(self.is_same_jid(jid)):
log.warning('Command not visible for jid: %s', jid)
raise nbxmpp.NodeProcessed
@ -492,7 +493,9 @@ class AdHocCommands:
items = stanza.getQueryPayload()
commandlist = []
if items:
commandlist = [(t.getAttr('node'), t.getAttr('name')) for t in items]
commandlist = [
(t.getAttr('node'), t.getAttr('name')) for t in items
]
log.info('Received: %s', commandlist)
app.nec.push_incoming_event(
@ -550,7 +553,8 @@ class AdHocCommands:
self._con.connection.SendAndCallForResponse(
stanza, self._cancel_result_received)
def _cancel_result_received(self, stanza):
@staticmethod
def _cancel_result_received(stanza):
if not nbxmpp.isResultNode(stanza):
log.warning('Error: %s', stanza.getError())
else:

View File

@ -44,10 +44,10 @@ class AtomData(AbstractPEPData):
type_ = PEPEventType.ATOM
def __init__(self, atom):
self._pep_specific_data = atom
self.data = atom
def get_entry(self):
return self._pep_specific_data
return self.data
class Atom(AbstractPEPModule):

View File

@ -39,22 +39,22 @@ class WrongFieldValue(Error):
# helper class to change class of already existing object
class ExtendedNode(nbxmpp.Node, object):
class ExtendedNode(nbxmpp.Node):
@classmethod
def __new__(cls, *a, **b):
if 'extend' not in b.keys() or not b['extend']:
def __new__(cls, *args, **kwargs):
if 'extend' not in kwargs.keys() or not kwargs['extend']:
return object.__new__(cls)
extend = b['extend']
extend = kwargs['extend']
assert issubclass(cls, extend.__class__)
extend.__class__ = cls
return extend
# helper to create fields from scratch
def Field(typ, **attrs):
def create_field(typ, **attrs):
''' Helper function to create a field of given type. '''
f = {
field = {
'boolean': BooleanField,
'fixed': StringField,
'hidden': StringField,
@ -66,18 +66,18 @@ def Field(typ, **attrs):
'list-single': ListSingleField,
'text-multi': TextMultiField,
}[typ](typ=typ, **attrs)
return f
return field
def ExtendField(node):
def extend_field(node):
"""
Helper function to extend a node to field of appropriate type
"""
# when validation (XEP-122) will go in, we could have another classes
# like DateTimeField - so that dicts in Field() and ExtendField() will
# be different...
# like DateTimeField - so that dicts in create_field() and
# extend_field() will be different...
typ = node.getAttr('type')
f = {
field = {
'boolean': BooleanField,
'fixed': StringField,
'hidden': StringField,
@ -89,25 +89,24 @@ def ExtendField(node):
'list-single': ListSingleField,
'text-multi': TextMultiField,
}
if typ not in f:
if typ not in field:
typ = 'text-single'
return f[typ](extend=node)
return field[typ](extend=node)
def ExtendForm(node):
def extend_form(node):
"""
Helper function to extend a node to form of appropriate type
"""
if node.getTag('reported') is not None:
return MultipleDataForm(extend=node)
else:
return SimpleDataForm(extend=node)
return SimpleDataForm(extend=node)
class DataField(ExtendedNode):
"""
Keeps data about one field - var, field type, labels, instructions... Base
class for different kinds of fields. Use Field() function to construct one
class for different kinds of fields. Use create_field() function to construct one
of these
"""
@ -136,10 +135,10 @@ class DataField(ExtendedNode):
'text-private', 'text-single'. If you set this to something different,
DataField will store given name, but treat all data as text-single
"""
t = self.getAttr('type')
if t is None:
type_ = self.getAttr('type')
if type_ is None:
return 'text-single'
return t
return type_
@type_.setter
def type_(self, value):
@ -199,9 +198,9 @@ class DataField(ExtendedNode):
@description.deleter
def description(self):
t = self.getTag('desc')
if t is not None:
self.delChild(t)
desc = self.getTag('desc')
if desc is not None:
self.delChild(desc)
@property
def required(self):
@ -212,10 +211,10 @@ class DataField(ExtendedNode):
@required.setter
def required(self, value):
t = self.getTag('required')
if t and not value:
self.delChild(t)
elif not t and value:
required = self.getTag('required')
if required and not value:
self.delChild(required)
elif not required and value:
self.addChild('required')
@property
@ -234,11 +233,12 @@ class DataField(ExtendedNode):
@media.deleter
def media(self):
t = self.getTag('media')
if t is not None:
self.delChild(t)
media = self.getTag('media')
if media is not None:
self.delChild(media)
def is_valid(self):
@staticmethod
def is_valid():
return True
@ -306,12 +306,12 @@ class BooleanField(DataField):
"""
Value of field. May contain True, False or None
"""
v = self.getTagData('value')
if v in ('0', 'false'):
value = self.getTagData('value')
if value in ('0', 'false'):
return False
if v in ('1', 'true'):
if value in ('1', 'true'):
return True
if v is None:
if value is None:
return False # default value is False
raise WrongFieldValue
@ -321,9 +321,9 @@ class BooleanField(DataField):
@value.deleter
def value(self):
t = self.getTag('value')
if t is not None:
self.delChild(t)
value = self.getTag('value')
if value is not None:
self.delChild(value)
class StringField(DataField):
@ -366,13 +366,13 @@ class ListField(DataField):
"""
options = []
for element in self.getTags('option'):
v = element.getTagData('value')
if v is None:
value = element.getTagData('value')
if value is None:
raise WrongFieldValue
label = element.getAttr('label')
if not label:
label = v
options.append((label, v))
label = value
options.append((label, value))
return options
@options.setter
@ -389,13 +389,13 @@ class ListField(DataField):
def iter_options(self):
for element in self.iterTags('option'):
v = element.getTagData('value')
if v is None:
value = element.getTagData('value')
if value is None:
raise WrongFieldValue
label = element.getAttr('label')
if not label:
label = v
yield (v, label)
label = value
yield (value, label)
class ListSingleField(ListField, StringField):
@ -469,7 +469,7 @@ class JidMultiField(ListMultiField):
Covers jid-multi fields
"""
def is_valid(self):
if len(self.values):
if self.values:
for value in self.values:
try:
helpers.parse_jid(value)
@ -526,7 +526,7 @@ class DataRecord(ExtendedNode):
if fields is None:
for field in self.iterTags('field'):
if not isinstance(field, DataField):
ExtendField(field)
extend_field(field)
self.vars[field.var] = field
else:
for field in self.getTags('field'):
@ -545,7 +545,7 @@ class DataRecord(ExtendedNode):
del self.fields
for field in fields:
if not isinstance(field, DataField):
ExtendField(field)
extend_field(field)
self.addChild(node=field)
@fields.deleter
@ -572,8 +572,8 @@ class DataRecord(ExtendedNode):
return self.vars[item]
def is_valid(self):
for f in self.iter_fields():
if not f.is_valid():
for field in self.iter_fields():
if not field.is_valid():
return False
return True
@ -660,27 +660,29 @@ class SimpleDataForm(DataForm, DataRecord):
DataRecord.__init__(self, fields=fields, extend=self, associated=self)
def get_purged(self):
c = SimpleDataForm(extend=self)
del c.title
c.instructions = ''
simple_form = SimpleDataForm(extend=self)
del simple_form.title
simple_form.instructions = ''
to_be_removed = []
for f in c.iter_fields():
if f.required:
for field in simple_form.iter_fields():
if field.required:
# add <value> if there is not
if hasattr(f, 'value') and not f.value:
f.value = ''
if hasattr(field, 'value') and not field.value:
field.value = ''
# Keep all required fields
continue
if ((hasattr(f, 'value') and not f.value and f.value != 0) or
(hasattr(f, 'values') and len(f.values) == 0)):
to_be_removed.append(f)
if ((hasattr(field, 'value') and
not field.value and
field.value != 0) or
(hasattr(field, 'values') and not field.values)):
to_be_removed.append(field)
else:
del f.label
del f.description
del f.media
for f in to_be_removed:
c.delChild(f)
return c
del field.label
del field.description
del field.media
for field in to_be_removed:
simple_form.delChild(field)
return simple_form
class MultipleDataForm(DataForm):

View File

@ -130,7 +130,7 @@ class MUC:
for form in payload:
if form.getNamespace() == nbxmpp.NS_DATA:
dataform = dataforms.ExtendForm(node=form)
dataform = dataforms.extend_form(node=form)
log.info('Config form received for %s', room_jid)
app.nec.push_incoming_event(MucOwnerReceivedEvent(
None,

View File

@ -211,10 +211,10 @@ class AbstractPEPData:
return other == self.type_
def __bool__(self):
return self._pep_specific_data is not None
return self.data is not None
def __str__(self):
return str(self._pep_specific_data)
return str(self.data)
class PEPReceivedEvent(NetworkIncomingEvent):

View File

@ -138,15 +138,15 @@ class Presence:
if not app.account_is_connected(self._account):
return
if remove_auth:
self._con.getRoster().delItem(jid)
self._con.getRoster().del_item(jid)
jid_list = app.config.get_per('contacts')
for j in jid_list:
if j.startswith(jid):
app.config.del_per('contacts', j)
else:
log.info('Unsubscribe from %s', jid)
self._con.getRoster().Unsubscribe(jid)
self._con.getRoster().setItem(jid)
self._con.getRoster().unsubscribe(jid)
self._con.getRoster().set_item(jid)
def subscribe(self, jid, msg=None, name='', groups=None, auto_auth=False):
if not app.account_is_connected(self._account):

View File

@ -254,7 +254,7 @@ class PubSub:
app.nec.push_incoming_event(PubSubConfigReceivedEvent(
None, conn=self._con, node=node,
form=dataforms.ExtendForm(node=form)))
form=dataforms.extend_form(node=form)))
@staticmethod
def _default_callback(_con, stanza, *args, **kwargs):

View File

@ -45,7 +45,7 @@ class Roster:
account_jid = self._con.get_own_jid().getStripped()
data = app.logger.get_roster(account_jid)
if data:
self.setRaw(data)
self.set_raw(data)
for jid, item in self._data.items():
app.nec.push_incoming_event(NetworkEvent(
'roster-info',
@ -170,7 +170,7 @@ class Roster:
attrs = item.getAttrs()
del attrs['jid']
groups = set([group.getData() for group in item.getTags('group')])
groups = {group.getData() for group in item.getTags('group')}
attrs['groups'] = list(groups)
if update:
@ -241,14 +241,14 @@ class Roster:
self._data[jid]['ask'],
self._data[jid]['groups'])
def _getItemData(self, jid, dataname):
def _get_item_data(self, jid, dataname):
"""
Return specific jid's representation in internal format.
"""
jid = jid[:(jid + '/').find('/')]
return self._data[jid][dataname]
def delItem(self, jid):
def del_item(self, jid):
"""
Delete contact 'jid' from roster
"""
@ -256,19 +256,19 @@ class Roster:
nbxmpp.Iq('set', nbxmpp.NS_ROSTER, payload=[
nbxmpp.Node('item', {'jid': jid, 'subscription': 'remove'})]))
def getGroups(self, jid):
def get_groups(self, jid):
"""
Return groups list that contact 'jid' belongs to
"""
return self._getItemData(jid, 'groups')
return self._get_item_data(jid, 'groups')
def getName(self, jid):
def get_name(self, jid):
"""
Return name of contact 'jid'
"""
return self._getItemData(jid, 'name')
return self._get_item_data(jid, 'name')
def setItem(self, jid, name=None, groups=None):
def set_item(self, jid, name=None, groups=None):
"""
Rename contact 'jid' and sets the groups list that it now belongs to
"""
@ -283,7 +283,7 @@ class Roster:
item.addChild(node=nbxmpp.Node('group', payload=[group]))
self._con.connection.send(iq)
def setItemMulti(self, items):
def set_item_multi(self, items):
"""
Rename multiple contacts and sets their group lists
"""
@ -298,7 +298,7 @@ class Roster:
item.addChild(node=nbxmpp.Node('group', payload=[group]))
self._con.connection.send(iq)
def getItems(self):
def get_items(self):
"""
Return list of all [bare] JIDs that the roster is currently tracks
"""
@ -306,7 +306,7 @@ class Roster:
def keys(self):
"""
Same as getItems. Provided for the sake of dictionary interface
Same as get_items. Provided for the sake of dictionary interface
"""
return list(self._data.keys())
@ -317,7 +317,7 @@ class Roster:
"""
return self._data[item]
def getItem(self, item):
def get_item(self, item):
"""
Get the contact in the internal format (or None if JID 'item' is not in
roster)
@ -325,19 +325,19 @@ class Roster:
if item in self._data:
return self._data[item]
def Unsubscribe(self, jid):
def unsubscribe(self, jid):
"""
Ask for removing our subscription for JID 'jid'
"""
self._con.connection.send(nbxmpp.Presence(jid, 'unsubscribe'))
def getRaw(self):
def get_raw(self):
"""
Return the internal data representation of the roster
"""
return self._data
def setRaw(self, data):
def set_raw(self, data):
"""
Set the internal data representation of the roster
"""

View File

@ -31,10 +31,10 @@ class UserActivityData(AbstractPEPData):
type_ = PEPEventType.ACTIVITY
def __init__(self, activity):
self._pep_specific_data = activity
self.data = activity
def asMarkupText(self):
pep = self._pep_specific_data
pep = self.data
activity = pep['activity']
subactivity = pep['subactivity'] if 'subactivity' in pep else None
text = pep['text'] if 'text' in pep else None

View File

@ -33,7 +33,7 @@ class UserAvatarData(AbstractPEPData):
type_ = PEPEventType.AVATAR
def __init__(self, avatar):
self._pep_specific_data = avatar
self.data = avatar
class UserAvatar(AbstractPEPModule):
@ -124,7 +124,7 @@ class UserAvatar(AbstractPEPModule):
return avatar or None
def _notification_received(self, jid, user_pep):
avatar = user_pep._pep_specific_data
avatar = user_pep.data
own_jid = self._con.get_own_jid()
if avatar is None:
# Remove avatar

View File

@ -31,10 +31,12 @@ class UserLocationData(AbstractPEPData):
type_ = PEPEventType.LOCATION
def __init__(self, location):
# set_location plugin uses self._pep_specific_data
self._pep_specific_data = location
self.data = location
def asMarkupText(self):
location = self._pep_specific_data
location = self.data
location_string = ''
for entry in location.keys():

View File

@ -31,13 +31,13 @@ class UserMoodData(AbstractPEPData):
type_ = PEPEventType.MOOD
def __init__(self, mood):
self._pep_specific_data = mood
self.data = mood
def asMarkupText(self):
mood = self._translate_mood(self._pep_specific_data['mood'])
mood = self._translate_mood(self.data['mood'])
markuptext = '<b>%s</b>' % GLib.markup_escape_text(mood)
if 'text' in self._pep_specific_data:
text = self._pep_specific_data['text']
if 'text' in self.data:
text = self.data['text']
markuptext += ' (%s)' % GLib.markup_escape_text(text)
return markuptext

View File

@ -31,10 +31,10 @@ class UserNicknameData(AbstractPEPData):
type_ = PEPEventType.NICKNAME
def __init__(self, nickname):
self._pep_specific_data = nickname
self.data = nickname
def get_nick(self):
return self._pep_specific_data or ''
return self.data or ''
class UserNickname(AbstractPEPModule):

View File

@ -31,10 +31,10 @@ class UserTuneData(AbstractPEPData):
type_ = PEPEventType.TUNE
def __init__(self, tune):
self._pep_specific_data = tune
self.data = tune
def asMarkupText(self):
tune = self._pep_specific_data
tune = self.data
artist = tune.get('artist', _('Unknown Artist'))
artist = GLib.markup_escape_text(artist)

View File

@ -40,7 +40,7 @@ class AbstractPEP(object):
return None
def __init__(self, jid, account, items):
self._pep_specific_data, self._retracted = self._extract_info(items)
self.data, self._retracted = self._extract_info(items)
self._update_contacts(jid, account)
if jid == app.get_jid_from_account(account):

View File

@ -1554,7 +1554,7 @@ class DataFormWindow(Dialog):
self.set_resizable(True)
gtkgui_helpers.resize_window(self, 600, 400)
self.dataform_widget = dataforms_widget.DataFormWidget()
self.dataform = dataforms.ExtendForm(node=form)
self.dataform = dataforms.extend_form(node=form)
self.dataform_widget.set_sensitive(True)
self.dataform_widget.data_form = self.dataform
self.dataform_widget.show_all()

View File

@ -1200,7 +1200,7 @@ class GroupchatControl(ChatControlBase):
self.form_widget.hide()
self.form_widget.destroy()
self.btn_box.destroy()
dataform = dataforms.ExtendForm(node=obj.captcha_form)
dataform = dataforms.extend_form(node=obj.captcha_form)
self.form_widget = dataforms_widget.DataFormWidget(dataform)
def on_send_dataform_clicked(widget):

View File

@ -371,7 +371,7 @@ class AccountCreationWizard:
self.is_form = obj.is_form
empty_config = True
if obj.is_form:
dataform = dataforms.ExtendForm(node=obj.config)
dataform = dataforms.extend_form(node=obj.config)
self.data_form_widget = dataforms_widget.DataFormWidget()
self.data_form_widget.selectable = True
self.data_form_widget.set_data_form(dataform)

View File

@ -86,7 +86,7 @@ class ServiceRegistration(Gtk.Assistant):
log.info('Show Form page')
self._is_form = is_form
if is_form:
dataform = dataforms.ExtendForm(node=form)
dataform = dataforms.extend_form(node=form)
self._data_form_widget = DataFormWidget(dataform)
else:
from gajim import config

View File

@ -79,7 +79,7 @@ class SingleMessageWindow:
parent_box = self.xml.get_object('conversation_scrolledwindow').\
get_parent()
if form_node:
dataform = dataforms.ExtendForm(node=form_node)
dataform = dataforms.extend_form(node=form_node)
dataform.type_ = 'submit'
self.form_widget = DataFormWidget(dataform)
self.form_widget.show_all()

View File

@ -607,7 +607,7 @@ def load_activity_icon(category, activity = None):
def get_pep_as_pixbuf(pep_class):
if pep_class == PEPEventType.MOOD:
received_mood = pep_class._pep_specific_data['mood']
received_mood = pep_class.data['mood']
mood = received_mood if received_mood in MOODS else 'unknown'
pixbuf = load_mood_icon(mood).get_pixbuf()
return pixbuf
@ -619,7 +619,7 @@ def get_pep_as_pixbuf(pep_class):
return GdkPixbuf.Pixbuf.new_from_file(path)
return icon
elif pep_class == PEPEventType.ACTIVITY:
pep_ = pep_class._pep_specific_data
pep_ = pep_class.data
activity = pep_['activity']
has_known_activity = activity in ACTIVITIES

View File

@ -2432,7 +2432,7 @@ class Interface:
@staticmethod
def get_pep_icon(pep_obj):
if pep_obj == PEPEventType.MOOD:
received_mood = pep_obj._pep_specific_data['mood']
received_mood = pep_obj.data['mood']
mood = received_mood if received_mood in MOODS else 'unknown'
return gtkgui_helpers.load_mood_icon(mood).get_pixbuf()
elif pep_obj == PEPEventType.TUNE:
@ -2440,7 +2440,7 @@ class Interface:
configpaths.get('DATA'), 'emoticons', 'static', 'music.png')
return GdkPixbuf.Pixbuf.new_from_file(path)
elif pep_obj == PEPEventType.ACTIVITY:
pep_ = pep_obj._pep_specific_data
pep_ = pep_obj.data
activity = pep_['activity']
has_known_activity = activity in ACTIVITIES

View File

@ -136,7 +136,7 @@ class SearchWindow:
if obj.is_dataform:
self.is_form = True
self.data_form_widget = dataforms_widget.DataFormWidget()
self.dataform = dataforms.ExtendForm(node=obj.data)
self.dataform = dataforms.extend_form(node=obj.data)
self.data_form_widget.set_sensitive(True)
try:
self.data_form_widget.data_form = self.dataform
@ -208,7 +208,7 @@ class SearchWindow:
self.information_button.show()
return
self.dataform = dataforms.ExtendForm(node=obj.data)
self.dataform = dataforms.extend_form(node=obj.data)
if len(self.dataform.items) == 0:
# No result
self.label.set_text(_('No result'))