INNER CODE UNIT · Python
assign_attrs
pingbird/puro · website/pm_attr_list.py:183
def assign_attrs(self, elem, attrs, parent=None):
""" Assign attrs to element. """
# print('assign_attrs(%s, %s, %s)' % (elem, attrs, parent))
apply_elem = elem
for k, v in get_attrs(attrs):
if k == '.':
# add to class
cls = apply_elem.get('class')
if cls:
apply_elem.set('class', '{} {}'.format(cls, v))
else:
apply_elem.set('class', v)
elif k == '^' and parent is not None:
# set remaining attributes on parent
apply_elem = parent
else:
# assign attr k with v
apply_elem.set(self.sanitize_name(k), v)