// Place your application-specific JavaScript functions and classes here
// This file is automatically included by javascript_include_tag :defaults
function insert_asset_fields() {
	$("assets").insert('<div class="asset_fields"><span class="asset_delete_link" onclick="$(this).up(\'div\').remove()">&times; remove</span><input class="uploader" id="assets_file" name="topic[assets_attributes][][file]" size="" type="file" /></div>');
}

function check_new_topic_form(e) {
  if ($F("topic_tag_list") == "")
  {
    $('topic_tag_list_hint').show();
    $('topic_tag_list').highlight();
    $('topic_tag_list').focus();
    $('topic_tag_list').setStyle({
      borderColor: '#000'
    });    
  } else {
    if($("topic_marked_as_private") && $("topic_customer_identifier") && ($F("topic_marked_as_private") == 1) && ($F("topic_customer_identifier") == "Kundennummer")) 
    {
      alert("Bitte geben Sie noch Ihre Kundenummer an.");
    } else
    {
      e.submit();
    } 
  }
}

$(document).observe("dom:loaded", function(){
  var cancel_button = $$('#submit_area a').first();
  if (cancel_button) {
    cancel_button.observe("click", function(e) {
      e.stop();
      $('submit_area').hide();
      $('topic_body').ghost();
    })
  }

  var new_topic_textarea = $$('#quick_new_topic_form textarea#topic_body').first();
//  if (new_topic_textarea) {
//    new_topic_textarea.observe("focus", function(e) {
//      $('submit_area').appear();
//    })
//  }

//  $$('.hideme').invoke('hide');
  
  // Tag lists
  if ($('article_tag_list')) { new SwappableTags("article_tag_list"); }
  if ($('topic_tag_list')) { new SwappableTags("topic_tag_list"); }
  if ($('expert_tag_list')) { new SwappableTags("expert_tag_list"); }
  
  // Opinion forms
  $$('#quick_new_opinion_form textarea').each(function(textarea) {
    textarea.observe("focus", function(e) {
      $('submit_area').appear();
    });
  });
  
  $$('#quick_new_opinion_form .pc_radiobutton input').each(function(radio) {
    radio.observe("focus", function(e) {
      $('submit_area').appear();
    });
  });
  
  var opinion_form = $$('.opinion_form').first();
  if (opinion_form) {
    new ProtoCheck();
    opinion_form.onsubmit = function() {
      // See if an opinion is checked
      var opinion;
      $$('input[name="opinion[positive]"]').each(function(radio) {
        if (radio.checked) opinion = (radio.value === 'true');
      });
      if ($('opinion_positive_error')) { $('opinion_positive_error').remove(); }
      if (typeof(opinion) === 'undefined') {
        $('positive_container').insert('<div id="opinion_positive_error" class="error">Bitte wählen Sie eine Meinung aus.</div>');
        return false;
      }
      // Require text input for the opinion
      var container_id = opinion ? 'praise' : 'blame';
      var field_id = opinion ? 'opinion_praise' : 'opinion_blame';
      $$('#praise_blame_container div').each(function(container) {
        container.removeClassName('fieldWithErrors');
      });
      if ($(field_id).value.length < 1) {
        $(container_id).addClassName('fieldWithErrors');
        return false;
      }
    }
  }
  
  // Topic marked as private
  var topic_marked_as_private = $('topic_marked_as_private');
  if (topic_marked_as_private) {
    var toggle_topic_marked_as_private = function() {
      var area = $('customer_identifier_form');
      var button = $('create_topic');
      if (topic_marked_as_private.checked) {
        area.show();
        button.textContent = "Senden";
      } else {
        area.hide();
        button.textContent = "Veröffentlichen";
      }
    };
    toggle_topic_marked_as_private();
    topic_marked_as_private.observe("click", toggle_topic_marked_as_private);
  }
  
  // User tooltips
  if (Prototip) {
    $$('.users_list .user').each(function(user) {
      user.observe("mouseover", function(e) {
        var a = user.down('a.login');
        var url = a.href + '.js';
        new Tip(user, {
          stem: 'topLeft',
          ajax: {
            url: url,
            options: { method: 'get' }
          }
        });
      });
    });
  };
});
