76 lines
		
	
	
	
		
			2.4 KiB
		
	
	
	
		
			Elixir
		
	
	
	
	
	
			
		
		
	
	
			76 lines
		
	
	
	
		
			2.4 KiB
		
	
	
	
		
			Elixir
		
	
	
	
	
	
| <div>
 | |
|   <div class="p-author h-card">
 | |
|     <a class="u-url" rel="author noopener" href="<%= @author.ap_id %>">
 | |
|       <div class="avatar">
 | |
|         <img src="<%= User.avatar_url(@author) |> MediaProxy.url %>" width="48" height="48" alt="">
 | |
|       </div>
 | |
|       <span class="display-name" style="padding-left: 0.5em;">
 | |
|         <bdi><%= raw (@author.name |> Formatter.emojify(@author.emoji)) %></bdi>
 | |
|         <span class="nickname">@<%= full_nickname(@author) %></span>
 | |
|       </span>
 | |
|     </a>
 | |
|   </div>
 | |
| 
 | |
|   <div class="activity-content" >
 | |
|     <%= if status_title(@activity) != "" do %>
 | |
|       <details <%= if open_content?() do %>open<% end %>>
 | |
|         <summary><%= raw status_title(@activity) %></summary>
 | |
|         <div><%= activity_content(@activity) %></div>
 | |
|       </details>
 | |
|     <% else %>
 | |
|       <div><%= activity_content(@activity) %></div>
 | |
|     <% end %>
 | |
|     <%= for %{"name" => name, "url" => [url | _]} <- attachments(@activity) do %>
 | |
|       <div class="attachment">
 | |
|       <%= if sensitive?(@activity) do %>
 | |
|         <details class="nsfw">
 | |
|           <summary onClick="updateHeight()"><%= Gettext.gettext("sensitive media") %></summary>
 | |
|           <div class="nsfw-content">
 | |
|             <%= render("_attachment.html", %{name: name, url: url["href"],
 | |
|                                              mediaType: fetch_media_type(url)}) %>
 | |
|           </div>
 | |
|         </details>
 | |
|       <% else %>
 | |
|         <%= render("_attachment.html", %{name: name, url: url["href"],
 | |
|                                          mediaType: fetch_media_type(url)}) %>
 | |
|       <% end %>
 | |
|       </div>
 | |
|     <% end %>
 | |
|   </div>
 | |
| 
 | |
|   <dl class="counts pull-right">
 | |
|     <dt><%= Gettext.gettext("replies") %></dt><dd><%= @counts.replies %></dd>
 | |
|     <dt><%= Gettext.gettext("announces") %></dt><dd><%= @counts.announces %></dd>
 | |
|     <dt><%= Gettext.gettext("likes") %></dt><dd><%= @counts.likes %></dd>
 | |
|   </dl>
 | |
| 
 | |
|   <p class="date pull-left">
 | |
|     <%= link published(@activity), to: activity_url(@author, @activity) %>
 | |
|   </p>
 | |
| </div>
 | |
| 
 | |
| <script>
 | |
| function updateHeight() {
 | |
|   window.requestAnimationFrame(function(){
 | |
|     var height = document.getElementsByTagName('html')[0].scrollHeight;
 | |
| 
 | |
|     window.parent.postMessage({
 | |
|       type: 'setHeightPleromaEmbed',
 | |
|       id: window.parentId,
 | |
|       height: height,
 | |
|     }, '*');
 | |
|   })
 | |
| }
 | |
| 
 | |
| window.addEventListener('message', function(e){
 | |
|   var data = e.data || {};
 | |
| 
 | |
|   if (!window.parent || data.type !== 'setHeightPleromaEmbed') {
 | |
|     return;
 | |
|   }
 | |
| 
 | |
|   window.parentId = data.id
 | |
| 
 | |
|   updateHeight()
 | |
| });
 | |
| </script>
 | 
