Wednesday, September 29, 2010

Compromising Twitter's OAuth security system

Compromising Twitter's OAuth security system

Good article on the immaturity of the OAuth System.

Wednesday, September 15, 2010

Collapse Page Block Sections by Default - solved


This one is good I use this one in Salesforce.


Collapse Page Block Sections by Default - solved: "

My issue solved!

I want to collapse all Page Block sections by default on page open.

I can write code in a VF Page, but I get cross site scripting errors.

Create a Static Resource using JavaScript to accomplish the default collapse:

function twistSection(twisty, sectionId) {
//twistSection code from salesforce.com
var parentDiv = twisty;
while (parentDiv.tagName != 'DIV') { parentDiv = parentDiv.parentNode; }
var headerId = sectionId || (parentDiv.id.split('_'))[1];
var div = parentDiv.nextSibling;
var elemWasOn = false;
if (div.style.display != 'none') {
div.style.display = 'none';
twisty.className ='showListButton';
twisty.alt = twisty.title = 'Show Section - '+twisty.name;
elemWasOn = true;
}
}

var registeredSections = new Array();
function registerTwistableSection(headerId, mainTableId) {
var obj = new Object();
obj.headerId = headerId;
obj.mainTableId = mainTableId;
registeredSections[registeredSections.length] = obj;

for (var i = 0; i < registeredSections.length; i++) {
var obj = registeredSections[i];

var img = parent.document.getElementById("img_" + obj.headerId);
//go right into twistSection if we have the img obj.
if(img){
if (img.className =='hideListButton') {
twistSection(img, obj.headerId, obj.mainTableId);
}
}
}
}
function registerTwistableSections_ep() {
//these are the sections I know about from viewing source code...
registerTwistableSection('01B30000003osTc', 'ep');
registerTwistableSection('01B30000003osTd', 'ep');
registerTwistableSection('01B30000003osTe', 'ep');
registerTwistableSection('01B30000003osTg', 'ep');
registerTwistableSection('01B30000003osTh', 'ep');
registerTwistableSection('01B30000003osTi', 'ep');
registerTwistableSection('01B30000003osTj', 'ep');
registerTwistableSection('01B30000003osTk', 'ep');
}
registerTwistableSections_ep();

Now for the cross site scripting hack:

Found this in another post and am so thrilled that it works:

1. Create a Custom Homepage Component that is HTML, refer to your Static Resource code:

<script src="/resource/1284395872000/pageBlockSupplement" type="text/javascript"></script>

2. Make sure this component is included on the Home Pages layouts. It is invisible, so you don't have to worry about it.

"

Thursday, September 9, 2010

Ethercodes Is a Web-based, Collaborative Programming Notepad [Collaboration Tools]


This is really cool ... too bad it now doesn't work for 23 hours ... and counting.

Ethercodes Is a Web-based, Collaborative Programming Notepad [Collaboration Tools]: "
Think of EtherCodes as EtherPad for developers. Featuring line numbers and syntax highlighting, it lets you code with a group, in a web browser, in realtime, without sacrificing some of the comforts of your favorite text editor. More »






"