30 lines
		
	
	
		
			759 B
		
	
	
	
		
			PHP
		
	
	
	
			
		
		
	
	
			30 lines
		
	
	
		
			759 B
		
	
	
	
		
			PHP
		
	
	
	
| <?php
 | |
| 
 | |
| namespace BookStack\Activity\Notifications\MessageParts;
 | |
| 
 | |
| use BookStack\Entities\Models\Entity;
 | |
| use Illuminate\Contracts\Support\Htmlable;
 | |
| use Stringable;
 | |
| 
 | |
| /**
 | |
|  * A link to a specific entity in the system, with the text showing its name.
 | |
|  */
 | |
| class EntityLinkMessageLine implements Htmlable, Stringable
 | |
| {
 | |
|     public function __construct(
 | |
|         protected Entity $entity,
 | |
|         protected int $nameLength = 120,
 | |
|     ) {
 | |
|     }
 | |
| 
 | |
|     public function toHtml(): string
 | |
|     {
 | |
|         return '<a href="' . e($this->entity->getUrl()) . '">' . e($this->entity->getShortName($this->nameLength)) . '</a>';
 | |
|     }
 | |
| 
 | |
|     public function __toString(): string
 | |
|     {
 | |
|         return "{$this->entity->getShortName($this->nameLength)} ({$this->entity->getUrl()})";
 | |
|     }
 | |
| }
 |