Showing a customer's picture on the card

Attio has no image or file attribute type. Its own picture fields are text attributes holding a web address, and a workspace that keeps a picture in a custom field keeps it in a text field too, because there is nothing else to keep it in.

That is why nominating the picture is its own control rather than another tick box, and why it asks two questions instead of one. The Picture panel on the Fields step holds both. Answer one without the other and nothing appears.

#Nominating the attribute that holds the address

Every row that could hold an image address carries an Image button on the right, in its own column. Pressing it nominates that attribute as the record's picture; pressing the lit one again clears it. Only text attributes are offered, for the reason above.

The attribute does not have to be on the card. That is the whole point of the separate column, and the panel says so before you choose: "Choose the Image button beside the attribute holding an image URL. Any text attribute can be it, ticked or not, so the URL itself never has to appear on the card." Once something is nominated, its row reads "Holds the picture. Choose it again to clear it."

#Saying where the picture goes

The second control is a "Show it beside" dropdown naming which row on the card the picture sits next to. It offers the attributes that are on the card, plus "Do not show a picture". Until both halves can be answered it is unavailable and says which one is missing, rather than sitting there dead: "Choose the attribute holding the image URL in the Image column first.", or "Tick at least one attribute. A picture sits beside a row that is on the card."

With both answered, the panel confirms it: "This customer's picture is showing beside that row." Unticking the row the picture is anchored to, or clearing the nomination, also clears the placement, so no setting is left pointing at nothing. A field holding several values gets one picture rather than one per value, and only one field on a card ever carries it.

Setting

What it does

Image button on a row

Nominates that attribute as the record's picture. Text attributes only. The attribute does not have to be ticked.

Image button on the lit row

Clears the nomination. The panel then reads "Nothing holds the picture."

"Show it beside"

Names the row on the card that the picture sits next to. Only attributes already on the card are offered.

"Do not show a picture"

Keeps the nomination but draws no picture on the card.

#What the agent actually sees

Situation

On the card

The nominated attribute holds a usable web address

The picture, beside the chosen row.

This record has nothing in the nominated attribute

A coloured circle of initials in the same place, so the rows keep their indent.

The address is dead, too large, blocked, or turns out not to be an image

The same initials circle. There is never a broken-image glyph and never an error on the card.

The nominated attribute holds something that is not a plain web address

Initials again. A text attribute holding a note to a colleague rather than an address is ordinary content in a CRM.

The object nominates no picture attribute at all

No circle anywhere.

Initials are the first letter of each of the first two words, so "Jane Roe" gives JR and "Acme" gives a single A rather than an invented second letter. Leading punctuation such as a bracket or a quotation mark at the start of a name is skipped. The colour is derived from the initials themselves, so the same initials always get the same colour and two records with the same initials share one.

While a picture is being fetched the initials are shown, and the picture replaces them in the same box when the bytes arrive, so nothing moves and nothing is visibly waiting. Pictures and initials circles are hidden from screen readers, because each sits immediately beside the name it belongs to and announcing it would repeat that name.

#Linked records carry their own picture

A linked object's attribute list has its own Image column, so a company drawn inside a person's card can show its logo beside its name. Like the other linked-record choices it is stored against the linked object, which means setting it once applies everywhere that object is linked from.

You can see the result before you save. The Fields list draws the picture in the value column beside the row it belongs to, and draws the small linked-record card the same way the issue will.


#A few things worth knowing

  • Do not also tick the attribute holding the address. A text attribute whose value is a web address is printed as that address, as a link, wrapped across several lines of a narrow panel, with no picture beside it. Nominate it in the Image column and leave it out of the chosen fields: that is the supported way to get the face without the machine address.

  • Only one attribute per object can hold the picture, and the Image column is a single choice spread across both lists. Nominating a second row silently un-nominates whichever row held it before, even when that row is scrolled out of sight.

  • A picture that will not load looks exactly like a record that never had one: both are initials, and nothing is reported on the card or anywhere else. A failed address is not tried again while the issue stays open, so reload the issue before concluding the address is wrong.



Nominate the attribute, leave it off the card, and nobody ever reads a hash out loud.