aboutsummaryrefslogblamecommitdiffstats
path: root/data/tweaks/addNewLinks.js
blob: 5434b57b075d6968062fc7b50705d55dfac82f1b (plain) (tree)
1
2
3
4
5
6
7
8
9
10

                                                                                

                                                                              

                                                                               

                                                                             

                                                                               


                                        


                                                                             
  

                                                                            

                                                                          









                                                                                
  

                                
 

                        
                                                                  

                                                    

                

                                                   

                                            
                

                                                               



                             
                                                            
                                  


                                                           
                

                                                
                                                               







                                                                   

                                                                

                                                            


     
/*******************************************************************************
 * ***** BEGIN LICENSE BLOCK Version: MPL 1.1/GPL 2.0/LGPL 2.1
 *
 * The contents of this file are subject to the Mozilla Public License Version
 * 1.1 (the "License"); you may not use this file except in compliance with the
 * License. You may obtain a copy of the License at http://www.mozilla.org/MPL/
 *
 * Software distributed under the License is distributed on an "AS IS" basis,
 * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
 * the specific language governing rights and limitations under the License.
 *
 * The Original Code is Bugzilla Tweaks.
 *
 * The Initial Developer of the Original Code is Mozilla Foundation. Portions
 * created by the Initial Developer are Copyright (C) 2010 the Initial
 * Developer. All Rights Reserved.
 *
 * Contributor(s): Johnathan Nightingale <johnath@mozilla.com> Ehsan Akhgari
 * <ehsan@mozilla.com>
 *
 * Alternatively, the contents of this file may be used under the terms of
 * either the GNU General Public License Version 2 or later (the "GPL"), or the
 * GNU Lesser General Public License Version 2.1 or later (the "LGPL"), in which
 * case the provisions of the GPL or the LGPL are applicable instead of those
 * above. If you wish to allow use of your version of this file only under the
 * terms of either the GPL or the LGPL, and not to allow others to use your
 * version of this file under the terms of the MPL, indicate your decision by
 * deleting the provisions above and replace them with the notice and other
 * provisions required by the GPL or the LGPL. If you do not delete the
 * provisions above, a recipient may use your version of this file under the
 * terms of any one of the MPL, the GPL or the LGPL.
 *
 * ***** END LICENSE BLOCK *****
 */

function addNewLinks() {
  var product = document
      .querySelector("#field_container_product option[selected]");
  var component = document
      .querySelector("#component option[selected]");

  if (product) {
    var label = document
        .getElementById('field_container_product');
    var url = 'enter_bug.cgi?product='
        + encodeURIComponent(product.value);
    if (label) {
      createDeadLink("file_new_bug_product", "new", label, url,
          [], "parens");
    }
  }

  if (product && component) {
    var select = document.querySelector("select#component");
    var label = select.parentNode;
    var url = 'enter_bug.cgi?product='
        + encodeURIComponent(product.value) + '&component='
        + encodeURIComponent(component.value);
    if (label) {
      var componentElement = document
          .getElementById("bz_component_input");
      if (componentElement) { // We are in the Red Hat bugzilla
        // do we have components list visible?
        if (document.getElementById('bz_component_input').classList
            .contains("bz_default_hidden")) {
          label = document
              .getElementById("bz_component_edit_container");
        }
      }
      else {
        label = document.getElementById('component').parentNode;
      }
      createDeadLink("file_new_bug_component", "new", label,
          url, [], "parens");
    }
  }
}