/*
 * 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/405/inline_stylesheet.css");
Embed.embedHTML("<h1>&#1047;&#1072;&#1076;&#1072;&#1081;&#1090;&#1077; &#1089;&#1074;&#1086;&#1081; &#1074;&#1086;&#1087;&#1088;&#1086;&#1089; &#1101;&#1082;&#1089;&#1087;&#1077;&#1088;&#1090;&#1091;!</h1>\n\n<p>&#1045;&#1089;&#1083;&#1080; &#1074;&#1099; &#1085;&#1077; &#1085;&#1072;&#1096;&#1083;&#1080; &#1086;&#1090;&#1074;&#1077;&#1090; &#1085;&#1072; &#1089;&#1074;&#1086;&#1081; &#1074;&#1086;&#1087;&#1088;&#1086;&#1089;, &#1090;&#1086; &#1074;&#1099; &#1084;&#1086;&#1078;&#1077;&#1090;&#1077; &#1085;&#1072;&#1087;&#1080;&#1089;&#1072;&#1090;&#1100; &#1087;&#1080;&#1089;&#1100;&#1084;&#1086; &#1085;&#1072;&#1096;&#1077;&#1084;&#1091; &#1101;&#1082;&#1089;&#1087;&#1077;&#1088;&#1090;&#1091;, &#1086;&#1090;&#1088;&#1072;&#1074;&#1080;&#1074; &#1077;&#1075;&#1086; &#1087;&#1086; &#1092;&#1086;&#1088;&#1084;&#1077; &#1087;&#1088;&#1077;&#1076;&#1083;&#1086;&#1078;&#1077;&#1085;&#1085;&#1086;&#1081; &#1085;&#1080;&#1078;&#1077;.</p>\n\n<script type=\"text/javascript\">try{urchinTracker('/outbound/#{CGI::escape(@appeal.title)}');}catch(e){};</script>\n\n<form action=\"http://write-a-letter.greenpeace.org/405/messages\" method=\"post\" onsubmit=\"try{urchinTracker('/outbound/%D0%97%D0%B0%D0%B4%D0%B0%D0%B9%D1%82%D0%B5+%D1%81%D0%B2%D0%BE%D0%B9+%D0%B2%D0%BE%D0%BF%D1%80%D0%BE%D1%81+%D1%8D%D0%BA%D1%81%D0%BF%D0%B5%D1%80%D1%82%D1%83%21');}catch(e){};return true;\">\n    <fieldset>\n    <div>\n      <div><label for=\"message_name\">&#1042;&#1072;&#1096;&#1077; &#1080;&#1084;&#1103; (Your name)</label></div>\n      <input class=\"text small\" id=\"message_name\" maxlength=\"100\" name=\"message[name]\" size=\"40\" type=\"text\" />\n    </div>\n    \n    <div>\n      <div><label for=\"message_email\">&#1042;&#1072;&#1096; email &#1072;&#1076;&#1088;&#1077;&#1089; (Your email address)</label></div>\n      <input class=\"text small\" id=\"message_email\" maxlength=\"100\" name=\"message[email]\" size=\"40\" type=\"text\" />\n    </div>\n    \n    <div>\n      <div><label for=\"message_subject\">&#1058;&#1077;&#1084;&#1072; (Subject)</label></div>\n      \n        <input class=\"text\" id=\"message_subject\" maxlength=\"200\" name=\"message[subject]\" size=\"60\" type=\"text\" value=\"&#1042;&#1086;&#1087;&#1088;&#1086;&#1089; &#1087;&#1086; &#1069;&#1082;&#1086;&#1044;&#1086;&#1084;&#1091;.\" />\n      \n    </div>\n    \n    <div>\n      <div><label for=\"message_body\">&#1057;&#1086;&#1086;&#1073;&#1097;&#1077;&#1085;&#1080;&#1077; (Message)</label></div>\n      \n        <textarea cols=\"60\" id=\"message_body\" name=\"message[body]\" rows=\"15\">&#1042;&#1099; &#1093;&#1086;&#1090;&#1077;&#1083;&#1080; &#1089;&#1087;&#1088;&#1086;&#1089;&#1080;&#1090;&#1100;?</textarea>\n      \n    </div>\n    \n      </fieldset>\n  \n  <div class=\"submit\">\n    <input name=\"commit\" type=\"submit\" value=\"&#1044;&#1072;&#1083;&#1077;&#1077; / Next\" />\n  </div>\n</form>\n");
