x x x
x
Only portrait mode is currently supported - please rotate your device.

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

HTML
<div class="content">
    <div class="cards-section">
        <div id="category-cards" class="horizontal-cards">
        </div>
    </div>
</div>

<script>
const categories = [
    {
      title: "Finance & Accounting",
      imgSrc: "https://gsvlabs-confluence-files.s3.us-west-2.amazonaws.com/images/MStanley/resourcePlaceholders/Finance+%26+Operations.jpeg",
      redirect: "/display/MSPER/Finance+and+Accounting"
    },
    {
      title: "Fundraising & Capital Markets",
      imgSrc: "https://gsvlabs-confluence-files.s3.us-west-2.amazonaws.com/images/MStanley/resourcePlaceholders/Fundraising.jpeg",
      redirect: "/display/MSPER/Fundraising+and+Capital+Markets"
    }, {
      title: "Leadership & Management",
      imgSrc: "https://gsvlabs-confluence-files.s3.us-west-2.amazonaws.com/images/MStanley/resourcePlaceholders/Leadership.jpeg",
      redirect: "/display/MSPER/Leadership+and+Management"
    }, {
      title: "Legal",
      imgSrc: "https://gsvlabs-confluence-files.s3.us-west-2.amazonaws.com/images/MStanley/resourcePlaceholders/Legal.jpeg",
      redirect: "/display/MSPER/Legal"
    }, {
      title: "PR & Communications",
      imgSrc: "https://gsvlabs-confluence-files.s3.us-west-2.amazonaws.com/images/MStanley/resourcePlaceholders/Marketing+%26+PR.jpg",
      redirect: "/display/MSPER/PR+and+Communications"
    }, {
      title: "Productivity",
      imgSrc: "https://gsvlabs-confluence-files.s3.us-west-2.amazonaws.com/images/MStanley/resourcePlaceholders/Productivity.jpg",
      redirect: "/display/MSPER/Productivity"
    }, {
      title: "Sales & Marketing",
      imgSrc: "https://gsvlabs-confluence-files.s3.us-west-2.amazonaws.com/images/MStanley/resourcePlaceholders/Sales+%26+Customer+Acquisition.jpeg",
      redirect: "/display/MSPER/Sales+and+Marketing"
    }, {
      title: "Talent Management",
      imgSrc: "https://gsvlabs-confluence-files.s3.us-west-2.amazonaws.com/images/MStanley/resourcePlaceholders/Talent+%26+HR.jpeg",
      redirect: "/display/MSPER/Talent+Management"
    }, {
      title: "Technology & Product Development",
      imgSrc: "https://gsvlabs-confluence-files.s3.us-west-2.amazonaws.com/images/MStanley/resourcePlaceholders/TechAndProductDev.jpg",
      redirect: "/display/MSPER/Technology+and+Product+Development"
    }
]

// renders the profile cards
async function renderCards(cards, tab) {
  let cardsDiv = document.getElementById('category-cards')
  cardsDiv.innerHTML = "";

  let cardsArray = []

  if (cards.length) {
    let promiseArr = Object.values(cards).map((card) => createProfileHTML(card, tab));

    cardsArray = await Promise.all(promiseArr) // wait for array of promises to resolve
  } else {
    cardsArray.push(`<p class="not-available">Not Available!</p>`);
  }
  cardsDiv.insertAdjacentHTML('beforeend', cardsArray.join(""));
}

// create html for the profile cards
async function createProfileHTML(card, tab) {
  const { title, imgSrc, redirect } = card;

  let myPromise = new Promise(async (resolve, reject) => {
    try {
      const profileHTML = `
            <a class="custom-card-link-styling" onclick="handleCardClick('${title}','${redirect}')">
              <div class="card" style="background-image: url(${imgSrc});">
                <div class="body">
                    <p class="name"> ${title}</p>
                </div>
              </div>
            </a>`
      resolve(profileHTML);
    } catch (error) {
      throw (error);
      reject()
    }
  });

  return await myPromise;
}

function handleCardClick(title, redirect) {
	window.location.href = redirect;
}

renderCards(categories);

</script>


Custom section
CustomCSSjustify-content: center; width: 90vw;
lastContainertrueWidth80%

This website contains links to third-party websites. These links are provided only as a convenience. The inclusion of any link is not and does not imply an affiliation, sponsorship, endorsement, approval, investigation, verification or monitoring by Morgan Stanley of any information contained in any third-party website. In no event shall Morgan Stanley be responsible for the information contained on that site or your use of or inability to use such site. You should also be aware that the terms and conditions of such site and the site's privacy policy may be different from those applicable to your use of this website.

...