Unhandled Error!

Undefined index: HTTP_REFERER

Document /modules/shopproductbooking/controllers/booking.php
Document type PHP document
Line 163
Exception class Phpr_PhpException

Code Highlight

        $bookingDomain = Phpr::$config->get("BOOKING_FORM_DOMAIN",
            "booking." . str_replace("www.", "", $_SERVER['HTTP_HOST'])
        );
        if($dev = Phpr::$request->getField('dev_domain')) {
            $bookingDomain = str_replace("booking", "booking-$dev", $bookingDomain);
        }
        elseif(preg_match('/(?<=dev_domain=)[a-z]+/', $_SERVER['HTTP_REFERER'], $matches)) {
            $bookingDomain = str_replace("booking", "booking-{$matches[0]}", $bookingDomain);
        }
        return $bookingDomain;
    }
 
	public function getRemoteBookingForm() {
# Call Stack Code Document Line
32 ProductBookingController::getBookingDomain(()) /modules/shopproductbooking/controllers/booking.php 88
31 ProductBookingController::getRemoteProductDetails(array(1) [0 => '050070']) /modules/shopproductbooking/controllers/booking.php 44
30 ProductBookingController::getProductDetails(array(1) [0 => '050070']) /modules/shopproductbooking/classes/shopproductbooking_module.php 58
29 ShopProductBooking_Module->after_product_fetch(object(Shop_Product))
28 call_user_func_array(array(2) [0 => object(ShopProductBooking_Module), 1 => 'after_product_fetch'], array(1) [0 => object(Shop_Product)]) /phproad/system/class_functions.php 18
27 callFunction(array(2) [0 => object(ShopProductBooking_Module), 1 => 'after_product_fetch'], array(1) [0 => object(Shop_Product)]) /phproad/modules/phpr/classes/phpr_events.php 79
26 Phpr_Events->fire_event(array(1) [name => 'shop:onAfterProductRecordFetch'], object(Shop_Product))
25 call_user_func_array(array(2) [0 => object(Phpr_Events), 1 => 'fire_event'], array(2) [0 => array(1), 1 => object(Shop_Product)]) /phproad/system/class_functions.php 18
24 callFunction(array(2) [0 => object(Phpr_Events), 1 => 'fire_event'], array(2) [0 => array(1), 1 => object(Shop_Product)]) /phproad/modules/phpr/classes/phpr_events.php 153
23 Phpr_Events->fireEvent('shop:onAfterProductRecordFetch', object(Shop_Product))
22 call_user_func_array(array(2) [0 => object(Phpr_Events), 1 => 'fireEvent'], array(2) [0 => 'shop:onAfterProductRecordFetch', 1 => object(Shop_Product)]) /phproad/modules/phpr/classes/phpr_extensible.php 159
21 Phpr_Extensible->__call('fireEvent', array(2) [0 => 'shop:onAfterProductRecordFetch', 1 => object(Shop_Product)]) /modules/shop/models/shop_product.php 1861
20 Backend_Events->fireEvent('shop:onAfterProductRecordFetch', object(Shop_Product)) /modules/shop/models/shop_product.php 1861
19 Shop_Product->after_fetch(()) /phproad/modules/db/classes/db_activerecord.php 444
18 Db_ActiveRecord->_find_fill(array(33) [0 => array(138), 1 => array(138), 2 => array(138), 3 => array(138), 4 => array(138), 5 => array(138), 6 => array(138), 7 => array(138), 8 => array(138), 9 => array(138), 10 => array(138), 11 => array(138), 12 => array(138), 13 => array(138), 14 => array(138), 15 => array(138), 16 => array(138), 17 => array(138), 18 => array(138), 19 => array(138), 20 => array(138), 21 => array(138), 22 => array(138), 23 => array(138), 24 => array(138), 25 => array(138), 26 => array(138), 27 => array(138), 28 => array(138), 29 => array(138), 30 => array(138), 31 => array(138), 32 => array(138)], null) /phproad/modules/db/classes/db_activerecord.php 540
17 Db_ActiveRecord->find_all_internal(null, array(0), null) /phproad/modules/db/classes/db_activerecord.php 559
16 Db_ActiveRecord->find_all(()) /modules/cms/classes/cms_controller.php(383) : eval()'d code 20
15 eval(()) /modules/cms/classes/cms_controller.php 383
14 Cms_Controller->evalWithException('?><? $string = $_SERVER["REQUEST_URI"] ; $string = strtok($string, '?'); $placename = array_reverse(explode('/', trim($string, '/'))); $placename = ucwords(htmlentities($placename[0])); ?> <!-- view:shop:product_list_diy_trade_21_2_row_dynamics --> <!-- <?php if( isset($paginate) && $paginate ) { $page_index = isset($page_index) ? $page_index-1 : 0; $records_per_page = isset($records_per_page) ? $records_per_page : 48; $pagination = $products->paginate($page_index, $records_per_page); } else { $pagination = null; } $products = $products instanceof Db_ActiveRecord ? $products->find_all() : $products; ?> --> <?php $foundit = 0 ; foreach ($products as $product){ if($product->x_bookpay <= 1 or $product->x_bookpay >= 200){ $foundit = 1 ; } } if(empty($foundit)) return ; ?> <?php $i=1 ; $showEvery = 3 ; foreach ($products as $product): ?> <?php if($product->x_bookpay <= 1 or $product->x_bookpay >= 200): ?> <?php if( is_int(($i-1) / $showEvery) && $i >1 ): ?> <!-- start promo --> <!--<div style="margin-bottom: 2em;" class="hide-for-small"> <div class="twelve columns" style="height: 100%; border: 1px solid #404040; margin-bottom: 2em; padding:1.5em 1.5em 0;"> </div> </div>--> <!-- end promo --> <?php endif ?> <div style="margin-bottom: 2em;" class="product-list-item"> <? if($i == 1): ?> <div class="" style="display: inline-block; border: 1px solid #002B41; background: #002B41; color: #fff; padding: 0.5em 0.5em 0.2em 0.5em; font-size: 1.6em; text-transform: uppercase; font-weight: bold">Most Popular</div> <? endif; ?> <? if (strpos($product->name, 'Package') !== false): ?> <div class="" style="display: inline-block; border: 1px solid #00b67A; background: #00b67A; color: #fff; padding: 0.5em 0.5em 0.2em 0.5em; font-size: 1.6em; font-weight: bold; text-transform: uppercase;">Package Deal</div> <? endif; ?> <div class="twelve columns" style="<?php echo ($i == 1) ? 'border: 0.2em solid #002B41 !important;' : ''; ?> <? if (strpos($product->name, 'Package') !== false): ?>border: 0.2em solid #00b67A !important;<? endif; ?> height: 100%; margin-bottom: 2em; padding:1.5em 1.5em 0; min-height: 280px;"> <?php $this->render_partial('product_card_image', array('product' => $product, 'placename' => $placename)); ?> <?php $this->render_partial('product_card_header', array('product' => $product)); ?> <div class="four mobile-four columns"> <?php $days1Multiplier = 0.6; $percentages = $product->om('x_remote_percentages'); if($percentages && !empty($percentages['days_1'])) { $days1Multiplier = $percentages['days_1']/100; } ?> <div class="product-mobile"> <?php $this->render_partial('product_card_banners', array('product' => $product)); ?> <div class="catbul"><?php echo $product->x_bullets; ?></div> </div> <div class="row desc"> <div class="twelve mobile-four columns product-price-wrap"> <? if (strpos($product->name, 'Skip Hire') !== false): ?> <span class="price">Our Price From: </span><span class="price"> POA</span> <? else: ?> <span class="price">Our Price From: </span><span class="price"> <? if ($product->x_weekly_only != 1): ?> <?php echo format_currency($product->om('x_remote_sale_price')*$days1Multiplier); ?> <? else: ?> <?php echo format_currency($product->om('x_remote_sale_price')); ?> <? endif; ?> </span> <? endif; ?> </div> </div> <div class="twelve mobile-four columns ticks"> <p style="font-size: 1.1em; margin: 1em 0;">&nbsp;<i class="fas fa-check" style="color: #00b67A;"></i>&nbsp;&nbsp;DIY &amp; Trade<br class="hide-for-small"/> <?php if($product->om('is_on_sale')): ?> &nbsp;<i class="fas fa-check" style="color: #00b67A;"></i>&nbsp;&nbsp;<span style="color: #eb121a">Save <?php $sale_price_or_discount = $product->om('x_remote_discount') ?: $product->om('sale_price_or_discount'); if(strpos($sale_price_or_discount, '%')) { echo round($sale_price_or_discount); echo "&#37;"; } else { echo format_currency(ltrim($sale_price_or_discount, '-')); } ?></span><br/> <?php endif; ?> <?php if($product->om('x_remote_booking_delay') >= 7): ?> <span class="hide-for-small">&nbsp;<i class="fas fa-arrow-trend-down" style="color: #00b67A;"></i>&nbsp;&nbsp;Low Availability</span> <?php else: ?> <span class="hide-for-small">&nbsp;<i class="fas fa-check" style="color: #00b67A;"></i>&nbsp;&nbsp;Best Availability</span> <?php endif ?> <?php if(Phpr::$config->get('TEST_EXTRA_API_FIELDS', false) && $product->om('x_has_insurance')): ?> <span class="hide-for-small">&nbsp;<i class="fas fa-shield" style="color: #00b67A;"></i>&nbsp;&nbsp;Insurance Available</span> <?php endif ?> <?php if(Phpr::$config->get('TEST_EXTRA_API_FIELDS', false) && $product->om('x_deposit_amount')): ?> <span class="hide-for-small">&nbsp;<i class="fas fa-money-bill-transfer" style="color: #00b67A;"></i>&nbsp;&nbsp;Deposit <?= format_currency($product->om('x_deposit_amount')) ?> (Refundable)</span> <?php endif ?> <?php if(Phpr::$config->get('TEST_EXTRA_API_FIELDS', false) && $product->om('x_requires_id')): ?> <span class="hide-for-small">&nbsp;<i class="fas fa-id-card" style="color: #00b67A;"></i>&nbsp;&nbsp;Online ID Verification Required</span> <?php endif ?> </p> </div> <? $productUrl = $product->page_url('/product') . '/'; if(!$product->has_om_records()) { $productUrl .= (strpos($productUrl, '?') ? '&' : '?') . 'booking_modal_show=1'; } ?> <div class="row"> <!--<div class="twelve mobile-four columns"> <a href="<?php echo $productUrl ?>" title="Book &amp; Pay Online" class="button expand quotebutton"><i class="fas fa-calendar-alt"></i>&nbsp; Book &amp; Pay Online</a> </div> <div class="twelve mobile-four columns"> <a href="<?php echo $product->page_url('/product'); ?>/" data-gtm="Button: Book & Pay Online (C)" title="Book &amp; Pay Online" class="button expand quotebutton"><i class="fas fa-calendar-alt"></i>&nbsp; Book &amp; Pay Online</a> </div> <div class="twelve mobile-four columns"> <a href="<?php echo $product->page_url('/product'); ?>/" data-gtm="Button: Product Detail (C)" title="More Information" class="button expand quotebutton-alt">Product Detail</a> </div>--> <div class="twelve mobile-four columns"> <a href="<?php echo $product->page_url('/product'); ?>/" data-gtm="Button: Details & Booking (C)" title="Details &amp; Booking" class="button expand quotebutton"><i class="fas fa-calendar-alt"></i>&nbsp;&nbsp; Details &nbsp;&amp;&nbsp; Booking</a> </div> </div> <div class="row"> <div class="twelve columns" style="text-align: center; padding-top: 1em; color: #808080;"> <p class='product-list-free-delivery'> <?php if($product->om('x_allow_delivery') > 0 && $product->om('x_min_delivery_charge') > 0) { echo "<i class='fas fa-truck fa-fw' style='padding-right: 1em'></i>&nbsp; <span style='font-weight: 700;'>Low Cost</span> National Delivery"; } elseif ($product->om('x_allow_delivery') > 0 && $product->om('x_min_delivery_charge') < 1) { echo "<i class='fas fa-truck fa-fw' style='padding-right: 1em'></i>&nbsp; <span style='font-weight: 700;'>FREE</span> Delivery: Nationwide"; } ?> <?php $collectionSitesCount = $product->om('x_collection_available_from'); if($collectionSitesCount > 0) { echo "<i class='fas fa-map-marker-alt'></i>&nbsp;&nbsp;Click & Collect: <span style='font-weight: 700;'>$collectionSitesCount</span> Locations"; } ?> </p> </div> </div> </div> </div> </div> <?php /* <?php else: ?> <!--<div style="margin-bottom: 2em;"> <div class="twelve columns" style="height: 100%; border: 1px solid #404040; margin-bottom: 2em; padding:1.5em 1.5em 0;"> . </div> </div>--> <?php endif; ?> */ ?> <?php $i++; ?> <?php endif; ?> <?php endforeach; ?>', 'CMS partial', 'shop:product_list_diy_trade_21_2_row_dynamics', array(1) [products => object(Shop_Product)]) /modules/cms/classes/cms_controller.php 1020
13 Cms_Controller->render_partial('shop:product_list_diy_trade_21_2_row_dynamics', array(1) [products => object(Shop_Product)]) /modules/cms/classes/cms_controller.php(383) : eval()'d code 73
12 eval(()) /modules/cms/classes/cms_controller.php 383
11 Cms_Controller->evalWithException('?><? $string = $_SERVER["REQUEST_URI"] ; $patterns = array(); $patterns[0] = '/plant-hire/'; $patterns[1] = '/-/'; $patterns[2] = '/\//'; $replacements = array(); $replacements[0] = ''; $replacements[1] = '-'; $replacements[2] = ''; $placename = ucwords(htmlentities( preg_replace($patterns, $replacements, $string))); $headers = array( "Plant Hire $placename", "Hire Plant $placename", "Plant Hire Near $placename", "Plant Hire Near me $placename" ); $headerKey = array_rand($headers); $header = $headers[$headerKey]; $descriptions = array( "National Tool Hire works with some of the biggest and best plant and equipment suppliers in the UK, so that we can offer our customers a reliable and fulfilling service. If you are working on a site or DIY project near $placename, we can source an excellent range of excavators, dumpers, vibrating rollers, and other equipment to help you get the job done.", "At National Tool Hire, we enjoy a great relationship with some of the industry’s leading plant suppliers. If you are a contractor working in $placename, or you are taking on a DIY project, we can provide the excellent equipment you need. We can provide diggers, dumpers, rollers, telehandlers, and more.", "National Tool Hire works with some of the biggest and best plant and equipment suppliers in the UK. We have a wide range of plant and equipment available for hire near $placename, including excavators, dumpers, and vibrating rollers. Whether you're working on a construction site or a DIY project, we can help you get the job done.", "Looking for plant hire in $placename? National Tool Hire works with some of the best plant and equipment suppliers in the UK, so we can offer our customers a reliable and fulfilling service. If you're working on a site or DIY project, we can source an excellent range of excavators, dumpers, vibrating rollers, and other equipment to help you get the job done.", "Are you looking for plant hire in $placename? We enjoy excellent relationships with some of the industry's leading plant suppliers, so we can provide the high-quality equipment you need for your project. Whether you're a contractor or undertaking a DIY project, we offer diggers, dumpers, rollers, telehandlers and more. Whatever plant hire needs you have, use National Tool Hire.", "Do you need to hire plant and equipment for a job near the $placename area? National Tool Hire works with some of the largest rental equipment providers in the UK, giving us access to an incredible product fleet. If you need excavators, dumpers, road rollers, or powered access, we have a brilliant range that is suitable for projects on any scale.", "At National Tool Hire, we offer a wide range of plant and equipment for hire near the $placename area. Our high-quality fleet contains everything from excavators and dumpers to road rollers and powered access, making us the perfect choice for any size project. Whether you're working on small domestic jobs or major commercial projects, we have the tools you need to get the job done quickly and efficiently.", "Looking for plant hire in the $placename area? At National Tool Hire, we have a wide selection of excavators, dumpers, road rollers, and other equipment to suit any project. Whether you need equipment for a small residential job or larger industrial projects, we have the tools and expertise to get the job done right. Contact us today to learn more about our plant hire services.", "If you need plant and equipment for a job near the $placename area, National Tool Hire can help. We work with some of the largest rental equipment providers in the UK, giving us access to an incredible product fleet. If you need excavators, dumpers, road rollers, or powered access, we have a brilliant range that is suitable for projects on any scale.", "Looking for plant hire in the $placename area? At National Tool Hire, we have access to an extensive fleet of rental equipment from some of the country's top providers. Our excavators, dumpers, road rollers, and other plant equipment are ideal for projects of all sizes and scopes. Whether you need heavy-duty machinery for an industrial job or more compact equipment for a smaller project, we have you covered. With our wide selection of plant and equipment rentals, you'll be able to find the ideal tools to get the job done right. Visit us online today to browse our selection and learn more about our rental services.", "Looking for plant hire near the $placename area? At National Tool Hire, we have an extensive range of rental equipment to suit any project. Whether you need excavators, dumpers, road rollers, or powered access, our fleet is sure to have everything you need. So why wait? Book your plant hire today and get started on your next project.", "Looking for plant hire in the $placename area? Look no further than National Tool Hire. With access to a large and diverse fleet of rental equipment, we offer everything you need for your project, whether it's an excavation, paving work, or any other type of job. From excavators and dumpers to road rollers and powered access, we've got you covered. Contact us today to learn more.", "Looking for plant hire in the $placename area? At National Tool Hire, we work with a wide range of rental equipment providers to provide you with access to an extensive product fleet. Whether you need excavators, dumpers, road rollers, or powered access equipment, our selection has everything you need to complete your project on any scale. With competitive rates and quick delivery, our plant hire services are the perfect choice for your next project.", "If you need plant and equipment for a job near the $placename area, National Tool Hire can help. We work with some of the largest rental equipment providers in the UK, giving us access to an incredible product fleet. If you need excavators, dumpers, road rollers, or powered access, we have a brilliant range that is suitable for projects of any scale. So whether you're working on a small renovation or a large-scale construction project, our plant hire services can help get your job done efficiently and effectively.", "National Tool Hire works with some of the biggest and best plant and equipment suppliers in the UK, so that we can offer our customers a reliable and fulfilling service. If you are working on a site or DIY project near $placename, we can source an excellent range of excavators, dumpers, vibrating rollers, and other equipment to help you get the job done.", "If you're working on a construction project or undertaking some serious DIY in $placename, then you're going to need the right plant and equipment to get the job done. National Tool Hire works with some of the best plant and equipment suppliers in the UK, so we can offer our customers a reliable and fulfilling plant hire service.", "At National Tool Hire, we offer plant hire services to customers throughout the UK. Our selection of high-quality excavators, dumpers, rollers, and other equipment can help you get any job done quickly and easily. Whether you are working on a construction site or doing some DIY projects at home, we have everything you need to get the job done right. So why wait? Contact us today to learn more about our plant hire services and get started on your project.", "Looking for plant hire in $placename? National Tool Hire can help! We work with some of the UK's leading plant and equipment suppliers to provide our customers with a reliable and fulfilling service. Whether you're working on a construction site or a DIY project, we can source an excellent range of excavators, dumpers, vibrating rollers, and other equipment to get your job done quickly and efficiently. Contact us today to learn more about our plant hire options and competitive rates.", "National Tool Hire offers plant and equipment rental across the country. We work with some of the most reliable suppliers in the industry. Our huge network allows us to provide more equipment to more area when they’re needed for a job. So if it’s a professional contract or a DIY project, we can help. Book online today.", "Looking for plant hire? National Tool Hire offers plant and equipment rental across the country. We work with some of the most reliable suppliers in the industry, so you can be sure you're getting quality equipment. Our huge network also means that we can provide more equipment to more areas when it's needed for a job. So whether it's a professional contract or a DIY project, we can help you find the right plant for your needs. Book online today to get started.", ); $descriptionKey = array_rand($descriptions); $description = $descriptions[$descriptionKey]; ?> <section id="category-page" class="content category" style="z-index: 999; position:relative; padding-bottom: 0px;"> <div class="row"> <div class="twelve columns"> <h1><?php echo $header; ?></h1> </div> </div> <div class="row"> <div class="twelve columns" style="margin-bottom: 2em;"> <p> <?php echo $description; ?> </p> </div> </div> </section> <section class="category"> <div class="row"> <div class="nine columns"> <?php $group = Shop_CustomGroup::create()->find_by_code('dynamic_plant'); if($group): ?> <?php $this->render_partial('shop:product_list_diy_trade_21_2_row_dynamics', array( 'products' => $group->list_products() )); ?> <?php endif; ?> </div> <div class="three columns" style="position: -webkit-sticky; /* Safari */ position: sticky; top: 1rem;"> <?php $this->render_partial('call_free') ?> <div class="twelve columns random-usp"> <?php $this->render_partial('random_usp') ?> </div> <div class="twelve columns random-blog"> <?php $this->render_partial('random_blog') ?> </div> </div> </div> </section> <section> <p class="footerbanner" style="padding: 10px 5px; background-color: #c8102e; margin-bottom: 2em; margin-top: 0"> <? $num = Rand (1,5); switch ($num) { case 1: echo '<a class="footerbanner-link" href="/price-match/"><em class="fa fa-tag fa-lg"></em>&nbsp; &nbsp; <span style="font-weight: bold;">Plant Hire:</span> Price Match Promise</a></p>'; break; case 2: echo '<a class="footerbanner-link" href="/tool-hire-guide/"><em class="fa fa-info-circle fa-lg"></em>&nbsp; &nbsp; <span style="font-weight: bold;">DIY &amp; Trade:</span> Plant Hire</a></p>'; break; case 3: echo '<a class="footerbanner-link" href="/tool-hire-guide/"><em class="fa fa-calendar fa-lg"></em>&nbsp; &nbsp; <span style="font-weight: bold;">Cheap Weekly Hire Rates</span></a></p>'; break; case 4: echo '<a class="footerbanner-link" href="/free-delivery/"><em class="fa fa-hand-pointer-o fa-lg"></em>&nbsp; &nbsp; <span style="font-weight: bold;">Collect from Store</span> - or - <span style="font-weight: bold;">Delivered to Door</span>&nbsp; &nbsp; <em class="fa fa-truck fa-lg"></em></a></p>'; break; case 5: echo '<a class="footerbanner-link" href="/free-delivery/"><em class="fa fa-hand-pointer-o fa-lg"></em>&nbsp; &nbsp; <span style="font-weight: bold;">Click &amp Collect</span> - or - <span style="font-weight: bold;">Free Delivery</span>&nbsp; &nbsp; <em class="fa fa-truck fa-lg"></em></a></p>'; } ?> </p> <?php $reviews = array( "Fantastic|Hired this in $placename when ours broke, cant thank the team enough for fast delivery and machine was in perfect condition|Dave Boyd", "WOW|hired for the factory based in $placename when we was refurbing, worked a treat and no issues, online team was a lot of help|Scarlett", "content|was told about the variety of products the plant hire provide and was given the best option, the pallet moving truck was very good for moing round areas|Frank H", "would hire again|Good machine hired and very safety ridden for my health and safety factory and my maanger was pleased with the price|Kiera", "Impressed|Hired some plant hire to $placename, looked brand new, no faults, exactly what I expect to hire, will be hiring again after this|Fraser Shaw", "Plant|Thank you for the successful plant hire - Really impressed with the delivery and equipment that arrived|Elliott Franklin", "Plant Hire|Ordered a scissor lift to $placename and no issues with the hire even after having it on hire for 2 months|O Jackson", "Successful Hire|Simple & easy hire, will be using again, made changes to the hire and ended up having to extend twice due to job delays and no problems with this|Mr T Stewart", "Plant Hire Review|I needed to find a reliable site for plant hire in $placename glad I found national tool hire excellent service from start to finish|Mia Bryan", "Rotavator|Hired a rotavator over the course of a weekend this done a fantastic job of aerating my soil to prepare my garden in time for the summer |Aaron Whitmore", "Cheers Guys|I hired this mini digger last month, thankful the insurance & fuel was included as this saved a lot of time and hassle cheers guys|Tom Hendricks", "Wood Chipper Review|Hired a wood chipper in $placename this was exactly what I needed to get rid of my excess garden waste, I would recommend this piece of kit to anyone|Shaun O'Connor", "Reliable|Reliable machine hired in $placename it copes with any rough surface and is very good in our industry|Oliver Rudd", "Hire plant|Ideal hire in $placename machine worked well and could get to high places more safe than ladders|Monty", "Thanks |Very quiet maachine hired it didnt distract the staff working was why we hired this, worked well and no faults|Ellie May", "Great|Labour fit product and worked for sorting out our repair, amd moves around great|D Byers", "Thank you|Ordered a telehandler, easy and simple to order very helpful and arrived on time to $placename all round great hire |Olivia Harris", "Great Hire|Hired plant equipment to $placename, all equipment was in good condition with no faults |Jack Greenwood", "Plant Hire|Really happy with the equipment that arrived but also the range of equipment available - Will be back for our next lot of site equipment|J Tomlinson", "New customer|Recommended by my collegue - Will be using from now on for our sites across the UK for all hire of plant equipment as equipment arrived on time, good working condition if not new - really impressed|Parker Rogers", "Hire Plant Review|Hired a tip dumper for my farm in $placename, great piece of kit and the driver rang me an hour before he arrived which was a big help|Natalie Sloan", "Mini Digger Review|National Tool Hire are the most reliable I have found in our local area for hire plant, the fact the fuel was included with this mini digger as a life saver|Zayn Atherton", "Swivel Dumper Review|I hired this dumper a few weeks back for a big job I had in $placename, this arrived in top condition and had a full tank of fuel included too|Joshua Lu", "Excavator Review|Once again brill service thanks guys this excavator I hired meant my husband could do our fence posts and stop the horses from getting out of the field|Mrs Jessica Walker", "very safe|Great item hired in $placename the compact design isgreat for moving through doorways, arrived on time|Jeff R", "robust |good for manoeuvring around site during the installation in the warehouse, great for fast delivery in $placename|M Hussain", "ideal|because you can rotate its good for tight spaces so no damage to surrounding, very lightweight item|Jaxon", "Mobile mast|10 metres height platform was good for accurate precised inspection notes, no faults |Elouise", "Great Order|Ordered a cherry picker for delivery to $placename to use to clean the moss from the roof over the weekend - Great hire|G Ford", "Will Reccommend|Will defiantely reccommend - very professional, good equipment and communication was easy for delivery and collection|Mrs Roberts", "Happy Customer|Very happy customer here - Needed a cherry picker in $placename, it was not a problem for the team and the equipment for me was perfect - sturdy, good condition and reliable|Dennis Williams", "Would hire again|Ordered a cherry picker for an outdoors job - looked in great condition, worked excellently and felt very safe on it - Would hire again|Travis Jones", "Cherry Picker Review|We hired a cherry picker to use in our warehouse in $placename, the platform height means our lads can get to the top safely and quickly |Bryan Cooper", "Will Use Again|Hired a boom lift for my window cleaning company to reach a job that was high up, this was sturdy and in great condition will definitely hire again|Elliott Hogg", "Fast Delivery|Needed a cherry picker to help me trim our oak tree which was becoming a nuisance, this arrived earlier than expected meaning the job was done quicker|Noel Hart", "Boom Lift Hire|I hired this boom lift to help out on our site in $placename as we felt this would be a safer option and easiest to manouvre around with ease|Sam Pugh", "Mini Digger|Very user friendly digger for hard to get places, great crane to dig safely hire in $placename would hire from these again |Dawson", "Dig Dug Done|great for renevating the garden, worked a treat and im a happy customer, would definitely hire from here again in $placename|Amelia", "convenient|was able to dig quickyl and efiencently with this mini digger and was very ideal for our land to get the crops clear|Shawn", "Micro Digger|needed the ground sorting for our new car park, the hills needed digging out and flattennig with this hire it was done in no time|Tia", "Fantastic|Easy to order, everything included, quick and efficent delivery - fantastic hire for my garden renovation|Yvonne ", "Great on site|Had a mini digger delivered to $placename to use on a site for a pool, sturdy, very good to use in confined space of outdoor area, will be hiring for future jobs|H Smith", "1.5T mini Digger|Used this on our land for utility work that was needed for the new building - very pleased with the hire of the digger |Ernest Bradley", "Will Use Again|Hired a mini digger for a site in $placename, good digger with a good ssize fuel tank and very robust for use on site - will use again|JJ Lincoln", "0.8T Digger Review|I hired this 0.8T mini digger in $placename, booking was easy a simple deposit required and you're all ready to go thank you|Aston Bowder", "Mini Digger Review|I needed a mini digger when landscaping, the adjustable front blade makes it super easy to use as required, insurance AND a full tank of fuel as well? Bonus!|Kareem Werner", "3T Excavator Review|Hired this 3T excavator for a job I had for a client who wanted a new swimming pool, prompt delivery to $placename would definately hire again|Stuart Broughton", "1.5T Digger Review|I hired a 1.5T mini digger for a big job me and the lads had, the digger itself is extra strong and sturdy making for fantastic results every time|Paddy Whittle", "Forklift hire|Hired this for our factory in $placename, moving pallets of office furniture on a daily basis is hard enough we hired this to see if it would help productivity it has improved massively|Kirsten", "forklift|hired in $placename for the factory staff to move the pallets of boxes around after installs, worked great and no issues|Zack Horn", "forklifts|great bit of kit that was able to be transferred to differnt sites whilst on hire a lot more light weight than i expected|Aaron", "Forklift hire|unexpectedly quiet considering the job its made to do, was able bto move machinery around the laundry effectively and quickly|Meghan", "Reliable |Hired a forklift for use on the shipment yard in $placename - Arrived in good time as ordered and great piece of equipment - Very sturdy, reliable and strong|Sam Everett", "Forklift Truck|This is a well built machine - Strong, safe and reliable as well as being esay to use - Will hire this again |Greg Tulip", "Tremendous|Used NTH for the 1st time, ordered a forklift truck to $placename and was not dissapointed, staff memebers were very impressed with the safety and efficent machine that was delivered|N Sand", "Superb|Thank you for a superb hire of a forklift truck, great machine and ordering along with delivery and collection was all fantastic - Thankyou again|Brian Howard", "Warehouse Help|I hired this forklift for our warehouse in $placename to help us move pallets around, this came in great condition and worked as expected|Toby Manning", "Counterbalance Stacker Review|We were a forklift down on our site so we hired this counterbalance stacker, this could be manouvred with plenty of ease but at the same time heavy duty|P. Gilmore", "Fast Delivery|Had on hire this forklift last month to help us out in the warehouse, this arrived next day and meant our job could be done in no time at all|Lucas Shepard", "Would Recommend|Our warehouse in $placename required a forklift this helped us in moving our heavy boxes around and was as good as new when it arrived would recommend to anyone|Louis G", "telehandler|Great hire for the farmer like me in $placename was able ot move the bales around easily and quickly with no bother|Roxie", "hire happy|hire was done in $placename i couldnt be happier with this and the visibilty from the driver seat is good|Isaac", "telehandler hire|was ableto move things to overhead storage on site with ease and I couldnt complain about the price, wil definitely be a returnnig customer|Amber", "thanks |good piece of kit forthe factory, the tidy up on site was in near perfect condition as we was able to maneuover stuff round with this|Georgie", "Great piece of kit|Hired this for on my customers farm in $placename and It arrived in great time and condition - Will be recommending|Josh Handley", "Telehandler|Always unsure when hiring equipment but was pleasently surprised with the equipment and if all future hires are the same as the hire of this telehandle, I will be a forever customer|Harry Sweeney", "4M Diesel Mini Telehandler|Perfectly sized mini telehandler - We had a narrow access point on site in $placename - This was perfectly described and an excellent machine|Norman Amena", "Outstanding|I have already reccommened this to my collegues - Outstanding hire from start to finish - Impressed with the ordering system, the equipment and collection. Thanks|K Wright", "5m Telehandler Review|I hired this telehandler for our site in $placename, I only needed a small one so was happy to see I could opt for the 5m one|Duncan Herbert", "Mini Telehandler Review|This mini telehandler I had on hire last month arrived quickly and in very good condition, thanks to the smaller size I can reverse with ease|Emmanuel Galindo", "Farm Help|I was let down last minute and needed a telehandler asap, the delivery was nice and quick and the fitted forklift was a great help on my farm in $placename|Sebastian", "Thanks Guys|Needed a telehandler this one I had on hire last week was 13.5m which was just the right size I needed to help out on the farm thanks guys|Richard May", "Thanks|ripping out the house in $placename instead of lugging things back and fourth to the skip we hired this it saved our backs!|Edna", "Mini Dumper|hired a mini dumper in $placename for the garden area was able to move the soil with ease, no faults |Paddy Clarkson", "Dumper hire|much safer than an everage wheelbarrow and saves a lot of effort physically, i would hire this on my next renovation|J Everett", "Mini Dumper|Great kit with a good pwerful tip very compact for use in tight areas but a big enough area for the goods|Hayden", "Marvelous|Great to use for moving old soil to the skip during our garden renovation - easy to moneuver and made a big job simple|Jake R", "Great Mini Digger|Used this mini digger whilst finishing a kids playarea job in a park in $placename - used it to remove soil but also for the wood chippings to go down - Saved so much time|Mr Gregson", "Very Impressed|We hired a mini digger to remove all rubble, soil etc from the demolition of our out house, hardly any spillage was exceptional - My husband and I were so impressed with the machine|R J Trent", "Mni Digger|Hired a mini digger to $placename - Great piece of kit, only needed it for a little job and it arrived on time, no issues, worked great, would use again|M Cooper", "Muck Truck Review|Hired the muck truck mini digger in $placename worked a dream, the smaller sizing meant it could tip quickly so the job was done in no time|Luke McCabe", "Should've Hired Sooner|The high tip tracked barrow we had on hire was fantastic, I was told to use a mini dumper rather than a wheelbarrow and I can't believe I've never hired one sooner|Sam Bowler", "Great Value For Money|I hired a 0.5T high tip mini dumper for a week doing a job in $placename, excellent service from start to finish and great value for money too|F. Buchanan", "Mini Dumper Review|I find mini dumpers are much easier too use than wheelbarrows and don't make half as much mess. They're also much safer to|Ahmad", "Excavator|Spacious cabin which is great for my back, was good at landscaping my large garden in $placename|Shelby", "Excavotor|$placename hire with very simple settings means anyone can use this with no problems was a massive help|A Hull", "hire of excavator|Very powerful digger that done the job it was made to do with ease, would hire again and team was lovely|Lilly", "Excavator hire|hired when we bought a house in a bit of a state, the garden needed sorting so instead of putting it in the skip ourselves this really helped|Alicia", "3T Excavator Hire|Hired this for on 1 of our sites in $placename - Will be hiring again for other sites across the UK as it was faultless and the machine was in great condition|B Ullsworth", "Very Impressed|Hired this for my builder to use, excellent customer service, equipment and delivery and collection - very impressed with the whole hire|Benjamin Hyland", "Great Product|Great service, equipment and price - Hired this excavator to $placename for a week and it was fantastic. Comfortable, easy to use and very sturdy|Frankie L", "Thanks|Ordered a excavator and it arrived it great condition - all of the team commented on the very comfortable cabin, the smooth operation and how easy it was to use compared to others|Adam Reed", "Excavator Review|I needed a excavator auger in $placename, this one we had on hire arrived prompt and in top notch condition, this drilled a hole in the ground within seconds|Finlay Jordon", "Wheeled Excavator Review|I hired an excavator to help out on a job in $placename, came across this wheeled digger. Job took longer than expected but thanks to the guys for extending this for me no problem|R. May", "13T Wheeled Excavator|This 13T wheeled excavator I hired came in handy when digging a pond for my mother, the excavator was in excellent condition and was brillaint value for money|Chris Perez", "Great Results|We hired this excavator to help when digging a trench last month, this was both versatile and strong. Great results would hire again |Norman E", ); shuffle($reviews); $reviewKeys = array_rand($reviews, 3); ?> <h2 style="text-align: center; text-transform: uppercase"><i class="fa fa-user"></i>&nbsp; &nbsp; What <? print $placename ?> Plant Hire Customers Say About Us:</h2> <div class="row" style="padding: 2em 0;"> <div class="three hide-for-small columns" style="text-align: center;"> <img src="/themes/nthsv3/resources/images/rated_excellent2.png" loading="lazy" alt="Rated Excellent for Plant Hire in <? echo $placename ?>" style="float: left; width: 220px; height:100%;"> <p style="display: inline-block; float: left; padding-top: 1em;">Rated Excellent for<br/>Plant Hire in <? echo $placename ?></p> </div> <?php foreach($reviewKeys as $reviewKey): ?> <?php $review = explode('|', $reviews[$reviewKey]); ?> <div class="three mobile-four columns"> <div class="stars"> <img src="/themes/nthsv3/resources/images/stars-5.svg" loading="lazy" alt="Rated Excellent for Plant Hire in <? echo $placename ?>" style="width: 100px; height: 100%;"> </div> <div class="minireview"> <div> <h3 style='font-size: 1.2em; font-weight: 900; margin-bottom: 0; text-align: left;'><?php echo $review[0]; ?></h3> <?php if (isset($review[1])): ?> <p style='margin-bottom: 0;'><?php echo $review[1]; ?></p> <?php endif; ?> <?php if (isset($review[2])): ?> <p style='color: #909090;'><?php echo $review[2]; ?></p> <?php endif; ?> </div> </div> </div> <?php endforeach; ?> </div> </section> <script type="application/ld+json"> { "@context": "http://schema.org/", "@type": "LocalBusiness", "name": "National Tool Hire Shops: <?php echo $placename; ?>", "description": "Plant Hire in <?php echo $placename; ?>.", "telephone": "+44-800-808-9696", "image": "https://www.nationaltoolhireshops.co.uk/themes/nthsv3/resources/images/NTHS_logo.png", "address": "<?php echo $placename; ?>", "aggregateRating": { "@type": "AggregateRating", "ratingValue": "4.9", "bestRating": "5", "worstRating": "1", "ratingCount": "68" } } </script>', 'CMS page', 'Plant Hire') /modules/cms/classes/cms_controller.php 608
10 Cms_Controller->eval_page_content(()) /modules/cms/classes/cms_controller.php 198
9 Cms_Controller->open(object(Cms_Page), array(1) [0 => 'thetford']) /controllers/application.php 72
8 Application->On404(())
7 call_user_func_array(array(2) [0 => object(Application), 1 => 'On404'], array(0)) /phproad/modules/phpr/classes/phpr_controller.php 170
6 Phpr_Controller->executeAction('On404', array(0)) /phproad/modules/phpr/classes/phpr_controller.php 84
5 Phpr_Controller->_run('On404', array(0)) /phproad/modules/phpr/classes/phpr_response.php 64
4 Phpr_Response->open404(()) /phproad/modules/phpr/classes/phpr_response.php 37
3 Phpr_Response->open('/plant-hire/Thetford') /phproad/system/phproad.php 31
2 include('/var/www/vhosts/nationaltoolhireshops.co.uk/httpdocs/phproad/system/phproad.php') /boot.php 114
1 require_once('/var/www/vhosts/nationaltoolhireshops.co.uk/httpdocs/boot.php') /index.php 23