Hide the agent name from the activity stream on the portal

Deepika Mishra
Mega Guru

In the conversation widget I only want to hide the agent name. I am not sure how to do it because both agent and the user who created the ticket is coming from {{::e.name}} which is coming from data.mergedEntries

Please help me how can I remove agent name only. Like in this case Deepika Mishra should not be visible but Aadd sh name should be visible.

find_real_file.png

1 ACCEPTED SOLUTION

Deepika Mishra
Mega Guru

I was able to implement the above scenario using below code:

HTML:

For the conversation:

<div class="timeline-title h4" ng-if="e.capture.show">{{::e.name}}</div>

Case created by:

<div class="timeline-title h4" ng-if="data.stream.capture.show">{{data.stream.user_full_name}}</div>

 

Server Side:

/* entries started */
		var entries1 = data.stream.entries;
		var existingEntries1 = "";
		
		data.array1 =[];
		
		for (var i = 0; i < entries1.length; i++) 
		{
			var showName = {} ;	
			existingEntries1 = entries1[i].user_sys_id.toString();
			if(gs.getUser().getUserByID(existingEntries1).hasRole('snc_internal'))
			   {
				   showName.show  = false;
			   }
			else
				{
					showName.show  = true;
				}
			
			data.array1.push(showName);
			entries1[i].capture = data.array1[i];
				
         }
		/*entries end*/
		
		/* created started */
		var entries2 = data.stream;
		var existingEntries2 = "";
		
			var showName2 = {} ;	
			existingEntries2 = data.stream.user_sys_id.toString();
		
			if(gs.getUser().getUserByID(existingEntries2).hasRole('snc_internal'))
			   {
				   showName2.show  = false;
			   }
			else
				{
					showName2.show  = true;
				}
			
			entries2.capture = showName2;
				
		/*created end*/

 

After adding these check I was able to hide the agent name and show only external agent name on the conversation widget.

View solution in original post

15 REPLIES 15

What do you mean when you say other name?

 

Even after trying the way you asked for it is still showing the name when I logged in with user who doesn't have snc_internal role.

Please trying adding in this block of HTML-

find_real_file.png

 

Regards,

Omkar.

Add this code in Server script - 

data.showName = false;
if (gs.hasRole('snc_internal'))
{
data.showName = true;
}

 

Regards,

Omkar

Hi Deepika,

This will work only for logged in user not for other users. Try below code:

 

Server Script: 

Add these lines below data.stream value-

for(var i in data.stream.entries){
data.stream.entries[i].isAgent = false;
if(gs.getUser().getUserByID(data.stream.entries[i].user_sys_id).hasRole('snc_internal'))
data.stream.entries[i].isAgent = true;
}

HTML:

<div ng-if="e.isAgent==false"class="timeline-title h4">{{::e.name}}</div>

Thanks,

Pushpa