Right to Carry

Armed customer stops restaurant robbery suspects in their tracks

Reading Time: 0:37 min

You hear it all the time from anti-gunners, “No one really uses their gun to stop a crime”. They love to insinuate that concealed carries suffer from Heroes complex. The…

View post

29 People Killed, 130 Injured in Chinese Knife Attack (Video)

Reading Time: 0:26 min

Twenty-nine people were killed and 130 were injured Saturday night when 10 men armed with long knives stormed the station in the southwest Chinese city of Kunming, the state news…

View post

One of These YouTube Gun Stars Could Spawn the Next ‘Duck Dynasty’

Reading Time: 0:53 min

While the issue of guns can be polarizing, there’s a growing batch of charismatic YouTube stars who offer a window onto what many consider a more mainstream type of gun…

View post

‘NO GUNS PERMITTED’ AT TOBY KEITH’S NEW BAR AND GRILL

Reading Time: 0:26 min

Toby Keith’s I Love This Bar and Grill opened in Potomac Town Center in Woodbridge, Virginia, this week with a sign on the door: “No guns permitted.

View post

Chance The Rapper Says The Murder Rate Declined This Year In Chicago & Calls For Peace

Reading Time: 0:27 min

I wouldn’t call myself a Chance the Rapper fan, nor do I consider him a rapper. CTR is  like a Rapper & Blues artist on psychedelic drugs (Childish Gambino anyone?).…

View post

Army veteran banned from daughter’s school after posting picture of weapons permit

Reading Time: 1:2 min

When I analogized being a gun owner to the gay rights movement, some people were like how dare I compare the two. This woman is being ostracized from her daughters…

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>