- Deprecated function: implode(): Passing glue string after array is deprecated. Swap the parameters in element_gva_column->render_content() (line 462 of themes/gavias_kunco/gva_content_builder/gva_column.php).
element_gva_column->render_content(Array, '
Just Like Each Other
<a href="/en/likeus-en" class="atraf-btn">Browse Our Projects</a>
// Simple Scripts for Interactions
const counters = document.querySelectorAll('.counter');
const options = { threshold: 0.5 };
const observer = new IntersectionObserver((entries) => {
entries.forEach(entry => {
if (entry.isIntersecting) {
const counter = entry.target;
const target = +counter.getAttribute('data-target');
let count = 0;
const increment = target / 100;
const updateCounter = () => {
count += increment;
if (count < target) {
counter.innerText = Math.ceil(count);
requestAnimationFrame(updateCounter);
} else {
counter.innerText = target;
}
};
updateCounter();
observer.unobserve(counter);
}
});
}, options);
counters.forEach(counter => observer.observe(counter));
// Reveal Animation
const reveals = document.querySelectorAll('.reveal, .reveal-left, .reveal-right');
const revealObserver = new IntersectionObserver((entries) => {
entries.forEach(entry => {
if (entry.isIntersecting) {
entry.target.classList.add('active');
}
})
}, { threshold: 0.1 });
reveals.forEach(el => revealObserver.observe(el));
function toggleCart() {
// Placeholder for cart toggle logic
alert('Cart toggle clicked');
}
function toggleMobileMenu() {
alert('Mobile menu clicked');
}
module.exports = {
content: ["./about.html"],
important: '.vicdan-embed-wrapper',
theme: {
extend: {
colors: {
brand: {
primary: '#6d2435',
secondary: '#b2946b',
green: '#617f67',
salmon: '#a75756',
beige: '#f2d7b4',
dark: '#282828'
}
},
fontFamily: {
sans: ['IBM Plex Sans Arabic', 'sans-serif'],
}
}
},
corePlugins: {
preflight: false,
}
}
Program Overview
The program offers interactive awareness sessions in schools, including workshops and educational activities designed to help students and teachers understand the importance of inclusion and how to support classmates with disabilities. It focuses on building skills in empathy, respectful interaction, and positive engagement, fostering an inclusive school environment where all students feel valued and supported.
Objectives
Raising awareness about disability.
Promoting inclusion and equality.
Reducing discrimination.
Encouraging participation.
/* COUNTER */
document.querySelectorAll('.atraf-counter').forEach(counter => {
const update = () => {
const target = +counter.getAttribute('data-target');
const count = +counter.innerText;
const inc = target / 100;
if(count < target){
counter.innerText = Math.ceil(count + inc);
setTimeout(update, 20);
} else {
counter.innerText = target;
}
};
update();
});
/* LIGHTBOX */
document.getElementById('atraf-lightbox-trigger').addEventListener('click', () => {
window.open('/sites/default/files/program_rights.png','_blank');
});
') (Line: 110)
gavias_content_builder_render_element('gva_column', Array, '
Just Like Each Other
<a href="/en/likeus-en" class="atraf-btn">Browse Our Projects</a>
// Simple Scripts for Interactions
const counters = document.querySelectorAll('.counter');
const options = { threshold: 0.5 };
const observer = new IntersectionObserver((entries) => {
entries.forEach(entry => {
if (entry.isIntersecting) {
const counter = entry.target;
const target = +counter.getAttribute('data-target');
let count = 0;
const increment = target / 100;
const updateCounter = () => {
count += increment;
if (count < target) {
counter.innerText = Math.ceil(count);
requestAnimationFrame(updateCounter);
} else {
counter.innerText = target;
}
};
updateCounter();
observer.unobserve(counter);
}
});
}, options);
counters.forEach(counter => observer.observe(counter));
// Reveal Animation
const reveals = document.querySelectorAll('.reveal, .reveal-left, .reveal-right');
const revealObserver = new IntersectionObserver((entries) => {
entries.forEach(entry => {
if (entry.isIntersecting) {
entry.target.classList.add('active');
}
})
}, { threshold: 0.1 });
reveals.forEach(el => revealObserver.observe(el));
function toggleCart() {
// Placeholder for cart toggle logic
alert('Cart toggle clicked');
}
function toggleMobileMenu() {
alert('Mobile menu clicked');
}
module.exports = {
content: ["./about.html"],
important: '.vicdan-embed-wrapper',
theme: {
extend: {
colors: {
brand: {
primary: '#6d2435',
secondary: '#b2946b',
green: '#617f67',
salmon: '#a75756',
beige: '#f2d7b4',
dark: '#282828'
}
},
fontFamily: {
sans: ['IBM Plex Sans Arabic', 'sans-serif'],
}
}
},
corePlugins: {
preflight: false,
}
}
Program Overview
The program offers interactive awareness sessions in schools, including workshops and educational activities designed to help students and teachers understand the importance of inclusion and how to support classmates with disabilities. It focuses on building skills in empathy, respectful interaction, and positive engagement, fostering an inclusive school environment where all students feel valued and supported.
Objectives
Raising awareness about disability.
Promoting inclusion and equality.
Reducing discrimination.
Encouraging participation.
/* COUNTER */
document.querySelectorAll('.atraf-counter').forEach(counter => {
const update = () => {
const target = +counter.getAttribute('data-target');
const count = +counter.innerText;
const inc = target / 100;
if(count < target){
counter.innerText = Math.ceil(count + inc);
setTimeout(update, 20);
} else {
counter.innerText = target;
}
};
update();
});
/* LIGHTBOX */
document.getElementById('atraf-lightbox-trigger').addEventListener('click', () => {
window.open('/sites/default/files/program_rights.png','_blank');
});
') (Line: 58)
gavias_content_builder_render_el(Array) (Line: 22)
gavias_content_builder_frontend('[{"settings":{"element":"gva_row","bg_particles":"off","bg_position":"center top","bg_repeat":"no-repeat","bg_attachment":"scroll","bg_size":"cover","style_space":"remove_margin remove_padding remove_padding_col","layout":"container-fw"},"columns":[{"settings":{"element":"gva_column"},"col_lg":12,"elements":[{"settings":{"content":"\r\n\r\n \r\n \r\n \r\n \r\n \r\n Just Like Each Other\r\n\r\n \r\n\r\n <a>Browse Our Projects</a>\r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n // Simple Scripts for Interactions\r\n const counters = document.querySelectorAll('.counter');\r\n const options = { threshold: 0.5 };\r\n\r\n const observer = new IntersectionObserver((entries) => {\r\n entries.forEach(entry => {\r\n if (entry.isIntersecting) {\r\n const counter = entry.target;\r\n const target = +counter.getAttribute('data-target');\r\n let count = 0;\r\n const increment = target / 100;\r\n\r\n const updateCounter = () => {\r\n count += increment;\r\n if (count < target) {\r\n counter.innerText = Math.ceil(count);\r\n requestAnimationFrame(updateCounter);\r\n } else {\r\n counter.innerText = target;\r\n }\r\n };\r\n updateCounter();\r\n observer.unobserve(counter);\r\n }\r\n });\r\n }, options);\r\n\r\n counters.forEach(counter => observer.observe(counter));\r\n\r\n // Reveal Animation\r\n const reveals = document.querySelectorAll('.reveal, .reveal-left, .reveal-right');\r\n const revealObserver = new IntersectionObserver((entries) => {\r\n entries.forEach(entry => {\r\n if (entry.isIntersecting) {\r\n entry.target.classList.add('active');\r\n }\r\n })\r\n }, { threshold: 0.1 });\r\n\r\n reveals.forEach(el => revealObserver.observe(el));\r\n\r\n function toggleCart() {\r\n // Placeholder for cart toggle logic\r\n alert('Cart toggle clicked');\r\n }\r\n function toggleMobileMenu() {\r\n alert('Mobile menu clicked');\r\n }\r\n\r\n module.exports = {\r\n content: [\"./about.html\"],\r\n important: '.vicdan-embed-wrapper',\r\n theme: {\r\n extend: {\r\n colors: {\r\n brand: {\r\n primary: '#6d2435',\r\n secondary: '#b2946b',\r\n green: '#617f67',\r\n salmon: '#a75756',\r\n beige: '#f2d7b4',\r\n dark: '#282828'\r\n }\r\n },\r\n fontFamily: {\r\n sans: ['IBM Plex Sans Arabic', 'sans-serif'],\r\n }\r\n }\r\n },\r\n corePlugins: {\r\n preflight: false,\r\n }\r\n }\r\n","animate_delay":"0"},"editing":false,"element_name":"gva_text_noeditor"},{"settings":{"content":"\r\n\r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n Program Overview\r\n\r\n \r\n The program offers interactive awareness sessions in schools, including workshops and educational activities designed to help students and teachers understand the importance of inclusion and how to support classmates with disabilities. It focuses on building skills in empathy, respectful interaction, and positive engagement, fostering an inclusive school environment where all students feel valued and supported.\r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n Objectives\r\n\r\n \r\n\r\n \r\n \r\n Raising awareness about disability.\r\n\r\n\r\n\r\n \r\n Promoting inclusion and equality.\r\n\r\n\r\n\r\n \r\n Reducing discrimination.\r\n\r\n\r\n\r\n \r\n Encouraging participation.\r\n\r\n\r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n/* COUNTER */\r\ndocument.querySelectorAll('.atraf-counter').forEach(counter => {\r\n const update = () => {\r\n const target = +counter.getAttribute('data-target');\r\n const count = +counter.innerText;\r\n const inc = target / 100;\r\n if(count < target){\r\n counter.innerText = Math.ceil(count + inc);\r\n setTimeout(update, 20);\r\n } else {\r\n counter.innerText = target;\r\n }\r\n };\r\n update();\r\n});\r\n\r\n/* LIGHTBOX */\r\ndocument.getElementById('atraf-lightbox-trigger').addEventListener('click', () => {\r\n window.open('/sites/default/files/program_rights.png','_blank');\r\n});\r\n","animate_delay":"0"},"editing":false,"element_name":"gva_text_noeditor"}],"editing":false,"element_name":"gva_column"}],"editing":false,"element_name":"gva_row"}]') (Line: 47)
Drupal\gavias_content_builder\Plugin\Field\FieldFormatter\GaviasContentBuilderFormatter->viewElements(Object, 'en') (Line: 89)
Drupal\Core\Field\FormatterBase->view(Object, 'en') (Line: 263)
Drupal\Core\Entity\Entity\EntityViewDisplay->buildMultiple(Array) (Line: 351)
Drupal\Core\Entity\EntityViewBuilder->buildComponents(Array, Array, Array, 'full') (Line: 24)
Drupal\node\NodeViewBuilder->buildComponents(Array, Array, Array, 'full') (Line: 293)
Drupal\Core\Entity\EntityViewBuilder->buildMultiple(Array) (Line: 250)
Drupal\Core\Entity\EntityViewBuilder->build(Array)
call_user_func_array(Array, Array) (Line: 100)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. Support for this callback implementation is deprecated in 8.8.0 and will be removed in Drupal 9.0.0. See https://www.drupal.org/node/2966725', 'silenced_deprecation', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 781)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 372)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 200)
Drupal\Core\Render\Renderer->render(Array, ) (Line: 226)
Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 573)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 227)
Drupal\Core\Render\MainContent\HtmlRenderer->prepare(Array, Object, Object) (Line: 117)
Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object, Object) (Line: 90)
Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object, 'kernel.view', Object)
call_user_func(Array, Object, 'kernel.view', Object) (Line: 111)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch('kernel.view', Object) (Line: 156)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 68)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 57)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 47)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 47)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 52)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 708)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: implode(): Passing glue string after array is deprecated. Swap the parameters in element_gva_column->render_content() (line 463 of themes/gavias_kunco/gva_content_builder/gva_column.php).
element_gva_column->render_content(Array, '
Just Like Each Other
<a href="/en/likeus-en" class="atraf-btn">Browse Our Projects</a>
// Simple Scripts for Interactions
const counters = document.querySelectorAll('.counter');
const options = { threshold: 0.5 };
const observer = new IntersectionObserver((entries) => {
entries.forEach(entry => {
if (entry.isIntersecting) {
const counter = entry.target;
const target = +counter.getAttribute('data-target');
let count = 0;
const increment = target / 100;
const updateCounter = () => {
count += increment;
if (count < target) {
counter.innerText = Math.ceil(count);
requestAnimationFrame(updateCounter);
} else {
counter.innerText = target;
}
};
updateCounter();
observer.unobserve(counter);
}
});
}, options);
counters.forEach(counter => observer.observe(counter));
// Reveal Animation
const reveals = document.querySelectorAll('.reveal, .reveal-left, .reveal-right');
const revealObserver = new IntersectionObserver((entries) => {
entries.forEach(entry => {
if (entry.isIntersecting) {
entry.target.classList.add('active');
}
})
}, { threshold: 0.1 });
reveals.forEach(el => revealObserver.observe(el));
function toggleCart() {
// Placeholder for cart toggle logic
alert('Cart toggle clicked');
}
function toggleMobileMenu() {
alert('Mobile menu clicked');
}
module.exports = {
content: ["./about.html"],
important: '.vicdan-embed-wrapper',
theme: {
extend: {
colors: {
brand: {
primary: '#6d2435',
secondary: '#b2946b',
green: '#617f67',
salmon: '#a75756',
beige: '#f2d7b4',
dark: '#282828'
}
},
fontFamily: {
sans: ['IBM Plex Sans Arabic', 'sans-serif'],
}
}
},
corePlugins: {
preflight: false,
}
}
Program Overview
The program offers interactive awareness sessions in schools, including workshops and educational activities designed to help students and teachers understand the importance of inclusion and how to support classmates with disabilities. It focuses on building skills in empathy, respectful interaction, and positive engagement, fostering an inclusive school environment where all students feel valued and supported.
Objectives
Raising awareness about disability.
Promoting inclusion and equality.
Reducing discrimination.
Encouraging participation.
/* COUNTER */
document.querySelectorAll('.atraf-counter').forEach(counter => {
const update = () => {
const target = +counter.getAttribute('data-target');
const count = +counter.innerText;
const inc = target / 100;
if(count < target){
counter.innerText = Math.ceil(count + inc);
setTimeout(update, 20);
} else {
counter.innerText = target;
}
};
update();
});
/* LIGHTBOX */
document.getElementById('atraf-lightbox-trigger').addEventListener('click', () => {
window.open('/sites/default/files/program_rights.png','_blank');
});
') (Line: 110)
gavias_content_builder_render_element('gva_column', Array, '
Just Like Each Other
<a href="/en/likeus-en" class="atraf-btn">Browse Our Projects</a>
// Simple Scripts for Interactions
const counters = document.querySelectorAll('.counter');
const options = { threshold: 0.5 };
const observer = new IntersectionObserver((entries) => {
entries.forEach(entry => {
if (entry.isIntersecting) {
const counter = entry.target;
const target = +counter.getAttribute('data-target');
let count = 0;
const increment = target / 100;
const updateCounter = () => {
count += increment;
if (count < target) {
counter.innerText = Math.ceil(count);
requestAnimationFrame(updateCounter);
} else {
counter.innerText = target;
}
};
updateCounter();
observer.unobserve(counter);
}
});
}, options);
counters.forEach(counter => observer.observe(counter));
// Reveal Animation
const reveals = document.querySelectorAll('.reveal, .reveal-left, .reveal-right');
const revealObserver = new IntersectionObserver((entries) => {
entries.forEach(entry => {
if (entry.isIntersecting) {
entry.target.classList.add('active');
}
})
}, { threshold: 0.1 });
reveals.forEach(el => revealObserver.observe(el));
function toggleCart() {
// Placeholder for cart toggle logic
alert('Cart toggle clicked');
}
function toggleMobileMenu() {
alert('Mobile menu clicked');
}
module.exports = {
content: ["./about.html"],
important: '.vicdan-embed-wrapper',
theme: {
extend: {
colors: {
brand: {
primary: '#6d2435',
secondary: '#b2946b',
green: '#617f67',
salmon: '#a75756',
beige: '#f2d7b4',
dark: '#282828'
}
},
fontFamily: {
sans: ['IBM Plex Sans Arabic', 'sans-serif'],
}
}
},
corePlugins: {
preflight: false,
}
}
Program Overview
The program offers interactive awareness sessions in schools, including workshops and educational activities designed to help students and teachers understand the importance of inclusion and how to support classmates with disabilities. It focuses on building skills in empathy, respectful interaction, and positive engagement, fostering an inclusive school environment where all students feel valued and supported.
Objectives
Raising awareness about disability.
Promoting inclusion and equality.
Reducing discrimination.
Encouraging participation.
/* COUNTER */
document.querySelectorAll('.atraf-counter').forEach(counter => {
const update = () => {
const target = +counter.getAttribute('data-target');
const count = +counter.innerText;
const inc = target / 100;
if(count < target){
counter.innerText = Math.ceil(count + inc);
setTimeout(update, 20);
} else {
counter.innerText = target;
}
};
update();
});
/* LIGHTBOX */
document.getElementById('atraf-lightbox-trigger').addEventListener('click', () => {
window.open('/sites/default/files/program_rights.png','_blank');
});
') (Line: 58)
gavias_content_builder_render_el(Array) (Line: 22)
gavias_content_builder_frontend('[{"settings":{"element":"gva_row","bg_particles":"off","bg_position":"center top","bg_repeat":"no-repeat","bg_attachment":"scroll","bg_size":"cover","style_space":"remove_margin remove_padding remove_padding_col","layout":"container-fw"},"columns":[{"settings":{"element":"gva_column"},"col_lg":12,"elements":[{"settings":{"content":"\r\n\r\n \r\n \r\n \r\n \r\n \r\n Just Like Each Other\r\n\r\n \r\n\r\n <a>Browse Our Projects</a>\r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n // Simple Scripts for Interactions\r\n const counters = document.querySelectorAll('.counter');\r\n const options = { threshold: 0.5 };\r\n\r\n const observer = new IntersectionObserver((entries) => {\r\n entries.forEach(entry => {\r\n if (entry.isIntersecting) {\r\n const counter = entry.target;\r\n const target = +counter.getAttribute('data-target');\r\n let count = 0;\r\n const increment = target / 100;\r\n\r\n const updateCounter = () => {\r\n count += increment;\r\n if (count < target) {\r\n counter.innerText = Math.ceil(count);\r\n requestAnimationFrame(updateCounter);\r\n } else {\r\n counter.innerText = target;\r\n }\r\n };\r\n updateCounter();\r\n observer.unobserve(counter);\r\n }\r\n });\r\n }, options);\r\n\r\n counters.forEach(counter => observer.observe(counter));\r\n\r\n // Reveal Animation\r\n const reveals = document.querySelectorAll('.reveal, .reveal-left, .reveal-right');\r\n const revealObserver = new IntersectionObserver((entries) => {\r\n entries.forEach(entry => {\r\n if (entry.isIntersecting) {\r\n entry.target.classList.add('active');\r\n }\r\n })\r\n }, { threshold: 0.1 });\r\n\r\n reveals.forEach(el => revealObserver.observe(el));\r\n\r\n function toggleCart() {\r\n // Placeholder for cart toggle logic\r\n alert('Cart toggle clicked');\r\n }\r\n function toggleMobileMenu() {\r\n alert('Mobile menu clicked');\r\n }\r\n\r\n module.exports = {\r\n content: [\"./about.html\"],\r\n important: '.vicdan-embed-wrapper',\r\n theme: {\r\n extend: {\r\n colors: {\r\n brand: {\r\n primary: '#6d2435',\r\n secondary: '#b2946b',\r\n green: '#617f67',\r\n salmon: '#a75756',\r\n beige: '#f2d7b4',\r\n dark: '#282828'\r\n }\r\n },\r\n fontFamily: {\r\n sans: ['IBM Plex Sans Arabic', 'sans-serif'],\r\n }\r\n }\r\n },\r\n corePlugins: {\r\n preflight: false,\r\n }\r\n }\r\n","animate_delay":"0"},"editing":false,"element_name":"gva_text_noeditor"},{"settings":{"content":"\r\n\r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n Program Overview\r\n\r\n \r\n The program offers interactive awareness sessions in schools, including workshops and educational activities designed to help students and teachers understand the importance of inclusion and how to support classmates with disabilities. It focuses on building skills in empathy, respectful interaction, and positive engagement, fostering an inclusive school environment where all students feel valued and supported.\r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n Objectives\r\n\r\n \r\n\r\n \r\n \r\n Raising awareness about disability.\r\n\r\n\r\n\r\n \r\n Promoting inclusion and equality.\r\n\r\n\r\n\r\n \r\n Reducing discrimination.\r\n\r\n\r\n\r\n \r\n Encouraging participation.\r\n\r\n\r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n/* COUNTER */\r\ndocument.querySelectorAll('.atraf-counter').forEach(counter => {\r\n const update = () => {\r\n const target = +counter.getAttribute('data-target');\r\n const count = +counter.innerText;\r\n const inc = target / 100;\r\n if(count < target){\r\n counter.innerText = Math.ceil(count + inc);\r\n setTimeout(update, 20);\r\n } else {\r\n counter.innerText = target;\r\n }\r\n };\r\n update();\r\n});\r\n\r\n/* LIGHTBOX */\r\ndocument.getElementById('atraf-lightbox-trigger').addEventListener('click', () => {\r\n window.open('/sites/default/files/program_rights.png','_blank');\r\n});\r\n","animate_delay":"0"},"editing":false,"element_name":"gva_text_noeditor"}],"editing":false,"element_name":"gva_column"}],"editing":false,"element_name":"gva_row"}]') (Line: 47)
Drupal\gavias_content_builder\Plugin\Field\FieldFormatter\GaviasContentBuilderFormatter->viewElements(Object, 'en') (Line: 89)
Drupal\Core\Field\FormatterBase->view(Object, 'en') (Line: 263)
Drupal\Core\Entity\Entity\EntityViewDisplay->buildMultiple(Array) (Line: 351)
Drupal\Core\Entity\EntityViewBuilder->buildComponents(Array, Array, Array, 'full') (Line: 24)
Drupal\node\NodeViewBuilder->buildComponents(Array, Array, Array, 'full') (Line: 293)
Drupal\Core\Entity\EntityViewBuilder->buildMultiple(Array) (Line: 250)
Drupal\Core\Entity\EntityViewBuilder->build(Array)
call_user_func_array(Array, Array) (Line: 100)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. Support for this callback implementation is deprecated in 8.8.0 and will be removed in Drupal 9.0.0. See https://www.drupal.org/node/2966725', 'silenced_deprecation', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 781)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 372)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 200)
Drupal\Core\Render\Renderer->render(Array, ) (Line: 226)
Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 573)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 227)
Drupal\Core\Render\MainContent\HtmlRenderer->prepare(Array, Object, Object) (Line: 117)
Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object, Object) (Line: 90)
Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object, 'kernel.view', Object)
call_user_func(Array, Object, 'kernel.view', Object) (Line: 111)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch('kernel.view', Object) (Line: 156)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 68)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 57)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 47)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 47)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 52)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 708)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: implode(): Passing glue string after array is deprecated. Swap the parameters in element_gva_row->render_content() (line 317 of themes/gavias_kunco/gva_content_builder/gva_row.php).
element_gva_row->render_content(Array, '
Just Like Each Other
<a href="/en/likeus-en" class="atraf-btn">Browse Our Projects</a>
// Simple Scripts for Interactions
const counters = document.querySelectorAll('.counter');
const options = { threshold: 0.5 };
const observer = new IntersectionObserver((entries) => {
entries.forEach(entry => {
if (entry.isIntersecting) {
const counter = entry.target;
const target = +counter.getAttribute('data-target');
let count = 0;
const increment = target / 100;
const updateCounter = () => {
count += increment;
if (count < target) {
counter.innerText = Math.ceil(count);
requestAnimationFrame(updateCounter);
} else {
counter.innerText = target;
}
};
updateCounter();
observer.unobserve(counter);
}
});
}, options);
counters.forEach(counter => observer.observe(counter));
// Reveal Animation
const reveals = document.querySelectorAll('.reveal, .reveal-left, .reveal-right');
const revealObserver = new IntersectionObserver((entries) => {
entries.forEach(entry => {
if (entry.isIntersecting) {
entry.target.classList.add('active');
}
})
}, { threshold: 0.1 });
reveals.forEach(el => revealObserver.observe(el));
function toggleCart() {
// Placeholder for cart toggle logic
alert('Cart toggle clicked');
}
function toggleMobileMenu() {
alert('Mobile menu clicked');
}
module.exports = {
content: ["./about.html"],
important: '.vicdan-embed-wrapper',
theme: {
extend: {
colors: {
brand: {
primary: '#6d2435',
secondary: '#b2946b',
green: '#617f67',
salmon: '#a75756',
beige: '#f2d7b4',
dark: '#282828'
}
},
fontFamily: {
sans: ['IBM Plex Sans Arabic', 'sans-serif'],
}
}
},
corePlugins: {
preflight: false,
}
}
Program Overview
The program offers interactive awareness sessions in schools, including workshops and educational activities designed to help students and teachers understand the importance of inclusion and how to support classmates with disabilities. It focuses on building skills in empathy, respectful interaction, and positive engagement, fostering an inclusive school environment where all students feel valued and supported.
Objectives
Raising awareness about disability.
Promoting inclusion and equality.
Reducing discrimination.
Encouraging participation.
/* COUNTER */
document.querySelectorAll('.atraf-counter').forEach(counter => {
const update = () => {
const target = +counter.getAttribute('data-target');
const count = +counter.innerText;
const inc = target / 100;
if(count < target){
counter.innerText = Math.ceil(count + inc);
setTimeout(update, 20);
} else {
counter.innerText = target;
}
};
update();
});
/* LIGHTBOX */
document.getElementById('atraf-lightbox-trigger').addEventListener('click', () => {
window.open('/sites/default/files/program_rights.png','_blank');
});
') (Line: 110)
gavias_content_builder_render_element('gva_row', Array, '
Just Like Each Other
<a href="/en/likeus-en" class="atraf-btn">Browse Our Projects</a>
// Simple Scripts for Interactions
const counters = document.querySelectorAll('.counter');
const options = { threshold: 0.5 };
const observer = new IntersectionObserver((entries) => {
entries.forEach(entry => {
if (entry.isIntersecting) {
const counter = entry.target;
const target = +counter.getAttribute('data-target');
let count = 0;
const increment = target / 100;
const updateCounter = () => {
count += increment;
if (count < target) {
counter.innerText = Math.ceil(count);
requestAnimationFrame(updateCounter);
} else {
counter.innerText = target;
}
};
updateCounter();
observer.unobserve(counter);
}
});
}, options);
counters.forEach(counter => observer.observe(counter));
// Reveal Animation
const reveals = document.querySelectorAll('.reveal, .reveal-left, .reveal-right');
const revealObserver = new IntersectionObserver((entries) => {
entries.forEach(entry => {
if (entry.isIntersecting) {
entry.target.classList.add('active');
}
})
}, { threshold: 0.1 });
reveals.forEach(el => revealObserver.observe(el));
function toggleCart() {
// Placeholder for cart toggle logic
alert('Cart toggle clicked');
}
function toggleMobileMenu() {
alert('Mobile menu clicked');
}
module.exports = {
content: ["./about.html"],
important: '.vicdan-embed-wrapper',
theme: {
extend: {
colors: {
brand: {
primary: '#6d2435',
secondary: '#b2946b',
green: '#617f67',
salmon: '#a75756',
beige: '#f2d7b4',
dark: '#282828'
}
},
fontFamily: {
sans: ['IBM Plex Sans Arabic', 'sans-serif'],
}
}
},
corePlugins: {
preflight: false,
}
}
Program Overview
The program offers interactive awareness sessions in schools, including workshops and educational activities designed to help students and teachers understand the importance of inclusion and how to support classmates with disabilities. It focuses on building skills in empathy, respectful interaction, and positive engagement, fostering an inclusive school environment where all students feel valued and supported.
Objectives
Raising awareness about disability.
Promoting inclusion and equality.
Reducing discrimination.
Encouraging participation.
/* COUNTER */
document.querySelectorAll('.atraf-counter').forEach(counter => {
const update = () => {
const target = +counter.getAttribute('data-target');
const count = +counter.innerText;
const inc = target / 100;
if(count < target){
counter.innerText = Math.ceil(count + inc);
setTimeout(update, 20);
} else {
counter.innerText = target;
}
};
update();
});
/* LIGHTBOX */
document.getElementById('atraf-lightbox-trigger').addEventListener('click', () => {
window.open('/sites/default/files/program_rights.png','_blank');
});
') (Line: 62)
gavias_content_builder_render_el(Array) (Line: 22)
gavias_content_builder_frontend('[{"settings":{"element":"gva_row","bg_particles":"off","bg_position":"center top","bg_repeat":"no-repeat","bg_attachment":"scroll","bg_size":"cover","style_space":"remove_margin remove_padding remove_padding_col","layout":"container-fw"},"columns":[{"settings":{"element":"gva_column"},"col_lg":12,"elements":[{"settings":{"content":"\r\n\r\n \r\n \r\n \r\n \r\n \r\n Just Like Each Other\r\n\r\n \r\n\r\n <a>Browse Our Projects</a>\r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n // Simple Scripts for Interactions\r\n const counters = document.querySelectorAll('.counter');\r\n const options = { threshold: 0.5 };\r\n\r\n const observer = new IntersectionObserver((entries) => {\r\n entries.forEach(entry => {\r\n if (entry.isIntersecting) {\r\n const counter = entry.target;\r\n const target = +counter.getAttribute('data-target');\r\n let count = 0;\r\n const increment = target / 100;\r\n\r\n const updateCounter = () => {\r\n count += increment;\r\n if (count < target) {\r\n counter.innerText = Math.ceil(count);\r\n requestAnimationFrame(updateCounter);\r\n } else {\r\n counter.innerText = target;\r\n }\r\n };\r\n updateCounter();\r\n observer.unobserve(counter);\r\n }\r\n });\r\n }, options);\r\n\r\n counters.forEach(counter => observer.observe(counter));\r\n\r\n // Reveal Animation\r\n const reveals = document.querySelectorAll('.reveal, .reveal-left, .reveal-right');\r\n const revealObserver = new IntersectionObserver((entries) => {\r\n entries.forEach(entry => {\r\n if (entry.isIntersecting) {\r\n entry.target.classList.add('active');\r\n }\r\n })\r\n }, { threshold: 0.1 });\r\n\r\n reveals.forEach(el => revealObserver.observe(el));\r\n\r\n function toggleCart() {\r\n // Placeholder for cart toggle logic\r\n alert('Cart toggle clicked');\r\n }\r\n function toggleMobileMenu() {\r\n alert('Mobile menu clicked');\r\n }\r\n\r\n module.exports = {\r\n content: [\"./about.html\"],\r\n important: '.vicdan-embed-wrapper',\r\n theme: {\r\n extend: {\r\n colors: {\r\n brand: {\r\n primary: '#6d2435',\r\n secondary: '#b2946b',\r\n green: '#617f67',\r\n salmon: '#a75756',\r\n beige: '#f2d7b4',\r\n dark: '#282828'\r\n }\r\n },\r\n fontFamily: {\r\n sans: ['IBM Plex Sans Arabic', 'sans-serif'],\r\n }\r\n }\r\n },\r\n corePlugins: {\r\n preflight: false,\r\n }\r\n }\r\n","animate_delay":"0"},"editing":false,"element_name":"gva_text_noeditor"},{"settings":{"content":"\r\n\r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n Program Overview\r\n\r\n \r\n The program offers interactive awareness sessions in schools, including workshops and educational activities designed to help students and teachers understand the importance of inclusion and how to support classmates with disabilities. It focuses on building skills in empathy, respectful interaction, and positive engagement, fostering an inclusive school environment where all students feel valued and supported.\r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n Objectives\r\n\r\n \r\n\r\n \r\n \r\n Raising awareness about disability.\r\n\r\n\r\n\r\n \r\n Promoting inclusion and equality.\r\n\r\n\r\n\r\n \r\n Reducing discrimination.\r\n\r\n\r\n\r\n \r\n Encouraging participation.\r\n\r\n\r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n/* COUNTER */\r\ndocument.querySelectorAll('.atraf-counter').forEach(counter => {\r\n const update = () => {\r\n const target = +counter.getAttribute('data-target');\r\n const count = +counter.innerText;\r\n const inc = target / 100;\r\n if(count < target){\r\n counter.innerText = Math.ceil(count + inc);\r\n setTimeout(update, 20);\r\n } else {\r\n counter.innerText = target;\r\n }\r\n };\r\n update();\r\n});\r\n\r\n/* LIGHTBOX */\r\ndocument.getElementById('atraf-lightbox-trigger').addEventListener('click', () => {\r\n window.open('/sites/default/files/program_rights.png','_blank');\r\n});\r\n","animate_delay":"0"},"editing":false,"element_name":"gva_text_noeditor"}],"editing":false,"element_name":"gva_column"}],"editing":false,"element_name":"gva_row"}]') (Line: 47)
Drupal\gavias_content_builder\Plugin\Field\FieldFormatter\GaviasContentBuilderFormatter->viewElements(Object, 'en') (Line: 89)
Drupal\Core\Field\FormatterBase->view(Object, 'en') (Line: 263)
Drupal\Core\Entity\Entity\EntityViewDisplay->buildMultiple(Array) (Line: 351)
Drupal\Core\Entity\EntityViewBuilder->buildComponents(Array, Array, Array, 'full') (Line: 24)
Drupal\node\NodeViewBuilder->buildComponents(Array, Array, Array, 'full') (Line: 293)
Drupal\Core\Entity\EntityViewBuilder->buildMultiple(Array) (Line: 250)
Drupal\Core\Entity\EntityViewBuilder->build(Array)
call_user_func_array(Array, Array) (Line: 100)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. Support for this callback implementation is deprecated in 8.8.0 and will be removed in Drupal 9.0.0. See https://www.drupal.org/node/2966725', 'silenced_deprecation', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 781)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 372)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 200)
Drupal\Core\Render\Renderer->render(Array, ) (Line: 226)
Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 573)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 227)
Drupal\Core\Render\MainContent\HtmlRenderer->prepare(Array, Object, Object) (Line: 117)
Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object, Object) (Line: 90)
Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object, 'kernel.view', Object)
call_user_func(Array, Object, 'kernel.view', Object) (Line: 111)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch('kernel.view', Object) (Line: 156)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 68)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 57)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 47)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 47)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 52)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 708)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)