Colion Noir

Moms Demand Action + Mayors Against Illegal Guns = Anti Gun Avengers?

Reading Time: 0:51 min

Lol. So, the anti-gun groups are forming a little conglomerate on us. There is something so lame about this little, “gives us all your guns” union. Where is Marlo to dismantle…

View post

NRA New’s Newest Commentator: Austin Weiss aka @TheGarageInc

Reading Time: 0:24 min

Here’s why you should hate and love Austin Weiss. This is how a basic text message conversation looks, between Austin and I, after I tell him I want him to…

View post

Sen Feinstein crying about “Assault Rifles”, again

Reading Time: 0:27 min

It humors me how she tries to bolster her argument by pointing out that the M&P on on the M&P-15 means Military and Police. Should we want substandard “civilian” versions?…

View post

Russell Simmons gets schooled by gun enthusiast Colion Noir; Turns To Yoga For Comfort

Reading Time: 1:12 min

A lot of people are not too familiar with the twitter sparring match I had with Russell Simmons back in March 2013. I  did not realize that Twitchy did a…

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

There is No Right to “Feel Safe”

Reading Time: 0:18 min

I hear this all the time, ” I have a right to feel safe”. No, you don’t. You have right to protect yourself and your family, but you don’t have…

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>