Facebook Events Suggestion
|
|
Thanks for making Facebook Fixer, I love it! I was wondering if it was possible to change the "events" section on the homepage. In the new layout, facebook made it so small and at the bottom of the page. I feel as though I am missing people's birthdays. Is it possible to have the option to move it to the top? Also, if it is someone's birthday, facebook lists the event as happening on a day of the week ("Tues" or "Wed") instead of saying "TODAY!" or something. ex. Instead of:
Have:
I don't know if these suggestions are possible or useful to other people, but I know it would help me keep track of whose birthday it is! Thanks! |
|
|
Hi Nujj, I'll see what I can do. In the mean time, the script has an option to hide the highlights section. If you won't miss that section you could hide it and get the events section closer to the top of the page. |
|
|
It's fairly simple to move the events section to the top of the right sidebar.
if((right=document.getElementById('home_sidebar'))&&(events=document.getElementsByClassName('UIUpcoming')[0]))right.insertBefore(events.parentNode.parentNode,right.firstChild);
|
|
|
Thanks for the great code (once again). It will be in the next release. |
|
|
I like putting everything above the Highlights section, since the highlights are usually kind of boring. So here's that code too if you want it. Obviously you can order them any way you like.
function $(element) { return document.getElementById(element); }
function $c(element) { return document.getElementsByClassName(element); }
if(right=$('home_sidebar')) {
if(pokes=$c('pokes')[0]) right.insertBefore(pokes, right.firstChild);
if(events=$c('UIUpcoming')[0]) right.insertBefore(events.parentNode.parentNode, right.firstChild);
if(requests=$c('UIRequestsBox')[0]) right.insertBefore(requests.parentNode.parentNode, right.firstChild);
}
|
|
|
Yeah I was thinking about doing that too. I actually have the highlights hidden all the time. Maybe I'll just add an option to move the highlights to the bottom of that column... that's easier for me to add to the configuration screen. |
|
|
That sounds good, but the real pain is that the highlights section is the only one to not have it's own unique class. You're gonna have to write some really obscure xpath to get it and move it to the bottom of the column. |
|
|
Well I'd have to double check to be sure, but I think the highlights section is the only place where there are div's with a class of UIHotStream. If so I should be able to find it with:
|
|
|
Yes you're right. Been awhile since I've messed around in Facebook's html and I totally forgot about that lol.
$('home_sidebar').appendChild($c('UIHotStream')[0].parentNode.parentNode);
It's so nice that Mozilla lets us use getElementsByClassName. Best part is that it's like getElementsByTagName and you can use it on any element. Not just the document. |
|
|
Yeah its nice, but as far as I know document.evaluate has been around longer, so I tend to use that instead of getElementsByClassName for compatibility. I'm not sure which is more efficient though. |
|
|
Yeah getElementsByClassName has only been around since the release of Firefox 3, so you might be right about compatibility. But it is faster than XPath, not that it makes much of a difference. |
|
|
Wow! Thanks for responding so quickly!! I can't wait to see the script in action :) Keep up the great work! |
|
|
It looks like they changed birthdays that are today to say "Today" ... but the events are still at the bottom, lol |