Free Trial

Interesting note on construction in the.....>

UK VIEW
UK VIEW: Interesting note on construction in the BoE Agent's summary:
"Construction output growth had slowed further. That was largely due to the poor
weather, but some projects had been delayed following the collapse of Carillion.
Contacts expected to make up weather-related delays, but some would not be able
to do so until after Q2 due to capacity constraints"

To read the full story

Close

Why MNI

MNI is the leading provider

of intelligence and analysis on the Global Fixed Income, Foreign Exchange and Energy markets. We use an innovative combination of real-time analysis, deep fundamental research and journalism to provide unique and actionable insights for traders and investors. Our "All signal, no noise" approach drives an intelligence service that is succinct and timely, which is highly regarded by our time constrained client base.

Our Head Office is in London with offices in Chicago, Washington and Beijing, as well as an on the ground presence in other major financial centres across the world.
}); window.REBELMOUSE_TASKS_QUEUE.push(function(){ window.dataLayer.push({ 'event' : 'logedout', 'loggedOut' : 'loggedOut' }); }); window.REBELMOUSE_TASKS_QUEUE.push(function(){ (function appendPosts () { var policyPosts = document.getElementsByClassName('policy-posts-wrapper')[0]; var policyPostsMenu = document.querySelector('.policy-posts-span'); policyPostsMenu.append(policyPosts); policyPosts.style.display = "block"; var empolicyPosts = document.getElementsByClassName('em-policy-posts-wrapper')[0]; var empolicyPostsMenu = document.querySelector('.em-policy-posts-span'); empolicyPostsMenu.append(empolicyPosts); empolicyPosts.style.display = "block"; var dataPosts = document.getElementsByClassName('data-posts-wrapper')[0]; var dataPostsMenu = document.querySelector('.data-posts-span'); dataPostsMenu.append(dataPosts); dataPosts.style.display = "block"; })(); }); window.REBELMOUSE_TASKS_QUEUE.push(function(){ document.querySelectorAll(".my-mni").forEach(function(item){ item.href="/core/users/email_login/"; item.innerHTML="Log In"; }) }); window.REBELMOUSE_TASKS_QUEUE.push(function(){ document.querySelector('.signup-form').addEventListener('submit', () => { window.dataLayer = window.dataLayer || []; dataLayer.push({ 'event' : 'submission_click', 'event_category': "Sign Up Button Clicks", 'event_label': "Posts" }); }) }); window.REBELMOUSE_TASKS_QUEUE.push(function(){ REBELMOUSE_STDLIB.createElementChangeListener('.signup-form.authentication--form',function(item){ item.onsubmit=function(e){ ga('b.send', 'event', {eventCategory: 'Signup', eventAction: 'CompletedForm', eventLabel:'pageTitle', eventValue:15}); window.dataLayer = window.dataLayer || []; dataLayer.push({ 'event' : 'signup_click', 'event_category': "Signup", 'event_action': 'CompletedForm', 'event_label': 'pageTitle', 'event_value': 15 }); } }) }); window.REBELMOUSE_TASKS_QUEUE.push(function(){ document.querySelectorAll("img").forEach(function (img) { img.addEventListener("contextmenu", function (e) { return false; }); }); document .querySelector(".site-logo img") .addEventListener("contextmenu", function (e) { return true; }); }); window.REBELMOUSE_TASKS_QUEUE.push(function(){ document.querySelector('.signup-form').addEventListener('submit', () => { window.dataLayer = window.dataLayer || []; dataLayer.push({ 'event' : 'submission_click', 'event_category': "Sign Up Button Clicks", 'event_label': "Posts" }); }) }); window.REBELMOUSE_TASKS_QUEUE.push(function(){ REBELMOUSE_STDLIB.createElementChangeListener('.signup-form.authentication--form',function(item){ item.onsubmit=function(e){ ga('b.send', 'event', {eventCategory: 'Signup', eventAction: 'CompletedForm', eventLabel:'pageTitle', eventValue:15}); window.dataLayer = window.dataLayer || []; dataLayer.push({ 'event' : 'signup_click', 'event_category': "Signup", 'event_action': 'CompletedForm', 'event_label': 'pageTitle', 'event_value': 15 }); } }) }); window.REBELMOUSE_TASKS_QUEUE.push(function(){ let posts = document.querySelectorAll(".all-content-wrapper .widget:not(.stream-story-processed)"); window.check_story_posts(posts, "streamOfPosts"); }); window.REBELMOUSE_LOW_TASKS_QUEUE.push(function(){ function populateInputsWithAPAPI(c) { document.querySelectorAll('.signup-form input[name="country"]').forEach(el => { el.setAttribute("value", c.country_name); }); document.querySelectorAll('.signup-form .country_name').forEach(el => { el.setAttribute("value", c.country_name); }); let country_code = c && c.country_code ? c.country_code.toLowerCase() : "auto"; document.querySelectorAll('.signup-form .country_code').forEach(el => { el.setAttribute("value", country_code); }); document.querySelectorAll('.signup-form .selected_country').forEach(el => { el.setAttribute("value", country_code); }); } const fetch = function (err, res) { var r = new XMLHttpRequest(); r.open("GET", err, !0), (r.responseType = "json"), (r.onload = function () { var err = r.status; res(200 === err ? null : err, r.response); }), r.send(); }; function setupCountry() { if (window.preventDuplicateExec) { return; } window.preventDuplicateExec = true; window.REBELMOUSE_STDLIB.onElementInViewport({ threshold: 0, firstOnly: true, oneTime: true, selector: ".signup-form", onIntersect: (entry) => { // when you need to get access to that data you call it in that way: let ipapiData = localStorage.getItem("ipapiData"); if (!ipapiData) { fetch("https://ipapi.co/json/", function (err, ipData) { console.log("populating inputs with data from IP API "); localStorage.setItem("ipapiData", JSON.stringify(ipData)); populateInputsWithAPAPI(ipData); }); } else { console.log( "populating inputs with data from IP API data stored in local storage" ); populateInputsWithAPAPI(JSON.parse(ipapiData)); } }, }); } setupCountry(); }); window.REBELMOUSE_LOW_TASKS_QUEUE.push(function(){ /* const sidebar = document.querySelector('.left-sidebar-container'); const stickyContent = document.querySelector('.sticky-content'); const siteContent = document.querySelector('.all-posts-stream'); if (sidebar && stickyContent && siteContent) { if (siteContent.clientHeight > sidebar.clientHeight) { console.log('grater -> ', siteContent.clientHeight + ' > ' + sidebar.clientHeight); stickyContent.style.height = (siteContent.clientHeight - sidebar.clientHeight) + 'px'; } } */ }); window.REBELMOUSE_LOW_TASKS_QUEUE.push(function(){ function populateInputsWithAPAPI(c) { document.querySelectorAll('.signup-form input[name="country"]').forEach(el => { el.setAttribute("value", c.country_name); }); document.querySelectorAll('.signup-form .country_name').forEach(el => { el.setAttribute("value", c.country_name); }); let country_code = c && c.country_code ? c.country_code.toLowerCase() : "auto"; document.querySelectorAll('.signup-form .country_code').forEach(el => { el.setAttribute("value", country_code); }); document.querySelectorAll('.signup-form .selected_country').forEach(el => { el.setAttribute("value", country_code); }); } const fetch = function (err, res) { var r = new XMLHttpRequest(); r.open("GET", err, !0), (r.responseType = "json"), (r.onload = function () { var err = r.status; res(200 === err ? null : err, r.response); }), r.send(); }; function setupCountry() { if (window.preventDuplicateExec) { return; } window.preventDuplicateExec = true; window.REBELMOUSE_STDLIB.onElementInViewport({ threshold: 0, firstOnly: true, oneTime: true, selector: ".signup-form", onIntersect: (entry) => { // when you need to get access to that data you call it in that way: let ipapiData = localStorage.getItem("ipapiData"); if (!ipapiData) { fetch("https://ipapi.co/json/", function (err, ipData) { console.log("populating inputs with data from IP API "); localStorage.setItem("ipapiData", JSON.stringify(ipData)); populateInputsWithAPAPI(ipData); }); } else { console.log( "populating inputs with data from IP API data stored in local storage" ); populateInputsWithAPAPI(JSON.parse(ipapiData)); } }, }); } setupCountry(); });