summaryrefslogtreecommitdiff
path: root/assets/js/core
diff options
context:
space:
mode:
authorFrederic Guillot <fred@kanboard.net>2016-11-27 15:44:45 -0500
committerFrederic Guillot <fred@kanboard.net>2016-11-27 15:44:45 -0500
commitd8b0423d152ca27682b001f2c4d386d9c5dd361e (patch)
tree8b4919d5296b857bcf74e81c8cc06729ddfce5e5 /assets/js/core
parent04ff67e26b880dde8bfb6462f312cf434457cd46 (diff)
Add suggest menu for user mentions in text editor
Diffstat (limited to 'assets/js/core')
-rw-r--r--assets/js/core/base.js8
-rw-r--r--assets/js/core/dom.js22
2 files changed, 29 insertions, 1 deletions
diff --git a/assets/js/core/base.js b/assets/js/core/base.js
index 7346575c..4ea3ffc2 100644
--- a/assets/js/core/base.js
+++ b/assets/js/core/base.js
@@ -61,7 +61,13 @@ KB.render = function () {
for (var i = 0; i < elementList.length; i++) {
if (this.components.hasOwnProperty(name)) {
- var component = KB.getComponent(name, elementList[i], JSON.parse(elementList[i].dataset.params));
+ var options;
+
+ if (elementList[i].dataset.params) {
+ options = JSON.parse(elementList[i].dataset.params);
+ }
+
+ var component = KB.getComponent(name, elementList[i], options);
component.render();
elementList[i].className = elementList[i].className + '-rendered';
}
diff --git a/assets/js/core/dom.js b/assets/js/core/dom.js
index 33039285..20510d44 100644
--- a/assets/js/core/dom.js
+++ b/assets/js/core/dom.js
@@ -10,6 +10,14 @@ KB.dom = function (tag) {
return this;
};
+ this.data = function (attribute, value) {
+ if (arguments.length === 1) {
+ return element.dataset[attribute];
+ }
+ element.dataset[attribute] = value;
+ return this;
+ };
+
this.hide = function () {
element.style.display = 'none';
return this;
@@ -30,6 +38,11 @@ KB.dom = function (tag) {
return this;
};
+ this.style = function(attribute, value) {
+ element.style[attribute] = value;
+ return this;
+ };
+
this.on = function (eventName, callback) {
element.addEventListener(eventName, function (e) {
e.preventDefault();
@@ -43,6 +56,10 @@ KB.dom = function (tag) {
return this.on('click', callback);
};
+ this.mouseover = function (callback) {
+ return this.on('mouseover', callback);
+ };
+
this.change = function (callback) {
return this.on('change', callback);
};
@@ -96,6 +113,11 @@ KB.dom = function (tag) {
return this;
};
+ this.remove = function () {
+ element.parentNode.removeChild(element);
+ return this;
+ };
+
this.parent = function (selector) {
for (; element && element !== document; element = element.parentNode) {
if (element.matches(selector)) {