Αυξητική παραμένει η ημερήσια τάση στο ιικό φορτίο των λυμάτων της Θεσσαλονίκης, σύμφωνα με την έρευνα που διεξάγει η Ομάδα Επιδημιολογίας Λυμάτων του ΑΠΘ με την ΕΥΑΘ, σε συνεργασία με την Περιφέρεια Κεντρικής Μακεδονίας και στο πλαίσιο του Εθνικού Δικτύου του ΕΟΔΥ.Συγκεκριμένα, σύμφωνα με την εξέλιξη των μετρήσεων από δείγματα που λαμβάνονται καθημερινά στην είσοδο της Εγκατάστασης Επεξεργασίας Λυμάτων Θεσσαλονίκης, αναφορικά με τις εξορθολογισμένες τιμές σχετικής έκκρισης ιικού φορτίου: Η μέση τιμή των δύο πιο πρόσφατων μετρήσεων δηλαδή της Τετάρτης 03/03 και της Πέμπτης 04/03, είναι – αυξημένη κατά 15% σε σχέση τη μέση τιμή των δύο αμέσως προηγούμενων μετρήσεων, δηλαδή της Δευτέρας 1/3 και της Τρίτης 2/3 – σταθερή (αύξηση μικρότερη του 3%) σε σχέση με την μέση τιμή της προηγούμενης Τετάρτης 24/2 και Πέμπτης 25/2 «Οι μετρήσεις του Φεβρουαρίου και Μαρτίου 2021 είναι μεν αυξητικές αλλά δεν ακολουθούν την εκθετική συμπεριφορά του Οκτωβρίου 2020», δήλωσε ωστόσο στο ΑΠΕ-ΜΠΕ η Δρ. Μ. Πεταλά, επικεφαλής της ομάδας υποδοχής των λυμάτων στο ΑΠΘ και πιο συγκεκριμένα στο Εργαστήριο Τεχνικής και Σχεδιασμού Περιβάλλοντος του Tμήματος Πολιτικών Μηχανικών του ΑΠΘ.
');
}
},
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: '940da0b272'
},
success: function(response) {
if (response.success && response.data.html) {
container.html(response.data.html);
initializeCarousel($('#carousel_684e6d5fb5764'));
} 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();
}
});