예제 #1
0
    def save(self):
        """
        Save the form headings to the database.
        """
        new_list = []
        for attr in self.event.get_attribute_list():
            if attr.get_type() not in self.heading_list:
                new_list.append(attr)

        for row in self.model:
            if row[1]:
                attr = Attribute()
                attr.set_type(row[0])
                attr.set_value(row[1])
                attr.add_citation(self.citation.handle)
                new_list.append(attr)

        self.event.set_attribute_list(new_list)
예제 #2
0
    def save(self):
        """
        Save the form headings to the database.
        """
        new_list = []
        for attr in self.event.get_attribute_list():
            if attr.get_type() not in self.heading_list:
                new_list.append(attr)

        for row in self.model:
            if row[1]:
                attr = Attribute()
                attr.set_type(row[0])
                attr.set_value(row[1])
                attr.add_citation(self.citation.handle)
                new_list.append(attr)

        self.event.set_attribute_list(new_list)
예제 #3
0
def set_attribute(citation, event_ref, name, value):
    """
    Set a named attribute to a given value.  Create the attribute if it
    does not already exist.  Delete it if the value is None or ''.
    """
    attrs = event_ref.get_attribute_list()
    attr = get_attribute(attrs, name)
    if attr is None:
        if value:
            # Add
            attr = Attribute()
            attr.set_type(name)
            attr.set_value(value)
            attr.add_citation(citation.handle)
            if name == ORDER_ATTR:
                attr.set_privacy(True)
            event_ref.add_attribute(attr)
    else:
        if not value:
            # Remove
            event_ref.remove_attribute(attr)
        elif attr.get_value() != value:
            # Update
            attr.set_value(value)
예제 #4
0
def set_attribute(citation, event_ref, name, value):
    """
    Set a named attribute to a given value.  Create the attribute if it
    does not already exist.  Delete it if the value is None or ''.
    """
    attrs = event_ref.get_attribute_list()
    attr = get_attribute(attrs, name)
    if attr is None:
        if value:
            # Add
            attr = Attribute()
            attr.set_type(name)
            attr.set_value(value)
            attr.add_citation(citation.handle)
            if name == ORDER_ATTR:
                attr.set_privacy(True)
            event_ref.add_attribute(attr)
    else:
        if not value:
            # Remove
            event_ref.remove_attribute(attr)
        elif attr.get_value() != value:
            # Update
            attr.set_value(value)