It looks like this is a web page, not a feed. I looked for a feed associated with this page, but couldn't find one. Please enter the address of your feed to validate.

Source: http://jobs.segd.org/rss/feed.xml

  1. <!DOCTYPE html>
  2. <html lang="en">
  3.    <head>
  4.      <!-- Google Tag Manager -->
  5.      <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
  6.      new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
  7.      j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
  8.      'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
  9.      })(window,document,'script','dataLayer','GTM-NFM95BJ');</script>
  10.      <!-- End Google Tag Manager -->
  11.        <base href="https://jobs.segd.org/">        <title>Page not found | SEGD Job Bank</title>
  12.  
  13.        <meta name="description" content="Career website">
  14.  
  15.        <meta charset="UTF-8">
  16.        <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=5" >
  17.        <meta name="mobile-web-app-capable" content="yes">
  18.        <meta http-equiv="X-UA-Compatible" content="IE=edge">
  19.  
  20.        <meta content="gmugMA9YjmMbdzftlblYQCCBXY3nhrZYrUXEIF1W" name="csrf-token">
  21.  
  22.                <meta content="index,follow" name="robots">
  23.        
  24.        
  25.        <script>
  26.    function loadScripts(source, callback) {
  27.        if (!(source != null && (typeof source == 'string' || typeof source == 'object'))) return;
  28.        let src = typeof source == 'string' ? [source] : source;
  29.        let total = [];
  30.        let loaded = [];
  31.        let failed = [];
  32.        let fn = function (e) {
  33.            if (e.type == 'load') loaded.push(e.target.src);
  34.            else failed.push(e.target.src);
  35.            if ((loaded.length + failed.length) == total.length && typeof callback == 'function') callback(!!failed.length, loaded, failed);
  36.        };
  37.        let load = function (src) {
  38.            let s = document.createElement('script');
  39.            s.type = 'application/javascript';
  40.            s.src = src;
  41.            s.addEventListener('error', fn, false);
  42.            s.addEventListener('load', fn, false);
  43.            document.getElementsByTagName('head')[0].appendChild(s);
  44.            return s.src;
  45.        };
  46.        for (let i in src) {
  47.            let s = src[i].split(/[\s,]+/);
  48.            for (let j in s) if (total.indexOf(s[j]) < 0) total.push(load(s[j]));
  49.        }
  50.    }
  51.  
  52.    function loadStyles(source, callback) {
  53.        if (!(source != null && (typeof source == 'string' || typeof source == 'object'))) return;
  54.        let src = typeof source == 'string' ? [source] : source;
  55.        let total = [];
  56.        let loaded = [];
  57.        let failed = [];
  58.        let fn = function (e) {
  59.            if (e.type == 'load') loaded.push(e.target.src);
  60.            else failed.push(e.target.src);
  61.            if ((loaded.length + failed.length) == total.length && typeof callback == 'function') callback(!!failed.length, loaded, failed);
  62.        };
  63.        let load = function (src) {
  64.            let s = document.createElement('link');
  65.            s.rel = 'stylesheet';
  66.            s.href = src;
  67.            s.addEventListener('error', fn, false);
  68.            s.addEventListener('load', fn, false);
  69.            document.getElementsByTagName('head')[0].appendChild(s);
  70.            return s.src;
  71.        };
  72.        for (let i in src) {
  73.            let s = src[i].split(/[\s,]+/);
  74.            for (let j in s) if (total.indexOf(s[j]) < 0) total.push(load(s[j]));
  75.        }
  76.    }
  77.  
  78.    function trackEvent(url, data, method = 'GET') {
  79.        $.ajax({
  80.            url: url,
  81.            method: method,
  82.            data: data || {},
  83.            async: true,
  84.            cache: false,
  85.            headers: {
  86.                'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
  87.            },
  88.            success: (response) => {
  89.                let trackingCode = response.code || '';
  90.                $('body').append(trackingCode)
  91.            },
  92.        });
  93.    }
  94.  
  95.    function triggerEvent(name, element = document) {
  96.        if(!name) return;
  97.        const event = new Event(name);
  98.        element.dispatchEvent(event);
  99.    }
  100.  
  101.    if (typeof grecaptcha === 'undefined') {
  102.        grecaptcha = {};
  103.    }
  104.  
  105.    grecaptcha.alreadyLoaded = []
  106.    grecaptcha.loadFromCDN = function(url, params) {
  107.        if (! this.alreadyLoaded.includes(url)) {
  108.            this.alreadyLoaded.push(url);
  109.  
  110.            let script = document.createElement('script');
  111.            script.setAttribute('type', 'text/javascript');
  112.            script.setAttribute('src', url);
  113.            for (let i in params) {
  114.                script.setAttribute(params[i], '');
  115.            }
  116.  
  117.            document.body.appendChild(script);
  118.        }
  119.    }
  120.  
  121.    grecaptcha.ready = function(cb){
  122.        if (typeof grecaptcha === 'object' && typeof grecaptcha.execute === 'undefined') {
  123.            const c = '___grecaptcha_cfg';
  124.            window[c] = window[c] || {};
  125.            (window[c]['fns'] = window[c]['fns']||[]).push(cb);
  126.        } else {
  127.            setTimeout(function() {
  128.                cb();
  129.            }, 1000)
  130.        }
  131.    }
  132. </script>
  133.                    <!--link rel="preload" as="style" onload="this.onload=null;this.rel='stylesheet'" href="https://use.fontawesome.com/releases/v5.15.3/css/all.css"-->
  134.            <link rel="stylesheet" href="/themes/segd_ng/css/style.css?1751635759">
  135.        
  136.                    <script src="/themes/nextgen/js/jquery.min.js?1750753629"></script>
  137.            <script src="/themes/nextgen/js/bootstrap.min.js?1750753629"></script>
  138.            <script src="/themes/nextgen/js/plugins.js?1750753629"></script>
  139.            <script src="js/common.min.js"></script>
  140.            <script>
  141.                $(function() {
  142.                    triggerEvent('jqueryReady');
  143.                    triggerEvent('bootstrapReady');
  144.                    triggerEvent('commonReady');
  145.                })
  146.            </script>
  147.        
  148.        <link href="/themes/segd_ng/css/theme_style.css?1718264036" rel="stylesheet">
  149. <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.1/css/font-awesome.min.css">
  150. <link type="text/css" rel="stylesheet" href="//fonts.googleapis.com/css?family=Ubuntu:300" media="all">
  151.        
  152.        <meta property="og:type" content="website">
  153.        <meta property="og:site_name" content="Society for Experiential Graphic Design">
  154.  
  155.                    <meta property="og:title" content="Page not found | SEGD Job Bank">
  156.            <meta property="og:description" content="Career website">
  157.            <meta property="og:image" content="https://jobs.segd.org/themes/segd_ng/images/logo.png">
  158.            <meta property="og:url" content="https://jobs.segd.org/rss/feed.xml">
  159.        
  160.        <!-- Hotjar Tracking Code for http://jobs.segd.org -->
  161.        <script>
  162.            (function(h,o,t,j,a,r){
  163.                h.hj=h.hj||function(){(h.hj.q=h.hj.q||[]).push(arguments)};
  164.                h._hjSettings={hjid:488941,hjsv:5};
  165.                a=o.getElementsByTagName('head')[0];
  166.                r=o.createElement('script');r.async=1;
  167.                r.src=t+h._hjSettings.hjid+j+h._hjSettings.hjsv;
  168.                a.appendChild(r);
  169.            })(window,document,'//static.hotjar.com/c/hotjar-','.js?sv=');
  170.        </script>
  171.  
  172.        <script>
  173.            (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  174.                (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  175.                m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  176.            })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
  177.  
  178.            ga('create', 'UA-70037861-2', 'auto');
  179.            ga('send', 'pageview');
  180.  
  181.        </script>
  182.  
  183.        <script>
  184.            (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  185.                (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  186.                m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  187.            })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
  188.  
  189.            ga('create', 'UA-100448085-1', 'auto');
  190.            ga('send', 'pageview');
  191.  
  192.        </script>
  193.  
  194.        <script type="text/javascript">
  195.            var trackcmp_email = '';
  196.            var trackcmp = document.createElement("script");
  197.            trackcmp.async = true;
  198.            trackcmp.type = 'text/javascript';
  199.            trackcmp.src = '//trackcmp.net/visit?actid=25263710&e='+encodeURIComponent(trackcmp_email)+'&r='+encodeURIComponent(document.referrer)+'&u='+encodeURIComponent(window.location.href);
  200.            var trackcmp_s = document.getElementsByTagName("script");
  201.            if (trackcmp_s.length) {
  202.                trackcmp_s[0].parentNode.appendChild(trackcmp);
  203.            } else {
  204.                var trackcmp_h = document.getElementsByTagName("head");
  205.                trackcmp_h.length && trackcmp_h[0].appendChild(trackcmp);
  206.            }
  207.        </script>
  208.    </head>
  209.    <body>
  210.  
  211.    <!-- Google Tag Manager (noscript) -->
  212.    <noscript>
  213.        <iframe
  214.            title="Google Tag Manager"
  215.            src="https://www.googletagmanager.com/ns.html?id=GTM-NFM95BJ"
  216.            height="0"
  217.            width="0"
  218.            style="display:none;visibility:hidden">
  219.        </iframe>
  220.    </noscript>
  221.    <!-- End Google Tag Manager (noscript) -->
  222.    <!--Start top and Logo-->
  223.  
  224.    <div id="banner-header-wide-1"></div>
  225.  
  226.  
  227. <div class="container">
  228.    <div class="d-flex flex-wrap justify-content-between align-items-center desktop-header">
  229.        <a target="_blank" href="https://segd.org/"><img width="250" src="/themes/segd_ng/images/new-header-logo.png?1718264036"/></a>
  230.        <div>
  231.            <ul class="d-flex flex-wrap justify-content-end">
  232.                <li><a href="https://segd.org/join/" target="_blank">Join Us</a></li>
  233.                <li><a href="https://segd.org/expert-directory/" target="_blank">Expert Directory</a></li>
  234.                <li><a href="https://segd.glueup.com/my/home/" target="_blank">Login</a></li>
  235.            </ul>
  236.            <ul class="d-flex flex-wrap justify-content-end other-links">
  237.                <li><a href="https://segd.org/projects/" target="_blank">Projects</a></li>
  238.                <li><a href="https://segd.org/resources-education/" target="_blank">Resources + Education</a></li>
  239.                <li><a href="https://segd.org/awards/" target="_blank">Awards</a></li>
  240.                <li><a href="https://segd.org/conference-events/" target="_blank">Events</a></li>
  241.                <li><a href="https://segd.org/about/" target="_blank">About</a></li>
  242.                <li><a href="https://segd.org/community/" target="_blank">Community</a></li>
  243.                <li><a href="https://segd.org/" target="_blank"><i class="fas fa-search"></i></a></li>
  244.            </ul>
  245.  
  246.        </div>
  247.  
  248.    </div>
  249.    <div class="custom-header-navbar mobile-header mt-1">
  250.        <a target="_blank" href="https://segd.org/"><img width="250" src="/themes/segd_ng/images/new-header-logo.png?1718264036"/></a>
  251.            <nav class="navbar">
  252.                <div class="navbar-header custom-header-menu-btn">
  253.                    <button
  254.                        type="button"
  255.                        class="navbar-toggle collapsed"
  256.                        data-toggle="collapse"
  257.                        data-target="#navbar"
  258.                        aria-expanded="false"
  259.                        aria-controls="navbar"
  260.                    >
  261.                        <span class="icon-bar"></span>
  262.                        <span class="icon-bar"></span>
  263.                        <span class="icon-bar"></span>
  264.                    </button>
  265.                </div>
  266.                <div id="navbar" class="navbar-collapse collapse">
  267.                    <ul class="nav navbar-nav custom-header-menu-list">
  268.                        <li><a href="https://segd.org/join/" target="_blank">Join Us</a></li>
  269.                        <li><a href="https://segd.org/expert-directory/" target="_blank">Expert Directory</a></li>
  270.                        <li><a href="https://segd.glueup.com/my/home/" target="_blank">Login</a></li>
  271.                        <li><a href="https://segd.org/projects/" target="_blank">Projects</a></li>
  272.                        <li><a href="https://segd.org/resources-education/" target="_blank">Resources + Education</a></li>
  273.                        <li><a href="https://segd.org/awards/" target="_blank">Awards</a></li>
  274.                        <li><a href="https://segd.org/conference-events/" target="_blank">Events</a></li>
  275.                        <li><a href="https://segd.org/about/" target="_blank">About</a></li>
  276.                        <li><a href="https://segd.org/community/" target="_blank">Community</a></li>
  277.                        <li><a href="https://segd.org/" target="_blank"><i class="fas fa-search"></i></a></li>
  278.                    </ul>
  279.                </div>
  280.            </nav>
  281.    </div>
  282. </div>
  283.  
  284. <header id="ws-header">
  285.    <nav class="navbar navbar-inverse bg-dark">
  286.        <div class="container">
  287.            <div class="navbar-header">
  288.                <button
  289.                    type="button"
  290.                    class="navbar-toggle collapsed"
  291.                    data-toggle="collapse"
  292.                    data-target="#header-navbar"
  293.                    aria-expanded="false"
  294.                    aria-controls="navbar"
  295.                    aria-label="Toggle mobile navigation"
  296.                >
  297.                    <span class="icon-bar"></span>
  298.                    <span class="icon-bar"></span>
  299.                    <span class="icon-bar"></span>
  300.                </button>
  301.                            </div>
  302.  
  303.            <div
  304.                class="collapse navbar-collapse guest-menu"
  305.                id="header-navbar"
  306.            >
  307.                
  308. <div class="pull-left flex-sm-container clearfix">
  309.                                        <ul class="nav navbar-nav guest-menu">
  310.                                        <li id="menu-item-2959" class="current">
  311.                                    <a href="/"
  312.                        ex-data                                            >
  313.                                            Home                                        </a>
  314.                            </li>
  315.                                                        <li id="menu-item-2961" class="">
  316.                                    <a href="/jobs"
  317.                                                                    >
  318.                                            Search                                        </a>
  319.                            </li>
  320.                                                        <li id="menu-item-2964" class="">
  321.                                    <a href="/employer-directory"
  322.                                                                    >
  323.                                            Directory                                        </a>
  324.                            </li>
  325.                                                        <li id="menu-item-2967" class="">
  326.                                    <a href="/contact-us"
  327.                                                                    >
  328.                                            Contact Us                                        </a>
  329.                            </li>
  330.                                                                </ul>
  331.                                        <p class="navbar-btn pull-left">
  332.                <a href="/employer-offers"
  333.                    class="btn btn-primary pricing-btn"                                    >
  334.                    Pricing                </a>
  335.            </p>
  336.                        </div>
  337.  
  338.                
  339.    <nav class="nav navbar-right flex-sm-container">
  340.        <ul class="nav navbar-nav mx-0">
  341.            <li class="register-top">
  342.                <a href="#" class="dropdown-toggle" data-toggle="dropdown">
  343.                    Register                    <span class="caret"></span>
  344.                </a>
  345.                <ul class="dropdown-menu reg-choose">
  346.                    <li><a href="/register-seeker">Job Seekers</a></li>
  347.                                            <li><a href="/register-employer">Employers</a></li>
  348.                                    </ul>
  349.            </li>
  350.            <li>
  351.                <a class="sign-in" href="/sign-in">
  352.                    <i class="fas fa-lock"></i>
  353.                    Sign In                </a>
  354.            </li>
  355.            
  356. <script>
  357.    var scriptsLanguage = 'EN';
  358. </script>
  359.  
  360.        </ul>
  361.        <p class="navbar-btn pull-left">
  362.            <a class="btn btn-primary post-job" href="/employer-offers"
  363.            >Post a Job</a>
  364.        </p>
  365.    </nav>
  366.  
  367. <script>
  368.    document.addEventListener('jqueryReady', function() {
  369.        let $headerNavbar = $('#header-navbar'),
  370.            $userDropdown = $headerNavbar.find('.user-dropdown'),
  371.            $submenu = $userDropdown.find('.submenu');
  372.  
  373.  
  374.            $submenu.on('click', function (event){
  375.                event.stopPropagation();
  376.  
  377.                let $this = $(this);
  378.                    $thisMenu = $this.find('ul.menu'),
  379.                    $otherMenus = $submenu.find('ul.menu');
  380.  
  381.  
  382.  
  383.                if($thisMenu.hasClass('open')) {
  384.                    $thisMenu.removeClass('open')
  385.                } else {
  386.                    $otherMenus.removeClass('open')
  387.                    $thisMenu.addClass('open')
  388.                }
  389.            })
  390.  
  391.    });
  392. </script>
  393.  
  394.            </div>
  395.        </div>
  396.    </nav>
  397. </header>
  398.  
  399. <div class="container view-404">
  400.    <div class="row">
  401.        <div class="col-md-6 col-md-offset-3 col-sm-12 col-sm-offset-0 text-center">
  402.            <div class="page-header">
  403.                <h1>Not found</h1>
  404.            </div>
  405.            <p>The requested URL was not found on this server.</p>
  406.            <p>If you need assistance you can</p>
  407.            <p>
  408.                <a href="/" class="btn btn-primary"><i class="glyphicon glyphicon-home"></i>  visit our home page</a>
  409.                <a href="/contact-us" class="btn btn-default"><i class="glyphicon glyphicon-envelope"></i>  contact us</a>
  410.            </p>
  411.        </div>
  412.    </div>
  413. </div>
  414.    <div id="banner-footer-wide-top-1"></div>
  415.  
  416.  
  417. <div class="ws-footer" id="ws-footer">
  418.    <div class="bg-darken footer index mt-2 py-2">
  419.        <div class="container">
  420.                        <div class="row">
  421.                <div class="col-md-12">
  422.                    <a href="https://jobs.segd.org/browse-jobs" class="title d-block text-white text-bold my-1">
  423.                        Find Jobs By Category                    </a>
  424.                </div>
  425.            </div>
  426.            <div class="row">
  427.                                        <div class="col-md-3 col-sm-6">
  428.                        <ul class="list list-unstyled">
  429.                                                                                            <li class="list-item">
  430.                                    <a href="c-environmental-graphic-design-jobs.html" class="text-white">
  431.                                        Environmental Graphic Design                                    </a>
  432.                                </li>
  433.                                                    </ul>
  434.                    </div>
  435.                </div>
  436.            
  437.            <div class="row">
  438.                <div class="col-md-12 text-center text-white copyrights">
  439.                    <p>Powered by <a href="https://www.webscribble.com" target="_blank" class="underline text-white">Web Scribble Solutions</a>, Inc.</p>
  440.                </div>
  441.            </div>
  442.        </div>
  443.    </div>
  444. </div>
  445.  
  446. <footer id="ws-custom-footer">
  447.    <div class="custom-footer">
  448.    <div class="container">
  449.        <div class="d-flex justify-content-between align-items-center flex-wrap">
  450.            <a target="_blank" href="https://segd.org/"><img width="250" src="/themes/segd_ng/images/footer-logo-new.png?1718802947"/></a>
  451.            <a href="https://docs.google.com/forms/d/1rdr82btqqXi7K7sCyS3WM98LzCzjgacHNPW1mVM12sQ/edit" target="_blank"><h4>Experience design in your inbox.<br> Subscribe to our newsletter <i class="fas fa-arrow-right"></i></h4></a>
  452.        </div>
  453.        <ul class="py-2">
  454.            <li><a href="https://segd.org/contact-us/" target="_blank">Contact Us</a></li>
  455.            <li class="mt-1"><a href="https://segd.org/news/" target="_blank">News</a></li>
  456.            <li class="mt-1"><a href="https://segd.org/about/" target="_blank">About Us</a></li>
  457.            <li class="mt-1"><a href="https://segd.org/community/partner-with-us/" target="_blank">Partnerships</a></li>
  458.        </ul>
  459.        <div class="d-flex flex-wrap justify-content-between">
  460.            <ul class="d-flex custom-social">
  461.                <li><a href="https://twitter.com/segd" target="_blank"><i class="fab fa-twitter"></i></a></li>
  462.                <li><a href="https://www.facebook.com/SEGDcommunity" target="_blank"><i class="fab fa-facebook-f"></i></a></li>
  463.                <li><a href="https://www.instagram.com/segddesign/" target="_blank"><i class="fab fa-instagram"></i></a></li>
  464.                <li><a href="https://vimeo.com/segd/videos" target="_blank"><i class="fab fa-vimeo-v"></i></a></li>
  465.                <li><a href="https://www.pinterest.com/segdpin/" target="_blank"><i class="fab fa-pinterest"></i></a></li>
  466.                <li><a href="https://www.linkedin.com/company/segd/" target="_blank"><i class="fab fa-linkedin-in"></i></a></li>
  467.            </ul>
  468.            <div class="custom-copyright">
  469.                <p>&copy; SEGD-Society for Experiential Graphic Design-2025 501(c)(3) not-for-profit education organization.</p>
  470.                <p><a href="https://segd.org/terms-and-conditions/" target="_blank">Terms and Conditions</a></p>
  471.            </div>
  472.        </div>
  473.    </div>
  474. </div>
  475. </footer>
  476.  
  477.  
  478. <script defer src="/themes/nextgen/js/main.min.js?1750753629"></script>
  479.  
  480. <!-- NG-3557 -->
  481.  
  482. <!-- NG-3557 -->
  483.  
  484.  
  485.  
  486. <script>
  487.    (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  488.            (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  489.        m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  490.    })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
  491.  
  492.    ga('create', 'UA-70037861-2', 'auto');
  493.    ga('send', 'pageview');
  494.  
  495. </script>
  496.  
  497.  
  498. <script>
  499.  
  500. </script>
  501.  
  502.  
  503.  
  504.  
  505.  
  506. <div id="alert-popus-container" class="sticky-alert-container position-fixed fixed-bottom">
  507.    <div class="container-fluid">
  508.        <div class="row">
  509.                        <div id="cookieconsent-wrapper"></div>
  510.        </div>
  511.    </div>
  512. </div>
  513.  
  514. <script>
  515.    window.FontAwesomeConfig = {
  516.        autoReplaceSvg: "nest",
  517.        autoA11y: true,
  518.        autoAddCss: true,
  519.        keepOriginalSource: false
  520.    }
  521. </script>
  522. <script async src="https://use.fontawesome.com/releases/v5.15.3/js/all.js"></script>
  523.  
  524.  
  525. <script>
  526.    const templates = document.querySelectorAll('template');
  527.  
  528.    function processTemplate(element) {
  529.        const parents = document.querySelectorAll(element.dataset.parent);
  530.        const position = element.dataset.position ? element.dataset.position : 'afterend';
  531.  
  532.        parents.forEach(function(parent){
  533.            if(position === 'instead'){
  534.                parent.outerHTML = element.innerHTML;
  535.            }else{
  536.                parent.insertAdjacentHTML(position, element.innerHTML);
  537.            }
  538.        });
  539.  
  540.        if ( typeof element.dataset.cleanup === 'undefined' || element.dataset.cleanup === true || element.dataset.cleanup === 'true' ) {
  541.            element.remove();
  542.        }
  543.    }
  544.  
  545.    function addXMLRequestCallback(callback){
  546.        let nativeOpen = XMLHttpRequest.prototype.open;
  547.        let callbacks = XMLHttpRequest.callbacks = [];
  548.        XMLHttpRequest.prototype.open = function () {
  549.            callbacks.forEach(callback => callback.apply(this, arguments));
  550.            nativeOpen.apply(this, arguments);
  551.        };
  552.  
  553.        XMLHttpRequest.callbacks.push(callback);
  554.    }
  555.  
  556.    templates.forEach(function(element){
  557.        if ( !element.dataset.parent ) {
  558.            return false;
  559.        }
  560.  
  561.        if ( !element.dataset.trigger || element.dataset.trigger === 'instant' ) {
  562.            setTimeout(()=>{ processTemplate(element) }, element.dataset.delay ? element.dataset.delay : 0 );
  563.        } else if ( element.dataset.trigger === 'event' ) {
  564.            if ( !element.dataset.event ){
  565.                return false;
  566.            }
  567.            document.addEventListener( element.dataset.event, () => {
  568.                setTimeout(()=>{ processTemplate(element) }, element.dataset.delay ? element.dataset.delay : 0 );
  569.            });
  570.        } else if ( element.dataset.trigger === 'xhr' ) {
  571.            addXMLRequestCallback( function( method, url ) {
  572.                if ( element.dataset.url || element.dataset.method ) {
  573.                    if ( element.dataset.url && element.dataset.method ) {
  574.                        if ( element.dataset.method === method && url.toString().includes(element.dataset.url) ) {
  575.                            setTimeout(()=>{ processTemplate(element) }, element.dataset.delay ? element.dataset.delay : 0 );
  576.                        }
  577.                    } else if ( element.dataset.url && url.includes(element.dataset.url) ) {
  578.                        setTimeout(()=>{ processTemplate(element) }, element.dataset.delay ? element.dataset.delay : 0 );
  579.                    } else if ( element.dataset.method && element.dataset.method === method ){
  580.                        setTimeout(()=>{ processTemplate(element) }, element.dataset.delay ? element.dataset.delay : 0 );
  581.                    }
  582.                } else {
  583.                    setTimeout(()=>{ processTemplate(element) }, element.dataset.delay ? element.dataset.delay : 0 );
  584.                }
  585.            });
  586.        }
  587.    });
  588. </script>
  589. <link rel="stylesheet" href="/themes/nextgen/css/configuration.css?1750753629">
  590.  
  591. </body>
  592. </html>
  593.  
Copyright © 2002-9 Sam Ruby, Mark Pilgrim, Joseph Walton, and Phil Ringnalda