Browse Source

changed formatLogDetails to reflect new trace_id change
added on success to internalClipboard
change binding function for log-details

CauseFX 4 years ago
parent
commit
a5ef0fffe0
3 changed files with 25 additions and 6 deletions
  1. 21 2
      js/custom.js
  2. 0 0
      js/custom.min.js
  3. 4 4
      js/functions.js

+ 21 - 2
js/custom.js

@@ -14,6 +14,10 @@ $(document).ready(function () {
         message('Clipboard',e.text,activeInfo.settings.notifications.position,'#FFF','info','5000');
         e.clearSelection();
     });
+	internalClipboard.on('success', function(e) {
+		message('Clipboard',e.text,activeInfo.settings.notifications.position,'#FFF','info','5000');
+		e.clearSelection();
+	});
     "use strict";
     var body = $("body");
 
@@ -1927,8 +1931,23 @@ $(document).on('click', '.ti-shift-left.mouse', function() {
 
 // Log Details
 $(document).on('click', '.log-details', function() {
-	let details = $(this).attr('data-details');
-	formatLogDetails(details);
+	let trace = $(this).attr('data-trace');
+	let activateClipboard = $(this).attr('data-clipboard');
+	organizrAPI2('GET','api/v2/log/all/'+trace).success(function(data) {
+		try {
+			let response = data.response;
+			if(activateClipboard){
+				clipboard(true,JSON.stringify(response.data));
+			}else{
+				formatLogDetails(response.data);
+			}
+
+		}catch(e) {
+			organizrCatchError(e,data);
+		}
+	}).fail(function(xhr) {
+		OrganizrApiError(xhr, 'API Error');
+	})
 });
 
 // Choose Log choose-organizr-log

File diff suppressed because it is too large
+ 0 - 0
js/custom.min.js


+ 4 - 4
js/functions.js

@@ -11067,20 +11067,20 @@ function jsFriendlyJSONStringify (s) {
 }
 function logContext(row){
 	let buttons = '';
-	buttons += (Object.keys(row).length > 0) ? '<button data-toggle="tooltip" title="" data-original-title="View Details" class="btn btn-xs btn-primary waves-effect waves-light log-details m-r-5" data-details=\''+jsFriendlyJSONStringify(row)+'\'><i class="mdi mdi-file-find"></i></button>' : '';
-	buttons += (Object.keys(row).length > 0) ? '<button data-toggle="tooltip" title="" data-original-title="Copy Log" class="btn btn-xs btn-info waves-effect waves-light clipboard m-r-5" data-clipboard-text=\''+jsFriendlyJSONStringify(row)+'\'><i class="mdi mdi-content-copy"></i></button>' : '';
+	buttons += (Object.keys(row).length > 0) ? '<button data-toggle="tooltip" title="" data-original-title="View Details" class="btn btn-xs btn-primary waves-effect waves-light log-details m-r-5" data-trace="'+row.trace_id+'"><i class="mdi mdi-file-find"></i></button>' : '';
+	buttons += (Object.keys(row).length > 0) ? '<button data-toggle="tooltip" title="" data-original-title="Copy Log" class="btn btn-xs btn-info waves-effect waves-light log-details m-r-5" data-trace="'+row.trace_id+'" data-clipboard="true"><i class="mdi mdi-content-copy"></i></button>' : '';
 	return buttons;
 }
 function formatLogDetails(details){
 	if(!details){
 		return false;
 	}
-	details = JSON.parse(details);
 	let m = moment.tz(details.datetime + 'Z', activeInfo.timezone);
 	details.datetime = moment(m).format('LLL');
 	let items = '';
 	items += `<li><div class="bg-inverse"><i class="mdi mdi-calendar-text text-white"></i></div> ${details.datetime}<span class="text-muted" lang="en">Date</span></li>`;
-	items += `<li><div class="bg-inverse"><i class="mdi mdi-account-box-outline text-white"></i></div> ${details.trace_id}<span class="text-muted" lang="en">User</span></li>`;
+	items += `<li><div class="bg-warning"><i class="mdi mdi-robot text-white"></i></div> ${details.trace_id}<span class="text-muted" lang="en">Trace ID</span></li>`;
+	items += `<li><div class="bg-primary"><i class="mdi mdi-account-box-outline text-white"></i></div> ${details.username}<span class="text-muted" lang="en">User</span></li>`;
 	items += `<li><div class="bg-info"><i class="mdi mdi-function text-white"></i></div> ${details.channel}<span class="text-muted" lang="en">Function</span></li>`;
 	items += `<li><div class="bg-plex"><i class="mdi mdi-language-php text-white"></i></div> ${details.file}<code>#L${details.line}</code><span class="text-muted" lang="en">File</span></li>`;
 	let items2 = '';

Some files were not shown because too many files changed in this diff