/*
 * Copyright © 2007 Manfred Stienstra <manfred@fngtps.com>, Fingertips
 *
 * The $ function is borrowed from the Prototype JavaScript framework.
 * Copyright © 2005 Sam Stephenson <sam@conio.net>
 */


// Element finding helper
function $() {
  var results = [], element;
  for (var i = 0; i < arguments.length; i++) {
    element = arguments[i];
    if (typeof element == 'string')
      element = document.getElementById(element);
    results.push(element);
  }
  return results.length < 2 ? results[0] : results;
}

// Class for managing the language options in a form
var SignupLocation = {
  languages: [["Arabic", "ar"], ["German", "de"], ["English", "en"], ["Spanish", "es"], ["French", "fr"], ["Greek", "gre"], ["Italian", "it"], ["Dutch", "nl"], ["Polish", "pl"], ["Portuguese", "pt"], ["Russian", "ru"]],
  signupLanguageRestrictions: {mx: [["Spanish", "es"], ["English", "en"]], lb: [["Arabic", "ar"], ["English", "en"]], it: [["Italian", "it"], ["English", "en"]], gr: [["Greek", "gre"], ["English", "en"]], dz: [["Arabic", "ar"], ["English", "en"]], ye: [["Arabic", "ar"], ["English", "en"]], kw: [["Arabic", "ar"], ["English", "en"]], de: [["German", "de"], ["English", "en"]], fr: [["French", "fr"], ["English", "en"]], mo: [["Arabic", "ar"], ["English", "en"]], ly: [["Arabic", "ar"], ["English", "en"]], eg: [["Arabic", "ar"], ["English", "en"]], km: [["Arabic", "ar"], ["English", "en"]], es: [["Spanish", "es"], ["English", "en"]], sa: [["Arabic", "ar"], ["English", "en"]], ru: [["Russian", "ru"], ["English", "en"]], ps: [["Arabic", "ar"], ["English", "en"]], be: [["Dutch", "nl"], ["French", "fr"], ["English", "en"]], ae: [["Arabic", "ar"], ["English", "en"]], tn: [["Arabic", "ar"], ["English", "en"]], ch: [["German", "de"], ["French", "fr"], ["English", "en"]], mr: [["Arabic", "ar"], ["English", "en"]], jo: [["Arabic", "ar"], ["English", "en"]], br: [["Portuguese", "pt"], ["English", "en"]], sy: [["Arabic", "ar"], ["English", "en"]], sd: [["Arabic", "ar"], ["English", "en"]], pl: [["Polish", "pl"], ["English", "en"]], dj: [["Arabic", "ar"], ["English", "en"]], bh: [["Arabic", "ar"], ["English", "en"]], ar: [["Spanish", "es"], ["English", "en"]], om: [["Arabic", "ar"], ["English", "en"]], nl: [["Dutch", "nl"], ["English", "en"]], iq: [["Arabic", "ar"], ["English", "en"]], at: [["German", "de"], ["English", "en"]], lu: [["French", "fr"], ["English", "en"]], cl: [["Spanish", "es"], ["English", "en"]]},
  
  updateLanguageOptionsFor: function(countryElement, languageElement) {
    if ($(countryElement).value) {
      var newLanguages = this.signupLanguageRestrictions[$(countryElement).value];
      if (newLanguages) {
        this.resetOptionsTo(languageElement, newLanguages);
      } else {
        this.resetOptionsTo(languageElement, [['English', 'en']]);
      }
    } else {
      this.resetOptionsTo(languageElement, this.languages);
    }
  },
  
  resetOptionsTo: function(languageElement, newLanguages) {
    var selected = $(languageElement).value;
    $(languageElement).options.length = 0;
    $(languageElement).options[0] = new Option('', '');
    for (var i = 0; i < newLanguages.length; i++) {
      var option = new Option(newLanguages[i][0], newLanguages[i][1]);
      if (selected == newLanguages[i][1]) {
        option.selected = true;
      }
      $(languageElement).options[i+1] = option;
    }
  }
};

/*
 * Copyright © 2007 Manfred Stienstra <manfred@fngtps.com>, Fingertips
 *
 */
var Embed = {
  embedCSS: function(url) {
    var head = document.getElementsByTagName('head')[0];
    var style = document.createElement('link');
    style.type = 'text/css';
    style.rel = 'stylesheet';
    style.href = url;
    head.appendChild(style);
  },
  
  embedHTML: function(html) {
    var embed = document.getElementById('rhubarb');
    if (embed != null) {
      embed.innerHTML = html;
    } else {
      document.write("<div id=\"rhubarb\">");
      document.write(html);
      document.write("</div>");
    }
  }
}

Embed.embedCSS("http://write-a-letter.greenpeace.org/stylesheets/public.css");
Embed.embedCSS("http://write-a-letter.greenpeace.org/452/inline_stylesheet.css");
Embed.embedHTML("<h1>Vote crucial &#224; la Commission europ&#233;enne : &#233;crivez au commissaire fran&#231;ais !</h1>\n\n<p>La commission ayant rendu sa d&#233;cision le 7 mai, notre cyberp&#233;tition est donc ferm&#233;e.</p>\n<p>\n<a href=\"http://www.greenpeace.org/france/news/cafouillage-a-bruxelles-une-2\">En savoir plus</a>\n</p>");

