Right to Carry

Kentucky Road Rage Shooting Believed to be Self-Defense

Reading Time: 1:54 min

Road rage incidents, despite seemingly becoming even more common, are notoriously dangerous and should be avoided at all costs. Most are easily avoided simply by ignoring the outraged driver and…

View post

Louisiana Takes a Stand: No State Contracts for Businesses Discriminating Against the Gun Industry

Reading Time: 1:47 min

Louisiana Gov. Jeff Landry (R) drew praise from Second Amendment advocates for his strong stand against giant firms that discriminate against the weapons industry. The first-term lawmaker signed the Firearm…

View post

Armed California Homeowner Detains Burglary Suspects at Gunpoint

Reading Time: 1:59 min

There are numerous reasons why it is a great idea to be armed and prepared for the unexpected, and a California family learned that truth the hard way late Sunday…

View post

Federal Appeals Court Upholds Sweeping California Ban on Gun Sales at Fairgrounds

Reading Time: 1:52 min

The 9th Circuit Court of Appeals ruled unanimously on Tuesday that California’s blanket ban on gun shows and weapons sales on any state property is constitutional. The 3-0 decision upheld…

View post

Lawmaker Targets Gas-Operated Semi-Automatic Firearms for Prohibition

Reading Time: 1:52 min

New legislative attempts to brush aside the Second Amendment and ban standard weapons in the U.S. are as regular as the sunrise. The latest infringement comes from Rep. Lucy McBath…

View post

Hunter Biden Found Guilty On All 3 Federal Gun Charges

Reading Time: 2:37 min

Hunter Biden has been found guilty in his federal gun trial in Wilmington, Delaware. The president’s son faced three felony counts for lying on a federal form about his drug…

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>