«Αυτή η τακτική της κυβέρνησης που αξιοποιεί τις ανακοινώσεις της Επιτροπής είναι μέρος μιας συνολικότερης διαχείρισης της πανδημίας, ιδιαίτερα του δεύτερου κύματος, μια διαχείριση εγκληματική κυριολεκτικά που έχει καταδικάσει στο να ζούμε στον πολύμηνο αποκλεισμό με συγκεκριμένες συνέπειες στην καθημερινότητα της πλειοψηφίας του λαού μας», σημείωσε μεταξύ άλλων σε συνέντευξή του, ο Νίκος Σοφιανός, μέλος του ΠΓ της ΚΕ του ΚΚΕ. Ο κ. Σοφιανός, μιλώντας στον «Real FM», υπογράμμισε πως οι εργαζόμενοι στο σύστημα Υγείας μέσα σε ένα χρόνο μειώθηκαν κατά 2,5% σε αντίθεση με την αστυνομία που αυξήθηκε κατά 6% και πρόσθεσε ότι παραμένει τραγική η κατάσταση στα ΜΜΜ, η ανεξέλεγκτη κατάσταση σε χώρους δουλειάς και σχολεία, αλλά και στα κλειστά Πανεπιστήμια, σημειώνοντας πως όλα αυτά είναι «οι συνέπειες μιας εγκληματικής πολιτικής διαχείρισης που δίνει σε λίγους σε αυτές τις συνθήκες και καταδικάζει τους πολλούς στον αποκλεισμό και στις τραγικές οικονομικές συνέπειες». Επεσήμανε ακόμα πως με σωστά μέτρα μπορούν μια σειρά κλάδοι της οικονομίας να ανοίξουν, αλλά και να στηριχθούν οι μικροί επαγγελματίες και οι αγρότες, όμως «αυτό απαιτεί κονδύλια και άλλες προτεραιότητες» και στάθηκε στο άνοιγμα των συνόρων το περασμένο καλοκαίρι «χωρίς όρους και προϋποθέσεις», όταν τα κρούσματα ήταν σχεδόν μηδενικά. «Ο φόβος και η ανησυχία γίνεται και οργή. Θα μεγαλώσει το κύμα της οργής τις επόμενες ημέρες απέναντι σε αυτή την εγκληματική διαχείριση», επεσήμανε ο Ν. Σοφιανός. Χαρακτήρισε θράσος το ότι η κυβέρνηση φέρνει εν μέσω πανδημίας νομοσχέδια, όπως αυτό για την Παιδεία και ταυτόχρονα θέλει ο κόσμος να μην αντιδρά. «Αν κόπτεται για τη δημόσια υγεία, ας αποσύρει το νομοσχέδιο», τόνισε και πρόσθεσε «ήδη πήραν δείγματα την προηγούμενη βδομάδα και αυτά θα πολλαπλασιαστούν», καθώς «είναι στα κάγκελα» οι άνθρωποι του αθλητισμού, οι εργαζόμενοι στην εστίαση, οι άνθρωποι του πολιτισμού. Είναι υποκρισία, σημείωσε, να μην ελέγχονται οι κλειστοί εργασιακοί χώροι, ενώ οι διαδηλώσεις, οι ανοικτοί χώροι που ακόμα και με τα δικά τους λεγόμενα μειώνουν την επικινδυνότητα της μετάδοσης, στοχοποιούνται για να κρυφτούν οι δικές τους ευθύνες. Για τα ελληνοτουρκικά ο Ν. Σοφιανός υπογράμμισε πως «και η σημερινή κυβέρνηση κινείται σε ένα αντιδραστικό πλαίσιο που δεν προοιωνίζει τίποτα το καλό για τα εθνικά μας συμφέροντα, όταν γίνεται υπό τη σκέπη του ΝΑΤΟ, των Αμερικανών και των Ευρωπαίων και όταν οι τελευταίοι υπονομεύουν ζητήματα κυριαρχίας».
');
}
},
error: function() {
// Fallback to admin-ajax if REST API fails
$.ajax({
url: 'https://www.xtesini.gr/wp-admin/admin-ajax.php',
type: 'POST',
data: {
action: 'get_recommendations_carousel',
limit: limit,
nonce: 'ca241b5fa7'
},
success: function(response) {
if (response.success && response.data.html) {
container.html(response.data.html);
initializeCarousel($('#carousel_684e031d15fbc'));
} else {
container.html('
');
}
}
});
}
});
// Carousel initialization function
function initializeCarousel($wrapper) {
var $container = $wrapper.find(".carousel-container");
var $carousel = $wrapper.find(".related-articles-carousel");
var $items = $wrapper.find(".carousel-item");
var $prevBtn = $wrapper.find(".prev-arrow");
var $nextBtn = $wrapper.find(".next-arrow");
if ($items.length === 0) return;
var itemWidth = $items.first().outerWidth(true);
var visibleItems = Math.floor($container.parent().width() / itemWidth);
var position = 0;
var maxPosition = Math.max(0, $items.length - visibleItems);
// Touch handling variables
var isDragging = false;
var startX = 0;
var startY = 0;
var currentX = 0;
var currentTranslate = 0;
var startTranslate = 0;
var threshold = 10;
var isScrolling = null;
// Hide prev button initially
$prevBtn.css("opacity", "0.5");
// Navigation
$nextBtn.click(function() {
if (position < maxPosition) {
position++;
updatePosition();
}
});
$prevBtn.click(function() {
if (position > 0) {
position--;
updatePosition();
}
});
// Touch support
$carousel.on("touchstart", function(e) {
var touch = e.originalEvent.touches[0];
startX = touch.clientX;
startY = touch.clientY;
isDragging = true;
isScrolling = null;
var transform = $container.css("transform");
var matrix = transform.replace(/[^0-9,.\-]/g, "").split(",");
startTranslate = currentTranslate = matrix[4] ? parseInt(matrix[4]) : 0;
$container.css("transition", "none");
});
$carousel.on("touchmove", function(e) {
if (!isDragging) return;
var touch = e.originalEvent.touches[0];
var deltaX = touch.clientX - startX;
var deltaY = touch.clientY - startY;
if (isScrolling === null) {
if (Math.abs(deltaX) > threshold || Math.abs(deltaY) > threshold) {
isScrolling = Math.abs(deltaY) > Math.abs(deltaX) * 0.7;
}
}
if (isScrolling === true) {
isDragging = false;
$container.css("transition", "transform 0.3s ease");
return;
}
if (isScrolling === false) {
e.preventDefault();
currentX = deltaX;
var newTranslate = startTranslate + deltaX;
var minTranslate = -maxPosition * itemWidth;
var maxTranslate = 0;
if (newTranslate > maxTranslate) {
newTranslate = maxTranslate + (newTranslate - maxTranslate) * 0.3;
} else if (newTranslate < minTranslate) {
newTranslate = minTranslate + (newTranslate - minTranslate) * 0.3;
}
$container.css("transform", "translateX(" + newTranslate + "px)");
}
});
$carousel.on("touchend", function(e) {
if (!isDragging || isScrolling === true) return;
isDragging = false;
$container.css("transition", "transform 0.3s ease");
var prevPosition = position;
if (Math.abs(currentX) > itemWidth * 0.25) {
if (currentX > 0 && position > 0) {
position--;
} else if (currentX < 0 && position < maxPosition) {
position++;
}
}
if (position !== prevPosition && window.RecommendationTracker) {
var action = position > prevPosition ? 'next' : 'prev';
window.RecommendationTracker.trackCarouselInteraction(action);
}
updatePosition();
isScrolling = null;
currentX = 0;
});
function updatePosition() {
var translateX = -position * itemWidth;
currentTranslate = translateX;
$container.css({
"transition": "transform 0.3s ease",
"transform": "translateX(" + translateX + "px)"
});
$prevBtn.css("opacity", position <= 0 ? "0.5" : "1");
$nextBtn.css("opacity", position >= maxPosition ? "0.5" : "1");
}
// Responsive
$(window).on("resize", function() {
itemWidth = $items.first().outerWidth(true);
visibleItems = Math.floor($container.parent().width() / itemWidth);
maxPosition = Math.max(0, $items.length - visibleItems);
if (position > maxPosition) {
position = maxPosition;
}
updatePosition();
});
updatePosition();
}
});