/* Définition du persona */
var p_text='{"id":"31337","description":"The Osmoz theme.","name":" Osmoz2009.com","accentcolor":"#000","textcolor":"#000","header":"http:\/\/homepage.osmoz2009.com\/evolved\/personas\/header.jpg?000","footer":"http:\/\/homepage.osmoz2009.com\/evolved\/personas\/footer.jpg?000","category":"Website","author":"","username":"","detailURL":"http:\/\/homepage.osmoz2009.com\/evolved\/personas\/detail","headerURL":"http:\/\/homepage.osmoz2009.com\/evolved\/personas\/header.jpg?000","footerURL":"http:\/\/homepage.osmoz2009.com\/evolved\/personas\/footer.jpg?000","previewURL":"http:\/\/homepage.osmoz2009.com\/evolved\/personas\/def-preview.png","iconURL":"http:\/\/homepage.osmoz2009.com\/evolved\/personas\/def-icon.png","updateURL":"http:\/\/homepage.osmoz2009.com\/evolved\/personas\/update","version":"3.6","minVersion":"3.6","maxVersion":"3.6","author":"Arnaud BROUSSEAU, pour Osmoz","username":"Mozilla Corporation"}';

/* Basé sur http://www.getpersonas.com/static/js/script.js */
function dispatchPersonaEvent(aType, aNode)
{
    var aliases = {'PreviewPersona': 'PreviewBrowserTheme',
                   'ResetPersona': 'ResetBrowserThemePreview',
                   'SelectPersona': 'InstallBrowserTheme'};
   	try {
        if (!aNode.hasAttribute("persona")) {
			return;
		}


	aNode.setAttribute('data-browsertheme', aNode.getAttribute('persona'));

    if(aType == 'SelectPersona') {
        var persona = JSON.parse(aNode.getAttribute('persona'));
    }


    var aliasEvent = aliases[aType];
    var events = [aType, aliasEvent];

    for(var i=0; i<events.length; i++) {
      var event = events[i];
      var eventObject = document.createEvent("Events");
      eventObject.initEvent(event, true, false);
      aNode.dispatchEvent(eventObject);
    }
  	} catch(e) { if (console) console.log('Error:' + e); }
}

var evEl = document.createElement('div');
document.body.appendChild(evEl);

document.getElementById('persona').onclick = function(){
    /* Et hop ! On envoie la purée...on met le persona ! */
    setTimeout(function() { evEl.setAttribute('persona', p_text); dispatchPersonaEvent('SelectPersona', evEl); }, 100);
    setTimeout(function() { evEl.setAttribute('persona', p_text); dispatchPersonaEvent('SelectPersona', evEl); }, 200);
}



