Chris Costa

“Easy Day” – Chris Costa Beast Modes In a Mini Van?

Reading Time: 0:27 min

I keep trying to over look the mini van but I can’t. All I keep seeing is the mini van. I keep watching the video and all I see is…

View post

Never Let Chris Costa Borrow Any of Your Guns

Reading Time: 2:34 min

I was confused as the man who is commonly known as the beard, handed me his Salient Arms Glock 19. The gun looked like he found it at the bottom…

View post

2014 Gear Girl Calendar Trailer Promo Final

Reading Time: 0:27 min

She can get it, she can get it, and she can get it. That’s usually what goes through my mind when I watch videos like this. I’m rather unapologetic about…

View post

$6,000 for an M&P!?!

Reading Time: 0:24 min

Let’s be clear, I like the gun, I really do. I think Doug from ATEI does awesome work, but $6k? Do you know how many strip… I mean kids I…

View post

ATEi/Chris Costa M&P Revisited

Reading Time: 2:22 min

I decided to have a talk with Doug at ATEi about this M&P that sold out in minutes, withstanding a $1500 price tag. Initially, I wondered whether paying $1500 for what was…

View post

$1500 for an M&P? I Guess

Reading Time: 2:49 min

I think the Chris Costa ATEi M&P 9 Mashup is an Awesome looking handgun. I would not mind if all polymer guns started going in this direction as far as aesthetics go. But sweet…

View post
<script>
  /*Source: https://github.com/Krzysztof-Antosik/Two-direction-Sticky-Sidebar*/
  
  // Verificar el ancho de pantalla al cargar y redimensionar
  function checkScreenWidth() {
    if (window.innerWidth <= 767) {
      // Si la pantalla es menor o igual a 676px, no ejecutar el código
      return;
    }

    const stickyElement = document.querySelector('.fb-sidebar__aside');
    const startPosition = stickyElement.getBoundingClientRect().top;

    let endScroll = window.innerHeight - stickyElement.offsetHeight - 500;
    let currPos = window.scrollY;
    let screenHeight = window.innerHeight;
    let stickyElementHeight = stickyElement.offsetHeight;
    let topGap = 40;
    let bottomGap = 40;

    setTimeout(() => {
      if (stickyElement.hasAttribute('data-top-gap')) {
        const dataTopGap = stickyElement.getAttribute('data-top-gap');
        topGap = dataTopGap === 'auto' ? startPosition : parseInt(dataTopGap);
      }

      if (stickyElement.hasAttribute('data-bottom-gap')) {
        bottomGap = parseInt(stickyElement.getAttribute('data-bottom-gap'));
      }
    }, 100);

    stickyElement.style.position = 'sticky';
    stickyElement.style.top = `${topGap}px`;
    stickyElement.style.height = 'fit-content';

    function positionStickySidebar() {
      endScroll = window.innerHeight - stickyElement.offsetHeight - bottomGap;
      const stickyElementTop = parseInt(stickyElement.style.top.replace('px', ''));

      if (stickyElementHeight + topGap + bottomGap > screenHeight) {
        if (window.scrollY < currPos) {
          if (stickyElementTop < topGap) {
            stickyElement.style.top = `${stickyElementTop + currPos - window.scrollY}px`;
          } else if (stickyElementTop >= topGap && stickyElementTop !== topGap) {
            stickyElement.style.top = `${topGap}px`;
          }
        } else {
          if (stickyElementTop > endScroll) {
            stickyElement.style.top = `${stickyElementTop + currPos - window.scrollY}px`;
          } else if (stickyElementTop < endScroll && stickyElementTop !== endScroll) {
            stickyElement.style.top = `${endScroll}px`;
          }
        }
      } else {
        stickyElement.style.top = `${topGap}px`;
      }
      currPos = window.scrollY;
    }

    function stickyElementToMe() {
      stickyElement.style.top = `${topGap}px`;
    }

    function updateSticky() {
      screenHeight = window.innerHeight;
      stickyElementHeight = stickyElement.offsetHeight;
      positionStickySidebar();
    }

    setTimeout(() => {
      window.addEventListener('resize', () => {
        currPos = window.scrollY;
        updateSticky();
      });

      document.addEventListener('scroll', updateSticky, {
        capture: true,
        passive: true
      });
    }, 1000);
  }

  // Verificar el ancho de pantalla al cargar y redimensionar
  window.addEventListener('load', checkScreenWidth);
  window.addEventListener('resize', checkScreenWidth);
</script>