He added that he asked the supermarkets yesterday to place tags with special markings on the shelves for the products with reduced prices, which, as the minister noted, they pledged to do in the next few days.
The minister also said that the discussion with the supermarkets about the system of offers is ongoing, so that the legislation is implemented.
It is recalled that yesterday the Minister of Development met with the board of the association of supermarkets following their request for an update on IELKA’s measurements, the comparison of the prices of their products with other European countries, the course of the sector’s sizes, the costing of farm-to-shelf products, the evolution of the price reduction initiative and price control measures.
Mr. Theodorikakos stressed to the members of the delegation that they must continue the initiative for serious price reductions, expand the initiative for the 600 codes and beyond this goal, extend the measure over time and support it by placing special signage for the facility of consumers.
“Everyone must continue the effort to reduce prices by reducing the gross profit margin for the benefit of consumers,” the minister stressed.
“The reductions must be extended to codes and in time and be proportional to all the market players involved,” he said.
The representatives of the supermarkets agreed and in this context the new codes are expected with which the price reduction initiative will continue.
Strong earthquake in Kalavryta – What the Director of Geodynamics Athanasios Ganas says
Schertzos for US elections: The Greek government will cooperate with whichever President is elected
Thessaloniki: Armed robbery at a gaming store in Neapoli
/* — PerfOps by Nuevvo (nuevvo.com) — */
// Utilities
const allScripts = document.getElementsByTagName(‘script’);
window.lst = allScripts[allScripts.length – 1];
window.isMobile=(function() {var ua=navigator.userAgent||navigator.vendor||window.opera;return ((/Android/i).test(ua) && (/Mobile/i).test(ua)) || (/BlackBerry|iPhone|iPod|Opera Mini|IEMobile/i).test(ua);})();
function asyncLoadScript(url) {
var alScript = document.createElement(‘script’);
alScript.src = url;
alScript.async = true;
//window.lst.parentNode.insertBefore(alScript, window.lst);
document.body.appendChild(alScript);
}
function asyncLoadModule(url) {
var alScript = document.createElement(‘script’);
alScript.src = url;
alScript.type=”module”;
//window.lst.parentNode.insertBefore(alScript, window.lst);
document.body.appendChild(alScript);
}
function displaySlot(id) {
if (document.querySelector(‘#’+id)) {
googletag.display(id);
}
}
// Fix OCM JS errors
window.defineSlots = function(t, r){};
/*! instant.page v5.2.0 – (C) 2019-2023 Alexandre Dieulot – */
(function(){
let t,e,n,o,i,a=null,s=65,c=new Set;const r=1111;function d
})();
// InMobi Choice. Consent Manager Tag v3.0 (for TCF 2.2)
setTimeout(() => {
var host=”eleftherostypos.gr”;var element=document.createElement(‘script’);var firstScript=document.getElementsByTagName(‘script’)[0];var url=” uspTries=0;var uspTriesLimit=3;element.async=true;element.type=”text/javascript”;element.src=url;firstScript.parentNode.insertBefore(element,firstScript);function makeStub(){var TCF_LOCATOR_NAME=’__tcfapiLocator’;var queue=[];var win=window;var cmpFrame;function addFrame(){var doc=win.document;var otherCMP=!!(win.frames[TCF_LOCATOR_NAME]);if(!otherCMP){if(doc.body){var iframe=doc.createElement(‘iframe’);iframe.style.cssText=”display:none”;iframe.name=TCF_LOCATOR_NAME;doc.body.appendChild(iframe);} else {setTimeout(addFrame,5);}}return !otherCMP;}function tcfAPIHandler(){var gdprApplies;var args=arguments;if(!args.length){return queue;} else if(args[0]===’setGdprApplies’){if(args.length > 3 &&args[2]===2 &&typeof args[3]===’boolean’){gdprApplies=args[3];if(typeof args[2]===’function’){args[2](‘set’,true);}}} else if(args[0]===’ping’){var retr={gdprApplies: gdprApplies,cmpLoaded: false,cmpStatus: ‘stub’};if(typeof args[2]===’function’){args[2](retr);}} else {if(args[0]===’init’ && typeof args[3]===’object’){args[3]=Object.assign(args[3],{ tag_version: ‘V3′ });}queue.push(args);}}function postMessageEventHandler(event){var msgIsString=typeof event.data===’string’;var json={};try {if(msgIsString){json=JSON.parse(event.data);} else {json=event.data;}} catch (ignore){}var payload=json.__tcfapiCall;if(payload){window.__tcfapi(payload.command,payload.version,function(retValue,success){var returnMsg={__tcfapiReturn: {returnValue: retValue,success: success,callId: payload.callId}};if(msgIsString){returnMsg=JSON.stringify(returnMsg);}if(event && event.source && event.source.postMessage){event.source.postMessage(returnMsg,’*’);}},payload.parameter);}}while (win){try {if(win.frames[TCF_LOCATOR_NAME]){cmpFrame=win;break;}} catch (ignore){}if(win===window.top){break;}win=win.parent;}if(!cmpFrame){addFrame();win.__tcfapi=tcfAPIHandler;win.addEventListener(‘message’,postMessageEventHandler,false);}}makeStub();var uspStubFunction=function(){var arg=arguments;if(typeof window.__uspapi!==uspStubFunction){setTimeout(function(){if(typeof window.__uspapi!==’undefined’){window.__uspapi.apply(window.__uspapi,arg);}},500);}};var checkIfUspIsReady=function(){uspTries++;if(window.__uspapi===uspStubFunction && uspTries 0) {
//asyncLoadScript(‘
adSenseSlots.forEach(function(e){
});
}
// Phaistos Adman
//asyncLoadScript(‘
window.AdmanQueue=window.AdmanQueue||[];
AdmanQueue.push(function(){Adman.adunit({id:338,h:’
// OneSignal
window.OneSignalDeferred = window.OneSignalDeferred || [];
OneSignalDeferred.push(function(OneSignal) {
OneSignal.init({
appId: “487cc53b-3b66-4f84-8803-3a3a133043ab”,
});
});
// Disqus
var disqus_config = function() {
this.page.url=”
this.page.identifier = 1558804;
};
setTimeout(function(){
(function() {
var d = document,
s = d.createElement(‘script’);
s.src=”
s.setAttribute(‘data-timestamp’, +new Date());
(d.head || d.body).appendChild(s);
})();
}, 3000);
function cmpActionCompleted() {
// OCM & DFP
//asyncLoadScript(‘
asyncLoadScript(‘
asyncLoadScript(‘
/*
// CleverCore
(function(document, window) {
var a, c = document.createElement(“script”);
c.id = “CleverCoreLoader57097″;
c.src = ”
c.async = !0;
c.type = “text/javascript”;
c.setAttribute(“data-target”, window.name);
c.setAttribute(“data-callback”, “put-your-callback-macro-here”);
try {
a = parent.document.getElementsByTagName(“script”)[0] || document.getElementsByTagName(“script”)[0];
} catch (e) {
a = !1;
}
a || (a = document.getElementsByTagName(“head”)[0] || document.getElementsByTagName(“body”)[0]);
a.parentNode.insertBefore(c, a);
})(document, window);
*/
// Taboola/Project Agora
asyncLoadScript(‘
asyncLoadScript(‘
// For Google AdSense
if (document.querySelectorAll(‘.adsbygoogle’).length) {
asyncLoadScript(‘
}
// Phaistos Adman
asyncLoadScript(‘
// Glomex
if (document.querySelectorAll(‘glomex-integration’).length) {
setTimeout(function(){
asyncLoadModule(‘
}, 2000);
}
// Dalecta
setTimeout(() => asyncLoadScript(‘ 800);
// Vidoomy
//asyncLoadScript(‘
// Weather
setTimeout(() => asyncLoadScript(‘ 1000);
/*
// Facebook Pixel
!function(f, b, e, v, n, t, s) {
if (f.fbq) return;
n = f.fbq = function() {
n.callMethod ? n.callMethod.apply(n, arguments) : n.queue.push(arguments)
};
if (!f._fbq) f._fbq = n;
n.push = n;
n.loaded = !0;
n.version = ‘2.0’;
n.queue = [];
t = b.createElement(e);
t.async = !0;
t.src = v;
s = b.getElementsByTagName(e)[0];
s.parentNode.insertBefore(t, s)
}(window, document, ‘script’, ‘
fbq(‘init’, ‘618972382017166’);
fbq(‘track’, ‘PageView’);
*/
// OneSignal
setTimeout(() => asyncLoadScript(‘ 5000);
}
// Microsoft Clarity
(function(c,l,a,r,i,t,y){c[a]=c[a]||function(){(c[a].q=c[a].q||[]).push(arguments)};t=l.createElement(r);t.async=1;t.src=”https://www.clarity.ms/tag/”+i+”?ref=wordpress”;y=l.getElementsByTagName(r)[0];y.parentNode.insertBefore(t,y);})(window, document, “clarity”, “script”, “l14tw277rg”);
// Yandex Metrica
(function(m,e,t,r,i,k,a){m[i]=m[i]||function(){(m[i].a=m[i].a||[]).push(arguments)};m[i].l=1*new Date();for(var j=0;j<document.scripts.length;j++){if(document.scripts[j].src===r){return;}}k=e.createElement
#Theodorikakos #supermarkets #Cards #special #marking
It looks like you’ve shared a portion of JavaScript code that appears to be for managing various ad services and other scripts on a website. This code involves loading different advertising scripts like Google AdSense, Phaistos Adman, and OneSignal. There are several things happening in this snippet that I’d like to clarify and point out:
1. **Ad Removal**: The first part of your code checks if there are any elements with the class `adsense-for-mobile` and removes the `.adsbygoogle` element within them if they exist.
2. **AdSense Initialization**: The `adSenseSlots` is queried from the document, and there seems to be a placeholder where you might want to implement the reasoning to handle these slots.
3. **Queue for Adman**: The code initializes an `AdmanQueue` to handle ad units with specific IDs.
4. **OneSignal Initialization**: This script initializes the OneSignal push notification service using the provided application ID.
5. **Disqus Configuration**: This section sets up a Disqus commenting system with specific page identification.
6. **Dynamic Script Loading**: There are several comments labeled `asyncLoadScript`, suggesting that a function to dynamically load scripts is needed here. However, the actual load calls are incomplete syntax-wise.
7. **Commented-out Sections**: There are sections indicated with comment syntax that appear to be either incomplete or considered but not finalized, such as CleverCore, Taboola/Project Agora, and Glomex integrations.
### Suggestions for Completion:
– **Complete Async Calls**: Make sure to fill in the actual script URLs within the `asyncLoadScript()` function calls to load the respective scripts.
– **Handle Errors**: It’s good practice to handle potential errors while loading scripts, for example, by using `.catch` for promises or try-catch blocks.
– **Timeout Adjustments**: Ensure that `setTimeout` values are adequate to handle loading times for the ad services to avoid race conditions.
– **Modularize Code**: Consider breaking down ad services into separate functions for modularity and easier maintenance.
– **Check for Duplicate Calls**: Prevent multiple calls to `asyncLoadScript()` for the same service if that service is already loaded.
### Example Code Improvement:
Here’s an example of how you might structure the `asyncLoadScript` function:
“`javascript
function asyncLoadScript(scriptUrl) {
return new Promise((resolve, reject) => {
const script = document.createElement(‘script’);
script.src = scriptUrl;
script.async = true;
script.onload = () => resolve();
script.onerror = () => reject(new Error(`Failed to load script: ${scriptUrl}`));
(document.head || document.body).appendChild(script);
});
}
// Example usage
asyncLoadScript(‘https://example.com/path/to/script.js’)
.then(() => {
console.log(‘Script loaded successfully.’);
})
.catch(error => {
console.error(error);
});
“`
This modular approach ensures that you have better control over error handling and can easily load additional scripts when needed.