/**
 * Function: jbb_widget_list_jobposts - displays jobs as 
 *           <li class="{LI_CLASS}"><a href="{LINK_TO_JOB_DETAILS_PAGE}" target="jobs">{JOB_TITLE}</a><br>
 *           at <strong>{COMPANY_NAME}</strong> ({LOCATION_AS_CITY,_ST})</li>
 */
function jbb_widget_list_jobposts(data) {
  var ul_class   = '';
  var li_class   = '';
  var list_count = -1;
  
  var price = data.price;
  var duration = data.duration;
  var domain   = '';
  var demo_mode = false;
  try { if (jbb_widget_domain != undefined) { domain = jbb_widget_domain; } }
  catch(e) { domain = 'http://'+data.domain_name;}
  
  try { if (jbb_widget_unordered_list_class != undefined) { ul_class = jbb_widget_unordered_list_class; } }
  catch(e) { }
  try { if (jbb_widget_list_class != undefined) { li_class = jbb_widget_list_class; } }
  catch(e) { }
  try { if (jbb_widget_list_count != undefined) { list_count = jbb_widget_list_count; } }
  catch(e) { }
  try { if (jbb_widget_demo_mode != undefined) { demo_mode = jbb_widget_demo_mode; } }
  catch(e) { } 
  
  var content = '';
  var demo_mode_domain = domain.replace(/https/,"http");
  
  if(data==null) {
    content = 'No jobs to display';
  } else {
    var version  = data.version;
    var total_num_jobs = list_count;

    var num_jbb = 0;
    var num_backfill = 0;
    var is_display_backfill = false;

    if(data.jobposts != null){ num_jbb = data.jobposts.length; }
    if(data.backfill_jobs != null){ num_backfill =  data.backfill_jobs.length; }
    if( ( num_jbb < total_num_jobs ) && ( num_backfill > 0 ) ){ is_display_backfill = true; }

    if(version <= '0.9') {
      if(list_count < 0 || list_count > data.jobposts.length) { list_count = data.jobposts.length; }
      for (var i=0; i < list_count; i++) {
        var location = data.jobposts[i].location;
        var company  = data.jobposts[i].company;
        var title    = data.jobposts[i].title;
        var job_link = data.jobposts[i].link;

        var newline = '<br/>';
        if(location == '' && company == '') { newline = ''; }

        if ((i == 0) && (list_count != 0)) {content +='<ul class="' + ul_class + '">';}

        content += '<li class="' + li_class + '">'
                 + '<a href="' + job_link + '" target="jobs">'
                 + title + '</a>' + newline;
        if(company != '') { content += 'at <strong>' + company + '</strong>'; }
        if(location != '') { content += ' (' + location + ')'; }
        content += '</li>';

        //Close <ul> if no backfill available
        if ((i == list_count-1) && (list_count != 0) && (is_display_backfill == false)) {content +='</ul>';}
      }
      list_count = total_num_jobs - list_count;
      if(data.backfill_jobs==null){
      }else{
        if(list_count < 0 || list_count > data.backfill_jobs.length) { list_count = data.backfill_jobs.length; }
          for (var i=0; i < list_count; i++) {
            var location = data.backfill_jobs[i].location;
            var company  = data.backfill_jobs[i].company;
            var title    = data.backfill_jobs[i].title;
            var job_link = data.backfill_jobs[i].link;

            var newline = '<br/>';
            if(location == '' && company == '') { newline = ''; }
            //Open <ul> if no JBB job above
            if ((i == 0) && (list_count != 0) && ( num_jbb == 0)) {content +='<ul class="' + ul_class + '">';}

            content += '<li class="' + li_class + '">'
                 + '<a href="' + job_link + '" target="jobs">'
                 + title + '</a>' + newline;
            if(company != '') { content += 'at <strong>' + company + '</strong>'; }
            if(location != '') { content += ' (' + location + ')'; }
            content += '</li>';

            if ((i == list_count-1) && (list_count != 0)) {content +='</ul>';}
          }
      }/* Show backfill */
    }else {
      content = 'Error: Invalid Version - Please update your scripts';
    }
  }

  //document.write(content);
  document.getElementById('jbb_adaptive_widget_body').innerHTML = content;
  if (demo_mode) {
    document.getElementById('jbb_adaptive_widget_post_a_job').innerHTML += '<br/><a href="'+demo_mode_domain+'/a/jbb/post-job">$' +price+' for '+ duration +' days</a>';
  } else {
    document.getElementById('jbb_adaptive_widget_post_a_job').innerHTML += '<br/><a href="'+domain+'/a/jbb/post-job">$' +price+' for '+ duration +' days</a>';
  }
}


