mirror of
				https://github.com/zadam/trilium.git
				synced 2025-10-31 18:36:30 +01:00 
			
		
		
		
	basic recent changes implementation
This commit is contained in:
		
							
								
								
									
										56
									
								
								static/js/recent_changes.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										56
									
								
								static/js/recent_changes.js
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,56 @@ | ||||
| $(document).bind('keydown', 'alt+r', function() { | ||||
|     $("#recentChangesDialog").dialog({ | ||||
|         modal: true, | ||||
|         width: 400, | ||||
|         height: 700 | ||||
|     }); | ||||
|  | ||||
|     $.ajax({ | ||||
|         url: baseUrl + 'recent-changes/', | ||||
|         type: 'GET', | ||||
|         success: function (result) { | ||||
|             const groupedByDate = {}; | ||||
|  | ||||
|             for (const row of result) { | ||||
|                 const dateModified = new Date(row.date_modified * 1000); | ||||
|                 const formattedDate = formatDate(dateModified); | ||||
|  | ||||
|                 if (!groupedByDate[formattedDate]) { | ||||
|                     groupedByDate[formattedDate] = []; | ||||
|                 } | ||||
|  | ||||
|                 groupedByDate[formattedDate].push(row); | ||||
|             } | ||||
|  | ||||
|             const sortedDates = Object.keys(groupedByDate); | ||||
|             sortedDates.sort(); | ||||
|             sortedDates.reverse(); | ||||
|  | ||||
|             for (const formattedDay of sortedDates) { | ||||
|                 const changesListEl = $('<ul>'); | ||||
|  | ||||
|                 const dayEl = $('<div>').append($('<b>').html(formattedDay)).append(changesListEl); | ||||
|  | ||||
|                 for (const dayChanges of groupedByDate[formattedDay]) { | ||||
|                     const formattedTime = formatTime(new Date(dayChanges.date_modified * 1000)); | ||||
|  | ||||
|                     const noteLink = $("<a>", { | ||||
|                        href: 'app#' + dayChanges.note_id, | ||||
|                        text: dayChanges.note_title | ||||
|                     }); | ||||
|  | ||||
|                     changesListEl.append($('<li>').append(formattedTime + ' - ').append(noteLink)); | ||||
|                 } | ||||
|  | ||||
|                 $("#recentChangesDialog").append(dayEl); | ||||
|             } | ||||
|         }, | ||||
|         error: () => alert("Error getting recent changes.") | ||||
|     }); | ||||
| }); | ||||
|  | ||||
| $(document).on('click', '#recentChangesDialog a', function(e) { | ||||
|     goToInternalNote(e, () => { | ||||
|         $("#recentChangesDialog").dialog('close'); | ||||
|     }); | ||||
| }); | ||||
		Reference in New Issue
	
	Block a user