2007-03-29, 05:09 AM
[FONT="]I have dropped this hint before, but thought I might give it another little push.
For those who don't know http://www.flickr.com/explore/interesting/ has an area of 'interestingness' where you get a random array of recent 'interesting' photos. I believe you can get feeds of these photos through a little code. (example below)
I think it would be a really cool option to have the screensaver (internal or plugin) show a random photo show of cool photos of random stuff. (also while playing music)
Outside my programming, ability but someone might be looking for a project.
Example code from Google homepage[/FONT]
[HTML] <style>
.imgFlickr { border: 0px; margin-top: 4px; }
a.linkMainFlickr { text-decoration: none; }
a.linkFlickr:link { color: #0063DC; text-decoration: none; }
a.linkFlickr:visited { color: #2E67C7; text-decoration: none; }
a.linkFlickr:hover { color: #FFFFFF; text-decoration: none; background: #0063DC; }
a.linkFlickr:active { color: #FFFFFF; text-decoration: none; background: #0259C4; }
.PhotoBy { padding: 5px 5px 5px 5px; margin: 5px 5px 5px 5px; font: 10px Tahoma;
border-top: 1px solid #eee; border-bottom: none; border-left: none; border-right: none; }
.PhotoBy img { margin: 0px 10px 10px 0px; border: 1px solid #000; float: left; }
</style>
<img id="pl19" onload="imgLoaded9()" style="display: none;">
<img id="pl29" onload="imgLoaded9()" style="display: none;">
<div align="center" id="flickr9" style="display: none;">
<a id="linkphoto19" class="linkMainFlickr" target="_Parent">
<img id="photo9" class="imgFlickr"></a>
<div id="Detail9" class="PhotoBy">
<a id="auth_link19" class="linkFlickr" target="_Parent">
<img id="auth_photo9" class="imgFlickr" height="36" width="36"></a>
<a id="linkphoto29" class="linkFlickr" target="_Parent">
<b>
<i id="desc9"></i></b></a>
<br>
<span>
More photos from
<a id="auth_link29" class="linkFlickr" target="_Parent">
<b id="auth_name9"></b></a>, or view his/her
<a id="auth_profile9" class="linkFlickr" target="_Parent">profile</a>.
</span>
</div>
</div>
<div align="center" id="status9" style="font: 12px Tahoma;">
Loading...
</div>
<SCRIPT language="JavaScript1.2">
var refreshInterval9 = null
var idphoto9 = null
var owner9 = null
var secret9 = null
var server9 = null
var title9 = null
var iconserver9 = null
var nsid9 = null
var name9 = null
var photoLoaded9 = 0
var timer9 = 0
var prefs9 = new _IG_Prefs(9)
//Read Configuration
_IG_RegisterOnloadHandler(function () { load9() }
)
function load9()
{
loadConfiguration9()
downloadPhoto9()
}
function imgLoaded9()
{
photoLoaded9++
if (photoLoaded9 == 2) {
photoLoaded9 = 0
_gel('photo9').setAttribute('src', 'http://static.flickr.com/' + server9 + '/' + idphoto9 + '_' + secret9 + '_m.jpg')
_gel('auth_photo9').setAttribute('src', _gel('pl29').getAttribute('src'))
_gel('linkphoto19').setAttribute('href', 'http://www.flickr.com/photos/' + owner9 + '/' + idphoto9 + '/')
_gel('linkphoto29').setAttribute('href', 'http://www.flickr.com/photos/' + owner9 + '/' + idphoto9 + '/')
_gel('auth_link19').setAttribute('href', 'http://www.flickr.com/photos/' + owner9 + '/')
_gel('auth_link29').setAttribute('href', 'http://www.flickr.com/photos/' + owner9 + '/')
_gel('desc9').innerHTML = title9
_gel('auth_profile9').setAttribute('href', 'http://www.flickr.com/people/' + owner9 + '/')
_gel('auth_name9').innerHTML = name9
_gel('flickr9').style.display = ''
_gel('status9').style.display = 'none'
}
}
function loadConfiguration9()
{
refreshInterval9 = prefs9.getInt("refresh") * 60000
_gel('Detail9').style.display = prefs9.getBool("displayDetails")?'':'none'
}
function downloadPhoto9()
{
photoLoaded9 = 0
window.clearTimeout(timer9)
var page = Math.round(Math.random()*499) + 1
_IG_FetchContent('http://www.flickr.com/services/rest/?method=flickr.interestingness.getList&api_key=f26a2caabe161bf0273fb532bde61078&per_page=1&page=' + page, function (responseText) { refresh9(responseText) } )
timer9 = window.setTimeout(downloadPhoto9, refreshInterval9)
}
function refresh9(responseText)
{
var xmlObject = createXMLDocument(responseText)
var rsp = xmlObject.getElementsByTagName('rsp')
if (rsp[0].getAttribute('stat') == 'ok') {
var photos = xmlObject.getElementsByTagName('photo')
idphoto9 = photos[0].getAttribute('id')
owner9 = photos[0].getAttribute('owner')
secret9 = photos[0].getAttribute('secret')
server9 = photos[0].getAttribute('server')
title9 = photos[0].getAttribute('title')
_IG_FetchContent('http://www.flickr.com/services/rest/?method=flickr.people.getInfo&api_key=f26a2caabe161bf0273fb532bde61078&user_id=' + owner9, function (responseText) { refreshOwner9(responseText) } )
_gel('pl19').setAttribute('src', 'http://static.flickr.com/' + server9 + '/' + idphoto9 + '_' + secret9 + '_m.jpg')
}
}
function refreshOwner9(responseText)
{
var xmlObject = createXMLDocument(responseText)
var rsp = xmlObject.getElementsByTagName('rsp')
if (rsp[0].getAttribute('stat') == 'ok') {
var person = xmlObject.getElementsByTagName('person')
iconserver9 = person[0].getAttribute('iconserver')
nsid9 = person[0].getAttribute('nsid')
if (iconserver9 > 0)
_gel('pl29').setAttribute('src', 'http://static.flickr.com/' + iconserver9 + '/buddyicons/' + nsid9 + '.jpg')
else
_gel('pl29').setAttribute('src', 'http://www.flickr.com/images/buddyicon.jpg')
var realname = xmlObject.getElementsByTagName('realname')
var username = xmlObject.getElementsByTagName('username')
name9 = realname[0].text != ''?realname[0].text:username[0].text
}
}
[/HTML]
For those who don't know http://www.flickr.com/explore/interesting/ has an area of 'interestingness' where you get a random array of recent 'interesting' photos. I believe you can get feeds of these photos through a little code. (example below)
I think it would be a really cool option to have the screensaver (internal or plugin) show a random photo show of cool photos of random stuff. (also while playing music)
Outside my programming, ability but someone might be looking for a project.
Example code from Google homepage[/FONT]
[HTML] <style>
.imgFlickr { border: 0px; margin-top: 4px; }
a.linkMainFlickr { text-decoration: none; }
a.linkFlickr:link { color: #0063DC; text-decoration: none; }
a.linkFlickr:visited { color: #2E67C7; text-decoration: none; }
a.linkFlickr:hover { color: #FFFFFF; text-decoration: none; background: #0063DC; }
a.linkFlickr:active { color: #FFFFFF; text-decoration: none; background: #0259C4; }
.PhotoBy { padding: 5px 5px 5px 5px; margin: 5px 5px 5px 5px; font: 10px Tahoma;
border-top: 1px solid #eee; border-bottom: none; border-left: none; border-right: none; }
.PhotoBy img { margin: 0px 10px 10px 0px; border: 1px solid #000; float: left; }
</style>
<img id="pl19" onload="imgLoaded9()" style="display: none;">
<img id="pl29" onload="imgLoaded9()" style="display: none;">
<div align="center" id="flickr9" style="display: none;">
<a id="linkphoto19" class="linkMainFlickr" target="_Parent">
<img id="photo9" class="imgFlickr"></a>
<div id="Detail9" class="PhotoBy">
<a id="auth_link19" class="linkFlickr" target="_Parent">
<img id="auth_photo9" class="imgFlickr" height="36" width="36"></a>
<a id="linkphoto29" class="linkFlickr" target="_Parent">
<b>
<i id="desc9"></i></b></a>
<br>
<span>
More photos from
<a id="auth_link29" class="linkFlickr" target="_Parent">
<b id="auth_name9"></b></a>, or view his/her
<a id="auth_profile9" class="linkFlickr" target="_Parent">profile</a>.
</span>
</div>
</div>
<div align="center" id="status9" style="font: 12px Tahoma;">
Loading...
</div>
<SCRIPT language="JavaScript1.2">
var refreshInterval9 = null
var idphoto9 = null
var owner9 = null
var secret9 = null
var server9 = null
var title9 = null
var iconserver9 = null
var nsid9 = null
var name9 = null
var photoLoaded9 = 0
var timer9 = 0
var prefs9 = new _IG_Prefs(9)
//Read Configuration
_IG_RegisterOnloadHandler(function () { load9() }
)
function load9()
{
loadConfiguration9()
downloadPhoto9()
}
function imgLoaded9()
{
photoLoaded9++
if (photoLoaded9 == 2) {
photoLoaded9 = 0
_gel('photo9').setAttribute('src', 'http://static.flickr.com/' + server9 + '/' + idphoto9 + '_' + secret9 + '_m.jpg')
_gel('auth_photo9').setAttribute('src', _gel('pl29').getAttribute('src'))
_gel('linkphoto19').setAttribute('href', 'http://www.flickr.com/photos/' + owner9 + '/' + idphoto9 + '/')
_gel('linkphoto29').setAttribute('href', 'http://www.flickr.com/photos/' + owner9 + '/' + idphoto9 + '/')
_gel('auth_link19').setAttribute('href', 'http://www.flickr.com/photos/' + owner9 + '/')
_gel('auth_link29').setAttribute('href', 'http://www.flickr.com/photos/' + owner9 + '/')
_gel('desc9').innerHTML = title9
_gel('auth_profile9').setAttribute('href', 'http://www.flickr.com/people/' + owner9 + '/')
_gel('auth_name9').innerHTML = name9
_gel('flickr9').style.display = ''
_gel('status9').style.display = 'none'
}
}
function loadConfiguration9()
{
refreshInterval9 = prefs9.getInt("refresh") * 60000
_gel('Detail9').style.display = prefs9.getBool("displayDetails")?'':'none'
}
function downloadPhoto9()
{
photoLoaded9 = 0
window.clearTimeout(timer9)
var page = Math.round(Math.random()*499) + 1
_IG_FetchContent('http://www.flickr.com/services/rest/?method=flickr.interestingness.getList&api_key=f26a2caabe161bf0273fb532bde61078&per_page=1&page=' + page, function (responseText) { refresh9(responseText) } )
timer9 = window.setTimeout(downloadPhoto9, refreshInterval9)
}
function refresh9(responseText)
{
var xmlObject = createXMLDocument(responseText)
var rsp = xmlObject.getElementsByTagName('rsp')
if (rsp[0].getAttribute('stat') == 'ok') {
var photos = xmlObject.getElementsByTagName('photo')
idphoto9 = photos[0].getAttribute('id')
owner9 = photos[0].getAttribute('owner')
secret9 = photos[0].getAttribute('secret')
server9 = photos[0].getAttribute('server')
title9 = photos[0].getAttribute('title')
_IG_FetchContent('http://www.flickr.com/services/rest/?method=flickr.people.getInfo&api_key=f26a2caabe161bf0273fb532bde61078&user_id=' + owner9, function (responseText) { refreshOwner9(responseText) } )
_gel('pl19').setAttribute('src', 'http://static.flickr.com/' + server9 + '/' + idphoto9 + '_' + secret9 + '_m.jpg')
}
}
function refreshOwner9(responseText)
{
var xmlObject = createXMLDocument(responseText)
var rsp = xmlObject.getElementsByTagName('rsp')
if (rsp[0].getAttribute('stat') == 'ok') {
var person = xmlObject.getElementsByTagName('person')
iconserver9 = person[0].getAttribute('iconserver')
nsid9 = person[0].getAttribute('nsid')
if (iconserver9 > 0)
_gel('pl29').setAttribute('src', 'http://static.flickr.com/' + iconserver9 + '/buddyicons/' + nsid9 + '.jpg')
else
_gel('pl29').setAttribute('src', 'http://www.flickr.com/images/buddyicon.jpg')
var realname = xmlObject.getElementsByTagName('realname')
var username = xmlObject.getElementsByTagName('username')
name9 = realname[0].text != ''?realname[0].text:username[0].text
}
}
[/HTML]
Core2-E2180, 1G RAM, 1Gb-5450 Silent, 2Tb +300g HDDs.
Three tuners: [SIZE=2][SIZE=1]Twinhan DVB-T x 1, Hauppauge Nova 500T (dual) [/SIZE][/SIZE]
DTB Digital SD + HD content (PAL-MPEG2-AC3).
Custom case made very quiet. Zalman CPU cooler.
Sits in rack with other HiFi.
ParaLED to show tuner activity.
Display: 42" 1920x1080p Panasonic Plasma
1x wired MVP
1x PC client
[URL="http://web.aanet.com.au/media/"]
[/URL]
Three tuners: [SIZE=2][SIZE=1]Twinhan DVB-T x 1, Hauppauge Nova 500T (dual) [/SIZE][/SIZE]
DTB Digital SD + HD content (PAL-MPEG2-AC3).
Custom case made very quiet. Zalman CPU cooler.
Sits in rack with other HiFi.
ParaLED to show tuner activity.
Display: 42" 1920x1080p Panasonic Plasma
1x wired MVP
1x PC client
[URL="http://web.aanet.com.au/media/"]
[/URL]