Built files from Bizgaze WebServer
Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.

userlogindetailswidget.js 10KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140
  1. var Unibase;
  2. (function (Unibase) {
  3. let Platform;
  4. (function (Platform) {
  5. let Membership;
  6. (function (Membership) {
  7. let Components;
  8. (function (Components) {
  9. class UserLoginDetailsWidget extends Platform.Core.BaseComponent {
  10. init(containerid) {
  11. var instance = this;
  12. instance.userdetails(containerid);
  13. $(".user-toggle-notification-btn").click(function () {
  14. $(".biz-wrapper").addClass("biz-settings-toggle");
  15. $(".hk-wrapper").addClass("biz-settings-toggle");
  16. if (($(window).width()) <= 575) {
  17. $(".settings-panel-head").find("#myTab").remove();
  18. var notification_header = $(".settings-panel-head").find("#settings-panel-head-title").length;
  19. if (notification_header == 0) {
  20. $(".settings-panel-head #settings_panel_close").before(` <span class="biz-secondary-text-color d-flex flex-row align-items-center py-1" id = "settings-panel-head-title"> <span class="my-2 font-16 font-weight-400"> Notifications </span><span class="badge border rounded-circle badge-sm badge-link ml-2 font-14" id="notification_count"></span> </span>`).parent().addClass('px-3 border-bottom').removeClass('py-10');
  21. }
  22. Unibase.Themes.Compact.Components.Notification.Instance().loadReminders();
  23. }
  24. else {
  25. Unibase.Themes.Compact.Components.Notification.Instance().loadReminders();
  26. }
  27. });
  28. $(".user-toggle-task-btn").click(function () {
  29. $(".biz-wrapper").addClass("biz-settings-toggle");
  30. $(".hk-wrapper").addClass("biz-settings-toggle");
  31. if (($(window).width()) <= 575) {
  32. $(".settings-panel-head").find("#myTab").remove();
  33. var notification_header = $(".settings-panel-head").find("#settings-panel-head-title").length;
  34. if (notification_header == 0) {
  35. $(".settings-panel-head #settings_panel_close").before(` <span class="biz-secondary-text-color d-flex flex-row align-items-center py-1" id = "settings-panel-head-title"> <span class="my-2 font-16 font-weight-400">Tasks</span><span class="ml-2 px-2 border rounded-circle font-14" id="tasks_count"></span> </span>`).parent().addClass('px-3 border-bottom').removeClass('py-10');
  36. }
  37. Unibase.Platform.Helpers.FileCacheHelper.Instance().loadJsFile('/tenants/themes/compact/components/notifications/notification.js', function () {
  38. Unibase.Themes.Compact.Components.Notification.Instance().loadTasks();
  39. });
  40. }
  41. else {
  42. Unibase.Themes.Compact.Components.Notification.Instance().loadTasks();
  43. }
  44. });
  45. }
  46. userdetails(containerid) {
  47. let notification, task;
  48. let data = Unibase.Platform.Membership.Infos.Identity.getCurrentUser();
  49. let imageurl = data.photoUrl;
  50. let companyname = data.settings.filter(function (o) { return o.settingName === "companyname"; })[0].settingValue;
  51. let branchname = data.settings.filter(function (o) { return o.settingName === "branchname"; })[0].settingValue;
  52. let branchcode = data.settings.filter(function (o) { return o.settingName === "branchcode"; })[0].settingValue;
  53. let username = data.name;
  54. let html = '';
  55. html = `<div class="user_login_detials b-0 shadow rounded-4 p-3"><div class="card m-0 px-2 border-0 shadow-none"><div class="user_login_pic d-flex align-items-center font-11"><div class=" biz-login-image rounded-circle w-70p h-70p d-flex align-items-center text-center p-2" data-src="` + imageurl + `" ><div class="user-login-img bg-light rounded-circle w-100 h-100 d-flex align-items-center text-center"></div></div><div class="ml-2"><div>Hi Welcome,</div><div class="user_Name m-0" style="font-size:12px !important" >` + username + `</div></div></div><div class="user_Company_Name ml-2 mt-1 font-11"><span><i class="fa fa-building-o font-14"></i></span> ` + companyname + `</div><div class="user_Branch_Name ml-2 font-11"><span><i class="fa fa-map-marker "></i></span> ` + branchname + ` (` + branchcode + `)</div></div></div></div>`;
  56. $(`#${containerid}`).html(html);
  57. $(".user-login-img-div")
  58. .mouseover(function () {
  59. $(this).find(".edit-picture").removeClass("d-none").addClass("d-flex").css("cursor", "pointer");
  60. })
  61. .mouseout(function () {
  62. $(this).find(".edit-picture").addClass("d-none").removeClass("d-flex");
  63. });
  64. let dataSrc = $('.biz-login-image').data('src');
  65. if (dataSrc == '' || dataSrc == null || dataSrc == 'undefined') {
  66. let avatarTxt = "";
  67. let headingTxt = $('.user_Name').text();
  68. let matches = headingTxt.match(/\b(\w)/g);
  69. if (matches && matches.length == 1) {
  70. avatarTxt = $.trim(headingTxt).substr(0, 2).toUpperCase();
  71. }
  72. else {
  73. avatarTxt = matches.join('').slice(0, 2).toUpperCase();
  74. }
  75. $('.user-login-img').html(`<h5 class="w-100 font-weight-600 biz-hightlight-bg-color font-30" data-btnclick="profile">${avatarTxt}</h5>`);
  76. }
  77. else {
  78. if (dataSrc && dataSrc.includes("~")) {
  79. dataSrc = dataSrc.slice(2);
  80. }
  81. $('.user-login-img').html(`<img src="${dataSrc}" onerror="ReloadImage(event)" data-dynamic="1" class="avatar-img img-fluid rounded-circle w-100 h-100" data-btnclick="profile" alt="img" style="object-fit: cover;">`);
  82. }
  83. let uniqueid = 'Bizgaze_Crm_Employess_App_AddPhotoUrl_Dashboard';
  84. Unibase.Platform.Forms.Managers.FormManager.Instance().getFormbyUniqueId(uniqueid).then(function (response) {
  85. $('.edit-picture').attr("onclick", `Unibase.Platform.Membership.Components.UserLoginDetailsWidget.Instance().profileupdate(${response.result.FormId}, 0)`);
  86. $('[data-btnclick="profile"]').attr("onclick", `Unibase.Platform.Membership.Components.UserLoginDetailsWidget.Instance().profileupdate(${response.result.FormId}, 0)`);
  87. });
  88. $(".user_login_detials").closest(".col-lg-12.droppablePlaceCol").removeClass("px-md-5");
  89. Unibase.Platform.Communications.Managers.ReminderManager.Instance().getUnreadRemindersCountByUserId().then(function (response) {
  90. var obj = response.result;
  91. notification = obj.NotificationCount;
  92. task = obj.TasksCount;
  93. $(".notification_count").html(notification);
  94. $(".tasks_count").html(task);
  95. });
  96. return html;
  97. }
  98. profilePicSuccess() {
  99. $('#layout-dashboard-tabs .filter-item.active a').trigger('click');
  100. }
  101. profileupdate(formid, appConfigId, employeeid) {
  102. var successobj = {
  103. CallBack: function () { Unibase.Platform.Membership.Components.UserLoginDetailsWidget.Instance().profilePicSuccess(); },
  104. Parameters: null,
  105. };
  106. var formviewerObj = {
  107. FormId: formid,
  108. AppConfigurationId: 0,
  109. Pk_Value: 0,
  110. PortletWidgetId: 0,
  111. OnSuccess: successobj,
  112. OnFail: null,
  113. OnLoad: null,
  114. FormSize: Unibase.Platform.Helpers.Size.Large
  115. };
  116. Unibase.Platform.Forms.Components.FormViewer.Instance().init(formviewerObj);
  117. }
  118. jsFiles() {
  119. return ['tenants/themes/compact/components/nav/nav.js'];
  120. }
  121. cssFiles() {
  122. return [];
  123. }
  124. html(id, containerid) {
  125. var html = ``;
  126. return html;
  127. }
  128. load(id, containerid, callback) {
  129. }
  130. static Instance() {
  131. if (this._instance === undefined)
  132. this._instance = new UserLoginDetailsWidget();
  133. return this._instance;
  134. }
  135. }
  136. Components.UserLoginDetailsWidget = UserLoginDetailsWidget;
  137. })(Components = Membership.Components || (Membership.Components = {}));
  138. })(Membership = Platform.Membership || (Platform.Membership = {}));
  139. })(Platform = Unibase.Platform || (Unibase.Platform = {}));
  140. })(Unibase || (Unibase = {}));