Congés Joseph
Sujet sensible :
Retargeting → Parti Wordpress + Tool (indissociable) → Julien
Age-gate + advert post (compliance) → Vale / Max
Plugin Habillage → Max
Table-maker → Joe
betsapi → Joe
Joseph du lundi 28/02 au 04/03 - Urgence : 06.61.82.37.40
Backup infogerance : proxmox → Yann ? pct restart 102
Martin : lead Daily + bonus code + MU plugin + TMA
Ignacio : Display Habillage + Migration + TMA + solobasket (drupal)
Julia : NSNTIPS + TMA WORDPRESS + Sql optimisation (noé nexylan) Frederick : 01/03 arrivé Asana ok + projet bonus code
Tatiana : TopStories + COPYLAUNCH
Joseph du lundi 19/07 au 01/08 - Urgence : 06.61.82.37.40
Les informations concernant l'infrastructure, toutes machine sont accessible depuis le proxmox et les mots de passe des VM sont dans le playbook ansible sur gitlab dans le dossier group_vars
SysAdmin - Proxmox (WARNING)
Vous devez tous avoir access à n-admin (https://n-admin.nexylan.com) seo@north-star.network / oZ203!iLLlu#
https://logs.nexylan.net/search → verifier les logs et être sur qu'il n'y pas d'anomalie nsn / bKy6c5AuEwWvRf6wK3m4
tinker artisan || tinkerwell
$websites = Website::whereHas('campaigns', function($query) {
$query->whereEnable(1);
})->get();
foreach ($websites as $website) {
try {
dump(sprintf('Site: %s - Try deploiement !', $website->url));
$campaignsList = [];
foreach ($website->campaigns as $campaign) {
if ($campaign->enable) {
$nameCampaign = str_replace([' ','(', ')'], '-', ($campaign->customer->name ?? '').($campaign->retarget->name ?? ''));
$campaignsList[$nameCampaign]['priority'] = $campaign->priority;
if ($campaign->retarget instanceof AffiliateLink) {
$excludeUrls = preg_split('/(\r\n|\n)/', $campaign->websites->firstWhere('id', $website->id)->pivot->exclude_urls) ?? [];
$allowedUrls = preg_split('/(\r\n|\n)/', $campaign->websites->firstWhere('id', $website->id)->pivot->allowed_urls) ?? [];
if ($campaign->is_proxy) {
$retargetUrl = '//nsmedia-advertising.com/?l='.$campaign->retarget->uuid;
} else {
$retargetUrl = str_replace(['https://', 'http://'], '//', $campaign->retarget->url);
}
$campaignsList[$nameCampaign]['global'] = [
[
'iframe' => $retargetUrl,
'link' => $retargetUrl,
'imageUrl' => !is_null($campaign->retarget->banner_name) ? $campaign->retarget->banner_name : $campaign->customer->banner_name,
'excludeUrls' => $excludeUrls,
'allowedUrls' => $allowedUrls,
]
];
}
foreach ($campaign->customRegion as $region) {
$excludeUrls = preg_split('/(\r\n|\n)/', $campaign->websites->firstWhere('id', $website->id)->pivot->exclude_urls) ?? [];
$allowedUrls = preg_split('/(\r\n|\n)/', $campaign->websites->firstWhere('id', $website->id)->pivot->allowed_urls) ?? [];
$retargetUrl = str_replace(['https://', 'http://'], '//', $region->url);
$campaignsList[$nameCampaign][$region['region']] = [
[
'iframe' => $retargetUrl,
'link' => $retargetUrl,
'imageUrl' => $campaign->customer->banner_name,
'excludeUrls' => $excludeUrls,
'allowedUrls' => $allowedUrls,
]
];
}
}
}
if ($website->category == "White Label" || $website->type != "wordpress") {
$config = json_encode(array(
'logged' => false,
'ajaxUrl' => '',
'monitoring' => false,
'cookieName' => 'cookie_notice_accepted',
'cookieTime' => 2592000,
'cookieTimeRejected' => 3600,
'cookiePath' => '/',
'cookieDomain' => '',
'cache' => 1,
'secure' => 1,
'campaigns' => json_encode($campaignsList),
'cookieRequired' => false,
));
$token = "JHYTRESD76543HGEZF";
$hash = md5($website->domain->domain. $token);
$url = "https://campaigns-ad.s3.eu-west-2.amazonaws.com/campaigns-ad/js/$hash.js";
$file = Gitlab::repositoryFiles()->getFile(117, 'js/retargetting.min.js', self::BRANCH);
$file = base64_decode($file['content']);
$file = Str::replaceFirst('"IMPORT_CONFIG"', $config, $file);
Storage::disk('campaigns')->put("js/$hash.js", $file);
$website->update(['s3-script' => $url]);
} else {
$website->wpcli()->setOption('cookie-drop_campaigns', json_encode($campaignsList), '--format=json');
CloudFlare::clearCache($website);
}
} catch (\Exception $e) {
dump(sprintf('Site: %s - Error: %s', $website->url, $e->getMessage()));
}
}