{"version":3,"sources":["webpack:///$_lazy_route_resource lazy namespace object","webpack:///src/app/app-routing.module.ts","webpack:///src/app/app.component.ts","webpack:///src/app/app.component.html","webpack:///src/app/app.module.ts","webpack:///src/app/components/contact-us/contact-us.component.ts","webpack:///src/app/components/contact-us/contact-us.component.html","webpack:///src/app/components/cookies-popup/cookies-popup.component.ts","webpack:///src/app/components/cookies-popup/cookies-popup.component.html","webpack:///src/app/components/examples/examples.component.ts","webpack:///src/app/components/examples/examples.component.html","webpack:///src/app/components/footer/footer-bottom-bar/footer-bottom-bar.component.ts","webpack:///src/app/components/footer/footer-bottom-bar/footer-bottom-bar.component.html","webpack:///src/app/components/footer/footer-links/footer-links.component.ts","webpack:///src/app/components/footer/footer-links/footer-links.component.html","webpack:///src/app/components/footer/footer.component.ts","webpack:///src/app/components/footer/footer.component.html","webpack:///src/app/components/half-image/half-image.component.ts","webpack:///src/app/components/half-image/half-image.component.html","webpack:///src/app/components/header/header-breadcrumbs/header-breadcrumbs.component.ts","webpack:///src/app/components/header/header-breadcrumbs/header-breadcrumbs.component.html","webpack:///src/app/components/header/header-navigation/header-navigation.component.ts","webpack:///src/app/components/header/header-navigation/header-navigation.component.html","webpack:///src/app/components/header/header-title/header-title.component.ts","webpack:///src/app/components/header/header-title/header-title.component.html","webpack:///src/app/components/header/header.component.ts","webpack:///src/app/components/header/header.component.html","webpack:///src/app/components/header/top-bar/top-bar.component.ts","webpack:///src/app/components/header/top-bar/top-bar.component.html","webpack:///src/app/components/home-content/case-studies-overview/case-studies-overview.component.ts","webpack:///src/app/components/home-content/case-studies-overview/case-studies-overview.component.html","webpack:///src/app/components/home-content/case-study-link/case-study-link.component.ts","webpack:///src/app/components/home-content/case-study-link/case-study-link.component.html","webpack:///src/app/components/home-content/find-out-more-square/find-out-more-square.component.ts","webpack:///src/app/components/home-content/find-out-more-square/find-out-more-square.component.html","webpack:///src/app/components/home-content/home-header/home-header-banner/home-header-banner.component.ts","webpack:///src/app/components/home-content/home-header/home-header-banner/home-header-banner.component.html","webpack:///src/app/components/home-content/home-header/home-header.component.ts","webpack:///src/app/components/home-content/home-header/home-header.component.html","webpack:///src/app/components/home-content/orange-technology/orange-technology.component.ts","webpack:///src/app/components/home-content/orange-technology/orange-technology.component.html","webpack:///src/app/components/home-content/our-tools/our-tools.component.ts","webpack:///src/app/components/home-content/our-tools/our-tools.component.html","webpack:///src/app/components/horizontal-slider/horizontal-slider.component.ts","webpack:///src/app/components/horizontal-slider/horizontal-slider.component.html","webpack:///src/app/components/price-package/price-package.component.ts","webpack:///src/app/components/price-package/price-package.component.html","webpack:///src/app/components/product/product.component.ts","webpack:///src/app/components/product/product.component.html","webpack:///src/app/components/slideshow/slideshow.component.ts","webpack:///src/app/components/slideshow/slideshow.component.html","webpack:///src/app/components/why-choose-us-card/why-choose-us-card.component.ts","webpack:///src/app/components/why-choose-us-card/why-choose-us-card.component.html","webpack:///src/app/pages/about-us/about-us.component.ts","webpack:///src/app/pages/about-us/about-us.component.html","webpack:///src/app/pages/about/voucherz/voucherz.component.ts","webpack:///src/app/pages/about/voucherz/voucherz.component.html","webpack:///src/app/pages/bespoke/bespoke.component.ts","webpack:///src/app/pages/bespoke/bespoke.component.html","webpack:///src/app/pages/case-studies/case-studies.component.ts","webpack:///src/app/pages/case-studies/case-studies.component.html","webpack:///src/app/pages/case-study/case-study.component.ts","webpack:///src/app/pages/case-study/case-study.component.html","webpack:///src/app/pages/construction/construction.component.ts","webpack:///src/app/pages/construction/construction.component.html","webpack:///src/app/pages/cookies/cookies.component.ts","webpack:///src/app/pages/cookies/cookies.component.html","webpack:///src/app/pages/corporate/corporate.component.ts","webpack:///src/app/pages/corporate/corporate.component.html","webpack:///src/app/pages/education/education.component.ts","webpack:///src/app/pages/education/education.component.html","webpack:///src/app/pages/home/home.component.ts","webpack:///src/app/pages/home/home.component.html","webpack:///src/app/pages/hospitality/hospitality.component.ts","webpack:///src/app/pages/hospitality/hospitality.component.html","webpack:///src/app/pages/how-it-works/how-it-works.component.ts","webpack:///src/app/pages/how-it-works/how-it-works.component.html","webpack:///src/app/pages/privacy-gdpr/privacy-gdpr.component.ts","webpack:///src/app/pages/privacy-gdpr/privacy-gdpr.component.html","webpack:///src/app/pages/terms-and-conditions/terms-and-conditions.component.ts","webpack:///src/app/pages/terms-and-conditions/terms-and-conditions.component.html","webpack:///src/app/pages/tools/availability-booker/availability-booker.component.ts","webpack:///src/app/pages/tools/availability-booker/availability-booker.component.html","webpack:///src/app/pages/tools/benchmarking/benchmarking.component.ts","webpack:///src/app/pages/tools/benchmarking/benchmarking.component.html","webpack:///src/app/pages/tools/business-simulations/business-simulations.component.ts","webpack:///src/app/pages/tools/business-simulations/business-simulations.component.html","webpack:///src/app/pages/tools/changecom/changecom.component.ts","webpack:///src/app/pages/tools/changecom/changecom.component.html","webpack:///src/app/pages/tools/cleaning-management-and-monitoring/cleaning-management-and-monitoring.component.ts","webpack:///src/app/pages/tools/cleaning-management-and-monitoring/cleaning-management-and-monitoring.component.html","webpack:///src/app/pages/tools/employee-relationship-gateway/employee-relationship-gateway.component.ts","webpack:///src/app/pages/tools/employee-relationship-gateway/employee-relationship-gateway.component.html","webpack:///src/app/pages/tools/evoucherz/evoucherz.component.ts","webpack:///src/app/pages/tools/evoucherz/evoucherz.component.html","webpack:///src/app/pages/tools/juice/juice.component.ts","webpack:///src/app/pages/tools/juice/juice.component.html","webpack:///src/app/pages/tools/orange-communications-portal/orange-communications-portal.component.ts","webpack:///src/app/pages/tools/orange-communications-portal/orange-communications-portal.component.html","webpack:///src/app/pages/tools/three-sixty-feedback/three-sixty-feedback.component.ts","webpack:///src/app/pages/tools/three-sixty-feedback/three-sixty-feedback.component.html","webpack:///src/app/pages/tools/tools/tools.component.ts","webpack:///src/app/pages/tools/tools/tools.component.html","webpack:///src/app/services/case-studies.service.ts","webpack:///src/environments/environment.ts","webpack:///src/main.ts"],"names":["webpackEmptyAsyncContext","req","Promise","resolve","then","e","Error","code","keys","module","exports","id","routes","path","component","redirectTo","pathMatch","AppRoutingModule","forRoot","imports","AppComponent","router","title","events","subscribe","evt","window","scrollTo","setTimeout","checkForHash","bind","location","hash","scrollToId","replace","ele","document","getElementById","querySelector","scrollIntoView","behavior","selector","templateUrl","styleUrls","AppModule","declarations","providers","bootstrap","ContactUsComponent","formHtml","CookiesPopupComponent","cookiesAccepted","checkForCookiesAccepted","setCookie","cookie","getCookie","name","value","days","expires","date","Date","setTime","getTime","toUTCString","nameEQ","ca","split","i","length","c","charAt","substring","indexOf","ExamplesComponent","caseStudyService","displayedCaseStudies","caseStudies","forEach","caseStudy","caseStudyType","push","FooterBottomBarComponent","FooterLinksComponent","FooterComponent","HalfImageComponent","imageSide","imageUrl","HeaderBreadcrumbsComponent","route","breadcrumbs","url","setCurrentPath","urlSegment","segment","segmentSections","toUpperCase","slice","breadCrumbText","join","linkArray","j","breadCrumb","link","HeaderNavigationComponent","hover","target","find","slideDown","slideUp","click","bodyClicked","event","closest","openMobileDropdown","HeaderTitleComponent","subtitle","HeaderComponent","TopBarComponent","CaseStudiesOverviewComponent","CaseStudyLinkComponent","content","FindOutMoreSquareComponent","firefoxDisplay","button","navigator","userAgent","toLowerCase","includes","HomeHeaderBannerComponent","documentElement","body","animate","scrollTop","offset","top","findOutMore","HomeHeaderComponent","OrangeTechnologyComponent","OurToolsComponent","sliderLoopArray","Array","fill","mouseDownX","onresize","setScreenWidth","screenWidth","innerWidth","screen","width","mouseDown","pageX","dragDistance","Math","abs","navigate","HorizontalSliderComponent","PricePackageComponent","colour","price","perWhat","boldLines","lines","ProductComponent","SlideshowComponent","elem","slideChanged","defaultHeight","defaultWidth","defaultDisplay","defaultBackgroundColour","defaultZoom","defaultZoomDirection","defaultAutoPlay","elements","currentIndex","previousIndex","backgroundsUsed","backgroundImageUrls","autoslideTimeoutHandle","zoomTimeoutHandle","zoomingBackgroundSize","autoslideInterval","sizePercent","dots","height","undefined","display","backgroundColour","zoom","zoomDirection","autoplay","nativeElement","querySelectorAll","style","position","left","backgroundSize","backgroundPosition","checkForSlideBackgrounds","setSlideBackgroundUrlArray","hideBackgroundImages","setBackgroundImages","setInitialSlides","setDots","setInterval","iterateSlide","clearInterval","dot","setSlide","resetTimers","src","opacity","transition","zoomSlide","emit","fadeOut","backgroundImage","changeBy","validateCurrentIndex","handleZooming","resetBackgroundPosition","handleZoomUp","calculateZoomTime","handleZoomDown","handleZoomLeft","handleZoomRight","handleZoomIn","handleZoomOut","percentToMove","movesPerPercent","framesRequired","secondsToMove","fps","arrowChangeSlide","WhyChooseUsCardComponent","textLines","AboutUsComponent","VoucherzComponent","BespokeComponent","wrapper","hiddenWrapper","opening","css","slideToggle","expand","CaseStudiesComponent","currentPage","pages","studiesPerPage","params","handleRoute","page","parseInt","pagesRequired","ceil","CaseStudyComponent","reference","caseStudyReference","console","error","ConstructionComponent","slideHandle","slideTextWrappers","video","muted","index","clearTimeout","showText","scrollToContact","scrollToPrices","CookiesComponent","CorporateComponent","EducationComponent","HomeComponent","HospitalityComponent","HowItWorksComponent","PrivacyGdprComponent","TermsAndConditionsComponent","AvailabilityBookerComponent","BenchmarkingComponent","BusinessSimulationsComponent","ChangecomComponent","CleaningManagementAndMonitoringComponent","EmployeeRelationshipGatewayComponent","EvoucherzComponent","JuiceComponent","OrangeCommunicationsPortalComponent","ThreeSixtyFeedbackComponent","ToolsComponent","CaseStudiesService","contentPreview","caseStudyImageUrl","clientLogoUrl","providedIn","environment","production","bootstrapModule","err"],"mappings":"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","file":"main-es5.js","sourcesContent":["function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = \"./$$_lazy_route_resource lazy recursive\";","import { NgModule } from '@angular/core';\nimport { Routes, RouterModule } from '@angular/router';\n// Pages\nimport { HomeComponent } from './pages/home/home.component';\nimport { AboutUsComponent } from './pages/about-us/about-us.component';\nimport { HowItWorksComponent } from './pages/how-it-works/how-it-works.component';\nimport { BespokeComponent } from './pages/bespoke/bespoke.component';\nimport { CaseStudiesComponent } from './pages/case-studies/case-studies.component';\nimport { HospitalityComponent } from './pages/hospitality/hospitality.component';\nimport { CorporateComponent } from './pages/corporate/corporate.component';\nimport { ConstructionComponent } from './pages/construction/construction.component';\nimport { EducationComponent } from './pages/education/education.component';\nimport { TermsAndConditionsComponent } from './pages/terms-and-conditions/terms-and-conditions.component';\nimport { PrivacyGdprComponent } from './pages/privacy-gdpr/privacy-gdpr.component';\nimport { AvailabilityBookerComponent } from './pages/tools/availability-booker/availability-booker.component';\nimport { OrangeCommunicationsPortalComponent } from './pages/tools/orange-communications-portal/orange-communications-portal.component';\nimport { JuiceComponent } from './pages/tools/juice/juice.component';\nimport { ChangecomComponent } from './pages/tools/changecom/changecom.component';\nimport { ThreeSixtyFeedbackComponent } from './pages/tools/three-sixty-feedback/three-sixty-feedback.component';\nimport { ToolsComponent } from './pages/tools/tools/tools.component';\nimport { CaseStudyComponent } from './pages/case-study/case-study.component';\nimport { CookiesComponent } from './pages/cookies/cookies.component';\nimport { EmployeeRelationshipGatewayComponent } from './pages/tools/employee-relationship-gateway/employee-relationship-gateway.component';\nimport { CleaningManagementAndMonitoringComponent } from './pages/tools/cleaning-management-and-monitoring/cleaning-management-and-monitoring.component';\nimport { BenchmarkingComponent } from './pages/tools/benchmarking/benchmarking.component';\nimport { BusinessSimulationsComponent } from './pages/tools/business-simulations/business-simulations.component';\nimport { EvoucherzComponent } from './pages/tools/evoucherz/evoucherz.component';\n\nconst routes: Routes = [\n { path: '', component: HomeComponent },\n { path: 'about-us', component: AboutUsComponent },\n { path: 'how-it-works', component: HowItWorksComponent },\n { path: 'bespoke', component: BespokeComponent },\n { path: 'case-studies', component: CaseStudiesComponent },\n { path: 'case-studies/:page', component: CaseStudiesComponent },\n { path: 'case-study/:caseStudyReference', component: CaseStudyComponent },\n { path: 'hospitality', component: HospitalityComponent },\n { path: 'corporate', component: CorporateComponent },\n { path: 'construction', component: ConstructionComponent },\n { path: 'education', component: EducationComponent },\n { path: 'terms-and-conditions', component: TermsAndConditionsComponent },\n { path: 'cookies', component: CookiesComponent },\n { path: 'privacy-gdpr', component: PrivacyGdprComponent },\n { path: 'tools/employee-relationship-gateway', component: EmployeeRelationshipGatewayComponent },\n { path: 'tools/cleaning-management-and-monitoring', component: CleaningManagementAndMonitoringComponent },\n { path: 'tools/benchmarking', component: BenchmarkingComponent },\n { path: 'tools/juice', component: JuiceComponent },\n { path: 'tools/three-sixty-feedback', component: ThreeSixtyFeedbackComponent },\n { path: 'tools/business-simulations', component: BusinessSimulationsComponent },\n { path: 'tools/evoucherz', component: EvoucherzComponent },\n { path: 'tools', component: ToolsComponent },\n { path: 'case-study', redirectTo: '/case-studies', pathMatch: 'full' } // This is required to ensure breadcrumbs work on \"case-study/:caseStudyReference\" route\n];\n\n@NgModule({\n imports: [RouterModule.forRoot(routes)],\n exports: [RouterModule]\n})\nexport class AppRoutingModule { }\n","import { OnInit } from '@angular/core';\nimport { Component } from '@angular/core';\nimport { NavigationEnd, Router } from '@angular/router';\n\n@Component({\n selector: 'app-root',\n templateUrl: './app.component.html',\n styleUrls: ['./app.component.scss']\n})\nexport class AppComponent implements OnInit {\n title = 'OTL';\n\n constructor(private router: Router) { }\n\n ngOnInit() {\n this.router.events.subscribe((evt) => {\n if (!(evt instanceof NavigationEnd)) {\n return;\n }\n window.scrollTo(0, 0);\n setTimeout(this.checkForHash.bind(this), 200);\n });\n }\n\n checkForHash(): void {\n if (window.location.hash) {\n let scrollToId = window.location.hash.replace(\"#\", \"\");\n if (scrollToId) {\n let ele = document.getElementById(scrollToId);\n if (ele) {\n document.querySelector(window.location.hash).scrollIntoView({\n behavior: 'smooth'\n });\n }\n }\n }\n }\n\n\n\n}\n","\r\n","import { BrowserModule } from '@angular/platform-browser';\nimport { NgModule } from '@angular/core';\nimport { IvyCarouselModule } from 'angular-responsive-carousel';\n\nimport { AppRoutingModule } from './app-routing.module';\nimport { AppComponent } from './app.component';\nimport { HomeComponent } from './pages/home/home.component';\nimport { AboutUsComponent } from './pages/about-us/about-us.component';\nimport { HowItWorksComponent } from './pages/how-it-works/how-it-works.component';\nimport { BespokeComponent } from './pages/bespoke/bespoke.component';\nimport { CaseStudiesComponent } from './pages/case-studies/case-studies.component';\nimport { HospitalityComponent } from './pages/hospitality/hospitality.component';\nimport { CorporateComponent } from './pages/corporate/corporate.component';\nimport { ConstructionComponent } from './pages/construction/construction.component';\nimport { EducationComponent } from './pages/education/education.component';\nimport { TermsAndConditionsComponent } from './pages/terms-and-conditions/terms-and-conditions.component';\nimport { PrivacyGdprComponent } from './pages/privacy-gdpr/privacy-gdpr.component';\nimport { AvailabilityBookerComponent } from './pages/tools/availability-booker/availability-booker.component';\nimport { OrangeCommunicationsPortalComponent } from './pages/tools/orange-communications-portal/orange-communications-portal.component';\nimport { JuiceComponent } from './pages/tools/juice/juice.component';\nimport { ChangecomComponent } from './pages/tools/changecom/changecom.component';\nimport { ThreeSixtyFeedbackComponent } from './pages/tools/three-sixty-feedback/three-sixty-feedback.component';\nimport { TopBarComponent } from './components/header/top-bar/top-bar.component';\nimport { HeaderNavigationComponent } from './components/header/header-navigation/header-navigation.component';\nimport { HeaderTitleComponent } from './components/header/header-title/header-title.component';\nimport { HeaderBreadcrumbsComponent } from './components/header/header-breadcrumbs/header-breadcrumbs.component';\nimport { HeaderComponent } from './components/header/header.component';\nimport { HomeHeaderBannerComponent } from './components/home-content/home-header/home-header-banner/home-header-banner.component';\nimport { HomeHeaderComponent } from './components/home-content/home-header/home-header.component';\nimport { OrangeTechnologyComponent } from './components/home-content/orange-technology/orange-technology.component';\nimport { FindOutMoreSquareComponent } from './components/home-content/find-out-more-square/find-out-more-square.component';\nimport { CaseStudiesOverviewComponent } from './components/home-content/case-studies-overview/case-studies-overview.component';\nimport { OurToolsComponent } from './components/home-content/our-tools/our-tools.component';\nimport { HorizontalSliderComponent } from './components/horizontal-slider/horizontal-slider.component';\nimport { ContactUsComponent } from './components/contact-us/contact-us.component';\nimport { FooterComponent } from './components/footer/footer.component';\nimport { FooterLinksComponent } from './components/footer/footer-links/footer-links.component';\nimport { FooterBottomBarComponent } from './components/footer/footer-bottom-bar/footer-bottom-bar.component';\nimport { CaseStudyLinkComponent } from './components/home-content/case-study-link/case-study-link.component';\nimport { ToolsComponent } from './pages/tools/tools/tools.component';\nimport { CaseStudyComponent } from './pages/case-study/case-study.component';\nimport { ProductComponent } from './components/product/product.component';\nimport { SlideshowComponent } from './components/slideshow/slideshow.component';\nimport { ExamplesComponent } from './components/examples/examples.component';\nimport { WhyChooseUsCardComponent } from './components/why-choose-us-card/why-choose-us-card.component';\nimport { PricePackageComponent } from './components/price-package/price-package.component';\nimport { CookiesComponent } from './pages/cookies/cookies.component';\nimport { EmployeeRelationshipGatewayComponent } from './pages/tools/employee-relationship-gateway/employee-relationship-gateway.component';\nimport { CleaningManagementAndMonitoringComponent } from './pages/tools/cleaning-management-and-monitoring/cleaning-management-and-monitoring.component';\nimport { BenchmarkingComponent } from './pages/tools/benchmarking/benchmarking.component';\nimport { HalfImageComponent } from './components/half-image/half-image.component';\nimport { BusinessSimulationsComponent } from './pages/tools/business-simulations/business-simulations.component';\nimport { CookiesPopupComponent } from './components/cookies-popup/cookies-popup.component';\nimport { VoucherzComponent } from './pages/about/voucherz/voucherz.component';\nimport { EvoucherzComponent } from './pages/tools/evoucherz/evoucherz.component';\n\n@NgModule({\n declarations: [\n AppComponent,\n HomeComponent,\n AboutUsComponent,\n HowItWorksComponent,\n BespokeComponent,\n CaseStudiesComponent,\n HospitalityComponent,\n CorporateComponent,\n ConstructionComponent,\n EducationComponent,\n TermsAndConditionsComponent,\n PrivacyGdprComponent,\n AvailabilityBookerComponent,\n OrangeCommunicationsPortalComponent,\n JuiceComponent,\n ChangecomComponent,\n ThreeSixtyFeedbackComponent,\n TopBarComponent,\n HeaderNavigationComponent,\n HeaderTitleComponent,\n HeaderBreadcrumbsComponent,\n HeaderComponent,\n HomeHeaderBannerComponent,\n HomeHeaderComponent,\n OrangeTechnologyComponent,\n FindOutMoreSquareComponent,\n CaseStudiesOverviewComponent,\n OurToolsComponent,\n HorizontalSliderComponent,\n ContactUsComponent,\n FooterComponent,\n FooterLinksComponent,\n FooterBottomBarComponent,\n CaseStudyLinkComponent,\n ToolsComponent,\n CaseStudyComponent,\n ProductComponent,\n SlideshowComponent,\n ExamplesComponent,\n WhyChooseUsCardComponent,\n PricePackageComponent,\n CookiesComponent,\n EmployeeRelationshipGatewayComponent,\n CleaningManagementAndMonitoringComponent,\n BenchmarkingComponent,\n HalfImageComponent,\n BusinessSimulationsComponent,\n CookiesPopupComponent,\n VoucherzComponent,\n EvoucherzComponent\n ],\n imports: [\n BrowserModule,\n AppRoutingModule,\n IvyCarouselModule\n ],\n providers: [],\n bootstrap: [AppComponent]\n})\nexport class AppModule { }\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-contact-us',\n templateUrl: './contact-us.component.html',\n styleUrls: ['./contact-us.component.scss']\n})\nexport class ContactUsComponent {\n\n constructor() { }\n\n formHtml: string = \"\";\n\n\n}\n","
\n
\n

Contact Us

\n
\n \n
\n
\n
","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-cookies-popup',\n templateUrl: './cookies-popup.component.html',\n styleUrls: ['./cookies-popup.component.scss']\n})\nexport class CookiesPopupComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n this.checkForCookiesAccepted();\n }\n\n cookiesAccepted: boolean = false;\n\n accept(): void {\n this.setCookie(\"CookieAccepted\", \"true\", 10000);\n this.checkForCookiesAccepted();\n }\n\n checkForCookiesAccepted(): void {\n let cookie = this.getCookie(\"CookieAccepted\");\n if (cookie) this.cookiesAccepted = true;\n }\n\n setCookie(name: string, value: string, days: number): void {\n var expires = \"\";\n if (days) {\n var date = new Date();\n date.setTime(date.getTime() + (days*24*60*60*1000));\n expires = \"; expires=\" + date.toUTCString();\n }\n document.cookie = name + \"=\" + (value || \"\") + expires + \"; path=/\";\n }\n\n getCookie(name): string {\n var nameEQ = name + \"=\";\n var ca = document.cookie.split(';');\n for(var i=0;i < ca.length;i++) {\n var c = ca[i];\n while (c.charAt(0)==' ') c = c.substring(1,c.length);\n if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);\n }\n return null;\n }\n\n eraseCookie(name): void { \n document.cookie = name +'=; Path=/; Expires=Thu, 01 Jan 1970 00:00:01 GMT;';\n }\n\n}\n","
\n
Cookies
\n

By using this website, you accept our use of cookies.

\n
\n \n \n
\n
","import { Component, Input, OnInit } from '@angular/core';\nimport { CaseStudy } from 'src/app/models/case-study.class';\nimport { CaseStudiesService } from 'src/app/services/case-studies.service';\n\n@Component({\n selector: 'app-examples',\n templateUrl: './examples.component.html',\n styleUrls: ['./examples.component.scss']\n})\nexport class ExamplesComponent implements OnInit {\n\n @Input() caseStudyType: string;\n\n constructor(private caseStudyService: CaseStudiesService) { }\n\n ngOnInit(): void {\n this.caseStudyService.caseStudies.forEach(caseStudy => {\n if (caseStudy.caseStudyType == this.caseStudyType) this.displayedCaseStudies.push(caseStudy);\n });\n }\n\n displayedCaseStudies: CaseStudy[] = [];\n\n}\n","
\n\n
\n
\n \n \n
\n
\n

{{ study.title }}

\n

{{ study.contentPreview }}

\n \n \n
\n
\n\n
","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-footer-bottom-bar',\n templateUrl: './footer-bottom-bar.component.html',\n styleUrls: ['./footer-bottom-bar.component.scss']\n})\nexport class FooterBottomBarComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","
\n
\n
\n
\n

Copyright @ 2021 Orange Technology Ltd.

\n
\n \n
\n
\n
","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-footer-links',\n templateUrl: './footer-links.component.html',\n styleUrls: ['./footer-links.component.scss']\n})\nexport class FooterLinksComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","
\n
\n
\n\n
\n
Orange Technology
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n\n
\n
Sectors
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n \n
\n\n \n\n
\n
Contact
\n

Basepoint

\n

Aviation Business Park

\n

Christchurch

\n

Dorset, BH23 6NX

\n

info@orangetechnology.co.uk

\n
\n
\n
\n
","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-footer',\n templateUrl: './footer.component.html',\n styleUrls: ['./footer.component.scss']\n})\nexport class FooterComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","\n\n","import { Component, Input, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-half-image',\n templateUrl: './half-image.component.html',\n styleUrls: ['./half-image.component.scss']\n})\nexport class HalfImageComponent implements OnInit {\n\n @Input() imageSide: string;\n @Input() imageUrl: string;\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","
\n
\n
\n
\n
\n \n
\n
\n
\n
\n
","import { Component, OnInit } from '@angular/core';\nimport { ActivatedRoute, UrlSegment } from '@angular/router';\n\n@Component({\n selector: 'app-header-breadcrumbs',\n templateUrl: './header-breadcrumbs.component.html',\n styleUrls: ['./header-breadcrumbs.component.scss']\n})\nexport class HeaderBreadcrumbsComponent implements OnInit {\n\n constructor(private route: ActivatedRoute) { }\n\n ngOnInit(): void {\n this.route.url.subscribe(this.setCurrentPath.bind(this));\n }\n\n breadcrumbs: { name: string; link: string[] }[] = [];\n\n setCurrentPath(url: UrlSegment[]): void {\n this.breadcrumbs = [];\n for (let i=0; i < url.length; i++) {\n let urlSegment = url[i];\n let segment = urlSegment.path;\n let segmentSections = segment.split(\"-\");\n for (let i=0; i < segmentSections.length; i++) {\n segmentSections[i] = segmentSections[i].charAt(0).toUpperCase() + segmentSections[i].slice(1);\n }\n let breadCrumbText = segmentSections.join(\" \");\n if (breadCrumbText == \"Case Study\") breadCrumbText = \"Case Studies\"; // Hard coded rule to make breadcrumbs work properly on individual case study page\n let linkArray: string[] = [];\n for (let j=0; j <= i; j++) {\n if (j == 0) linkArray.push('/' + url[j].path);\n else linkArray.push(url[j].path);\n }\n let breadCrumb: { name: string; link: string[] } = { name: breadCrumbText, link: linkArray }\n this.breadcrumbs.push(breadCrumb);\n }\n }\n\n}\n","
\n
\n
\n\n \n

Home

\n
\n

>

\n\n \n

0\"> >

\n \n

{{ breadcrumb.name }}

\n
\n
\n\n\n
\n
\n
","import { Component, OnInit } from '@angular/core';\nimport * as $ from 'jquery';\n\n@Component({\n selector: 'app-header-navigation',\n templateUrl: './header-navigation.component.html',\n styleUrls: ['./header-navigation.component.scss']\n})\nexport class HeaderNavigationComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n // Set event listeners for dropdown menus\n $(\".dropdown-nav-anchor\").hover(function(ele) {\n $(ele.target).find(\".nav-dropdown\").slideDown(200);\n }, function() {\n $(\".nav-dropdown\").slideUp(200);\n });\n $(\".mobile-dropdown-nav-anchor\").hover(function(ele) {\n $(\".mobile-nav-dropdown\").slideDown(200);\n }, function() {\n $(\".mobile-nav-dropdown\").slideUp(200);\n });\n $(\"body\").click(this.bodyClicked.bind(this));\n }\n\n bodyClicked(event: any): void {\n // Check if the click was not part of the mobile dropdown\n if($(event.target).closest(\".nav-wrapper-mobile\").length === 0) {\n $(\".mobile-dropdown\").slideUp(200);\n }\n }\n\n openMobileDropdown(): void {\n $(\".mobile-dropdown\").slideDown(200);\n }\n\n}\n","
\n
\n \n \n \n
\n
","import { Component, Input, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-header-title',\n templateUrl: './header-title.component.html',\n styleUrls: ['./header-title.component.scss']\n})\nexport class HeaderTitleComponent implements OnInit {\n\n @Input() title: string;\n @Input() subtitle: string;\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","

{{ title }}

\n

{{ subtitle }}

","import { Component, OnInit, Input } from '@angular/core';\n\n@Component({\n selector: 'app-header',\n templateUrl: './header.component.html',\n styleUrls: ['./header.component.scss']\n})\nexport class HeaderComponent implements OnInit {\n\n @Input() title: string;\n @Input() subtitle: string;\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","
\n \n \n \n
\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-top-bar',\n templateUrl: './top-bar.component.html',\n styleUrls: ['./top-bar.component.scss']\n})\nexport class TopBarComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","
\n
\n \n

Home

\n
\n \n

About Us

\n
\n \n

How it Works

\n
\n \n

Bespoke

\n
\n \n \n \n
\n
","import { Component, OnInit } from '@angular/core';\nimport { CaseStudy } from 'src/app/models/case-study.class';\nimport { CaseStudiesService } from 'src/app/services/case-studies.service';\n\n@Component({\n selector: 'app-case-studies-overview',\n templateUrl: './case-studies-overview.component.html',\n styleUrls: ['./case-studies-overview.component.scss']\n})\nexport class CaseStudiesOverviewComponent implements OnInit {\n\n constructor(private caseStudyService: CaseStudiesService) { }\n\n ngOnInit(): void {\n for (let i=0; i < 3; i++) {\n this.caseStudies.push(this.caseStudyService.caseStudies[i]);\n }\n }\n\n caseStudies: CaseStudy[] = [];\n\n}\n","
\n
\n

Case Studies

\n \n
\n \n
\n
\n
","import { Component, OnInit, Input } from '@angular/core';\n\n@Component({\n selector: 'app-case-study-link',\n templateUrl: './case-study-link.component.html',\n styleUrls: ['./case-study-link.component.scss']\n})\nexport class CaseStudyLinkComponent implements OnInit {\n\n @Input() imageUrl: string;\n @Input() content: string;\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","
\n \n

{{ content }}

\n
","import { Component, OnInit, Input } from '@angular/core';\n\n@Component({\n selector: 'app-find-out-more-square',\n templateUrl: './find-out-more-square.component.html',\n styleUrls: ['./find-out-more-square.component.scss']\n})\nexport class FindOutMoreSquareComponent implements OnInit {\n\n @Input() imageUrl: string;\n @Input() title: string;\n @Input() content: string;\n @Input() linkArray: string[];\n @Input() button: boolean;\n\n firefoxDisplay: boolean = false;\n\n constructor() { }\n\n ngOnInit(): void {\n if (this.button !== false) this.button = true;\n this.firefoxDisplay = window.navigator.userAgent.toLowerCase().includes(\"firefox\");\n }\n\n}\n","
\n \n

{{ title }}

\n

{{ content }}

\n \n \n
","import { Component, OnInit } from '@angular/core';\nimport * as $ from 'jquery';\n\n@Component({\n selector: 'app-home-header-banner',\n templateUrl: './home-header-banner.component.html',\n styleUrls: ['./home-header-banner.component.scss']\n})\nexport class HomeHeaderBannerComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n findOutMore(): void {\n $([document.documentElement, document.body]).animate({\n scrollTop: $(\".title\").offset().top - 20\n }, 600)\n }\n\n}\n","
\n

Improve retention levels

\n

A welcoming and effective induction is central to ensuring a positive first impression of your organisation

\n
\n
Find out more
\n
\n
","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-home-header',\n templateUrl: './home-header.component.html',\n styleUrls: ['./home-header.component.scss']\n})\nexport class HomeHeaderComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","
\n
\n \n \n \n
\n
","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-orange-technology',\n templateUrl: './orange-technology.component.html',\n styleUrls: ['./orange-technology.component.scss']\n})\nexport class OrangeTechnologyComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","
\n

Orange Technology Ltd

\n
Integrated personalised online Onboarding, Induction, Training and Development programmes to help your people be the best they can be
\n
\n \n \n \n
\n

\n Our services accompany employees throughout their journey within a workplace.\n From onboarding via a pre-arrival induction and selection testing, the first month of transitioning into their new role,\n onto continuous development and training using our simulations and 360 feedback tool.\n

\n

\n Delivering information to large numbers of people that is tailored to the individual at a time that is convenient for the user,\n whilst also gathering information in a level of interactivity that is only available via an online service.\n

\n

\n By identifying customer needs we have a flexibility to adapt our existing services to meet those needs or to provide a bespoke solution.\n

\n
","import { Component, OnInit } from '@angular/core';\nimport { Router } from '@angular/router';\n\n@Component({\n selector: 'app-our-tools',\n templateUrl: './our-tools.component.html',\n styleUrls: ['./our-tools.component.scss']\n})\nexport class OurToolsComponent implements OnInit {\n\n constructor(private router: Router) {\n window.onresize = this.setScreenWidth.bind(this);\n }\n\n ngOnInit(): void {\n this.setScreenWidth();\n }\n\n // This is used to repeat the elements in the slider\n sliderLoopArray: number[] = Array(8).fill(0);\n\n screenWidth: number;\n mouseDownX: number = null;\n\n setScreenWidth(): void {\n this.screenWidth = (window.innerWidth > 0) ? window.innerWidth : screen.width;\n }\n\n caseStudyClicked(event: any, linkArray: string[], mouseDown: boolean): void {\n if (mouseDown) {\n this.mouseDownX = event.pageX;\n } else {\n let dragDistance = Math.abs(this.mouseDownX - event.pageX);\n if (dragDistance <= 10) this.router.navigate(linkArray);\n }\n }\n\n}\n","
\n

Our Tools

\n

Find out more information on our Tools and Portals

\n \n \n
\n 1100) ? 5 : (screenWidth > 800) ? 3 : 2\"\n [overflowCellsLimit]=\"20\"\n [margin]=\"10\"\n [transitionDuration]=\"300\"\n [borderRadius]=\"0\"\n [arrows]=\"true\"\n [arrowsOutside]=\"true\"\n [dots]=\"false\"\n arrowsTheme=\"light\"\n >\n \n \n
\n
\n \n

Cleaning Management and Monitoring

\n
\n
\n
\n
\n \n

Employee Relationship Gateway

\n
\n
\n
\n
\n \n

Event Management Tools

\n
\n
\n \n
\n
\n \n

Business Simulations

\n
\n
\n
\n \n
\n\n\n
","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-horizontal-slider',\n templateUrl: './horizontal-slider.component.html',\n styleUrls: ['./horizontal-slider.component.scss']\n})\nexport class HorizontalSliderComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","

horizontal-slider works!

\n","import { Component, Input, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-price-package',\n templateUrl: './price-package.component.html',\n styleUrls: ['./price-package.component.scss']\n})\nexport class PricePackageComponent implements OnInit {\n\n @Input() title: string;\n @Input() colour: string;\n @Input() price: string;\n @Input() perWhat: string;\n @Input() boldLines: string[];\n @Input() lines: string[];\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}","
\n

{{ title }}

\n \n

£{{ price }} +VAT

\n

{{ perWhat }}

\n

{{ boldLine }}

\n

{{ line }}

\n
","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-product',\n templateUrl: './product.component.html',\n styleUrls: ['./product.component.scss']\n})\nexport class ProductComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","

product works!

\n","import { Component, ElementRef, Input, OnInit, Renderer2, EventEmitter, Output } from '@angular/core';\nimport * as $ from 'jquery';\n\n@Component({\n selector: 'app-slideshow',\n templateUrl: './slideshow.component.html',\n styleUrls: ['./slideshow.component.scss']\n})\nexport class SlideshowComponent implements OnInit {\n\n /* NOTES\n * If you want custom slide backgrounds, put an image in to each slideshow-item and give it the class slide-background\n */\n\n // Input values\n @Input() height: string;\n @Input() width: string;\n @Input() display: string;\n @Input() backgroundColour: string;\n @Input() zoom: boolean;\n @Input() zoomDirection: string; // can be: up*, down*, left*, right*, in or out * = TODO\n @Input() autoplay: boolean;\n @Output() slideChanged = new EventEmitter();\n\n // Default values for inputs\n defaultHeight: string = \"400px\";\n defaultWidth: string = \"100%\";\n defaultDisplay: string = \"block\";\n defaultBackgroundColour: string = \"transparent\";\n defaultZoom: boolean = false;\n defaultZoomDirection = \"out\";\n defaultAutoPlay = false;\n\n // Other attributes required\n elements: any = [];\n currentIndex: number = 0;\n previousIndex: number = 0;\n backgroundsUsed: boolean = false;\n backgroundImageUrls: string[] = [];\n autoslideTimeoutHandle: any = null;\n zoomTimeoutHandle: any = null;\n zoomingBackgroundSize: string = \"120%\";\n autoslideInterval: number = 10000;\n sizePercent: number = 0;\n dots: number[] = [];\n\n constructor(private elem: ElementRef) { }\n\n ngOnInit(): void {\n // Set the default value for any unset inputs\n if (this.height == undefined) this.height = this.defaultHeight;\n if (this.width == undefined) this.width = this.defaultWidth;\n if (this.display == undefined) this.display = this.defaultDisplay;\n if (this.backgroundColour == undefined) this.backgroundColour = this.defaultBackgroundColour;\n if (this.zoom == undefined) this.zoom = this.defaultZoom;\n if (this.zoomDirection == undefined) this.zoomDirection = this.defaultZoomDirection;\n if (this.autoplay == undefined) this.autoplay = this.defaultAutoPlay;\n }\n\n ngAfterViewInit(){\n // Force styles on all of the slideshow-item elements\n this.elements = this.elem.nativeElement.querySelectorAll('.slideshow-item');\n this.elements.forEach(ele => {\n ele.style.position = \"absolute\";\n ele.style.top = \"0\";\n ele.style.left = \"0\";\n ele.style.height = \"100%\";\n ele.style.width = \"100%\";\n if (this.zoom) ele.style.backgroundSize = \"120% auto\";\n else ele.style.backgroundSize = \"cover\";\n ele.style.backgroundPosition = \"50% 50%\";\n })\n this.checkForSlideBackgrounds()\n if (this.backgroundsUsed) { \n this.setSlideBackgroundUrlArray();\n this.hideBackgroundImages();\n this.setBackgroundImages();\n }\n this.setInitialSlides();\n setTimeout(this.setDots.bind(this), 200);\n if (this.autoplay) this.autoslideTimeoutHandle = setInterval(this.iterateSlide.bind(this), this.autoslideInterval);\n }\n\n resetTimers(): void {\n clearInterval(this.autoslideTimeoutHandle);\n if (this.autoplay) this.autoslideTimeoutHandle = setInterval(this.iterateSlide.bind(this), this.autoslideInterval);\n }\n\n setDots(): void {\n this.dots = [];\n for (let i = 0; i < this.elements.length; i++) {\n this.dots.push(i);\n }\n }\n\n dotClicked(dot: number): void {\n this.currentIndex = dot;\n this.setSlide();\n this.resetTimers();\n }\n\n setSlideBackgroundUrlArray(): void {\n if (this.backgroundsUsed) this.elements.forEach(ele => {\n if ($(ele).find(\".slide-background\").length > 0) this.backgroundImageUrls.push(($(ele).find(\".slide-background\")[0].src));\n else this.backgroundImageUrls.push(\"\");\n });\n }\n\n checkForSlideBackgrounds(): void {\n this.elements.forEach(ele => {\n if ($(ele).find(\".slide-background\").length > 0) this.backgroundsUsed = true;\n })\n }\n\n setInitialSlides(): void {\n this.elements.forEach(ele => {\n ele.style.opacity = 0;\n });\n this.elements[0].style.opacity = 1;\n setTimeout(function() { this.elements.forEach(ele => ele.style.transition = \"opacity .8s ease\") }.bind(this), 200); // set transitions after loading\n if (this.zoom) this.zoomSlide();\n this.slideChanged.emit(this.currentIndex);\n }\n\n hideBackgroundImages(): void {\n this.elements.forEach(ele => {\n if ($(ele).find(\".slide-background\").length > 0) $($(ele).find(\".slide-background\")[0]).fadeOut(0);\n })\n }\n\n setBackgroundImages(): void {\n for (let i=0; i < this.elements.length; i++) {\n let ele = this.elements[i];\n let url = this.backgroundImageUrls[i];\n ele.style.backgroundImage = `url(${url})`;\n }\n }\n\n iterateSlide(): void {\n this.currentIndex++;\n this.setSlide();\n }\n\n arrowChangeSlide(changeBy: number): void {\n this.currentIndex += changeBy;\n this.setSlide();\n this.resetTimers();\n }\n\n validateCurrentIndex(): void {\n if (this.currentIndex > this.elements.length - 1) this.currentIndex = 0;\n if (this.currentIndex < 0) this.currentIndex = this.elements.length - 1;\n }\n\n setSlide(): void {\n this.validateCurrentIndex();\n this.slideChanged.emit(this.currentIndex);\n this.elements.forEach(ele => {\n ele.style.opacity = 0;\n });\n this.elements[this.currentIndex].style.opacity = 1;\n if (this.zoom) this.handleZooming();\n\n // Set this for the next iteration\n this.previousIndex = this.currentIndex;\n }\n\n handleZooming(): void {\n for (let i=0; i < this.elements.length; i++) {\n if (i !== this.previousIndex) this.resetBackgroundPosition(this.elements[i]);\n }\n this.zoomSlide();\n }\n\n resetBackgroundPosition(ele: any): void {\n if (this.zoom) {\n ele.style.backgroundSize = \"120% auto\";\n if (this.zoomDirection == \"up\") ele.style.backgroundPosition = \"50% 0%\";\n if (this.zoomDirection == \"down\") ele.style.backgroundPosition = \"50% 100%\";\n if (this.zoomDirection == \"left\") ele.style.backgroundPosition = \"0% 50%\";\n if (this.zoomDirection == \"right\") ele.style.backgroundPosition = \"100% 50%\";\n if (this.zoomDirection == \"in\") ele.style.backgroundPosition = \"100% auto\";\n }\n }\n\n zoomSlide(): void {\n let ele = this.elements[this.currentIndex];\n clearInterval(this.zoomTimeoutHandle);\n if (this.zoomDirection == \"up\") { this.zoomTimeoutHandle = setInterval(this.handleZoomUp.bind(this), this.calculateZoomTime()) };\n if (this.zoomDirection == \"down\") { this.zoomTimeoutHandle = setInterval(this.handleZoomDown.bind(this), this.calculateZoomTime()) };\n if (this.zoomDirection == \"left\") this.zoomTimeoutHandle = setInterval(this.handleZoomLeft.bind(this), this.calculateZoomTime());\n if (this.zoomDirection == \"right\") this.zoomTimeoutHandle = setInterval(this.handleZoomRight.bind(this), this.calculateZoomTime());\n if (this.zoomDirection == \"in\") { this.sizePercent = 100; this.zoomTimeoutHandle = setInterval(this.handleZoomIn.bind(this), this.calculateZoomTime()); }\n if (this.zoomDirection == \"out\") { this.sizePercent = 120; this.zoomTimeoutHandle = setInterval(this.handleZoomOut.bind(this), this.calculateZoomTime()); }\n }\n\n calculateZoomTime(): number {\n let percentToMove = 50;\n if (this.zoomDirection == \"in\" || this.zoomDirection == \"out\") percentToMove = 20;\n let movesPerPercent = 10;\n let framesRequired = percentToMove * movesPerPercent;\n let secondsToMove = this.autoslideInterval / 1000;\n let fps = framesRequired / secondsToMove;\n return 1000 / fps;\n }\n\n handleZoomUp(): void {\n // TODO\n }\n\n handleZoomDown(): void {\n // TODO\n }\n\n handleZoomLeft(): void {\n // TODO\n }\n\n handleZoomRight(): void {\n // TODO\n }\n\n handleZoomIn(): void {\n this.sizePercent += 0.1;\n this.elements[this.currentIndex].style.backgroundSize = `${this.sizePercent}% auto`;\n }\n\n handleZoomOut(): void {\n this.sizePercent -= 0.1;\n this.elements[this.currentIndex].style.backgroundSize = `${this.sizePercent}% auto`;\n }\n\n\n}\n","
\n \n
\n
\n
\n \n \n
","import { Component, Input, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-why-choose-us-card',\n templateUrl: './why-choose-us-card.component.html',\n styleUrls: ['./why-choose-us-card.component.scss']\n})\nexport class WhyChooseUsCardComponent implements OnInit {\n\n @Input() imageUrl: string;\n @Input() title: string;\n @Input() textLines: string[];\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","
\n \n

{{ title }}

\n

{{ text }}

\n
","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-about-us',\n templateUrl: './about-us.component.html',\n styleUrls: ['./about-us.component.scss']\n})\nexport class AboutUsComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","\n\n
\n

The Orange Group

\n

\n The Orange Group Ltd was founded over 25years ago by Peter Lucas who is the Managing Director of the Group and Orange Technology Ltd. There are three operating companies within the Group.\n

\n
\n
\n
\n
\n
\n
\n

Orange Technology Ltd

\n

\n Primarily serving Corporate clients and providing technology services to the other Group Companies.\n

\n
\n
\n
\n
\n

STEMS Technology Ltd

\n

\n Provides products and services to the Higher Education sector.\n

\n
\n
\n
\n
\n

The Orange Simulation Company Ltd

\n

\n A joint venture with the 'Russell Partnership Technology Ltd', manages the development and delivery of the HOTS\n Business Simulation. HOTS is used by Universities, Hospitality Schools and Corporate Hotel Operators.\n

\n
\n
\n
\n
\n
\n
\n

\n We are a small agile team, keen to develop and deliver services which solve important problems for our clients. Innovation has always driven our\n developments, the company was launched with the first real time, real data business simulation for management training. We launched our web based\n (SAAS) induction platform in 2005. Our move into Higher Education was spearheaded by the launch of the first Online Student Pre-Arrival induction\n programme. Since then we have pioneered other industry leading solutions to student communication as well as facility inspection and inventory\n products. Over 1,000,000 students have utilised the induction platform within the UK.\n

\n

Core team members

\n
\n
\n

Peter Lucas: Managing Director

\n

Chris Orme: Operations Manager

\n

Cherrelle Wallace: Finance Manager

\n
\n
\n

\n

Miles Doubleday: Development Lead – Communication Platform

\n

Stephen Lee: Development Lead Simulations

\n
\n
\n

Profiles

\n

Peter Lucas - Managing Director

\n

\n Peter leads the business and specialises in using technology to develop innovative solutions to strategic issues. His approach of providing the\n highest levels of customer service combined with economic operational solutions has led him to work extensively across both the public and private\n sectors. Twenty years in the food industry with Grand Metropolitan and Allied Lyons, followed by 15 years as a management consultant, have provided\n the experience on which Peter draws.\n

\n

\n In the Public sector, he has been a contributor to the UK premier technology transfer scheme, Knowledge Transfer Partnerships and has worked as\n a consultant to central government departments and local authorities. In the private sector he has provided solutions to: British Airways, Hewlett\n Packard, British Telecom, United Distillers, Granada Group, NPower, AEA, Price Waterhouse Coopers, KPMG, EY, Delaware North and Ascot Racecourse.\n

\n

\n Peter is a Fellow of the Chartered Institute of Marketing and a member of The Institute of Directors.\n

\n

Chris Orme - Operations Manager

\n

\n Chris graduated from the University of Plymouth in 2008 and has worked for Orange since 2010. He manages all operations covering both platform development,\n hosting and the delivery of services. He is the first technical point of contact for all projects. He has an extensive background in platform development,\n website design and development, database integration and system compatibility.\n

\n

Cherrelle Wallace - Finance Manager

\n

\n Cherrelle graduated from Bournemouth University with a BA Hons in Accounting & Finance, and then went on to obtain the Advanced Diploma in Management\n Accounting (CIMA Adv Dip MA).\n

\n

\n Cherrelle oversees the financial operations of all the companies in the Orange Group providing tight control of cash management and timely and relevant\n analysis of operational costs. She also manages the administration function, is the company data protection officer and is responsible for Cyber Security\n accreditation\n

\n \n

Miles Doubleday – Induction Platform Developer

\n

\n Miles graduated from Pembroke College Oxford with a BA in Maths. He began the development of the Orange Induction platform in 2003 when he already had over 25v ears experience in software development. Initially the platform was used on Intranets and Miles masterminded the transition to the web to enable Orange, in 2006, to provide a hosted service for induction programmes. Since that time, he has overseen a programme of continuous development of functionality and of refreshment of technologies utilised ensuring the platform has always remained ahead of competitors and has linked seamlessly with other web-based applications.\n

\n

Stephen Lee - Simulation Lead

\n

\n Stephen graduated from Merton College, Oxford with a Class I (Hons) degree in Mathematics. He went on to earn his D. Phil. At Oxford in Mathematical Quantum Scattering Theory. Stephen has skills in simulation engine design, database structures, network capabilities, programming in C++, Delphi and many other languages. Stephen has designed and developed three major simulations for Orange. He has continued to develop HOTS our Hotel Operation simulation as the needs of the industry have changed over a period of 20 years. HOTS is used by 80 Universities and Hotel Schools around the world. Corporate clients such as Hilton and Marriott use it for training worldwide.\n

\n
\n\n\n
\n\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-voucherz',\n templateUrl: './voucherz.component.html',\n styleUrls: ['./voucherz.component.scss']\n})\nexport class VoucherzComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","

voucherz works!

\n","import { Component, OnInit } from '@angular/core';\nimport * as $ from 'jquery';\n\n@Component({\n selector: 'app-bespoke',\n templateUrl: './bespoke.component.html',\n styleUrls: ['./bespoke.component.scss']\n})\nexport class BespokeComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n expand(event): void {\n let wrapper = (event.target as HTMLElement).closest(\".case-study-wrapper\");\n let hiddenWrapper = (wrapper.querySelector('.hidden-content') as HTMLElement);\n let opening = $(hiddenWrapper).css(\"display\") == \"none\";\n $(\".hidden-content\").slideUp();\n if (opening) {\n $(hiddenWrapper).slideToggle();\n }\n }\n\n}\n","\n\n
\n
\n\n
\n
\n \n
\n
\n

Bespoke Training Portal

\n

The Orange platform can be set up to provide a full induction programme followed by an ongoing training resource for all employees

\n \n \n
\n

Training portal

\n

\n The Orange platform can be set up to provide a full induction programme followed by an ongoing training resource for all employees. A\n range of functionality to manage the employee’s development progress is available including:\n

\n
    \n
  • Uploading of documents e.g. Passports, driving licences, right to work, qualification certificates. All with expiry dates and a system reminder prior to expiry.
  • \n
  • Compliance training with email reminders when it has to be renewed.
  • \n
  • Timed release of development modules.
  • \n
  • Structured programmes e.g. Bronze, Silver & Gold standards
  • \n
  • Recording of training activities held outside the platform
  • \n
  • Booking on to planned internal courses
  • \n
  • Direct links to training from equipment suppliers or other third party-trainers
  • \n
\n
\n
\n
\n\n
\n
\n \n
\n
\n

Meal ordering system for London 2012 Olympics

\n

Security requirements called for all volunteers and contractors' staff to be fed on site

\n \n \n
\n

Meal ordering

\n

THE BRIEF

\n

The high level of security at the Olympic Games in London 2012 resulted in a policy that no water or food could be brought on to Olympic sites by staff or volunteers organising the events. As a result of this the Organising Committee took the decision to provide food for all staff, contractors staff and volunteers at each venue.

\n

Apart from the task of providing the food there was a need to understand exactly how many meals would be required for each meal occasion at each venue. Key statistics were:

\n

4 meal occasions each day (with extra in Ramadan).
\n 17 main competition venues, some with up to four sub venues.
\n \n 42 non-competition venues
\n \n 6,700 staff
\n \n 28,200 Volunteers (on the sites concerned)
\n \n 34,400 Contractors staff
\n \n Catering required from 1st July to 11th September
\n \n Data to be communicated to multiple parties.

\n

THE SOLUTION

\n

A web based online ordering system allowing each of 50 major contractors, 200 smaller contractors, managers of internal staff and managers of volunteers each to log into their own order areas and place orders for every meal occasion for every day of the operational period. Order holding baskets for each day and rolling confirmation dates gave as much flexibility to change as possible. The numbers of confirmed orders placed were then automatically transferred to the team managing the caterers, to printers to print the meal vouchers required and to the internal invoicing system to invoice the employers concerned for the meals provided.

\n

Delivered on time to budget and ran flawlessly through the run up period, the Olympics, Paralympics and the close down period, 2,086,000 meals ordered and delivered.

\n
\n
\n
\n\n
\n
\n \n
\n
\n

Scheduling Cycling Training and Testing in Schools.

\n

Matching expert availability to School requirements.

\n \n \n
\n

Cycle training

\n

THE BRIEF

\n

Oxfordshire County Council has 315 Primary Schools. All Primary Schools in the UK are obliged to run a cycle training programme and to arrange for their pupils to be tested. Schools generally organised their own tutors but the booking of testing for groups of up to 12 pupils with schools across the county all needing to do this at a simiular point in the academic year was a major logistical task.

\n

THE SOLUTION

\n

Orange Technology created an online programme where the details of all schools involved were held, where all tutors involved were recorded by the schools and the details of all independent examiners were held including their home location. The system provides for all examiners to record their availablity to carry out tests on a time slot basis. When a school wants a test they log into the system indicating the dates, times and numbers of pupils involved. The system then matches testers to the school needs, automatically emails a tester who can accept or reject the appointment. Once accepted all parties are automatically emailed to confirm dates and times and the testers availability is adjusred accordingly. This project enabled one full time staff member to be allocated to acivities to improve cycle training standards in the county rather than just arranging tests.

\n
\n
\n
\n\n
\n
\n \n
\n
\n

Benchmarking Hospitality Performance in Stadia.

\n

Data pooled anonymously; performance v average published.

\n \n \n
\n

Benchmarking

\n

An organisation supplying stadia in the UK wished to offer a Benchmarking Service in Hospitality Performance. Orange Technology produced an online system to allow any number of participating stadium operators to submit data which was then pooled and each contributor’s performance analysed against the average of all contributors. A raft of static data was set up e.g. number of seats, number of private boxes, no of bars. number of restaurants and similar. A range of different event types were also included. Contributors submitted data on topics such as attendance levels, food expenditure, drinks expenditure broken down by various categories. A full reporting system also allowed both revenues and costs to be compared.

\n
\n
\n
\n\n
\n
\n \n
\n
\n

Upward Feedback programme

\n

Replacing a successful paper-based Upward Feedback programme with a fully automated online version

\n \n \n
\n

Feedback programme

\n

Dorset County Council had designed a paper based ‘Upward Feedback’ programme which had proved very effective over a number of years. The Council wanted to move the process online retaining all the positive elements whilst at the same reducing the administrative workload of running it. Orange Technology was able to provide a web-based solution which did this and to added a number of substantial enhancements. The Council’s own competency framework was included across a range of management levels with the ability to update all as required. Participants were selected by an organiser then automatically emailed and asked to complete information on line confidentially. Results were made available to moderators if used or directly to participants when not. The programme was further developed into a full 360 feedback programme.

\n \n
\n
\n
\n\n\n\n\n\n\n\n\n\n \n
\n
\n\n
\n\n","import { Component, OnInit } from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\nimport { CaseStudy } from 'src/app/models/case-study.class';\nimport { CaseStudiesService } from '../../services/case-studies.service';\n\n@Component({\n selector: 'app-case-studies',\n templateUrl: './case-studies.component.html',\n styleUrls: ['./case-studies.component.scss']\n})\nexport class CaseStudiesComponent implements OnInit {\n\n constructor(public caseStudyService: CaseStudiesService, public route: ActivatedRoute) { }\n\n ngOnInit(): void {\n this.route.params.subscribe(this.handleRoute.bind(this));\n }\n\n displayedCaseStudies: CaseStudy[] = [];\n currentPage: number = 1;\n pages: number[] = [];\n studiesPerPage: number = 4;\n\n handleRoute(params: { page: string }): void {\n if (params.page) {\n this.currentPage = parseInt(params.page.replace(\"page-\", \"\"));\n } else {\n this.currentPage = 1;\n }\n this.displayedCaseStudies = this.caseStudyService.caseStudies.slice( (this.currentPage - 1) * this.studiesPerPage , this.currentPage * this.studiesPerPage );\n let pagesRequired = Math.ceil( this.caseStudyService.caseStudies.length / this.studiesPerPage );\n this.pages = [];\n if (pagesRequired > 1) {\n for (let i=1; i <= pagesRequired; i++) {\n this.pages.push(i);\n }\n }\n }\n\n}\n","\n
\n
\n\n
\n
\n \n \n
\n
\n

{{ study.title }}

\n

{{ study.contentPreview }}

\n \n \n
\n
\n\n
1\">\n
\n\n \n \n
\n

{{ page }}

\n
\n
\n
\n\n
\n
\n\n
\n
\n","import { Component, OnInit } from '@angular/core';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { CaseStudy } from 'src/app/models/case-study.class';\nimport { CaseStudiesService } from 'src/app/services/case-studies.service';\n\n@Component({\n selector: 'app-case-study',\n templateUrl: './case-study.component.html',\n styleUrls: ['./case-study.component.scss']\n})\nexport class CaseStudyComponent implements OnInit {\n\n constructor(public caseStudyService: CaseStudiesService, public route: ActivatedRoute, private router: Router) {\n this.route.params.subscribe(this.handleRoute.bind(this));\n }\n\n ngOnInit(): void {\n }\n\n handleRoute(params: { caseStudyReference: string }): void {\n this.caseStudy = this.caseStudyService.caseStudies.find(c => c.reference == params.caseStudyReference);\n if (!this.caseStudy) {\n console.error(\"Unrecognised case study reference: \" + params.caseStudyReference);\n this.router.navigate([\"/case-studies\"]);\n }\n }\n\n caseStudy: CaseStudy;\n\n formatContent(content: string): string {\n return content.split(\"\\n\").join(\"

\");\n }\n\n}\n","\n

\n
\n\n

{{ caseStudy.title }}

\n
\n \n \n
\n

\n\n
\n
\n","import { Component, ElementRef, OnInit, ViewChild } from '@angular/core';\nimport * as $ from 'jquery';\nimport { CaseStudy } from 'src/app/models/case-study.class';\nimport { CaseStudiesService } from 'src/app/services/case-studies.service';\n\n@Component({\n selector: 'app-construction',\n templateUrl: './construction.component.html',\n styleUrls: ['./construction.component.scss']\n})\nexport class ConstructionComponent implements OnInit {\n\n @ViewChild('video') video: any;\n\n constructor(private elem: ElementRef, private caseStudyService: CaseStudiesService) {\n window.onresize = this.setScreenWidth.bind(this);\n }\n\n ngOnInit(): void {\n this.setScreenWidth();\n }\n\n displayedCaseStudies: CaseStudy[] = [];\n\n ngAfterViewInit(): void {\n this.slideTextWrappers = this.elem.nativeElement.querySelectorAll('.slide-text-wrapper');\n this.video.muted = \"muted\";\n }\n\n screenWidth: number;\n slideHandle: number = null;\n slideTextWrappers: any[] = [];\n\n setScreenWidth(): void {\n this.screenWidth = (window.innerWidth > 0) ? window.innerWidth : screen.width;\n }\n\n slideChanged(index: number) {\n clearTimeout(this.slideHandle);\n this.slideHandle = setTimeout(this.showText.bind(this), 1000, index);\n }\n\n showText(index: number): void {\n this.slideTextWrappers.forEach(ele => ele.style.display = \"none\");\n $(this.slideTextWrappers[index]).slideDown(1000);\n }\n\n getScreenWidth(): number {\n return window.innerWidth;\n }\n\n scrollToContact(): void {\n document.getElementById(\"contact\").scrollIntoView({ behavior: \"smooth\" });\n }\n\n scrollToPrices(): void {\n document.getElementById(\"packages\").scrollIntoView({ behavior: \"smooth\" });\n }\n\n}\n","\n\n 650) ? '400px': '250px'\" [zoom]=\"false\" [autoplay]=\"true\" zoomDirection=\"out\" (slideChanged)=\"slideChanged($event);\">\n\n
\n \n
\n

1. REDUCE SITE MANAGER WORK LOAD

\n

Time spent by the site manager planning and delivering onsite inductions can be used elsewhere more efficiently.

\n
\n
\n
\n \n
\n

2. SEAMLESS INDUCTION DELIVERY

\n

Deliver a uniformed health & safety induction to all employees, contractors & visitors across all sites.

\n
\n
\n
\n \n
\n

3. SITE SPECIFIC INFORMATION

\n

Provide everyone with site specific information, such as site manager, first aider and timings, to help create familiarisation.

\n
\n
\n\n
\n \n
\n\n
\n\n
\n\n
\n

How can we help?

\n

\n Our Online Site Induction service is designed to complement your existing activities by communicating key information through a bespoke online portal,\n which is designed to suit your needs and requirements. Availability pre-arrival encourages a smoother induction process that both welcomes the new\n employee whilst also getting them settled into work as quickly and productively as possible.\n

\n\n
\n \n \n \n
\n \n
\n
\n\n
\n

WHY CHOOSE US

\n
\n \n \n \n \n \n \n \n \n \n
\n
\n\n
\n
\n \n
\n
\n\n
\n
\n

OUR PACKAGES

\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n
\n
\n\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-cookies',\n templateUrl: './cookies.component.html',\n styleUrls: ['./cookies.component.scss']\n})\nexport class CookiesComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","\n\n
\n

Cookies Policy

\n

\n In the operation of this website we sometimes place small amounts of information on your device, for example, computer or mobile phone.\n These include files known as cookies. They cannot be used to identify you personally but they do assist in your use of the site. By using\n this website and agreeing to this policy, you consent to our use of cookies in accordance with the terms of this policy.\n

\n

Examples of how cookies improve services offered to you:

\n
    \n
  • \n enabling part of the site to recognise your device so you don't have to repeat information you have already given us.\n
  • \n
  • \n recognising that you may already have given a username and password and then taking you to an appropriate page.\n
  • \n
  • \n measuring how many people are using services to enable us to maintain them.\n
  • \n
\n

We use two types of cookies used on our website:

\n
    \n
  • \n Session cookies are temporary cookies that remain in the cookie file of your browser until you close the browser. We use session cookies\n to carry information across pages of our site and avoid you having to re-enter information.\n
  • \n
  • \n Persistent cookies remain in the cookie file of your browser even after the browser is closed. The length of time a cookie remains depends\n on its lifespan. We use persistent cookies to collect and compile anonymous, aggregated information for statistical and evaluation purposes\n to help us understand how users use the website and help us improve the structure of our website.\n
  • \n
\n

Google Analytics

\n

\n We use Google Analytics to analyse the use of this website. Google Analytics sets cookies to help us accurately estimate the number of\n visitors to the website and volumes of usage, e.g. website statistics. \n

\n

\n For further details on the cookies set by Google Analytics, please refer to the Google Code website.\n

\n

Refusing cookies

\n

\n Most browsers allow you to refuse to accept cookies, blocking cookies may have a negative impact upon the usability of some websites.\n

\n
\n\n
\n\n","import { Component, ElementRef, OnInit } from '@angular/core';\nimport * as $ from 'jquery';\nimport { CaseStudy } from 'src/app/models/case-study.class';\nimport { CaseStudiesService } from 'src/app/services/case-studies.service';\n\n@Component({\n selector: 'app-corporate',\n templateUrl: './corporate.component.html',\n styleUrls: ['./corporate.component.scss']\n})\nexport class CorporateComponent implements OnInit {\n\n constructor(private elem: ElementRef, private caseStudyService: CaseStudiesService) {\n window.onresize = this.setScreenWidth.bind(this);\n }\n\n ngOnInit(): void {\n this.setScreenWidth();\n }\n\n displayedCaseStudies: CaseStudy[] = [];\n\n ngAfterViewInit(): void {\n this.slideTextWrappers = this.elem.nativeElement.querySelectorAll('.slide-text-wrapper');\n }\n\n screenWidth: number;\n slideHandle: number = null;\n slideTextWrappers: any[] = [];\n\n setScreenWidth(): void {\n this.screenWidth = (window.innerWidth > 0) ? window.innerWidth : screen.width;\n }\n\n slideChanged(index: number) {\n clearTimeout(this.slideHandle);\n this.slideHandle = setTimeout(this.showText.bind(this), 1000, index);\n }\n\n showText(index: number): void {\n this.slideTextWrappers.forEach(ele => ele.style.display = \"none\");\n $(this.slideTextWrappers[index]).slideDown(1000);\n }\n\n getScreenWidth(): number {\n return window.innerWidth;\n }\n\n}\n","\n\n 650) ? '400px': '250px'\" backgroundColour=\"lightgrey\" [zoom]=\"true\" [autoplay]=\"true\" zoomDirection=\"out\" (slideChanged)=\"slideChanged($event);\">\n\n
\n \n
\n

IMPROVE RETENTION LEVELS

\n

A welcoming and effective induction is central to ensuring a positive first impression of your organisation.

\n
\n
\n
\n \n
\n

READY TO WORK

\n

Increase starter productivity as inductions can be completed pre-arrival.

\n
\n
\n
\n \n
\n

CLOUD BASED

\n

All our programmes are hosted on the cloud and available to access anywhere; at home or at work.

\n
\n
\n
\n \n
\n

RESPONSIVE DESIGN

\n

Compatible on all devices, PC, tablet, mobile phone.

\n
\n
\n
\n \n
\n

CUSTOMER SERVICE & SUPPORT

\n

We never charge extra for technical support.

\n
\n
\n\n
\n\n
\n\n
\n \n

Induction & Onboarding

\n

\n Our Online Employee Induction service is designed to complement your existing activities by communicating key information through a bespoke online portal, which is designed to precisely meet your needs and requirements.\n

\n

\n One of the key benefits is that new employees can start their induction process pre-arrival. This promotes a smoother and efficient route that both welcomes the new employee whilst letting them work at their pace, asking questions if necessary, all contributing to getting them settled into their work quickly and being productive as quickly as possible.\n

\n
\n
\n \n

Web Based

\n

As with all of our products, an Orange online employee induction is provided as a web based hosted service. Which means:

\n
    \n
  • No installation, capacity or new hardware issues
  • \n
  • No delay, complete programmes set up in weeks
  • \n
  • No serious demands on your IT function
  • \n
\n

Starters can access via the internet from anywhere, our Induction sites are compatible with all mobile devices, tablets, laptops and desktop computers. Therefore, they can be accessed by the users at a time that suits them, whether it be on their phone or tablet while they are using public transport, or in the comfort of their own home on a laptop or desktop computer.

\n

Using an online system allows for an effective transfer of information, which means staff are quickly in a position to feel confident about their new place of work. This process provides them with information, skills and competency that they require quickly and efficiently.

\n
\n
\n \n

Personalised

\n

Provided in your Corporate style, new starters will see their induction as another part of your existing web-based services. Personalisation of information and timetables tailored to their needs make starters feel welcome and valued.

\n

Using our Multi-Tagging™ functionality each individual gets an induction programme tailored to their needs. A clear outline of their job/role requirements, showing how the employee fits into their team and how their role fits with the organisation’s strategy and goals, as well as any site-specific information such as facilities and fire drills.

\n

With our own web-based platform, we offer an approach which enables us to deliver personalised and relevant information to groups of any size, in a way that is easy to follow, consistent for all staff and can be revisited at any time if needed.

\n
\n
\n \n

Tracking & Reporting

\n

The Orange Induction system is fully auditable, staff can be asked to sign online agreements to show that they have read and agree to adhere to these policy statements. This information can then be accessed by management at any time to demonstrate the agreement to compliance.

\n

Demonstrate a duty of care for employees, with our email Alerts and Knowledge Check tests. Ensure important information is understood, through a series of learning or testing questions. Our full tracking allows the starter, line manager and central functions to monitor progress and chase the new starter if any sections have not been completed.

\n
\n
\n \n

Modular

\n

Our modular approach allows you to build the programme you want at any point in time. New modules can be added, existing modules withdrawn or modified. Modules can also be made “live” at pre-programmed timings. A typical programme would include:

\n
    \n
  • Meet the organisation
  • \n
  • Key policies
  • \n
  • Relevant working practises
  • \n
  • Your career - training & development
  • \n
  • Health & safety
  • \n
  • Fire safety & evacuation procedures
  • \n
  • Skills assessment (Post appointment)
  • \n
  • Customer service
  • \n
  • Role specific modules e.g. Food handing, Impact on the community
  • \n
  • Equality, diversity and behaviour
  • \n
  • Managing information
  • \n
  • Company specific topics
  • \n
  • Technical training modules
  • \n
  • On-line survey tool
  • \n
\n
\n
\n \n

Integration

\n

A major benefit of our online induction programme is the ease with which it is integrates with wider induction processes in your organisation. Examples of this is incorporating any administrative activities, such as booking onto internal training sessions or gathering data not collected pre-appointment by the use of online forms pre-arrival. Training provided by equipment providers can also be seamlessly integrated.

\n

Our online induction programmes can work seamlessly with full Workforce Management Systems, smaller Shift Booking Systems (existing or a bespoke solution provided by us). For example, completion of their online induction can trigger the release of an employee’s login information for your Workforce Management System. Completion of their first shift can automatically release a second stage induction module so development can progress without having to be driven by a line manager.

\n
\n
\n
\n\n
\n
\n
\n

Corporate case studies

\n \n \n\n
\n
\n\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-education',\n templateUrl: './education.component.html',\n styleUrls: ['./education.component.scss']\n})\nexport class EducationComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","

education works!

\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-home',\n templateUrl: './home.component.html',\n styleUrls: ['./home.component.scss']\n})\nexport class HomeComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","\n\n\n\n","import { Component, ElementRef, OnInit } from '@angular/core';\nimport * as $ from 'jquery';\nimport { CaseStudy } from 'src/app/models/case-study.class';\nimport { CaseStudiesService } from 'src/app/services/case-studies.service';\n\n@Component({\n selector: 'app-hospitality',\n templateUrl: './hospitality.component.html',\n styleUrls: ['./hospitality.component.scss']\n})\nexport class HospitalityComponent implements OnInit {\n\n constructor(private elem: ElementRef, private caseStudyService: CaseStudiesService) {\n window.onresize = this.setScreenWidth.bind(this);\n }\n\n ngOnInit(): void {\n this.setScreenWidth();\n }\n\n displayedCaseStudies: CaseStudy[] = [];\n\n ngAfterViewInit(): void {\n this.slideTextWrappers = this.elem.nativeElement.querySelectorAll('.slide-text-wrapper');\n }\n\n screenWidth: number;\n slideHandle: number = null;\n slideTextWrappers: any[] = [];\n\n setScreenWidth(): void {\n this.screenWidth = (window.innerWidth > 0) ? window.innerWidth : screen.width;\n }\n\n slideChanged(index: number) {\n clearTimeout(this.slideHandle);\n this.slideHandle = setTimeout(this.showText.bind(this), 1000, index);\n }\n\n showText(index: number): void {\n this.slideTextWrappers.forEach(ele => ele.style.display = \"none\");\n $(this.slideTextWrappers[index]).slideDown(1000);\n }\n\n getScreenWidth(): number {\n return window.innerWidth;\n }\n\n}\n","\n\n 650) ? '400px': '250px'\" backgroundColour=\"lightgrey\" [zoom]=\"true\" [autoplay]=\"true\" zoomDirection=\"out\" (slideChanged)=\"slideChanged($event);\">\n\n
\n \n
\n

IMPROVE RETENTION LEVELS

\n

A welcoming and effective induction is central to ensuring a positive first impression of your organisation.

\n
\n
\n
\n \n
\n

READY TO WORK

\n

Increase starter productivity as inductions can be completed pre-arrival.

\n
\n
\n
\n \n
\n

CLOUD BASED

\n

All our programmes are hosted on the cloud and available to access anywhere; at home or at work.

\n
\n
\n
\n \n
\n

RESPONSIVE DESIGN

\n

Compatible on all devices, PC, tablet, mobile phone.

\n
\n
\n
\n \n
\n

CUSTOMER SERVICE & SUPPORT

\n

We never charge extra for technical support.

\n
\n
\n\n
\n\n
\n\n\n
\n \n

Induction & Onboarding

\n

\n Our Online Employee Induction service is designed to complement your existing activities by communicating key information through a bespoke online portal, which is designed to precisely meet your needs and requirements.\n

\n

\n One of the key benefits is that new employees can start their induction process pre-arrival. This promotes a smoother and efficient route that both welcomes the new employee whilst letting them work at their pace, asking questions if necessary, all contributing to getting them settled into their work quickly and being productive as quickly as possible.\n

\n
\n
\n \n

Web Based

\n

As with all of our products, an Orange online employee induction is provided as a web based hosted service. Which means:

\n
    \n
  • No installation, capacity or new hardware issues
  • \n
  • No delay, complete programmes set up in weeks
  • \n
  • No serious demands on your IT function
  • \n
\n

Starters can access via the internet from anywhere, our Induction sites are compatible with all mobile devices, tablets, laptops and desktop computers. Therefore, they can be accessed by the users at a time that suits them, whether it be on their phone or tablet while they are using public transport, or in the comfort of their own home on a laptop or desktop computer.

\n

Using an online system allows for an effective transfer of information, which means staff are quickly in a position to feel confident about their new place of work. This process provides them with information, skills and competency that they require quickly and efficiently.

\n
\n
\n \n

Personalised

\n

Provided in your Corporate style, new starters will see their induction as another part of your existing web-based services. Personalisation of information and timetables tailored to their needs make starters feel welcome and valued.

\n

Using our Multi-Tagging™ functionality each individual gets an induction programme tailored to their needs. A clear outline of their job/role requirements, showing how the employee fits into their team and how their role fits with the organisation’s strategy and goals, as well as any site-specific information such as facilities and fire drills.

\n

With our own web-based platform, we offer an approach which enables us to deliver personalised and relevant information to groups of any size, in a way that is easy to follow, consistent for all staff and can be revisited at any time if needed.

\n
\n
\n \n

Tracking & Reporting

\n

The Orange Induction system is fully auditable, staff can be asked to sign online agreements to show that they have read and agree to adhere to these policy statements. This information can then be accessed by management at any time to demonstrate the agreement to compliance.

\n

Demonstrate a duty of care for employees, with our email Alerts and Knowledge Check tests. Ensure important information is understood, through a series of learning or testing questions. Our full tracking allows the starter, line manager and central functions to monitor progress and chase the new starter if any sections have not been completed.

\n
\n
\n \n

Modular

\n

Our modular approach allows you to build the programme you want at any point in time. New modules can be added, existing modules withdrawn or modified. Modules can also be made “live” at pre-programmed timings. A typical programme would include:

\n
    \n
  • Meet the organisation
  • \n
  • Key policies
  • \n
  • Relevant working practises
  • \n
  • Your career - training & development
  • \n
  • Health & safety
  • \n
  • Fire safety & evacuation procedures
  • \n
  • Skills assessment (Post appointment)
  • \n
  • Customer service
  • \n
  • Role specific modules e.g. Food handing, Impact on the community
  • \n
  • Equality, diversity and behaviour
  • \n
  • Managing information
  • \n
  • Company specific topics
  • \n
  • Technical training modules
  • \n
  • On-line survey tool
  • \n
\n
\n
\n \n

Integration

\n

A major benefit of our online induction programme is the ease with which it is integrates with wider induction processes in your organisation. Examples of this is incorporating any administrative activities, such as booking onto internal training sessions or gathering data not collected pre-appointment by the use of online forms pre-arrival. Training provided by equipment providers can also be seamlessly integrated.

\n

Our online induction programmes can work seamlessly with full Workforce Management Systems, smaller Shift Booking Systems (existing or a bespoke solution provided by us). For example, completion of their online induction can trigger the release of an employee’s login information for your Workforce Management System. Completion of their first shift can automatically release a second stage induction module so development can progress without having to be driven by a line manager.

\n
\n
\n\n\n
\n

Developing skills and training

\n
\n
\n

HOTS

\n

Set within the service industry, HOTS is an advanced computerised business simulation in which up to 99 teams manage hotels in a competitive market place.

\n

Having reviewed background material and available market research, teams are tasked with improving the performance of their hotel by preparing a strategic business plan. This is then implemented through decisions relating to:

\n
    \n
  • capital expenditure
  • \n
  • staffing and staff training
  • \n
  • refurbishment
  • \n
  • revenue management
  • \n
  • product pricing
  • \n
  • product mix
  • \n
  • advertising
  • \n
  • environmental management
  • \n
\n

A comprehensive range of reports provides up to the minute business indicators to help teams to monitor their performance and strategy. Online help files provide a wealth of valuable information. In line with our mission to produce highly credible simulations, HOTS uses real market data and runs in our unique real time mode. It is also very flexible and can be run at different levels of difficulty and complexity.

\n
\n
\n
\n

Till Training

\n

Ensure all your starters use your tills quickly and accurately from the first minute of their first shift.

\n

A comprehensive module for till users and supervisors using text, graphics and explanatory videos followed by practise exercises using your till interfaces for the precise toils they will use. Finally, a comprehensive online test using a series of typical orders created by you. Pass rates and options for further training are set by you.

\n \n
\n
\n
\n

Employee Feedback

\n

How often do new employees leave after only one or two shifts?

\n

We know there can be many reasons for employees not continuing in a particular role but having a ‘bad first shift’ is often at the top of the list. What makes the first shift ‘bad’? Normally the employee not knowing what has to be done, where things are and then being chased for not working quickly enough. First line managers are often under huge pressure at events and don’t have the time to give proper attention to starters. Our upward feedback module enables employees to anonymously provide feedback to first line managers on a range of relevant topics. Thus, enabling the managers to improve their own performance in handling staff and increase the retention rates of starters.

\n \n
\n\n
\n
\n
\n

Hospitality case studies

\n \n \n\n\n
\n
\n\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-how-it-works',\n templateUrl: './how-it-works.component.html',\n styleUrls: ['./how-it-works.component.scss']\n})\nexport class HowItWorksComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","\n\n
\n

How it works

\n

\n We provide solutions to a variety of communication, training and operational needs. \n

\n

\n For communication and training projects we also provide a full content management service. \n

\n

\n Most projects include a bespoke element, we therefore always welcome a no commitment initial discussion of the issue you are confronting.\n All of our services are provided as fully hosted solutions.\n

\n

\n Our communication platform embraces: assistance with Recruitment, Onboarding, Induction, Ongoing Training, Compliance Refresher Training,\n Employee News and organisational Restructuring Communication. \n

\n

\n Complete flexibility allows any element or combination of elements to be utilised initially, with any of the others being able to be added\n seamlessly at any time. Totally new modules can be developed and added as required. This approach allows organisations to set a development\n plan in line with their needs and the availability of internal resources. It also reduces the perceived risk in committing to the project\n at the initial development stage.\n

\n

\n Our operational software works the same way, for example our new Covid Cleaning Routine Management App can be extended to cover: Fire Inspections,\n Health & safety Inspections, Room Condition or Area condition inspections and other activities.\n

\n

\n If you have a need, no matter how big or small, how complex or simple, how novel or entrenched – Contact us.\n

\n
\n\n
\n\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-privacy-gdpr',\n templateUrl: './privacy-gdpr.component.html',\n styleUrls: ['./privacy-gdpr.component.scss']\n})\nexport class PrivacyGdprComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","\n\n
\n

Our Privacy Policy

\n

\n At ORANGE Technology Ltd (“We”) your privacy is important to us and We are committed to protecting and respecting your privacy. This privacy statement\n provides information about the personal information that We collect, and the ways in which We use that personal information. Please read this privacy\n policy carefully to understand our policies regarding your personal data. By visiting the website, you are accepting and consenting to the practices\n described in this policy together with our “Terms & Conditions”.\n

\n

\n The Data Controller for this web site is ORANGE Technology Ltd. The purpose of this statement is to inform users of the website, about the information\n that is collected from them when they visit this site, how this information is used, if it is disclosed and the ways in which We protect users' privacy.\n

\n

\n The General Data Protection Regulation (EU) 2016/679 establishes rights for individuals whose personal data is processed by a third party and protects\n and empowers all EU citizens data privacy. Any organisation which processes information about living individuals is a data controller for the purposes\n of the above Act and Regulation. ORANGE Technology Ltd, as data controller, is required by the Act to ensure that individual data subjects are aware\n of how their personal data may be used, the purpose/purposes for processing that data and to whom, if anybody, that data may be disclosed.\n

\n

\n We may collect and use the following kinds of personal information:\n

\n
    \n
  • \n information about your use of this website;\n
  • \n
  • \n information that you provide us for the purpose of registering with the website or contacting us through the website\n
  • \n
  • \n information that we receive from third parties (for example; business partners) \n
  • \n
  • \n information that you provide for the purpose of subscribing to our newsletters.\n
  • \n
  • \n any other information that you send/give us by phone, e-mail or otherwise.\n
  • \n
\n

We may use your personal information to:

\n
    \n
  • administer this website
  • \n
  • personalise the website for you
  • \n
  • help keep our website safe and secure
  • \n
  • carry out our obligations arising from any agreements entered between you and us
  • \n
  • provide you with the information, products and services that you request from us
  • \n
  • provide you with information about other products and services we offer that are similar to those that you have already purchased or enquired about
  • \n
  • enable your access to and use of the website services
  • \n
  • notify you about changes to our service
  • \n
  • send you marketing communications
  • \n
\n

\n

\n You have a right at any time to stop us from contacting you for marketing purposes. If you no longer wish to be contacted for marketing\n purposes, please click here.\n

\n

\n We may share your personal information with any member of our group, which means our ultimate holding company and its subsidiaries, as\n defined in section 1159 of the UK Companies Act 2006.\n

\n

\n Where We disclose your personal information to agents or sub-contractors for these purposes, the agent or sub-contractor in question will\n be obligated to use that personal information in accordance with the terms of this privacy statement.\n

\n

\n In addition to the disclosures reasonably necessary for the purposes identified elsewhere above, We may disclose your personal information\n to the extent that it is required to do so by law, in connection with any legal proceedings or prospective legal proceedings, and in order \n to establish, exercise or defend its legal rights.\n

\n

Securing your data

\n

\n We will take reasonable technical and organisational precautions to prevent the loss, misuse or alteration of your personal information.\n

\n

\n We will store all the personal information you provide on our secure servers. Information relating to electronic transactions entered into\n via this website will be protected by encryption technology.\n

\n

\n Unfortunately, the transmission of information via the internet is not completely secure. Although We do our best to protect your personal\n data, We cannot guarantee the security of your data submitted to our site and any data submitted is done so at your own risk.\n

\n

Cross-border data transfers

\n

\n Information that We collect may be stored and processed in and transferred between the UK and any the countries. It will never be stored outside the EU.\n

\n

\n However, personal information that you submit for publication on the website will be published on the internet and may therefore be available around the world.\n

\n

\n You agree to such cross-border transfers of personal information where we have complied with this privacy policy.\n

\n

Data Retention

\n

\n We keep information only for so long as it is needed for the efficient and effective delivery or fulfilment of the software, products, or services using or\n contemplating using by the Data Subject and for a reasonable time thereafter, or to meet any legal requirements. We will either destroy or remove information\n when it is no longer needed.\n

\n

Updating this statement

\n

\n We may update this privacy policy by posting a new version on this website.\n

\n

Your Rights

\n

The GDPR gives you rights over how your personal information is used:

\n
    \n
  • The right to be informed - we must tell you how we process your personal information.
  • \n
  • The right of access - you can ask to see what personal information we hold about you. This is called a Subject Access Request (SAR).
  • \n
  • The right of rectification - where information about you is inaccurate, you can ask us to correct it.
  • \n
  • The right to erasure – in some circumstances, or where we have no compelling reason to retain your personal information, you can request deletion of that information.
  • \n
  • The right to restrict processing – in some circumstances, you can ask us to restrict the processing of your personal data. This right, where it applies, also allows you to ask us to retain your personal information but not to use it.
  • \n
  • The right to data portability – in some circumstances, you can request a copy of the personal data you have provided to us in a machine-readable form, so you can transfer it to another organisation for a similar purpose.
  • \n
  • Right to object – where there is no legal obligation for us to process your data, you can object to us processing your personal information.
  • \n
  • Rights in relation to automated decisions and profiling - where computers make decisions about you, including automated profiling, you have a right to challenge the decision or ask for a human to check an automated decision.
  • \n
\n

To discuss any of these rights, please contact us and let us know how we can help.

\n

Any access request to this information may be subject to a fee to meet our costs in providing you with the information We hold.

\n

Other websites

\n

This website contains links to other websites. We are not responsible for the privacy policies or practices of any third party.

\n

We use HubSpot to assist us in gathering data regarding the use of our website. The Hot Jar data retention policy can be found

\n

Data Protection Officer

\n

The Data Protection Officer (DPO) within ORANGE Technology Ltd is who can be contacted via:

\n
    \n
  • \n By email to info@theorangegroup.com \n
  • \n
  • \n By post to: The Data Protection Officer, Orange Technology Limited, Basepoint, Aviation Business Park, Christchurch, Dorset, BH23 6NX\n
  • \n
  • \n call us on 0845 505 3577\n
  • \n
\n\n
\n\n
\n\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-terms-and-conditions',\n templateUrl: './terms-and-conditions.component.html',\n styleUrls: ['./terms-and-conditions.component.scss']\n})\nexport class TermsAndConditionsComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","\n\n
\n
\n

Our Terms and Conditions

\n

Contact us

\n

If you have any questions or require clarification of the terms and conditions laid out below please:

\n \n

Introduction

\n

\n This website is owned and maintained by ORANGE Technology Ltd “ORANGE”. The use of this website is subject to the following terms and conditions.\n By using this website, you agree to be legally bound by these terms and conditions. If you disagree with these terms and conditions you should\n cease using this website.\n

\n

\n By using this website and agreeing to these terms and conditions, you consent to ORANGE's use of your information in accordance with the terms of\n our Privacy/GDPR Policy in our Privacy section.\n

\n

\n By using this website and agreeing to these terms and conditions, you consent to ORANGE's use\n of cookies in accordance with the terms of our Cookies Policy.\n

\n

\n The website has been developed by and is maintained by ORANGE Technology\n Limited, registered in England and Wales, Company number is 03370028 registered office: Sejant House, 2 The Green, 117 Salisbury Road,\n Christchurch, BH23 7NZ.\n

\n

\n Our production centre is at Basepoint, Aviation Business Park, Christchurch, BH23 6NX.\n

\n

Intellectual property of this website

\n

\n ORANGE owns the intellectual property rights in the website and material on the website and reserves all the rights to it. Some material forming part\n of the intellectual property rights is owned by other organisations and it is used under licence in all cases\n

\n

\n You may view, download and print pages from the website for your own personal use, or for the use of your employer. It may be distributed within your\n organisation subject to the restrictions below.\n

\n

\n You must not:\n

\n
    \n
  • Republish externally any material from this website.
  • \n
  • Reproduce or otherwise exploit material on this website for a commercial purpose.
  • \n
  • Redistribute material from this website.
  • \n
\n

Acceptable use

\n

You must not use this website to store or host any malicious computer software including viruses, worms, spyware, trojan horses or any other damaging programmes.

\n

You must not collect any data automatically or otherwise from this website without ORANGE’s express written consent.

\n

You must not use this website to transmit or send unsolicited commercial communications.

\n

You must not use this website for any marketing activities without ORANGE’s express written consent.

\n

You must not use this website in any way that is harmful, illegal or fraudulent.

\n

No warranties

\n

Whereas every care will be taken in providing and maintaining this website, ORANGE does not warrant that:

\n
    \n
  • The information on this website is complete, true, accurate or non-misleading.
  • \n
  • Use of this web site, or any item obtained from it, will not cause damage to any computer or other property.
  • \n
  • This website will be always be available
  • \n
\n

Limitations of liability

\n

ORANGE will not be liable in relation to the contents of, or any use of this website:

\n
    \n
  • For any direct loss.
  • \n
  • For any indirect, special or consequential loss.
  • \n
  • For any business losses.
  • \n
\n

These limitations of liability apply even if ORANGE has been expressly advised of the potential loss.

\n

\n Where the website contains links to other websites provided by third parties, these links are provided for user information only. ORANGE has\n no control over the contents of those sites and any resources promoted by them.\n

\n

Exceptions

\n

Nothing in this disclaimer will exclude or limit any warranty implied by law that it would be unlawful to exclude or limit.

\n

Nothing in this disclaimer will exclude or limit ORANGE’s liability in respect of any:

\n
    \n
  • Death or personal injury caused by ORANGE’s negligence;
  • \n
  • Fraud or fraudulent misrepresentation on the part of ORANGE; or
  • \n
  • Matter which it would be illegal or unlawful for ORANGE to exclude or limit.
  • \n
\n

Reasonableness

\n

By using this website, you agree that the exclusions and limitations of liability set out in this website disclaimer are reasonable.

\n

If you do not think they are reasonable, you must cease using this website.

\n

Other parties

\n

\n You accept that, as a limited liability entity, ORANGE has an interest in limiting the personal liability of its directors and employees. You agree that you\n will not bring any claim personally against ORANGE’s directors or employees in respect of any losses you suffer in connection with the website.\n

\n

\n Without prejudice to the foregoing paragraph, you agree that the limitations of warranties and liability set out in this website disclaimer will protect\n ORANGE’s directors, employees, agents, subsidiaries, successors, assigns and sub-contractors as well as ORANGE.\n

\n

Unenforceable provisions

\n

\n If any provision of this website disclaimer is, or is found to be, unenforceable under applicable law, that will not affect the enforceability of the\n other provisions of this website disclaimer.\n

\n

Indemnity

\n

\n You hereby indemnify ORANGE and undertake to keep ORANGE indemnified\n against any losses, damages, costs, liabilities and expenses (including without limitation legal expenses and any amounts paid by ORANGE to a third\n party in settlement of a claim or dispute on the advice of ORANGE’s legal advisers) incurred or suffered by ORANGE arising out of any breach by you\n of any provision of these terms and conditions, or arising out of any claim that you have breached any provision of these terms and conditions.\n

\n

Breaches of these terms and conditions

\n

Without prejudice to ORANGE’s other rights under these terms and conditions, if you breach these terms and conditions in any way, ORANGE may take\n such action as ORANGE deems appropriate to deal with the breach, including suspending your access to the website, prohibiting you from accessing\n the website, blocking computers using your IP address from accessing the website, contacting your internet service provider to request that they\n block your access to the website and/or bringing court proceedings against you.\n

\n

Variation

\n

ORANGE may revise these terms and conditions from time-to-time. Revised terms and conditions will apply to the use of this website from the date of the\n publication of the revised terms and conditions on this website. Please check this page regularly to ensure you are familiar with the current\n version.\n

\n

\n ORANGE may update our site from time to time, and may change the content at any time. However, the content on our site may be out of date at any given time,\n and we are under no obligation to update it.\n

\n

\n ORANGE does not guarantee that the website, or any content on it, will be free from errors or omissions.\n

\n

Assignment

\n

ORANGE may transfer, sub-contract or otherwise deal with ORANGE’s rights and/or obligations under these terms and conditions without notifying you or obtaining your consent.

\n

You may not transfer, sub-contract or otherwise deal with your rights and/or obligations under these terms and conditions.

\n

Severability

\n

\n If a provision of these terms and conditions is determined by any court or other competent authority to be unlawful and/or unenforceable, the other provisions will continue\n in effect. If any unlawful and/or unenforceable provision would be lawful or enforceable if part of it were deleted, that part will be deemed to be deleted, and the rest\n of the provision will continue in effect.\n

\n

Law and jurisdiction

\n

If you are a business, these terms and conditions will be governed by and construed in accordance with English Law, and any disputes relating to these terms and\n conditions will be subject to the exclusive jurisdiction of the courts of England and Wales.\n

\n

If you are a consumer, these terms and conditions will be\n governed by and construed in accordance with English Law, and any disputes relating to these terms and conditions will be subject to the non-exclusive\n jurisdiction of the courts of England and Wales.\n

\n
\n\n
\n\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-availability-booker',\n templateUrl: './availability-booker.component.html',\n styleUrls: ['./availability-booker.component.scss']\n})\nexport class AvailabilityBookerComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","\n\n
\n

Availability Booker

\n

\n Enhance performance by using a streamlined service in which your workforce input their availability into a bespoke online booking system,\n where shifts or sessions can be allocated effectively and efficiently.\n

\n

\n BikeBook is a good example of a bespoke online booking system, used to manage Cycle Training. Trainers and Examiners put details of their\n availability into a personalised online calendar. Schools or other organisations requiring cycle training login through their personalised\n credentials and book course or tests on days when there are suitable trainers and testers available.\n

\n
\n\n
\n\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-benchmarking',\n templateUrl: './benchmarking.component.html',\n styleUrls: ['./benchmarking.component.scss']\n})\nexport class BenchmarkingComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","\n\n
\n

Benchmarking

\n

\n Improve performance by sharing data. Enabling a group of independent organisations to pool data and for each assess their own performance against the average whilst ensuring anonymity of all data contributed. Fully web based totally configurable to your market and to the key indicators you wish to measure. Static and variable data can be specified as well as the ratios and reports you require.\n

\n

\n To see an example, visit our Bespoke section Benchmarking\n

\n
\n\n
\n\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-business-simulations',\n templateUrl: './business-simulations.component.html',\n styleUrls: ['./business-simulations.component.scss']\n})\nexport class BusinessSimulationsComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","\n\n
\n

Business Simulations

\n

\n We have extensive experience in developing simulations for Management Training. \n

\n

\n Our simulation HOTS is an off the shelf training simulation that, although set in the hospitality industry, can be effectively used by any service-based organisation. We can run training programmes on your behalf using HOTS or we can licence the software with a tutor training package. Details of HOTS here.\n

\n

\n We have built other complex simulations such as Eurocar which enables teams to run car manufacturing businesses across 5 countries in Europe and Sesamee, a lower-level business start-up simulation set within the SME arena.\n

\n

\n Simulation can also be used for operational planning as this small demo programme shows: Operational Planning Demonstration.\n

\n \n

\n Eurocar and Sesamee have all been used by Universities in the UK and Ireland and HOTS has been used by Universities, Hotel Schools and Corporations around the world.\n

\n
\n\n
\n\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-changecom',\n templateUrl: './changecom.component.html',\n styleUrls: ['./changecom.component.scss']\n})\nexport class ChangecomComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","\n\n
\n

ChangeCom

\n

\n ChangeCom, communicating change to large groups in a reportable and interactive way.\n

\n

\n A new off the shelf service for communicating details of major organisational change to large groups of people. It is a hosted service\n which allows users to access it via the internet from any location and is available for whatever period is required. There is no\n commitment to hardware, software licences or hosting. Some key benefits are:\n

\n
    \n
  • Allows simultaneous communication with large numbers of people
  • \n
  • Ensures consistency of message across the organisation
  • \n
  • Information can be personalised to groups or even individuals
  • \n
  • Confidentiality prior to release is ensured by production taking place away from the organisation
  • \n
  • Links to other web page can be inserted into any communication page
  • \n
  • Content can be structured in modules and topics
  • \n
\n
\n\n
\n\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-cleaning-management-and-monitoring',\n templateUrl: './cleaning-management-and-monitoring.component.html',\n styleUrls: ['./cleaning-management-and-monitoring.component.scss']\n})\nexport class CleaningManagementAndMonitoringComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","\n\n
\n\n

COMING SOON
\n\t\"KleenCheck\"
\n\ta new generation of our cleaning Apps

\n
\n
\n \n \n
\n
\n \n
\n
\n
\n\n
\n\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-employee-relationship-gateway',\n templateUrl: './employee-relationship-gateway.component.html',\n styleUrls: ['./employee-relationship-gateway.component.scss']\n})\nexport class EmployeeRelationshipGatewayComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n getScreenWidth(): number {\n return window.innerWidth;\n }\n\n}\n","\n\n
\n

Employee Relationship Gateway

\n

\n A fully integrated comprehensive employee communication package available in modular form\n

\n
\n\n 650) ? '500px': '450px'\" backgroundColour=\"transparent\" [zoom]=\"false\" [autoplay]=\"false\">\n\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n\n
\n\n
\n\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-evoucherz',\n templateUrl: './evoucherz.component.html',\n styleUrls: ['./evoucherz.component.scss']\n})\nexport class EvoucherzComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","\n\n
\n
\n
\n

FOOD FOR VOLUNTEERS

\n

\n Say goodbye to paper vouchers, lengthy queues, and disappointed workers.\n

\n

\n E-Voucherz\n

\n
\n
\n \"E-Voucherz\n
\n
\n\n
\n\n
\n\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-juice',\n templateUrl: './juice.component.html',\n styleUrls: ['./juice.component.scss']\n})\nexport class JuiceComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","\n\n
\n
\n
\n

Juice

\n

\n Unique to your company, you can personalise your section headings, include your company logo and link to any of your social media profiles\n for seamless communication, you can also take full advantage of our Multi-Tagging functionality within Juice in which users can be assigned\n to certain groups, therefore only seeing articles relevant to them.\n

\n

\n The content management system for admins is designed to allow you to upload, schedule and publish articles quickly and effectively. Upload your\n own images, video, text and advertisements.\n

\n

\n Your Juice is unique to your organisation, you create the articles, you can personalise your section headings, include your company logo and use\n your own photos and videos.\n

\n

Request a demo using contact us below

\n
\n
\n \n
\n
\n\n
\n\n
\n\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-orange-communications-portal',\n templateUrl: './orange-communications-portal.component.html',\n styleUrls: ['./orange-communications-portal.component.scss']\n})\nexport class OrangeCommunicationsPortalComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","\n\n
\n

Communications portal

\n

\n Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.\n Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.\n Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.\n

\n

\n Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.\n Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.\n Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.\n

\n

\n Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.\n Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.\n Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.\n

\n

\n Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.\n Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.\n Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.\n

\n
\n\n
\n\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-three-sixty-feedback',\n templateUrl: './three-sixty-feedback.component.html',\n styleUrls: ['./three-sixty-feedback.component.scss']\n})\nexport class ThreeSixtyFeedbackComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","\n\n
\n
\n
\n

360 Feedback

\n

\n Gather feedback and measurement for team, service area or department level. Implement to support full individual 360°\n feedback as a standalone activity or as an integrated part of your performance management approach.\n

\n

\n Provided as a web based hosted service using your own competencies which you can update at any time, delivering clear\n and easy to interpret reports this automated system requires minimal administration input. It can be used with or without\n facilitated learner support.\n

\n
\n
\n \n
\n
\n
\n\n
\n\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-tools',\n templateUrl: './tools.component.html',\n styleUrls: ['./tools.component.scss']\n})\nexport class ToolsComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","\n
\n \n
\n","import { Injectable } from '@angular/core';\nimport { CaseStudy } from '../models/case-study.class';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class CaseStudiesService {\n\n caseStudies: CaseStudy[] = [\n {\n reference: \"delaware-north\",\n title: \"New Employee Induction and Selection programme for Delaware North\",\n contentPreview: \"Recruiting a high number of new staff (both permanent and temporary) on a regular basis Delaware North were looking for a cost effective solution to inducting large quantities of new employees whilst also being able to test their knowledge of key areas such as health and safety\",\n content: `Recruiting a high number of new staff (both permanent and temporary) on a regular basis Delaware North were looking for a cost-effective solution to induct these new employees, whilst also being able to assess their knowledge of key areas relevant to their new roles.\n Working with the HR team, a two-stage selection and induction programme was developed. Stage one delivered important information including topics such as Health and Safety and Food Hygiene concluding in a set of test questions. The results are then used to decide whether a candidate continues with the recruitment process. Once appointed as an employee by Delaware North they automatically continue onto their induction process (stage two). `,\n caseStudyImageUrl: \"/assets/images/dn-screen.jpg\",\n clientLogoUrl: \"/assets/images/dn.jpeg\",\n caseStudyType: \"corporate\"\n },\n {\n reference: \"ascot\",\n title: \"Induction programme for catering contractors, security contractors and specialist roles\",\n contentPreview: \"Ascot racecourse has a high reputation with the Royal Ascot event in particulate highly regarded as the centrepiece. the values set out in \\\"The Ascot way\\\" can be seen in every aspect of service delivery, from welcoming visitors to serving the perfect pint.\",\n content: `Ascot racecourse has a high reputation with the Royal Ascot event in particular highly regarded as the centrepiece. The values set out in “The Ascot Way” can be seen in every aspect of service delivery, from welcoming visitors to serving the perfect pint.\n It was very important to communicate these values and other information about the racecourse to all employees working there at any time, including staff that are provided by contractors.\n A dual site induction programme was developed, signifying the difference between Royal Ascot and the other events conducted at Ascot racecourse. Using lots of interactivity, such as videos and drag and drop functionality, key information is delivered and knowledge is assessed through a number of questions.`,\n caseStudyImageUrl: \"/assets/images/ascot-screen.jpg\",\n clientLogoUrl: \"/assets/images/ascot.jpg\",\n caseStudyType: \"hospitality\"\n },\n {\n reference: \"burhill-golf-and-leisure\",\n title: \"Employee Induction for Burhill Golf and Leisure\",\n contentPreview: \"The Burhill Group Limited own and manage multiple sites across three divisions; Golf, Leisure & Estates. It was important to deliver consistent messages across the Group whjilst also tailoring to specific division and site information.\",\n content: `The Burhill Group Limited own and manage multiple sites across three divisions; Golf, Leisure & Estates. It was important to deliver consistent messages across the Group whilst also tailoring to specific division and site information. Using our Multi-Tagging™ functionality we are able to deliver this and even deliver job specific information such as “Service of Alcohol”.\n BGL also saw the opportunity to expand their onboarding process and streamline administrative tasks associated with recruitment by including forms for payroll and personal information, and uniforms within their induction programme.`,\n caseStudyImageUrl: \"/assets/images/bgl-screen.jpg\",\n clientLogoUrl: \"/assets/images/bgl.png\",\n caseStudyType: \"construction\"\n },\n {\n reference: \"university-of-sheffield\",\n title: \"Staff Induction at the University of Sheffield\",\n contentPreview: \"The University of Sheffield employs a range of staff from cleaner to professor, across 51 academic and 15 professional services departments. Howver, despite a strong employer brand from a recruitment perspective, it felt it was missing an opportunity to demonstrate its goals and values during induction.\",\n content: `The University of Sheffield employs a range of staff from cleaner to professor, across 51 academic and 15 professional services departments. However, despite a strong employer brand from a recruitment perspective, it felt it was missing an opportunity to demonstrate its goals and values during induction. This was made more complex thanks to the fact that 250 staff across the institution are responsible for induction, many of whom were unaware of the resources available to support new starters.\n In partnership with our sister company STEMS by RP we developed a branded induction portal for all new staff regardless of role at the university. Since implementation of the staff induction portal the University of Sheffield has found that the number of staff resigning within three months of joining has dropped by 36% with managers stating that the induction programme enabled them to provide a more personal welcoming experience.`,\n caseStudyImageUrl: \"/assets/images/sheffield-screen.jpg\",\n clientLogoUrl: \"/assets/images/sheffield.jpg\",\n caseStudyType: \"corporate\"\n }\n ];\n\n}\n","// This file can be replaced during build by using the `fileReplacements` array.\n// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`.\n// The list of file replacements can be found in `angular.json`.\n\nexport const environment = {\n production: false\n};\n\n/*\n * For easier debugging in development mode, you can import the following file\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\n *\n * This import should be commented out in production mode because it will have a negative impact\n * on performance if an error is thrown.\n */\n// import 'zone.js/dist/zone-error'; // Included with Angular CLI.\n","import { enableProdMode } from '@angular/core';\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\n\nimport { AppModule } from './app/app.module';\nimport { environment } from './environments/environment';\n\nif (environment.production) {\n enableProdMode();\n}\n\nplatformBrowserDynamic().bootstrapModule(AppModule)\n .catch(err => console.error(err));\n"]}