diff --git a/.meteor/packages b/.meteor/packages
index 45350fa2..30302810 100644
--- a/.meteor/packages
+++ b/.meteor/packages
@@ -47,3 +47,4 @@ reactive-var
juliancwirko:s-alert
panter:qrcode
pascoual:pdfkit
+yuukan:streamy
diff --git a/.meteor/versions b/.meteor/versions
index 22aed708..7745add7 100644
--- a/.meteor/versions
+++ b/.meteor/versions
@@ -124,3 +124,4 @@ vazco:universe-html-purifier@1.2.3
webapp@1.3.11
webapp-hashing@1.0.9
xolvio:cleaner@0.3.1
+yuukan:streamy@1.4.1
diff --git a/client/views/helpers/chunks/question_div/question_div.html b/client/views/helpers/chunks/question_div/question_div.html
index cbf85c59..2efb739e 100644
--- a/client/views/helpers/chunks/question_div/question_div.html
+++ b/client/views/helpers/chunks/question_div/question_div.html
@@ -60,6 +60,11 @@
{{/if}}
+ {{#if adminButtons}}
+
+
+
+ {{/if}}
{{#if poster}}
diff --git a/client/views/helpers/chunks/question_div/question_div.js b/client/views/helpers/chunks/question_div/question_div.js
index fd5e8f3b..3fd8026e 100644
--- a/client/views/helpers/chunks/question_div/question_div.js
+++ b/client/views/helpers/chunks/question_div/question_div.js
@@ -1,5 +1,13 @@
import { Votes, Answers, Instances, Questions } from '/lib/common.js';
+Streamy.on('emphasize', function(data, s) {
+ $(`#${data.id}`).find('p.questiontext').css('background-color', 'yellow');
+});
+
+Streamy.on('de-emphasize', function(data, s) {
+ $(`#${data.id}`).find('p.questiontext').css('background-color', '');
+});
+
Template.question_div.onCreated(function () {
this.replyCount = new ReactiveVar(0);
});
@@ -101,4 +109,13 @@ Template.question_div.events({
const parentNode = document.getElementById('nav');
popoverTemplate = Blaze.renderWithData(Template.modify, template.data._id, parentNode);
},
+ 'change .remote-highlight': function(event, template) {
+ const currInstance = Instances.findOne({ _id: template.data.instanceid });
+ let id = event.currentTarget.parentElement.parentElement.id;
+ if (event.target.checked === true) {
+ Meteor.call('emphasize', id, template.data.instanceid);
+ } else {
+ Meteor.call('deEmphasize', id, template.data.instanceid);
+ }
+ }
});
diff --git a/client/views/helpers/chunks/question_div/question_div.scss b/client/views/helpers/chunks/question_div/question_div.scss
index 1e553660..96c469d4 100644
--- a/client/views/helpers/chunks/question_div/question_div.scss
+++ b/client/views/helpers/chunks/question_div/question_div.scss
@@ -390,3 +390,24 @@ $popular-question-color: #f1c40f;
font-weight: 600;
color: #777!important;
}
+
+.remote-highlight:hover, input[type='checkbox'] {
+ cursor: pointer;
+}
+
+.remote-highlight {
+ display: block;
+ padding-left: 15px;
+ text-indent: -15px;
+}
+
+.remote-highlight > input {
+ width: 13px;
+ height: 13px;
+ padding: 0;
+ margin:0;
+ vertical-align: bottom;
+ position: relative;
+ top: -1px;
+ overflow: hidden;
+}
diff --git a/server/methods.js b/server/methods.js
index d550796d..8779b6e8 100644
--- a/server/methods.js
+++ b/server/methods.js
@@ -759,5 +759,19 @@ Meteor.methods({
}
console.log("OK");
return true;
+ },
+ emphasize(divId, instanceId) {
+ let currUser = Meteor.users.findOne({ _id: this.userId });
+ let currInstance = Instances.findOne({ _id: instanceId });
+ if (currInstance.admin === currUser.emails[0].address) {
+ Streamy.broadcast('emphasize', { id: divId });
+ }
+ },
+ deEmphasize(divId, instanceId) {
+ let currUser = Meteor.users.findOne({ _id: this.userId });
+ let currInstance = Instances.findOne({ _id: instanceId });
+ if (currInstance.admin === currUser.emails[0].address) {
+ Streamy.broadcast('de-emphasize', { id: divId });
+ }
}
});