knowledge article work notes

garyeaves
Tera Contributor

Hi

 

We are having an issue trying to hide 'work notes' added to a knowledge record from appearing in the comments section of a knowledge article. I have set the property glide.knowman.show_user_feedback to 'onload' so comments appear but this includes work notes as well which i want to hide from non knowledge admins. i have tried an ACL but this doesn't seem to work.

 

Thanks

6 REPLIES 6

Brian Lancaster
Tera Sage

Can you share the ACL you created?  That should do the trick but I'm note sure knowledge comments works like incident comments.  

Brian Lancaster
Tera Sage

After looking into this more I see that on the kb_feeback table there is already an OOB ACL to make work notes only visible to knowledge_admin role.  When I look at the customer view of the knowledge article I cannot see the work notes.

DScroggins
Kilo Sage

Hi,

There is a script include KBViewModelSNC which includes method _populateFeedback. This method is what controls the comments/feedback displayed on a KB. You can create an override method in the script include KBViewModel and modify the script to only return the values appropriate for the logged in user. Below is an example of my override methos which only loads unresolved feedback into the Knowledge Article view:

// load the un-resolved feedback records into attribute
_populateFeedback: function () {
		var loggedinUser = gs.getUserID();
		var isAdmin = gs.hasRole("admin") || gs.hasRole("knowledge_admin");
		var isManager = gs.hasRole("knowledge_manager");
		var isAuthor = (this.knowledgeRecord.author == loggedinUser);
		
		var fb = new GlideRecord("kb_feedback");
		var versioningInstalled = this.isVersioningInstalled();
		if(versioningInstalled && !this.knowledgeRecord.article_id.nil()){
			fb.addQuery("article.article_id",this.knowledgeRecord.article_id);
			fb.addQuery("article.sys_created_on",'<=',this.knowledgeRecord.sys_created_on);
		}
		else
			fb.addQuery("article", this.knowledgeRecord.sys_id);
		/*Flagged comments should not go public.
		  admin, knowledge_admin, knowledge_manager, author of the article will see all the flagged     comments.
		  Other users will only see the flagged comments that are entered by them */
		if(!isAdmin && !isManager && !isAuthor){
			fb.addQuery('flagged', false).addOrCondition('user',loggedinUser);
		}
		fb.addQuery('resolved', 'false');
		fb.addNotNullQuery("comments");
		fb.orderByDesc('sys_created_on');
		fb.setLimit(gs.getProperty("glide.knowman.feedback.display_threshold", 100));
		fb.query();
		if (fb.getRowCount() == 0) {
			fb = new GlideRecord("kb_feedback");
			fb.initialize();
			this.feedbackInitialDisplay = false;
			this.feedbackEntryInitialDisplay = true;

		} else {
			this.feedbackInitialDisplay = false;
			this.feedbackEntryInitialDisplay = false;
		}
		this.feedbackRecord = fb;
	}

Siddhartha Kapa
Kilo Explorer

Hey,

I am having the same issue here. I was trying to figure out the process behind the creation of a record in kb_feedback table when the work notes are updated in the knowledge article. Any suggestions on how to avoid the work notes updates in the comments section?