function set_search_selections(sel_name, sel_items){
    jq(sel_items).each(function(option_key, option_element) {
        jq("[name='" + sel_name + "'] option[value=" + option_element + "]").attr('selected','selected');
    })  
}

function set_meshterm_checkboxes(name, items){
    jq(items).each(function(input_key, input_element) {
        jq("input[value='" + input_element + "']").attr('checked','checked');
    })
    jq("#advanced-disease-condition-any").attr('checked','').change();
    jq("button#default").click();
}

jq(document).ready(function() {
  if (jq("form[name='advanced']").length){
    jq(".useQueryButton").css('display', 'inline');
    jq(".useQueryButton").click(function() {
      jq("#fieldsetlegend-advanced").click(); 
      var parant_id_list = jq(this).parent().attr('id').split('_');
      var prefix = parant_id_list[0];
      var suffix = parant_id_list[2];
      if (prefix == 'my') {
        my_searches_use_query_to_populate_search_form(this, suffix);
      }
      else{
        recent_searches_use_query_to_populate_search_form(this, suffix);
      }
    return false;
    })
  }
});

jq(document).ready(function(){
  jq('#add_selected_items_to_clipboard').hide(); 
  jq('#gin-guidelinesearch th.clipboard').html('<img src=\"my_clipboard_icon.gif\" alt="" title="Clipboard collumn, see &quot;using the clipboard&quot; in our &quot;search help&quot; for instructions how to use it." />'); 
  var clipboard_dialog_boxes = new Array();
  var dboxbutton = '';

  function load_clipboard_popup($dialog, url, responseText, textStatus){
    $dialog.dialog('open');
    if (!(responseText)){
      $dialog.html('<div id="#clipboard-dialog-spinner" style="width:16px;height:16px;margin: auto;"><img src=\"spinner.gif\" /></div>');
    }
    else{
      html_dialog_status_message = '<dl class="portalMessage info"><dt>Info</dt><dd>'+ responseText +'</dd></dl>';
    }
    $dialog.load(
      url, 
      function (responseText, textStatus, XMLHttpRequest) {
        if (html_dialog_status_message){
          //console.log("prepend: %s" ,html_dialog_status_message)
          jq("#add_to_clipboard_dialogbox").prepend(html_dialog_status_message);
        }
        $dialog.dialog('open');
        jq('a.add_item_to_basket_link').click(function(){
          $dialog.html('<div id="#clipboard-dialog-spinner" style="width:16px;height:16px;margin: auto;"><img src=\"spinner.gif\" /></div>');
          var add_item_url = jq(this).attr('href');
          var link_rel_list = jq(this).attr('rel').split('|');
          var basket_id = link_rel_list[0];
          var basket_title = link_rel_list[1];
          $dialog.load(
            add_item_url,
            { basket_id: basket_id,
              basket_title: basket_title,
              noredirect: '1'
            },
            function (responseText, textStatus, XMLHttpRequest) {
              load_clipboard_popup($dialog, url, responseText, textStatus);
              if ((responseText)){
                html_dialog_status_message = '<dl class="portalMessage info"><dt>Info</dt><dd>'+ responseText +'</dd></dl>';
                //jq("#add_to_clipboard_dialogbox").prepend(html_dialog_status_message)
              }
          });
          return false;
        });    
        jq("form[name='add_to_clipboard']").submit(function(){
          var form_data = jq(this).serialize();
          var form_action = jq(this).attr('action');
          $dialog.load(
            form_action,
            form_data,
            function (responseText, textStatus, XMLHttpRequest) {
              load_clipboard_popup($dialog, url, responseText, textStatus);
              //if ((responseText)){
              //  html_dialog_status_message = '<dl class="portalMessage info"><dt>Info</dt><dd>'+ responseText +'</dd></dl>';
                //jq("#add_to_clipboard_dialogbox").prepend(html_dialog_status_message)
              //}
          });
          return false;
        });    
    });
  }


  jq('.clipboard_popup').click(function(){
    if (!(dboxbutton)){
      var dboxbutton = jq(this);
    }
    var dbox = jq('#add_to_clipboard_dialogbox');
    if (!(dbox.length)){
      var dbox = jq('<div id="add_to_clipboard_dialogbox" class="hidden"></div>').appendTo('body');
    }
    var dboxbuttonid = dboxbutton.attr('id');
    //console.log("dboxbuttonid: %s", dboxbuttonid)
    if (!(clipboard_dialog_boxes[dboxbuttonid])){
      var $dialog = dbox.dialog({
          autoOpen: false,
          title: 'Add item to clipboard selection',
          modal: true,
          width: 500,
          height: jq(window).height()-50
      });
      //console.log("dboxbuttonid: %s", dboxbuttonid)
      dbox.show();
      clipboard_dialog_boxes[dboxbuttonid] = $dialog;
    }
    else{
      //console.log("dboxid: %s", dboxbuttonid)
      var $dialog = clipboard_dialog_boxes[dboxbuttonid];
    };
    
    var url = dboxbutton.attr('href');
    //var dialog = jq('<div style="display:hidden"></div>').appendTo('body');
    load_clipboard_popup($dialog, url);
    // load remote content
    return false;
  });

  // multiselection stuff:
  jq('.clipboard_popup').show();
  jq('.clipboard_popup').show();
  jq('.add_to_clipboard_action').hide();
  var selected_item_urls = [];

  function update_selected_items_urls(){
    var selected_count = jq("tbody .ui-selected").length;
    if(selected_count){
      jq('#add_selected_items_to_basket').show();
      //jq('#deselect_all_items').show();
      selected_item_urls = [];
      jq("tbody .ui-selected").each(function(){
        selected_item_urls.push(jq("td.title a", this).attr('rel'));
      });
      jq("#add_selected_items_to_basket span").html(selected_count + ' ');
    }
    else{
      jq('#add_selected_items_to_basket').hide(); 
      //jq('#deselect_all_items').hide();
      selected_item_urls = [];
    }
  }
  
  // select all items:
  jq('#select_all_items').click(function(){
    jq('#kss-spinner').show();
    jq('tbody tr.ui-selectee').each(function(){
      jq(this).addClass('ui-selected'); 
    });
    update_selected_items_urls()
    jq('#kss-spinner').hide();
    return false;
  });

  // deselect all items:
  jq('#deselect_all_items').click(function(){
    jq('#kss-spinner').show();
    jq('#add_selected_items_to_basket').hide(); 
    jq('tbody tr.ui-selectee').each(function(){
      jq(this).removeClass('ui-selected'); 
    });
    update_selected_items_urls()
    jq('#kss-spinner').hide();
    return false;
  });
  var html_dialog_status_message = "";
  function load_multiselection_clipboard_popup($dialog, url, responseText, textStatus){
    $dialog.dialog('open');
    if (!(responseText)){
      $dialog.html('<div id="#clipboard-dialog-spinner" style="width:16px;height:16px;margin: auto;"><img src=\"spinner.gif\" /></div>');
    }
    else{
      html_dialog_status_message = '<dl class="portalMessage info"><dt>Info</dt><dd>'+ responseText +'</dd></dl>';
    }
    $dialog.load(
      url,
      {'item_urls[]': selected_item_urls},
      function (responseText, textStatus, XMLHttpRequest) {
        //console.log("msg: %s" ,html_dialog_status_message)
        if (html_dialog_status_message){
          //console.log("prepend: %s" ,html_dialog_status_message)
          jq("#add_to_clipboard_dialogbox").prepend(html_dialog_status_message);
        }
        $dialog.dialog('open');
        jq('a.add_item_to_basket_link').click(function(){
          $dialog.html('<div id="#clipboard-dialog-spinner" style="width:16px;height:16px;margin: auto;"><img src=\"spinner.gif\" /></div>');
          var add_item_url = jq(this).attr('href');
          var link_rel_list = jq(this).attr('rel').split('|');
          var basket_id = link_rel_list[0];
          var basket_title = link_rel_list[1];
          $dialog.load(
            add_item_url,
            { basket_id: basket_id,
              basket_title: basket_title,
              noredirect: '1',
              'item_urls[]': selected_item_urls
            },
            function (responseText, textStatus, XMLHttpRequest) { 
              load_multiselection_clipboard_popup($dialog, url, responseText, textStatus);
          });
          return false;
        });    
        jq("form[name='add_to_clipboard']").submit(function(){
          //var form_data = jq(this).serialize();
          var basket_title = jq(this).children(":input[name=basket_title]").val();
          $dialog.load(
            jq(this).attr('action'),
            { basket_title: basket_title,
              noredirect: '1',
              'item_urls[]': selected_item_urls
            },
            function (responseText, textStatus, XMLHttpRequest) {
              load_multiselection_clipboard_popup($dialog, url, responseText, textStatus);
            }
          );
          return false;
        });    
    });
  }

  jq('#add_selected_items_to_basket').click(function(){
    var dbox = jq('#add_to_clipboard_dialogbox');
    if (!(dbox.length)){
      var dbox = jq('<div id="add_to_clipboard_dialogbox" class="hidden"></div>').appendTo('body');
    }
    var button = jq(this);
    var buttonid = jq(this).attr('id');
    if (!(clipboard_dialog_boxes[buttonid])){
      var $dialog = dbox.dialog({
          autoOpen: false,
          title: 'Add selected items to clipboard',
          modal: true,
          width: 600,
          height: 800
      });
      dbox.show();
      clipboard_dialog_boxes[buttonid] = $dialog;
    }
    else{
      var $dialog = clipboard_dialog_boxes[buttonid];
    };
    
    var url = button.attr('href');
    load_multiselection_clipboard_popup($dialog, url);
    return false;
  });

  jq(".selectable").selectable({
      filter: 'tr',
      cancel: '.selectable thead, .selectable td.not-selectable',
      stop: update_selected_items_urls
  });
  
});





