Widget:UPMakingADifference: Difference between revisions
Appearance
No edit summary |
No edit summary |
||
| Line 1: | Line 1: | ||
```html | |||
<includeonly> | <includeonly> | ||
| Line 42: | Line 42: | ||
/* | /* | ||
* | * Find this widget instance | ||
*/ | */ | ||
var widgets = | var widgets = document.querySelectorAll('.update-news'); | ||
var widget = widgets[widgets.length - 1]; | |||
var widget = | |||
if (!widget) { | if (!widget) { | ||
return; | return; | ||
} | } | ||
/* | /* | ||
* | * Find elements inside this widget | ||
*/ | */ | ||
var loading = | var loading = widget.querySelector('.update-online-loading'); | ||
var content = widget.querySelector('.update-online-content'); | |||
var image = widget.querySelector('.update-online-image'); | |||
var content = | var title = widget.querySelector('.update-online-title'); | ||
var excerpt = widget.querySelector('.update-online-excerpt'); | |||
var link = widget.querySelector('.update-online-link'); | |||
var image = | var dateElement = widget.querySelector('.update-online-date'); | ||
var title = | |||
var excerpt = | |||
var link = | |||
var dateElement = | |||
/* | /* | ||
* | * Making a Difference API | ||
* Category ID: 5063 | * Category ID: 5063 | ||
*/ | */ | ||
| Line 90: | Line 72: | ||
'https://up.edu.ph/wp-json/wp/v2/posts' + | 'https://up.edu.ph/wp-json/wp/v2/posts' + | ||
'?categories=5063&per_page=1&_embed'; | '?categories=5063&per_page=1&_embed'; | ||
/* | /* | ||
* | * Retrieve the latest article | ||
*/ | */ | ||
| Line 113: | Line 94: | ||
if (!posts || posts.length === 0) { | if (!posts || posts.length === 0) { | ||
throw new Error('No articles found'); | throw new Error( | ||
'No Making a Difference articles found' | |||
); | |||
} | } | ||
var post = posts[0]; | var post = posts[0]; | ||
/* | /* | ||
| Line 123: | Line 105: | ||
*/ | */ | ||
title.innerHTML = | title.innerHTML = post.title.rendered; | ||
/* | /* | ||
| Line 131: | Line 111: | ||
*/ | */ | ||
excerpt.innerHTML = | excerpt.innerHTML = post.excerpt.rendered; | ||
/* | /* | ||
| Line 139: | Line 117: | ||
*/ | */ | ||
link.href = | link.href = post.link; | ||
/* | /* | ||
| Line 147: | Line 123: | ||
*/ | */ | ||
var articleDate = | var articleDate = new Date(post.date); | ||
dateElement.textContent = | dateElement.textContent = | ||
articleDate.toLocaleDateString( | articleDate.toLocaleDateString('en-US', { | ||
year: 'numeric', | |||
month: 'long', | |||
day: 'numeric' | |||
}); | |||
/* | /* | ||
* | * FEATURED IMAGE | ||
*/ | */ | ||
var imageUrl = ''; | var imageUrl = ''; | ||
var media = null; | |||
if ( | if ( | ||
| Line 176: | Line 144: | ||
post._embedded['wp:featuredmedia'].length > 0 | post._embedded['wp:featuredmedia'].length > 0 | ||
) { | ) { | ||
media = post._embedded['wp:featuredmedia'][0]; | |||
} | |||
if (media) { | |||
var sizes = | var sizes = | ||
| Line 186: | Line 155: | ||
: {}; | : {}; | ||
/* | |||
* Prefer the largest available image. | |||
*/ | |||
if (sizes.full && sizes.full.source_url) { | |||
imageUrl = sizes.full.source_url; | |||
= | } else if ( | ||
sizes.large && | |||
sizes.large.source_url | |||
) { | |||
imageUrl = sizes.large.source_url; | |||
} else if ( | |||
{ | sizes.medium_large && | ||
sizes.medium_large.source_url | |||
) { | |||
imageUrl = sizes.medium_large.source_url; | |||
} else if ( | |||
media.source_url | |||
) { | |||
imageUrl = media | |||
Revision as of 00:05, 23 October 2026
```html