New user setting for display embedded content by default

with-route-provider
Tor Hveem 12 years ago
parent 59206770e2
commit 6258303465
  1. 12
      index.html
  2. 5
      js/plugins.js
  3. 10
      js/websockets.js

@ -178,7 +178,17 @@ $ openssl req -nodes -newkey rsa:2048 -keyout relay.pem -x509 -days 365 -out rel
<div class="checkbox">
<label>
<input type="checkbox" ng-model="notimestamp">
Hide timestamps
Hide timestamps
</label>
</div>
</form>
</li>
<li class="">
<form class="form-inline" role="form">
<div class="checkbox">
<label>
<input type="checkbox" ng-model="noembed">
Hide embedded content by default
</label>
</div>
</form>

@ -53,16 +53,15 @@ plugins.service('plugins', ['userPlugins', '$sce', function(userPlugins, $sce) {
* Iterates through all the registered plugins
* and run their contentForMessage function.
*/
var contentForMessage = function(message) {
var contentForMessage = function(message, visible) {
message.metadata = [];
for (var i = 0; i < plugins.length; i++) {
var nsfw = false;
var visible = true;
if (message.text.match(nsfwRegexp)) {
var nsfw = true;
var visible = false;
visible = false;
}
var pluginContent = plugins[i].contentForMessage(message.text);

@ -27,7 +27,7 @@ weechat.factory('handlers', ['$rootScope', 'models', 'plugins', function($rootSc
// Only react to line if its displayed
if(message.displayed) {
var buffer = models.getBuffer(message.buffer);
message = plugins.PluginManager.contentForMessage(message);
message = plugins.PluginManager.contentForMessage(message, $rootScope.visible);
buffer.addLine(message);
if (buffer.active) {
@ -513,6 +513,14 @@ weechat.controller('WeechatCtrl', ['$rootScope', '$scope', '$store', '$timeout',
$store.bind($scope, "hotlistsync", true);
// Save setting for displaying nicklist
$store.bind($scope, "nonicklist", false);
// Save setting for displaying embeds
$store.bind($scope, "noembed", false);
// Save setting for displaying embeds in rootscope so it can be used from service
$rootScope.visible = $scope.noembed == false;
// Watch model and update show setting when it changes
$scope.$watch('noembed', function() {
$rootScope.visible = $scope.noembed == false;
});
$scope.setActiveBuffer = function(key) {
models.setActiveBuffer(key);

Loading…
Cancel
Save