| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145 | 
							
- /**
 
-  * @file js support for term editing form for ajax saving and tree updating
 
-  */
 
- (function ($) {
 
-   
 
- //global var that holds the current term link object
 
- var active_term = new Object();
 
- /** 
 
-  * attaches term data form, used after 'Saves changes' submit
 
-  */
 
- Drupal.behaviors.TaxonomyManagerTermData = {
 
-   attach: function(context) {
 
-     if (!$('#taxonomy-term-data-replace').hasClass('processed')) {
 
-       $('#taxonomy-term-data-replace').addClass('processed');
 
-       Drupal.attachTermDataForm();
 
-     }
 
-   }
 
- }
 
- /**
 
-  * attaches Term Data functionality, called by tree.js
 
-  */
 
- Drupal.attachTermData = function(ul) {
 
-   Drupal.attachTermDataLinks(ul);
 
- }
 
- /**
 
-  * adds click events to the term links in the tree structure
 
-  */
 
- Drupal.attachTermDataLinks = function(ul) {
 
-   $(ul).find('a.term-data-link').click(function() {
 
-     Drupal.activeTermSwapHighlight(this);
 
-     var li = $(this).parents("li:first");
 
-     Drupal.loadTermDataForm(Drupal.getTermId(li), false);
 
-     return false;
 
-   });
 
- }
 
- /**
 
-  * attaches click events to next siblings
 
-  */
 
- Drupal.attachTermDataToSiblings = function(all, currentIndex) {
 
-   var nextSiblings = $(all).slice(currentIndex);
 
-   $(nextSiblings).find('a.term-data-link').click(function() {
 
-     var li = $(this).parents("li:first");
 
-     Drupal.loadTermDataForm(Drupal.getTermId(li), false);
 
-     return false;
 
-   });
 
- }
 
- /**
 
-  * adds click events to term data form, which is already open, when page gets loaded
 
-  */
 
- Drupal.attachTermDataForm = function() {
 
-   active_term = $('div.highlightActiveTerm').find('a');
 
-   var tid = $('#taxonomy-term-data').find('input:hidden[name="tid"]').val();
 
-   if (tid) {
 
-     new Drupal.TermData(tid).form();
 
-   }
 
- }
 
- /**
 
-  * loads term data form
 
-  */
 
- Drupal.loadTermDataForm = function(tid, refreshTree) {
 
-   // Triggers an AJAX button
 
-   $('#edit-load-tid').val(tid);
 
-   if (refreshTree) {
 
-     $('#edit-load-tid-refresh-tree').attr("checked", "checked");
 
-   }
 
-   else {
 
-     $('#edit-load-tid-refresh-tree').attr("checked", "");
 
-   }
 
-   $('#edit-load-tid-submit').click();
 
- }
 
- /**
 
-  * TermData Object
 
-  */
 
- Drupal.TermData = function(tid) {
 
-   this.tid = tid;
 
-   this.div = $('#taxonomy-term-data');
 
- }
 
- /**
 
-  * adds events to possible operations
 
-  */
 
- Drupal.TermData.prototype.form = function() {
 
-   var termdata = this;
 
-   
 
-   $(this.div).find('#term-data-close span').click(function() {
 
-     termdata.div.children().hide();
 
-   });
 
-   
 
-   $(this.div).find('a.taxonomy-term-data-name-link').click(function() {
 
-     var tid = this.href.split("/").pop();
 
-     Drupal.loadTermDataForm(tid, true);
 
-     return false;
 
-   });
 
-   
 
-   $(this.div).find("legend").each(function() {
 
-     var staticOffsetX, staticOffsetY = null;
 
-     var left, top = 0;
 
-     var div = termdata.div; 
 
-     var pos = $(div).position();
 
-     $(this).mousedown(startDrag);  
 
-   
 
-     function startDrag(e) {
 
-       if (staticOffsetX == null && staticOffsetY == null) {
 
-         staticOffsetX = e.pageX;
 
-         staticOffsetY = e.pageY;
 
-       }
 
-       $(document).mousemove(performDrag).mouseup(endDrag);
 
-       return false;
 
-     }
 
-  
 
-     function performDrag(e) {
 
-       left = e.pageX - staticOffsetX;
 
-       top = e.pageY - staticOffsetY;
 
-       $(div).css({position: "absolute", "left": pos.left + left +"px", "top": pos.top + top +"px"});
 
-       return false;
 
-     }
 
-  
 
-     function endDrag(e) {
 
-       $(document).unbind("mousemove", performDrag).unbind("mouseup", endDrag);
 
-     }
 
-   });
 
- }
 
- /**
 
- * hightlights current term
 
- */
 
- Drupal.activeTermSwapHighlight = function(link) {
 
-   try {
 
-     $(active_term).parents('div.term-line').removeClass('highlightActiveTerm');
 
-   } catch(e) {}
 
-   active_term = link;
 
-   $(active_term).parents('div.term-line:first').addClass('highlightActiveTerm');
 
- }
 
- })(jQuery);
 
 
  |