Example #1
0
    def build_element(link_type, label):

        # find item which is desired
        link_text = None
        if label.find(':') != -1:
            link_text = label[label.find(':') + 1:]
            label = label[:label.find(':')]

        result = Globals.get_url_by_name(label, link_type)
        item = result[0]
        item_field = result[1]
        a = etree.Element('a')
        a.set('data-href', 'Alink')

        if item_field:
            a.text = link_text or item_field.href_name
            a.set('href', '#{item_field.href_id}'.format(item_field=item_field))

        elif item:
            a.text = link_text or item.href_name
            a.set('href', '#{item.href_id}'.format(item=item))
        else:
            Logger.instance().warning('Link not found %s %s' % (link_type, label))
            return ''
        a.set('text', a.text)
        return a
Example #2
0
    def build_element(link_type, label):

        # find item which is desired
        link_text = None
        if label.find(':') != -1:
            link_text = label[label.find(':') + 1:]
            label = label[:label.find(':')]

        result = Globals.get_url_by_name(label, link_type)
        item = result[0]
        item_field = result[1]
        a = etree.Element('a')
        a.set('data-href', 'Alink')

        if item_field:
            a.text = link_text or item_field.href_name
            a.set('href', '#{item_field.href_id}'.format(item_field=item_field))

        elif item:
            a.text = link_text or item.href_name
            a.set('href', '#{item.href_id}'.format(item=item))
        else:
            Logger.instance().warning('Link not found %s %s' % (link_type, label))
            return ''
        a.set('text', a.text)
        return a
Example #3
0
    def parse(self, json_data={}):
        for field in self.__fields__:
            value = field.parse(json_data)

            if field.link_to_parent:
                if getattr(value, '__iter__', None):
                    for v in value:
                        if v:
                            v.set_parent(self)
                else:
                    if value:
                        value.set_parent(self)

            if field.index:
                if value:
                    unique_name = Globals.save(value, self)
                    if value != unique_name:
                        self.unique_name = unique_name

            self.__setattr__(field.save_as, value)
        return self
Example #4
0
    def parse(self, json_data={}):
        for field in self.__fields__:
            value = field.parse(json_data)

            if field.link_to_parent:
                if getattr(value, '__iter__', None):
                    for v in value:
                        if v:
                            v.set_parent(self)
                else:
                    if value:
                        value.set_parent(self)

            if field.index:
                if value:
                    unique_name = Globals.save(value, self)
                    if value != unique_name:
                        self.unique_name = unique_name

            self.__setattr__(field.save_as, value)
        return self
Example #5
0
    def build_element (self, type, label):
        if type.lower () == 'attribute':
            p = etree.Element ('p')
            p.text = 'attribute value here'
            return p

        if type.lower () in ('record', 'abstractrecord', 'selection', 'r', 'a', 's', 'ar'):

            # find item which is desired
            (name, type, link) = Globals.get_url_by_name (label)
            if not link:
                return None

            a = etree.Element ('a')
            a.text = '{name} ({type})'.format (name=name, type=type)
            a.set ('data-href', 'Alink')
            a.set ('href', link)
            a.set ('data-ns', 'IT::')
            return a

        print 'unknown type'
        return None
Example #6
0
    def build_element (self, type, label):
        if type.lower () == 'attribute':
            p = etree.Element ('p')
            p.text = 'attribute value here'
            return p

        if type.lower () in ('record', 'abstractrecord', 'selection', 'r', 'a', 's', 'ar'):

            # find item which is desired
            (name, type, link) = Globals.get_url_by_name (label)
            if not link:
                return None

            a = etree.Element ('a')
            a.text = '{name} ({type})'.format (name=name, type=type)
            a.set ('data-href', 'Alink')
            a.set ('href', link)
            a.set ('data-ns', 'IT::')
            return a

        print 'unknown type'
        return None