• Luke Robertos
  • 0 Points
  • Member since 2023

  • Chatter
  • 0
    Best Answers
  • 0
    Likes Received
  • 0
    Likes Given
  • 0
  • 4
I am trying to add social media buttons to my email templates. We're using Salesforce Classic can anyone share how to do that?

Edit HTML version does not take me to the actual HTML to run the code.

(PS. Sorry I'm not sure I chose the right topic)
hi all, iam a fresher and iam thinking to learn integration as well, i had gone through the trailhead and the rest integration document, but not got idea much, 

can any body share the integraion videos of their respecitve classes  to this id please


it will be helpful for me to learn , hoping will get good encouragement to learn 
  • February 13, 2019
  • Like
  • 0
Title: SaaS Development Director
Team: Technology
Sub Team: Technology Labs
Location:Flexible,Washington DC or NYC preferred.

About Leadership for Educational Equity
Leadership for Educational Equity (LEE) is a nonprofit, nonpartisan leadership development organization dedicated to developing its members' leadership potential to ensure that every child has the opportunity to receive an outstanding education.

Our kids and communities need more leaders who believe that educational inequity is a solvable problem.  We believe that when our members are organized and reach positions of leadership, they'll serve as a transformative force for students, communities and the broader movement for educational equity.

LEE is a diverse team of passionate and talented individuals who are committed to making a difference.  We are a high-growth, results-oriented organization that operates in an entrepreneurial environment and we are committed to deep investment in continuous improvement.  If you would like to become part of our team and join the fight for educational equity, or if you would simply like to learn more about what we do, please visit https://educationalequity.org.

Position Description:
Leadership for Educational Equity (LEE) seeks a SaaS Development Director to provide project management for cross-team and cross-functional SaaS projects and programs that support core business requirements and key LEE initiatives.  The Director will function as a communication channel, a change agent, a project manager, and process innovator.  

The Director’s projects will involve Software-As-A-Service Platforms, primarily Salesforce. Responsibilities will include both vendor management and direct development, in both declarative and programmatic tools.

Reporting directly to the Senior Director, Technology Labs, the Director will play a crucial role in connecting the sub-team’s agile, design thinking driven approaches to problem solving and scale to LEE’s core Salesforce connected tools.

  • Manage projects from start to finish, including requirements gathering, communication management, stakeholder management, user adoption, build execution, and rollout
  • Serve as a technical resource: developing builds and integrations on SaaS platforms as needed across the Tech^x Team
  • Facilitate cross-team communication within technology projects.  Help ensure all stakeholders are appropriately involved.
  • Have a high level understanding of all technology projects LEE has underway.  Help identify and communicate the impact projects have on each other.  Look for areas where projects overlap and efficiencies can be affected.
  • Be engaged as a change agent to aid in project outcome adoption, and overall project success
  • Define and track technology project success factors
  • Serve as an engaged and involved team member, supportive of the varied experiences and perspectives of colleagues
  • Support and actively build an office culture dedicated to superior customer service that exceeds staff expectations
  • Assume other responsibilities as assigned
Minimum Qualifications
  • Experience with frontend JavaScript or Apex
  • Possess a strong sense of curiosity and willingness to learn
  • Proven project management skills
  • Demonstrated ability to establish and maintain effective relationships and partnerships with key stakeholders
  • Excellent communication skills (strong written, oral, and interpersonal), for cross-team collaboration
  • Ability to prioritize competing responsibilities
  • Ability to explore solutions, fail fast, and iterate to better solutions
  • Ability to set and consistently meet deadlines and commitments
  • Thrives in fast-paced, entrepreneurial, “Yes and…” environment
  • Ability to work in a geographically dispersed (i.e. virtual) organization
  • Ability to travel ~ 10% and work flexible hours with occasional weekends and evenings

Preferred Qualifications
  • Bachelor’s degree in Engineering or Math related field, or  similar industry certification (Bootcamp, Salesforce, etc.)
  • Technical qualifications preferred: Salesforce, Qualtrics, SQL, knowledge of API’s, workflows, and triggers
  • Experience developing in backend JavaScript
  • Experience developing with OAuth, SAML, and OpenID SSO and provisioning frameworks
  • Proven Change Management Skills
  • Experience managing projects using both agile and critical path methods
Benefits and Salary
Salary for this position is competitive and depends on prior experience.  In addition, a comprehensive benefits package is included.

An Equal-Opportunity Employer with a Commitment to Diversity
Leadership for Educational Equity is proud to be an equal opportunity employer, and as an organization committed to diversity and the perspective of all voices, we consider applicants equally of race, gender, color, sexual orientation, religion, marital status, disability, political affiliation and national origin. We reasonably accommodate staff members and/or applicants with disabilities, provided they are otherwise able to perform the essential functions of the job.

The statements in this description represent typical elements, criteria, and general work performed. They are not intended to be construed as an exhaustive list of all responsibilities, duties, and skills required for the job.

Hi All,


I am an administrator and have not much apex experience. Having a bit of an issue with my trigger. The purpose of the trigger is to count the number of Activity Records associated to a Lead and then drop it into a field called Activity_Count__c on the Lead. The code all works as intended, but I wanted to add another parameter. I would like to be able to only have that field contain the number of Activity Records that are 'Created By' a certain User (i.e. User ID = '12345'). How would I add that contraint into the Trigger, Class and Test Class? See below.









public with sharing class LeadActivityCount {


    public static Boolean didRun = false;

    public static String ledsPrefix =  Lead.sObjectType.getDescribe().getKeyPrefix();



    * Takes a set of lead IDs, queries those leads, and updates the activity count if appropriate


    public static void updateLeadCounts(Set<ID> ledsIds) {


        if (didRun == false) { //We only want this operation to run once per transaction.

            didRun = true;


            //Query all the leads, including the tasks child relationships

            List<Lead> leds = [SELECT ID, activity_count__c, (SELECT ID FROM Tasks), (SELECT ID FROM Events) FROM Lead WHERE ID IN :ledsIds];

            List<Lead> updateLeds = new List<Lead>();


            for (Lead l : leds) {

                Integer count = l.tasks.size() + l.events.size();


                if (l.activity_count__c != count) {

                    l.activity_count__c = count;

                    updateLeds.add(l); //we're only doing updates to leads that have changed...no need to modify the others




            //Update the appropriate leads

            try {

                update updateLeds;

            } catch (Exception e) {

                //This is controversial. Anything could happen when updating the opportunity..validation rule, security, etc. The key is we don't

                //want the event update to fail...so we put a try catch around the opp update to make sure we don't stop that from happening.







Test Class:



private class LeadsTestClassName{

public static Boolean didRun = false;
public static String ledsPrefix =  Lead.sObjectType.getDescribe().getKeyPrefix();
    * Test method for this class and TaskUpdateLead and EventUpdateLead
    public static testMethod void testCountTask() {

        Lead leds = new Lead(lastname='Test', email='1@2.com', company='Test');
        insert leds;

        //Insert our first task
        Task t = new Task(subject='Test Activity', whoId = leds.id);
        insert t;

        //Verify count
        leds = [SELECT ID, activity_count__c FROM Lead WHERE ID = :leds.id];

        //Disconnect task from the lead
        didRun = false; //Reset
        t.whoId = null;
        update t;
        //Verify count = 0
        leds = [SELECT ID, activity_count__c FROM Lead WHERE ID = :leds.id];

        didRun = false; //Reset
        //Add an event
        Event e = new Event(subject='Test Event', whoId = leds.id, startDateTime = System.Now(), endDateTime = System.now());
        insert e;

        //Verify count = 1
        leds = [SELECT ID, activity_count__c FROM Lead WHERE ID = :leds.id];

        //Relink the task to the lead
        didRun = false; //Reset
        t.whoId = leds.id;
        update t;

        //Verify count = 2
        leds = [SELECT ID, activity_count__c FROM Lead WHERE ID = :leds.id];

        //Disconnect the event from the lead
        didRun = false; //Reset
        e.whoId = null;
        update e;

        //Verify count is back down to 1
        leds = [SELECT ID, activity_count__c FROM Lead WHERE ID = :leds.id];

        //Delete the task
        didRun = false; //reset
        delete t;
        //Verify count is back down to 0
        leds = [SELECT ID, activity_count__c FROM Lead WHERE ID = :leds.id];







trigger TaskUpdateLead on Task (after delete, after insert, after undelete, after update) {

    Set<ID> ledsIds = new Set<ID>();
    //We only care about tasks linked to leads.
    String prefix =  LeadActivityCount.ledsPrefix;

    //Add any lead ids coming from the new data
    if (Trigger.new != null) {
        for (Task t : Trigger.new) {
            if (t.WhoId != null && String.valueOf(t.whoId).startsWith(prefix) ) {

    //Also add any lead ids coming from the old data (deletes, moving an activity from one lead to another)
    if (Trigger.old != null) {
        for (Task t : Trigger.old) {
            if (t.WhoId != null && String.valueOf(t.whoId).startsWith(prefix) ) {

    if (ledsIds.size() > 0)