New user setting for display embedded content by default
This commit is contained in:
parent
59206770e2
commit
6258303465
3 changed files with 22 additions and 5 deletions
12
index.html
12
index.html
|
@ -178,7 +178,17 @@ $ openssl req -nodes -newkey rsa:2048 -keyout relay.pem -x509 -days 365 -out rel
|
||||||
<div class="checkbox">
|
<div class="checkbox">
|
||||||
<label>
|
<label>
|
||||||
<input type="checkbox" ng-model="notimestamp">
|
<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>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
|
|
|
@ -53,16 +53,15 @@ plugins.service('plugins', ['userPlugins', '$sce', function(userPlugins, $sce) {
|
||||||
* Iterates through all the registered plugins
|
* Iterates through all the registered plugins
|
||||||
* and run their contentForMessage function.
|
* and run their contentForMessage function.
|
||||||
*/
|
*/
|
||||||
var contentForMessage = function(message) {
|
var contentForMessage = function(message, visible) {
|
||||||
|
|
||||||
message.metadata = [];
|
message.metadata = [];
|
||||||
for (var i = 0; i < plugins.length; i++) {
|
for (var i = 0; i < plugins.length; i++) {
|
||||||
|
|
||||||
var nsfw = false;
|
var nsfw = false;
|
||||||
var visible = true;
|
|
||||||
if (message.text.match(nsfwRegexp)) {
|
if (message.text.match(nsfwRegexp)) {
|
||||||
var nsfw = true;
|
var nsfw = true;
|
||||||
var visible = false;
|
visible = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
var pluginContent = plugins[i].contentForMessage(message.text);
|
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
|
// Only react to line if its displayed
|
||||||
if(message.displayed) {
|
if(message.displayed) {
|
||||||
var buffer = models.getBuffer(message.buffer);
|
var buffer = models.getBuffer(message.buffer);
|
||||||
message = plugins.PluginManager.contentForMessage(message);
|
message = plugins.PluginManager.contentForMessage(message, $rootScope.visible);
|
||||||
buffer.addLine(message);
|
buffer.addLine(message);
|
||||||
|
|
||||||
if (buffer.active) {
|
if (buffer.active) {
|
||||||
|
@ -513,6 +513,14 @@ weechat.controller('WeechatCtrl', ['$rootScope', '$scope', '$store', '$timeout',
|
||||||
$store.bind($scope, "hotlistsync", true);
|
$store.bind($scope, "hotlistsync", true);
|
||||||
// Save setting for displaying nicklist
|
// Save setting for displaying nicklist
|
||||||
$store.bind($scope, "nonicklist", false);
|
$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) {
|
$scope.setActiveBuffer = function(key) {
|
||||||
models.setActiveBuffer(key);
|
models.setActiveBuffer(key);
|
||||||
|
|
Loading…
Reference in a new issue