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
<link rel="stylesheet" href="https://gsvlabs-confluence-files.s3-us-west-2.amazonaws.com/stylesheets/MorganStanley/msresources.css?v=84">


Custom section
ContainerIDpage-banner
Classbanner


Custom section
ClasstitleSection

Custom title
TitleResources


Show If
groupmorganstanley-admins, confluence-administrators


Custom button container
CustomCSSwidth: unset; padding: unset;

Custom button
Typecustom-button
TextAdd a New Resource
Url/display/MSRES/Create+Resource



Content Layout Macro

...

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

<script>
const categories = [
   <style>
/* REMOVE EXTRA SPACE AT TOP */
#main-content p:first-child {
    display  title: none;
}

#main-content p:nth-child(3) {
"Finance & Accounting",
      imgSrc: "https://gsvlabs-confluence-files.s3.us-west-2.amazonaws.com/images/MStanley/resourcePlaceholders/Finance+%26+Operations.jpeg",
      displayredirect: none;
}

/* BANNER */

div.banner"/display/MSRES/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/MSRES/Fundraising+and+Capital+Markets"
    }, {
    height: 368px;  title: "Industry Research & Whitepapers",
    background  imgSrc: url('"https://passportgsvlabs-confluence-mediafiles.s3-.us-west-12.amazonaws.com/Morgan+Stanley/msResourcesBanner.jpg');/images/MStanley/resourcePlaceholders/IndustryResearchAndWhitepapers.jpg",
    background-position: center; /* Center the image */
  redirect: "/display/MSRES/Industry+Research+and+Whitepapers"
    }, {
      background-repeat: no-repeat; /* Do not repeat the image */
    background-size: cover;
}

div.titleSection {
    margin: 90px 80px;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
}

.titleSection .custom-title {
    font-family: 'MS Gloria II Std';
    color: #ffffff;
    font-size: 60px;
}

button.tab-control-button {
    width: 155px;
    height: 54px;
    margin: 0 12px 0 0;
    border-radius: 8px;
    border: solid 2px rgba(255, 255, 255, 0.75);
    background: transparent;
    font-family: Karla;
    font-size: 16px;
    font-weight: bold;
    color: #ffffff;
	outline: none;
}

button.tab-control-button:hover {
    cursor: pointer;
}
</style>
Custom section
CustomCSS flex-direction: row; align-items: center; justify-content: space-between;
Classbanner
Custom section
ClasstitleSection
Custom title
TitleResources

Show If
groupmorganstanley-admins
Custom button container
CustomCSSwidth:unset;

Custom button
CustomCSSborder-radius: 6px; background-color: var(--primary-color); border: none;
Typecustom-button
TextCreate New Resource
Url/display/MSRES/Create+Resource

...

title: "Leadership & Management",
      imgSrc: "https://gsvlabs-confluence-files.s3.us-west-2.amazonaws.com/images/MStanley/resourcePlaceholders/Leadership.jpeg",
      redirect: "/display/MSRES/Leadership+and+Management"
    }, {
      title: "Legal",
      imgSrc: "https://gsvlabs-confluence-files.s3.us-west-2.amazonaws.com/images/MStanley/resourcePlaceholders/Legal.jpeg",
      redirect: "/display/MSRES/Legal"
    }, {
      title: "Podcasts & Digital Media",
      imgSrc: "https://gsvlabs-confluence-files.s3.us-west-2.amazonaws.com/images/MStanley/resourcePlaceholders/Podcasts%26DigitalMedia.jpg",
      redirect: "/display/MSRES/Podcast+and+Digital+Media"
    }, {
      title: "PR & Communications",
      imgSrc: "https://gsvlabs-confluence-files.s3.us-west-2.amazonaws.com/images/MStanley/resourcePlaceholders/Marketing+%26+PR.jpg",
      redirect: "/display/MSRES/PR+and+Communications"
    }, {
      title: "Sales & Marketing",
      imgSrc: "https://gsvlabs-confluence-files.s3.us-west-2.amazonaws.com/images/MStanley/resourcePlaceholders/Sales+%26+Customer+Acquisition.jpeg",
      redirect: "/display/MSRES/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/MSRES/Talent+Management"
    }, {
      title: "Technology & Product Development",
      imgSrc: "https://gsvlabs-confluence-files.s3.us-west-2.amazonaws.com/images/MStanley/resourcePlaceholders/TechAndProductDev.jpg",
      redirect: "/display/MSRES/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>