Hello guys I have a button that is suppose to allow the user clicking it to take ownership of a record. When I run it as admin, all else works but as a standard user nothing happens:
{!REQUIRESCRIPT("/soap/ajax/34.0/connection.js")}
var query = sforce.connection.query("SELECT Id, id__c FROM Job_Requisition__c WHERE id__c = '{!Job_Requisition__c.id__c}'");
var records = query.getArray("records");
var jobRequisition = records[0];
if ("{!Job_Requisition__c.owned__c}" == false) {
jobRequisition.OwnerId = "{!$User.Id}";
jobRequisition.owned__c = true;
result = sforce.connection.update([jobRequisition]);
if (result[0].getBoolean("success")) {
//Create tasks
var task = new sforce.SObject("Task");
task.OwnerId = "{!$User.Id}";
task.Subject = '1 - Review Data Quality';
task.ActivityDate = new Date();
task.WhatId = jobRequisition.Id;
result = sforce.connection.create([task]);
var task = new sforce.SObject("Task");
task.OwnerId = "{!$User.Id}";
task.Subject = '2 - Engage with Recruiter';
task.ActivityDate = new Date();
task.WhatId = jobRequisition.Id;
result = sforce.connection.create([task]);
var task = new sforce.SObject("Task");
task.OwnerId = "{!$User.Id}";
task.Subject = '3 - Update Must Haves';
task.ActivityDate = new Date();
task.WhatId = jobRequisition.Id;
result = sforce.connection.create([task]);
var task = new sforce.SObject("Task");
task.OwnerId = "{!$User.Id}";
task.Subject = '4 - Confirm Priority Listing Ratio';
task.ActivityDate = new Date();
task.WhatId = jobRequisition.Id;
result = sforce.connection.create([task]);
var task = new sforce.SObject("Task");
task.OwnerId = "{!$User.Id}";
task.Subject = '5 - Create Chatter Group';
task.ActivityDate = new Date();
task.WhatId = jobRequisition.Id;
result = sforce.connection.create([task]);
var task = new sforce.SObject("Task");
task.OwnerId = "{!$User.Id}";
task.Subject = '6 - Select CSS';
task.ActivityDate = new Date();
task.WhatId = jobRequisition.Id;
result = sforce.connection.create([task]);
alert('Tasks created');
//Create chatter group and add Job Requisition to group
var myGroup = new sforce.SObject("CollaborationGroup");
myGroup.Name = "{!Job_Requisition__c.Name}";
myGroup.CollaborationType = 'Private';
result = sforce.connection.create([myGroup]);
var groupRecord = new sforce.SObject("CollaborationGroupRecord");
groupRecord.recordId = jobRequisition.Id;
var query = sforce.connection.query("SELECT Id FROM CollaborationGroup WHERE Name = '{!Job_Requisition__c.Name}'");
var records = query.getArray("records");
var myGroup = records[0];
groupRecord.CollaborationGroupId = myGroup.Id;
result = sforce.connection.create([groupRecord]);
var query = sforce.connection.query("SELECT Id, id__c FROM Job_Requisition__c WHERE id__c = '{!Job_Requisition__c.id__c}'");
var records = query.getArray("records");
var jobRequisition = records[0];
jobRequisition.createChatterGroup__c = true;
result = sforce.connection.update([jobRequisition]);
alert('You are now the Job Requisition owner');
}
window.location.reload();
} else {
//Assign CSS as Job Requisition owner
if ("{!Job_Requisition__c.worked__c}" == false && "{!Job_Requisition__c.status__c}" != 'Assigned' && "{!Job_Requisition__c.owned__c}" == true && "{!Job_Requisition__c.checkedJobRequisitionTasks__c}" == true && "{!Job_Requisition__c.updatedJobRequisitionTasks__c}" == true) {
var query = sforce.connection.query("SELECT Id, id__c FROM Job_Requisition__c WHERE id__c = '{!Job_Requisition__c.id__c}'");
var records = query.getArray("records");
var jobRequisition = records[0];
jobRequisition.OwnerId = "{!$User.Id}";
jobRequisition.worked__c = true;
jobRequisition.status__c = 'Assigned';
result = sforce.connection.update([jobRequisition]);
//Create CSS request to join existing collaboration group
var groupMemberRequest = new sforce.SObject("CollaborationGroupMemberRequest");
groupMemberRequest.RequesterId = "{!$User.Id}";
var query = sforce.connection.query("SELECT Id FROM CollaborationGroup WHERE Name = '{!Job_Requisition__c.Name}'");
var records = query.getArray("records");
var myGroup = records[0];
groupMemberRequest.CollaborationGroupId = myGroup.Id;
result = sforce.connection.create([groupMemberRequest]);
alert(result);
alert('You are now working this Job Requisition');
window.location.reload();
} else {
alert('Job Requisition is already owned');
}
}
What permission do I have to change on the profile to allow them to run this?