oliefelt...">
,需要通过父级DOM结构来判断
*/
var trackActionPhone = function (node) {
var nodeInnerText = node.innerText || '';
if (!limitRegLength(nodeInnerText)) return;
var nodeText = trimText(nodeInnerText);
if (nodeText.length < 5 || nodeText.length > 20) return false;
var type =
arguments.length > 1 && arguments[1] !== undefined
? arguments[1]
: 'click';
var str = trimText(node.href || nodeText || '');
if (phoneReg.test(str) && numUseReg.test(str)) {
window.postMessage({
type: 'SHOPS_CONTACT_TRACK',
data: {
phone: nodeText,
},
}, '*');
_paq.push(['trackEvent', type, 'phone', nodeText]);
return true;
}
/** 排查父级嵌套非标签场景,并且对dom的正则校验做一个性能兜底,通过控制innerText的长度,来确保正则的性能 */
var fatherText = trimText(node.parentNode.innerText || '');
if (fatherText.length < 5 || fatherText.length > 20) return false;
if (phoneReg.test(fatherText) && numUseReg.test(fatherText)) {
window.postMessage({
type: 'SHOPS_CONTACT_TRACK',
data: {
phone: nodeText,
},
}, '*');
_paq.push(['trackEvent', type, 'phone', nodeText]);
return true;
}
return false;
};
window.addEventListener('click', function (e) {
var node = e.target;
/** 社媒点击 */
var appName = '';
var getAppAriaLabel =
node.ariaLabel || node.parentNode.ariaLabel || '';
if (mediaList.includes(getAppAriaLabel.toLowerCase())) {
appName = getAppAriaLabel;
}
if (
!appName &&
node.nodeName &&
node.nodeName.toLowerCase() === 'a'
) {
appName = getMediaName(node.href) || getMediaName(node.alt);
}
if (
!appName &&
node.nodeName &&
node.nodeName.toLowerCase() === 'img'
) {
appName = getMediaName(node.alt) || getMediaName(node.src);
}
if (
!appName &&
node.nodeName &&
node.nodeName.toLowerCase() === 'i'
) {
appName = getMediaName(node.className);
}
if (appName) {
_paq.push(['trackEvent', 'click', 'contactApp', appName]);
return;
}
/** 联系方式点击 */
if (trackActionPhone(node, 'click')) return;
if (node.nodeName && node.nodeName.toLowerCase() === 'a') {
var val = node.href;
if (!limitRegLength(val)) return;
if (emailReg.test(val)) {
window.postMessage({
type: 'SHOPS_CONTACT_TRACK',
data: {
email: val,
},
}, '*');
_paq.push(['trackEvent', 'click', 'email', val]);
return;
}
}
if (node.nodeName && node.nodeName.toLowerCase() === 'i') {
var val = node.className;
var content = node.parentNode.href || '';
if (val.includes('email')) {
window.postMessage({
type: 'SHOPS_CONTACT_TRACK',
data: {
email: content,
},
}, '*');
_paq.push(['trackEvent', 'click', 'email', content]);
return;
}
}
var nodeChildList = node.childNodes;
for (var i = 0; i < nodeChildList.length; i++) {
if (nodeChildList[i].nodeType !== 3) continue;
var val = nodeChildList[i].textContent.replace(/\s?:?/g, '');
if (!limitRegLength(val)) continue;
if (emailReg.test(val)) {
window.postMessage({
type: 'SHOPS_CONTACT_TRACK',
data: {
email: val,
},
}, '*');
_paq.push(['trackEvent', 'click', 'email', val]);
return;
}
}
trackNumberData(node);
});
window.addEventListener('copy', function (e) {
if (trackActionPhone(e.target, 'copy')) return;
var text = e.target.textContent;
if (!text) return;
var val = text.replace(/\s:?/g, '');
if (!limitRegLength(val)) return;
if (emailReg.test(val)) {
window.postMessage({
type: 'SHOPS_CONTACT_TRACK',
data: {
email: val,
},
}, '*');
_paq.push(['trackEvent', 'copy', 'email', val]);
return;
}
trackNumberData(e.target);
});
}
trackContactInit();
/**
* 基于custom_inquiry_form.js 以及 form.js 对于询盘表单提交的实现,来反推询盘表单的input标签触发,用来收集意向客户
* 1. 缓存的KEY:TRACK_INPUT_ID_MTM_00;
* 2. 缓存策略 - lockTrackInput:单个页面内,10分钟内,不重复上报
*/
function trackActionInput() {
const CACHE_KEY = 'TRACK_INPUT_ID_MTM_00';
const pathName = window.location.hostname + window.location.pathname;
var lockTrackInput = function () {
try {
const lastCacheData = localStorage.getItem(CACHE_KEY);
if (!lastCacheData) return false;
const cacheData = JSON.parse(lastCacheData);
const cacheTime = cacheData[pathName];
if (!cacheTime) return false;
return Date.now() - cacheTime < 1000 * 60 * 10; // 10分钟内,不重复上报
} catch (error) {
console.error('lockTrackInput Error', error);
return false;
}
};
var setInputTrackId = function () {
try {
const curCacheData = localStorage.getItem(CACHE_KEY);
if (curCacheData) {
const cacheData = JSON.parse(curCacheData);
cacheData[pathName] = Date.now();
localStorage.setItem(CACHE_KEY, JSON.stringify(cacheData));
return;
}
const cacheData = {
[pathName]: Date.now(),
};
localStorage.setItem(CACHE_KEY, JSON.stringify(cacheData));
} catch (error) {
console.error('setInputTrackId Error', error);
}
};
var getInputDom = function (initDom) {
var ele = initDom;
while (ele) {
/**
* isWebSiteForm 是站点的表单
* isChatWindowForm 是聊天窗口的表单
*/
/** 旧模板表单 */
var isWebSiteForm = !!(
/crm-form/i.test(ele.className) && ele.querySelector('form')
);
/** 1:新模板自定义表单、2:Get a Quote 弹框表单 */
var isWebSiteFormNew = !!(
/inquiry/i.test(ele.className) && ele.querySelector('form')
);
if (isWebSiteForm || isWebSiteFormNew) {
_paq.push(['trackEvent', 'formInquiry', 'formInput', 'page']);
setInputTrackId();
return;
}
/** Mkt会话触达-聊天弹框的表单输入: MKT由于是iframe嵌入,所以MKT的上报,会单独写到MKT-form代码上 */
var isInquiryChatForm = !!(
/comp-form/i.test(ele.className) && ele.querySelector('form')
);
if (isInquiryChatForm) {
_paq.push(['trackEvent', 'formInquiry', 'formInput', 'chat']);
setInputTrackId();
return;
}
/** 向上查找父节点 */
ele = ele.parentNode;
}
};
function initInputListener() {
var inputUseDebounce = function (fn, delay) {
var timer = null;
var that = this;
return function () {
var args = Array.prototype.slice.call(arguments);
if (timer) clearTimeout(timer);
timer = setTimeout(function () {
fn.apply(that, args);
}, delay);
};
};
var optimizeGetInputDom = inputUseDebounce(getInputDom, 300);
window.addEventListener('input', function (e) {
/** 如果已经上报过,则不再上报 */
if (lockTrackInput()) return;
optimizeGetInputDom(e.target);
});
}
try {
initInputListener();
} catch (error) {
console.log('initInputListener Error', error);
}
}
trackActionInput();
}
/** 第三方消息上报:目前主要是针对全点托管会话;在msgCollect/index.js中调试,访问test.html */
function thirdMsgCollect() {
/** 先检测是否是stayReal托管:如果stayReal脚本都没有,那么说明当前站点未开启stayReal会话托管 */
const scriptList = Array.prototype.slice.call(
document.querySelectorAll('script'),
);
const checkStayReal = () =>
!!scriptList.find((s) => s.src.includes('stayreal.xiaoman.cn'));
if (!checkStayReal()) return;
/** 缓存当前消息队列的最后一条消息id */
const CACHE_KEY = 'CACHE_KEY_MONITOR';
const setCache = (msgIndex) => {
/** 对缓存KEY进行base64转码处理 */
const cacheMsgIndex = btoa(msgIndex);
localStorage.setItem(CACHE_KEY, cacheMsgIndex);
};
const getCache = () => {
const cacheMsgIndex = localStorage.getItem(CACHE_KEY);
if (cacheMsgIndex) return Number(atob(cacheMsgIndex));
return -1;
};
/** 拉取最新msg列表 */
const pullMsgList = () => {
const msgEleList = Array.prototype.slice.call(
document.querySelectorAll('#chat-list li'),
);
const msgIds = [];
const msgMap = msgEleList.reduce((acc, item) => {
const sendTime = item
.querySelector('.message-data-time')
.textContent.trim();
const sendContent = item.querySelector('.message').textContent.trim();
/** msg带有class:other-message的是访客消息,my-message的是客服消息 */
const isOtherMessage = item
.querySelector('.message')
.classList.contains('other-message');
const msgId = item.querySelector('.message').getAttribute('id');
const msgItemData = {
msgId,
user: isOtherMessage ? 'visitor' : 'official',
time: sendTime,
content: sendContent,
};
msgIds.push(msgId);
acc[msgId] = msgItemData;
return acc;
}, {});
return {
ids: msgIds,
dataMap: msgMap,
};
};
/** 加密并上传消息数据 */
let ENCRYPT_KEY = 'de29f1aab63ab033';
let ENCRYPT_IV = 'b8d2badf875e76ac';
const baseUrl = 'https://cms.xiaoman.cn';
// var getEncryptConfig = function () {
// const url = baseUrl + '/shop-api/innerApi/getKeyIv'
// $.get(
// url,
// function (result) {
// console.log('result', result)
// if (Number(result.code) === 0 && result.data.key && result.data.iv) {
// ENCRYPT_KEY = result.data.key
// ENCRYPT_IV = result.data.iv
// uploadMsgData()
// } else {
// /** 如果获取失败,则重试 */
// setTimeout(() => {
// getEncryptConfig()
// }, 1000)
// }
// },
// 'json'
// )
// }
// getEncryptConfig()
const encryptMsg = function (msgData) {
const enc = new TextEncoder();
// 转字节
const keyBytes = enc.encode(ENCRYPT_KEY);
const ivBytes = enc.encode(ENCRYPT_IV);
const plainBytes = enc.encode(msgData);
// 导入密钥并加密
return crypto.subtle
.importKey('raw', keyBytes, { name: 'AES-CBC' }, false, ['encrypt'])
.then(function (cryptoKey) {
return crypto.subtle.encrypt(
{ name: 'AES-CBC', iv: ivBytes },
cryptoKey,
plainBytes,
);
})
.then(function (encryptedBuffer) {
// 转 base64 返回
return btoa(
String.fromCharCode(...new Uint8Array(encryptedBuffer)),
);
})
.catch((err) => {
return Promise.reject(err);
});
};
let uploadFlag = false;
const uploadMsgData = function () {
if (uploadFlag) return;
uploadFlag = true;
const { ids, dataMap } = pullMsgList();
let cacheMsgIndex = getCache();
const msgLen = ids.length;
if (!msgLen) {
// 消息DOM未挂载 || 消息DOM已挂载,但是消息列表为空
uploadFlag = false;
return;
}
if (msgLen - 1 < cacheMsgIndex) {
/** 针对站点挂后台一段时间,消息列表会自动塞入重复消息,导致消息有重复,刷新后又重置回正常消息列表,所以这里需要更新锚点下标 */
cacheMsgIndex = msgLen - 1;
setCache(cacheMsgIndex);
uploadFlag = false;
return;
}
if (msgLen - 1 === cacheMsgIndex) {
// 缓存的最后一次发送的消息ID是最后一条(说明当前消息均已经上报),则不跳过本地上报
uploadFlag = false;
return;
}
const currentMsgIds = ids.slice(cacheMsgIndex + 1, msgLen);
const currentMsgData = currentMsgIds.map((id) => dataMap[id]);
const mtmId = window.matomo_site_id_cookie_key || ''; // 获取mtm会话id
const msgBody = {
mtmId,
curl: window.location.href,
msgList: currentMsgData,
};
const msgBodyStr = JSON.stringify(msgBody);
encryptMsg(msgBodyStr)
.then(function (encryptedMsg) {
console.log('encryptedMsg:', encryptedMsg, msgBodyStr);
const url = baseUrl + '/shop-api/External/ListenSiteActiveStatus';
$.ajax({
type: 'POST',
url,
data: JSON.stringify({ d_v: encryptedMsg }),
contentType: 'application/json',
success: function (result) {
if (Number(result.code) === 0) {
// 更新消息队列
setCache(msgLen - 1);
}
uploadFlag = false;
},
error: function (err) {
console.error(err, '请求异常');
uploadFlag = false;
},
});
})
.catch((err) => {
console.error(err, '数据加密失败');
uploadFlag = false;
});
};
/** 监控chat-list的DOM变更 */
const initChatListObserver = () => {
// 需要监听的 DOM 节点
const target = document.getElementById('chat-list');
if (!target) return;
// 回调函数
const callback = function (mutationsList, observer) {
for (const mutation of mutationsList) {
console.log('mutation', mutation);
if (mutation.type === 'childList') {
uploadMsgData();
}
}
};
// 配置
const config = {
childList: true, // 监听子节点的增删
subtree: true, // 是否也监听后代节点
};
// 创建 observer
const observer = new MutationObserver(callback);
// 开始监听
observer.observe(target, config);
};
let testCount = 30;
let itv = null;
const checkChatDom = () => !!document.querySelector('#vc-model');
const initTalkCheck = () => {
itv = setTimeout(() => {
console.log('checkChatDom', checkChatDom(), testCount);
if (!checkChatDom() && testCount > 0) {
testCount--;
initTalkCheck();
return;
}
clearTimeout(itv);
uploadMsgData();
initChatListObserver();
}, 1500);
};
initTalkCheck();
}
try {
gtmTrack();
thirdMsgCollect();
console.log('inserted gtm code');
} catch (error) {
console.error('gtmTrack Error', error);
}
});
})();
Overnatningsfaciliteter på olie- og gasfelter er meget vigtige for arbejdere inden for olie- og gasindustrien. Disse steder giver arbejdere mulighed for at sove, spise og slappe af efter en lang dag med hårdt arbejde. Mange oliefelt lejr for arbejdere ligger i afsides områder, så gode overnatningsfaciliteter er afgørende for sikkerhed og komfort. Arbejdere skal føle sig sikre og have et rent, behageligt sted at opholde sig. Virksomheder som CDPH fokuserer på at levere de bedste overnatningsfaciliteter til deres medarbejdere. De tilbyder mange muligheder, der opfylder forskellige behov og budgetter. Ved at forstå, hvad man skal kigge efter i forbindelse med overnatningsfaciliteter på olie- og gasfelter, kan arbejdere få en bedre oplevelse, mens de er på arbejde. At finde billige boliger til oliefeltarbejdere kan være en udfordring, især når mange steder ligger langt fra byer. En af de bedste måder at finde gode muligheder på er at søge online. Mange websites viser boliger specifikt til oliefeltarbejdere. Disse websites kan vise billeder, priser og anmeldelser fra andre arbejdere. Det er også klogt at tale med andre arbejdere. De kan dele deres erfaringer og anbefale steder, der er sikre og komfortable. Nogle gange tilbyder virksomheder som CDPH tilbud til grupper af arbejdere. Det betyder, at hvis mange arbejdere har brug for at bo på samme sted, kan de få en lavere pris. Det kan også være nyttigt at tjekke lokale annoncer. Nogle små hoteller eller hytter reklamerer måske ikke online, men kan tilbyde gode tilbud til oliefeltarbejdere. Netværksdannelse med andre virksomheder inden for olie- og gasindustrien kan føre til opdagelsen af skjulte perler blandt boligmulighederne. En anden mulighed er at lede efter mobile lejre. Dette er midlertidige boligfaciliteter, der oprettes tæt på arbejdsstedet. De er ofte billigere og tilbyder alt, hvad arbejdere har brug for, f.eks. mad og vaskemuligheder. Det er vigtigt at sammenligne forskellige muligheder og sikre sig, at de opfylder ens behov. Sikkerhed skal have høj prioritet, så søg efter steder, der er velvedligeholdte og har god sikkerhed. Når man leder efter højkvalitetsboliger til oliefeltarbejdere, er der flere vigtige funktioner, man bør overveje. For det første er komfort afgørende. Arbejdere vil ønske en ren seng og et stille værelse, hvor de kan hvile efter en lang vagt. Søg efter steder, der tilbyder private værelser eller i det mindste fællesrum, der ikke er for overfyldte. God mad er en anden vigtig funktion. Mange boliger tilbyder måltider, så tjek, om maden er sund og smagfuld. Adgang til Wi-Fi samt underholdningsmuligheder som TV eller spil kan hjælpe arbejdere med at slappe af i deres fritid. Sikkerhedsfunktioner er ligeledes meget vigtige. Søg efter boliger med god belysning, sikker parkering og beredskabsplaner, hvis der opstår uventede situationer. Et venligt personale kan også gøre en stor forskel. At have nogen til rådighed, der kan hjælpe med eventuelle problemer, kan gøre opholdet langt mere behageligt. Desuden betyder beliggenheden i forhold til arbejdsstedet noget. Jo tættere boligerne er på modulær infrastruktur til oliefelter , jo mindre tid vil arbejdsstyrken bruge på at pendle. Dette betyder mere tid til hvile og afslapning. Endelig bør man overveje anmeldelser fra andre arbejdere. De kan give ærlig feedback om deres erfaringer, hvilket kan hjælpe en med at vælge det bedste sted at bo. Med disse funktioner i tankerne kan arbejdere finde boliger, der imødekommer deres behov, og gøre deres tid på arbejdspladsen mere behagelig. Når man arbejder på et oliefeltprojekt, er det meget vigtigt at føle sig komfortabel. Mange arbejdere tilbringer meget tid væk fra hjemmet, hvilket kan være svært. For at gøre livet nemmere leverer virksomheder som CDPH gode boligfaciliteter. For det første er det afgørende at have et rent og stille sted at sove. Arbejdere har brug for en behagelig seng og et værelse, der dæmper støj. Dette hjælper dem med at hvile ordentligt efter en lang dag. Desuden gør privat plads en stor forskel. Hver arbejder bør have sit eget område, hvor de kan slappe af og afspænde sig. En anden nyttig facilitet er god mad. Sund mad er vigtig for energi, så CDPH stræber efter at tilbyde smagfulde og ernæringsrigtige muligheder. At have en køkkenfacilitet eller et spisested, hvor arbejdere kan spise sammen, kan hjælpe dem med at føle sig mere hjemme og bygge venskaber. En anden måde at forbedre komforten er gennem underholdningsmuligheder. Efter arbejde er det rart at have aktiviteter at nyde. Det kan være spil, film eller endda udendørs områder til sport. Internetadgang er også vigtig. Arbejdere ønsker ofte at kontakte familie og venner derhjemme, så Wi-Fi er en absolut nødvendighed. Det kan hjælpe dem med at føle sig mindre ensomme under lange projekter. Derudover kan gode opvarmnings- eller kølesystemer i boligen gøre en stor forskel. Arbejdere bør føle sig komfortable uanset vejen udenfor. At finde miljøvenlige boligfaciliteter til olieindustrien bliver stadig vigtigere. Mange virksomheder ønsker at bidrage til miljøet, samtidig med at de fortsat leverer gode boligfaciliteter til deres medarbejdere. CDPH er en virksomhed, der tager dette spørgsmål alvorligt. En måde at skabe miljøvenlige boligfaciliteter på er ved at anvende genbrugsmaterialer. Bygninger fremstillet af genbrugt træ eller metal kan reducere affald og støtte planeten. Desuden kan brugen af energieffektive apparater mindske energiforbruget. Det betyder f.eks. at anvende lyskilder, der spare el, og apparater, der kræver minimal strømforbrug. Planlægning af logistikken for olieindustriens boligfaciliteter kan være udfordrende, men er meget vigtig. For det første skal man overveje, hvor mange medarbejdere der har brug for bolig. Dette hjælper med at afgøre, hvor stor boligfaciliteten skal være. CDPH bruger denne information til at sikre, at der er tilstrækkeligt med værelser til alle. Derefter skal beliggenheden af den modulære boligenheder til oliefelter det er bedst at have overnatningsfaciliteter tæt på arbejdspladsen. På den måde behøver arbejdere ikke at rejse langt hver dag. Det sparer tid og gør det nemmere for dem at nå frem til arbejde til tiden. Gør din hjem mere sikker og mere behagelig ved at installere containere! Vi bruger Container house, der omfatter alle strukturelle komponenter. Alle er forudfabrikeret i fabrikstandard. Vælg den rigtige størrelse og konfiguration, og du kan hurtigt opbygge en bolig til at opfylde dine krav. På baggrund af kundens krav og præferencer kan de forskellige moduler kombineres til forskellige rumindretninger som køkken, stue eller soveværelse. Vores containerhus har fantastiske egenskaber såsom vandtæthed, fugtbeskyttelse, korrosionsbestandighed, brandbestandighed og korrosionsbestandighed. Installationsprocessen er nem og simpel, og kræver ikke specielt teknisk viden. Uanset om det er til dit private rum, en midlertidig kontor, lagerplads eller andre behov, er vores prefab container hus designet til at opfylde dine behov. Få et containerrum i dag og nyd lavere omkostninger og en mere højtidelig service for at gøre din liv mere behagelig! Apple-bolig, unik form, smuk udseende, gør dit hjem mere personlig. Vi har en række stilarter og farver, der passer til dine personlige præferencer – fra enkle, moderne til traditionelle. Beijing Chengdong fokuserer på foldbare containervillaer og kan tilpasse dem efter dine behov. For at imødekomme dine individuelle ønsker og præferencer kan du tilpasse din boligs design, grundplan, vand- og elinstallationer osv., så vi kan bygge en ideel og eksklusiv bolig til dig. Vi har allerede designet og installeret el- og vandlejringerne før byggeriet, hvilket undgår den tidskrævende omstilling af vand- og elinstallationer efter indretningen og øger effektiviteten og kvaliteten af indretningen. Du kan vælge mellem et bredt udvalg af indretningsløsninger til dit stueområde, spiseområde, soveværelse, køkken og meget mere. En kvalitetslivsstil – fra Apple-boligen! Apple-boligen er et unikt område! Færdigbyggede huse er bygget med en særlig konstruktionsmæssig design og har god seismisk ydeevne for at sikre sikkerheden. Modulært design gør det nemt at flytte og installere, og færdigbyggede huse i miniudgave kan tilpasses efter dine personlige præferencer med hensyn til forskellige stilarter og rumtyper. Alle elementer er fremstillet af færdigproducerede materialer og er nemme at installere uden behov for specifikke færdigheder. Uanset om det er tiltænkt som kontor, bolig, lager eller andre formål, kan det færdigbyggede hus opfylde dine behov. Stilfuldt udseende og strømlinet design, der kan tilpasses dine individuelle præferencer for at skabe et personligt bofælleskab. Bedst af alt kræver færdigbyggede huse ingen svejsning på stedet, og vi leverer installationsvejledninger for at gøre installationen nemmere og hurtigere. Nyd fordelene ved et mere komfortabelt liv med Chengdong-færdigbyggede huse. Chengdong færdigbyggede huse. Det foldbare hus er designet ved hjælp af et modulært system, der kan konfigureres i henhold til de specifikke krav for dit hjem. Dette gør det muligt at bygge et foldbart containerværelse og gør dit hjem mere sikkert, stabilt og sikker. Værelset kan kombineres med andre værelser for at imødekomme forskellige krav, hvilket betyder, at du kan bo komfortabelt overalt og til enhver tid. Hurtig levering! Vi tilbyder også en hurtig emballage- og leveringstjeneste. Vores ekspertemballageteam pakker dit foldbare værelse i henhold til kundens krav. Vi overvåger hvert enkelt trin i leveringsprocessen for at sikre, at dine varer ankommer sikkert til deres destination. Den bedste del er, at det foldbare værelse er nemt at opbygge uden svejsning på stedet, og vi leverer installationsvejledninger, så din installationsproces bliver hurtigere og nemmere. Hvis du følger alle trinnene i vejledningen og udfører dem korrekt, vil du kunne færdiggøre bygningen af dit foldbare hus.Oilfield-herberging
Hvilke funktioner skal man lede efter i højkvalitets boligfaciliteter til olieindustrien

Sådan maksimerer du komforten i boligfaciliteter til olieindustrien ved langvarige projekter
Hvor kan du finde miljøvenlige boligfaciliteter til olieindustrien?
Hvad bør du overveje, når du planlægger logistikken for boligfaciliteter til olieindustrien?
Why choose CDPH
Oilfield-herberging?
Godt salgscontainerhus
Modern Stil æble hytte
Nyt ankommet prefabriceret hus
Høj kvalitet sammenlægningsbar hus
Finder du ikke det, du leder efter?
Anmod om et tilbud nu
Kontakt vores rådgivere for flere tilgængelige produkter.Kontakt os