Add UI for set Album thumbnail, display in hierarchy_self.
This commit is contained in:
		
							parent
							
								
									b0f8414c11
								
							
						
					
					
						commit
						6a41e4b0f1
					
				
					 1 changed files with 61 additions and 9 deletions
				
			
		|  | @ -7,12 +7,33 @@ h2, h3 | ||||||
| { | { | ||||||
|     margin-top: 0; |     margin-top: 0; | ||||||
| } | } | ||||||
|  | #hierarchy_self | ||||||
|  | { | ||||||
|  |     display: grid; | ||||||
|  |     grid-template: | ||||||
|  |         "metadata thumbnail" auto | ||||||
|  |         /1fr      auto; | ||||||
|  | } | ||||||
|  | #album_metadata | ||||||
|  | { | ||||||
|  |     grid-area: metadata; | ||||||
|  |     word-break: break-word; | ||||||
|  | } | ||||||
|  | #album_thumbnail | ||||||
|  | { | ||||||
|  |     grid-area: thumbnail; | ||||||
|  |     align-self: center; | ||||||
|  | } | ||||||
|  | #album_thumbnail img | ||||||
|  | { | ||||||
|  |     max-height: 150px; | ||||||
|  | } | ||||||
| #album_metadata h2 .editor_input | #album_metadata h2 .editor_input | ||||||
| { | { | ||||||
|     font-size: inherit; |     font-size: inherit; | ||||||
|     font-weight: inherit; |     font-weight: inherit; | ||||||
| } | } | ||||||
| #description_text | #album_metadata #description_text | ||||||
| { | { | ||||||
|     font-family: initial; |     font-family: initial; | ||||||
|     padding: 8px; |     padding: 8px; | ||||||
|  | @ -129,6 +150,8 @@ const ALBUM_ID = undefined; | ||||||
|     <script src="/static/js/common.js"></script> |     <script src="/static/js/common.js"></script> | ||||||
|     <script src="/static/js/api.js"></script> |     <script src="/static/js/api.js"></script> | ||||||
|     <script src="/static/js/album_autocomplete.js"></script> |     <script src="/static/js/album_autocomplete.js"></script> | ||||||
|  |     <script src="/static/js/cards.js"></script> | ||||||
|  |     <script src="/static/js/contextmenus.js"></script> | ||||||
|     <script src="/static/js/spinner.js"></script> |     <script src="/static/js/spinner.js"></script> | ||||||
|     <script src="/static/js/editor.js"></script> |     <script src="/static/js/editor.js"></script> | ||||||
|     <script src="/static/js/hotkeys.js"></script> |     <script src="/static/js/hotkeys.js"></script> | ||||||
|  | @ -215,15 +238,20 @@ const ALBUM_ID = undefined; | ||||||
|                 > |                 > | ||||||
|                     {{-album.description-}} |                     {{-album.description-}} | ||||||
|                 </pre> |                 </pre> | ||||||
|  | 
 | ||||||
|  |                 {% set author = album.get_author() %} | ||||||
|  |                 {% if author is not none %} | ||||||
|  |                 <p>Author: <a href="/user/{{author.username}}">{{author.display_name}}</a></p> | ||||||
|  |                 {% endif %} | ||||||
|  | 
 | ||||||
|  |                 <p>Created on <span title="{{album.created|int|timestamp_to_8601}}">{{album.created|timestamp_to_naturaldate}}.</span></p> | ||||||
|  |                 <button class="green_button editor_toolbox_placeholder">Edit</button> | ||||||
|  |             </div> <!-- #album_metadata --> | ||||||
|  |             <div id="album_thumbnail"> | ||||||
|  |                 {%- if album.thumbnail_photo %} | ||||||
|  |                 <img src="/thumbnail/{{album.thumbnail_photo.id}}.jpg"/> | ||||||
|  |                 {% endif -%} | ||||||
|             </div> |             </div> | ||||||
| 
 |  | ||||||
|             {% set author = album.get_author() %} |  | ||||||
|             {% if author is not none %} |  | ||||||
|             <p>Author: <a href="/user/{{author.username}}">{{author.display_name}}</a></p> |  | ||||||
|             {% endif %} |  | ||||||
| 
 |  | ||||||
|             <p>Created on <span title="{{album.created|int|timestamp_to_8601}}">{{album.created|timestamp_to_naturaldate}}.</span></p> |  | ||||||
|             <button class="green_button editor_toolbox_placeholder">Edit</button> |  | ||||||
|         </div> |         </div> | ||||||
| 
 | 
 | ||||||
|         <div id="hierarchy_parents" class="panel"> |         <div id="hierarchy_parents" class="panel"> | ||||||
|  | @ -396,6 +424,30 @@ function add_album_datalist_on_load(datalist) | ||||||
|     input.setAttribute("list", "album_autocomplete_datalist"); |     input.setAttribute("list", "album_autocomplete_datalist"); | ||||||
| } | } | ||||||
| album_autocomplete.on_load_hooks.push(add_album_datalist_on_load); | album_autocomplete.on_load_hooks.push(add_album_datalist_on_load); | ||||||
|  | 
 | ||||||
|  | function add_photo_toolbox_entries() | ||||||
|  | { | ||||||
|  |     const photo_cards = document.getElementsByClassName("photo_card"); | ||||||
|  |     for (const photo_card of photo_cards) | ||||||
|  |     { | ||||||
|  |         const photo_id = photo_card.dataset.id; | ||||||
|  |         const toolbox = photo_card.getElementsByClassName("photo_card_tools")[0]; | ||||||
|  |         const toolbutton = photo_card.getElementsByClassName("photo_card_toolbutton")[0]; | ||||||
|  |         toolbutton.classList.remove("hidden"); | ||||||
|  |         const button = document.createElement("button"); | ||||||
|  |         button.innerText = "Set as Album thumbnail"; | ||||||
|  |         button.onclick = function(event) | ||||||
|  |         { | ||||||
|  |             api.albums.set_thumbnail_photo(ALBUM_ID, photo_id, common.refresh_or_alert); | ||||||
|  |         } | ||||||
|  |         toolbox.appendChild(button); | ||||||
|  |     } | ||||||
|  | } | ||||||
|  | function on_pageload() | ||||||
|  | { | ||||||
|  |     add_photo_toolbox_entries(); | ||||||
|  | } | ||||||
|  | document.addEventListener("DOMContentLoaded", on_pageload); | ||||||
| </script> | </script> | ||||||
| 
 | 
 | ||||||
| {% endif %} {## Shared ############################################################################} | {% endif %} {## Shared ############################################################################} | ||||||
|  |  | ||||||
		Loading…
	
		Reference in a new issue