mirror of
https://mau.dev/maunium/synapse.git
synced 2024-12-14 10:23:57 +01:00
SYWEB-98: Add a 'Redact' button to the event info modal dialog.
I think this is better than overriding the right-click contextual menu. Currently clicking this button does nothing.
This commit is contained in:
parent
ed241ba032
commit
70137409ed
2 changed files with 31 additions and 3 deletions
|
@ -985,10 +985,25 @@ angular.module('RoomController', ['ngSanitize', 'matrixFilter', 'mFileInput'])
|
||||||
};
|
};
|
||||||
|
|
||||||
$scope.openJson = function(content) {
|
$scope.openJson = function(content) {
|
||||||
console.log("Displaying modal dialog for " + JSON.stringify(content));
|
$scope.event_selected = content;
|
||||||
|
// scope this so the template can check power levels and enable/disable
|
||||||
|
// buttons
|
||||||
|
$scope.pow = matrixService.getUserPowerLevel;
|
||||||
|
|
||||||
var modalInstance = $modal.open({
|
var modalInstance = $modal.open({
|
||||||
template: "<pre>" + angular.toJson(content, true) + "</pre>"
|
templateUrl: 'eventInfoTemplate.html',
|
||||||
|
controller: 'EventInfoController',
|
||||||
|
scope: $scope
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
}]);
|
}])
|
||||||
|
.controller('EventInfoController', function($scope, $modalInstance) {
|
||||||
|
console.log("Displaying modal dialog for >>>> " + JSON.stringify($scope.event_selected));
|
||||||
|
$scope.redact = function() {
|
||||||
|
console.log("User level = "+$scope.pow($scope.room_id, $scope.state.user_id)+
|
||||||
|
" Redact level = "+$scope.events.rooms[$scope.room_id]["m.room.ops_levels"].content.redact_level);
|
||||||
|
console.log("Redact event >> " + JSON.stringify($scope.event_selected));
|
||||||
|
$modalInstance.dismiss();
|
||||||
|
};
|
||||||
|
});
|
||||||
|
|
|
@ -1,5 +1,18 @@
|
||||||
<div ng-controller="RoomController" data-ng-init="onInit()" class="room" style="height: 100%;">
|
<div ng-controller="RoomController" data-ng-init="onInit()" class="room" style="height: 100%;">
|
||||||
|
|
||||||
|
<script type="text/ng-template" id="eventInfoTemplate.html">
|
||||||
|
<div class="modal-body">
|
||||||
|
<pre> {{event_selected | json}} </pre>
|
||||||
|
</div>
|
||||||
|
<div class="modal-footer">
|
||||||
|
<button ng-click="redact()" type="button" class="btn btn-danger"
|
||||||
|
ng-disabled="pow(room_id, state.user_id) < events.rooms[room_id]['m.room.ops_levels'].content.redact_level"
|
||||||
|
title="Delete this event on all home servers. This cannot be undone.">
|
||||||
|
Redact
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</script>
|
||||||
|
|
||||||
<div id="roomHeader">
|
<div id="roomHeader">
|
||||||
<a href ng-click="goToPage('/')"><img src="img/logo-small.png" width="100" height="43" alt="[matrix]"/></a>
|
<a href ng-click="goToPage('/')"><img src="img/logo-small.png" width="100" height="43" alt="[matrix]"/></a>
|
||||||
<div class="roomHeaderInfo">
|
<div class="roomHeaderInfo">
|
||||||
|
|
Loading…
Reference in a new issue