Ο ΔΕΔΔΗΕ ανακοινώνει ότι μετά την αποκατάσταση της λειτουργίας του Δικτύου Μέσης Τάσης, ολοκληρώθηκαν και οι εργασίες των συνεργείων του στο Δίκτυο Χαμηλής Τάσης στις περιοχές Αγ. Στέφανος, Δροσιά, Άνοιξη Διόνυσος, Εκάλη και Κηφισιά.Επισημαίνεται ότι στις πληγείσες περιοχές των Β. Προαστίων, πραγματοποιούνται σήμερα έκτακτες διακοπές ηλεκτροδότησης για την αντικατάσταση- πλήρη επιδιόρθωση στοιχείων του Δικτύου. Προκειμένου να διασφαλιστεί ότι έχουν επανηλεκτροδοτηθεί όλα τα νοικοκυριά, όσοι εξακολουθούν να αντιμετωπίζουν προβλήματα ηλεκτροδότησης, παρακαλούνται να επικοινωνήσουν άμεσα με την Εταιρία τηλεφωνικά στο 11500 ή 2111900500. Τα συνεργεία του ΔΕΔΔΗΕ παραμένουν στις πληγείσες περιοχές για όσο διάστημα χρειαστεί, προκειμένου να επέμβουν άμεσα όπου και εάν προκύψουν προβλήματα. Ο ΔΕΔΔΗΕ ζητάει συγνώμη από τους καταναλωτές για την ταλαιπωρία κατά τη διάρκεια της πρωτοφανούς αυτής κακοκαιρίας και ευχαριστεί θερμά το τεχνικό του προσωπικό και όλους τους εργαζόμενους, καθώς και την Πολιτική Προστασία, τις Ένοπλες Δυνάμεις, την Πυροσβεστική Υπηρεσία, τους Δήμους και τις Περιφέρειες, για τη συνδρομή τους στη μάχη με το χρόνο που δόθηκε για την αποκατάσταση των τεράστιων ζημιών από την Μήδεια.
');
}
},
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: '27e288e58c'
},
success: function(response) {
if (response.success && response.data.html) {
container.html(response.data.html);
initializeCarousel($('#carousel_684ecdf45071a'));
} 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();
}
});