// Función de debounce para optimizar el rendimiento
function debounce(func, wait) {
let timeout;
return function executedFunction(...args) {
const later = () => {
clearTimeout(timeout);
func(...args);
};
clearTimeout(timeout);
timeout = setTimeout(later, wait);
};
}
jQuery(document).ready(function($) {
// Initialize color pickers
$('.color-picker').wpColorPicker({
change: function(event, ui) {
updateStyles();
}
});
// Initialize html2canvas
var script = document.createElement('script');
script.src = 'https://cdnjs.cloudflare.com/ajax/libs/html2canvas/1.4.1/html2canvas.min.js';
document.head.appendChild(script);
script.onload = function() {
console.log('html2canvas loaded');
$('.download-jpg').prop('disabled', false);
};
// Optimized zoom handling
const handleZoom = debounce(function(target, value) {
const zoomValue = value/100;
const template = $(target).closest('.preview-box').find('.sunset-template');
template.css('transform', `scale(${zoomValue})`);
}, 16);
// Zoom control event listener
$('.zoom-range').on('input', function() {
const value = $(this).val();
$(this).siblings('.zoom-value').text(value + '%');
handleZoom(this, value);
});
// Toggle excerpt position field visibility
$('#cwpai_show_excerpt').on('change', function() {
$('#excerpt_position').toggle(this.checked);
updateStyles();
});
// Update styles function
function updateStyles() {
const lineColor = $('#cwpai_line_color').val();
const lineWidth = $('#cwpai_line_width').val() + 'px';
const marginTop = $('#cwpai_line_margin_top').val() + 'px';
const marginBottom = $('#cwpai_line_margin_bottom').val() + 'px';
const marginLeft = $('#cwpai_line_margin_left').val() + 'px';
const marginRight = $('#cwpai_line_margin_right').val() + 'px';
const categoryTop = $('#cwpai_category_position_top').val() + 'px';
const websiteTop = $('#cwpai_website_position_top').val() + 'px';
const titleTop = $('#cwpai_title_position_top').val() + 'px';
const excerptTop = $('#cwpai_excerpt_position_top').val() + 'px';
const categoryLeft = $('#cwpai_category_position_left').val() + 'px';
const websiteLeft = $('#cwpai_website_position_left').val() + 'px';
const titleLeft = $('#cwpai_title_position_left').val() + 'px';
const titleSize = $('#cwpai_title_font_size').val() + 'px';
const categorySize = $('#cwpai_category_font_size').val() + 'px';
const websiteSize = $('#cwpai_website_font_size').val() + 'px';
// Update visibility states
const showCategory = $('#cwpai_show_category').prop('checked');
const showWebsite = $('#cwpai_show_website').prop('checked');
const showTitle = $('#cwpai_show_title').prop('checked');
const showExcerpt = $('#cwpai_show_excerpt').prop('checked');
$('.vertical-line').css({
'background-color': lineColor,
'width': lineWidth,
'top': marginTop,
'height': `calc(100% - (${marginTop} + ${marginBottom}))`,
'left': marginLeft,
'margin-right': marginRight
});
$('.category-tag').css({
'display': showCategory ? 'block' : 'none',
'top': categoryTop,
'left': categoryLeft,
'font-size': categorySize
});
$('.website-link').css({
'display': showWebsite ? 'block' : 'none',
'top': websiteTop,
'left': websiteLeft,
'font-size': websiteSize
});
$('.title').css({
'display': showTitle ? 'block' : 'none',
'top': titleTop,
'left': titleLeft,
'font-size': titleSize
});
$('.excerpt-preview').css({
'display': showExcerpt ? 'block' : 'none',
'top': excerptTop,
'left': titleLeft
});
}
// Copy buttons functionality with improved feedback
$('.copy-excerpt, .copy-hashtags').on('click', function() {
const button = $(this);
const content = button.data('content');
const originalText = button.text();
// Create temporary textarea
const textarea = document.createElement('textarea');
textarea.value = content;
textarea.style.position = 'absolute';
textarea.style.left = '-9999px';
document.body.appendChild(textarea);
try {
// Select and copy text
textarea.select();
document.execCommand('copy');
// Visual feedback
button.text('¡Copiado!');
button.css('background-color', '#4CAF50');
// Reset button after delay
setTimeout(() => {
button.text(originalText);
button.css('background-color', '');
}, 2000);
} catch(err) {
console.error('Error al copiar:', err);
button.text('Error al copiar');
button.css('background-color', '#f44336');
setTimeout(() => {
button.text(originalText);
button.css('background-color', '');
}, 2000);
} finally {
document.body.removeChild(textarea);
}
});
// Canvas optimization function
function optimizeCanvas(canvas, format) {
const ctx = canvas.getContext('2d');
// Enable image smoothing
ctx.imageSmoothingEnabled = true;
ctx.imageSmoothingQuality = 'high';
// Set dimensions based on format
switch(format) {
case 'rectangular':
canvas.width = 1200;
canvas.height = 630;
break;
case 'vertical':
canvas.width = 500;
canvas.height = 890;
break;
case 'horizontal':
canvas.width = 864;
canvas.height = 864;
break;
}
return canvas;
}
// Image download functionality with improved error handling
$('.download-jpg').on('click', function() {
const button = $(this);
const format = button.data('format');
const template = button.closest('.preview-box').find('.sunset-template')[0];
// Disable button and show loading state
button.text('Generando...').prop('disabled', true);
const options = {
scale: 2, // Higher quality
useCORS: true,
allowTaint: true,
backgroundColor: '#000000',
logging: false, // Disable logging in production
onclone: function(clonedDoc) {
const clonedElement = clonedDoc.querySelector('.sunset-template');
if (clonedElement) {
// Reset zoom for export
clonedElement.style.transform = 'scale(1)';
// Set dimensions based on format
switch(format) {
case 'rectangular':
clonedElement.style.width = '1200px';
clonedElement.style.height = '630px';
break;
case 'vertical':
clonedElement.style.width = '500px';
clonedElement.style.height = '890px';
break;
case 'horizontal':
clonedElement.style.width = '864px';
clonedElement.style.height = '864px';
break;
}
}
}
};
// Wait for all images to load
Promise.all(Array.from(template.getElementsByTagName('img')).map(img => {
return new Promise((resolve, reject) => {
if (img.complete) {
resolve();
} else {
img.onload = resolve;
img.onerror = reject;
}
});
}))
.then(() => {
return html2canvas(template, options);
})
.then(canvas => {
// Optimize canvas
canvas = optimizeCanvas(canvas, format);
// Convert to blob
return new Promise((resolve, reject) => {
canvas.toBlob(resolve, 'image/jpeg', 0.95);
});
})
.then(blob => {
// Generate filename
const postTitle = template.dataset.title;
const timestamp = new Date().getTime();
const fileName = `${postTitle}-${format}-${timestamp}.jpg`;
// Save file
saveAs(blob, fileName);
// Reset button
button.text('Descargar ' + (
format === 'vertical' ? 'Vertical' :
format === 'horizontal' ? 'Horizontal' :
'Rectangular'
)).prop('disabled', false);
})
.catch(error => {
console.error('Error:', error);
button.text('Error - Intentar de nuevo').prop('disabled', false)
.css('background-color', '#f44336');
setTimeout(() => {
button.css('background-color', '');
button.text('Descargar ' + (
format === 'vertical' ? 'Vertical' :
format === 'horizontal' ? 'Horizontal' :
'Rectangular'
));
}, 3000);
});
});
// Line and position controls
$('#cwpai_line_width, #cwpai_line_margin_top, #cwpai_line_margin_bottom, #cwpai_line_margin_left, #cwpai_line_margin_right, #cwpai_category_position_top, #cwpai_website_position_top, #cwpai_title_position_top, #cwpai_excerpt_position_top, #cwpai_category_position_left, #cwpai_website_position_left, #cwpai_title_position_left, #cwpai_title_font_size, #cwpai_category_font_size, #cwpai_website_font_size')
.on('change input', debounce(updateStyles, 100));
// Visibility controls
$('#cwpai_show_category, #cwpai_show_website, #cwpai_show_title, #cwpai_show_excerpt')
.on('change', updateStyles);
// Global error handler
window.onerror = function(msg, url, lineNo, columnNo, error) {
console.error('Error: ', {
message: msg,
url: url,
lineNumber: lineNo,
columnNumber: columnNo,
error: error
});
return false;
};
// Initial styles update
updateStyles();
});
Warning: Cannot modify header information - headers already sent by (output started at /var/www/vhosts/diariocosta.com/httpdocs/wp-content/plugins/social-media-stories/social-media-stories.php:1) in /var/www/vhosts/diariocosta.com/httpdocs/wp-includes/rest-api/class-wp-rest-server.php on line 1893
Warning: Cannot modify header information - headers already sent by (output started at /var/www/vhosts/diariocosta.com/httpdocs/wp-content/plugins/social-media-stories/social-media-stories.php:1) in /var/www/vhosts/diariocosta.com/httpdocs/wp-includes/rest-api/class-wp-rest-server.php on line 1893
Warning: Cannot modify header information - headers already sent by (output started at /var/www/vhosts/diariocosta.com/httpdocs/wp-content/plugins/social-media-stories/social-media-stories.php:1) in /var/www/vhosts/diariocosta.com/httpdocs/wp-includes/rest-api/class-wp-rest-server.php on line 1893
Warning: Cannot modify header information - headers already sent by (output started at /var/www/vhosts/diariocosta.com/httpdocs/wp-content/plugins/social-media-stories/social-media-stories.php:1) in /var/www/vhosts/diariocosta.com/httpdocs/wp-includes/rest-api/class-wp-rest-server.php on line 1893
Warning: Cannot modify header information - headers already sent by (output started at /var/www/vhosts/diariocosta.com/httpdocs/wp-content/plugins/social-media-stories/social-media-stories.php:1) in /var/www/vhosts/diariocosta.com/httpdocs/wp-includes/rest-api/class-wp-rest-server.php on line 1893
Warning: Cannot modify header information - headers already sent by (output started at /var/www/vhosts/diariocosta.com/httpdocs/wp-content/plugins/social-media-stories/social-media-stories.php:1) in /var/www/vhosts/diariocosta.com/httpdocs/wp-includes/rest-api/class-wp-rest-server.php on line 1893
Warning: Cannot modify header information - headers already sent by (output started at /var/www/vhosts/diariocosta.com/httpdocs/wp-content/plugins/social-media-stories/social-media-stories.php:1) in /var/www/vhosts/diariocosta.com/httpdocs/wp-includes/rest-api/class-wp-rest-server.php on line 1893
Warning: Cannot modify header information - headers already sent by (output started at /var/www/vhosts/diariocosta.com/httpdocs/wp-content/plugins/social-media-stories/social-media-stories.php:1) in /var/www/vhosts/diariocosta.com/httpdocs/wp-includes/rest-api/class-wp-rest-server.php on line 1893
{"id":12577,"date":"2017-11-03T18:26:00","date_gmt":"2017-11-03T17:26:00","guid":{"rendered":"http:\/\/diariocosta.com\/?p=12577"},"modified":"2017-11-03T19:02:08","modified_gmt":"2017-11-03T18:02:08","slug":"aldeas-infantiles-sos-pone-en-marcha-la-vigesima-edicion-de-sus-programas-de-educacion-en-valores","status":"publish","type":"post","link":"https:\/\/diariocosta.com\/aldeas-infantiles-sos-pone-en-marcha-la-vigesima-edicion-de-sus-programas-de-educacion-en-valores\/","title":{"rendered":"Aldeas Infantiles SOS pone en marcha la vig\u00e9sima edici\u00f3n de sus programas de Educaci\u00f3n en Valores"},"content":{"rendered":"
Con el objetivo de prevenir la violencia y el acoso escolar, Aldeas Infantiles SOS pone en marcha la vig\u00e9sima edici\u00f3n de sus programas educativos \u201cAbraza tus valores\u201d, destinado a ni\u00f1os de Infantil y Primaria (de 4 a 12 a\u00f1os), y \u201cP\u00e1rate a pensar\u201d, dirigido a alumnos de Secundaria (de 12 a 16 a\u00f1os). En ellos participar\u00e1n 55.400 alumnos andaluces de 554 centros de ense\u00f1anza.<\/p>\n
La confianza ser\u00e1 el valor sobre el que versar\u00e1n los programas del presente curso, que buscan prevenir la violencia y el aislamiento infantil, y favorecer la autoestima de ni\u00f1os y adolescentes. \u201cNo es posible crecer sin confianza: en uno mismo, en los dem\u00e1s y en el mundo en el que vivimos. Confiar construye nuestro car\u00e1cter y nos hace sentir que formamos parte de algo mayor: nuestra familia, nuestra clase en el colegio y nuestra sociedad\u201d, explica el presidente de Aldeas Infantiles SOS, Pedro Puig.<\/p>\n
Con estos programas, esta organizaci\u00f3n de atenci\u00f3n directa a la infancia busca aportar a los ni\u00f1os recursos emocionales y relacionales para que descarten la violencia en sus acciones. Seg\u00fan un reciente informe de la Unesco, uno de cada cinco ni\u00f1os sufre acoso en la escuela cada a\u00f1o. \u201cPor eso, eliminar la violencia en todas sus formas es uno de los compromisos que Aldeas Infantiles SOS asume como organizaci\u00f3n; creemos firmemente que la violencia puede evitarse y prevenirse, y la confianza es un valor que puede ayudarnos a conseguirlo\u201d, afirma Pedro Puig.<\/p>\n
Estos programas educativos pueden descargarse gratuitamente en la p\u00e1gina web www.aldeasinfantiles.es\/educa. Los materiales constan de un manual para el profesor repleto de actividades y recursos did\u00e1cticos, e incluye informaci\u00f3n sobre c\u00f3mo participar en el pleno infantil \u201cDiputados por un D\u00eda\u201d, con el que Aldeas busca fomentar el derecho de participaci\u00f3n de los ni\u00f1os en la sociedad.<\/p>\n
Aldeas Infantiles SOS lleva veinte a\u00f1os acercando los valores al entorno escolar a trav\u00e9s de estos programas. Con ellos, se promueve la reflexi\u00f3n y el di\u00e1logo sobre los valores humanos esenciales entre los alumnos, los profesores y las familias, con el objetivo \u00faltimo de forjar mejores personas y ciudadanos m\u00e1s responsables.<\/p>\n
Prevenci\u00f3n frente al acoso escolar<\/p>\n
Pedro Puig, presidente de la organizaci\u00f3n, sostiene que uno de los puntos claves frente al acoso escolar es la prevenci\u00f3n: \u201cDesde nuestra experiencia en la protecci\u00f3n de ni\u00f1os en situaci\u00f3n de vulnerabilidad, hemos constatado que la soluci\u00f3n no pasa \u00fanicamente por actuar cuando se produce el fen\u00f3meno, sino que hay que trabajar en la prevenci\u00f3n apostando por una educaci\u00f3n en valores fundamentada en la defensa de los derechos de la infancia\u201d.<\/p>\n
Cuando un ni\u00f1o conf\u00eda en s\u00ed mismo, tiene la autoestima m\u00e1s alta y esto le convierte en un blanco m\u00e1s dif\u00edcil ante un caso de acoso. A su vez, cuando un ni\u00f1o o un adolescente conf\u00eda en su familia, en sus amigos y en la escuela, le ser\u00e1 m\u00e1s f\u00e1cil verbalizar este tipo de abusos. Por \u00faltimo, si el acosado conf\u00eda en la sociedad y percibe que el entorno le es favorable, podr\u00e1 denunciar el maltrato con m\u00e1s facilidad.<\/p>\n
\u201cPor eso, es indispensable promover la confianza hacia uno mismo y hacia la figura del adulto, del docente, como acompa\u00f1ante en este proceso de aprendizaje. No debemos olvidar que el acoso escolar se produce entre ni\u00f1os y adolescentes y, por tanto, alguien tiene que ense\u00f1arles que ninguna soluci\u00f3n debe pasar por la violencia\u201d, concluye Pedro Puig.<\/p>\n","protected":false},"excerpt":{"rendered":"
Con el objetivo de prevenir la violencia y el acoso escolar, Aldeas Infantiles SOS pone en marcha la vig\u00e9sima edici\u00f3n de sus programas educativos \u201cAbraza tus valores\u201d, destinado a ni\u00f1os de Infantil y Primaria (de 4 a 12 a\u00f1os), y \u201cP\u00e1rate a pensar\u201d, dirigido a alumnos de Secundaria (de 12 a 16 a\u00f1os). En ellos […]<\/p>\n","protected":false},"author":3,"featured_media":12576,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[47],"tags":[],"class_list":{"0":"post-12577","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-andalucia"},"_links":{"self":[{"href":"https:\/\/diariocosta.com\/wp-json\/wp\/v2\/posts\/12577","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/diariocosta.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/diariocosta.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/diariocosta.com\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/diariocosta.com\/wp-json\/wp\/v2\/comments?post=12577"}],"version-history":[{"count":0,"href":"https:\/\/diariocosta.com\/wp-json\/wp\/v2\/posts\/12577\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/diariocosta.com\/wp-json\/wp\/v2\/media\/12576"}],"wp:attachment":[{"href":"https:\/\/diariocosta.com\/wp-json\/wp\/v2\/media?parent=12577"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/diariocosta.com\/wp-json\/wp\/v2\/categories?post=12577"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/diariocosta.com\/wp-json\/wp\/v2\/tags?post=12577"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}