mirror of
				https://git.sr.ht/~tsileo/microblog.pub
				synced 2025-06-05 21:59:23 +02:00 
			
		
		
		
	Add option to set image_url ("background image") for user
While this option is not used anywhere in microblog.pub itself, some
other servers do occasionally use it when showing remote profiles.
Also, this image _can_ be used in microblog.pub - just add this:
	<img src="{{ local_actor.image_url }}">
in the appropriate place of your template!
			
			
This commit is contained in:
		
				
					committed by
					
						 Thomas Sileo
						Thomas Sileo
					
				
			
			
				
	
			
			
			
						parent
						
							4c995957a6
						
					
				
				
					commit
					4613997fe3
				
			| @@ -154,6 +154,12 @@ if ALSO_KNOWN_AS: | ||||
| if MOVED_TO: | ||||
|     ME["movedTo"] = MOVED_TO | ||||
|  | ||||
| if config.CONFIG.image_url: | ||||
|     ME["image"] = { | ||||
|         "mediaType": mimetypes.guess_type(config.CONFIG.image_url)[0], | ||||
|         "type": "Image", | ||||
|         "url": config.CONFIG.image_url, | ||||
|     } | ||||
|  | ||||
| class NotAnObjectError(Exception): | ||||
|     def __init__(self, url: str, resp: httpx.Response | None = None) -> None: | ||||
|   | ||||
| @@ -88,6 +88,10 @@ class Actor: | ||||
|     def icon_media_type(self) -> str | None: | ||||
|         return self.ap_actor.get("icon", {}).get("mediaType") | ||||
|  | ||||
|     @property | ||||
|     def image_url(self) -> str | None: | ||||
|         return self.ap_actor.get("image", {}).get("url") | ||||
|  | ||||
|     @property | ||||
|     def public_key_as_pem(self) -> str: | ||||
|         return self.ap_actor["publicKey"]["publicKeyPem"] | ||||
| @@ -381,6 +385,9 @@ def _actor_hash(actor: Actor) -> bytes: | ||||
|     if actor.icon_url: | ||||
|         h.update(actor.icon_url.encode()) | ||||
|  | ||||
|     if actor.image_url: | ||||
|         h.update(actor.image_url.encode()) | ||||
|  | ||||
|     if actor.attachments: | ||||
|         for a in actor.attachments: | ||||
|             if a.get("type") != "PropertyValue": | ||||
|   | ||||
| @@ -92,6 +92,7 @@ class Config(pydantic.BaseModel): | ||||
|     summary: str | ||||
|     https: bool | ||||
|     icon_url: str | ||||
|     image_url: str | ||||
|     secret: str | ||||
|     debug: bool = False | ||||
|     trusted_hosts: list[str] = ["127.0.0.1"] | ||||
|   | ||||
		Reference in New Issue
	
	Block a user