Ohm-Management - Projektarbeit B-ME
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

msgCard.js 3.0KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. Vue.component('MsgCard', {
  2. template: `<div class="om-card card">
  3. <h6 class="msg-head">
  4. <b>{{ msg.subject }}</b>
  5. <div id="msgid" >{{msg._id}}</div>
  6. <img src="favicon.ico" width=20px height=20px>
  7. </h6>
  8. {{ msg.message }}<br>
  9. <a v-for="tag in msg.tag" @click="filterForTag(tag)">#{{ tag }} </a>
  10. <br>
  11. </p>
  12. <div class="om-card-footer"> <div class="om-user-line">
  13. <i class="material-icons">account_circle</i>
  14. Erstellt von {{ msg.user }}</div>
  15. <i id="bockmark-not-active" class="material-icons" :key="isActive" @click="myFilter(msg._id)" v-if="!isActive">bookmark_border</i>
  16. <i id="bockmark-active" class="material-icons" :key="isActive" @click="myFilter(msg._id)" v-else>bookmark</i>
  17. </div></div>`,
  18. props: ['msg', 'isBookmark'],
  19. data: function () {
  20. return {
  21. isActive: this.isBookmark,
  22. isActive_: 0,
  23. msgid: this.msg._id
  24. };
  25. },
  26. methods: {
  27. myFilter: function (_messageid) {
  28. //var _messageid = $("#msgid").text();
  29. if (this.isActive == true) {
  30. var index = auth.bookmarks.indexOf(_messageid);
  31. if (index > -1) {
  32. auth.bookmarks.splice(index, 1);
  33. }
  34. this.isActive = false;
  35. } else {
  36. console.log("_messsageid: "+_messageid+" bookmarks: "+auth.bookmarks);
  37. auth.bookmarks.push(_messageid);
  38. this.isActive =true;
  39. }
  40. /*console.log("msgid"+_bookmark);
  41. var _userid = auth.user;
  42. this.isActive = !this.isActive;
  43. if(this.isActive){
  44. $.ajax({
  45. url: "api/usr",
  46. data: {
  47. userid: _userid,
  48. bookmark: _bookmark
  49. },
  50. method: "PUT"
  51. }).done(have_result).fail(have_error);
  52. function have_result(res) {
  53. console.log(res);
  54. }
  55. function have_error(err) {
  56. console.log("error: " + err.responseText);
  57. console.log(err);
  58. }
  59. }*/
  60. },
  61. filterForTag: function (tag) {
  62. console.log("link: " + tag);
  63. searching(tag);
  64. },
  65. isBookmarkActive: function (msgid) {
  66. //console.log("isBookmarkActive(): " + msgid);
  67. if (auth.bookmarks.indexOf(msgid) > -1) {
  68. // $("#bockmark-not-active").css("visibility","hidden");
  69. // $("#bockmark-active").css("visibility","visible");
  70. this.isActive = true;
  71. //console.log("isBookmarkActive(): " + this.isActive);
  72. this.isActive_ = 1;
  73. }
  74. }
  75. },
  76. beforeMount: function () {
  77. //this.isBookmarkActive();
  78. }
  79. });